Submission #2889: Aqfaq, Sonikkustar's GBC Daffy Duck: Fowl Play in 07:32.02

Console Game Boy Color Emulator VBA
Game Version USA Frame Count 27121
ROM Filename Daffy Duck - Fowl Play (U).gbc Frame Rate 60
Branch Rerecord Count 28581
Unknown Authors Aqfaq, Sonikkustar
Game Daffy Duck: Fowl Play
Submitted by Aqfaq on 10/24/2010 10:27:58 PM

Submission Comments
Daffy Duck is hunting treasure and Bugs Bunny tries to stop him. If you know who these guys are, then you can imagine how funny this movie might be.
Well, it's not that funny.


There are six levels: Country, Lakeside, Snowy Mountain, Forest, Plateau and Desert. Each level has 3-6 screens, one of which is a boss fight. The boss is always Bugs Bunny who tries to use various tools and weapons in order to stop Daffy from getting the treasure chest.
Daffy has only one weapon. It is a small dynamite, which has a two-second timer. This weapon bounces around and interacts with almost everything in the game, sometimes in surprising ways. For example, there is a little monkey, who starts running towards Daffy, if the dynamite lands on top of it. There is also a foxman with a shield that deflects the dynamite.
The animations are very well done. When Daffy gets hit by something, the damage tosses him around in various ways, potentially causing a long damage chain. The damage chain effect is funny and the developers knew it, so they even put some statistics after the credits, showing the maximum damage combo you took during the playthrough. Randomly generated enemy placement enhances the effect, putting Daffy at risk of going through many kinds of damage chains, in an old-school cartoony fashion. Unfortunately, the recovery animations are long, so it never saves time to take damage, even when it would temporarily toss Daffy forward at high speed.



Fowl Play has a surprising feature: Every 8th jump is higher than a normal jump. The most notable high-jump is seen in the final level, where Daffy calmly jumps over the famous "rolling ball trap" that Indiana Jones escaped in panic. The jump counter resets after a short time, so to get the 8th high-jump, the 7 preliminary jumps need to be done quickly enough.


When walking over a deadly pit, Daffy can stand on air for a short time, before realizing that he is going to fall. This effect is part of the funnily designed game physics and it is also often seen in cartoons. If Daffy stands on air, there is a short window of opporunity to escape the pit by pressing to the opposite walking direction. If done correctly, Daffy will panic and run away from the edge of the pit as fast as he can. Everything seems normal and cartoony until you realize that the running can be prolonged as long as Daffy won't bump into a wall or an enemy. Normal walking speed is 16 (which means 1 pixel per frame), but the panic run is 38, so it saved a lot of time to manipulate enemies out of the way, to be able to panic-run through levels. Even a speed of 40 is possible by peforming a jump just before starting the panic run, but then no subsequent jump can be made without stopping. So, usually it is better to have 38 speed plus the opportunity to make jumps. Jumping and then releasing directional buttons will keep the current speed, but unfortunately the cartoon physics are realistic enough to reduce 2 speed units each time Daffy touches ground, so after a few jumps, the speed will decrease significantly. All in all, the panic-run trick is very effective, but also very limited. Mostly, when the running has started, nothing can be done, except continue running or stop running. Normally I would regard this as abusing a programming error, but in the context of the game, it doesn't feel any different than escaping pits normally. The panic is just prolonged by precise playing and planning. Setting up a prolonged panic-run can be done even in real-time, but the chance of getting past the whole screen without bumping into something is low.

Enemy manipulation

