Don't destroy the castle if the troll doesn't reach it
[troll.git] / config / statement_en.html
1 <div class="statement-body">
2    <!-- GOAL --> 
3    <div class="statement-section statement-goal"> 
4      <h2> 
5        <span class="icon icon-goal">&nbsp;</span> 
6        <span>The Goal</span> 
7      </h2> 
8      <div class="statement-goal-content"> 
9        Don't get destroyed by the troll.
10      </div>
11    </div> 
12    <!-- RULES --> 
13    <div class="statement-section statement-rules"> 
14      <h2> 
15        <span class="icon icon-rules">&nbsp;</span> 
16        <span>Rules</span> 
17      </h2> 
18      <div class="statement-rules-content">
19        If you have stones, shoot <const>1</const> or more of them.
20        <br>
21        If you don't have stones, shoot <const>0</const> exactly.
22      </div>
23    </div>
24    <div class="statement-section statement-warning">
25      <h2>
26        <span class="icon icon-warning">&nbsp;</span>
27        <span>Rule Evolution</span>
28      </h2>
29      <div class="statement-warning-content">
30        The following ideas are still in flux, waiting for some
31        opinions.  Please drop a word on the
32        <a href="https://www.codingame.com/contribute/view/507070b7925f661e2d2835c14f950b9d157e">
33          contribution's page
34        </a>
35        or
36        <a href="https://forum.codingame.com/t/troll-vs-castles-brainstorm/184827?u=jbm">
37          on the forum
38        </a>
39        <ul>
40          <li>
41            Is it even worth publishing? can the problem be totally solved?
42          </li>
43          <li>
44            More maps? (a map is a {road length} × {initial stone count} pair)
45          </li>
46          <li>
47            Leagues? I could conceive the referee being permissive
48            (allow 0 stones thrown) in the first one, and then strict.
49          </li>
50          <li>
51            Fog of war? (see only troll position, not enemy throw/stones left)
52          </li>
53          <li>
54            <strong>variable</strong> for of war? (seeing enemy stones
55            is a boolean decided randomly as part of the map?
56          </li>
57          <li>
58            alternative fog of war? (seeing enemy stones only when
59            troll is close to us?)
60          </li>
61          <li>
62            Praise for my artistic skillz
63          </li>
64          <li>
65            Other remarks?
66          </li>
67        </ul>
68      </div>
69    </div>
70    <div class="statement-victory-conditions">
71      <div class="icon victory"></div>
72      <div class="blk">
73        <div class="title">Victory Condition</div>
74        <div class="text">Your opponent loses.</div>
75      </div>
76    </div>
77    <div class="statement-lose-conditions">
78      <div class="icon lose"></div>
79      <div class="blk">
80        <div class="title">Defeat Condition</div>
81        <ul>
82          <li>The troll reaches your castle.</li>
83          <li>When no player has stones left, the troll is closer to your castle.</li>
84        </ul>
85      </div>
86    </div>
87    <div class="statement-section statement-protocol">
88      <h2>
89        <span class="icon icon-protocol">&nbsp;</span>
90        <span>I/O Protocol</span>
91      </h2>
92      <div class="statement-protocol-content">
93        Just read the sample code.  You can figure this out.
94        <br>
95        You're currently allowed the default SDK timings.  I think it's
96        one second for the first turn and 50&nbsp;ms then, but don't
97        quote me on this.
98      </div>
99    </div>
100    <div class="statement-section statement-expertrules">
101      <h2>
102        <span class="icon icon-expertrules">&nbsp;</span>
103        <span>Maps</span>
104      </h2>
105      <div class="statement-expert-rules-content">
106        <p>
107          The following maps are currently available and randomly yet
108          extremely fairly (you wouldn't believe the effort that went
109          into this) chosen uniformly at random among the following:
110        </p>
111        <table>
112          <tr><th>Road length</th><th>Stones</th></tr>
113          <tr><td><const>6</const></td><td><const>15</const></td></tr>
114          <tr><td><const>6</const></td><td><const>30</const></td></tr>
115          <tr><td><const>14</const></td><td><const>30</const></td></tr>
116          <tr><td><const>14</const></td><td><const>50</const></td></tr>
117        </table>
118        <p>
119          As with anything in this <em>draft</em> statement, this
120          is <strong>subject to change without notice</strong>.  Why do
121          you think they're provided in the game input?
122        </p>
123      </div>
124    </div>
125    <div class="statement-section statement-protocol">
126      <h2>
127        <span class="icon icon-protocol">&nbsp;</span>
128        <span>Change Log</span>
129      </h2>
130      <ul>
131        <li>
132          Don't destroy the castle if the troll doesn't reach it.
133        </li>
134        <li>
135          Ensure proper troll movement direction in all cases of
136          cheating.
137        </li>
138        <li>
139          Fixed the road length fencepost non-issue.
140        </li>
141        <li>
142          Of course that game needed MSG functionality!
143        </li>
144        <li>
145          Enforce the one-stone rule.  (that also fixed the legacy
146          buh&mdash;sorry people!  I put an easter egg in exchange)
147        </li>
148        <li>
149          Cutesy defeat animations.
150        </li>
151        <li>
152          Distinct castle sprites!
153        </li>
154        <li>
155          Terminate game when there are no more stones in sight.
156        </li>
157        <li>
158          More pretty. (SRLSLY)
159        </li>
160        <li>
161          No more void maps. (root cause: Java <const>%</const> on a
162          negative seed)
163        </li>
164      </ul>
165    </div>
166    <div class="statement-story-background">
167      <div class="statement-story"
168           style="position: relative; min-height: min-content">
169        <div class="story-text">
170          <div style="text-align: center">
171            &ldquo;Trolls simply detest the very sight of dwarves (uncooked).&rdquo;
172          </div>
173          <div style="text-align: right">
174            &mdash;&nbsp;J.R.R. Tolkien, <i>The Hobbit</i>
175          </div>
176
177          <hr>
178
179          Based on an involuntary suggestion by
180          <span class="card" cg-codingamer-card-popup=""
181                userid="user.codingamer.userId">
182            <a class="pseudo"
183               href="/profile/dbfa96e0ac9b77a3db679628f27224ae8509333"
184               title="Zaap38">Zaap38</a>
185          </span>
186          on the #Fr channel.  The original appears to be by
187          <a href="http://andre.lovichi.free.fr/teaching/ea/2015-2016/cours/troll/Trolls_et_chateaux.pdf">
188            Romain Andr&eacute;-Lovichi
189          </a>.
190        </div>
191      </div>
192    </div>
193 </div>