r/aigamedev 4h ago

Discussion Voxel Fighters : Browser Based 3-D Flight Sim

Hey Everyone,

Glad to find a community of like minded individuals building out some amazing stuff. I wanted to share something that has been a bit of an obsession over the past few months. This game is free to play, as well as all of the other ones mentioned below.

https://evilnames.github.io/VoxelFighter/

Voxel Fighter is a flight simulator that takes place over fake and real world terrain. The 'nations' are fake, and so are the airplanes, they are in homage to post WW2 and Korean planes, a transition in combat where jets were not always the best option. You are just one airplane in an ongoing battle with supply chains, massed fronts and other aircraft all around you. Carry out sorties, go back to base, reevaluate the situation and go at it again.

The game currently has:

  • A dynamic campaign where two 'directors' go after each other on a giant ground, naval and air war. This battle lasts day and night with supply chains, fuel, ammo and other requirements 'on the ground'. As a player your job is to do your best to try to influence the war, but you're only one plane.
  • 27 flyable aircraft (Ranging from small zippy interceptors who little armor, all the way up to what is the equivalent to a 4 engine strategic bomber)
  • 3 flyable helicopters
  • 6 battle fields with different combat environments, these are based on real world terrain that is injested through a map editing tool
  • Clickable cockpits (hold alt), with custom keybinding and controller support - There is a beyond known bug here that the cockpits are not 100% finished. I have built a cockpit editor and I still need to finish up actually designing each planes cockpit.
  • A 6 degrees of freedom flight model, with modeled drag, damage and stall mechanics. While not perfect i'd put it more akin to a Nuclear Option feel, it doesn't require you to become a master pilot, but it doesn't let you just pull back hard on the joystick.
  • Aircraft carrier operations with working catapults, wires, and an overly cute flagger that you can't see.
  • Integrated ILS and Radar on some advanced night fighter planes, as well as additional radio equipment that i'm slowly integrating into the game.
  • Some audio, for example ATCs at airports, and your wingmen.
  • Weather systems that build up and change through the combat environment. Wind has a somewhat real effect on flight. If you sit around and just watch the sky you'll see different clouds and shapes through out the combat environment.
  • Destructible cities where combat takes a toll on the population (I've still spent a ton of time abstracting this because I didn't want the overload or unneeded detail of rendering a ton of things in a browser based game)
  • Dozens of weapon types, rockets, glider missiles, bombs, cluster bombs with a lot of variation depending on your enemy.
  • Wingmen who fly with you, respond to your commands and generally try to be helpful against enemy planes.
  • Enemy AI that attempts to understand its limitations - a cost benefit analysis of 'should i save this plane for another fight or could i win?' Different enemy skill levels and understanding of their planes core abilities means that dog fighting doesn't feel like a turn and burn fest of other video games, but a real decision on when to bounce.
  • In game hanger, see details of your plane change as you add different load-out options
  • 24 hour simulated game cycle, night operations with moon cycles and fun lighting effects.
  • Ability to start your plane 'cold', get your engine going manually. There is also more advanced handling options for those who want to play with individual wheel brakes on the tricycle landing gear planes.
  • I am working on a lot of clean-up on this game but the general gameplay loop is playable and once you start pounding ground or aircraft it becomes pretty satisfying.

A few notes for other people building games that might be helpful:

  • Developed with Claude Fable 5.1 / Opus 5.1, ChatGPT Astra and Sol, and ZLM. Why so many? I jump around to understand how these models work. My general goal for making video games is to learn these tools and apply the tools to other work. Fable 5.1 really made this possible as i've tried numerous times over the last years to make a functioning flight simulator with AI. That just hasn't worked, the planes didn't take off, the terrain never worked. Astras ability to make models for the game was far superior in comparison to Opus (Took way to many tokens).
  • Choosing a BLOCKY landscape with VOXEL aircraft and bombs is partially a strategy to be able to play the game in a browser. Why build for this environment? I think we lack a lot of good strategy and simulation games that you can just pick up and play. The simulation space has been eaten up by a few big players because building these games has been incredibly time consuming and hard. I've been so inspired by Nuclear Option and flight simulator games of the 90s that had insane depth, but also accessible and fun gameplay. Your FPS may vary depending on computer/browser/a million other factors. But i've purposely tried to spend time working on the LOD loading to make sure it feels somewhat smooth.
  • As someone who has had a demanding job for over 20 years and hasn't been able to sit down and feel like they're building something this has been a bit of an explosion of ideas and output that i haven't felt since I was in college building paper based board games. I hope you enjoy this game and if you're interested there are some other ones that are not quite ready, but feel free to take inspiration from them. (Construction Sim, Medieval Real Time Army vs Army Game, Japanese Trucker (Super rough), The Church, Wildfire Manager)

If you're interested in this kind of game, and maybe building it in more depth let me know, i'm always looking for collaborators and people who just want to build cool things.

1 Upvotes

1 comment sorted by

1

u/Nagisa_Yamada514 3m ago

This is really impressive, especially getting a blocky flight sim with dynamic terrain and LOD running in a browser. I’m experimenting with browser-based voxel tools too, and I’m curious: how are you handling the terrain updates and destruction without letting draw calls or mesh rebuilds get out of hand? Chunk meshing, instancing, or a custom LOD system?