Introduction level
[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 game. You can only move to chequered squares, therefore you can stay here or move right."
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. Some tiles' actions set bits on your robot. Such as the {SOUTH} bit."
34
35   - &STEP2-CARD
36     card_name: 'step2'
37     bits: [SOUTH]
38     actions:
39       - *STEP2-ACTION
40
41   - &STEP3-ACTION
42     action_class: 'ClearBits'
43     required_bits: []
44     data:
45       message: "Other tiles' actions clear bits. {SOUTH} or {EAST}. For the next part of the tutorial, we are  going to strictly control your movement bits."
46
47   - &STEP3-CARD-1
48     card_name: 'step3-1'
49     bits: [SOUTH, WEST]
50     actions:
51       - *STEP3-ACTION
52
53   - &STEP3-CARD-2
54     card_name: 'step3-2'
55     bits: [EAST]
56     actions:
57       - *STEP3-ACTION
58
59   - &STEP4-ACTION
60     action_class: 'SetBits'
61     required_bits: []
62     data:
63       message: "There are key bits that can be set, such as {RED}. They may be required by actions."
64
65   - &STEP4-CARD
66     card_name: 'step4'
67     bits: [RED, SOUTH, EAST]
68     actions:
69       - *STEP4-ACTION
70
71   - &STEP5-ACTION-BLUE
72     action_class: 'GenericBits'
73     required_bits: [BLUE]
74     data:
75       message: "You need to have the {BLUE} bit, to use this action and continue. Some actions have more complex requirements."
76       set: [EAST]
77       clear: [NORTH, SOUTH, WEST]
78
79   - &STEP5-ACTION-DEFAULT
80     action_class: 'GenericBits'
81     required_bits: []
82     data:
83       message: "Go back."
84       set: [WEST]
85       clear: [EAST, SOUTH, NORTH]
86
87   - &STEP5-CARD
88     card_name: 'step5'
89     bits: []
90     actions:
91       - *STEP5-ACTION-BLUE
92       - *STEP5-ACTION-DEFAULT
93
94   - &STEP6-ACTION-RED
95     action_class: 'GenericBits'
96     required_bits: [RED]
97     data:
98       message: "You need to have the {RED} bit, to use this action to set the {BLUE} bit."
99       set: [NORTH, BLUE]
100       clear: [SOUTH, EAST, WEST]
101
102   - &STEP6-ACTION-DEFAULT
103     action_class: 'GenericBits'
104     required_bits: []
105     data:
106       message: "This action doesn't require anything. Go back."
107       set: [NORTH]
108       clear: [SOUTH, EAST, WEST]
109
110   - &STEP6-CARD
111     card_name: 'step6'
112     bits: [BLUE]
113     actions:
114       - *STEP6-ACTION-RED
115       - *STEP6-ACTION-DEFAULT
116
117   - &STEP7-ACTION
118     action_class: 'SetBits'
119     required_bits: []
120     data:
121       message: "Almost there. You have free reign on this column. Collect yourself a win bit {WINTOKEN} to finish the level. Good luck!"
122
123   - &STEP7-CARD
124     card_name: 'step7'
125     bits: [NORTH, SOUTH]
126     actions:
127       - *STEP7-ACTION
128
129   - &STEP8-ACTION-DEFAULT
130     action_class: 'LoseHealthOrMSB'
131     required_bits: []
132     data:
133       message: "Losing health {HEALTH} is a bad idea..."
134
135   - &STEP8-ACTION-GREEN
136     action_class: 'SetBits'
137     required_bits: [BLUE, RED]
138
139   - &STEP8-CARD
140     card_name: 'step8'
141     bits: [GREEN]
142     actions:
143       - *STEP8-ACTION-DEFAULT
144       - *STEP8-ACTION-GREEN
145
146   - &STEP9-ACTION
147     action_class: 'ToggleBits'
148     required_bits: []
149     data:
150       message: "I wonder what the most significant bit {MSB} does..."
151
152   - &STEP9-CARD
153     card_name: 'step9'
154     bits: [MSB]
155     actions:
156       - *STEP9-ACTION
157
158   - &STEP10-ACTION
159     action_class: 'ShiftLocations'
160     required_bits: [GREEN]
161     data:
162       direction: EAST
163       message: "Some actions change the game board."
164
165   - &STEP10-CARD
166     card_name: 'step10'
167     actions:
168       - *STEP10-ACTION
169
170   - &STEP11-ACTION
171     action_class: 'GenericBits'
172     required_bits: []
173     data:
174       message: "We may have lied to you."
175       set: [WEST]
176       clear: [NORTH, SOUTH, EAST]
177
178   - &STEP11-CARD
179     card_name: 'step11'
180     actions:
181       - *STEP11-ACTION
182
183   - &STEP12-ACTION
184     action_class: 'GenericBits'
185     required_bits: []
186     data:
187       set: [NORTH]
188       clear: [SOUTH, EAST, WEST]
189
190   - &STEP12-CARD
191     card_name: 'step12'
192     actions:
193       - *STEP12-ACTION
194
195   - &STEP13-ACTION
196     action_class: 'GenericBits'
197     required_bits: []
198     data:
199       set: [EAST, NORTH, SOUTH]
200       clear: [WEST]
201
202   - &STEP13-CARD
203     card_name: 'step13'
204     actions:
205       - *STEP13-ACTION
206
207   - &WIN-ACTION
208     action_class: 'AcquireWinToken'
209     required_bits: [RED, GREEN, BLUE]
210
211   - &WIN-CARD
212     card_name: 'win'
213     actions:
214       - *WIN-ACTION
215
216 cards:
217   - *STEP1-CARD
218   - *STEP2-CARD
219   - *STEP3-CARD-2
220   - *NULL-CARD
221   - *STEP8-CARD
222
223   - *NULL-CARD
224   - *STEP3-CARD-1
225   - *STEP4-CARD
226   - *STEP5-CARD
227   - *STEP7-CARD
228
229   - *NULL-CARD
230   - *NULL-CARD
231   - *STEP6-CARD
232   - *NULL-CARD
233   - *STEP9-CARD
234
235   - *WIN-CARD
236   - *STEP13-CARD
237   - *STEP13-CARD
238   - *STEP13-CARD
239   - *STEP10-CARD
240
241   - *NULL-CARD
242   - *NULL-CARD
243   - *NULL-CARD
244   - *STEP12-CARD
245   - *STEP11-CARD
246
247 defaults:
248   initial_bits: 0x4
249   initial_pos: [0, 0]
250   max_health: 7
251   wins_required: 1