Skip to content

A strategy game game of interstellar survival using Conway's Game of Life-inspired mechanics, built in Typescript

License

Notifications You must be signed in to change notification settings

andrewlaskey/generation-ship-2

Repository files navigation

Generation Ship 2

In active development

Screenshot of vanilla JS gameplay. Its meant to evoke Dwarf Fortress. Screenshot of a version that uses game modules to render a CSS 3D flying demo. The style is meant to be vaporwave-y.

This is a remake of a previous game I built a few years ago. You can find the code for that project here or play it here. I also wrote a bit about the motivations and design goals for the original game here.

For this new version I had a couple objectives. First I wanted to improve the code organization and test coverage so that making gameplay changes would be easier. Second I wanted to abstract the rendering and UI from the game mechanics. I did this so that it would possibly make it easier to port the code into a game engine like Unity or Godot. Also this could be a good way to demo different front end frameworks.

About the Game

The goal of the game is to maximize the health of a ship before it reaches its destination planet for colonization. Generation ships a named that because due to the incredible distances of space, it would take potentially generations of people living aboard a ship for years or centuries to reach nearby star systems. The health of the ship is measured by population and sort of a wishy-washy ecological health metric.

The player places tiles on a grid each turn. The grid then updates every space following rules inspired by Conway's Game of Life. This is meant to represent the interplay and dependency humans have with their environment.

Setup

npm install

Development

npm run dev

Tests

npm run test

About

A strategy game game of interstellar survival using Conway's Game of Life-inspired mechanics, built in Typescript

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published