The game has random enemy placement for some of the enemies. This makes the game surprising and gives it lots of replay value. (Actually, this is one of the very few games that I enjoyed playing even without tools, because so many funny things can happen and you never know what enemies you encounter next.) So, each time a screen is loaded, a few enemy types are spawned at semi-random positions. Firstly, it is important to manipulate all enemies out of the way, so that the panic run trick is not interrupted. Secondly, small speed boosts can be gained by landing on enemies that travel the same direction as Daffy (jumping at enemies from below also works). A truly optimal run would manipulate perfect enemy types in each screen for maximal boosts. This run here gets pretty good boosts, mainly from birds. Also, a very noticeable boost from en anemy arrow is used in the final level.
To change enemy randomness, delay frames can be used in the bonus game, overworld or before entering the next screen and. Also, using the dynamite at different times affects the RNG, so the possibilities for manipulation are endless and very few frames were wasted here to achieve good enemy randomness. Not all enemies are manipulatable, though. Some of them appear in the same place every time. Actually, the whole first level is always the same.

Avoid delay after falling

Normally, falling from too high stops Daffy for a few seconds to recover from the impact. This is again very nice detail in game physics and animation. However, if Daffy pushes a wall just before hitting the ground, the pushing animation is used instead of the fall recovery. The pushing can be stopped at any time, so it saves time to push a wall instead of landing directly on ground. This is used twice in the final stage. (The second time probably looks like a mistake, if the viewer is not aware of the game mechanics.)
Another way to skip the recovery time is to land on an enemy. This is used once in the final level.

Level by level comments

Level 1: Country

The enemies here seem to be always the same, so no manipulation is possible. However, I was able to get some boosts from the standard set of enemies and a wooden box.

Level 2: Lakeside

I was just hoping that no enemies would be on the way, when Daffy runs through the whole first screen in panic. Luckily, I also got a tiny boost from a bird, which just happened to be in a good position.
Sonikkustar did the second screen, which is a lenghty jump from a cliff. After he had done it, he also noticed a 1-frame improvement in the beginning of the next screen. I had pressed right when accelerating, but Sonikkustar corrected my mistake by not pressing right to maintain the speed from the previous screen for faster acceleration. I then improved the screen another frame by getting a boost from a fish. I had done a full run already, but these two frames changed the enemy randomness of the upcoming levels, so my initial run did not synch anymore and I redid everything, which was a good thing and saved whole seconds.
Sonikkustar had a great idea of using the panic run trick in the Country boss screen, but it turned out to be slightly slower.

Level 3: Snowy Mountain

None of the enemy types in this level give any boosts and none of the enemies cause any delay either. So, it is mostly just walking at a constant speed of 16, except for one screen, which always has two snow elementals or yetis. This is the most boring level and the most boring boss too.
When the second version was done, Kyman submitted his movie, which saved 20 frames in the yetis. We started redoing everything again from that point, but the progress stopped at the next level due to bad enemy randomness, so the 20-frame improvement is not included in this submission.

Level 4: Forest

