I may try doing some smaller updates as I typically code in short bursts these days.
Added doors! (Seems silly & was easy enough to do, I just didn’t have them in there)
Target lock – ranged enemies with this setting now need an extra turn before they fire. This gives you a chance to somehow block or otherwise avoid the shot (force them to move is an easy way). Even with the symmetrical FOV changes I did last week, it still felt like ranged attacks were a bit overpowered. This new mechanic has a fun feel to it – and also differentiates monster difficulty. Now I can have ‘easier’ ranged enemies that require a target lock – in later levels you may run into enemies that don’t. Another idea is to give ranged enemies other disadvantages such as being immobile (turrets).
This is mostly behind the scenes, but I added a special ‘architect’ actor, who acts on behalf of environmental effects (fire, gas, features that interact with player/monsters standing on them). Because my engine is event-based, it was getting a little kludgey to have terrain/feature effects work properly.
This makes more complicated scenarios much easier to deal with. For example, if you want to have differing speeds for the player at some point (e.g. a haste or slow effect) then you want to be sure the ‘environment’ is behaving. If a player is trying to escape some gas or fire, and somehow speeds themselves up to escape, the fire or gas should not speed up too! Conversely, if a player somehow slowed, the gas should overwhelm them more quickly than normal.
Eventually the architect will also control things like spreading nano-materials and timed explosives.