Git Product home page Git Product logo

forwardonlygame's People

Contributors

ilyafaer avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

forwardonlygame's Issues

Implement simple characters and positioning system

  • Model human
  • Add collisions to choose characters. Chosen character should be shown by a cursor sprite
  • Add collisions to choose one of the three locomotive sides to set people. Every side must have several character cells
  • Manipulating arrows (sprites) are used to show possible sides to set character on
  • Model a gun and an idle characters animation

Characters in the first version will not move from cell to cell - just teleport to avoid animating on early stage.

Add initial lights

Add simple direct and ambient lights to make calibrating easier. Calibrate Train movement along rails.

Model Train further

Make wheels rotate, add doors and railings. Add tube.
Finish modeling without textures.

Write a simple world builder

World should be generated piece by piece while Train is moving. There should be a main direction from left to right, and a lot of branches. This can be achieved by using function similar to sin - it'll give the main direction with wavy turns.

Outings system

Outings to loot resources should be implemented. During outings characters can be scared, got illness, etc.

The first type of outings to implement is looting.

  • Generating algorithm
  • Upcoming outing interface
  • Outing interface
  • Outing result calculations
  • Affecting characters and Train
  • Add outings sounds

Write difficulty increase system

Each type of enemy should have difficulties score. And the Enemy() object should have a total score limit, randomly filled with enemies on every attack. Total score limit must be incremented after every fight.

Add shadows

Sun should be reimplemented with lens, as directional light is not easy enough to use with shadows.

Tweak materials, especially Train materials.

Model the first location: plains

Main texture: grass. It should be mostly sunny.

Location models:

  • trees
  • grass
  • stones
  • traffic lights
  • flowers
  • graves
  • lamp posts
  • old camps
  • tents
  • railway archs
  • open way stations

Tweak lighting and materials.

Develop the world building system

Pair of surface blocks should be implemented in the same object the railway blocks implemented. Every surface block should be centered in a way that will give an opportunity to rotate it. Hills and ravines should be modeled.

Every railway block should have two surface blocks - one to the left, and one to the right. Both should be randomly rotated - this will give more randomly built world.

Every block should have methods to load content and to erase it.

Loading and clearing should work asynchronously to avoid freezing.

Develop camera movement system

Camera must move with Train, but player should have an opportunity to shift it along Train to be able to see further, or look back. On a first iteration controls should be implemented with a keyboard.

Auto detect resolution

Write a function to auto detect player's screen size and set resolution. It should be called on a game start.

Add models cache warmup

On game loading load all of the game models once to cache them. It'll help to avoid freezing on a first model loading during the next block building.

Camera zoom controls

Add an ability to zoom camera. Probably can be simply done with vector from camera position to Train node.

Reserved keys: + and -

Implement character energy system

  • Add energy attribute, that affect accuracy
  • Draw energy interface
  • Add rest zone into Train
  • Implement energy dynamics: energy should reduce faster during night and fighting

General tooltip

Tooltip should be implemented to show the type of the enemy and name of the character on which mouse points.

Add women characters

Women have less hit points, but they rest faster, and other characters in the same rest zone rest faster too.

Model simple Train

Make simple Train model. For now it'll be used only for calibrating, scaling and directing the moving system.

Model Train further

Cover Train model with textures, tweak materials. Model animated wheel pushers.

Top view

Add a "C" control key to move camera into the point just above Train - that will help to positionate characters. The same button should return camera back on a further press.

Camera rotation

Add an ability to change camera angle with keyboard - with Alt modificator.

Units interface

Implement characters interface with hit points, character name and class name
Tweak enemy\characters damage values

Shooting distance

Add character shooting distance factor. The factor depends on the character type.

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.