Got boosts from two birds in the first screen. In the third screen, hedgehogs were ideal, because they are small and never move vertically. Most of the other enemies would stop the panic run instantly. (The forest is my favorite level. Just play it yourself and you'll know what I mean. At any given moment, the forest can surprise you...)

Level 5: Plateau

This level shows the most extreme enemy manipulation. Basically, all three screens are just ran through in panic. The boss is my favorite one and maybe one of my favorite parts in the whole run. See how exhausted Daffy is after so much running and finally getting to the treasure chest? (Anyway, Daffy is also very happy after getting the chest. I mean, have you paid any attention to the level clear screens? Have you ever seen anyone this happy after completing a level?)

Level 6: Desert

Bugs Bunny is protecting a treasure in a pyramid. This is the longest level, so food is running out. When food reaches 30%, a lenghty animation is played, which shows Daffy getting hungry. That is why it is faster to eat some food. By coincidence, one piece of food was unavoidable anyway, so everything went nicely. Actually, pretty much everything in the final level went nicely. There are many moments, where a jump succeeded only by few pixels or few frames.
Sonikkustar polished my work here too, saving 9 frames in the last screen before the boss.
The final boss offers a challenge with a rare combination of reflexes and timing, so it requires some training to beat it in real-time. For a tool-assisted player, it offers nothing spectacular, because the only thing to optimize is to ignite the dymamites as early as possible and hit the boss with them. The final hit was the only minor challenge here, because a high-jump is required in order to launch the final dynamite and end input earlier. This means that Daffy must time seven setup jumps perfectly before the eighth high-jump. Anyway, nothing too spectacular. The final boss was recorded many times by both of us due to fixing earlier parts in the run causing desynch at the boss.
The ending could be triggered faster by making a last high-jump on the falling chest, but it would require extending the input. The end looks funnier this way, because Daffy finally has the chance to show his great acting in taking damage.

Possible improvements

Here are ideas for improvements, some of which are real, some speculative:

More high-jumps

Use high-jumps more in various places, like the first boss to jump over the anvil faster?

More arrow boosts

In the final level, it might be faster to avoid the long fall by landing on the ledges instead of manipulating a scorpion to land on. Then it would be possible to manipulate a fox bowman in a good position for another arrow boost. It seemed that the fox and scorpion can't both appear.

Boost from giant bats

In the forest level, it might save time to get giant bats and try to boost from them. The giant bat has a speed of 16, so it could double Daffy's speed for a moment. Actually, by a lucky coincidence, Daffy gets a boost from a giant bat in this TAS while doing the panic run in the Plateau level, but it was not planned at all and saved 0 or 1 frames, or something like that.

Boost from spiders

Normally, jumping on a spider is very hard, because it will always attack and damage Daffy. However, in some conditions it is possible to land on them while they are moving at their fast attack speed, which would give a very good boost. The ideal situation would be that the spider is on high ground, so that it jumps a long distance and carries Daffy as far as possible.

Avoid bumping into a stone

Obviously, it would save a frame or two to avoid bumping into a bouncing stone in the Plateau stage. However, everything else went well there, so it seemed not worth it trying to achieve better manipulation, for now. Looking forward to some luck-manipulation master doing the game!

Lua Script

Here is a RAM watch script for future TASers: I don't recommend viewing the movie with this ugly script unless you want to watch it in slow-motion and carefully observe every small speed boost.

Movie Attributes

  • Aims for fastest time
  • Abuses Bugs Bunny
  • Genre: Platform
The run also manipulates luck, but it is not heavy by the site standards. The manipulation is not anyhow visible either. The chance of a run achieving same or better luck with the enemies is probably something between 1/1000 and 1/10000. (Just guessing.)
Avoiding the fall recovery and being able to jump before starting the panic run might be considered little bugs, but they are minor by the site standards, so no reason to tag the movie as buggy. Actually, I can't find any obvious flaws in the game. Everything is very well put together and the game has unique feel to it.
I hope you enjoy this funny little run as much as I enjoyed making it.
Big thanks to Sonikkustar for his help!
Kudos to Kyman for owning the yetis...
Also, thanks to the game developers for producing this hilarious gem.


Uh-oh, some of these screenshots may not be from this exact submission, because the run was redone many times and I'm lazy to check which ones still match...


Thanks to sgrunt for this:
(flowplayer module removed)
That's all folks!

That's not all folks

Here is the incomplete WIP that incorporates the 20-frame timesaver by Kyman:
The movie ends at the forest level due to difficulties in enemy manipulation. The WIP was about 58 frames ahead of this submission, but still clearly fails to get perfect enemy manipulation up to that point. The difficulty is not to "get enemy X in position Y, when Daffy's position is expected to be Z". This does not work, because getting boosts from enemies changes Daffy's expected position, which will then be something like "Z + n", where "n" is the amount of boosts gained so far. The "n" will be different for every set of enemies and can not be easily predicted.
That's it!

Flygon: Added YouTube and Flowplayer modules.
Mister Epic: Added YouTube module. Haha! Now we got four modules!
Nach: I don't know about that, I count five.
Samsara: Removed Flowplayer module, quietly screaming into the night, why is life confusion,

Nach: Judging.
Mister Epic: Cleaned up that module mess.

Nach: Good audience response, decent TAS play though. Accepting as first run for this game.

Last Edited by Samsara on 1/2/2022 11:30 PM
Page History Latest diff List Referrers