eba72a50aca2758fcafc109515e01c2bbcd22093
[naja.git] / data / location_decks / introduction.yaml
1 description: "Introduction"
2 puzzle: true
3
4 # This field is ignored, but it's a useful place to put some action definitions
5 # we can reference later.
6 _action_definitions:
7   - &NULL-ACTION
8     action_class: 'DoNothing'
9     required_bits: []
10     data:
11       message: "Nothing to see here."
12
13   - &NULL-CARD
14     card_name: 'null'
15     actions:
16       - *NULL-ACTION
17
18   - &STEP1-ACTION
19     action_class: 'DoNothing'
20     required_bits: []
21     data:
22       message: "Welcome to the tutorial! You can select any tile, but only move {NORTH,SOUTH,EAST} or {WEST} if those bits are set — allowed tiles are chequered.\nRight now you can stay on this tile or move {EAST}.\nSelect {EAST} tile and press {RETURN}."
23
24   - &STEP1-CARD
25     card_name: 'step1'
26     actions:
27       - *STEP1-ACTION
28
29   - &STEP2-ACTION
30     action_class: 'SetBits'
31     required_bits: []
32     data:
33       message: "Moving to a tile requires picking an action. This tile has 2 actions. Both this tile's actions set bits on your robot, the {SOUTH} bit."
34
35   - &STEP2-ACTION-NULL
36     action_class: 'SetBits'
37     required_bits: []
38     data:
39       message: "This is the second choice."
40
41   - &STEP2-CARD
42     card_name: 'step2'
43     bits: [SOUTH]
44     actions:
45       - *STEP2-ACTION
46       - *STEP2-ACTION-NULL
47
48   - &STEP3-ACTION
49     action_class: 'ClearBits'
50     required_bits: []
51     data:
52       message: "Other tiles' actions clear bits. This will clear {SOUTH} or {EAST}.\nFor the next part of the tutorial, we are going to control your movement bits strictly, so you don't get lost."
53
54   - &STEP3-CARD-1
55     card_name: 'step3-1'
56     bits: [SOUTH, WEST]
57     actions:
58       - *STEP3-ACTION
59
60   - &STEP3-CARD-2
61     card_name: 'step3-2'
62     bits: [EAST]
63     actions:
64       - *STEP3-ACTION
65
66   - &STEP4-ACTION
67     action_class: 'SetBits'
68     required_bits: []
69     data:
70       message: "This action sets {EAST,SOUTH}."
71
72   - &STEP4-ACTION-GREEN
73     action_class: 'GainHealth'
74     required_bits: [GREEN]
75     data:
76       message: "Some actions require key bits to be set.\nIf you haven't got {GREEN} yet, this action is greyed out to show that you can't use it."
77
78   - &STEP4-CARD
79     card_name: 'step4'
80     bits: [RED, SOUTH, EAST]
81     actions:
82       - *STEP4-ACTION
83       - *STEP4-ACTION-GREEN
84
85   - &STEP5-ACTION-BLUE
86     action_class: 'GenericBits'
87     required_bits: [BLUE]
88     data:
89       message: "You need to have the {BLUE} bit to use this action and continue.\nSome actions have more complex requirements."
90       set: [EAST]
91       clear: [NORTH, SOUTH, WEST]
92
93   - &STEP5-ACTION-DEFAULT
94     action_class: 'GenericBits'
95     required_bits: []
96     data:
97       message: "Go back.\nSet {WEST}. Clear {NORTH,SOUTH,EAST}."
98       set: [WEST]
99       clear: [EAST, SOUTH, NORTH]
100
101   - &STEP5-CARD
102     card_name: 'step5'
103     bits: [NORTH, SOUTH, EAST, WEST]
104     actions:
105       - *STEP5-ACTION-BLUE
106       - *STEP5-ACTION-DEFAULT
107
108   - &STEP6-ACTION-RED
109     action_class: 'GenericBits'
110     required_bits: [RED]
111     data:
112       message: "You need to have the {RED} bit to use this action to set the {BLUE} bit."
113       set: [NORTH, BLUE]
114       clear: [SOUTH, EAST, WEST]
115
116   - &STEP6-ACTION-DEFAULT
117     action_class: 'GenericBits'
118     required_bits: []
119     data:
120       message: "This action doesn't require anything. Go back.\nSet {NORTH}. Clear {SOUTH,EAST,WEST}."
121       set: [NORTH]
122       clear: [SOUTH, EAST, WEST]
123
124   - &STEP6-CARD
125     card_name: 'step6'
126     bits: [NORTH, SOUTH, EAST, WEST, BLUE]
127     actions:
128       - *STEP6-ACTION-RED
129       - *STEP6-ACTION-DEFAULT
130
131   - &STEP7-ACTION
132     action_class: 'SetBits'
133     required_bits: []
134     data:
135       message: "Almost there. You have free rein in this column.\nFinish the game by collecting enough {WINTOKEN}: 1 in this level.\nGood luck!"
136
137   - &STEP7-CARD
138     card_name: 'step7'
139     bits: [NORTH, SOUTH]
140     actions:
141       - *STEP7-ACTION
142
143   - &STEP8-ACTION-DEFAULT
144     action_class: 'LoseHealthOrMSB'
145     required_bits: []
146     data:
147       message: "Losing health {HEALTH} is a bad idea..."
148
149   - &STEP8-ACTION-GREEN
150     action_class: 'SetBits'
151     required_bits: [BLUE, RED]
152
153   - &STEP8-CARD
154     card_name: 'step8'
155     bits: [GREEN]
156     actions:
157       - *STEP8-ACTION-DEFAULT
158       - *STEP8-ACTION-GREEN
159
160   - &STEP9-ACTION
161     action_class: 'ToggleBits'
162     required_bits: []
163     data:
164       message: "I wonder what the most significant bit {MSB} does..."
165
166   - &STEP9-CARD
167     card_name: 'step9'
168     bits: [MSB]
169     actions:
170       - *STEP9-ACTION
171
172   - &STEP10-ACTION
173     action_class: 'ShiftLocations'
174     required_bits: [GREEN]
175     data:
176       direction: EAST
177       message: "All of the actions on this tile require {GREEN}. Without it, you can't even enter.\nActions like this one change the game board."
178
179   - &STEP10-CARD
180     card_name: 'step10'
181     actions:
182       - *STEP10-ACTION
183
184   - &STEP11-ACTION
185     action_class: 'GenericBits'
186     required_bits: []
187     data:
188       message: "We may have lied about restricting you to this column.\nSet {WEST}. Clear {NORTH,SOUTH,EAST}."
189       set: [WEST]
190       clear: [NORTH, SOUTH, EAST]
191
192   - &STEP11-CARD
193     card_name: 'step11'
194     bits: [NORTH, SOUTH, EAST, WEST]
195     actions:
196       - *STEP11-ACTION
197
198   - &STEP12-ACTION
199     action_class: 'GenericBits'
200     required_bits: []
201     data:
202       message: "On this board, tiles don't change. In random games, after you take an action the tile will be replaced. Some tiles are also replaced when a timer expires.\nSet {NORTH}. Clear {SOUTH,EAST,WEST}."
203       set: [NORTH]
204       clear: [SOUTH, EAST, WEST]
205
206   - &STEP12-CARD
207     card_name: 'step12'
208     bits: [NORTH, SOUTH, EAST, WEST]
209     actions:
210       - *STEP12-ACTION
211
212   - &STEP13-ACTION
213     action_class: 'GenericBits'
214     required_bits: []
215     data:
216       set: [EAST, NORTH, SOUTH]
217       clear: [WEST]
218
219   - &STEP13-CARD
220     card_name: 'step13'
221     bits: [EAST, NORTH, SOUTH, WEST]
222     actions:
223       - *STEP13-ACTION
224
225   - &WIN-ACTION
226     action_class: 'AcquireWinToken'
227     required_bits: [RED, GREEN, BLUE]
228
229   - &WIN-CARD
230     card_name: 'win'
231     actions:
232       - *WIN-ACTION
233
234 cards:
235   - *STEP1-CARD
236   - *STEP2-CARD
237   - *STEP3-CARD-2
238   - *NULL-CARD
239   - *STEP8-CARD
240
241   - *NULL-CARD
242   - *STEP3-CARD-1
243   - *STEP4-CARD
244   - *STEP5-CARD
245   - *STEP7-CARD
246
247   - *NULL-CARD
248   - *NULL-CARD
249   - *STEP6-CARD
250   - *NULL-CARD
251   - *STEP9-CARD
252
253   - *WIN-CARD
254   - *STEP13-CARD
255   - *STEP13-CARD
256   - *STEP13-CARD
257   - *STEP10-CARD
258
259   - *NULL-CARD
260   - *NULL-CARD
261   - *NULL-CARD
262   - *STEP12-CARD
263   - *STEP11-CARD
264
265 defaults:
266   initial_bits: 0x4
267   initial_pos: [0, 0]
268   max_health: 7
269   wins_required: 1