PvE Rail Authority
The PvE Rail Authority, also known as PvE Rails is a consortium of rail builders that constructs and services rail lines on the PvE server. Though similar in nature to the Creative Transit Authority, it is less centralized. Due to this decentralization, rail lines may overlap or duplicate similar paths. PvE Rails' main objectives are to facilitate the expansion of the rail lines to populated zones across the map and to service the existing rail lines by repairing griefing and malfunction. Pve Rails accepts donations of iron to cover the cost of repairing and replacing track and boosters, as well as providing carts at spawn.
The PvE Rail Network is a major construction project, and as such, benefits from the application of the best engineering practices. This wiki will be used to capture the requirements for the network and to record component designs and operational procedures so that they can be improved upon over time and re-created whenever the PvE map is reset.
For convenience, the design of the rail network is divided into the following subsystem designs:
- Network Design - The overall relation of the rail network to the map, including the distance between stations, their placement relative to the map origin and their interconnection topology.
- Station Design - The aesthetic and functional design considerations of both major and minor stations, with provision for tailoring of the aesthetics.
- Booster Design - Technical design considerations of booster mechanisms.
- Track Design - The detailed design of rail tracks, including materials used, support structures, site clearing and placement in relation to local geographic features.
A number of observations about current and past rail systems have shaped the requirements for the PvE Rail Network:
- When choosing a site to build a city, pioneers tend to wander off in one of the four cardinal directions (N, S, E or W) from spawn. Rarely do they go NE or NNE (or NNNE). Therefore it makes sense for the rail network to follow a similar pattern.
- Any obstacle on the track, be it a mob or something as small as a skeleton's arrow fired at the previous rail passenger, will stop a cart and force the occupant to get out and walk many hundreds of blocks. The rail system should be designed to allow it to be restarted when it is thus interrupted.
- Lag makes it almost impossible to disembark by pushing a cart towards a booster and hopping in before it takes off. It is therefore necessary to provide boosters which allow the player to sit in a stationary cart when waiting to disembark.
- Over time, there is a net migration of carts away from spawn. The reasons for this are unclear, but it is speculated that players whose /sethome is at the remote location do not use the rail system to return to spawn, but instead kill themselves, leaving the cart behind. This points to the need for a mechanism for returning carts to spawn. For this to have minimal human involvement, the rail system must support sending of chest carts (full of carts or other goods). The performance requirements for non-passenger carts are quite different from those of passenger carts. Note that carts beyond the 300 block simulation distance stop on the boundary of the simulated area, which could cause problems when they start moving again together and encounter a booster.
- The Woodville line on the current PvE map was originally built on cobble, and then torn up and replaced (and straightened) using wooden sleepers. Wherever possible, such design preferences as straight tracks and attractive building materials should be anticipated and implemented from the outset to minimize the wasted effort of rework.
The following requirements have been identified for the overall topology of the PvE Rail Network:
- There should be a Central Station as close to spawn as possible. Ideally, it should be possible to spawn within the world and be travelling in a minecart less than a minute later. This provides both convenience to existing players housed at locations remote from spawn, and ease of discovery of the world for new players. If possible, Central Station would be built at x = 0, z = 0, and in the basement of the spawn building if the latter is located there.
- Lines should emanate from Central Station in the four cardinal directions, North, South, East and West. Each line should consist of a pair of tracks: one outbound and one inbound.
- The lines should be as straight as possible. This will minimize the materials required to construct them and simplify the placement of protection regions for the tracks, should they be required.
- Ideally, the four lines (N, S, E and W) should correspond exactly to x = 0, +z and -z, and z = 0, +x and -x. Anyone in the wilderness who walks to x = 0 or z = 0 should hit a rail link.
- The tracks should be placed at some reasonable level above mean sea level (TBD) in order to minimize disruption to activities on the ground and also avoid excessive excavation of rail tunnels.
- Every 100 blocks, e.g. at x = 0, z = N * 100 (N is -20 .. -1, 0, +1 .. +20), there should be an access ladder up to track level, to allow a passenger to rejoin the line, should he or she disembark between stations.
- There should be an outer limit beyond which the PvE Rail Network does not reach (excepting the terminus at towns beyond that point), for example 1500 blocks on any axis (75% of the maximum coordinate value at the time of writing) to accomodate the desire of some players to live in relative seclusion. Using the 1500 block figure, there would be a 500 block swathe of unconquered wilderness extending to the border of the map on all sides.
- Along a particular line, major stations should occur at some regular interval, for example 500 blocks (TBD). Lines going in the perpendicular cardinal directions would emanate from these stations. The coordinates of these stations should be chosen to make them easy to find, for example x = 0, z = -1500, -1000, -500, +500, +1000, +1500, or some subset of these.
- Major Stations should also occur in towns, and may therefore typically be off the x = 0 or z = 0 axes. These could be accessed by branch lines from stations on those axes.
- To facilitate rejoining the line somewhere between major stations there should be Satellite Stations at regular intervals, say every 250 blocks (TBD). These would allow the passenger to travel up or down the current line only (toward or away from the nearest Major Station).
- There should be two types of stations:
- a Main Station with incoming and outgoing tracks for each of the four cardinal directions.
- a Satellite Station between Main Stations, whose purpose is to allow a passenger to restart his or her journey.
- Both types of stations should be aesthetically pleasing, and preferably of similar design so as to be intuitive to the user.
- Main Stations at a town may be tailored to match the prevailing aesthetic of the town, for example, all wood.
- Satellite Stations need only be able to send a passenger in two directions, not four, and so are simpler than Main Stations.
- Main Stations should preferably have a map (consisting of blocks on the floor) indicating local destinations, directions, distances and travelling times. Satellite Stations need only indicate the two nearest Main Stations with signage.
- Boosters based on constantly moving carts are known to fail at regular intervals both on SMP and SSP. All boosters should therefore be designed to come to a complete stop when not in use.
- Boosters must be capable of sending a non-passenger cart (minecart or chestcart) the large distances between major stations with only a reasonable number of booster units between.
- Players must disembark from a station by sitting in an cart. Therefore, Bleh's door booster, or better, should be used.
- Boosters should ideally be both mob-proof and grief-proof. This could be achieved by enclosing the booster in a protected building, with zero height above the cart except where required for maintenance or functioning.
- The spacing between boosters should take into account the 300 block simulation limit.
A test track was set up on the PvE server to measure the performance of stacked booster designs. The findings were as follows:
- There is a random variation of up to 10% in output distance of a stacked booster, except that a single booster cart always boosts the same distance on a flat test track, in testing.
- There is no difference between the performance of empty minecarts and loaded or unloaded chestcarts. For a given stacked booster design the distance these travel is the same, taking into account the random variation.
- For a given booster design, carts with a passenger in them travel approximately 5 times as far as a non-passenger cart on the same track. Empty carts or chest carts will therefore impose the most stringent design constraints.
- Further testing needs to be done to establish the relationship between the contact length and the boosted distance. From publicized tests elsewhere, it is expected to be linear.
- Booster performance scales fairly linearly with the number of stacked carts. For a booster track where the the flat section of contact between the stacked booster carts and the travelling cart was 10 blocks long, the following raw figures were obtained for non-passenger carts:
- stacked cart: 83 blocks
- stacked carts: 174 blocks
- stacked carts: 242 - 266 blocks
- stacked carts: 338 - 363 blocks
- stacked carts: 422 - 458 blocks
- stacked carts: 537 - 560 blocks
- Given these figures, the proposed rule of thumb for this size of booster, with N stacked carts, is (80 + (N-1) x 90) blocks range for a non-passenger cart.
- Given that these boosters come to a complete stop and cause no measurable increase in data traffic from the server when stationary, it is theorized that they cause negligible lag and should be acceptable for SMP use.
- Using a design safety margin of 20% and a performance goal of 250 blocks boost for an empty cart, it is suggested that quadruple-stacked boosters be employed on the PvE Rail Network.
- Further research into booster design is needed.
- Tracks should have a low visual impact; they should blend into the world and enhance the scenery, not be an eyesore.
- Cobble should be avoided as a construction material for tracks as it is widely regarded as an eyesore. It should be considered for decorative contrast only. Wood has the highest number of options for aesthetically pleasing design: steps, half-blocks, planks, posts, stacked signs and 3 types of logs, and should be the first choice for the sleepers on which rails rest.
- Creative design of bridges and supports for tracks, using a wide range of materials (including cobble, smooth stone, sand stone, brick and steel) is encouraged.
- Near spawn, tracks should run underground so as not to detract from the appearance of the spawn area.
- There should be a safe walking path beside the line to allow potential passengers stranded on the line to walk to the nearest Main Station or Satellite Station. Pedestrians and mobs should be prevented from obstructing the line, but pedestrians must be allowed to cross over or under it in some way.