Introduction
Chuckie Egg is a platform game from 1983, which describes itself as a "Game of Skill", the premise is straightforward - each of the 8 level layouts contain a dozen eggs, which you need to collect all 12 to advance, each loop increases* the difficulty,
Game objectives
- Emulator used: BizHawk 2.9.1
- 128K was used.
- Complete 40 Levels (5 Loops) as fast as possible.
- Abuses programming errors
Chuckie Egg was released on many platforms at the time, my dad had a ZX Spectrum at the time and I probably spent countless hours of my childhood on this game. TinyTim also ran it recently at the BSG Marathon. C64 was a consideration, but I found the audio worse,
40 Levels?
The game (like many at the time), doesn't have a completion criteria, and in an arcade-style, just keeps making the game more difficult to complete.
Levels 1-8 have 2-4 "Chuckies" or ducklings roaming the levels you must avoid - otherwise you lose a life. The Chuckies each have a fixed route they follow.
Levels 9-16 have the "Mother Duck" as an enemy that homes in on you, in a speedrun sense these levels are the easiest as you have some degree of control over where the duck goes, making it fairly easy to avoid.
Levels 17-24 have both at the same time.
Levels 25-32 increases the Chuckies to 5 per stage.
Levels 33-40 increases the speed of the Chuckies.
Level 41 onwards repeat level 33-40 but decrease the time limit per stage, this bottoms out at level 80 at 400s per stage. This would mean the TAS would just be repeating almost the same inputs (varying for lag etc) for any remaining levels. The game only shows 2 digits for the levels so e.g. level 100 will show as level 00, 101 as 01. After level 256, the game will complete reset back to level 1 (byte overflow).
So completing level 40 seems the most logical place to stop, as there is nothing else to see from that point on. Also, we have 63 lives at the end of the movie (despite only 6 hats showing), so losing them to get on the high score table would take quite some time.
General Strategies
Jumping into floors
The collision in this game can be a bit wonky. Depending on your position you can jump almost as if the floor tiles don't exist. This allows for some strategies that look like they shouldn't work. There are cases where we use another part of the floor acting as a "wall" to bounce us back to where we want to be.
Grabbing ladders from below
As long as you're touching the centre of the ladder you can grab it, this means you can grab onto a ladder from underneath the floor. The first instance of this is in Level 3.
Abusing the collision code
I'm not sure about the exact details, but there are times where we should die from colliding with a Chuckie or the Duck, but do not. One example happens in level 7 where we just walk straight through the right-most Chuckie as if it doesn't exist.
Standing around when waiting
Whilst there is potential for playing around during times we are waiting (e.g. a lift taking us up, or for a Chuckie or the Duck to get out of the way), you may notice those elements move faster when we aren't moving, so I opt to do nothing (unless avoiding collision)
Stage Frame Timings
Level | Start Frame | End Frame | Total |
---|
1 | 6597 | 7527 | 930 |
2 | 7842 | 8764 | 922 |
3 | 9090 | 10080 | 990 |
4 | 10418 | 11634 | 1216 |
5 | 11981 | 13127 | 1146 |
6 | 13485 | 14499 | 1014 |
7 | 14868 | 16105 | 1237 |
8 | 16485 | 18424 | 1939 |
9 | 18814 | 19636 | 822 |
10 | 20038 | 20857 | 819 |
11 | 21258 | 22096 | 838 |
12 | 22498 | 23537 | 1039 |
13 | 23938 | 24932 | 994 |
14 | 25338 | 26330 | 992 |
15 | 26732 | 27641 | 909 |
16 | 28042 | 29635 | 1593 |
17 | 30035 | 31005 | 970 |
18 | 31407 | 32364 | 957 |
19 | 32766 | 33767 | 1001 |
20 | 34169 | 35401 | 1232 |
21 | 35802 | 36968 | 1166 |
22 | 37369 | 38395 | 1026 |
23 | 38796 | 40084 | 1288 |
24 | 40485 | 42423 | 1938 |
25 | 42823 | 44016 | 1193 |
26 | 44417 | 45428 | 1011 |
27 | 45829 | 46840 | 1011 |
28 | 47242 | 48446 | 1204 |
29 | 48848 | 50021 | 1173 |
30 | 50421 | 51639 | 1218 |
31 | 52040 | 53394 | 1354 |
32 | 53795 | 56216 | 2421 |
33 | 56616 | 57739 | 1123 |
34 | 58141 | 59175 | 1034 |
35 | 59576 | 60530 | 954 |
36 | 60933 | 62243 | 1310 |
37 | 62644 | 63914 | 1270 |
38 | 64316 | 65464 | 1148 |
39 | 65865 | 67195 | 1330 |
40 | 67595 | 69824 | 2229 |
ROM SHA1: 03be8e55eb56ca49856b236f38bf81b76f4e57bf
Potential Improvements
- Maybe +2 would have been a better choice, however, I did try re-syncing on the +2, and at least in the early levels, it was slower. Later on, it may have reduced lag.
- Early Levels, I found out around level 5 or 6 that going back to improvements to earlier levels required alterations to each level that came after it, either due to lag or non-lag eaten inputs, reminiscent of the long-standing Sonic community quote
!quote 1 "I pressed jump and he didn't jump"
. A lot of the knowledge improvements came with the later levels, so there are some later levels that should be slower, but turn out slightly faster than their equivalent earlier levels. e.g. level 28 is 12 frames faster than level 4, and 28 frames faster than level 20.
CoolHandMike: Author makes good use of known tricks and bugs in this Spectrum game. While the game is endless the loops do start repeating at stage 41 so the end point makes sense. Optimization and routing are both well done. Removing "40 levels" goal since this completes the game according to movie rules.
Accepting to Standard.
Congratulations on the nice tas!
Gameplay and tricks resource.