Inspiration
We wanted a pretty way to watch environments change.
What it does
Plants and animals on a large grid grow and move according to rules, creating a fun and visually interesting simulation to watch change over time.
How we built it
We used multiple HashSets to create different tile layers, one for dirt, water, vegetation, lighting, etc. From there we made the tiles change using rules. For example, each "leaf" of a plant seeks for a close spot with the most light, and turns into a flower after existing for a certain amount of time.
Challenges we ran into
We first tried making organisms separately from plants. The organisms would search for food and the plants would take the background. The problem was that the organisms ended up not really fitting into the scene and didn't grow right with the environment, so we had to scrap them and switch to something more fitting, bees.
Accomplishments that we're proud of
We found the right balance of branch growth and death, leading to interesting emergent behavior, bushy growth along dirt with roots, and long spiraling branches away from roots, that changed over time as new branches grew and suffocated the old ones.
What we learned
We learned how to use Bevy engine as well as ways to more efficiently search local areas.
What's next for Flowers
Our original idea was a cell simulation game, where cells mutate and evolve over time in both behavior and their structure, with the idea that emergent behavior would evolve like predation and different feeding strategies. It worked initially with very simple behavior of learning to move towards food, but after adding more complexity, it degenerated and could not learn as we hoped. We think there is still something interesting here we could potentially add to the new direction we took the project.
Built With
- bevy
- rust
Log in or sign up for Devpost to join the conversation.