itch.io is community of indie game creators and players

Devlogs

Devlog 3: Clever Girl (23/09 - 06/10)

Wizard Colosseum
A browser game made in HTML5

Remaining at a high difficulty, this week picked up on previous weeks' dropped tasks.

TL;DR: Implemented most required features for smarter BehaviourCreatures, allowing them to choose Actions from a decision tree, and rejigged some shoddy alignment processes.


Chapters

  1. Now, be on your best Behaviour!
  2. Thinking inside the box
  3. Known Bugs & Issues


Now, be on your best Behaviour!

As can be seen in Devlog 2, some of last week was spent on starting a Behaviour system, which would allow for smarter and more varied actions from enemy Creatures. Plans were made to use a new BehaviourCreature Derived Class to utilise a BehaviourTree ScriptableObject, which could be unique between enemy types. Development of this idea was previously shelved, as one part the BehaviourTree required was Spells, and those were needed to properly flesh out (and subsequently debug) this new feature. [There will be an addendum to this at a later time.]


Thinking inside the box

Prior to recent changes, Creatures would animate bouncing off of terrain and each other. After edits and additions of code, noticable issues of clipping and phasing arose. Some time this week was spent resolving this issue (when I was having troubles with the Behaviours). The basis of these issues arose from two sources: an oversimplified alignment Coroutine using Transforms, and edits to the Creature script's collision code made when Spells were implemented. The issues with the main collision code was resolved with some minor adjustments, but the alignment problems would require much more extensive changes.

The original alignment Coroutine would attempt to place the centre of the Creature at the centre of the closest tile, this seemed reasonable during its creation, but other features clashed with this approach. Not only did Creatures have Colliders (or bounding shapes) smaller than a tile, which previously allowed multiple Creatures to cram into a single tile, but the reduced size of the Custom Physics Shapes implemented in week 1 (see Devlog 1) allowed Creatures to slide into solid tiles. [There will be an addendum to this at a later time.]


Known Bugs & Issues

To summarise again, minimal efforts were put into fixing the minor existing bugs and issues, though larger issues have recieved some progress.

  • (From week 1) Damage values are being dealt to the wrong Creatures (e.g. ghost attacks should deal 1 damage, but right now ghosts only take 1 damage when hurt). -> Melee attacks are currently disabled.
  • (From week 1) Creatures can occupy the same Tile (and phase into terrain), due to relaxed restrictions. ->  Attemped to be resolved (outlined in Chapter 2), and while Creature collisions seem better, it still seems too relaxed with dashing into terrain.
  • (From week 1) Cameras move slowly when returning from left and right boundaries.
  • (From week 1) Health bars could be on a World Space UI Canvas.
  • (From week 1) Wizard turns weirdly sometimes when moving diagonally.
  • (From week 2) Rapidly casting Spells lags the game a bit.
  • (From week 2) When firing a Spell exactly at (0, 0), the game slows significantly. -> Likely resolved, thanks to some helpful pointers :)
  • Colliding with a Creature (notably the lich) before it moves causes teleporting, due to improperly saved Tile data.
Leave a comment