techage_modpack/minecart
2021-05-14 19:19:09 +02:00
..
locale built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
textures built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
api.lua built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
baselib.lua built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
buffer.lua built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
depends.txt built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
doc.lua built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
entitylib.lua built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
hopper.lua built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
hopper.png built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
hopperlib.lua built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
i18n.py built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
init.lua built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
license.txt built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
minecart.lua built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
mod.conf built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
mods_support.lua built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
monitoring.lua built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
nodelib.lua built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
protection.lua built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
pusher.lua built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
rails.lua built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
README.md built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
recording.lua built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
screenshot.png built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
settingtypes.txt built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
signs.lua built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
storage.lua built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
terminal.lua built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00
tool.lua built on 14/05/2021 19:19:09 2021-05-14 19:19:09 +02:00

Minecart

Minecart, the lean railway transportation automation system

Browse on: GitHub

Download: GitHub

minecart

Minecart is based on carts, which is based almost entirely on the mod boost_cart [1], which itself is based on (and fully compatible with) the carts mod [2].

The model was originally designed by stujones11 [3] (CC-0).

Cart textures are based on original work from PixelBOX by Gambit (permissive license).

  1. https://github.com/SmallJoker/boost_cart/
  2. https://github.com/PilzAdam/carts/
  3. https://github.com/stujones11/railcart/

Minecart Features

The mod Minecart has its own cart (called Minecart) in addition to the standard cart. Minecarts are used for automated item transport on private and public rail networks. The mod features are:

  • a fast cart for your railway or roller coaster (up to 8 m/s!)
  • boost rails and speed limit signs
  • rail junction switching with the 'right-left' walking keys
  • configurable timetables and routes for Minecarts
  • automated loading/unloading of Minecarts by means of a Minecart Hopper
  • rail network protection based on protection blocks called Land Marks
  • protection of minecarts and cargo
  • Minecarts run through unloaded areas (only the stations/hopper have to be loaded)
  • Extra Minecart privs for rail workers
  • Ingame documentation (German and English), based on the mod "doc"
  • API to register carts from other mods
  • chat command '/mycart ' to output cart state and location

Technical Background

The Minecart can "run" through unloaded areas. This is done by means of recorded and stored routes. If the area is unloaded the cart will simply follow the predefined route until an area is loaded again. In this case the cart will be spawned and run as usual.

Introduction

  1. Place your rails and build a route with two endpoints. Junctions are allowed as long as each route has its own start and endpoint.
  2. Place a Railway Buffer at both endpoints. (buffers are always needed, they store the route and timing information)
  3. Give both Railway Buffers unique station names, like Oxford and Cambridge
  4. Place a Minecart at a buffer and give it a cart number (1..999)
  5. Drive from buffer to buffer in both directions using the Minecart(!) to record the routes (use 'right-left' keys to control the Minecart)
  6. Punch the buffers to check the connection data (e.g. "Oxford: connected to Cambridge")
  7. Optional: Configure the Minecart waiting time in both buffers. The Minecart will then start automatically after the configured time
  8. Optional: Protect your rail network with the Protection Landmarks (one Landmark at least every 16 nodes/meters)
  9. Place a Minecart in front of the buffer and check whether it starts after the configured time
  10. Check the cart state via the chat command: /mycart '' is the cart number, or get a list of carts with /mycart
  11. Drop items into the Minecart and punch the cart to start it, or "sneak+click" the Minecart to get cart and items back

Hopper

hopper

The Hopper is used to load/unload Minecarts. The Hopper can pull and push items into/out off chests and can drop/pick up items to/from Minecarts. To unload a Minecart place the hopper below the rail. To load the Minecart, place the hopper right next to the Minecart.

Cart Pusher

Used to push a cart if the cart does not stop directly at a buffer. The block has to be placed below the rail.

Cart Speed / Speed Limit Signs

As before, the speed of the carts is also influenced by power rails. Brake rails are irrelevant, the cart does not brake here. The maximum speed is 8 m/s. This assumes a ratio of power rails to normal rails of 1 to 4 on a flat section of rail. A rail section is a series of rail nodes without a change of direction. After every curve / kink, the speed for the next section of the route is newly determined, taking into account the swing of the cart. This means that a cart can roll over short rail sections without power rails.

In order to additionally brake the cart at certain points (at switches or in front of a buffer), speed limit signs can be placed on the track. With these signs the speed can be reduced to 4, 2, or 1 m / s. The "No speed limit" sign can be used to remove the speed limit.

The speed limit signs must be placed next to the track so that they can be read from the cart. This allows different speeds in each direction of travel.

Migration to v2

The way how carts are monitored and the cart speed is calculated has changed. Therefore, it is necessary that all carts are repositioned and the recording is repeated. Rails and buffers are not affected and can be kept unchanged.

History

2019-04-19 v0.01 first commit
2019-04-21 v0.02 functional, with junctions support
2019-04-23 v0.03 bug fixes and improvements
2019-04-25 v0.04 Landmarks and Minecart protection added
2019-05-04 v0.05 Route recording protection added
2019-05-22 v0.06 Pick up items from a cart improved
2019-06-23 v0.07 'doc' mod support and German translation added
2020-01-04 v1.00 Hopper added, buffer improved
2020-02-09 v1.01 cart loading bugfix
2020-02-24 v1.02 Hopper improved
2020-03-05 v1.03 Hopper again improved
2020-03-28 v1.04 cart unloading bugfix
2020-05-14 v1.05 API changed to be able to register carts
2020-06-14 v1.06 API changed and chat command added
2020-06-27 v1.07 Route storage and cart command bugfixes
2020-07-24 V1.08 Adapted to new techage ICTA style
2020-08-14 V1.09 Hopper support for digtron, protector:chest and default:furnace added
2020-11-12 V1.10 Make carts more robust against server lag
2021-04-10 V2.00 Complete revision to make carts robust against server load/lag, Speed limit signs and cart terminal added