
Rasd Fastwalker League
A downloadable simulator
What... what is this?
Rasd Fastwalker League is a non-competitive, expressive movement racing game under development. It features a simple local LAN setup.
I would like for you to playtest it and let me know what you think!
Lore: The game is set it a post-scarcity meta-civilization. Fully automated luxury gay space anarchism with interesting social clubs to keep secular heaven from being boring. Your suit is invulnerable, so feel free to explore every variety of objects alone or with friends!
How does it work?
This game is written in C on Linux and assumes you're running an instance of an X window. You can use Xephyr to wrap it if you desire. I wanted to see how far I could take some ideas from a toy project in the past.
I have two rendering engines in this game:
Comanche-style 2D Rendering:
The development did not begin in earnest with some inspiration from Loren Schmidtmaking a Comanche-style raycaster and I was delighted how well it worked even on a modest laptop with integrated graphics.
Loren wrote her raycaster in JS, and I'm a C programmer. It was a fun exercise to port it and then make changes to the framebuffer. I also took a lot of inspiration from watching and re-watching the following video:
Once I got that surface renderer working, I realized I could apply a fair bit of learnings and worked on a 3D-ish engine. Then I had a thought of merging the two and making this dream project that I've been sketching and storyboarding for a hot minute. The Comanche renderer runs fast even on older hardware, but it can't handle true 3D. Yes, the "planets" are just a flat map, since trying to make an atlas an d loading an d unloading was messy for my taste.
This first renderer only does terrain graphics and clouds. I animate them for gas giants to emulate cloud decks. I also have a 2D soft-effect that emulates Noctis IV (this was an aesthetic suggestion by Loren Schmidt which I absolutely ran with).
Raycast 3D Rendering
Second engine is for space-mode where the player is flying around. I also project things to disks to make the skybox contain nearby planets when on the surface.
This part projects/ray-tests planets, stars, orbitals, rails, flares, trails, third-person avatar, and sky effects.
By "projects," I mean it takes a 3D point and converts it into a 2D screen position.
Example: a planet center, target marker, orbit rail point, flare position, or player trail point exists in 3D space as {x, y, z}. The renderer transforms that point relative to the camera and asks: “where does this land on the screen?” That gives a pixel coordinate like (153, 82). Then it draws a sprite, dot, line, label, flare, or marker there.
By "ray-tests," I mean it casts an imaginary line from the camera through each screen pixel into the 3D scene and checks what that line hits.
Example: for a planet or star, each pixel corresponds to a direction from the camera. The renderer tests whether that ray intersects a sphere. If it does, the ray computes the hit point, surface normal, lighting, atmosphere, clouds, etc., then colors that pixel.
So:
- Projection: “This object is here in 3D; where should I draw it on the 2D screen?”
- Ray-test: “This screen pixel looks in this 3D direction; what object does it hit?”
Who's Doing The Work?
All art assets are created by a human (me) in GNU Image Manipulation Program, openSCAD, or Blender. All music and sound effects are planned to be created by the human creator (curently the game is silent and I have only a foggy idea of how to trigger sounds besides scoring rn). This description was made by the same human. All the important stuff is drafted, outlined, and considered by a human first.
Disclosure: I need to mention that I have used LLMs (Kimi K2 and chatGPT codex) for debugging and improving framerate in the mixed-render mode, so despite the augmented refactoring, the art assets are designed manually in GIMP, openSCAD, etc. by me, the human creator. I am striving to adhere to a Brain-before-LLM use pattern to minimize "AI" cognitive debt. I call this discipline of resisting thoughtlessness as using less "AI."
| Published | 1 day ago |
| Status | Prototype |
| Author | sesheta |
| Genre | Adventure, Racing |
| Tags | Flight, Multiplayer, Space, spacesim |
| AI Disclosure | AI Assisted, Code |
Download
Install instructions
Dependencies:
Tried to keep these few and far between. Required deps to run Rasd Fastwalker League (raycaster_planet):
- an X11 session or XWayland
- libX11.so
- standard libc/runtime libs
- OpenMP runtime, usually libgomp.so.1 if built with GCC
- CPU/libc compatible with the build target (x86_64)
- (OPTIONAL) Marain TTF font.
Expected dynamic deps are:
libX11.so.6
libm.so.6
libgomp.so.1
libc.so.6
libpthread / librt may appear depending on toolchain
libxcb.so.1 and other X11 transitive libs
To Run The Game:
Linux:
# Move the file to wherever. Package pending. $ chmod +x raycaster_planet_proto_*.bin $ ./rfl
Windows (via WSL2)
C:\ wsl -d <favorite_distro> $ mkdir -p ~/build/rfldir $ cp -v /mnt/c/users/$YOU/Downloads/rfl ~/build/rfldir $ cd ~/build/rfldir $ chmod +x rfl $ ./rfl

Leave a comment
Log in with itch.io to leave a comment.