Scifi Rogue - top down / 3rd person shooter game

Been working on this for a while, finally got around to posting here :grinning_face:

Teaser

Scifi Rogue

Top-down / 3rd person shooter set in a future where you have enrolled in S.C.I.F.I - Solar Command International Fleet Intelligence and are exploring unknown space ships and other installations.

Playable “tech demo”: https://demo.scifirogue.com/

Keys:

  • Alt-C: switch camera in game
  • Alt-Shift-D: show debug lines (can help you find the exit)
  • Alt-I: Dynamically load and show inspector (sometimes need to press twice)

Procedural level generation https://demo.scifirogue.com/procedural

The game use a procedural algorithm to generate levels using a grid, placing rooms and then connecting using a minimal spanning tree (and some extra tweaks to allow loops).

Dev notes

  • Game Entities are organized and queried using bjs-ecs
  • Character models are made with heave AI assistance (Flux, Trellis) and some manual tweaks.
  • Environment models are from asset packs, further tweaked in Blender
  • These are all loaded into asset containers and then instantiated from there
  • Octree is used for culling static meshes
  • Everything is setup with physics v2 (Havok), main character is using a custom “character controller” which based on input applies physical forces and blends animations
  • Top down mode works both with keyboard / mouse and virtual joysticks (iPad)

Todos

  • Make enemies intelligent (navmesh, navigation agents, some kind of attack)
  • In game HUD (health, ammo, etc). Will mostly do this with React (Tailwind?) and then interface through Zustand store / BJS Observers.
  • Shadows
  • Co-op multiplayer

See also https://scifirogue.com/

12 Likes

Managed to get some time in to implement some improvements:

  • Navmesh using the navigation plugin (recast)
  • Basic enemy locomotion animation (walk/run/attack)
  • Simple spring arm for 3rd person camera - zooms in/out to avoid walls

Video:

Try it here: https://demo.scifirogue.com

I think next thing will be looking at in-game HUD, right after some crosshair settings that our son convinced me of :bullseye:

8 Likes

This is freaking good my man!

1 Like

This looks cool!
Your 3rd person camera implementation is great.

I love procedural level generation, are you considering having multiple floors available in the level?

It would be cool when you are exploring space ships, that you can look out through windows and see space.

1 Like

Keeping things simple in terms of multiple floors - for now at least. Would need to figure out good modular tiles for stairs and tilted walls :thinking:

Good input about windows as well, more to think about.

Also if you hadn’t noticed - where is the ceiling? :stuck_out_tongue: (it’s missing on purpose for the top down view, but would make sense in 3rd person).

Updated the settings, so now you can choose different crosshairs for 3rd person - and our 8 year old was pleased :smiley:

Another option:

Understandable with the floors, I’ve always kept to 1 floor myself :sweat_smile:

Ye, maybe you could consider adding a ceiling, but only render it from below, so it’s transparent on the top :slight_smile: ?

Some initial work on the HUD :heart::water_pistol:

Using React/Tailwind with a slight CSS 3d perspective transform.

3 Likes

Hmm just realized this layout wasn’t gonna work on tablets with virtual joysticks, moved to top instead :mobile_phone:

1 Like