FrostCraft Survival Minecraft meets Valorant on skis

Core Game Features

Everything you need for an epic survival FPS experience

Procedural Terrain

Dynamically generated snowy mountains with realistic terrain features perfect for skiing.

Tactical Combat

Valorant-inspired gunplay with recoil patterns, ADS mechanics, and headshot multipliers.

Skiing Physics

Advanced momentum-based skiing system with carving mechanics and air control.

Unreal Engine 5 Setup Guide

Step-by-step instructions to get your project running

Step 1: Project Creation

1. Open Unreal Engine 5
2. Create New Project > Games > Blank
3. Select "Blueprint" project type
4. Name: "FrostCraft"
5. Enable "Starter Content"
6. Click "Create Project"

Step 2: Essential Plugins

1. Edit > Plugins
2. Enable these plugins:
  - Landscape
  - Procedural Mesh Component
  - Niagara
  - Chaos Physics
3. Restart Editor when prompted

Step 3: Core Systems Setup

Player Controller

Create BP_PlayerController with:
- Input mappings for skiing
- Camera shake logic
- Inventory management

Character Setup

BP_Character with:
- Custom movement component
- Health/Stamina system
- Weapon socketing

Core Mechanics Implementation

Key systems that make FrostCraft unique

Skiing Physics System

Movement Component

  • Extend CharacterMovementComponent
  • Implement slope detection and angle calculation
  • Add velocity-based friction coefficients
  • Create carving physics for turning
  • Implement jump/air control mechanics
// Sample skiing physics snippet
void USkiMovementComponent::PhysCustom(float deltaTime, int32 Iterations)
{
  // Calculate slope angle
  float SlopeAngle = FMath::RadiansToDegrees(FMath::Acos(HitResult.Normal.Z));
  
  // Apply downhill force
  FVector DownhillForce = -HitResult.Normal;
  DownhillForce.Z = 0;
  Velocity += DownhillForce * (SlopeAngle * GravityScale * deltaTime);
}

Crafting & Inventory

Key Components

  • Data-driven recipe system (DataAssets)
  • Grid-based inventory with drag/drop
  • Quick-access weapon wheel
  • Resource gathering mechanics
  • Modular building system
// Recipe data structure example
USTRUCT(BlueprintType)
struct FCraftingRecipe
{
  UPROPERTY(EditAnywhere)
  TMap<FName, int32> RequiredItems;
  
  UPROPERTY(EditAnywhere)
  TSubclassOf<AActor> ResultItem;
  
  UPROPERTY(EditAnywhere)
  float CraftingTime = 3.0f;
};