Git Product home page Git Product logo

bika-town's People

Stargazers

 avatar

Watchers

 avatar  avatar

bika-town's Issues

Implement a Camera system

Currently, if the player moves off-screen, they become invisible but are still able to move within the map. Instead, the rendered subset of the map should change according to the current position of the player. We're presented with a few obvious choices in how a solution should work:

  • Have the camera move in the same direction as the player every time the player moves
  • Have the camera begin moving in the same direction as the player once the player leaves an inner rectangular area of the currently rendered subset of the map

We should implement and test both approaches and see what fits best.

Implement TCP server

Problem

The game is currently single-player, but should be multi-player. We will implement a TCP server to which we'll move all the logic and state-handling from the current main executable. The main executable will then become a client which merely renders state information sent to it by the server.

This is low-priority, it doesn't really make sense to convert the single-player game to a multi-player game until it's sufficiently fully featured. At that point, development of the server should begin.

Use an ECS

It's becoming increasingly difficult to manage the moving parts of the project without a way to conveniently say "well, all these things move in one of four directions so share this code between them, and all these things have health and take damage so share that code between them, ..."

A good solution to this problem is introducing an Entity-Component-System library, some good choices may be Legion or Specs. Legion is more up to date than Specs, but Specs is slightly more documented (in that there is a Specs book). Alternatively, we could roll our own, but we should figure out whether there's any real benefit to that before we decide to do so.

Draw dynamic HUD

Depends on

Problem

Players have no way to view their current HP, MP, EXP, or current level. A robust system for displaying this information using the proprietary UI assets should be implemented, probably by querying the ECS for relevant information from the player in the loop.

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.