this week mostly concerned itself with levels and tutorials, and the first real art has been added level scripts this week i made good inroads on a new way to handle dialog and tutorials. i wanted something lightweight that i could easily edit, as opposed to the popups which are still quite clunky, or just making modified versions of the GameLevel class which would turn into headache central. so each level now has a slot for its specific levelscript which is mounted to a Node when a level scene is instanced, this comes with a bunch of extra methods to do the sort of stuff that you’d usually want, and its mounting means that async commands are killed automatically when the mounted Node goes out of the scene (such as returning to the main menu). other features; ...
21 - characters, visual effects, and other games
a lot happened this week character tutorial the tutorials have been missing something, as learning a game isn’t just learning a dry list of controls. i released that theres no way of sharing level specific info in a diegetic way. a tutorial popup can tell someone what to press, and an objective can tell them what to do, but nether can adequately give tips or tricks, or explain why something is happening. ...
20 - room designs
this week we worked on a bit of everything so its a bit hard to pin down. Getting an artist we’ve got an artist contracted on now who will be making some better looking stuff for the game. some have said that my 30second art is fallible and while i don’t believe that i do believe that a being able to tell the difference between a conveyor and a rotator might be good, gameplay wise. ...
19 - a lost week
this week i’ve been very sick, so theres not much work to show. the only progress was into changing the projectile vector calculation system and i had to abort on doing that half way though. preface, projectiles aren’t actually projectiles in BA, they’re made up of 3 arrays; position, vector, and munition. we then simulate the movement of a projectile sprite each tick to make it look like its flying. ...
18 - post demo polish
this week is another short week here in sweden, this is why people accuse swedish devs of never doing any work. anyway, i did some limited tests of the demo with some players and it exposed a ton of bugs. i pretty quickly found that some bugs were not reproducible in the desktop version of the game vs the browser version so i did some work to address that. Log Exports when building for web, godot handily exposes JavaScriptBridge , which has a bunch of stuff for running in the browser. the most salient here being download_buffer. its a handy little fn that takes a string array and just sends a download request to the client. ...
17 - updating the demo
this week was rushed as i hadn’t published last weeks blog either due to a short week in sweden and needing to attend sake festivalen. this week mostly consisted of polish before updating the demo, which is updated as of today. this new version adds explosives and destructible buildings as well as some polish and qol. there isn’t too much technical stuff to discuss this week as i’ve been holding off on big upgrades until explosives had been pushed, now i can move on to ray munitions which dont have a ceiling cap, allowing interplanetary firing ranges which could be fun. ...
16 - events and triggers
this week was a short one due to valborg here. Munition triggers we want munitions to be capable of various actions driven by the player. some examples of what the player should be able to make: flak rounds that explode in air after N seconds or within proximity shaped rounds rounds that dont explode on impact, but instead explode when another part of the munition hits the target guidance systems change the round trajectory of the round up or down by some nº based on where the target was on firing cluster munitions at distance x, unweld from peers hybrid rockets when speed below x, engage rocket system but we want to have the smallest instruction set possible. what are these instructions and how do we handle them? ...
15 - explosives and their reproductions
this week saw a lot of work take place on explosions and how to simulate them. it ended up being quite iterative and a long process to get it into a place where it feels good. whats the purpose of explosives? gameplay wise explosions exist to remove large numbers of weak blocks make a projectile remain impactful even if its kinetic force is low (mortars are an example of this) pierce very hard blocks with shaped explosions to change trajectory mid flight they pay for this cost by being risky within the factory and probably by having strings attached like no welding, and by being quite shitty as physical projectiles; they’re weak and lightweight and so unsuited to being a projectile. ...
14 - building blocks for building blocks
this week was about reinvention and reenforced the idea that a negative result can still be a result. i spent the first half of the week remaking how building cells were constructed, with the idea that they’d use a texture per material and be generated as simple polygons. this proved to be a massive pain in the ass and looked like ass too, so instead i’m sticking to good old cells with extras. ...
13 - the return of the projectile
i'm back from a holiday in germany and resuming work. its proving a little tricky, i wrote up a list of things to do before i left but of course info settles out of the brain after several days of drinking wheat beer. Buildings and explosives hope no feds are reading this. in the few days this week that i was able to get to work, i looked into explosives and how they can be implemented and it quickly lead to a Hal Changes A Lightbulb moment where it required that i look into buildings, which means looking into building cells, which means looking into prpjectile mechanics. ...