Giter VIP home page Giter VIP logo

blooming's Introduction

Blooming

A game about growing and selling flowers. This document is a work-in-progress.

Prerequisites

You will need a relatively modern version of Node.js (say, 12 or newer?) installed to run this. I would personally recommend installing Node.js through nvm if you don't have it already.

Then you can simply install node by running:

nvm install 12

Installation and running

As this is still WIP you will have to install it from GitHub like so:

npm i -g https://github.com/peabnuts123/blooming

After that, you can run the game by simply typing:

bloom

from the command-line.

Rough architecture ramblings (v1)

The game is a CLI installable through npm. The input is through prompts like a terminal. There are commands you can type, including "help" to see what commands are currently available. I guess the commands you can do might be contextual? You receive a small random amount of seeds every time you open the game but at most only ever once per hour or two. You can plant the seeds and watch them grow. I think watering the seeds might be too stressful they should just grow over time. You can check on your seeds. The game outputs a description of the seeds that you have planted in your garden e.g. "There is a small green shoot showing through the soil" or "It's a large blooming bush of flowers with round yellow flowers". Planted plants have well-known stages of growth. Eventually a planted plant will go to seed and turn into an amount of seeds that need to be collected. Once collected the seeds of a particular plant are well-known and will show in the inventory as seeds for that particular plant (rather than anonymous seeds). Alternatively. One may harvest a growing plant for its flowers which also go into the player's inventory but the plant will then not produce any seeds. Players can also view orders for flowers that they can fulfil from their inventory in exchange for money. Players can then buy seeds from the store using their money. The store has many well-known seeds as well as exotic and unidentified seeds. The stock of the store changes over time.

Design backlog

  • Receive seeds for logging in (max once per X minutes)
  • List inventory
  • Inspect items in your inventory
  • Show garden
  • Plant seed from inventory into garden
  • Discover a plant once it reaches maturity
  • Harvest / Collect seeds from garden
  • Harvest / Collect flowers from garden
  • Time until next growing phase in Garden summary
  • Toggle light/dark theme
  • Harvest all command
  • Growth stage names
  • === MVP LINE 🏆 ===
  • Inspect plant in garden
  • View orders
  • Receive new orders every X minutes
  • Fulfil order from inventory
  • View store
  • Inspect items in store
  • Buy item from store
  • Change items in the store every X minutes

Technical backlog

  • Document and tidy up files
  • Text colouring and styles
  • Add more plants
  • "Gone to seed" message
  • Change growing timer back to an hour or so
  • === MVP LINE 🏆 ===
  • Growth stage time durations
  • autocomplete more than just the command alias

blooming's People

Contributors

peabnuts123 avatar

Stargazers

S. Shahriar avatar Dan Wallis avatar

Watchers

James Cloos avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.