-
Notifications
You must be signed in to change notification settings - Fork 33
Add a new creature (repeatable) #61
Comments
I looked into implementing Blin as specified in @erlend-sh's post.
I was wondering what would be the best way to implement this. The quick & dirty way, I guess, would be to just create nine creature-prefabs and then chose one randomly when a new Blin pair is spawned. Is there a more elegant way, for example allowing "graphics" in CreaturePrefabData to be an array of materials? Or using a single sprite sheet for all styles? (Sorry, if there is an really obious way to approach this with amethyst, but i'm very new to it) |
One of the core devs might have something cleaner in mind but we’re usually very much in favor of quick & dirty for a first iteration ;) You can use the placeholder art asset provided in that post to make a proof of concept using your proposed prefabs method. |
@kastenbutt You should be able to create one prefab where you exclude the sprite. In the This would be quick and dirty since the Your solution of declaring an array of materials could be to implement by custom |
Refer to issue amethyst#61 Topplegrass is explained here: https://community.amethyst.rs/t/evoli-creature-designs/814/10 Any entity with the Movement component intelligently avoids obstacles. However, not all entities that can move can steer; for example, Topplegrass is moved only by the wind. Therefore, add a new component tag AvoidObstaclesTag to all entities that are supposed to steer. Add new resource Wind. Implement debug keyboard input action to change wind direction. Load initial wind direction from a config file. In order to load from file, pass the assets directory path to the loading state. Add system that spawns new Topplegrass entities. Add system that deletes Topplegrass entities when they leave the world bounds.
Refer to issue amethyst#61 Topplegrass is explained here: https://community.amethyst.rs/t/evoli-creature-designs/814/10 Any entity with the Movement component intelligently avoids obstacles. However, not all entities that can move can steer; for example, Topplegrass is moved only by the wind. Therefore, add a new component tag AvoidObstaclesTag to all entities that are supposed to steer. Add new resource Wind. Implement debug keyboard input action to change wind direction. Load initial wind direction from a config file. In order to load from file, pass the assets directory path to the loading state. Add system that spawns new Topplegrass entities. Add system that deletes Topplegrass entities when they leave the world bounds.
Refer to issue amethyst#61 Topplegrass is explained here: https://community.amethyst.rs/t/evoli-creature-designs/814/10 Any entity with the Movement component intelligently avoids obstacles. However, not all entities that can move can steer; for example, Topplegrass is moved only by the wind. Therefore, add a new component tag AvoidObstaclesTag to all entities that are supposed to steer. Add new resource Wind. Implement debug keyboard inputs to change wind direction and speed. Load initial wind vector from a config file. In order to load from file, pass the assets directory path to the loading state. Add gravity system that affects entities with the FallingTag. Add system that deletes Topplegrass entities when they leave the world bounds.
Refer to issue amethyst#61 Topplegrass is explained here: https://community.amethyst.rs/t/evoli-creature-designs/814/10 Any entity with the Movement component intelligently avoids obstacles. However, not all entities that can move can steer; for example, Topplegrass is moved only by the wind. Therefore, add a new component tag AvoidObstaclesTag to all entities that are supposed to steer. Add new resource Wind. Implement debug keyboard inputs to change wind direction and speed. Load initial wind vector from a config file. In order to load from file, pass the assets directory path to the loading state. Add gravity system that affects entities with the FallingTag. Add system that deletes Topplegrass entities when they leave the world bounds.
Refer to issue amethyst#61 Topplegrass is explained here: https://community.amethyst.rs/t/evoli-creature-designs/814/10 Any entity with the Movement component intelligently avoids obstacles. However, not all entities that can move can steer; for example, Topplegrass is moved only by the wind. Therefore, add a new component tag AvoidObstaclesTag to all entities that are supposed to steer. Add new resource Wind. Implement debug keyboard inputs to change wind direction and speed. Load initial wind vector from a config file. In order to load from file, pass the assets directory path to the loading state. Add gravity system that affects entities with the FallingTag. Add system that deletes Topplegrass entities when they leave the world bounds.
Refer to issue amethyst#61 Topplegrass is explained here: https://community.amethyst.rs/t/evoli-creature-designs/814/10 Any entity with the Movement component intelligently avoids obstacles. However, not all entities that can move can steer; for example, Topplegrass is moved only by the wind. Therefore, add a new component tag AvoidObstaclesTag to all entities that are supposed to steer. Add new resource Wind. Implement debug keyboard inputs to change wind direction and speed. Load initial wind vector from a config file. In order to load from file, pass the assets directory path to the loading state. Add gravity system that affects entities with the FallingTag. Add system that deletes Topplegrass entities when they leave the world bounds.
See our documentation on Creature Designs and How to make a new Evoli creature.
New creatures
The text was updated successfully, but these errors were encountered: