Clean up assets
- HTML output files should be generated when needed; this is a code repository. - Update gitignore to ignore hidden .directory and HTML output.
3
.gitignore
vendored
@ -1,3 +1,6 @@
|
||||
## Eclipse project files & directories
|
||||
.project
|
||||
.settings
|
||||
.directory
|
||||
assets/manual.html.LyXconv/**
|
||||
assets/interlocking.html.LyXconv/**
|
||||
|
Before Width: | Height: | Size: 141 KiB |
Before Width: | Height: | Size: 88 KiB |
Before Width: | Height: | Size: 22 KiB |
Before Width: | Height: | Size: 1.3 KiB |
Before Width: | Height: | Size: 49 KiB |
Before Width: | Height: | Size: 203 KiB |
Before Width: | Height: | Size: 239 KiB |
Before Width: | Height: | Size: 43 KiB |
Before Width: | Height: | Size: 111 KiB |
Before Width: | Height: | Size: 182 KiB |
Before Width: | Height: | Size: 6.9 KiB |
Before Width: | Height: | Size: 6.9 KiB |
Before Width: | Height: | Size: 62 KiB |
Before Width: | Height: | Size: 8.1 KiB |
@ -1,30 +0,0 @@
|
||||
\expandafter\ifx\csname doTocEntry\endcsname\relax \expandafter\endinput\fi
|
||||
\doTocEntry\tocsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {1}Introduction}}{3}\relax
|
||||
\doTocEntry\tocsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {2}Setting up track sections}}{3}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {2.1}Track Circuit Breaks}}{4}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {2.2}Long track sections, crossings and other edge cases}}{5}\relax
|
||||
\doTocEntry\tocsubsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {2.2.1}Very long track sections}}{5}\relax
|
||||
\doTocEntry\tocsubsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {2.2.2}Rail crosses}}{5}\relax
|
||||
\doTocEntry\tocsubsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {2.2.3}Deleting and re-adding single TCBs to a section}}{6}\relax
|
||||
\doTocEntry\tocsubsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {2.2.4}Dissolving sections}}{6}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {2.3}Interlocking patterns}}{6}\relax
|
||||
\doTocEntry\tocsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {3}Signals and routes}}{6}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {3.1}Signal Influence Point}}{7}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {3.2}Signal Aspects}}{7}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {3.3}Train moves and Shunt Moves}}{8}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {3.4}The concept of routes}}{8}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {3.5}Assigning main signals to TCBs}}{9}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {3.6}Shunt routes}}{9}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {3.7}Route Release}}{10}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {3.8}Programming a route}}{10}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {3.9}Route information screen}}{11}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {3.10}Specifying signal aspects}}{11}\relax
|
||||
\doTocEntry\tocsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {4}Interlocking system operation}}{12}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {4.1}Train Safety System}}{12}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {4.2}Simple route setting and cancelling}}{12}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {4.3}Automatic Working}}{13}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {4.4}Automatic Route Setting (ARS)}}{13}\relax
|
||||
\doTocEntry\tocsubsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {4.4.1}Writing ARS Rules}}{13}\relax
|
||||
\doTocEntry\tocsubsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {4.4.2}Using ARS}}{14}\relax
|
||||
\doTocEntry\tocsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {5}Final notes}}{14}\relax
|
||||
\par
|
@ -1,29 +0,0 @@
|
||||
\expandafter\ifx\csname doTocEntry\endcsname\relax \expandafter\endinput\fi
|
||||
\doTocEntry\tocsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {1}Introduction}}{3}\relax
|
||||
\doTocEntry\tocsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {2}Setting up track sections}}{3}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {2.1}Track Circuit Breaks}}{4}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {2.2}Long track sections, crossings and other edge cases}}{5}\relax
|
||||
\doTocEntry\tocsubsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {2.2.1}Very long track sections}}{5}\relax
|
||||
\doTocEntry\tocsubsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {2.2.2}Rail crosses}}{5}\relax
|
||||
\doTocEntry\tocsubsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {2.2.3}Deleting and re-adding single TCBs to a section}}{6}\relax
|
||||
\doTocEntry\tocsubsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {2.2.4}Dissolving sections}}{6}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {2.3}Interlocking patterns}}{6}\relax
|
||||
\doTocEntry\tocsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {3}Signals and routes}}{6}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {3.1}Signal Influence Point}}{7}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {3.2}Signal Aspects}}{7}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {3.3}Train moves and Shunt Moves}}{8}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {3.4}The concept of routes}}{8}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {3.5}Assigning main signals to TCBs}}{9}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {3.6}Shunt routes}}{9}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {3.7}Route Release}}{10}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {3.8}Programming a route}}{10}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {3.9}Route information screen}}{11}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {3.10}Specifying signal aspects}}{11}\relax
|
||||
\doTocEntry\tocsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {4}Interlocking system operation}}{12}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {4.1}Train Safety System}}{12}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {4.2}Simple route setting and cancelling}}{12}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {4.3}Automatic Working}}{13}\relax
|
||||
\doTocEntry\tocsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {4.4}Automatic Route Setting (ARS)}}{13}\relax
|
||||
\doTocEntry\tocsubsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {4.4.1}Writing ARS Rules}}{13}\relax
|
||||
\doTocEntry\tocsubsubsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {4.4.2}Using ARS}}{14}\relax
|
||||
\doTocEntry\tocsection{}{\csname a:TocLink\endcsname{1}{Q1-1-0}{}{\numberline {5}Final notes}}{14}\relax
|
@ -1,4 +0,0 @@
|
||||
\relax
|
||||
\ifx\rEfLiNK\UnDef\gdef \rEfLiNK#1#2{#2}\fi
|
||||
\babel@aux{english}{}
|
||||
\newlabel{subsec:Long-track-sections,}{{\rEfLiNK{x1-17r2}{2.2}}{\rEfLiNK{x1-17r2}{5}}}
|
@ -1,117 +0,0 @@
|
||||
|
||||
/* start css.sty */
|
||||
.ecsx-1728{font-size:170%; font-weight: bold;}
|
||||
.ecsx-1728{ font-weight: bold;}
|
||||
.ecsx-1728{ font-weight: bold;}
|
||||
.ecsx-1728{ font-weight: bold;}
|
||||
.ecsx-1728{ font-weight: bold;}
|
||||
.ecsx-1728{ font-weight: bold;}
|
||||
.ecst-1440{font-size:140%;}
|
||||
.ecsx-1200{font-size:120%; font-weight: bold;}
|
||||
.ecsx-1200{ font-weight: bold;}
|
||||
.ecsx-1200{ font-weight: bold;}
|
||||
.ecsx-1200{ font-weight: bold;}
|
||||
.ecsx-1200{ font-weight: bold;}
|
||||
.ecsx-1200{ font-weight: bold;}
|
||||
.ecsx-1000{ font-weight: bold;}
|
||||
.ecsx-1000{ font-weight: bold;}
|
||||
.ecsx-1000{ font-weight: bold;}
|
||||
.ecsx-1000{ font-weight: bold;}
|
||||
.ecsx-1000{ font-weight: bold;}
|
||||
.ecsx-1000{ font-weight: bold;}
|
||||
.ecbx-1000{ font-weight: bold;}
|
||||
.ecbx-1000{ font-weight: bold;}
|
||||
.ecbx-1000{ font-weight: bold;}
|
||||
.ecbx-1000{ font-weight: bold;}
|
||||
.ecbx-1000{ font-weight: bold;}
|
||||
.ecbx-1000{ font-weight: bold;}
|
||||
p.noindent { text-indent: 0em }
|
||||
td p.noindent { text-indent: 0em; margin-top:0em; }
|
||||
p.nopar { text-indent: 0em; }
|
||||
p.indent{ text-indent: 1.5em }
|
||||
@media print {div.crosslinks {visibility:hidden;}}
|
||||
a img { border-top: 0; border-left: 0; border-right: 0; }
|
||||
center { margin-top:1em; margin-bottom:1em; }
|
||||
td center { margin-top:0em; margin-bottom:0em; }
|
||||
.Canvas { position:relative; }
|
||||
img.math{vertical-align:middle;}
|
||||
li p.indent { text-indent: 0em }
|
||||
li p:first-child{ margin-top:0em; }
|
||||
li p:last-child, li div:last-child { margin-bottom:0.5em; }
|
||||
li p~ul:last-child, li p~ol:last-child{ margin-bottom:0.5em; }
|
||||
.enumerate1 {list-style-type:decimal;}
|
||||
.enumerate2 {list-style-type:lower-alpha;}
|
||||
.enumerate3 {list-style-type:lower-roman;}
|
||||
.enumerate4 {list-style-type:upper-alpha;}
|
||||
div.newtheorem { margin-bottom: 2em; margin-top: 2em;}
|
||||
.obeylines-h,.obeylines-v {white-space: nowrap; }
|
||||
div.obeylines-v p { margin-top:0; margin-bottom:0; }
|
||||
.overline{ text-decoration:overline; }
|
||||
.overline img{ border-top: 1px solid black; }
|
||||
td.displaylines {text-align:center; white-space:nowrap;}
|
||||
.centerline {text-align:center;}
|
||||
.rightline {text-align:right;}
|
||||
div.verbatim {font-family: monospace; white-space: nowrap; text-align:left; clear:both; }
|
||||
.fbox {padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; }
|
||||
div.fbox {display:table}
|
||||
div.center div.fbox {text-align:center; clear:both; padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; }
|
||||
div.minipage{width:100%;}
|
||||
div.center, div.center div.center {text-align: center; margin-left:1em; margin-right:1em;}
|
||||
div.center div {text-align: left;}
|
||||
div.flushright, div.flushright div.flushright {text-align: right;}
|
||||
div.flushright div {text-align: left;}
|
||||
div.flushleft {text-align: left;}
|
||||
.underline{ text-decoration:underline; }
|
||||
.underline img{ border-bottom: 1px solid black; margin-bottom:1pt; }
|
||||
.framebox-c, .framebox-l, .framebox-r { padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; }
|
||||
.framebox-c {text-align:center;}
|
||||
.framebox-l {text-align:left;}
|
||||
.framebox-r {text-align:right;}
|
||||
span.thank-mark{ vertical-align: super }
|
||||
span.footnote-mark sup.textsuperscript, span.footnote-mark a sup.textsuperscript{ font-size:80%; }
|
||||
div.tabular, div.center div.tabular {text-align: center; margin-top:0.5em; margin-bottom:0.5em; }
|
||||
table.tabular td p{margin-top:0em;}
|
||||
table.tabular {margin-left: auto; margin-right: auto;}
|
||||
td p:first-child{ margin-top:0em; }
|
||||
td p:last-child{ margin-bottom:0em; }
|
||||
div.td00{ margin-left:0pt; margin-right:0pt; }
|
||||
div.td01{ margin-left:0pt; margin-right:5pt; }
|
||||
div.td10{ margin-left:5pt; margin-right:0pt; }
|
||||
div.td11{ margin-left:5pt; margin-right:5pt; }
|
||||
table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; }
|
||||
td.td00{ padding-left:0pt; padding-right:0pt; }
|
||||
td.td01{ padding-left:0pt; padding-right:5pt; }
|
||||
td.td10{ padding-left:5pt; padding-right:0pt; }
|
||||
td.td11{ padding-left:5pt; padding-right:5pt; }
|
||||
table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; }
|
||||
.hline hr, .cline hr{ height : 1px; margin:0px; }
|
||||
.tabbing-right {text-align:right;}
|
||||
span.TEX {letter-spacing: -0.125em; }
|
||||
span.TEX span.E{ position:relative;top:0.5ex;left:-0.0417em;}
|
||||
a span.TEX span.E {text-decoration: none; }
|
||||
span.LATEX span.A{ position:relative; top:-0.5ex; left:-0.4em; font-size:85%;}
|
||||
span.LATEX span.TEX{ position:relative; left: -0.4em; }
|
||||
div.float, div.figure {margin-left: auto; margin-right: auto;}
|
||||
div.float img {text-align:center;}
|
||||
div.figure img {text-align:center;}
|
||||
.marginpar {width:20%; float:right; text-align:left; margin-left:auto; margin-top:0.5em; font-size:85%; text-decoration:underline;}
|
||||
.marginpar p{margin-top:0.4em; margin-bottom:0.4em;}
|
||||
table.equation {width:100%;}
|
||||
.equation td{text-align:center; }
|
||||
td.equation { margin-top:1em; margin-bottom:1em; }
|
||||
td.equation-label { width:5%; text-align:center; }
|
||||
td.eqnarray4 { width:5%; white-space: normal; }
|
||||
td.eqnarray2 { width:5%; }
|
||||
table.eqnarray-star, table.eqnarray {width:100%;}
|
||||
div.eqnarray{text-align:center;}
|
||||
div.array {text-align:center;}
|
||||
div.pmatrix {text-align:center;}
|
||||
table.pmatrix {width:100%;}
|
||||
span.pmatrix img{vertical-align:middle;}
|
||||
div.pmatrix {text-align:center;}
|
||||
table.pmatrix {width:100%;}
|
||||
span.bar-css {text-decoration:overline;}
|
||||
img.cdots{vertical-align:middle;}
|
||||
.figure img.graphics {margin-left:10%;}
|
||||
/* end css.sty */
|
||||
|
@ -1,830 +0,0 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html >
|
||||
<head><title></title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||
<meta name="generator" content="TeX4ht (http://www.tug.org/tex4ht/)">
|
||||
<meta name="originator" content="TeX4ht (http://www.tug.org/tex4ht/)">
|
||||
<!-- html -->
|
||||
<meta name="src" content="interlocking.tex">
|
||||
<link rel="stylesheet" type="text/css" href="interlocking.css">
|
||||
</head><body
|
||||
>
|
||||
<!--l. 18--><p class="noindent" >
|
||||
|
||||
|
||||
<!--l. 18--><p class="noindent" ><span
|
||||
class="ecsx-1728">Interlocking</span>
|
||||
<span
|
||||
class="ecsx-1728">System</span>
|
||||
<span
|
||||
class="ecsx-1728">Guide</span>
|
||||
<div class="tabular"> <table id="TBL-1" class="tabular"
|
||||
cellspacing="0" cellpadding="0"
|
||||
><colgroup id="TBL-1-1g"><col
|
||||
id="TBL-1-1"></colgroup><tr
|
||||
style="vertical-align:baseline;" id="TBL-1-1-"><td style="white-space:nowrap; text-align:left;" id="TBL-1-1-1"
|
||||
class="td00"></td></tr></table>
|
||||
</div>
|
||||
<a
|
||||
id="x1-2r1"></a>
|
||||
<!--l. 20--><p class="noindent" ><span
|
||||
class="ecsx-1200">1</span> <span
|
||||
class="ecsx-1200">Introduction</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 22--><p class="noindent" >In real-world railways, a so-called interlocking system is a set of railway signals and trackside equipment. Its purpose is to prevent
|
||||
conflicting train movements which otherwise could result in derailing or colliding trains. If you want more information, just search for
|
||||
“railway interlocking” on the internet.
|
||||
<!--l. 28--><p class="noindent" >Real-world interlocking systems perform this task by setting routes. A route is a path along a track that a train can safely pass. To set a
|
||||
route for a train, the signalman (the operator of a signal box) has to set switches (turnouts) to the correct position and lock them in order
|
||||
to make a signal for a train show “Proceed”. In newer systems, this is done automatically by the interlocking system. A route can
|
||||
not be set if switches are locked to a wrong position by another route or if any portion of the route is occupied by a
|
||||
train.
|
||||
<!--l. 37--><p class="noindent" >The interlocking system in this Minetest mod tries to follow real-world interlocking systems as far as applicable. It divides tracks into
|
||||
track sections and implements a route setting mechanism following the same principle.
|
||||
<!--l. 42--><p class="noindent" >However, for the sake of simplicity of implementation and usage, not all concepts of real-world interlocking have been taken over.
|
||||
Especially, there is no mechanism for overlap.
|
||||
<!--l. 46--><p class="noindent" >If you are looking for a place to learn how real-world interlocking systems work, have a look at “SimSig”. By looking at their simulations,
|
||||
you can obtain experience on how to set up your own interlocking systems in AdvTrains. The SimSig glossary is a good place to look up
|
||||
unknown terms in this document.
|
||||
<!--l. 52--><p class="noindent" >
|
||||
<a
|
||||
id="x1-3r2"></a>
|
||||
<!--l. 52--><p class="noindent" ><span
|
||||
class="ecsx-1200">2</span> <span
|
||||
class="ecsx-1200">Setting</span>
|
||||
<span
|
||||
class="ecsx-1200">up</span>
|
||||
<span
|
||||
class="ecsx-1200">track</span>
|
||||
<span
|
||||
class="ecsx-1200">sections</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 54--><p class="noindent" >In the real world, a line of track is divided into so-called track sections, or track circuits. Those systems often can not tell
|
||||
where exactly a train is, but only which track sections it occupies. A route can never be set through an occupied track
|
||||
section.
|
||||
<!--l. 59--><p class="noindent" >A track section often covers:
|
||||
<ul class="itemize1">
|
||||
<li class="itemize">A section on a main running line, between two signals
|
||||
</li>
|
||||
<li class="itemize">A single turnout
|
||||
</li>
|
||||
<li class="itemize">A rail crossing, or a set of turnouts acting as a double/single slip switch
|
||||
</li>
|
||||
<li class="itemize">A siding</li></ul>
|
||||
<!--l. 67--><p class="noindent" >You will find some examples on how to interlock certain patterns later.
|
||||
<!--l. 69--><p class="noindent" >
|
||||
<a
|
||||
id="x1-4r1"></a>
|
||||
<!--l. 69--><p class="noindent" ><span
|
||||
class="ecsx-1200">2.1</span> <span
|
||||
class="ecsx-1200">Track</span>
|
||||
<span
|
||||
class="ecsx-1200">Circuit</span>
|
||||
<span
|
||||
class="ecsx-1200">Breaks</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 71--><p class="noindent" >In this mod, you will not directly configure the locations of track sections. Instead, you designate the borders of each track section using a
|
||||
special node, the Track Circuit Break, abbreviated TCB.
|
||||
<!--l. 75--><p class="noindent" >For example, if you want to create a track section for a piece of a main running line, you set up two TCBs at the ends of this track
|
||||
circuit.
|
||||
<!--l. 79--><p class="noindent" >Setting up a TCB works as follows:
|
||||
<ol class="enumerate1" >
|
||||
<li
|
||||
class="enumerate" id="x1-6x1">Place a TCB node somewhere near the place where the circuit break is going to be located.
|
||||
</li>
|
||||
<li
|
||||
class="enumerate" id="x1-8x2">Right-click the TCB node
|
||||
</li>
|
||||
<li
|
||||
class="enumerate" id="x1-10x3">Punch the rail which should act as TCB</li></ol>
|
||||
<!--l. 86--><p class="noindent" >The result should look like this:
|
||||
<!--l. 88--><p class="noindent" ><img
|
||||
src="0_home_moritz_Home_Projekte_Minetest_minetest_m___s_assets_lyx_img_screenshot_20180830_142551.png" alt="PIC"
|
||||
>
|
||||
<!--l. 90--><p class="noindent" >Now you have assigned the TCB node to a rail. Right-click the TCB node once again. This will bring up a form which looks as
|
||||
follows:
|
||||
<!--l. 93--><p class="noindent" ><img
|
||||
src="1_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-26-35.png" alt="PIC"
|
||||
>
|
||||
<!--l. 95--><p class="noindent" >You see that the form is divided in side A and side B. To designate where each side is, a marker is displayed on the rail. You can always
|
||||
make this marker show up by punching the TCB node, and remove it by punching the marker. Both sides are shown as “End of
|
||||
interlocking”. This means that there is no track section set up at this place.
|
||||
<!--l. 101--><p class="noindent" >You should repeat this procedure once again a few meters away from the first TCB to create a second TCB on the same
|
||||
track.
|
||||
<!--l. 104--><p class="noindent" ><img
|
||||
src="2_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-32-48.png" alt="PIC"
|
||||
>
|
||||
<!--l. 106--><p class="noindent" >Once you have both bordering TCBs set up, you can now create the actual track section. To do this:
|
||||
<ol class="enumerate1" >
|
||||
<li
|
||||
class="enumerate" id="x1-12x1">Right-click one of the TCBs
|
||||
</li>
|
||||
<li
|
||||
class="enumerate" id="x1-14x2">Locate the correct side (A or B) to create the track section
|
||||
</li>
|
||||
<li
|
||||
class="enumerate" id="x1-16x3">Click “Create interlocked Track Section” in the formspec on the chosen side.</li></ol>
|
||||
<!--l. 114--><p class="noindent" >Now, the text on the formspec has changed. It shows something like this:
|
||||
<!--l. 117--><p class="noindent" ><img
|
||||
src="3_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-27-25.png" alt="PIC"
|
||||
>
|
||||
<!--l. 119--><p class="noindent" >Clicking “Show Track Section” brings up another formspec:
|
||||
<!--l. 121--><p class="noindent" ><img
|
||||
src="4_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-28-32.png" alt="PIC"
|
||||
>
|
||||
<!--l. 123--><p class="noindent" >On the top, you see a list of all TCBs that border this track section. In your case, there should be two TCBs listed. If there’s only one,
|
||||
head over to <a
|
||||
href="#x1-17r2">2.2<!--tex4ht:ref: subsec:Long-track-sections, --></a>. You should now select a name for the track section, to identify it later.
|
||||
<!--l. 128--><p class="noindent" >The same procedure is applicable when you create a turnout track section, except that you have to set up three or more
|
||||
TCBs.
|
||||
<!--l. 131--><p class="noindent" >The AdvTrains interlocking system allows you to add more TCBs after you have created a track section. This works without problems in
|
||||
most cases. For example, you can easily insert a turnout into an already set-up track section and create another TCB behind it, and
|
||||
AdvTrains will automatically detect the existing track section. Problems arise only if you try to insert a TCB in-between a section, in
|
||||
which case both sides of the TCB will end up assigned to the same section. The code currently does not handle this case properly, so try
|
||||
to avoid this situation by all means. As a last resort, you can always dissolve a faulty track section, as described in the next
|
||||
chapter.
|
||||
<!--l. 142--><p class="noindent" >
|
||||
<a
|
||||
id="x1-17r2"></a>
|
||||
<!--l. 142--><p class="noindent" ><span
|
||||
class="ecsx-1200">2.2</span> <span
|
||||
class="ecsx-1200">Long</span>
|
||||
<span
|
||||
class="ecsx-1200">track</span>
|
||||
<span
|
||||
class="ecsx-1200">sections,</span>
|
||||
<span
|
||||
class="ecsx-1200">crossings</span>
|
||||
<span
|
||||
class="ecsx-1200">and</span>
|
||||
<span
|
||||
class="ecsx-1200">other</span>
|
||||
<span
|
||||
class="ecsx-1200">edge</span>
|
||||
<span
|
||||
class="ecsx-1200">cases</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 144--><p class="noindent" >
|
||||
<a
|
||||
id="x1-18r1"></a>
|
||||
<!--l. 144--><p class="noindent" ><span
|
||||
class="ecsx-1000">2.2.1</span> <span
|
||||
class="ecsx-1000">Very</span>
|
||||
<span
|
||||
class="ecsx-1000">long</span>
|
||||
<span
|
||||
class="ecsx-1000">track</span>
|
||||
<span
|
||||
class="ecsx-1000">sections</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 146--><p class="noindent" >If you try to set up a track section that is longer than 1000 nodes, advtrains won’t recognize the TCB at the other end because of a safety
|
||||
limit in the traverser function, which is supposed to prevent deadlocks. This case has happened when the Track Section overview screen
|
||||
only shows one TCB in the list. The procedure for this is as follows:
|
||||
<ol class="enumerate1" >
|
||||
<li
|
||||
class="enumerate" id="x1-20x1">Go to the second TCB (the one that wasn’t recognized). It should show “End of Interlocking” on the relevant side.
|
||||
</li>
|
||||
<li
|
||||
class="enumerate" id="x1-22x2">Click “Create interlocked track section”. The section created will be different from the one that is already present.
|
||||
</li>
|
||||
<li
|
||||
class="enumerate" id="x1-24x3">In the track section overview, click “Join into other section”
|
||||
</li>
|
||||
<li
|
||||
class="enumerate" id="x1-26x4">Go back to the first TCB, bring up the Track Section overview screen of the first track section and click “Join with ???”</li></ol>
|
||||
<!--l. 160--><p class="noindent" >The other, missing TCB should now appear in the list. If you accidentally started such a joining procedure, click the “X” button on the
|
||||
right.
|
||||
<!--l. 164--><p class="noindent" >
|
||||
<a
|
||||
id="x1-27r2"></a>
|
||||
<!--l. 164--><p class="noindent" ><span
|
||||
class="ecsx-1000">2.2.2</span> <span
|
||||
class="ecsx-1000">Rail</span>
|
||||
<span
|
||||
class="ecsx-1000">crosses</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 166--><p class="noindent" >Since rail crosses are created by laying tracks across each other without logical connection, there’s no way for advtrains to know whether
|
||||
rails cross each other.
|
||||
<!--l. 170--><p class="noindent" >Rail crossings in interlocking systems are always one single track section, which in most cases has 4 TCBs adjacent.
|
||||
<!--l. 173--><p class="noindent" ><img
|
||||
src="5_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-51-25.png" alt="PIC"
|
||||
>
|
||||
<!--l. 175--><p class="noindent" >The procedure is quite similar to the one for long sections: First, create two track sections for the branches, and then use the “Join”
|
||||
function to merge both sections into one.
|
||||
<!--l. 179--><p class="noindent" >
|
||||
<a
|
||||
id="x1-28r3"></a>
|
||||
<!--l. 179--><p class="noindent" ><span
|
||||
class="ecsx-1000">2.2.3</span> <span
|
||||
class="ecsx-1000">Deleting</span>
|
||||
<span
|
||||
class="ecsx-1000">and</span>
|
||||
<span
|
||||
class="ecsx-1000">re-adding</span>
|
||||
<span
|
||||
class="ecsx-1000">single</span>
|
||||
<span
|
||||
class="ecsx-1000">TCBs</span>
|
||||
<span
|
||||
class="ecsx-1000">to</span>
|
||||
<span
|
||||
class="ecsx-1000">a</span>
|
||||
<span
|
||||
class="ecsx-1000">section</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 181--><p class="noindent" >In some occasions, for example when you remove a siding or a crossover, it can be necessary to unassign a TCB from a track section.
|
||||
There are multiple ways to do this:
|
||||
<ul class="itemize1">
|
||||
<li class="itemize">In the TCB form, click the “Remove from section” button
|
||||
</li>
|
||||
<li class="itemize">In the track section form, first select the TCB in the list and then click “Unlink selected TCB”</li></ul>
|
||||
<!--l. 189--><p class="noindent" >The result is that the TCB shows “End of Interlocking” and the section does not list the TCB as an endpoint anymore.
|
||||
<!--l. 192--><p class="noindent" >The other case is adding a siding or a crossover, in which case one or more TCBs still show “End of Interlocking” although they should be
|
||||
part of a section:
|
||||
<ul class="itemize1">
|
||||
<li class="itemize">Go to another TCB that is registered in the track section and click “Update near TCBs”
|
||||
</li>
|
||||
<li class="itemize">If that did not work, follow the procedure of creating a long track section</li></ul>
|
||||
<!--l. 202--><p class="noindent" >
|
||||
<a
|
||||
id="x1-29r4"></a>
|
||||
<!--l. 202--><p class="noindent" ><span
|
||||
class="ecsx-1000">2.2.4</span> <span
|
||||
class="ecsx-1000">Dissolving</span>
|
||||
<span
|
||||
class="ecsx-1000">sections</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 204--><p class="noindent" >If you made a mistake setting up something and you don’t see any other way to fix a misconfigured track section, you can always
|
||||
delete it using the “Dissolve section” button. This operation removes the track section and sets all TCBs that previously
|
||||
belonged to the section as “End of Interlocking”. This will always work and lets you start over new with setting up track
|
||||
sections.
|
||||
<!--l. 211--><p class="noindent" >
|
||||
<a
|
||||
id="x1-30r3"></a>
|
||||
<!--l. 211--><p class="noindent" ><span
|
||||
class="ecsx-1200">2.3</span> <span
|
||||
class="ecsx-1200">Interlocking</span>
|
||||
<span
|
||||
class="ecsx-1200">patterns</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 213--><p class="noindent" >Have a look at the following images. They show you how you can set up sections so that reasonable train moves are
|
||||
possible.
|
||||
<!--l. 216--><p class="noindent" >You should settle on a naming scheme for your sections. This way, you can determine the source of an issue faster
|
||||
<!--l. 219--><p class="noindent" >
|
||||
<a
|
||||
id="x1-31r3"></a>
|
||||
<!--l. 219--><p class="noindent" ><span
|
||||
class="ecsx-1200">3</span> <span
|
||||
class="ecsx-1200">Signals</span>
|
||||
<span
|
||||
class="ecsx-1200">and</span>
|
||||
<span
|
||||
class="ecsx-1200">routes</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 221--><p class="noindent" >Signals are appliances that can give instructions to trains. That can be the permission to proceed, a speed restriction, or other
|
||||
information.
|
||||
<!--l. 224--><p class="noindent" >There are 2 types of signals:
|
||||
<ul class="itemize1">
|
||||
<li class="itemize">Static signals always display the same information to the train. This can be a speed restriction (or the end of one), a
|
||||
disallowal to proceed as shunt move or similar things. In most cases, these are signs.
|
||||
</li>
|
||||
<li class="itemize">Dynamic signals are what most people would call a “signal”. Its function is to inform trains about whether and at which
|
||||
speed they can proceed into the next section safely.</li></ul>
|
||||
<!--l. 234--><p class="noindent" >
|
||||
<a
|
||||
id="x1-32r1"></a>
|
||||
<!--l. 234--><p class="noindent" ><span
|
||||
class="ecsx-1200">3.1</span> <span
|
||||
class="ecsx-1200">Signal</span>
|
||||
<span
|
||||
class="ecsx-1200">Influence</span>
|
||||
<span
|
||||
class="ecsx-1200">Point</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 236--><p class="noindent" >Every signal is associated to a track on which the instruction should be followed. Signals are usually placed right next to the track on the
|
||||
right side. Human observers do know then that the signal belongs to the track left of it, however, train safety systems (like the one in
|
||||
advtrains) can not.
|
||||
<!--l. 242--><p class="noindent" >This is the reason why a so-called “influence point” needs to be assigned to any signal that should actually give instructions to trains,
|
||||
should the driver (if even there is one) fail to recognize the instructions.
|
||||
<!--l. 247--><p class="noindent" >Depending on the signal and the mod that adds the signal, there are different ways to configure this. Signals integrated into advtrains
|
||||
behave as follows:
|
||||
<ul class="itemize1">
|
||||
<li class="itemize">Static signals and all red-green light signals from core advtrains that are not assigned to a TCB can be configured by
|
||||
holding the “Use” key and then right-clicking the signal
|
||||
</li>
|
||||
<li class="itemize">All signals that are assigned to a TCB can be configured by first right-clicking them, then selecting “Influence Point” in
|
||||
the signalling formspec.</li></ul>
|
||||
<!--l. 258--><p class="noindent" >The small formspec that opens allows you to set and later view or clear the Influence Point. To set the influence point, click the “Set”
|
||||
button, face towards the signal and punch a rail about 2m in front of the signal. A small marker will be shown, indicating success. To
|
||||
cancel setting an influence point, punch anything other. (note that then the influence point remains unset, regardless of its previous
|
||||
state)
|
||||
<!--l. 266--><p class="noindent" >The advtrains-internal train safety system ensures that the train always obeys any restrictions imposed by signals, if (and only if) the
|
||||
influence point is set properly.
|
||||
<!--l. 270--><p class="noindent" >
|
||||
<a
|
||||
id="x1-33r2"></a>
|
||||
<!--l. 270--><p class="noindent" ><span
|
||||
class="ecsx-1200">3.2</span> <span
|
||||
class="ecsx-1200">Signal</span>
|
||||
<span
|
||||
class="ecsx-1200">Aspects</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 272--><p class="noindent" >While static signals are mainly used for speed restrictions, the interesting ones are variable signals. Of course, you can always control any
|
||||
variable signal by traditional means (mesecons, digiline, right-click) if the signal allows it, but that misses the point of this interlocking
|
||||
system.
|
||||
<!--l. 277--><p class="noindent" >A signal aspect is a piece of information that a signal shows to the train driver. It contains information about whether and at what speed
|
||||
the driver may proceed at the signal.
|
||||
<!--l. 281--><p class="noindent" >Every signal, both static and dynamic ones, imposes a certain aspect to trains passing the signal. For static signals, this is always the
|
||||
same aspect, such as “Proceed at speed of 8” or “Shunt moves may not pass”. Dynamic signals, however, can display multiple different
|
||||
aspects. The default for them is always as restrictive as possible, mostly “Halt!”.
|
||||
<!--l. 288--><p class="noindent" >You should know that both static and dynamic signals use exactly the same properties for signal aspects. There is no difference in the
|
||||
meaning of the aspect definitions.
|
||||
<!--l. 292--><p class="noindent" >In the following sections, we will talk about main signals. By this, we mean a variable signal that can display both a “Danger” aspect
|
||||
(trains are not allowed to proceed) and at least one “Proceed” aspect (train may proceed as train/shunt move, with optional speed
|
||||
restriction), which act as an “entry signal” for one or multiple routes.
|
||||
<!--l. 299--><p class="noindent" >
|
||||
<a
|
||||
id="x1-34r3"></a>
|
||||
<!--l. 299--><p class="noindent" ><span
|
||||
class="ecsx-1200">3.3</span> <span
|
||||
class="ecsx-1200">Train</span>
|
||||
<span
|
||||
class="ecsx-1200">moves</span>
|
||||
<span
|
||||
class="ecsx-1200">and</span>
|
||||
<span
|
||||
class="ecsx-1200">Shunt</span>
|
||||
<span
|
||||
class="ecsx-1200">Moves</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<ul class="itemize1">
|
||||
<li class="itemize">A “Train move” is a train that is running, going to run on or coming from a main line between stations, passing through
|
||||
or stopping at a station. Train moves can expect that there are no obstacles on the route and they can proceed at the
|
||||
maximum permitted speed of the line. This is the regular operation mode for trains. Shunt signals have no meaning for
|
||||
train moves.
|
||||
</li>
|
||||
<li class="itemize">A “Shunt move” is a train that moves within a station and/or is coupling or decoupling wagons or engines. A shunt move
|
||||
may never leave a station except into a siding. Also, shunt moves may drive at a maximum speed of 6 speed units, because
|
||||
it is usually not ensured that the path is free of obstacles. (however, advtrains ensures that every route is free of railway
|
||||
vehicles, even shunt routes)</li></ul>
|
||||
<!--l. 314--><p class="noindent" >There are also 2 general types of signals: Main signals and Shunt signals. While main signals have a meaning for all types of trains, Shunt
|
||||
signals only have to be followed by shunt moves. Usually, Shunt signals that are on a train move route are set to a Proceed aspect as
|
||||
well.
|
||||
<!--l. 320--><p class="noindent" >When a train reverses, its mode automatically changes to “shunt move” until it passes a main signal that shows “Proceed as
|
||||
train move”, which is usually designated by a green light. From this point on, it can accelerate to maximum permitted
|
||||
speed.
|
||||
<!--l. 325--><p class="noindent" >Some main signals, like the ones from the Ks signals mod included by default, can also display “Proceed as shunt move”, which is
|
||||
designated by 2 white lights along with the red light. Once a train passes this signal, it becomes a shunt move.
|
||||
<!--l. 330--><p class="noindent" >
|
||||
<a
|
||||
id="x1-35r4"></a>
|
||||
<!--l. 330--><p class="noindent" ><span
|
||||
class="ecsx-1200">3.4</span> <span
|
||||
class="ecsx-1200">The</span>
|
||||
<span
|
||||
class="ecsx-1200">concept</span>
|
||||
<span
|
||||
class="ecsx-1200">of</span>
|
||||
<span
|
||||
class="ecsx-1200">routes</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 332--><p class="noindent" >A so-called route is a locked path between two main signals, which locks all turnouts in the correct position. Its purpose is to offer a train
|
||||
a path on which it can safely proceed without interfering with any other train. A route always incorporates and locks one to multiple
|
||||
track sections, starting with the one that lies directly behind the “entry” signal.
|
||||
<!--l. 339--><p class="noindent" >Example: Imagine a station with 2 platforms on a single track running line. We are looking at signal A. You probably want trains coming
|
||||
from the right to go into platform 1 or into platform 2, so you need to program 2 routes.
|
||||
<!--l. 344--><p class="noindent" ><img
|
||||
src="6_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_route_ex1.png" alt="PIC"
|
||||
>
|
||||
<!--l. 346--><p class="noindent" >This leads us to the most important aspect of route programming: Routes always start at a signal (A) and end at a signal facing in the
|
||||
<span
|
||||
class="ecbx-1000">same direction </span>(D and E), not at an opposite-facing signal (B and C). There are only few exceptions, we’ll cover this
|
||||
later.
|
||||
<!--l. 351--><p class="noindent" >When you set a route to make a train proceed on it, the interlocking system ensures that:
|
||||
<ul class="itemize1">
|
||||
<li class="itemize">There are no rail vehicles on the route
|
||||
</li>
|
||||
<li class="itemize">All turnouts are set to the correct position and it is impossible to move them
|
||||
</li>
|
||||
<li class="itemize">No other routes can be set that would in any way conflict with this route</li></ul>
|
||||
<!--l. 360--><p class="noindent" >For this to work, you need to specify all track sections the train will pass along, as well as the positions of all turnouts that need to be
|
||||
locked. Those are not only the turnouts that lay directly on the train’s route, but also some turnouts on adjacent tracks, the so-called
|
||||
flank protection.
|
||||
<!--l. 366--><p class="noindent" >The purpose of flank protection is to prevent runaway trains and/or wagons to pass into a route. This is achieved by setting nearby
|
||||
turnouts to a position that points “away” from the route. Example:
|
||||
<!--l. 370--><p class="noindent" ><img
|
||||
src="7_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_route_ex2.png" alt="PIC"
|
||||
>
|
||||
<!--l. 372--><p class="noindent" >The upper turnout, of course, needs to be locked in straight (normal) position, while the lower one is not relevant for the route itself. But
|
||||
what if the lower turnout was set to the diverging (reverse) position and the driver of another train approaching signal B fails to see the
|
||||
red light? This train would crash into the first one. To minimise danger, that other train would need to be routed towards signal
|
||||
D.
|
||||
<!--l. 379--><p class="noindent" >There are, of course, situations, where both positions of a turnout would conflict with a route equally. In those situations, there’s nothing
|
||||
you can do and no flank lock needs to be set.
|
||||
<!--l. 383--><p class="noindent" >
|
||||
<a
|
||||
id="x1-36r5"></a>
|
||||
<!--l. 383--><p class="noindent" ><span
|
||||
class="ecsx-1200">3.5</span> <span
|
||||
class="ecsx-1200">Assigning</span>
|
||||
<span
|
||||
class="ecsx-1200">main</span>
|
||||
<span
|
||||
class="ecsx-1200">signals</span>
|
||||
<span
|
||||
class="ecsx-1200">to</span>
|
||||
<span
|
||||
class="ecsx-1200">TCBs</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 385--><p class="noindent" >Main signals in the advtrains interlocking system are positioned - like in real life - at the border of track sections, because routes also start
|
||||
and end there. For advtrains to know from which signal which routes can be set, you need to assign the signal to a
|
||||
TCB.
|
||||
<!--l. 390--><p class="noindent" >To do this, perform the following steps:
|
||||
<ol class="enumerate1" >
|
||||
<li
|
||||
class="enumerate" id="x1-38x1">If not already happened, set up a TCB (you don’t need to, but are advised to, configure track sections there)
|
||||
</li>
|
||||
<li
|
||||
class="enumerate" id="x1-40x2">Place the signal a few meters in front of the TCB, so that trains stopping at the signal do never pass the TCB
|
||||
</li>
|
||||
<li
|
||||
class="enumerate" id="x1-42x3">Locate the side of the TCB which points in the direction that trains will proceed past the signal, as shown in the figure
|
||||
below.
|
||||
</li>
|
||||
<li
|
||||
class="enumerate" id="x1-44x4">Right-click the TCB, and click “Assign a signal” on this side.
|
||||
</li>
|
||||
<li
|
||||
class="enumerate" id="x1-46x5">Punch the signal.</li></ol>
|
||||
<!--l. 401--><p class="noindent" ><img
|
||||
src="8_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_assign_signal.png" alt="PIC"
|
||||
>
|
||||
<!--l. 403--><p class="noindent" >If you haven’t set an influence point for the signal yet, the influence point formspec automatically opens.
|
||||
<!--l. 406--><p class="noindent" >You can assign a signal to each side of a TCB. This is, for example, useful when creating block sections on a bi-directional main running
|
||||
line.
|
||||
<!--l. 410--><p class="noindent" >Only main signals can ever be assigned to TCBs, because static ones can either not display “Danger” or do not permit to proceed at
|
||||
all.
|
||||
<!--l. 414--><p class="noindent" >
|
||||
<a
|
||||
id="x1-47r6"></a>
|
||||
<!--l. 414--><p class="noindent" ><span
|
||||
class="ecsx-1200">3.6</span> <span
|
||||
class="ecsx-1200">Shunt</span>
|
||||
<span
|
||||
class="ecsx-1200">routes</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 417--><p class="noindent" ><span
|
||||
class="ecbx-1000">The information in this section is subject to future change because of safety issues!</span>
|
||||
<!--l. 419--><p class="noindent" >Operating railways is not all about driving trains around. Coupling, decoupling and moving single engines, wagons or groups of wagons
|
||||
across a station, called shunting, also plays an important role.
|
||||
<!--l. 423--><p class="noindent" >Remember what we said about routes: There must be no rail vehicles on the route. So what if you have some goods wagons
|
||||
ready on a siding, and want to couple an engine to it? You can not set a regular route into the siding, because it is
|
||||
occupied.
|
||||
<!--l. 428--><p class="noindent" >The solution is to program a second route into the siding, but with the difference that it already ends at the rear-facing signal of it, so it
|
||||
doesn’t include the siding section itself:
|
||||
<!--l. 432--><p class="noindent" ><img
|
||||
src="9_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_route_ex3.png" alt="PIC"
|
||||
>
|
||||
<!--l. 434--><p class="noindent" >The Sht2 route then needs to show a shunt aspect, which instructs the driver to proceed slowly and watch out for vehicles on the route.
|
||||
See later on for how to set this up.
|
||||
<!--l. 438--><p class="noindent" >Shunt routes like this are, so far, the only exception to the “Routes should end at a signal facing the same direction”
|
||||
rule.
|
||||
<!--l. 441--><p class="noindent" >
|
||||
<a
|
||||
id="x1-48r7"></a>
|
||||
<!--l. 441--><p class="noindent" ><span
|
||||
class="ecsx-1200">3.7</span> <span
|
||||
class="ecsx-1200">Route</span>
|
||||
<span
|
||||
class="ecsx-1200">Release</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 443--><p class="noindent" >In early real-life interlocking systems, routes either had to be cancelled by the signalman after the train had passed the route, or there was
|
||||
a single release contact at the end of the route. However, as interlocking systems evolved and the position of trains is now
|
||||
roughly known by the track sections, portions of the route can be freed as soon as the train has left the corresponding
|
||||
section.
|
||||
<!--l. 450--><p class="noindent" >AdvTrains has chosen a modern approach to route releasing. Each turnout lock is associated to a track section belonging to the route’s
|
||||
path. Once the train leaves this section, all assigned locks are also freed.
|
||||
<!--l. 454--><p class="noindent" >Please note that reversing a train outside of stations is not only discouraged, but also very dangerous, because even
|
||||
real-world interlocking system do not expect this. There is a clear, human-sense rule that you should never reverse the
|
||||
driving direction of a train while on a main line or on a turnout. Else, you can be considered a terrorist. (quote from
|
||||
professional!)
|
||||
<!--l. 461--><p class="noindent" >
|
||||
<a
|
||||
id="x1-49r8"></a>
|
||||
<!--l. 461--><p class="noindent" ><span
|
||||
class="ecsx-1200">3.8</span> <span
|
||||
class="ecsx-1200">Programming</span>
|
||||
<span
|
||||
class="ecsx-1200">a</span>
|
||||
<span
|
||||
class="ecsx-1200">route</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 463--><p class="noindent" >The route programming procedure is quite straightforward if you’ve read the previous sections and understood how routes should be
|
||||
set.
|
||||
<!--l. 466--><p class="noindent" >Routes always start at a main signal. You must have assigned the signal to a TCB, as described earlier.
|
||||
<!--l. 469--><p class="noindent" >When you right-click the main signal, it no longer changes its aspect. Instead, a formspec pops up, showing you an (empty) list of routes
|
||||
with the possibility to set them or to create new routes. Click the “Create new route” button to start programming a new
|
||||
route.
|
||||
<!--l. 474--><p class="noindent" >The form closes, and an arrow is displayed on the TCB. You are now in “Route Programming” mode, programming the first track section
|
||||
of the route. Now:
|
||||
<ul class="itemize1">
|
||||
<li class="itemize">Put any turnouts you need to lock in the correct position (e.g. by right-clicking them). This includes flank protection.
|
||||
</li>
|
||||
<li class="itemize">Punch them. This makes a marker with a blue lock symbol appear.
|
||||
</li>
|
||||
<li class="itemize">If you punch a turnout again, or punch the marker, you can remove the lock again.
|
||||
</li>
|
||||
<li class="itemize">When you’ve locked all turnouts in the current section, go to and punch the TCB that is the border to the next track
|
||||
section the train proceeds into.</li></ul>
|
||||
<!--l. 487--><p class="noindent" >Depending on the situation, you are now offered some possibilities to proceed:
|
||||
<ul class="itemize1">
|
||||
<li class="itemize">Click the “Advance to next section” button if your route consists of more sections with turnouts to lock, and you need to
|
||||
continue programming. Follow the above steps to set locks for the next section.</li></ul>
|
||||
<!--l. 494--><p class="noindent" >Once you’ve clicked the “Advance” button, the lock markers change to a red lock symbol, telling they can’t be changed anymore. Repeat
|
||||
the above procedure until you are ready to complete the programming procedure:
|
||||
<ul class="itemize1">
|
||||
<li class="itemize">Click the “Finish route HERE” button when you’ve set up the locks for the last track section of the route and punched the
|
||||
final TCB (the one with the next signal). You will be asked for a route name and your route will be saved.
|
||||
</li>
|
||||
<li class="itemize">The “Finish route at end of NEXT section” button (third button) is an useful quickhand to make the route proceed one
|
||||
more section. Using this button is equivalent to first clicking the “Advance” button, then flying to the end of the next track
|
||||
section and finishing the route there. You can not (officially) set turnout locks in the final section using this method.</li></ul>
|
||||
<!--l. 510--><p class="noindent" >A few hints:
|
||||
<ul class="itemize1">
|
||||
<li class="itemize">If you accidentally advanced the route wrongly, you can use the “Step back one section” button to undo this.
|
||||
</li>
|
||||
<li class="itemize">If you want to stop programming the entire route without saving it, use the “Cancel route programming” button.
|
||||
</li>
|
||||
<li class="itemize">The third button is especially useful for programming simple block sections on a main running line, since you can stay at
|
||||
the starting signal (punch starting TCB and select third button).
|
||||
</li>
|
||||
<li class="itemize">If a route should end in a dead end, you MUST use the “Finish in NEXT section” button, because there is no final TCB
|
||||
that you could punch.
|
||||
</li>
|
||||
<li class="itemize">The third button does NOT work on sections with more than 2 exits, because the system won’t be able to determine the
|
||||
final TCB of the route then.</li></ul>
|
||||
<!--l. 527--><p class="noindent" >
|
||||
<a
|
||||
id="x1-50r9"></a>
|
||||
<!--l. 527--><p class="noindent" ><span
|
||||
class="ecsx-1200">3.9</span> <span
|
||||
class="ecsx-1200">Route</span>
|
||||
<span
|
||||
class="ecsx-1200">information</span>
|
||||
<span
|
||||
class="ecsx-1200">screen</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 529--><p class="noindent" ><img
|
||||
src="10_home_moritz_Home_Projekte_Minetest_minetest_____lyx_img_Bildschirmfoto_2019-01-15_19-28-09.png" alt="PIC"
|
||||
>
|
||||
<!--l. 531--><p class="noindent" >This is the screen that appears when you click “Edit Route”. It lets you change the route name and delete the route. Also, it shows a
|
||||
summary of the route and its elements.
|
||||
<!--l. 535--><p class="noindent" >The route summary lists information per track section on the route, so the line starting with “1” is the first section of the
|
||||
route.
|
||||
<!--l. 538--><p class="noindent" >The ARS rule list and its purpose is explained later.
|
||||
<!--l. 540--><p class="noindent" >
|
||||
<a
|
||||
id="x1-51r10"></a>
|
||||
<!--l. 540--><p class="noindent" ><span
|
||||
class="ecsx-1200">3.10</span> <span
|
||||
class="ecsx-1200">Specifying</span>
|
||||
<span
|
||||
class="ecsx-1200">signal</span>
|
||||
<span
|
||||
class="ecsx-1200">aspects</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 542--><p class="noindent" >By default, newly programmed routes show an aspect that comes closest to “Proceed at maximum speed”. However, it can be desirable to
|
||||
change this behavior, like when the route passes a diverging turnout, the train should be signalled to drive slower, or the route is a shunt
|
||||
route and therefore only “Shunting allowed” should be shown.
|
||||
<!--l. 548--><p class="noindent" >This is the purpose of the “Change Aspect” button in the route info screen.
|
||||
<!--l. 551--><p class="noindent" >Signal aspects in advtrains consist of 4 sections: main (Information for train moves), dst (Distant signal information, not implemented
|
||||
yet), shunt (Information for shunt moves) and info (additional information, currently not in use).
|
||||
<ul class="itemize1">
|
||||
<li class="itemize">Train may proceed as train move at maximum speed: “main: free, speed -1”
|
||||
</li>
|
||||
<li class="itemize">Train may proceed as train move at speed of 8: “main: free, speed 8”
|
||||
</li>
|
||||
<li class="itemize">Train may proceed as shunt move: “shunt: free”</li></ul>
|
||||
<!--l. 562--><p class="noindent" >There’s a field in the “shunt” part of signal aspects that is not displayed in the GUI, but is of potential interest to developers of signal
|
||||
addons: shunt.proceed_as_main.
|
||||
<ul class="itemize1">
|
||||
<li class="itemize">A train move can always become a shunt move by passing a signal that shows “Halt for train moves, shunting permitted”
|
||||
</li>
|
||||
<li class="itemize">A shunt move can only pass a signal saying “Proceed as train move, shunting not permitted” when proceed_as_main is
|
||||
true.</li></ul>
|
||||
<!--l. 571--><p class="noindent" >The property is used by the Limit Of Shunt sign, where proceed_as_main is set to false. Shunt moves have to stop in front of it, while
|
||||
train moves are signalled “Proceed”. Regular main signals that show “green” have the field set to true, so that all trains can pass
|
||||
it.
|
||||
<!--l. 577--><p class="noindent" >
|
||||
<a
|
||||
id="x1-52r4"></a>
|
||||
<!--l. 577--><p class="noindent" ><span
|
||||
class="ecsx-1200">4</span> <span
|
||||
class="ecsx-1200">Interlocking</span>
|
||||
<span
|
||||
class="ecsx-1200">system</span>
|
||||
<span
|
||||
class="ecsx-1200">operation</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 579--><p class="noindent" >Setting up the interlocking for a portion of a railway network requires some time, experience and planning, but once done, there’s not
|
||||
much to do anymore to make trains run on your, now safer, railway. This section covers some useful practices to route trains across your
|
||||
network.
|
||||
<!--l. 584--><p class="noindent" >At the moment, routes can either be set by clicking the signal or via LuaATC, or by using the “Remote Routesetting”
|
||||
button from the Onboard Computer. It is planned to control this via a “signal box” view based on the currently broken
|
||||
itrainmap.
|
||||
<!--l. 589--><p class="noindent" >
|
||||
<a
|
||||
id="x1-53r1"></a>
|
||||
<!--l. 589--><p class="noindent" ><span
|
||||
class="ecsx-1200">4.1</span> <span
|
||||
class="ecsx-1200">Train</span>
|
||||
<span
|
||||
class="ecsx-1200">Safety</span>
|
||||
<span
|
||||
class="ecsx-1200">System</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 591--><p class="noindent" >The Train Safety System, called “LZB” in the code (from the german term Linienzugbeeinflussung, although this is a completely different
|
||||
system), ensures that trains obey any restrictions imposed by signals when influence points are set. This way, it is not possible to pass
|
||||
signals at danger or to bypass speed restrictions.
|
||||
<!--l. 597--><p class="noindent" >It is possible to overrun red signals, if a route is cancelled while a train is approaching. Real interlocking systems use a mechanism called
|
||||
Approach locking for this, however, as of now, there’s no similar system in this mod. If a red signal is overrun, the train brakes using
|
||||
emergency brake (“BB”) and can not be moved any further. You should then examine the situation and drive the train backwards out of
|
||||
the section.
|
||||
<!--l. 605--><p class="noindent" >
|
||||
<a
|
||||
id="x1-54r2"></a>
|
||||
<!--l. 605--><p class="noindent" ><span
|
||||
class="ecsx-1200">4.2</span> <span
|
||||
class="ecsx-1200">Simple</span>
|
||||
<span
|
||||
class="ecsx-1200">route</span>
|
||||
<span
|
||||
class="ecsx-1200">setting</span>
|
||||
<span
|
||||
class="ecsx-1200">and</span>
|
||||
<span
|
||||
class="ecsx-1200">cancelling</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 607--><p class="noindent" >To set a route, simply right-click the signal, select a route and click “set route”. If there are no conflicts, the signal turns green and the
|
||||
train is allowed to proceed.
|
||||
<!--l. 611--><p class="noindent" >It may be possible that the route can not be set, because one or more other routes conflict with the current one, or a section is blocked. In
|
||||
this case, the signal stays red, and the conflicting item is shown in the formspec. As soon as the conflict is resolved (by cancellation
|
||||
or release of the conflicting route, or the section becoming free), the requested route will be set and the signal turns
|
||||
green.
|
||||
<!--l. 618--><p class="noindent" >If a route is either requested or set, it can be cancelled from the signalling formspec. This means that all turnouts and sections are
|
||||
released, and the signal reverts back to red. This of course only works when the train has not passed the signal yet. There is no
|
||||
mechanism for Approach Locking.
|
||||
<!--l. 624--><p class="noindent" >
|
||||
<a
|
||||
id="x1-55r3"></a>
|
||||
<!--l. 624--><p class="noindent" ><span
|
||||
class="ecsx-1200">4.3</span> <span
|
||||
class="ecsx-1200">Automatic</span>
|
||||
<span
|
||||
class="ecsx-1200">Working</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 626--><p class="noindent" >Block signals on main running lines usually only have a single route to set, the one proceeding along the main line. Their purpose is only
|
||||
to show whether there are trains in the next section. So, it would be convenient if this only route would set itself again after a train
|
||||
passed.
|
||||
<!--l. 632--><p class="noindent" >This is what Automatic Working is for. Set a route, click “Enable Automatic Working”, and as soon as a train passes, the route is
|
||||
automatically re-set.
|
||||
<!--l. 636--><p class="noindent" >This function is nearly identical to SimSig automatic signals. It can also be useful on a line with high traffic, when there’s a
|
||||
low-frequented access to a siding. You’d enable automatic working for the main route and cancel it only when you need a train to go into
|
||||
the siding.
|
||||
<!--l. 641--><p class="noindent" >
|
||||
<a
|
||||
id="x1-56r4"></a>
|
||||
<!--l. 641--><p class="noindent" ><span
|
||||
class="ecsx-1200">4.4</span> <span
|
||||
class="ecsx-1200">Automatic</span>
|
||||
<span
|
||||
class="ecsx-1200">Route</span>
|
||||
<span
|
||||
class="ecsx-1200">Setting</span>
|
||||
<span
|
||||
class="ecsx-1200">(ARS)</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 643--><p class="noindent" >As interlocking systems evolved, the goal always was to offload work from the human to the system, automating things. Modern
|
||||
interlocking systems can automatically set routes based on a pre-programmed routing table for each particular train. Since one
|
||||
outstanding feature of Advtrains is it’s high degree of automation, it has a similar system to automatically set routes for a train
|
||||
depending on certain parameters.
|
||||
<!--l. 650--><p class="noindent" >Every train in Advtrains has 2 internal properties that can be set through the Onboard Computer of every engine in the train, the “Line”
|
||||
and the “Routing Code”
|
||||
<ul class="itemize1">
|
||||
<li class="itemize">The “Line” property is supposed to distinguish trains of multiple lines that share a track.
|
||||
</li>
|
||||
<li class="itemize">The “Routing Code” property is supposed to tell the target of a train or which route it should take to reach the target</li></ul>
|
||||
<!--l. 659--><p class="noindent" >Examples:
|
||||
<!--l. 661--><p class="noindent" ><img
|
||||
src="11_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_arslin_ex1.png" alt="PIC"
|
||||
>
|
||||
<!--l. 663--><p class="noindent" >Both lines share the section between Blackbirdshire and Parktown. To divert them again, they can save their line number in the “Line”
|
||||
field.
|
||||
<!--l. 667--><p class="noindent" ><img
|
||||
src="12_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_arslin_ex2.png" alt="PIC"
|
||||
>
|
||||
<!--l. 669--><p class="noindent" >Some trains should go to B, some to C, the direction can be set with a routing code.
|
||||
<!--l. 672--><p class="noindent" >One single routing code should not contain spaces. You can set multiple routing codes by just separating them with spaces in the
|
||||
Routing Code field. So, “Stn Ori” would be matched by ARS rules either containing “Stn” or “Ori”. This does not work for
|
||||
lines.
|
||||
<!--l. 677--><p class="noindent" >
|
||||
<a
|
||||
id="x1-57r1"></a>
|
||||
<!--l. 677--><p class="noindent" ><span
|
||||
class="ecsx-1000">4.4.1</span> <span
|
||||
class="ecsx-1000">Writing</span>
|
||||
<span
|
||||
class="ecsx-1000">ARS</span>
|
||||
<span
|
||||
class="ecsx-1000">Rules</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 679--><p class="noindent" >Every route of every signal can be given a set of ARS rules. A single ARS rule can either match a line or a routing code (combinations,
|
||||
e.g. and’s, are not yet supported). The first rule in the first route that matches any of the properties of the train is selected, and that
|
||||
route is set for the train.
|
||||
<!--l. 685--><p class="noindent" ><img
|
||||
src="13_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_ars_ex1.png" alt="PIC"
|
||||
>
|
||||
<!--l. 687--><p class="noindent" >You can add an asterisk (“*”) to the ARS rules of one route. That route then becomes the default route.
|
||||
<!--l. 690--><p class="noindent" >If no explicit ARS rule matches the train, then the default route is chosen and set. If there is no default route, nothing happens and the
|
||||
signal remains red.
|
||||
<!--l. 694--><p class="noindent" >
|
||||
<a
|
||||
id="x1-58r2"></a>
|
||||
<!--l. 694--><p class="noindent" ><span
|
||||
class="ecsx-1000">4.4.2</span> <span
|
||||
class="ecsx-1000">Using</span>
|
||||
<span
|
||||
class="ecsx-1000">ARS</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 696--><p class="noindent" >In contrast to Automatic working, where the route is re-set immediately after the train passed, ARS sets the route only when the train
|
||||
approaches the signal, e.g. is just about to start braking in front of it.
|
||||
<!--l. 700--><p class="noindent" >At any place where one of the following things take place, you should use the ARS system in favor of Automatic Working:
|
||||
<ul class="itemize1">
|
||||
<li class="itemize">A main line diverts into 2 or more lines: Using ARS, you can direct the trains along the line where they should go
|
||||
</li>
|
||||
<li class="itemize">Two or more main lines join into one: You cannot use automatic working here, because all routes are tried to be set at the
|
||||
same time and it is a matter of luck which one “wins”. In a bad situation, you have a train coming from A, but it cannot
|
||||
proceed because Signal B has won the “route race” into the shared section, even if there’s no train coming from B. Using
|
||||
ARS, by just specifying the “default route” by a *, the inward route is only set when a train approaches.
|
||||
</li>
|
||||
<li class="itemize">Complex intersections, which are probably a combination of the above two
|
||||
</li>
|
||||
<li class="itemize">sometimes-used branching tracks on which only certain trains (with certain routing code or line) should head off, like the
|
||||
entrance to a factory where only one specific goods train should drive in.</li></ul>
|
||||
<!--l. 718--><p class="noindent" >In the route overview, you can see some information on the ARS settings: All routes that have ARS rules are highlighted red, the “default
|
||||
route” is highlighted green.
|
||||
<!--l. 722--><p class="noindent" >ARS does not affect signals which already have a route set, and signals which are operating under “Automatic Working”.
|
||||
<!--l. 725--><p class="noindent" >
|
||||
<a
|
||||
id="x1-59r5"></a>
|
||||
<!--l. 725--><p class="noindent" ><span
|
||||
class="ecsx-1200">5</span> <span
|
||||
class="ecsx-1200">Final</span>
|
||||
<span
|
||||
class="ecsx-1200">notes</span>
|
||||
<a
|
||||
id="Q1-1-0"></a>
|
||||
<!--l. 727--><p class="noindent" >The interlocking system is mainly finished, though there are still some plans and ideas. They include:
|
||||
<ul class="itemize1">
|
||||
<li class="itemize">Signalbox panels, as revival of itrainmap
|
||||
</li>
|
||||
<li class="itemize">Distant signals
|
||||
</li>
|
||||
<li class="itemize">On-Train head-up display for oncoming signals (they have something like this in Czech Republic, I forgot how it’s called.)</li></ul>
|
||||
<!--l. 735--><p class="noindent" >Apart from this, there’s the large oncoming project of a new timetable-based train automation system, but this will take some time to
|
||||
evolve and is out of the scope of this document.
|
||||
<!--l. 739--><p class="noindent" >If you have any suggestions, corrections, improvements, criticism or cute kittens and stuff, you can always contact me by various means
|
||||
(Forum PM, E-Mail (orwell@bleipb.de), Linuxworks server chat a.s.o.). Have fun!
|
||||
<!--l. 744--><p class="noindent" >- orwell
|
||||
</body></html>
|
||||
|
||||
|
||||
|
@ -1,166 +0,0 @@
|
||||
htfcss: ecbx font-weight: bold;
|
||||
htfcss: ecsx font-weight: bold;
|
||||
htfcss: ecbi font-weight: bold; font-style: italic;
|
||||
htfcss: ecit font-style: italic; font-family: monospace;
|
||||
htfcss: ecss font-family: sans-serif;
|
||||
htfcss: ecff font-family: fantasy;
|
||||
htfcss: ecti font-style: italic;
|
||||
htfcss: ectt font-family: monospace;
|
||||
htfcss: ecbx font-weight: bold;
|
||||
htfcss: ecsx font-weight: bold;
|
||||
htfcss: ecbi font-weight: bold; font-style: italic;
|
||||
htfcss: ecit font-style: italic; font-family: monospace;
|
||||
htfcss: ecss font-family: sans-serif;
|
||||
htfcss: ecff font-family: fantasy;
|
||||
htfcss: ecti font-style: italic;
|
||||
htfcss: ectt font-family: monospace;
|
||||
htfcss: ecbx font-weight: bold;
|
||||
htfcss: ecsx font-weight: bold;
|
||||
htfcss: ecbi font-weight: bold; font-style: italic;
|
||||
htfcss: ecit font-style: italic; font-family: monospace;
|
||||
htfcss: ecss font-family: sans-serif;
|
||||
htfcss: ecff font-family: fantasy;
|
||||
htfcss: ecti font-style: italic;
|
||||
htfcss: ectt font-family: monospace;
|
||||
htfcss: ecbx font-weight: bold;
|
||||
htfcss: ecsx font-weight: bold;
|
||||
htfcss: ecbi font-weight: bold; font-style: italic;
|
||||
htfcss: ecit font-style: italic; font-family: monospace;
|
||||
htfcss: ecss font-family: sans-serif;
|
||||
htfcss: ecff font-family: fantasy;
|
||||
htfcss: ecti font-style: italic;
|
||||
htfcss: ectt font-family: monospace;
|
||||
htfcss: ecbx font-weight: bold;
|
||||
htfcss: ecsx font-weight: bold;
|
||||
htfcss: ecbi font-weight: bold; font-style: italic;
|
||||
htfcss: ecit font-style: italic; font-family: monospace;
|
||||
htfcss: ecss font-family: sans-serif;
|
||||
htfcss: ecff font-family: fantasy;
|
||||
htfcss: ecti font-style: italic;
|
||||
htfcss: ectt font-family: monospace;
|
||||
htfcss: ecbx font-weight: bold;
|
||||
htfcss: ecsx font-weight: bold;
|
||||
htfcss: ecbi font-weight: bold; font-style: italic;
|
||||
htfcss: ecit font-style: italic; font-family: monospace;
|
||||
htfcss: ecss font-family: sans-serif;
|
||||
htfcss: ecff font-family: fantasy;
|
||||
htfcss: ecti font-style: italic;
|
||||
htfcss: ectt font-family: monospace;
|
||||
File: interlocking.html
|
||||
File: interlocking.css
|
||||
File: interlocking.tmp
|
||||
Css: p.noindent { text-indent: 0em }
|
||||
Css: td p.noindent { text-indent: 0em; margin-top:0em; }
|
||||
Css: p.nopar { text-indent: 0em; }
|
||||
Css: p.indent{ text-indent: 1.5em }
|
||||
Css: @media print {div.crosslinks {visibility:hidden;}}
|
||||
Css: a img { border-top: 0; border-left: 0; border-right: 0; }
|
||||
Font_Css("4"): .small-caps{font-variant: small-caps; }
|
||||
Font_Css("10"): .htf-cmbx {font-weight: bold; font-style:normal;}
|
||||
Font_Css("12"): .htf-calligraphy {font-family:cursive}
|
||||
Font_Css("14"): .htf-italic {font-style: italic;}
|
||||
Font_Css("16"): .htf-bold {font-weight: bold;}
|
||||
Font_Css("12"): .htf-calligraphy-bold {font-family:cursive ; font-weight: bold; }
|
||||
Css: center { margin-top:1em; margin-bottom:1em; }
|
||||
Css: td center { margin-top:0em; margin-bottom:0em; }
|
||||
Css: .Canvas { position:relative; }
|
||||
Css: img.math{vertical-align:middle;}
|
||||
Css: li p.indent { text-indent: 0em }
|
||||
Css: li p:first-child{ margin-top:0em; }
|
||||
Css: li p:last-child, li div:last-child { margin-bottom:0.5em; }
|
||||
Css: li p~ul:last-child, li p~ol:last-child{ margin-bottom:0.5em; }
|
||||
Css: .enumerate1 {list-style-type:decimal;}
|
||||
Css: .enumerate2 {list-style-type:lower-alpha;}
|
||||
Css: .enumerate3 {list-style-type:lower-roman;}
|
||||
Css: .enumerate4 {list-style-type:upper-alpha;}
|
||||
Css: div.newtheorem { margin-bottom: 2em; margin-top: 2em;}
|
||||
Css: .obeylines-h,.obeylines-v {white-space: nowrap; }
|
||||
Css: div.obeylines-v p { margin-top:0; margin-bottom:0; }
|
||||
Css: .overline{ text-decoration:overline; }
|
||||
Css: .overline img{ border-top: 1px solid black; }
|
||||
Css: td.displaylines {text-align:center; white-space:nowrap;}
|
||||
Css: .centerline {text-align:center;}
|
||||
Css: .rightline {text-align:right;}
|
||||
Css: div.verbatim {font-family: monospace; white-space: nowrap; text-align:left; clear:both; }
|
||||
Css: .fbox {padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; }
|
||||
Css: div.fbox {display:table}
|
||||
Css: div.center div.fbox {text-align:center; clear:both; padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; }
|
||||
Css: div.minipage{width:100%;}
|
||||
Css: div.center, div.center div.center {text-align: center; margin-left:1em; margin-right:1em;}
|
||||
Css: div.center div {text-align: left;}
|
||||
Css: div.flushright, div.flushright div.flushright {text-align: right;}
|
||||
Css: div.flushright div {text-align: left;}
|
||||
Css: div.flushleft {text-align: left;}
|
||||
Css: .underline{ text-decoration:underline; }
|
||||
Css: .underline img{ border-bottom: 1px solid black; margin-bottom:1pt; }
|
||||
Css: .framebox-c, .framebox-l, .framebox-r { padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; }
|
||||
Css: .framebox-c {text-align:center;}
|
||||
Css: .framebox-l {text-align:left;}
|
||||
Css: .framebox-r {text-align:right;}
|
||||
Css: span.thank-mark{ vertical-align: super }
|
||||
Css: span.footnote-mark sup.textsuperscript, span.footnote-mark a sup.textsuperscript{ font-size:80%; }
|
||||
Css: div.tabular, div.center div.tabular {text-align: center; margin-top:0.5em; margin-bottom:0.5em; }
|
||||
Css: table.tabular td p{margin-top:0em;}
|
||||
Css: table.tabular {margin-left: auto; margin-right: auto;}
|
||||
Css: td p:first-child{ margin-top:0em; }
|
||||
Css: td p:last-child{ margin-bottom:0em; }
|
||||
Css: div.td00{ margin-left:0pt; margin-right:0pt; }
|
||||
Css: div.td01{ margin-left:0pt; margin-right:5pt; }
|
||||
Css: div.td10{ margin-left:5pt; margin-right:0pt; }
|
||||
Css: div.td11{ margin-left:5pt; margin-right:5pt; }
|
||||
Css: table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; }
|
||||
Css: td.td00{ padding-left:0pt; padding-right:0pt; }
|
||||
Css: td.td01{ padding-left:0pt; padding-right:5pt; }
|
||||
Css: td.td10{ padding-left:5pt; padding-right:0pt; }
|
||||
Css: td.td11{ padding-left:5pt; padding-right:5pt; }
|
||||
Css: table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; }
|
||||
Css: .hline hr, .cline hr{ height : 1px; margin:0px; }
|
||||
Css: .tabbing-right {text-align:right;}
|
||||
Css: span.TEX {letter-spacing: -0.125em; }
|
||||
Css: span.TEX span.E{ position:relative;top:0.5ex;left:-0.0417em;}
|
||||
Css: a span.TEX span.E {text-decoration: none; }
|
||||
Css: span.LATEX span.A{ position:relative; top:-0.5ex; left:-0.4em; font-size:85%;}
|
||||
Css: span.LATEX span.TEX{ position:relative; left: -0.4em; }
|
||||
Css: div.float, div.figure {margin-left: auto; margin-right: auto;}
|
||||
Css: div.float img {text-align:center;}
|
||||
Css: div.figure img {text-align:center;}
|
||||
Css: .marginpar {width:20%; float:right; text-align:left; margin-left:auto; margin-top:0.5em; font-size:85%; text-decoration:underline;}
|
||||
Css: .marginpar p{margin-top:0.4em; margin-bottom:0.4em;}
|
||||
Css: table.equation {width:100%;}
|
||||
Css: .equation td{text-align:center; }
|
||||
Css: td.equation { margin-top:1em; margin-bottom:1em; }
|
||||
Css: td.equation-label { width:5%; text-align:center; }
|
||||
Css: td.eqnarray4 { width:5%; white-space: normal; }
|
||||
Css: td.eqnarray2 { width:5%; }
|
||||
Css: table.eqnarray-star, table.eqnarray {width:100%;}
|
||||
Css: div.eqnarray{text-align:center;}
|
||||
Css: div.array {text-align:center;}
|
||||
Css: div.pmatrix {text-align:center;}
|
||||
Css: table.pmatrix {width:100%;}
|
||||
Css: span.pmatrix img{vertical-align:middle;}
|
||||
Css: div.pmatrix {text-align:center;}
|
||||
Css: table.pmatrix {width:100%;}
|
||||
Css: span.bar-css {text-decoration:overline;}
|
||||
Css: img.cdots{vertical-align:middle;}
|
||||
Css: .figure img.graphics {margin-left:10%;}
|
||||
File: 0_home_moritz_Home_Projekte_Minetest_minetest_m___s_assets_lyx_img_screenshot_20180830_142551.png
|
||||
File: 1_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-26-35.png
|
||||
File: 2_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-32-48.png
|
||||
File: 3_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-27-25.png
|
||||
File: 4_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-28-32.png
|
||||
File: 5_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-51-25.png
|
||||
File: 6_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_route_ex1.png
|
||||
File: 7_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_route_ex2.png
|
||||
File: 8_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_assign_signal.png
|
||||
File: 9_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_route_ex3.png
|
||||
File: 10_home_moritz_Home_Projekte_Minetest_minetest_____lyx_img_Bildschirmfoto_2019-01-15_19-28-09.png
|
||||
File: 11_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_arslin_ex1.png
|
||||
File: 12_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_arslin_ex2.png
|
||||
File: 13_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_ars_ex1.png
|
||||
--- characters ---
|
||||
Font("ecrm","1000","10","100")
|
||||
Font("ecsx","1728","17","100")
|
||||
Font("ecst","1440","14","100")
|
||||
Font("ecsx","1200","12","100")
|
||||
Font("ecsx","1000","10","100")
|
||||
Font("ecbx","1000","10","100")
|
@ -1,555 +0,0 @@
|
||||
This is pdfTeX, Version 3.14159265-2.6-1.40.18 (TeX Live 2017/Debian) (preloaded format=latex 2018.10.18) 15 JAN 2019 21:06
|
||||
entering extended mode
|
||||
restricted \write18 enabled.
|
||||
%&-line parsing enabled.
|
||||
**\makeatletter\def\HCode{\futurelet\HCode\HChar}\def\HChar{\ifx"\HCode\def\HCo
|
||||
de"##1"{\Link##1}\expandafter\HCode\else\expandafter\Link\fi}\def\Link#1.a.b.c.
|
||||
{\g@addto@macro\@documentclasshook{\RequirePackage[#1,html]{tex4ht}}\let\HCode\
|
||||
documentstyle\def\documentstyle{\let\documentstyle\HCode\expandafter\def\csname
|
||||
tex4ht\endcsname{#1,html}\def\HCode####1{\documentstyle[tex4ht,}\@ifnextchar[{
|
||||
\HCode}{\documentstyle[tex4ht]}}}\makeatother\HCode .a.b.c.\input interlocking
|
||||
.tex
|
||||
(./interlocking.tex
|
||||
(/usr/share/texlive/texmf-dist/tex/latex/paper/paper.cls
|
||||
Document Class: paper 2008/05/30 1.0l LaTeX document class (wm).
|
||||
\hours=\count79
|
||||
\minutes=\count80
|
||||
(/usr/share/texlive/texmf-dist/tex/latex/base/size10.clo
|
||||
File: size10.clo 2014/09/29 v1.4h Standard LaTeX file (size option)
|
||||
)
|
||||
\beforetitlespace=\skip41
|
||||
\c@part=\count81
|
||||
\c@section=\count82
|
||||
\c@subsection=\count83
|
||||
\c@subsubsection=\count84
|
||||
\c@paragraph=\count85
|
||||
\c@subparagraph=\count86
|
||||
\exampleindent=\skip42
|
||||
\c@figure=\count87
|
||||
\c@table=\count88
|
||||
\abovecaptionskip=\skip43
|
||||
\belowcaptionskip=\skip44
|
||||
\bibindent=\dimen102
|
||||
) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/tex4ht.sty
|
||||
version 2018-02-11-15:01
|
||||
Package: tex4ht
|
||||
--------------------------------------
|
||||
--- Note --- for _ at preamble, use the command line option `early_'
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for ^ at preamble, use the command line option `early^'
|
||||
--------------------------------------
|
||||
\tmp:toks=\toks14
|
||||
) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/usepackage.4ht) (/usr/share
|
||||
/texlive/texmf-dist/tex/latex/base/fontenc.sty
|
||||
Package: fontenc 2017/04/05 v2.0i Standard LaTeX package
|
||||
(/usr/share/texlive/texmf-dist/tex/latex/base/t1enc.def
|
||||
File: t1enc.def 2017/04/05 v2.0i Standard LaTeX file
|
||||
LaTeX Font Info: Redeclaring font encoding T1 on input line 48.
|
||||
)) (/usr/share/texlive/texmf-dist/tex/latex/base/inputenc.sty
|
||||
Package: inputenc 2015/03/17 v1.2c Input encoding file
|
||||
\inpenc@prehook=\toks15
|
||||
\inpenc@posthook=\toks16
|
||||
(/usr/share/texlive/texmf-dist/tex/latex/base/latin9.def
|
||||
File: latin9.def 2015/03/17 v1.2c Input encoding file
|
||||
)) (/usr/share/texlive/texmf-dist/tex/latex/geometry/geometry.sty
|
||||
Package: geometry 2010/09/12 v5.6 Page Geometry
|
||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty
|
||||
Package: keyval 2014/10/28 v1.15 key=value parser (DPC)
|
||||
\KV@toks@=\toks17
|
||||
) (/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifpdf.sty
|
||||
Package: ifpdf 2017/03/15 v3.2 Provides the ifpdf switch
|
||||
) (/usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifvtex.sty
|
||||
Package: ifvtex 2016/05/16 v1.6 Detect VTeX and its facilities (HO)
|
||||
Package ifvtex Info: VTeX not detected.
|
||||
) (/usr/share/texlive/texmf-dist/tex/generic/ifxetex/ifxetex.sty
|
||||
Package: ifxetex 2010/09/12 v0.6 Provides ifxetex conditional
|
||||
)
|
||||
\Gm@cnth=\count89
|
||||
\Gm@cntv=\count90
|
||||
\c@Gm@tempcnt=\count91
|
||||
\Gm@bindingoffset=\dimen103
|
||||
\Gm@wd@mp=\dimen104
|
||||
\Gm@odd@mp=\dimen105
|
||||
\Gm@even@mp=\dimen106
|
||||
\Gm@layoutwidth=\dimen107
|
||||
\Gm@layoutheight=\dimen108
|
||||
\Gm@layouthoffset=\dimen109
|
||||
\Gm@layoutvoffset=\dimen110
|
||||
\Gm@dimlist=\toks18
|
||||
) (/usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty
|
||||
Package: graphicx 2017/06/01 v1.1a Enhanced LaTeX Graphics (DPC,SPQR)
|
||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty
|
||||
Package: graphics 2017/06/25 v1.2c Standard LaTeX Graphics (DPC,SPQR)
|
||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty
|
||||
Package: trig 2016/01/03 v1.10 sin cos tan (DPC)
|
||||
) (/usr/share/texlive/texmf-dist/tex/latex/graphics-cfg/graphics.cfg
|
||||
File: graphics.cfg 2016/06/04 v1.11 sample graphics configuration
|
||||
)
|
||||
Package graphics Info: Driver file: dvips.def on input line 99.
|
||||
(/usr/share/texlive/texmf-dist/tex/latex/graphics-def/dvips.def
|
||||
File: dvips.def 2017/06/20 v3.1d Graphics/color driver for dvips
|
||||
))
|
||||
\Gin@req@height=\dimen111
|
||||
\Gin@req@width=\dimen112
|
||||
) (/usr/share/texlive/texmf-dist/tex/generic/babel/babel.sty
|
||||
Package: babel 2018/02/14 3.18 The Babel package
|
||||
(/usr/share/texlive/texmf-dist/tex/generic/babel/switch.def
|
||||
File: switch.def 2018/02/14 3.18 Babel switching mechanism
|
||||
) (/usr/share/texlive/texmf-dist/tex/generic/babel-english/english.ldf
|
||||
Language: english 2017/06/06 v3.3r English support from the babel system
|
||||
(/usr/share/texlive/texmf-dist/tex/generic/babel/babel.def
|
||||
File: babel.def 2018/02/14 3.18 Babel common definitions
|
||||
\babel@savecnt=\count92
|
||||
\U@D=\dimen113
|
||||
(/usr/share/texlive/texmf-dist/tex/generic/babel/txtbabel.def)
|
||||
\bbl@dirlevel=\count93
|
||||
)
|
||||
\l@british = a dialect from \language\l@english
|
||||
\l@UKenglish = a dialect from \language\l@english
|
||||
\l@canadian = a dialect from \language\l@american
|
||||
\l@australian = a dialect from \language\l@british
|
||||
\l@newzealand = a dialect from \language\l@british
|
||||
)) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/tex4ht.4ht
|
||||
version 2017-05-09-09:21
|
||||
--------------------------------------
|
||||
--- Note --- for additional information, use the command line option `info'
|
||||
--------------------------------------
|
||||
::::::::::::::::::::::::::::::::::::::::::
|
||||
TeX4ht info is available in the log file
|
||||
::::::::::::::::::::::::::::::::::::::::::
|
||||
) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/tex4ht.sty
|
||||
version 2018-02-11-15:01
|
||||
--- needs --- tex4ht interlocking ---
|
||||
\tmp:cnt=\count94
|
||||
\openout15 = `interlocking.tmp'.
|
||||
|
||||
(./interlocking.tmp)
|
||||
\tmp:dim=\skip45
|
||||
--------------------------------------
|
||||
--- Note --- for XML code, use the command line option `xml' or `xhtml'
|
||||
--------------------------------------
|
||||
(./interlocking.xref)
|
||||
\:refout=\write3
|
||||
\openout3 = `interlocking.xref'.
|
||||
|
||||
(/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4.4ht
|
||||
version 2018-02-21-09:31
|
||||
--------------------------------------
|
||||
--- Note --- to remove the <?xml version=...?> processing instruction use the c
|
||||
ommand line option `no-VERSION'
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- to remove the DOCTYPE declaration use the command line option `no-
|
||||
DOCTYPE'
|
||||
--------------------------------------
|
||||
) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4-math.4ht
|
||||
version 2017-03-30-16:04
|
||||
)
|
||||
--------------------------------------
|
||||
--- Note --- for marking of the base font, use the command line option `fonts+'
|
||||
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for non active _, use the command line option `no_'
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for _ of catcode 13, use the command line option `_13'
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for non active ^, use the command line option `no^'
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for ^ of catcode 13, use the command line option `^13'
|
||||
--------------------------------------
|
||||
(/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4.4ht
|
||||
version 2018-02-21-09:31
|
||||
--------------------------------------
|
||||
--- Note --- for alternative charset, use the command line option `charset=...'
|
||||
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- to ignore CSS font decoration, use the `NoFonts' command line opti
|
||||
on
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for jpg bitmaps of pictures, use the `jpg' command line option. (C
|
||||
haracter bitmaps are controled only by `g' records of tex4ht.env and `-g' switc
|
||||
hes of tex4ht.c)
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for gif bitmaps of pictures, use the `gif' command line option. (C
|
||||
haracter bitmaps are controled only by `g' records of tex4ht.env and `-g' switc
|
||||
hes of tex4ht.c)
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for content and toc in 2 frames, use the command line option `fram
|
||||
es'
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for content, toc, and footnotes in 3 frames, use the command line
|
||||
option `frames-fn'
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for file extension name xht, use the command line option `xht'
|
||||
--------------------------------------
|
||||
TeX4ht package options: html
|
||||
--------------------------------------
|
||||
--- Note --- To print a timestamp, use the command line option timestamp
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- to ignore CSS code, use the command line option `-css
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for inline CSS code, use the command line option `css-in'
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for pop ups on mouse over, use the command line option `mouseover'
|
||||
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for addressing images in a subdirectory, use the command line opti
|
||||
on `imgdir:.../'
|
||||
--------------------------------------
|
||||
) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4-math.4ht
|
||||
version 2017-03-30-16:04
|
||||
)
|
||||
\:tokwrite=\toks19
|
||||
\:tokpage=\toks20
|
||||
--------------------------------------
|
||||
--- Note --- for back links to toc, use the command line option `sections+'
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for linear crosslinks of pages, use the command line option `next'
|
||||
|
||||
--------------------------------------
|
||||
\openout15 = `interlocking.4ct'.
|
||||
|
||||
\:tocout=\write4
|
||||
\openout4 = `interlocking.4tc'.
|
||||
|
||||
(/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4.4ht
|
||||
version 2018-02-21-09:31
|
||||
) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4-math.4ht
|
||||
version 2017-03-30-16:04
|
||||
) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/latex.4ht
|
||||
version 2018-01-12-14:38
|
||||
LaTeX Info: Redefining \_ on input line 168.
|
||||
--------------------------------------
|
||||
--- Note --- for links into captions, instead of float heads, use the command l
|
||||
ine option `refcaption'
|
||||
--------------------------------------
|
||||
(/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4.4ht
|
||||
version 2018-02-21-09:31
|
||||
) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4-math.4ht
|
||||
version 2017-03-30-16:04
|
||||
) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4.4ht
|
||||
version 2018-02-21-09:31
|
||||
--------------------------------------
|
||||
--- Note --- For mini tocs immediately aftter the header use the command line o
|
||||
ption `minitoc<'
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for enumerated list elements with valued data, use the command lin
|
||||
e option `enumerate+'
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for enumerated list elements li's with value attributes, use the c
|
||||
ommand line option `enumerate-'
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for CSS2 code, use the command line option `css2'
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for pictorial tabular, use the command line option `pic-tabular'
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for bitmap fbox'es, use the command line option `pic-fbox'
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for bitmap framebox'es, use the command line option `pic-framebox'
|
||||
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for inline footnotes use command line option `fn-in'
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for tracing of latex font commands, use the command line option `f
|
||||
onts'
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for width specifications of tabular p entries, use the `p-width' c
|
||||
ommand line option or a configuration similar to \Configure{HColWidth}{\HCode{
|
||||
style="width:\HColWidth"}}
|
||||
--------------------------------------
|
||||
) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4-math.4ht
|
||||
version 2017-03-30-16:04
|
||||
--------------------------------------
|
||||
--- Note --- for pictorial eqnarray, use the command line option `pic-eqnarray'
|
||||
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for pictorial array, use the command line option `pic-array'
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for pictorial $...$ environments, use the command line option `pic
|
||||
-m' (not recommended!!)
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for pictorial $...$ and $$...$$ environments with latex alt, use t
|
||||
he command line option `pic-m+' (not safe!!)
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for pictorial array, use the command line option `pic-array'
|
||||
--------------------------------------
|
||||
)) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/fontmath.4ht
|
||||
version 2009-05-21-09:32
|
||||
(/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4.4ht
|
||||
version 2018-02-21-09:31
|
||||
) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4-math.4ht
|
||||
version 2017-03-30-16:04
|
||||
)) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/inputenc.4ht
|
||||
version 2009-05-21-09:32
|
||||
(/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4.4ht
|
||||
version 2018-02-21-09:31
|
||||
) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4-math.4ht
|
||||
version 2017-03-30-16:04
|
||||
)) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/geometry.4ht
|
||||
version 2016-07-01-08:55
|
||||
(/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4.4ht
|
||||
version 2018-02-21-09:31
|
||||
) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4-math.4ht
|
||||
version 2017-03-30-16:04
|
||||
)) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/graphicx.4ht
|
||||
version 2017-10-21-16:16
|
||||
(/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4.4ht
|
||||
version 2018-02-21-09:31
|
||||
) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4-math.4ht
|
||||
version 2017-03-30-16:04
|
||||
)) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/graphics.4ht (/usr/share/t
|
||||
exlive/texmf-dist/tex/generic/tex4ht/html4.4ht
|
||||
version 2018-02-21-09:31
|
||||
--------------------------------------
|
||||
--- Note --- if included graphics are of degraded quality, try the command line
|
||||
options `graphics-num' or `graphics-'. The `num' should provide the density of
|
||||
pixels in the bitmaps (e.g., 110).
|
||||
--------------------------------------
|
||||
--------------------------------------
|
||||
--- Note --- for key dimensions try the option `Gin-dim'; for key dimensions wh
|
||||
en bounding box is unavailable try `Gin-dim+'; neither is recommended
|
||||
--------------------------------------
|
||||
) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4-math.4ht
|
||||
version 2017-03-30-16:04
|
||||
)) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/dvips.4ht
|
||||
version 2009-05-21-09:32
|
||||
(/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4.4ht
|
||||
version 2018-02-21-09:31
|
||||
) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4-math.4ht
|
||||
version 2017-03-30-16:04
|
||||
)) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/babel.4ht
|
||||
version 2009-05-21-09:32
|
||||
(/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4.4ht
|
||||
version 2018-02-21-09:31
|
||||
) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4-math.4ht
|
||||
version 2017-03-30-16:04
|
||||
)) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/english.4ht
|
||||
version 2009-05-21-09:32
|
||||
(/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4.4ht
|
||||
version 2018-02-21-09:31
|
||||
) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4-math.4ht
|
||||
version 2017-03-30-16:04
|
||||
)) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4.4ht
|
||||
version 2018-02-21-09:31
|
||||
) (/usr/share/texlive/texmf-dist/tex/generic/tex4ht/html4-math.4ht
|
||||
version 2017-03-30-16:04
|
||||
)) (./interlocking.aux)
|
||||
\openout1 = `interlocking.aux'.
|
||||
|
||||
LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 13.
|
||||
LaTeX Font Info: ... okay on input line 13.
|
||||
LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 13.
|
||||
LaTeX Font Info: ... okay on input line 13.
|
||||
LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 13.
|
||||
LaTeX Font Info: ... okay on input line 13.
|
||||
LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 13.
|
||||
LaTeX Font Info: ... okay on input line 13.
|
||||
LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 13.
|
||||
LaTeX Font Info: ... okay on input line 13.
|
||||
LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 13.
|
||||
LaTeX Font Info: ... okay on input line 13.
|
||||
*geometry* driver: auto-detecting
|
||||
*geometry* detected driver: dvips
|
||||
|
||||
Package geometry Warning: The marginal notes overrun the paper.
|
||||
Add 47.54726pt and more to the right margin.
|
||||
|
||||
*geometry* verbose mode - [ preamble ] result:
|
||||
* driver: dvips
|
||||
* paper: <default>
|
||||
* layout: <same size as paper>
|
||||
* layoutoffset:(h,v)=(0.0pt,0.0pt)
|
||||
* modes:
|
||||
* h-part:(L,W,R)=(28.45274pt, 557.38951pt, 28.45274pt)
|
||||
* v-part:(T,H,B)=(28.45274pt, 738.0645pt, 28.45274pt)
|
||||
* \paperwidth=614.295pt
|
||||
* \paperheight=794.96999pt
|
||||
* \textwidth=557.38951pt
|
||||
* \textheight=738.0645pt
|
||||
* \oddsidemargin=0.0pt
|
||||
* \evensidemargin=0.0pt
|
||||
* \topmargin=-80.81725pt
|
||||
* \headheight=12.0pt
|
||||
* \headsep=25.0pt
|
||||
* \topskip=10.0pt
|
||||
* \footskip=30.0pt
|
||||
* \marginparwidth=65.0pt
|
||||
* \marginparsep=11.0pt
|
||||
* \columnsep=10.0pt
|
||||
* \skip\footins=9.0pt plus 4.0pt minus 2.0pt
|
||||
* \hoffset=0.0pt
|
||||
* \voffset=0.0pt
|
||||
* \mag=1000
|
||||
* \@twocolumnfalse
|
||||
* \@twosidefalse
|
||||
* \@mparswitchfalse
|
||||
* \@reversemarginfalse
|
||||
* (1in=72.27pt=25.4mm, 1cm=28.453pt)
|
||||
|
||||
--- file interlocking.css ---
|
||||
[1
|
||||
|
||||
] [2]
|
||||
LaTeX Font Info: Try loading font information for T1+cmss on input line 18.
|
||||
(/usr/share/texlive/texmf-dist/tex/latex/base/t1cmss.fd
|
||||
File: t1cmss.fd 2014/09/29 v2.5h Standard LaTeX font definitions
|
||||
)
|
||||
LaTeX Font Info: External font `cmex10' loaded for size
|
||||
(Font) <14.4> on input line 18.
|
||||
LaTeX Font Info: External font `cmex10' loaded for size
|
||||
(Font) <7> on input line 18.
|
||||
LaTeX Font Info: Try loading font information for T1+cmtt on input line 18.
|
||||
(/usr/share/texlive/texmf-dist/tex/latex/base/t1cmtt.fd
|
||||
File: t1cmtt.fd 2014/09/29 v2.5h Standard LaTeX font definitions
|
||||
)
|
||||
|
||||
LaTeX Warning: No \author given.
|
||||
|
||||
LaTeX Font Info: External font `cmex10' loaded for size
|
||||
(Font) <5> on input line 61.
|
||||
[3
|
||||
|
||||
]
|
||||
l.88 --- TeX4ht warning --- File `"0_home_moritz_Home_Projekte_Minetest_minetes
|
||||
t_m___s_assets_lyx_img_screenshot_20180830_142551.xbb"' not found ---
|
||||
l.88 --- TeX4ht warning --- Cannot determine size of graphic in "0_home_moritz_
|
||||
Home_Projekte_Minetest_minetest_m___s_assets_lyx_img_screenshot_20180830_142551
|
||||
.xbb" (no BoundingBox) ---
|
||||
l. 88 --- needs --- 0_home_moritz_Home_Projekte_Minetest_minetest_m___s_assets_
|
||||
lyx_img_screenshot_20180830_142551.png ---
|
||||
l.93 --- TeX4ht warning --- File `"1_home_moritz_Home_Projekte_Minetest_minetes
|
||||
t_m____lyx_img_Bildschirmfoto_2018-08-30_14-26-35.xbb"' not found ---
|
||||
l.93 --- TeX4ht warning --- Cannot determine size of graphic in "1_home_moritz_
|
||||
Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-26-35
|
||||
.xbb" (no BoundingBox) ---
|
||||
l. 93 --- needs --- 1_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img_
|
||||
Bildschirmfoto_2018-08-30_14-26-35.png ---
|
||||
l.104 --- TeX4ht warning --- File `"2_home_moritz_Home_Projekte_Minetest_minete
|
||||
st_m____lyx_img_Bildschirmfoto_2018-08-30_14-32-48.xbb"' not found ---
|
||||
l.104 --- TeX4ht warning --- Cannot determine size of graphic in "2_home_moritz
|
||||
_Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-32-4
|
||||
8.xbb" (no BoundingBox) ---
|
||||
l. 104 --- needs --- 2_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img
|
||||
_Bildschirmfoto_2018-08-30_14-32-48.png ---
|
||||
l.117 --- TeX4ht warning --- File `"3_home_moritz_Home_Projekte_Minetest_minete
|
||||
st_m____lyx_img_Bildschirmfoto_2018-08-30_14-27-25.xbb"' not found ---
|
||||
l.117 --- TeX4ht warning --- Cannot determine size of graphic in "3_home_moritz
|
||||
_Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-27-2
|
||||
5.xbb" (no BoundingBox) ---
|
||||
l. 117 --- needs --- 3_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img
|
||||
_Bildschirmfoto_2018-08-30_14-27-25.png ---
|
||||
l.121 --- TeX4ht warning --- File `"4_home_moritz_Home_Projekte_Minetest_minete
|
||||
st_m____lyx_img_Bildschirmfoto_2018-08-30_14-28-32.xbb"' not found ---
|
||||
l.121 --- TeX4ht warning --- Cannot determine size of graphic in "4_home_moritz
|
||||
_Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-28-3
|
||||
2.xbb" (no BoundingBox) ---
|
||||
l. 121 --- needs --- 4_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img
|
||||
_Bildschirmfoto_2018-08-30_14-28-32.png ---
|
||||
[4]
|
||||
l.173 --- TeX4ht warning --- File `"5_home_moritz_Home_Projekte_Minetest_minete
|
||||
st_m____lyx_img_Bildschirmfoto_2018-08-30_14-51-25.xbb"' not found ---
|
||||
l.173 --- TeX4ht warning --- Cannot determine size of graphic in "5_home_moritz
|
||||
_Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-51-2
|
||||
5.xbb" (no BoundingBox) ---
|
||||
l. 173 --- needs --- 5_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img
|
||||
_Bildschirmfoto_2018-08-30_14-51-25.png ---
|
||||
[5] [6] [7]
|
||||
l.344 --- TeX4ht warning --- File `"6_home_moritz_Home_Projekte_Minetest_minete
|
||||
st_mods_advtrains_assets_lyx_img_route_ex1.xbb"' not found ---
|
||||
l.344 --- TeX4ht warning --- Cannot determine size of graphic in "6_home_moritz
|
||||
_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_route_ex1.xbb" (
|
||||
no BoundingBox) ---
|
||||
l. 344 --- needs --- 6_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrai
|
||||
ns_assets_lyx_img_route_ex1.png ---
|
||||
[8]
|
||||
l.370 --- TeX4ht warning --- File `"7_home_moritz_Home_Projekte_Minetest_minete
|
||||
st_mods_advtrains_assets_lyx_img_route_ex2.xbb"' not found ---
|
||||
l.370 --- TeX4ht warning --- Cannot determine size of graphic in "7_home_moritz
|
||||
_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_route_ex2.xbb" (
|
||||
no BoundingBox) ---
|
||||
l. 370 --- needs --- 7_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrai
|
||||
ns_assets_lyx_img_route_ex2.png ---
|
||||
l.401 --- TeX4ht warning --- File `"8_home_moritz_Home_Projekte_Minetest_minete
|
||||
st_mods_advtrains_assets_lyx_img_assign_signal.xbb"' not found ---
|
||||
l.401 --- TeX4ht warning --- Cannot determine size of graphic in "8_home_moritz
|
||||
_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_assign_signal.xb
|
||||
b" (no BoundingBox) ---
|
||||
l. 401 --- needs --- 8_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrai
|
||||
ns_assets_lyx_img_assign_signal.png ---
|
||||
l.432 --- TeX4ht warning --- File `"9_home_moritz_Home_Projekte_Minetest_minete
|
||||
st_mods_advtrains_assets_lyx_img_route_ex3.xbb"' not found ---
|
||||
l.432 --- TeX4ht warning --- Cannot determine size of graphic in "9_home_moritz
|
||||
_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_route_ex3.xbb" (
|
||||
no BoundingBox) ---
|
||||
l. 432 --- needs --- 9_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrai
|
||||
ns_assets_lyx_img_route_ex3.png ---
|
||||
[9] [10]
|
||||
l.529 --- TeX4ht warning --- File `"10_home_moritz_Home_Projekte_Minetest_minet
|
||||
est_____lyx_img_Bildschirmfoto_2019-01-15_19-28-09.xbb"' not found ---
|
||||
l.529 --- TeX4ht warning --- Cannot determine size of graphic in "10_home_morit
|
||||
z_Home_Projekte_Minetest_minetest_____lyx_img_Bildschirmfoto_2019-01-15_19-28-0
|
||||
9.xbb" (no BoundingBox) ---
|
||||
l. 529 --- needs --- 10_home_moritz_Home_Projekte_Minetest_minetest_____lyx_img
|
||||
_Bildschirmfoto_2019-01-15_19-28-09.png ---
|
||||
[11] [12]
|
||||
l.661 --- TeX4ht warning --- File `"11_home_moritz_Home_Projekte_Minetest_minet
|
||||
est_mods_advtrains_assets_lyx_img_arslin_ex1.xbb"' not found ---
|
||||
l.661 --- TeX4ht warning --- Cannot determine size of graphic in "11_home_morit
|
||||
z_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_arslin_ex1.xbb"
|
||||
(no BoundingBox) ---
|
||||
l. 661 --- needs --- 11_home_moritz_Home_Projekte_Minetest_minetest_mods_advtra
|
||||
ins_assets_lyx_img_arslin_ex1.png ---
|
||||
l.667 --- TeX4ht warning --- File `"12_home_moritz_Home_Projekte_Minetest_minet
|
||||
est_mods_advtrains_assets_lyx_img_arslin_ex2.xbb"' not found ---
|
||||
l.667 --- TeX4ht warning --- Cannot determine size of graphic in "12_home_morit
|
||||
z_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_arslin_ex2.xbb"
|
||||
(no BoundingBox) ---
|
||||
l. 667 --- needs --- 12_home_moritz_Home_Projekte_Minetest_minetest_mods_advtra
|
||||
ins_assets_lyx_img_arslin_ex2.png ---
|
||||
l.685 --- TeX4ht warning --- File `"13_home_moritz_Home_Projekte_Minetest_minet
|
||||
est_mods_advtrains_assets_lyx_img_ars_ex1.xbb"' not found ---
|
||||
l.685 --- TeX4ht warning --- Cannot determine size of graphic in "13_home_morit
|
||||
z_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_ars_ex1.xbb" (n
|
||||
o BoundingBox) ---
|
||||
l. 685 --- needs --- 13_home_moritz_Home_Projekte_Minetest_minetest_mods_advtra
|
||||
ins_assets_lyx_img_ars_ex1.png ---
|
||||
[13] [14] (./interlocking.aux) )
|
||||
Here is how much of TeX's memory you used:
|
||||
5182 strings out of 494848
|
||||
65027 string characters out of 6179105
|
||||
253348 words of memory out of 5000000
|
||||
8396 multiletter control sequences out of 15000+600000
|
||||
14893 words of font info for 31 fonts, out of 8000000 for 9000
|
||||
59 hyphenation exceptions out of 8191
|
||||
28i,6n,29p,763b,465s stack positions out of 5000i,500n,10000p,200000b,80000s
|
||||
|
||||
Output written on interlocking.dvi (14 pages, 65604 bytes).
|
@ -1,745 +0,0 @@
|
||||
\batchmode
|
||||
\makeatletter
|
||||
\def\input@path{{/home/moritz/Home/Projekte/Minetest/minetest/mods/advtrains/assets/}}
|
||||
\makeatother
|
||||
\documentclass[english]{paper}
|
||||
\usepackage[T1]{fontenc}
|
||||
\usepackage[latin9]{inputenc}
|
||||
\usepackage{geometry}
|
||||
\geometry{verbose,tmargin=1cm,bmargin=1cm,lmargin=1cm,rmargin=1cm}
|
||||
\setlength{\parindent}{0bp}
|
||||
\usepackage{graphicx}
|
||||
\usepackage{babel}
|
||||
\begin{document}
|
||||
|
||||
\title{Minetest Mod - Advanced Trains {[}advtrains{]}}
|
||||
|
||||
\title{Interlocking System Guide}
|
||||
\maketitle
|
||||
|
||||
\section{Introduction}
|
||||
|
||||
In real-world railways, a so-called interlocking system is a set of
|
||||
railway signals and trackside equipment. Its purpose is to prevent
|
||||
conflicting train movements which otherwise could result in derailing
|
||||
or colliding trains. If you want more information, just search for
|
||||
``railway interlocking'' on the internet.
|
||||
|
||||
Real-world interlocking systems perform this task by setting routes.
|
||||
A route is a path along a track that a train can safely pass. To set
|
||||
a route for a train, the signalman (the operator of a signal box)
|
||||
has to set switches (turnouts) to the correct position and lock them
|
||||
in order to make a signal for a train show ``Proceed''. In newer
|
||||
systems, this is done automatically by the interlocking system. A
|
||||
route can not be set if switches are locked to a wrong position by
|
||||
another route or if any portion of the route is occupied by a train.
|
||||
|
||||
The interlocking system in this Minetest mod tries to follow real-world
|
||||
interlocking systems as far as applicable. It divides tracks into
|
||||
track sections and implements a route setting mechanism following
|
||||
the same principle.
|
||||
|
||||
However, for the sake of simplicity of implementation and usage, not
|
||||
all concepts of real-world interlocking have been taken over. Especially,
|
||||
there is no mechanism for overlap.
|
||||
|
||||
If you are looking for a place to learn how real-world interlocking
|
||||
systems work, have a look at ``SimSig''. By looking at their simulations,
|
||||
you can obtain experience on how to set up your own interlocking systems
|
||||
in AdvTrains. The SimSig glossary is a good place to look up unknown
|
||||
terms in this document.
|
||||
|
||||
\section{Setting up track sections}
|
||||
|
||||
In the real world, a line of track is divided into so-called track
|
||||
sections, or track circuits. Those systems often can not tell where
|
||||
exactly a train is, but only which track sections it occupies. A route
|
||||
can never be set through an occupied track section.
|
||||
|
||||
A track section often covers:
|
||||
\begin{itemize}
|
||||
\item A section on a main running line, between two signals
|
||||
\item A single turnout
|
||||
\item A rail crossing, or a set of turnouts acting as a double/single slip
|
||||
switch
|
||||
\item A siding
|
||||
\end{itemize}
|
||||
You will find some examples on how to interlock certain patterns later.
|
||||
|
||||
\subsection{Track Circuit Breaks}
|
||||
|
||||
In this mod, you will not directly configure the locations of track
|
||||
sections. Instead, you designate the borders of each track section
|
||||
using a special node, the Track Circuit Break, abbreviated TCB.
|
||||
|
||||
For example, if you want to create a track section for a piece of
|
||||
a main running line, you set up two TCBs at the ends of this track
|
||||
circuit.
|
||||
|
||||
Setting up a TCB works as follows:
|
||||
\begin{enumerate}
|
||||
\item Place a TCB node somewhere near the place where the circuit break
|
||||
is going to be located.
|
||||
\item Right-click the TCB node
|
||||
\item Punch the rail which should act as TCB
|
||||
\end{enumerate}
|
||||
The result should look like this:
|
||||
|
||||
\includegraphics[width=10cm]{0_home_moritz_Home_Projekte_Minetest_minetest_m___s_assets_lyx_img_screenshot_20180830_142551.png}
|
||||
|
||||
Now you have assigned the TCB node to a rail. Right-click the TCB
|
||||
node once again. This will bring up a form which looks as follows:
|
||||
|
||||
\includegraphics[width=10cm]{1_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-26-35.png}
|
||||
|
||||
You see that the form is divided in side A and side B. To designate
|
||||
where each side is, a marker is displayed on the rail. You can always
|
||||
make this marker show up by punching the TCB node, and remove it by
|
||||
punching the marker. Both sides are shown as ``End of interlocking''.
|
||||
This means that there is no track section set up at this place.
|
||||
|
||||
You should repeat this procedure once again a few meters away from
|
||||
the first TCB to create a second TCB on the same track.
|
||||
|
||||
\includegraphics[width=10cm]{2_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-32-48.png}
|
||||
|
||||
Once you have both bordering TCBs set up, you can now create the actual
|
||||
track section. To do this:
|
||||
\begin{enumerate}
|
||||
\item Right-click one of the TCBs
|
||||
\item Locate the correct side (A or B) to create the track section
|
||||
\item Click ``Create interlocked Track Section'' in the formspec on the
|
||||
chosen side.
|
||||
\end{enumerate}
|
||||
Now, the text on the formspec has changed. It shows something like
|
||||
this:
|
||||
|
||||
\includegraphics[width=5cm]{3_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-27-25.png}
|
||||
|
||||
Clicking ``Show Track Section'' brings up another formspec:
|
||||
|
||||
\includegraphics[width=5cm]{4_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-28-32.png}
|
||||
|
||||
On the top, you see a list of all TCBs that border this track section.
|
||||
In your case, there should be two TCBs listed. If there's only one,
|
||||
head over to \ref{subsec:Long-track-sections,}. You should now select
|
||||
a name for the track section, to identify it later.
|
||||
|
||||
The same procedure is applicable when you create a turnout track section,
|
||||
except that you have to set up three or more TCBs.
|
||||
|
||||
The AdvTrains interlocking system allows you to add more TCBs after
|
||||
you have created a track section. This works without problems in most
|
||||
cases. For example, you can easily insert a turnout into an already
|
||||
set-up track section and create another TCB behind it, and AdvTrains
|
||||
will automatically detect the existing track section. Problems arise
|
||||
only if you try to insert a TCB in-between a section, in which case
|
||||
both sides of the TCB will end up assigned to the same section. The
|
||||
code currently does not handle this case properly, so try to avoid
|
||||
this situation by all means. As a last resort, you can always dissolve
|
||||
a faulty track section, as described in the next chapter.
|
||||
|
||||
\subsection{Long track sections, crossings and other edge cases\label{subsec:Long-track-sections,}}
|
||||
|
||||
\subsubsection{Very long track sections}
|
||||
|
||||
If you try to set up a track section that is longer than 1000 nodes,
|
||||
advtrains won't recognize the TCB at the other end because of a safety
|
||||
limit in the traverser function, which is supposed to prevent deadlocks.
|
||||
This case has happened when the Track Section overview screen only
|
||||
shows one TCB in the list. The procedure for this is as follows:
|
||||
\begin{enumerate}
|
||||
\item Go to the second TCB (the one that wasn't recognized). It should show
|
||||
``End of Interlocking'' on the relevant side.
|
||||
\item Click ``Create interlocked track section''. The section created
|
||||
will be different from the one that is already present.
|
||||
\item In the track section overview, click ``Join into other section''
|
||||
\item Go back to the first TCB, bring up the Track Section overview screen
|
||||
of the first track section and click ``Join with ???''
|
||||
\end{enumerate}
|
||||
The other, missing TCB should now appear in the list. If you accidentally
|
||||
started such a joining procedure, click the ``X'' button on the
|
||||
right.
|
||||
|
||||
\subsubsection{Rail crosses}
|
||||
|
||||
Since rail crosses are created by laying tracks across each other
|
||||
without logical connection, there's no way for advtrains to know whether
|
||||
rails cross each other.
|
||||
|
||||
Rail crossings in interlocking systems are always one single track
|
||||
section, which in most cases has 4 TCBs adjacent.
|
||||
|
||||
\includegraphics[width=5cm]{5_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-51-25.png}
|
||||
|
||||
The procedure is quite similar to the one for long sections: First,
|
||||
create two track sections for the branches, and then use the ``Join''
|
||||
function to merge both sections into one.
|
||||
|
||||
\subsubsection{Deleting and re-adding single TCBs to a section}
|
||||
|
||||
In some occasions, for example when you remove a siding or a crossover,
|
||||
it can be necessary to unassign a TCB from a track section. There
|
||||
are multiple ways to do this:
|
||||
\begin{itemize}
|
||||
\item In the TCB form, click the ``Remove from section'' button
|
||||
\item In the track section form, first select the TCB in the list and then
|
||||
click ``Unlink selected TCB''
|
||||
\end{itemize}
|
||||
The result is that the TCB shows ``End of Interlocking'' and the
|
||||
section does not list the TCB as an endpoint anymore.
|
||||
|
||||
The other case is adding a siding or a crossover, in which case one
|
||||
or more TCBs still show ``End of Interlocking'' although they should
|
||||
be part of a section:
|
||||
\begin{itemize}
|
||||
\item Go to another TCB that is registered in the track section and click
|
||||
``Update near TCBs''
|
||||
\item If that did not work, follow the procedure of creating a long track
|
||||
section
|
||||
\end{itemize}
|
||||
|
||||
\subsubsection{Dissolving sections}
|
||||
|
||||
If you made a mistake setting up something and you don't see any other
|
||||
way to fix a misconfigured track section, you can always delete it
|
||||
using the ``Dissolve section'' button. This operation removes the
|
||||
track section and sets all TCBs that previously belonged to the section
|
||||
as ``End of Interlocking''. This will always work and lets you start
|
||||
over new with setting up track sections.
|
||||
|
||||
\subsection{Interlocking patterns}
|
||||
|
||||
Have a look at the following images. They show you how you can set
|
||||
up sections so that reasonable train moves are possible.
|
||||
|
||||
You should settle on a naming scheme for your sections. This way,
|
||||
you can determine the source of an issue faster
|
||||
|
||||
\section{Signals and routes}
|
||||
|
||||
Signals are appliances that can give instructions to trains. That
|
||||
can be the permission to proceed, a speed restriction, or other information.
|
||||
|
||||
There are 2 types of signals:
|
||||
\begin{itemize}
|
||||
\item Static signals always display the same information to the train. This
|
||||
can be a speed restriction (or the end of one), a disallowal to proceed
|
||||
as shunt move or similar things. In most cases, these are signs.
|
||||
\item Dynamic signals are what most people would call a ``signal''. Its
|
||||
function is to inform trains about whether and at which speed they
|
||||
can proceed into the next section safely.
|
||||
\end{itemize}
|
||||
|
||||
\subsection{Signal Influence Point}
|
||||
|
||||
Every signal is associated to a track on which the instruction should
|
||||
be followed. Signals are usually placed right next to the track on
|
||||
the right side. Human observers do know then that the signal belongs
|
||||
to the track left of it, however, train safety systems (like the one
|
||||
in advtrains) can not.
|
||||
|
||||
This is the reason why a so-called ``influence point'' needs to
|
||||
be assigned to any signal that should actually give instructions to
|
||||
trains, should the driver (if even there is one) fail to recognize
|
||||
the instructions.
|
||||
|
||||
Depending on the signal and the mod that adds the signal, there are
|
||||
different ways to configure this. Signals integrated into advtrains
|
||||
behave as follows:
|
||||
\begin{itemize}
|
||||
\item Static signals and all red-green light signals from core advtrains
|
||||
that are not assigned to a TCB can be configured by holding the ``Use''
|
||||
key and then right-clicking the signal
|
||||
\item All signals that are assigned to a TCB can be configured by first
|
||||
right-clicking them, then selecting ``Influence Point'' in the signalling
|
||||
formspec.
|
||||
\end{itemize}
|
||||
The small formspec that opens allows you to set and later view or
|
||||
clear the Influence Point. To set the influence point, click the ``Set''
|
||||
button, face towards the signal and punch a rail about 2m in front
|
||||
of the signal. A small marker will be shown, indicating success. To
|
||||
cancel setting an influence point, punch anything other. (note that
|
||||
then the influence point remains unset, regardless of its previous
|
||||
state)
|
||||
|
||||
The advtrains-internal train safety system ensures that the train
|
||||
always obeys any restrictions imposed by signals, if (and only if)
|
||||
the influence point is set properly.
|
||||
|
||||
\subsection{Signal Aspects}
|
||||
|
||||
While static signals are mainly used for speed restrictions, the interesting
|
||||
ones are variable signals. Of course, you can always control any variable
|
||||
signal by traditional means (mesecons, digiline, right-click) if the
|
||||
signal allows it, but that misses the point of this interlocking system.
|
||||
|
||||
A signal aspect is a piece of information that a signal shows to the
|
||||
train driver. It contains information about whether and at what speed
|
||||
the driver may proceed at the signal.
|
||||
|
||||
Every signal, both static and dynamic ones, imposes a certain aspect
|
||||
to trains passing the signal. For static signals, this is always the
|
||||
same aspect, such as ``Proceed at speed of 8'' or ``Shunt moves
|
||||
may not pass''. Dynamic signals, however, can display multiple different
|
||||
aspects. The default for them is always as restrictive as possible,
|
||||
mostly ``Halt!''.
|
||||
|
||||
You should know that both static and dynamic signals use exactly the
|
||||
same properties for signal aspects. There is no difference in the
|
||||
meaning of the aspect definitions.
|
||||
|
||||
In the following sections, we will talk about main signals. By this,
|
||||
we mean a variable signal that can display both a ``Danger'' aspect
|
||||
(trains are not allowed to proceed) and at least one ``Proceed''
|
||||
aspect (train may proceed as train/shunt move, with optional speed
|
||||
restriction), which act as an ``entry signal'' for one or multiple
|
||||
routes.
|
||||
|
||||
\subsection{Train moves and Shunt Moves}
|
||||
\begin{itemize}
|
||||
\item A ``Train move'' is a train that is running, going to run on or
|
||||
coming from a main line between stations, passing through or stopping
|
||||
at a station. Train moves can expect that there are no obstacles on
|
||||
the route and they can proceed at the maximum permitted speed of the
|
||||
line. This is the regular operation mode for trains. Shunt signals
|
||||
have no meaning for train moves.
|
||||
\item A ``Shunt move'' is a train that moves within a station and/or is
|
||||
coupling or decoupling wagons or engines. A shunt move may never leave
|
||||
a station except into a siding. Also, shunt moves may drive at a maximum
|
||||
speed of 6 speed units, because it is usually not ensured that the
|
||||
path is free of obstacles. (however, advtrains ensures that every
|
||||
route is free of railway vehicles, even shunt routes)
|
||||
\end{itemize}
|
||||
There are also 2 general types of signals: Main signals and Shunt
|
||||
signals. While main signals have a meaning for all types of trains,
|
||||
Shunt signals only have to be followed by shunt moves. Usually, Shunt
|
||||
signals that are on a train move route are set to a Proceed aspect
|
||||
as well.
|
||||
|
||||
When a train reverses, its mode automatically changes to ``shunt
|
||||
move'' until it passes a main signal that shows ``Proceed as train
|
||||
move'', which is usually designated by a green light. From this point
|
||||
on, it can accelerate to maximum permitted speed.
|
||||
|
||||
Some main signals, like the ones from the Ks signals mod included
|
||||
by default, can also display ``Proceed as shunt move'', which is
|
||||
designated by 2 white lights along with the red light. Once a train
|
||||
passes this signal, it becomes a shunt move.
|
||||
|
||||
\subsection{The concept of routes}
|
||||
|
||||
A so-called route is a locked path between two main signals, which
|
||||
locks all turnouts in the correct position. Its purpose is to offer
|
||||
a train a path on which it can safely proceed without interfering
|
||||
with any other train. A route always incorporates and locks one to
|
||||
multiple track sections, starting with the one that lies directly
|
||||
behind the ``entry'' signal.
|
||||
|
||||
Example: Imagine a station with 2 platforms on a single track running
|
||||
line. We are looking at signal A. You probably want trains coming
|
||||
from the right to go into platform 1 or into platform 2, so you need
|
||||
to program 2 routes.
|
||||
|
||||
\includegraphics[width=7cm]{6_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_route_ex1.png}
|
||||
|
||||
This leads us to the most important aspect of route programming: Routes
|
||||
always start at a signal (A) and end at a signal facing in the \textbf{same
|
||||
direction} (D and E), not at an opposite-facing signal (B and C).
|
||||
There are only few exceptions, we'll cover this later.
|
||||
|
||||
When you set a route to make a train proceed on it, the interlocking
|
||||
system ensures that:
|
||||
\begin{itemize}
|
||||
\item There are no rail vehicles on the route
|
||||
\item All turnouts are set to the correct position and it is impossible
|
||||
to move them
|
||||
\item No other routes can be set that would in any way conflict with this
|
||||
route
|
||||
\end{itemize}
|
||||
For this to work, you need to specify all track sections the train
|
||||
will pass along, as well as the positions of all turnouts that need
|
||||
to be locked. Those are not only the turnouts that lay directly on
|
||||
the train's route, but also some turnouts on adjacent tracks, the
|
||||
so-called flank protection.
|
||||
|
||||
The purpose of flank protection is to prevent runaway trains and/or
|
||||
wagons to pass into a route. This is achieved by setting nearby turnouts
|
||||
to a position that points ``away'' from the route. Example:
|
||||
|
||||
\includegraphics[width=7cm]{7_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_route_ex2.png}
|
||||
|
||||
The upper turnout, of course, needs to be locked in straight (normal)
|
||||
position, while the lower one is not relevant for the route itself.
|
||||
But what if the lower turnout was set to the diverging (reverse) position
|
||||
and the driver of another train approaching signal B fails to see
|
||||
the red light? This train would crash into the first one. To minimise
|
||||
danger, that other train would need to be routed towards signal D.
|
||||
|
||||
There are, of course, situations, where both positions of a turnout
|
||||
would conflict with a route equally. In those situations, there's
|
||||
nothing you can do and no flank lock needs to be set.
|
||||
|
||||
\subsection{Assigning main signals to TCBs}
|
||||
|
||||
Main signals in the advtrains interlocking system are positioned -
|
||||
like in real life - at the border of track sections, because routes
|
||||
also start and end there. For advtrains to know from which signal
|
||||
which routes can be set, you need to assign the signal to a TCB.
|
||||
|
||||
To do this, perform the following steps:
|
||||
\begin{enumerate}
|
||||
\item If not already happened, set up a TCB (you don't need to, but are
|
||||
advised to, configure track sections there)
|
||||
\item Place the signal a few meters in front of the TCB, so that trains
|
||||
stopping at the signal do never pass the TCB
|
||||
\item Locate the side of the TCB which points in the direction that trains
|
||||
will proceed past the signal, as shown in the figure below.
|
||||
\item Right-click the TCB, and click ``Assign a signal'' on this side.
|
||||
\item Punch the signal.
|
||||
\end{enumerate}
|
||||
\includegraphics[width=8cm]{8_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_assign_signal.png}
|
||||
|
||||
If you haven't set an influence point for the signal yet, the influence
|
||||
point formspec automatically opens.
|
||||
|
||||
You can assign a signal to each side of a TCB. This is, for example,
|
||||
useful when creating block sections on a bi-directional main running
|
||||
line.
|
||||
|
||||
Only main signals can ever be assigned to TCBs, because static ones
|
||||
can either not display ``Danger'' or do not permit to proceed at
|
||||
all.
|
||||
|
||||
\subsection{Shunt routes}
|
||||
|
||||
\textbf{The information in this section is subject to future change
|
||||
because of safety issues!}
|
||||
|
||||
Operating railways is not all about driving trains around. Coupling,
|
||||
decoupling and moving single engines, wagons or groups of wagons across
|
||||
a station, called shunting, also plays an important role.
|
||||
|
||||
Remember what we said about routes: There must be no rail vehicles
|
||||
on the route. So what if you have some goods wagons ready on a siding,
|
||||
and want to couple an engine to it? You can not set a regular route
|
||||
into the siding, because it is occupied.
|
||||
|
||||
The solution is to program a second route into the siding, but with
|
||||
the difference that it already ends at the rear-facing signal of it,
|
||||
so it doesn't include the siding section itself:
|
||||
|
||||
\includegraphics[width=7cm]{9_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_route_ex3.png}
|
||||
|
||||
The Sht2 route then needs to show a shunt aspect, which instructs
|
||||
the driver to proceed slowly and watch out for vehicles on the route.
|
||||
See later on for how to set this up.
|
||||
|
||||
Shunt routes like this are, so far, the only exception to the ``Routes
|
||||
should end at a signal facing the same direction'' rule.
|
||||
|
||||
\subsection{Route Release}
|
||||
|
||||
In early real-life interlocking systems, routes either had to be cancelled
|
||||
by the signalman after the train had passed the route, or there was
|
||||
a single release contact at the end of the route. However, as interlocking
|
||||
systems evolved and the position of trains is now roughly known by
|
||||
the track sections, portions of the route can be freed as soon as
|
||||
the train has left the corresponding section.
|
||||
|
||||
AdvTrains has chosen a modern approach to route releasing. Each turnout
|
||||
lock is associated to a track section belonging to the route's path.
|
||||
Once the train leaves this section, all assigned locks are also freed.
|
||||
|
||||
Please note that reversing a train outside of stations is not only
|
||||
discouraged, but also very dangerous, because even real-world interlocking
|
||||
system do not expect this. There is a clear, human-sense rule that
|
||||
you should never reverse the driving direction of a train while on
|
||||
a main line or on a turnout. Else, you can be considered a terrorist.
|
||||
(quote from professional!)
|
||||
|
||||
\subsection{Programming a route}
|
||||
|
||||
The route programming procedure is quite straightforward if you've
|
||||
read the previous sections and understood how routes should be set.
|
||||
|
||||
Routes always start at a main signal. You must have assigned the signal
|
||||
to a TCB, as described earlier.
|
||||
|
||||
When you right-click the main signal, it no longer changes its aspect.
|
||||
Instead, a formspec pops up, showing you an (empty) list of routes
|
||||
with the possibility to set them or to create new routes. Click the
|
||||
``Create new route'' button to start programming a new route.
|
||||
|
||||
The form closes, and an arrow is displayed on the TCB. You are now
|
||||
in ``Route Programming'' mode, programming the first track section
|
||||
of the route. Now:
|
||||
\begin{itemize}
|
||||
\item Put any turnouts you need to lock in the correct position (e.g. by
|
||||
right-clicking them). This includes flank protection.
|
||||
\item Punch them. This makes a marker with a blue lock symbol appear.
|
||||
\item If you punch a turnout again, or punch the marker, you can remove
|
||||
the lock again.
|
||||
\item When you've locked all turnouts in the current section, go to and
|
||||
punch the TCB that is the border to the next track section the train
|
||||
proceeds into.
|
||||
\end{itemize}
|
||||
Depending on the situation, you are now offered some possibilities
|
||||
to proceed:
|
||||
\begin{itemize}
|
||||
\item Click the ``Advance to next section'' button if your route consists
|
||||
of more sections with turnouts to lock, and you need to continue programming.
|
||||
Follow the above steps to set locks for the next section.
|
||||
\end{itemize}
|
||||
Once you've clicked the ``Advance'' button, the lock markers change
|
||||
to a red lock symbol, telling they can't be changed anymore. Repeat
|
||||
the above procedure until you are ready to complete the programming
|
||||
procedure:
|
||||
\begin{itemize}
|
||||
\item Click the ``Finish route HERE'' button when you've set up the locks
|
||||
for the last track section of the route and punched the final TCB
|
||||
(the one with the next signal). You will be asked for a route name
|
||||
and your route will be saved.
|
||||
\item The ``Finish route at end of NEXT section'' button (third button)
|
||||
is an useful quickhand to make the route proceed one more section.
|
||||
Using this button is equivalent to first clicking the ``Advance''
|
||||
button, then flying to the end of the next track section and finishing
|
||||
the route there. You can not (officially) set turnout locks in the
|
||||
final section using this method.
|
||||
\end{itemize}
|
||||
A few hints:
|
||||
\begin{itemize}
|
||||
\item If you accidentally advanced the route wrongly, you can use the ``Step
|
||||
back one section'' button to undo this.
|
||||
\item If you want to stop programming the entire route without saving it,
|
||||
use the ``Cancel route programming'' button.
|
||||
\item The third button is especially useful for programming simple block
|
||||
sections on a main running line, since you can stay at the starting
|
||||
signal (punch starting TCB and select third button).
|
||||
\item If a route should end in a dead end, you MUST use the ``Finish in
|
||||
NEXT section'' button, because there is no final TCB that you could
|
||||
punch.
|
||||
\item The third button does NOT work on sections with more than 2 exits,
|
||||
because the system won't be able to determine the final TCB of the
|
||||
route then.
|
||||
\end{itemize}
|
||||
|
||||
\subsection{Route information screen}
|
||||
|
||||
\includegraphics[width=10cm]{10_home_moritz_Home_Projekte_Minetest_minetest_____lyx_img_Bildschirmfoto_2019-01-15_19-28-09.png}
|
||||
|
||||
This is the screen that appears when you click ``Edit Route''. It
|
||||
lets you change the route name and delete the route. Also, it shows
|
||||
a summary of the route and its elements.
|
||||
|
||||
The route summary lists information per track section on the route,
|
||||
so the line starting with ``1'' is the first section of the route.
|
||||
|
||||
The ARS rule list and its purpose is explained later.
|
||||
|
||||
\subsection{Specifying signal aspects}
|
||||
|
||||
By default, newly programmed routes show an aspect that comes closest
|
||||
to ``Proceed at maximum speed''. However, it can be desirable to
|
||||
change this behavior, like when the route passes a diverging turnout,
|
||||
the train should be signalled to drive slower, or the route is a shunt
|
||||
route and therefore only ``Shunting allowed'' should be shown.
|
||||
|
||||
This is the purpose of the ``Change Aspect'' button in the route
|
||||
info screen.
|
||||
|
||||
Signal aspects in advtrains consist of 4 sections: main (Information
|
||||
for train moves), dst (Distant signal information, not implemented
|
||||
yet), shunt (Information for shunt moves) and info (additional information,
|
||||
currently not in use).
|
||||
\begin{itemize}
|
||||
\item Train may proceed as train move at maximum speed: ``main: free, speed
|
||||
-1''
|
||||
\item Train may proceed as train move at speed of 8: ``main: free, speed
|
||||
8''
|
||||
\item Train may proceed as shunt move: ``shunt: free''
|
||||
\end{itemize}
|
||||
There's a field in the ``shunt'' part of signal aspects that is
|
||||
not displayed in the GUI, but is of potential interest to developers
|
||||
of signal addons: shunt.proceed\_as\_main.
|
||||
\begin{itemize}
|
||||
\item A train move can always become a shunt move by passing a signal that
|
||||
shows ``Halt for train moves, shunting permitted''
|
||||
\item A shunt move can only pass a signal saying ``Proceed as train move,
|
||||
shunting not permitted'' when proceed\_as\_main is true.
|
||||
\end{itemize}
|
||||
The property is used by the Limit Of Shunt sign, where proceed\_as\_main
|
||||
is set to false. Shunt moves have to stop in front of it, while train
|
||||
moves are signalled ``Proceed''. Regular main signals that show
|
||||
``green'' have the field set to true, so that all trains can pass
|
||||
it.
|
||||
|
||||
\section{Interlocking system operation}
|
||||
|
||||
Setting up the interlocking for a portion of a railway network requires
|
||||
some time, experience and planning, but once done, there's not much
|
||||
to do anymore to make trains run on your, now safer, railway. This
|
||||
section covers some useful practices to route trains across your network.
|
||||
|
||||
At the moment, routes can either be set by clicking the signal or
|
||||
via LuaATC, or by using the ``Remote Routesetting'' button from
|
||||
the Onboard Computer. It is planned to control this via a ``signal
|
||||
box'' view based on the currently broken itrainmap.
|
||||
|
||||
\subsection{Train Safety System}
|
||||
|
||||
The Train Safety System, called ``LZB'' in the code (from the german
|
||||
term Linienzugbeeinflussung, although this is a completely different
|
||||
system), ensures that trains obey any restrictions imposed by signals
|
||||
when influence points are set. This way, it is not possible to pass
|
||||
signals at danger or to bypass speed restrictions.
|
||||
|
||||
It is possible to overrun red signals, if a route is cancelled while
|
||||
a train is approaching. Real interlocking systems use a mechanism
|
||||
called Approach locking for this, however, as of now, there's no similar
|
||||
system in this mod. If a red signal is overrun, the train brakes using
|
||||
emergency brake (``BB'') and can not be moved any further. You should
|
||||
then examine the situation and drive the train backwards out of the
|
||||
section.
|
||||
|
||||
\subsection{Simple route setting and cancelling}
|
||||
|
||||
To set a route, simply right-click the signal, select a route and
|
||||
click ``set route''. If there are no conflicts, the signal turns
|
||||
green and the train is allowed to proceed.
|
||||
|
||||
It may be possible that the route can not be set, because one or more
|
||||
other routes conflict with the current one, or a section is blocked.
|
||||
In this case, the signal stays red, and the conflicting item is shown
|
||||
in the formspec. As soon as the conflict is resolved (by cancellation
|
||||
or release of the conflicting route, or the section becoming free),
|
||||
the requested route will be set and the signal turns green.
|
||||
|
||||
If a route is either requested or set, it can be cancelled from the
|
||||
signalling formspec. This means that all turnouts and sections are
|
||||
released, and the signal reverts back to red. This of course only
|
||||
works when the train has not passed the signal yet. There is no mechanism
|
||||
for Approach Locking.
|
||||
|
||||
\subsection{Automatic Working}
|
||||
|
||||
Block signals on main running lines usually only have a single route
|
||||
to set, the one proceeding along the main line. Their purpose is only
|
||||
to show whether there are trains in the next section. So, it would
|
||||
be convenient if this only route would set itself again after a train
|
||||
passed.
|
||||
|
||||
This is what Automatic Working is for. Set a route, click ``Enable
|
||||
Automatic Working'', and as soon as a train passes, the route is
|
||||
automatically re-set.
|
||||
|
||||
This function is nearly identical to SimSig automatic signals. It
|
||||
can also be useful on a line with high traffic, when there's a low-frequented
|
||||
access to a siding. You'd enable automatic working for the main route
|
||||
and cancel it only when you need a train to go into the siding.
|
||||
|
||||
\subsection{Automatic Route Setting (ARS)}
|
||||
|
||||
As interlocking systems evolved, the goal always was to offload work
|
||||
from the human to the system, automating things. Modern interlocking
|
||||
systems can automatically set routes based on a pre-programmed routing
|
||||
table for each particular train. Since one outstanding feature of
|
||||
Advtrains is it's high degree of automation, it has a similar system
|
||||
to automatically set routes for a train depending on certain parameters.
|
||||
|
||||
Every train in Advtrains has 2 internal properties that can be set
|
||||
through the Onboard Computer of every engine in the train, the ``Line''
|
||||
and the ``Routing Code''
|
||||
\begin{itemize}
|
||||
\item The ``Line'' property is supposed to distinguish trains of multiple
|
||||
lines that share a track.
|
||||
\item The ``Routing Code'' property is supposed to tell the target of
|
||||
a train or which route it should take to reach the target
|
||||
\end{itemize}
|
||||
Examples:
|
||||
|
||||
\includegraphics{11_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_arslin_ex1.png}
|
||||
|
||||
Both lines share the section between Blackbirdshire and Parktown.
|
||||
To divert them again, they can save their line number in the ``Line''
|
||||
field.
|
||||
|
||||
\includegraphics{12_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_arslin_ex2.png}
|
||||
|
||||
Some trains should go to B, some to C, the direction can be set with
|
||||
a routing code.
|
||||
|
||||
One single routing code should not contain spaces. You can set multiple
|
||||
routing codes by just separating them with spaces in the Routing Code
|
||||
field. So, ``Stn Ori'' would be matched by ARS rules either containing
|
||||
``Stn'' or ``Ori''. This does not work for lines.
|
||||
|
||||
\subsubsection{Writing ARS Rules}
|
||||
|
||||
Every route of every signal can be given a set of ARS rules. A single
|
||||
ARS rule can either match a line or a routing code (combinations,
|
||||
e.g. and's, are not yet supported). The first rule in the first route
|
||||
that matches any of the properties of the train is selected, and that
|
||||
route is set for the train.
|
||||
|
||||
\includegraphics{13_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_ars_ex1.png}
|
||||
|
||||
You can add an asterisk (``{*}'') to the ARS rules of one route.
|
||||
That route then becomes the default route.
|
||||
|
||||
If no explicit ARS rule matches the train, then the default route
|
||||
is chosen and set. If there is no default route, nothing happens and
|
||||
the signal remains red.
|
||||
|
||||
\subsubsection{Using ARS}
|
||||
|
||||
In contrast to Automatic working, where the route is re-set immediately
|
||||
after the train passed, ARS sets the route only when the train approaches
|
||||
the signal, e.g. is just about to start braking in front of it.
|
||||
|
||||
At any place where one of the following things take place, you should
|
||||
use the ARS system in favor of Automatic Working:
|
||||
\begin{itemize}
|
||||
\item A main line diverts into 2 or more lines: Using ARS, you can direct
|
||||
the trains along the line where they should go
|
||||
\item Two or more main lines join into one: You cannot use automatic working
|
||||
here, because all routes are tried to be set at the same time and
|
||||
it is a matter of luck which one ``wins''. In a bad situation, you
|
||||
have a train coming from A, but it cannot proceed because Signal B
|
||||
has won the ``route race'' into the shared section, even if there's
|
||||
no train coming from B. Using ARS, by just specifying the ``default
|
||||
route'' by a {*}, the inward route is only set when a train approaches.
|
||||
\item Complex intersections, which are probably a combination of the above
|
||||
two
|
||||
\item sometimes-used branching tracks on which only certain trains (with
|
||||
certain routing code or line) should head off, like the entrance to
|
||||
a factory where only one specific goods train should drive in.
|
||||
\end{itemize}
|
||||
In the route overview, you can see some information on the ARS settings:
|
||||
All routes that have ARS rules are highlighted red, the ``default
|
||||
route'' is highlighted green.
|
||||
|
||||
ARS does not affect signals which already have a route set, and signals
|
||||
which are operating under ``Automatic Working''.
|
||||
|
||||
\section{Final notes}
|
||||
|
||||
The interlocking system is mainly finished, though there are still
|
||||
some plans and ideas. They include:
|
||||
\begin{itemize}
|
||||
\item Signalbox panels, as revival of itrainmap
|
||||
\item Distant signals
|
||||
\item On-Train head-up display for oncoming signals (they have something
|
||||
like this in Czech Republic, I forgot how it's called.)
|
||||
\end{itemize}
|
||||
Apart from this, there's the large oncoming project of a new timetable-based
|
||||
train automation system, but this will take some time to evolve and
|
||||
is out of the scope of this document.
|
||||
|
||||
If you have any suggestions, corrections, improvements, criticism
|
||||
or cute kittens and stuff, you can always contact me by various means
|
||||
(Forum PM, E-Mail (orwell@bleipb.de), Linuxworks server chat a.s.o.).
|
||||
Have fun!
|
||||
|
||||
- orwell
|
||||
\end{document}
|
@ -1,7 +0,0 @@
|
||||
1179085530 1539633834 /tmp/lyx_tmpdir.rkwTfVUz2649/lyx_tmpbuf0/interlocking.tex
|
||||
3359239522 1492297155 /usr/share/texlive/texmf-dist/tex/latex/base/fontenc.sty
|
||||
3238294924 1480098821 /usr/share/texlive/texmf-dist/tex/latex/base/size10.clo
|
||||
3164737843 1492297155 /usr/share/texlive/texmf-dist/tex/latex/base/t1enc.def
|
||||
712237411 1480098836 /usr/share/texlive/texmf-dist/tex/latex/paper/paper.cls
|
||||
2377097700 1256929440 /usr/share/texmf/tex/latex/lm/ot1lmr.fd
|
||||
661117479 1256929440 /usr/share/texmf/tex/latex/lm/t1lmr.fd
|
@ -1,57 +0,0 @@
|
||||
705793250 1535390202 /home/moritz/.texlive2017/texmf-var/fonts/pk/ljfour/jknappen/ec/ecbx1000.600pk
|
||||
1687523072 1536659294 /home/moritz/.texlive2017/texmf-var/fonts/pk/ljfour/jknappen/ec/ecrm0900.600pk
|
||||
4048883546 1535390203 /home/moritz/.texlive2017/texmf-var/fonts/pk/ljfour/jknappen/ec/ecrm1000.600pk
|
||||
3344031364 1536659294 /home/moritz/.texlive2017/texmf-var/fonts/pk/ljfour/jknappen/ec/ecss0900.600pk
|
||||
3448209989 1536659293 /home/moritz/.texlive2017/texmf-var/fonts/pk/ljfour/jknappen/ec/ecsx1000.600pk
|
||||
1128057700 1536659294 /home/moritz/.texlive2017/texmf-var/fonts/pk/ljfour/jknappen/ec/ecsx1200.600pk
|
||||
3518449051 1536659295 /home/moritz/.texlive2017/texmf-var/fonts/pk/ljfour/jknappen/ec/ecsx1728.600pk
|
||||
2083572688 0 /tmp/lyx_tmpdir.RZQWWIUz3517/lyx_tmpbuf0/0_home_moritz_Home_Projekte_Minetest_minetest_m___s_assets_lyx_img_screenshot_20180830_142551.png
|
||||
1551666653 0 /tmp/lyx_tmpdir.RZQWWIUz3517/lyx_tmpbuf0/10_home_moritz_Home_Projekte_Minetest_minetest_____lyx_img_Bildschirmfoto_2019-01-15_19-28-09.png
|
||||
2968881962 0 /tmp/lyx_tmpdir.RZQWWIUz3517/lyx_tmpbuf0/11_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_arslin_ex1.png
|
||||
953715842 0 /tmp/lyx_tmpdir.RZQWWIUz3517/lyx_tmpbuf0/12_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_arslin_ex2.png
|
||||
873631604 0 /tmp/lyx_tmpdir.RZQWWIUz3517/lyx_tmpbuf0/13_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_ars_ex1.png
|
||||
3163851185 0 /tmp/lyx_tmpdir.RZQWWIUz3517/lyx_tmpbuf0/1_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-26-35.png
|
||||
3946952010 0 /tmp/lyx_tmpdir.RZQWWIUz3517/lyx_tmpbuf0/2_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-32-48.png
|
||||
1282794055 0 /tmp/lyx_tmpdir.RZQWWIUz3517/lyx_tmpbuf0/3_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-27-25.png
|
||||
2081046434 0 /tmp/lyx_tmpdir.RZQWWIUz3517/lyx_tmpbuf0/4_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-28-32.png
|
||||
437805775 0 /tmp/lyx_tmpdir.RZQWWIUz3517/lyx_tmpbuf0/5_home_moritz_Home_Projekte_Minetest_minetest_m____lyx_img_Bildschirmfoto_2018-08-30_14-51-25.png
|
||||
1859874562 0 /tmp/lyx_tmpdir.RZQWWIUz3517/lyx_tmpbuf0/6_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_route_ex1.png
|
||||
2936847921 0 /tmp/lyx_tmpdir.RZQWWIUz3517/lyx_tmpbuf0/7_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_route_ex2.png
|
||||
4200189852 0 /tmp/lyx_tmpdir.RZQWWIUz3517/lyx_tmpbuf0/8_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_assign_signal.png
|
||||
674084759 0 /tmp/lyx_tmpdir.RZQWWIUz3517/lyx_tmpbuf0/9_home_moritz_Home_Projekte_Minetest_minetest_mods_advtrains_assets_lyx_img_route_ex3.png
|
||||
2812755771 1547582062 /tmp/lyx_tmpdir.RZQWWIUz3517/lyx_tmpbuf0/interlocking.tex
|
||||
3180002928 1480098733 /usr/share/texlive/texmf-dist/fonts/type1/public/amsfonts/cm/cmsy10.pfb
|
||||
2483225172 1480098806 /usr/share/texlive/texmf-dist/tex/context/base/mkii/supp-pdf.mkii
|
||||
1629800494 1496785618 /usr/share/texlive/texmf-dist/tex/generic/babel-english/english.ldf
|
||||
982861076 1518644053 /usr/share/texlive/texmf-dist/tex/generic/babel/babel.def
|
||||
2545392670 1518644053 /usr/share/texlive/texmf-dist/tex/generic/babel/babel.sty
|
||||
105161961 1518644053 /usr/share/texlive/texmf-dist/tex/generic/babel/switch.def
|
||||
2237033387 1518644053 /usr/share/texlive/texmf-dist/tex/generic/babel/txtbabel.def
|
||||
340064178 1480098815 /usr/share/texlive/texmf-dist/tex/generic/ifxetex/ifxetex.sty
|
||||
610376126 1480098815 /usr/share/texlive/texmf-dist/tex/generic/oberdiek/etexcmds.sty
|
||||
1902548649 1480098815 /usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifluatex.sty
|
||||
1052579112 1490564930 /usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifpdf.sty
|
||||
437048305 1480098815 /usr/share/texlive/texmf-dist/tex/generic/oberdiek/ifvtex.sty
|
||||
960054333 1480098815 /usr/share/texlive/texmf-dist/tex/generic/oberdiek/infwarerr.sty
|
||||
409280369 1480098815 /usr/share/texlive/texmf-dist/tex/generic/oberdiek/kvdefinekeys.sty
|
||||
871910792 1480098815 /usr/share/texlive/texmf-dist/tex/generic/oberdiek/kvsetkeys.sty
|
||||
2567467016 1480098815 /usr/share/texlive/texmf-dist/tex/generic/oberdiek/ltxcmds.sty
|
||||
4103748996 1517006633 /usr/share/texlive/texmf-dist/tex/generic/oberdiek/pdftexcmds.sty
|
||||
3359239522 1492297155 /usr/share/texlive/texmf-dist/tex/latex/base/fontenc.sty
|
||||
761296675 1480098821 /usr/share/texlive/texmf-dist/tex/latex/base/inputenc.sty
|
||||
3929707912 1480098821 /usr/share/texlive/texmf-dist/tex/latex/base/latin9.def
|
||||
3238294924 1480098821 /usr/share/texlive/texmf-dist/tex/latex/base/size10.clo
|
||||
380232544 1480098821 /usr/share/texlive/texmf-dist/tex/latex/base/t1cmss.fd
|
||||
3164737843 1492297155 /usr/share/texlive/texmf-dist/tex/latex/base/t1enc.def
|
||||
2603123796 1480098829 /usr/share/texlive/texmf-dist/tex/latex/geometry/geometry.sty
|
||||
1212982396 1480098830 /usr/share/texlive/texmf-dist/tex/latex/graphics-cfg/graphics.cfg
|
||||
2865791710 1515537368 /usr/share/texlive/texmf-dist/tex/latex/graphics-def/pdftex.def
|
||||
422786180 1498427532 /usr/share/texlive/texmf-dist/tex/latex/graphics/graphics.sty
|
||||
3371385264 1498427532 /usr/share/texlive/texmf-dist/tex/latex/graphics/graphicx.sty
|
||||
4097419011 1480098830 /usr/share/texlive/texmf-dist/tex/latex/graphics/keyval.sty
|
||||
1051994689 1480098830 /usr/share/texlive/texmf-dist/tex/latex/graphics/trig.sty
|
||||
1239917799 1480098833 /usr/share/texlive/texmf-dist/tex/latex/latexconfig/epstopdf-sys.cfg
|
||||
2869318152 1480098836 /usr/share/texlive/texmf-dist/tex/latex/oberdiek/epstopdf-base.sty
|
||||
1966367522 1480098836 /usr/share/texlive/texmf-dist/tex/latex/oberdiek/grfext.sty
|
||||
2259528920 1480098836 /usr/share/texlive/texmf-dist/tex/latex/oberdiek/kvoptions.sty
|
||||
712237411 1480098836 /usr/share/texlive/texmf-dist/tex/latex/paper/paper.cls
|
@ -1,2 +0,0 @@
|
||||
|
||||
/* css.sty */
|
@ -1,73 +0,0 @@
|
||||
\:CrossWord{)F1F-}{interlocking.html}{1}%
|
||||
\:CrossWord{)M1x0}{;}{3}%
|
||||
\:CrossWord{)Qx1-2r1}{1}{3}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{3}%
|
||||
\:CrossWord{)Qx1-3r2}{1}{3}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{3}%
|
||||
\:CrossWord{)Qx1-4r1}{1}{4}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{4}%
|
||||
\:CrossWord{)Qx1-6x1}{1}{4}%
|
||||
\:CrossWord{)Qx1-8x2}{1}{4}%
|
||||
\:CrossWord{)Qx1-10x3}{1}{4}%
|
||||
\:CrossWord{)Qx1-12x1}{1}{4}%
|
||||
\:CrossWord{)Qx1-14x2}{1}{4}%
|
||||
\:CrossWord{)Qx1-16x3}{1}{4}%
|
||||
\:CrossWord{)Qx1-17r2}{1}{5}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{5}%
|
||||
\:CrossWord{)Qx1-18r1}{1}{5}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{5}%
|
||||
\:CrossWord{)Qx1-20x1}{1}{5}%
|
||||
\:CrossWord{)Qx1-22x2}{1}{5}%
|
||||
\:CrossWord{)Qx1-24x3}{1}{5}%
|
||||
\:CrossWord{)Qx1-26x4}{1}{5}%
|
||||
\:CrossWord{)Qx1-27r2}{1}{5}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{5}%
|
||||
\:CrossWord{)Qx1-28r3}{1}{5}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{6}%
|
||||
\:CrossWord{)Qx1-29r4}{1}{6}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{6}%
|
||||
\:CrossWord{)Qx1-30r3}{1}{6}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{6}%
|
||||
\:CrossWord{)Qx1-31r3}{1}{6}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{6}%
|
||||
\:CrossWord{)Qx1-32r1}{1}{7}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{7}%
|
||||
\:CrossWord{)Qx1-33r2}{1}{7}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{7}%
|
||||
\:CrossWord{)Qx1-34r3}{1}{8}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{8}%
|
||||
\:CrossWord{)Qx1-35r4}{1}{8}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{8}%
|
||||
\:CrossWord{)Qx1-36r5}{1}{9}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{9}%
|
||||
\:CrossWord{)Qx1-38x1}{1}{9}%
|
||||
\:CrossWord{)Qx1-40x2}{1}{9}%
|
||||
\:CrossWord{)Qx1-42x3}{1}{9}%
|
||||
\:CrossWord{)Qx1-44x4}{1}{9}%
|
||||
\:CrossWord{)Qx1-46x5}{1}{9}%
|
||||
\:CrossWord{)Qx1-47r6}{1}{9}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{9}%
|
||||
\:CrossWord{)Qx1-48r7}{1}{10}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{10}%
|
||||
\:CrossWord{)Qx1-49r8}{1}{10}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{10}%
|
||||
\:CrossWord{)Qx1-50r9}{1}{11}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{11}%
|
||||
\:CrossWord{)Qx1-51r10}{1}{11}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{11}%
|
||||
\:CrossWord{)Qx1-52r4}{1}{12}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{12}%
|
||||
\:CrossWord{)Qx1-53r1}{1}{12}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{12}%
|
||||
\:CrossWord{)Qx1-54r2}{1}{12}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{12}%
|
||||
\:CrossWord{)Qx1-55r3}{1}{13}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{13}%
|
||||
\:CrossWord{)Qx1-56r4}{1}{13}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{13}%
|
||||
\:CrossWord{)Qx1-57r1}{1}{13}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{13}%
|
||||
\:CrossWord{)Qx1-58r2}{1}{14}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{14}%
|
||||
\:CrossWord{)Qx1-59r5}{1}{14}%
|
||||
\:CrossWord{)QQ1-1-0}{1}{14}%
|
Before Width: | Height: | Size: 7.8 KiB |
Before Width: | Height: | Size: 11 KiB |
Before Width: | Height: | Size: 2.3 KiB |
Before Width: | Height: | Size: 2.0 KiB |
Before Width: | Height: | Size: 3.1 KiB |
Before Width: | Height: | Size: 3.4 KiB |
Before Width: | Height: | Size: 1.6 KiB |
Before Width: | Height: | Size: 18 KiB |
Before Width: | Height: | Size: 80 KiB |
Before Width: | Height: | Size: 52 KiB |
Before Width: | Height: | Size: 65 KiB |
Before Width: | Height: | Size: 66 KiB |
Before Width: | Height: | Size: 63 KiB |
Before Width: | Height: | Size: 1.5 KiB |
Before Width: | Height: | Size: 76 KiB |
Before Width: | Height: | Size: 75 KiB |
Before Width: | Height: | Size: 90 KiB |
Before Width: | Height: | Size: 13 KiB |
@ -1,112 +0,0 @@
|
||||
|
||||
/* start css.sty */
|
||||
.ecsx-1728{font-size:170%; font-weight: bold;}
|
||||
.ecsx-1728{ font-weight: bold;}
|
||||
.ecsx-1728{ font-weight: bold;}
|
||||
.ecsx-1728{ font-weight: bold;}
|
||||
.ecsx-1728{ font-weight: bold;}
|
||||
.ecsx-1200{font-size:120%; font-weight: bold;}
|
||||
.ecsx-1200{ font-weight: bold;}
|
||||
.ecsx-1200{ font-weight: bold;}
|
||||
.ecsx-1200{ font-weight: bold;}
|
||||
.ecsx-1200{ font-weight: bold;}
|
||||
.ectt-1000{ font-family: monospace;}
|
||||
.ectt-1000{ font-family: monospace;}
|
||||
.ectt-1000{ font-family: monospace;}
|
||||
.ectt-1000{ font-family: monospace;}
|
||||
.ectt-1000{ font-family: monospace;}
|
||||
.ecsx-1000{ font-weight: bold;}
|
||||
.ecsx-1000{ font-weight: bold;}
|
||||
.ecsx-1000{ font-weight: bold;}
|
||||
.ecsx-1000{ font-weight: bold;}
|
||||
.ecsx-1000{ font-weight: bold;}
|
||||
p.noindent { text-indent: 0em }
|
||||
td p.noindent { text-indent: 0em; margin-top:0em; }
|
||||
p.nopar { text-indent: 0em; }
|
||||
p.indent{ text-indent: 1.5em }
|
||||
@media print {div.crosslinks {visibility:hidden;}}
|
||||
a img { border-top: 0; border-left: 0; border-right: 0; }
|
||||
center { margin-top:1em; margin-bottom:1em; }
|
||||
td center { margin-top:0em; margin-bottom:0em; }
|
||||
.Canvas { position:relative; }
|
||||
img.math{vertical-align:middle;}
|
||||
li p.indent { text-indent: 0em }
|
||||
li p:first-child{ margin-top:0em; }
|
||||
li p:last-child, li div:last-child { margin-bottom:0.5em; }
|
||||
li p~ul:last-child, li p~ol:last-child{ margin-bottom:0.5em; }
|
||||
.enumerate1 {list-style-type:decimal;}
|
||||
.enumerate2 {list-style-type:lower-alpha;}
|
||||
.enumerate3 {list-style-type:lower-roman;}
|
||||
.enumerate4 {list-style-type:upper-alpha;}
|
||||
div.newtheorem { margin-bottom: 2em; margin-top: 2em;}
|
||||
.obeylines-h,.obeylines-v {white-space: nowrap; }
|
||||
div.obeylines-v p { margin-top:0; margin-bottom:0; }
|
||||
.overline{ text-decoration:overline; }
|
||||
.overline img{ border-top: 1px solid black; }
|
||||
td.displaylines {text-align:center; white-space:nowrap;}
|
||||
.centerline {text-align:center;}
|
||||
.rightline {text-align:right;}
|
||||
div.verbatim {font-family: monospace; white-space: nowrap; text-align:left; clear:both; }
|
||||
.fbox {padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; }
|
||||
div.fbox {display:table}
|
||||
div.center div.fbox {text-align:center; clear:both; padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; }
|
||||
div.minipage{width:100%;}
|
||||
div.center, div.center div.center {text-align: center; margin-left:1em; margin-right:1em;}
|
||||
div.center div {text-align: left;}
|
||||
div.flushright, div.flushright div.flushright {text-align: right;}
|
||||
div.flushright div {text-align: left;}
|
||||
div.flushleft {text-align: left;}
|
||||
.underline{ text-decoration:underline; }
|
||||
.underline img{ border-bottom: 1px solid black; margin-bottom:1pt; }
|
||||
.framebox-c, .framebox-l, .framebox-r { padding-left:3.0pt; padding-right:3.0pt; text-indent:0pt; border:solid black 0.4pt; }
|
||||
.framebox-c {text-align:center;}
|
||||
.framebox-l {text-align:left;}
|
||||
.framebox-r {text-align:right;}
|
||||
span.thank-mark{ vertical-align: super }
|
||||
span.footnote-mark sup.textsuperscript, span.footnote-mark a sup.textsuperscript{ font-size:80%; }
|
||||
div.tabular, div.center div.tabular {text-align: center; margin-top:0.5em; margin-bottom:0.5em; }
|
||||
table.tabular td p{margin-top:0em;}
|
||||
table.tabular {margin-left: auto; margin-right: auto;}
|
||||
td p:first-child{ margin-top:0em; }
|
||||
td p:last-child{ margin-bottom:0em; }
|
||||
div.td00{ margin-left:0pt; margin-right:0pt; }
|
||||
div.td01{ margin-left:0pt; margin-right:5pt; }
|
||||
div.td10{ margin-left:5pt; margin-right:0pt; }
|
||||
div.td11{ margin-left:5pt; margin-right:5pt; }
|
||||
table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; }
|
||||
td.td00{ padding-left:0pt; padding-right:0pt; }
|
||||
td.td01{ padding-left:0pt; padding-right:5pt; }
|
||||
td.td10{ padding-left:5pt; padding-right:0pt; }
|
||||
td.td11{ padding-left:5pt; padding-right:5pt; }
|
||||
table[rules] {border-left:solid black 0.4pt; border-right:solid black 0.4pt; }
|
||||
.hline hr, .cline hr{ height : 1px; margin:0px; }
|
||||
.tabbing-right {text-align:right;}
|
||||
span.TEX {letter-spacing: -0.125em; }
|
||||
span.TEX span.E{ position:relative;top:0.5ex;left:-0.0417em;}
|
||||
a span.TEX span.E {text-decoration: none; }
|
||||
span.LATEX span.A{ position:relative; top:-0.5ex; left:-0.4em; font-size:85%;}
|
||||
span.LATEX span.TEX{ position:relative; left: -0.4em; }
|
||||
div.float, div.figure {margin-left: auto; margin-right: auto;}
|
||||
div.float img {text-align:center;}
|
||||
div.figure img {text-align:center;}
|
||||
.marginpar {width:20%; float:right; text-align:left; margin-left:auto; margin-top:0.5em; font-size:85%; text-decoration:underline;}
|
||||
.marginpar p{margin-top:0.4em; margin-bottom:0.4em;}
|
||||
table.equation {width:100%;}
|
||||
.equation td{text-align:center; }
|
||||
td.equation { margin-top:1em; margin-bottom:1em; }
|
||||
td.equation-label { width:5%; text-align:center; }
|
||||
td.eqnarray4 { width:5%; white-space: normal; }
|
||||
td.eqnarray2 { width:5%; }
|
||||
table.eqnarray-star, table.eqnarray {width:100%;}
|
||||
div.eqnarray{text-align:center;}
|
||||
div.array {text-align:center;}
|
||||
div.pmatrix {text-align:center;}
|
||||
table.pmatrix {width:100%;}
|
||||
span.pmatrix img{vertical-align:middle;}
|
||||
div.pmatrix {text-align:center;}
|
||||
table.pmatrix {width:100%;}
|
||||
span.bar-css {text-decoration:overline;}
|
||||
img.cdots{vertical-align:middle;}
|
||||
.figure img.graphics {margin-left:10%;}
|
||||
/* end css.sty */
|
||||
|
@ -1,236 +0,0 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html >
|
||||
<head><title></title>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
|
||||
<meta name="generator" content="TeX4ht (http://www.tug.org/tex4ht/)">
|
||||
<meta name="originator" content="TeX4ht (http://www.tug.org/tex4ht/)">
|
||||
<!-- html -->
|
||||
<meta name="src" content="manual.tex">
|
||||
<link rel="stylesheet" type="text/css" href="manual.css">
|
||||
</head><body
|
||||
>
|
||||
<!--l. 15--><p class="noindent" ><span
|
||||
class="ecsx-1728">Advanced</span>
|
||||
<span
|
||||
class="ecsx-1728">Trains</span>
|
||||
<!--l. 17--><p class="indent" > This mod aims to provide realistic, good-looking and functional trains by introducing a revolutionary rail placement system. It
|
||||
features several wagons that can be coupled together.
|
||||
<!--l. 21--><p class="indent" > This mod is not finished. If you miss features, suggest them, but do not denounce this mod just because they are not yet implemented.
|
||||
They will be.
|
||||
<span
|
||||
class="ecsx-1200">Placing</span>
|
||||
<span
|
||||
class="ecsx-1200">Rails</span>
|
||||
<!--l. 27--><p class="noindent" >Minetest’s in-house rail system features rails that turn at an angle of 90 degrees – totally impractical for the use with realistic trains. So
|
||||
we have our own rails. Remember: Carts can’t drive on the rails provided by this mod, as do trains not drive on minetest’s default rails
|
||||
because of their different track widths.
|
||||
<!--l. 33--><p class="indent" > First, craft some rails.
|
||||
<!--l. 35--><p class="indent" > <img
|
||||
src="0_home_moritz_Home_Projekte_Minetest_minetest_m___nual_img_Bildschirmfoto_2016-09-17_09-43-29.png" alt="PIC"
|
||||
>
|
||||
<!--l. 37--><p class="indent" > Now, place one at any position and another one right next to it: you have made your first railway track!
|
||||
<!--l. 40--><p class="indent" > To learn how to make turns have a look at the following examples. A rail node has been placed only at the red-marked
|
||||
places.
|
||||
<!--l. 43--><p class="indent" > <img
|
||||
src="1_home_moritz_Home_Projekte_Minetest_minetest_m___nual_img_Bildschirmfoto_2016-09-17_10-04-12.png" alt="PIC"
|
||||
><img
|
||||
src="2_home_moritz_Home_Projekte_Minetest_minetest_m___nual_img_Bildschirmfoto_2016-09-17_10-04-57.png" alt="PIC"
|
||||
>
|
||||
<!--l. 45--><p class="indent" > <img
|
||||
src="3_home_moritz_Home_Projekte_Minetest_minetest_m___nual_img_Bildschirmfoto_2016-09-17_10-05-51.png" alt="PIC"
|
||||
><img
|
||||
src="4_home_moritz_Home_Projekte_Minetest_minetest_m___nual_img_Bildschirmfoto_2016-09-17_10-07-13.png" alt="PIC"
|
||||
>
|
||||
<!--l. 47--><p class="indent" > As shown in the illustrations above, the 30-degree angled rails use a knight’s move (2 ahead, 1 aside) for placement. For the rails to
|
||||
look realistic, I encourage you not to build turns that are too narrow. IMO the angles you can build with this are still way to narrow, but
|
||||
this is the best compromise I can find.
|
||||
<!--l. 53--><p class="indent" >
|
||||
<!--l. 53--><p class="noindent" ><span
|
||||
class="ecsx-1200">Switches</span>
|
||||
<!--l. 55--><p class="indent" > To create switches we need the trackworker tool. ATM it looks like a Doctor Who Sonic Screwdriver. Aside from turning rails into
|
||||
switches, it is also capable of rotating everything (rails, bumpers, signals) in this mod. Due to internal mechanics, nothing can be rotated
|
||||
using the default screwdriver.
|
||||
<!--l. 61--><p class="indent" > <img
|
||||
src="5_home_moritz_Home_Projekte_Minetest_minetest_m___nual_img_Bildschirmfoto_2016-09-17_09-56-34.png" alt="PIC"
|
||||
>
|
||||
<!--l. 63--><p class="indent" > Place some rails. Then left-click 1-2 times on one of these rails, until you see a switch. Use right-click to rotate it how you need it. You
|
||||
can change the switch direction by right-clicking the switch or by powering it with mesecons.
|
||||
<!--l. 68--><p class="indent" > Unfortunately tracks that are placed next to switches don’t always automatically connect to them. You need to correct manually
|
||||
using the Trackworker. One day I will implement proper handling for these. When you are finished it could look like
|
||||
this:
|
||||
<!--l. 73--><p class="indent" > <img
|
||||
src="6_home_moritz_Home_Projekte_Minetest_minetest_m___nual_img_Bildschirmfoto_2016-09-17_10-08-02.png" alt="PIC"
|
||||
>
|
||||
<!--l. 75--><p class="indent" >
|
||||
<!--l. 75--><p class="noindent" ><span
|
||||
class="ecsx-1200">Rail</span>
|
||||
<span
|
||||
class="ecsx-1200">crosses</span>
|
||||
<!--l. 77--><p class="indent" > There are no real cross-rail nodes. However you can create crossing rails by being creative and using the knight’s move or by placing
|
||||
opposing 45-degree rails.
|
||||
<!--l. 81--><p class="indent" > <img
|
||||
src="7_home_moritz_Home_Projekte_Minetest_minetest_m___nual_img_Bildschirmfoto_2016-09-17_10-09-01.png" alt="PIC"
|
||||
><img
|
||||
src="8_home_moritz_Home_Projekte_Minetest_minetest_m___nual_img_Bildschirmfoto_2016-09-17_10-10-15.png" alt="PIC"
|
||||
>
|
||||
<!--l. 83--><p class="indent" >
|
||||
<!--l. 83--><p class="noindent" ><span
|
||||
class="ecsx-1200">Height</span>
|
||||
<span
|
||||
class="ecsx-1200">differences</span>
|
||||
<!--l. 85--><p class="indent" > To master height differences you can craft slope nodes:
|
||||
<!--l. 87--><p class="indent" > <img
|
||||
src="9_home_moritz_Home_Projekte_Minetest_minetest_m___nual_img_Bildschirmfoto_2016-09-17_09-45-38.png" alt="PIC"
|
||||
>
|
||||
<!--l. 89--><p class="indent" > To place them, you have to prepare the base, then stand in the right direction and point to the slope start point, then place it. A slope
|
||||
will be constructed in the direction you are facing (45 degree steps) leaned against the next solid node. The right number of slopes is
|
||||
subtracted from the item stack if you are in survival.
|
||||
<!--l. 95--><p class="indent" >
|
||||
<!--l. 95--><p class="noindent" ><span
|
||||
class="ecsx-1200">Bumpers,</span>
|
||||
<span
|
||||
class="ecsx-1200">platforms,</span>
|
||||
<span
|
||||
class="ecsx-1200">signals</span>
|
||||
<span
|
||||
class="ecsx-1200">and</span>
|
||||
<span
|
||||
class="ecsx-1200">detector</span>
|
||||
<span
|
||||
class="ecsx-1200">rails</span>
|
||||
<!--l. 97--><p class="indent" > <img
|
||||
src="10_home_moritz_Home_Projekte_Minetest_minetest____nual_img_Bildschirmfoto_2016-09-17_09-48-54.png" alt="PIC"
|
||||
>
|
||||
<!--l. 99--><p class="indent" > Bumpers are objects that are usually placed at the end of a track to prevent trains rolling off it. After placed, they can be rotated
|
||||
using the Trackworker.
|
||||
<!--l. 103--><p class="indent" > <img
|
||||
src="11_home_moritz_Home_Projekte_Minetest_minetest____nual_img_Bildschirmfoto_2016-09-17_09-50-27.png" alt="PIC"
|
||||
><img
|
||||
src="12_home_moritz_Home_Projekte_Minetest_minetest____nual_img_Bildschirmfoto_2016-09-17_09-51-02.png" alt="PIC"
|
||||
>
|
||||
<!--l. 105--><p class="indent" > These are a regular analog signal and an electric signal. Like everything, you can rotate them using the Trackworker.
|
||||
Right-click or power with mesecons to signal trains that they can pass or have to stop. The signals do not have any effect on
|
||||
trains, they can only signal the driver. A more advanced signalling system (with distant signals/signal combinations) is
|
||||
planned.
|
||||
<!--l. 112--><p class="indent" > <img
|
||||
src="13_home_moritz_Home_Projekte_Minetest_minetest____nual_img_Bildschirmfoto_2016-09-17_09-58-39.png" alt="PIC"
|
||||
><img
|
||||
src="14_home_moritz_Home_Projekte_Minetest_minetest____nual_img_Bildschirmfoto_2016-09-17_09-58-20.png" alt="PIC"
|
||||
>
|
||||
<!--l. 114--><p class="indent" > These are some platform nodes. I suggest using the left one, it’s only half height and looks better. These nodes also have a sandstone
|
||||
variant, craft with sandstone bricks
|
||||
<!--l. 118--><p class="indent" > <img
|
||||
src="15_home_moritz_Home_Projekte_Minetest_minetest____nual_img_Bildschirmfoto_2017-03-09_11-33-09.png" alt="PIC"
|
||||
>
|
||||
<!--l. 120--><p class="indent" > These detector rails turn adjacent mesecons on when a train is standing/driving over them.
|
||||
<!--l. 123--><p class="indent" > Notice: Detector rails and bumpers currently aren’t aligned to the regular tracks. This will be fixed soon. Meanwhile, you need to
|
||||
rotate them manually.
|
||||
<!--l. 127--><p class="indent" >
|
||||
<!--l. 127--><p class="noindent" ><span
|
||||
class="ecsx-1200">Trains</span>
|
||||
<!--l. 129--><p class="indent" > There are some wagons included in this modpack, however community members (namely mbb and Andrey) have made some more wagons
|
||||
that can be downloaded and enabled separately. Visit the forum topic (<a
|
||||
href="https://forum.minetest.net/viewtopic.php?f=11&t=14726" class="url" ><span
|
||||
class="ectt-1000">https://forum.minetest.net/viewtopic.php?f=11&t=14726</span></a>)
|
||||
to download them.
|
||||
<!--l. 134--><p class="indent" > To see what’s included, look up in a craft guide or consult the creative mode inventory.
|
||||
<!--l. 137--><p class="indent" > To place wagons simply craft and click a track. To remove a wagon, punch it. Only the person who placed the wagon can do this. In
|
||||
survival if you destroy trains you get only some of your steel back, so you will be asked to confirm if you really want to destroy a
|
||||
wagon.
|
||||
<!--l. 142--><p class="indent" >
|
||||
<!--l. 142--><p class="noindent" ><span
|
||||
class="ecsx-1200">Driving</span>
|
||||
<span
|
||||
class="ecsx-1200">trains</span>
|
||||
<!--l. 144--><p class="indent" > Right-click any wagon to get on. This will attach you to the wagon and register you as passenger. Depending on how the wagon is set
|
||||
up, you are either in a passenger seat or inside a driver stand. Right-clicking again will show your possibilities on what you can do in/with
|
||||
the wagon.
|
||||
<!--l. 150--><p class="indent" > Example:
|
||||
<!--l. 152--><p class="indent" > <img
|
||||
src="16_home_moritz_Home_Projekte_Minetest_minetest____nual_img_Bildschirmfoto_2017-03-09_11-42-49.png" alt="PIC"
|
||||
>
|
||||
<!--l. 154--><p class="indent" > When entering a subway wagon, you are formally inside the passenger area. You can see this by the fact that there’s no head-up
|
||||
display. Right-clicking brings up this form.
|
||||
<!--l. 158--><p class="indent" > The first button will make you move to the Driver stand, so you can drive the train.
|
||||
<!--l. 161--><p class="indent" > The second button should say “Wagon properties” and appears only for the wagon owner. See “Wagon Properties”.
|
||||
<!--l. 164--><p class="indent" > The last button tells that the doors are closed, so you can’t get off at this time. If the doors are open or the wagon has no doors, this
|
||||
button says “Get off”.
|
||||
<!--l. 168--><p class="indent" > It is always possible to bypass closed doors and get off by holding the Sneak key and right-clicking the wagon or by
|
||||
holding Sneak and Use at the same time. Remember that this may result in your death when the train is travelling
|
||||
fast.
|
||||
<!--l. 173--><p class="indent" > The Japanese train and the Subway train support automatic getting on by just walking into the wagon. As soon as you stand on a
|
||||
platform and walk towards a door, you will automatically get on the wagon. On these, pressing W or S while inside the Passenger Area
|
||||
will also make you get off.
|
||||
<!--l. 179--><p class="indent" >
|
||||
<!--l. 179--><p class="noindent" ><span
|
||||
class="ecsx-1200">Train</span>
|
||||
<span
|
||||
class="ecsx-1200">controls</span>
|
||||
<!--l. 181--><p class="indent" > If you are inside a driver stand you are presented with a head-up display:
|
||||
<!--l. 184--><p class="indent" > The upper bar shows your current speed and the lower bar shows what speed you ordered the train to hold. Assuming you have the
|
||||
default controls (WASD, Shift for sneak, Space for jump), the following key bindings apply:
|
||||
<ul class="itemize1">
|
||||
<li class="itemize">W - faster
|
||||
</li>
|
||||
<li class="itemize">S - slower / change direction
|
||||
</li>
|
||||
<li class="itemize">A / D – open/close doors
|
||||
</li>
|
||||
<li class="itemize">Space: brake (shown by =B=, target speed will be decreased automatically)
|
||||
</li>
|
||||
<li class="itemize">Sneak+S: set speed to 0 (train rolls out, brake to stop!)
|
||||
</li>
|
||||
<li class="itemize">Sneak+W: Set full speed
|
||||
</li>
|
||||
<li class="itemize">Sneak+A: Set speed to 4 (~40km/h)
|
||||
</li>
|
||||
<li class="itemize">Sneak+D: Set speed to 8 (~100km/h)
|
||||
</li>
|
||||
<li class="itemize">Sneak+Space: toggle brake (the brake will not release when releasing the keys, shown by =^B=)</li></ul>
|
||||
<!--l. 201--><p class="indent" >
|
||||
<!--l. 201--><p class="noindent" ><span
|
||||
class="ecsx-1200">Coupling</span>
|
||||
<span
|
||||
class="ecsx-1200">wagons</span>
|
||||
<!--l. 203--><p class="indent" > You just learned how to drive an engine. Now place a wagon anywhere and drive your engine slowly towards that wagon. As soon as
|
||||
they collided your engine will stop. Now get off and right-click the green icon that appeared between the engine and the train. You have
|
||||
coupled the wagon to the engine.
|
||||
<!--l. 209--><p class="indent" > <img
|
||||
src="17_home_moritz_Home_Projekte_Minetest_minetest____ssets_manual_img_screenshot_20161203_231622.png" alt="PIC"
|
||||
>
|
||||
<!--l. 211--><p class="indent" > To discouple a wagon, punch the red icon between the wagons you want to discouple while the train is standing.
|
||||
<!--l. 214--><p class="indent" >
|
||||
<!--l. 214--><p class="noindent" ><span
|
||||
class="ecsx-1200">Automatic</span>
|
||||
<span
|
||||
class="ecsx-1200">Train</span>
|
||||
<span
|
||||
class="ecsx-1200">Control</span>
|
||||
<span
|
||||
class="ecsx-1200">(ATC)</span>
|
||||
<!--l. 216--><p class="indent" > ATC rails allow you to automate train operation. There are two types of ATC rails:
|
||||
<!--l. 219--><p class="indent" >
|
||||
<!--l. 219--><p class="noindent" ><span
|
||||
class="ecsx-1000">Regular</span>
|
||||
<span
|
||||
class="ecsx-1000">ATC</span>
|
||||
<!--l. 221--><p class="indent" > The ATC rail does not have a crafting recipe. When placed, you can set a command and it will be sent to any train driving over the
|
||||
controller.
|
||||
<!--l. 224--><p class="indent" > Only the static mode is implemented, changing the mode has no effect.
|
||||
<!--l. 226--><p class="indent" > For a detailed explanation how ATC commands work and their syntax see atc_command.txt
|
||||
<!--l. 229--><p class="indent" > Note: to rotate ATC rails, you need to bypass the formspec that is set for the node. To do this, hold Sneak when right-clicking the rail
|
||||
with the trackworker tool.
|
||||
<!--l. 233--><p class="indent" >
|
||||
<!--l. 233--><p class="noindent" ><span
|
||||
class="ecsx-1000">LUA</span>
|
||||
<span
|
||||
class="ecsx-1000">ATC</span>
|
||||
<!--l. 235--><p class="indent" > The LUA ATC suite is part of the mod advtrains_luaautomation. The LUA ATC components are quite similar to Mesecons
|
||||
Luacontrollers and allow to create all kinds of automation systems. This tool is not intended for beginners or regular players, but for
|
||||
server admins who wish to create a heavily automated subway system.
|
||||
<!--l. 241--><p class="indent" > More information on those can be found inside the mod directory of advtrains_luaautomation.
|
||||
</body></html>
|
||||
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
#LyX 2.2 created this file. For more info see http://www.lyx.org/
|
||||
\lyxformat 508
|
||||
#LyX 2.3 created this file. For more info see http://www.lyx.org/
|
||||
\lyxformat 544
|
||||
\begin_document
|
||||
\begin_header
|
||||
\save_transient_properties true
|
||||
@ -21,6 +21,8 @@
|
||||
\font_osf false
|
||||
\font_sf_scale 100 100
|
||||
\font_tt_scale 100 100
|
||||
\use_microtype false
|
||||
\use_dash_ligatures true
|
||||
\graphics default
|
||||
\default_output_format default
|
||||
\output_sync 0
|
||||
@ -50,6 +52,7 @@
|
||||
\suppress_date false
|
||||
\justification true
|
||||
\use_refstyle 1
|
||||
\use_minted 0
|
||||
\index Index
|
||||
\shortcut idx
|
||||
\color #008000
|
||||
@ -62,7 +65,10 @@
|
||||
\tocdepth 3
|
||||
\paragraph_separation indent
|
||||
\paragraph_indentation default
|
||||
\quotes_language english
|
||||
\is_math_indent 0
|
||||
\math_numbering_side default
|
||||
\quotes_style english
|
||||
\dynamic_quotes 0
|
||||
\papercolumns 1
|
||||
\papersides 1
|
||||
\paperpagestyle default
|
||||
@ -343,7 +349,7 @@ These are a regular analog signal and an electric signal.
|
||||
\begin_layout Standard
|
||||
These are some platform nodes.
|
||||
I suggest using the left one, it's only half height and looks better.
|
||||
These nodes also have a sandstone variant, craft with sandstone bricks
|
||||
These nodes also have a sandstone variant, craft with sandstone bricks.
|
||||
\end_layout
|
||||
|
||||
\begin_layout Standard
|
||||
@ -509,19 +515,23 @@ The upper bar shows your current speed and the lower bar shows what speed
|
||||
\end_layout
|
||||
|
||||
\begin_layout Itemize
|
||||
W - faster
|
||||
W: Accelerate
|
||||
\end_layout
|
||||
|
||||
\begin_layout Itemize
|
||||
S - slower / change direction
|
||||
S: Roll; change direction if the train is stopped
|
||||
\end_layout
|
||||
|
||||
\begin_layout Itemize
|
||||
A / D – open/close doors
|
||||
A: Close doors, if one is open; open the door at the left side, if closed
|
||||
\end_layout
|
||||
|
||||
\begin_layout Itemize
|
||||
Space: brake (shown by =B=, target speed will be decreased automatically)
|
||||
D: Close doors, if one is open; open the door at the right side, if closed
|
||||
\end_layout
|
||||
|
||||
\begin_layout Itemize
|
||||
Space: brake (shown by >B<, target speed will be decreased automatically)
|
||||
\end_layout
|
||||
|
||||
\begin_layout Itemize
|
||||
@ -533,16 +543,16 @@ Sneak+W: Set full speed
|
||||
\end_layout
|
||||
|
||||
\begin_layout Itemize
|
||||
Sneak+A: Set speed to 4 (~40km/h)
|
||||
Sneak+A: Set speed to 4 (14.4km/h)
|
||||
\end_layout
|
||||
|
||||
\begin_layout Itemize
|
||||
Sneak+D: Set speed to 8 (~100km/h)
|
||||
Sneak+D: Set speed to 8 (28.8km/h)
|
||||
\end_layout
|
||||
|
||||
\begin_layout Itemize
|
||||
Sneak+Space: toggle brake (the brake will not release when releasing the
|
||||
keys, shown by =^B=)
|
||||
keys, shown by >BB<)
|
||||
\end_layout
|
||||
|
||||
\begin_layout Subsection*
|
||||
|