Controls
Basic controls
Left and Right: move horizontally
Up and Down: climb ladders
A: jump
B: hammer pound
Select: change hammer type
Start: pause
Special controls
Left or Right (against a block): push block
B (in front of a block): hammer swing
B (keep pressed after pounding): hold hammer in front, aka shielding
B+Up: hold hammer high, aka Thor pose
B+Down: pogo hammer
A (while pogo touching floor): high jump, aka pogo jump
A (while falling): parachute umbrella
All directions in sequence, then B: tornado attack
もどる: resume game
やりなおし: restart current room
あきらめる: quit stage
Movement mechanics
Pixel positioning is stored as 2-byte values for both X and Y, with an additional 1 byte for subpixels. See below for a BizHawk .wch file:
SystemID GB
00CD9A w u 0 System Bus X pixel
00CD99 b u 0 System Bus X sub
00CD9D w u 0 System Bus Y pixel
00CD9C b u 0 System Bus Y sub
00CDA1 w s 0 System Bus X speed
00CDA3 w s 0 System Bus Y speed
Horizontal movement
Max walking speed: 256 subpixels
Walking acceleration: +256 subpixels
Walking deceleration (reverse direction): -288 subpixels
Walking deceleration (no input): -32 subpixels
Max floating speed: none
Floating acceleration: +32 subpixels
Floating deceleration (reverse direction): -32 subpixels
Floating deceleration (no input): none
Vertical movement
Jump: 491 subpixels
Pogo rebound: 273
Pogo jump: 525 subpixels
Hammer pound (against wall): 107 subpixels
Hammer pound (against floor): 331 subpixels
Hammer swing: 107 subpixels (todo: needs to be investigated)
Magnet pull: 256 subpixels
Max falling speed: 768 subpixels
Umbrella Parachute max falling speed: 256 subpixels
Falling acceleration: -21 subpixels
Underwater mechanics
Jump speed (Wooden Hammer): 966 subpixels
Jump speed (Iron Hammer): 491 subpixels
Jump speed (Pico Hammer): 756 subpixels
Icy Floor
Walking acceleration: 2 subpixels
Walking deceleration (reverse direction): -6 subpixels
Walking deceleration (no input): -2 subpixels
Tech
Block Boost
Being inside a block a certain distance from it's center and hammering it in a direction the block will eject you out the opposite direction, with an initial speed of 1 pixel +128 subpixels, or effectively 1.5 speed. This can be slowed down by pressing in the opposite direction. Does not slow down as long as we maintain ourselves in the air, that's why the hammer pogo is so useful here, it keeps us from losing speed.
Tornado Attack
This gets it's own section because it's required in the game but also can set us up for a long speed boost if there's enough room.
-Tornado spin triggered by pressing rotational buttons and then B on the final rotation EG: L U R D L+B or R U L D R+B. This does matter as one will start your hammer on the left side and the other will start your rotation on the right side.
-Tornado hammer can give a boost when colliding with a wall putting your speed at 2. Being on the ground will slow you back down, being in the air will not, as long as you aren't holding the opposite direction.
-There is a dizzy animation after your tornado attack timer runs out. If you time it so that your tornado hammer runs out in the air, you can keep your boost during the entire dizzy animation. The dizzy animation lasts a long time (? frames) and can only be cancelled by resetting the room or running into a hazard and taking damage. Same with the tornado.
-You can also slow down your speed slightly if you press the opposite direction just as your dizzy animation is about to start. Useful for not going too far.
Corner Clip
Every single ceiling corner can give us a good X directional boost, assuming we can reach it. Having a y subpixel of 0-12 will give us the earliest (?) boost. Also, having an X subpixel above 128 will give us a farther boost.
Ceiling Full Clip
If the ceiling is not too far away, you can get close enough to clip through it entirely. The ceiling must be only 1 tile thick. TODO: how many subpixels needed etc.
Hammer Climb
Enemy Push
Enemies can be pushed with the hammer. This applies to all variations of the hammer, even holding the hammer out to the side, and the upwards hammer. Useful for manipulating enemies. Squishing an enemy between your hammer and a solid object will kill it.
Enemy Reverse
Some enemies, such as the flying ones, can be zipped by your hammer causing them to turn around earlier. Useful for getting them over top of switches faster.
Umbrella Y Subpixel Management
Y subpixels can be fairly easily manipulated by pressing A for various lengths while in the air. Important for some tricks to have specific subpixels.
Hammer Upwards Boost
By pressing D+B your character is actually pushed upwards (12 pixels?), as can be seen when you cancel it by pressing B again. You have to wait for your hammer swing to finish before you can do it again. You can do this as many times as you can in the air, but your Y speed will still be the same, so you have limited amount of time. That's why it's spammed everywhere for extra height.
Keys and Key Doors
-TODO (and frame rules)
Environment objects
Switch Ball
These circular shaped switches, when activated, trigger a timer which a nearby obstacle will be activated for. They can be triggered by a number of things: any form of hammer swing, harry himself, enemies, hammer blocks (generated by hitting an enemy with the wooden hammer), and rockets triggered from their respective blocks. Once activated you can not turn them off again until their designated timer runs out or you reset the room via start menu.
Pressure Plate
Switch Globe
Blue Magnets
Red Magnets
Teleporters
Bumpers
Guided Block Sockets
Special Blocks
Hammer Blocks
These blocks are generated by hitting various enemies with the wooden hammer. Once spawned they can be hammered in a left or right direction as long as there is open space (with the wooden and pico hammer only). If you have the metal hammer out instead, the block will be destroyed with a hammer pound. Blocks can also be hammered in the air, but only on the frame they are created.
Rocket Blocks
Changes the direction of the rocket when hit with either the wooden hammer or the pico hammer, in counter-clockwise form (U L D R U.. etc). Detonates the rocket with the metal hammer or with a hammered block from an enemy. Rocket flies in a straight line based on the orientation of the block.
Reflecting Blocks
Hitting these with your hammer changes their orientation. Special lasers throughout the stage will reflect on them at a 45 degree angle if it contacts the side of the block with a mirror on it.
Breakable Blocks
Must be destroyed only with the tornado attack. Can be destroyed from above or from the side.
Stopper Blocks
Enemies
Hazards
Spikes
Spike Walls
Bubbles
Steam
Lightning Bolts
Projectiles fired from spotlights in stage 6. Can be destroyed with your hammer.
Green Saws
Underwater Currents
Flame Walls
Dripping Fire