Why not three.js
The first slice lived in a browser tab on three.js. Then the game had other plans, so does the engine.

The first prototype
D20 started as a real-time action game in a browser tab, third person, swinging swords, with the boss waiting at the end. It came out of free low poly asset packs from the legendary Quaternius.
Seeing a lot of praise for Opus 5.5 out there, I just wanted to see what it can cook and the fastest engine to kick off was three.js due to the massive public JavaScript code base available out there.
I am not by any means a game developer, I am only a DevOps engineer, with no experience of 3D or animation. While I like pretty things, the fast loop matters more to me than fancy engines I’m used to work with back in my corporate life like Unreal.
Like Geralt of Rivia once said “It's a matter of the hand, not the steel it's holding.” So three.js sticks for now.

Then the game changed
Maybe I’m just getting old, I don’t feel like playing full blown action game anymore so here’s when the turn-based idea came in. I wanted to try something that involves planning and a bit more strategic.
Failing to plan is planning to fail
Since the goal was full CLI and headless development with fast iteration, as a DevOps engineer, this is just something I cannot let go of, the automation capability as that is how I like to work. No manual repetitive stuffs, only the fun meaningful decisions.

My first game engine is actually Godot, I made some university student a simple game with it for some extra bucks, then from what I know ECS is really beneficial for game development, so Defold and Bevy pop up only it may not be suitable for my planned game mechanics.
Unity has some anti-consumer practices history so I’d steered away. Unreal is just not efficient enough to iterate. Even though I got tons of free assets there.
Since I do plan to release it on multiple platform natively, instead of just as web based games, why not do it properly this time. So the plan became a short Godot spike first, with a couple of pass or fail tests.

The cel look made it across, and Godot became the engine’s the game will be built on, while the three.js slice stays in the archive as an art reference or the glorified tech demo it meant to be made in a single night sleep.

That’s a lot of plan and next one is to get the gameplay loop fun before the rest of the game, because a nice-looking test does not make a game yet, eh?














No comments yet