Play the game with the links below using weather data from:

Check out the GitHub repo.

Inspiration

We wanted to create a game where community members are brought together in a collaborative environment, to encourage creativity and teamwork. Bloom is the first game (that we are aware of) to use real-time weather changes to affect how the game is played, which we believe is a unique and interesting mechanic to integrate into a video game.

What it does

Users are connected based on geographical location and work to grow and populate an island with plant life. Think of it as a garden for communities to take care of together. Each location has a different island, and it is up to the players to determine how they want to populate it. Players are rewarded for collaboration, as they can grow more options of plant life through teamwork, rather than basic plant life individually.

The weather is constantly affecting how the game is played. During sunny days, plants need to be watered more often, whereas, during rainy days, plant growth is enhanced. The way we determine the game weather is through real-time data collected from the Weather Network.

How we built it

We built this game using Babylon.js, javascript, node, socket.io, and the Weather Network API. Babylon.js allows us to create the game engine and set up the frontend. Javascript is used in the backend to handle game mechanics, with node, express, and socket.io as the means of setting up a multiplayer server. Finally, the Weather Network API is used to pull real-time weather data to determine the weather state of the game, per location.

Challenges we ran into

The most challenging thing we ran into was coming up with a name for the game. We also had a hard time learning how to initially use Babylon.js, as well as implementing a pathing algorithm for the wildlife.

Accomplishments that we're proud of

The game is turning out to be almost exactly how we envisioned it to be, and it's really cool to see how our whiteboard idea drawing and brainstorming session can come to life digitally.

What we learned

Some things we learned about developing this project:

  • Setting up a server
  • Implementing a grid system
  • Making API calls and interpreting the data
  • Applying restraints to a world camera

What's next for Bloom

We have many features in mind for Bloom, some of these include allowing in-game avatars, creating buildings, interacting with various forms of wildlife, implementing a system for snow or extreme weather conditions. We have an extensive list to possibly implement if we find time in the future.

Built With

Share this project:
×

Updates