Evoli: Amethyst showcase game looking for collaborators


tl;dr: If you’ve already made a simple game or similar with Rust and you’re wondering what to do next, please consider checking out Evoli’s issues on GitHub.

In our pursuit to make amethyst.rs a flagship game engine for Rust, the Amethyst Foundation will be backing a small handful of “Showcase Games” that effectively demonstrate the Amethyst engine’s key capabilities. What this “backing” entails differs depending on the project. Evolution Island is “backed” by the foundation in that it is being designed and developed in-house by the Amethyst team itself.

Brief description

Imagine a 2D terrarium. A tiny ecosystem enclosed in a sealed container. Inside this closed ecosystem exists three types of living creatures: Plants, Herbivores and Predators. The goal of the player is to maintain the balance (for 2 minutes or 2 weeks, depending on the game mode) of the ecosystem, not letting any entity type go completely extinct. In later iterations of the game the player will be able to use mutations to generate a practically infinite amount of entity variations, and with that a new goal metric becomes available: Create the greatest entity diversity possible without the ecosystem collapsing.

Later still there will be multiplayer applications to play with, but we’ll be focusing on single-player for some months still.

First proof of concept

Second proof of concept

https://vimeo.com/331507073

The current state of the game implementation is explained in our Dev Planning topic. In short, we’ve made good progress and now we’d like to open up the project to anyone interested in contributing. We’ve got 8 out of 11 high priority tasks awaiting completion. We are available here, on our forum or on GitHub (preferred) to aid in speccing out and implementing the following features:

  1. Plant entity instancing

  2. Carnivorous entity instancing

  3. Herbivorous entity instancing

  4. Wander behavior

  5. Seek behavior

  6. Evade behavior

  7. Feeding/hunger system

  8. Health system

  9. Combat system

  10. Spawner entity

  11. Wall avoidance

Don’t worry too much about whether you know enough about Rust or game coding yet to contribute. A good way to get started is to run the game, peruse the source code and start asking us questions about stuff you want to understand better.

Note: Amethyst 0.11 is coming soon, so most new implementation work should probably wait until then. We’re still in “high friction mode” so be prepared to make stuff, learn from it then throw it out for something better. Iteration is the name of the game here.

6 Likes

We made a great deal of progress in the last few days.

Onboarding for newcomers to Evoli is much smoother now as we have a site map for essential reading and a handful of good first issues on GitHub that require only a minimum of prior experience with Amethyst and Evoli.