TitanFox FPS/Mech Game
  • Python 51.9%
  • C++ 47.1%
  • Shell 0.9%
  • C# 0.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
aaron 189659eaa4 Add breakable debris, interactive water simulation and impact-scaled splashes
Debris: fallen pieces are shootable. Hits knock them about; once they've
taken enough (sized to the piece) they break into 2-4 smaller chunks, a
severed limb first comes apart at its joints, and crumbs under 6 cm turn
to dust. Debris meshes use simple collision for weapon traces.

Water: UTFWaterSubsystem runs a height-field wave simulation (M_WaterSim,
float render targets, 41 m around the camera at 4 cm/texel, 30 Hz) that
drifts downstream with the current. Feet, pilots, debris, bodies, dropped
rifles and rocks in the river push the surface, giving bow waves and
wakes; splashes, bullets and explosions ring out waves. M_Water shades
ripples and whitecaps from it. Things crossing the surface splash in
proportion to size and speed, and pilots splash with every stride.
Dev commands: tf.WaterRipple, tf.WaterStats.

Also: rebuilding a material now clears its whole graph (the editor's
delete-all only removes half the nodes per call).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 15:56:39 -05:00
Config Add seven-mech humanoid roster, VX-9 pilot rifle, showcase mode, Unreal MCP 2026-09-29 12:40:36 -05:00
Content Add breakable debris, interactive water simulation and impact-scaled splashes 2026-09-30 15:56:39 -05:00
docs Add breakable debris, interactive water simulation and impact-scaled splashes 2026-09-30 15:56:39 -05:00
Scripts Add breakable debris, interactive water simulation and impact-scaled splashes 2026-09-30 15:56:39 -05:00
Source Add breakable debris, interactive water simulation and impact-scaled splashes 2026-09-30 15:56:39 -05:00
SourceAssets Add Sketchfab world props (CC-BY) placed around Canyon Outpost 2026-09-29 16:50:41 -05:00
.gitattributes Initial TitanFox project: pilot movement, mechs, canyon outpost 2026-09-28 16:27:00 -05:00
.gitignore Add Sketchfab world props (CC-BY) placed around Canyon Outpost 2026-09-29 16:50:41 -05:00
.mcp.json Add seven-mech humanoid roster, VX-9 pilot rifle, showcase mode, Unreal MCP 2026-09-29 12:40:36 -05:00
CREDITS.md Add Sketchfab world props (CC-BY) placed around Canyon Outpost 2026-09-29 16:50:41 -05:00
README.md Initial TitanFox project: pilot movement, mechs, canyon outpost 2026-09-28 16:27:00 -05:00
TitanFox.uproject Add seven-mech humanoid roster, VX-9 pilot rifle, showcase mode, Unreal MCP 2026-09-29 12:40:36 -05:00

TitanFox

A fast first-person movement shooter with pilots and mechs, built in Unreal Engine 5 (C++).

Layout

Path What
Source/TitanFox/Player/TFCharacterMovementComponent.* Pilot movement: sprint, double jump, wall-run, wall-jump (networked)
Source/TitanFox/Player/TFCharacter.* First-person pilot, camera tilt, default input (no assets needed)
Source/TitanFox/Game/TFGameMode.* Default game mode
SourceAssets/Textures/ CC0 PBR sets from ambientCG / Poly Haven (SOURCE.txt in each)
SourceAssets/Meshes/Greybox/ Blender-generated modular greybox kit (FBX + .blend)
Scripts/fetch_textures.py Downloads the texture sets
Scripts/blender/make_greybox_kit.py Regenerates the greybox kit headless in Blender
Scripts/unreal/import_assets.py In-editor: imports assets, builds materials and L_WallRunTest
Scripts/setup_unreal.sh Builds the editor target and runs the import

Setup (Linux)

  1. Unreal Engine 5.8.3 (with Fab and Bridge) lives in /mnt/storage/UnrealEngine/5.8.3/.
  2. Scripts/setup_unreal.sh --ide builds the C++ module, generates VS Code project files, opens the editor and builds the test level. Press Play.

Engine install: sign in at https://www.unrealengine.com/en-US/linux, download the Linux zip, and unzip it into /mnt/storage/UnrealEngine/. (Or link GitHub to your Epic account and build EpicGames/UnrealEngine from source.)

Regenerate art: blender --background --factory-startup --python Scripts/blender/make_greybox_kit.py, then re-run Scripts/unreal/import_assets.py in the editor (it's idempotent).

Controls

WASD / left stick move, mouse / right stick look, Space / A jump (double jump), Shift / L3 sprint. Wall-run: jump at a wall at speed while holding forward along it. Jump again to kick off.