Git Product home page Git Product logo

mrail's People

Contributors

minordeveloper avatar

Stargazers

 avatar  avatar

Watchers

 avatar

mrail's Issues

Update Readme

Need a readme that actually explains how to download the software and get started

Version number displayed on computer terminal

Top right of the computer terminal should display the current version number. On each restart query if we are up to date (but don't auto update unless set). and display an asterisk next to the version number if this is not the latest.

Investigate the detection_broadcast command for string/number issues

The detection_broadcast command documentation implies that the detector and train ID should be entered as integers but this does not trigger a block entrance signal in the oneway controller. I suspect that there's a string comparison happening by accident in the oneway controller.

This again reiterates the importance of using the identString and identNumber functions provided by the mRail API to perform these comparisons. Eventually I'll learn to use the helper functionality I built for this exact purpose.

Support for more than 16 trains

In the code - just use both the primary and secondary colours
In minecraft - not sure yet, maybe have multiple chests? One chest can support up to 29 trains but we want more than that. Possible solutions:

  • Multiple ender chests
  • Some depots handle different trains - i.e freight depots

Add train colour indication to display

The block controller has no indication of the colour of a train, just the service ID which can be a little hard to identify from. The suggestions is to either have the train colour to the left of the name or under the service ID itself. Do this for waiting trains too.

Be able to remotely trigger computer updates

From both the network controller and admin pocket computer you should be able to trigger other/all computers on the network to check for an update.

Implementation

  • Have each computer pull the latest release from GitHub
  • Network computer checks that it is up to date and instructs all other computers to pull from it

Also want to be able to specify if you want a stable release or the latest from the main branch. Default to stable.

Get nearby computer/detector IDs using GPS

Introduce an API command (and response) to have computers identify themselves if within a certain number of blocks of the computer than initiated the request. Can be useful for quick admin commands and checking IDs or settings.

Trains should not be able to be allocated to the waiting list for a block they already occupy

A rare event, but it just occurred so I feel as though there is no harm in adding some simple safeguards to protect against this scenario.

In the event that a train is detected at the entrance of a block it is already presumed to be occupying, it should immediately be admitted via a redstone pulse and not allocated to the waiting list.

Before pushing this change to the main branch I should consider if there are any scenarios wherein this might have an adverse affect.

Remote config editing

Allow you to remotely edit the configuration file of any computer on the network from an admin control or network control

File transfer system

Allows for network configuration files to be transferred from a central network location and be kept up to date

Predictions for expected travel time along a route

Calculate predicted train travel times through each block and station routing configuration and raise an error if a train takes too long to transit a block. Further extensions could include rerouting if a block is considered as in an error state.

New custom mRail GUI system

Need a system compatible with both touchscreen monitors and computer screens, capable of handling all mRail's GUI requirements.

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.