What have we been up to this week?
Hey hey! Here is your 35th ScourgeBringer open development issue!
Previously on ScourgeBringer: While Florian was still working for Ankama, I made some cool progress on our editor. I notably added bezier curve paths to our boss animation system as well as enabling boss to spawn in rooms using the same system as the normal enemies.
Last week, I have been busy again on our tools and I spent most of my time improving the usability of the editor.
I added an important enhancement: being able to play directly within the editor, while editing things!
This is an important step forward because we can now test everything without having to export data to the standalone game and run things from there. Being able to directly drop Kyhra in the scene, grab a gamepad and test a room, enemies, or even bosses, is an absolute time saver.
This will allow us to iterate very quickly and to create/balance content very efficiently.
In a perfect situation, I would have liked to have both the game and the editor integrated within a single application, and being able to pop the editor at any time to live edit the game, but I'm still that's probably going to be a challenge for a future game. I'm glad enough to have made a modular enough game engine to be able to easily integrate anything within the editor itself. It really is the full game running behind now.
The remaining of the week, I took a break from the editor and started implementing LASERS. It doesn't sound much, but lasers can be a challenge on their own. They behave differently from bullets and involve some specific collision detection. I previously coded some lasers in NeuroVoider, but I was quite unhappy of them because of a design limitation: lasers came to be quite late in the development, and I basically hacked them with the bullet system. In NeuroVoider, there is no raycasting support for collision detection, so to simulate laser collision, I throw a stream of invisible bullets and once there's a hit, I draw the laser. This come with a limitation: bullets take several frames to reach their target and this make the lasers to have a big latency. If you played NeuroVoider, you probably know what I mean. It still ended up fine, because it gives the sensation that lasers are powerful but super heavy. But that mostly was a side effect from a design limitation.
Now that I have finally added efficient raycasting support to our engine, I can make everything I want with lasers without using dirty tricks and having side effects. Here is a very early and rough preview of lasers (it lacks graphics effect, it's basically a reuse of NeuroVoider's assets, so you can except lasers to look way cooler when they'll be finished).
And that's it for this week! See you next mission!