So I’ve mostly been busy building systems, or rather, a bunch of code that could support the different things I wanted to get done for the game. Most recently it was a piece of code that enables the functionality to spawn any entity (or random entity from category) when a block is destroyed.
The first thing I would do with it was to make regular cave walls spawn a stone:
The game will first look to see if it’s a category with that name, for example if you have a type of block that you want to spawn a random entity from a list of different ones, and you could point it towards a category you’ve put stuff in called “random_gems” and it would pick a random one from it.
If it doesn’t find a category with that name it’ll look through the entire library looking for an entry with that specific name, such as “effect_stonebreak” which is a specific particle-effect entity.
In this case I made it spawn both the effect and a stone item that can be used for further crafting:
Maybe you want to explore this and do some crazy stuff, maybe you’re in some special cave somewhere in the world where some event has caused monsters to get trapped in a special kind of stone, and when breaking this, a monster appears:
Maybe that monster isn’t a normal monster, maybe you’ve made this variant of the blob called “frozen blob”, and for a very good reason:
Every world entity in the game is capable of “emitting” heat and cold if you so wish to, with interesting effects, the only notable now being that trees will enter a frozen state and won’t grow (and wont die either), and lakes will freeze over and become walkable, these effects are reversed if the temperature goes up again, such as the frozen blob moving across the landscape, the coming of a warmer season, or a volcanic vent suddenly opening up in the ground.