preload button hover image:
Current Time: Jun 15, 2024, 05:54:06 am
 Dwarf Fortress File Depot » Utilities » Minecart Calculator 2.8
Registration is not required to download. However, it will allow you to vote, comment, and upload. Forgot your password?
File Listing: Minecart Calculator 2.8
Last Updated: Aug 04, 2013, 04:00:40 pm
First Created: Jun 22, 2013, 05:12:30 pm
File version: 2.8
For DF version: 0.34.11
Downloads: 173 (201) Size: 3.2 MB
Views: 1,457 (1,737) Type: ZIP
Home:  Forum
Rating (0 votes): Unrated

This is an Excel spreadsheet for calculating minecart speeds, travel distances, roller/ramp placements, etc.

Tested and works: Regular tiles with rollers/pushes/track stops, single ramps with regular tracks in between.
Works more or less: Straight ramps up to ~25 z levels/200000 speed, ramp spirals with regular tracks/corners in between.
Untested/wrong: Long straight ramps, fluids on ramps, speed/tile skipping above 200k.

Data input
Column D contains the track, it sets the impulse- and friction values according to the features entered.
note: If the cart is going faster then the added roller's impulse, the roller will be ignored.

push: 20000
roller high+: 49990
roller high : 39990
roller low: 19990
roller med: 29990
roller low-: 9990
impulse ramp: 4910
DOWN ramp: 4910
UP ramp: -4890
corner ramp: -10/tick and -1000/tile
track : -10
corner: -10/tick and -1000/tile
bridge: -10
floor: -200
empty: 0
TS high+: -50000
TS high: -10000
TS med: -500
TS low: -50
TS low-: -10
blank is NOT accepted

Column F is for calculating friction in water

Column G is for calculating friction in magma

Additionaly you can enter the "Z level" into any of the cells in column C, if any of the subsequent cells is an up/down ramp the Z level indicator will change accordingly.
If you want to delete the number just drag over any of the above/below cell.

DON'T EDIT these:

Column A: tiles travelled from roller/push the counter resets to zero when (valid) roller is added
Column B: steps that a cart travels
Column G: Minecart speed
Column H: Cart behaviour:
  • speed>distance units: SKIP
  • max speed: LIGHTSPEED
  • >1 tile/step: TELEPORT
  • >0,7 t/t: SHOTGUN
  • >0,5 t/t: DERAIL MODE
  • >0,1 t/t: SAFE
  • >0 t/t: SNAIL MODE
  • =0 t/t: !!STOP!!
  • =0 t/t and cart is on an UP ramp: !Roll again!

Friction values and the accepted text can be modified on the second sheet of the workbook (friction data). If you modify column A (tile types & source) you must sort these columns (A->Z) afterwards, or the formulas won't work! The data column ( B ) can be edited freely. But don't do this. :)

  • Refined some of the ramp formulas
  • Redid some of the formulas, should be .xls compatible again.

  • Distance calculations:
    a: speed
    b: base friction
    c: distance units (length of a tile)
    cdelta: lefover distance units
    n: ticks/tile

    n = (sqrt(4a^2+4ab+b^2+8bc)-2a-b)/(2b) -- rounded down
  • Ramp distance units are ~1,4 times longer than regular tiles, but then they compensate for the longer distance. (Partly working)
  • Rollers start a cart from the beginning of the roller tile, a push teleports it to the beginning (not the middle!) of the next tile
  • Logic checks: ramps/rollers/drop influence a minecart from the middle of the previous tile. Exiting a ramp teleports a cart to the middle of the next tile.
  • Tile skipping
  • Multi-tile rollers are calculated correctly
  • No more corner column, corners are entered in D
  • Only .xlsx (Excel2007) version.

  • Distance calculations are done with the 1.a formula with some modifications thanks to expwnent's instructions. Almost every calculation is integrer based now.
  • Push starts the cart in the middle of the next tile, rollers start in the beginning of the tile
  • Shotgun mode added to cart behaviour
  • Z level indicator added
  • Formating bling-blings

  • Everything except for the "GUI".
  • Tile friction is calculated with floating point precision. (was rounded up before) As a result roller speed is correct, testing shows ~1% precision.
  • Track stops use rounded up steps to calculate friction. Testing shows this to be true.
  • Ramps do not work... They are weird. Rounding up the steps generate too much speed, while using floating point generates too little... I think current release shows ~15% more speed then in DF. Any advice welcome.

  • Merged the impulse and friction columns, it should be easier to design track layouts now. Sideeffect: rollers have tile friction (-10) now, and rollers on ramps only calculate tile friction instead of ramp friction, but as I understand roller mechanics it shouldn't matter much. Please tell me if I'm wrong....
  • Improved autocomplete.
  • Added impulse ramp, it's just a copy of DOWN ramp for now.
  • Modified Column M, it's now a cart behaviour indicator, shows when a cart reaches speed milestones.
  • Ramps travel distance is 50000 now. (was 100000 before, some posts indicate it should be half the distance) Max speed is reached after 48 ramps. - testing needed -
  • Modified impulse values of rollers. (10000,20500,31500,42500,54000)
  • Modified the friction calculations to make up for roller speed changes.
  • Added Column D for calculating steps needed to complete the route. - testing needed -
  • Multi-tile rollers will not behave correctly...

Raw Data: JSON / Text
Checksum / Hash
SHA-256: d9ce4496e6f7e95859be6fd3551f69415cff3fbf62ea06eceb983c2df9702f30
IP: logged
More From This Author
No comments have been posted for this file yet.

Website by Brett Flannigan. The core site script is PHCDownload (© 2005-2024).
Hosted by Linode.