Howto - ShadowJonathan/ByteCart GitHub Wiki

The recycling ring

The recycling ring(s) must be situated in a specific location in the network topology called ring 0, or region 0 if there is a backbone network.

The recycling ring must be at a unique level in the network. It is at upper level of routing algorithm, i.e. at backbone level if there is a backbone network, otherwise at region level. You can't have some recycling rings in regions if you have a backbone.

A typycal layout or ring (or region) 0 is the one figured on this picture.

recycling ring

Tip: Build a backbone router (or leave enough space to do it later) between the region router and your garbage collection installations, or you will have to move them to leave the space for a future backbone router.

The most frequent case : 1 region, 1 recycling ring

If you have only one region, then the recycling ring is ring #0 (with address 1.0.0 in region 1 for example). Router output to ring 0 is used only as a recycling ring where misaddressed carts will land. You must dedicate this output to this purpose, and build something to manage those carts. The most simple method is to destroy carts. The router input from ring 0 is used as starting point for updater carts.

A good practice is to put this ring #0 on the edge of your network, attached to only one router. If it is attached to 2 or more routers, then it is like having several rings (see below).

If you need to extend your networks to other regions, you can easily convert this ring to an interlink ring (see below).

To put in place a recycling ring, you have nothing to do. Having used bcupdater region [region_number] new command, the ring 0 is the point from where the updater cart has started.

If you need to move ring 0 in the same region:

in old ring 0:

  • make old ring 0 a classic ring (joining input and output is a solution, don't make the loop to small)
  • erase address on the 4th line of BC8010 sign under it
  • clear the first slot of the chest above the router

in the new ring 0:

  • run bcupdater region [region_number] new from the new ring 0 (check that address on BC8010 sign is blank before running the command). Wait a moment for the updater cart to update all routes.

The complex case : 1 region, several recycling rings or several attachment

You can have several recycling rings if you wish, or 1 single ring attached to several routers. Each recycling ring will be used by the nearest rings. First set an unique ring 0 (don't prepare other rings 0, all rings except ring 0 must be loops, so future rings 0 must be configured as classic rings) and run bcupdater region as usual.

Once the network is configured, destroy updater cart and erase address on the 4th line of BC8010 sign under the future ring 0. Launch a new bcupdater region [region_number] new cart from there into the router.

Repeat operation for each ring 0, don't forget to wait updater cart operation completion and removal before proceeding.

If a ring 0 must be attached to several routers of same region, apply the procedure for each attachment as if it was a distinct ring 0.

The Guru case : several regions

If you have several regions, then you MUST have a backbone. in this case, ALL recycling rings internal to regions MUST be transformed to become an interlink ring attached to the backbone, and you MUST rebuild at least one global recycling ring in virtual region #0 (holding address 0.0.0).

In this situation, you can't have recycling rings in regions: all recycling operations are done in the backbone.

To create one or several rings 0 in the backbone (or several attachments to one ring 0), the operations are similar as above, except you must replace command bcupdater region with bcupdater backbone, and make the updater cart start from ring(s) 0 in the backbone (i.e. a router with BC8020 sign).

Note that you must first configure all regions with their rings 0, and only after configure your backbone with the real ring(s) 0 at backbone level.

A station for 5 carts

In this howto, we will see how to build a station to manage trains up to 5 carts.

There is schematics for the 5-cart station here: 1 file for each orientation. A piece of redstone is missing in the hole behind the BC9001 sign, don't forget to put it back.

This station can receive trains with up to 5 carts, and make it start with a button.

This station can obviously receive standalone carts.

This howto is divided in 2 parts. First we will build the access to the station, then we will build the station itself with its platform.

General view

Access

Step 1

Step 2

Step 3

Step 4

Step 5

EDIT:please read "a line AND a torch"

Step 6

Step 7

EDIT:This value of 40 blocks is empirical. By experience, a distance of 20 blocks is too small since we must have time to make the train leave the station if a cart triggers the detector when cancelling the start is no more possible. Benchmarking would be welcome.

Step 8

Step 9

Step 10

Station

Step 11

Step 12

Step 13

Step 14

Step 15

Step 16

Other models can be built from this tutorial. Technically, there is no limitation on train length, except limitations required to avoid network congestion. If you plan to build a network for very long trains, you must scale it accordingly. The scaling parameter is the distance between a BC7002 detector and a BC9001 station: it must be long enough to detect a free window in the traffic to insert a long train.