Ignatius Rocketfrock Manual

Quick reference for starting, moving, fighting, and using the in-game menu.

Start

The game opens on the title card. Press a key, click, tap, or use the Start button to begin. That first interaction also unlocks the browser audio system.

The Manual link is available from the title card before the game starts.

Graphics compatibility

The game uses WebGL2 for its main sprite and scenery rendering when the browser supports it. On systems without WebGL2, it automatically falls back to the Canvas 2D renderer. The visual content and gameplay rules are the same in both modes, though performance may differ on scenery-heavy levels.

Gameplay physics continue to run at a deterministic 60 updates per second. Rendering blends moving actors, rockets, platforms, camera motion, scale, fades, and simulation-driven enemy animation between those fixed updates, so ordinary movement remains smooth when display-frame timing lands between simulation ticks. This visual blending does not change collision, targeting, jump height, or other gameplay results.

Goal

Guide Ignatius through the cave, survive hostile creatures and hazards, operate useful devices, and reach the exit door.

Controls

ActionKeyboardPointer or Touch
MoveLeft/Right or A/DPress the playfield and drag left or right.
JumpUp, W, or ZDrag upward from the touch point.
Double-jump kick and hoverPress jump again in the air, then hold jump.Drag upward again, then keep holding upward.
Trim an ordinary jumpHold Down or S while Ignatius is still rising.Drag downward during the rising half of the jump.
Drop through a green platformFreshly press Down or S while standing on it.Swipe or drag downward. Holding Down after the drop keeps fast-fall gravity but the next green line remains solid. Yellow lines and areas always remain solid.
Launch rocketSpace, X, K, or either CtrlRight-click once, or quick double-tap the playfield.
LungeHold either Alt or either Shift for 0.25 seconds.Keyboard or gamepad only.
InteractDown, S, Enter, or Numpad EnterUse keyboard input for interactions that still require a button. Levers and keyholes activate automatically when Ignatius comes close.
MenuEscapeClick or tap the score-and-bars panel or the minimap.
Skip to the next numbered levelF8Keyboard only, and only while the product-development flag is compiled in.

On a gamepad, either trigger launches the equipped weapon. Xbox X or PlayStation Square charges a lunge. Green walkable lines are one-way for Ignatius: he lands on them from above, and a fresh Down press while standing on one drops through only that support. Continuing to hold Down does not pass through the next green line. Flight is the exception: while flying, holding Down still allows continuous descent through green lines. Enemies never intentionally drop through green lines. Player and enemy shots pass through green walkable lines. Yellow blockable lines and areas remain solid from every direction and stop shots.

Ignatius’s ordinary ground jump rises exactly 200 world pixels. Holding Down doubles gravity during both ascent and descent: from takeoff it brakes the apex to 100 world pixels, while later presses allow intermediate jump heights and faster falls. Down also retains its green-platform drop-through role, but dropping a grounded green support is press-edge driven: after landing on another green line, Down must be released and pressed again to leave it. If the body-slam attack is available and off cooldown, holding Down while airborne at a speed that would already cause fall damage commits the slam; merely tapping Down to pass through a green platform does not commit unless Down is still held after the fall becomes dangerous. The launch speed is derived from gravity, so the designed apex does not change with display or simulation frame rate; rocket-assisted movement remains variable. Quick jump taps and the airborne release-and-press gesture are buffered until the next gameplay step, so the double-jump does not depend on display frame timing.

Minimap

The upper-left score-and-bars panel and the upper-right minimap scale down together whenever the screen is too small to contain them. If the minimap is hidden, the score panel can use the released space and remain larger. The minimap matches the rendered height of the score panel, never grows wider than it, and shows the gameplay perimeter boundary, horizontal platform surfaces, the live camera window, Ignatius’s current position, and the exit marker. Click or tap either upper panel to open the pause menu. The minimap can be hidden in Settings; the score panel and Escape still open the menu. In a product-development build, clicking a point inside the displayed gameplay perimeter teleports Ignatius there instead of opening the menu. If a checkpoint is within 4000 px of the clicked world position, the development teleport snaps to the nearest such checkpoint instead. Browser and native level_temp playtests launched from the Level Editor retain this teleport even when the product-development flag is disabled; clicks outside the perimeter still open the pause menu.

Rocketfrock

Power-ups

The following table shows the installed 100% game-tuning values before permanent Speed upgrades, Flight damage reduction, or Overdrive fuel reduction. Range is the authored projectile travel budget, while duration is the corresponding nominal lifetime at the listed speed. The development Rocket duration percentage scales these lifetimes/ranges, and Rocket damage percentage scales the listed direct damage values.

Rocket / wrenchVolleyRangeSpeedDurationDamage eachDirect volley damageFuel costBehaviour
Standard (no wrench)1400 px500 px/s0.80 s202030Launches upward briefly, then homes. A direct impact also produces the separate 1-damage secondary splash against other nearby enemies within about one wizard height of the impact.
Fivefold (yellow)51800 px1000 px/s1.80 s42015Five small non-homing rockets across a fixed 15-degree fan. The centre line is aimed toward the nearest forward enemy at launch; the authored launch angles do not jitter.
Dart (cyan)11800 px1000 px/s1.80 s202015Fast forward launch with weak heading-based homing toward the easiest enemy ahead.
Target (green)11200 px1000 px/s1.20 s202015Non-homing. Aims once toward the nearest forward enemy when fired; otherwise travels straight ahead.
Bigbomb (red)11200 px250 px/s4.80 s808060Large, slower homing rocket. Its impact applies the same 80 damage throughout an area with radius two wizard heights.
Boomerang (magenta)11200 px outbound budget500 px/s2.40 s outbound budget202015Homes outward, then returns if its target disappears, is destroyed, or the outbound lifetime expires. With no target it starts returning after about 0.32 s. Catching it refunds 7.5 fuel; the return phase may continue for up to about 4 s.
Homing Triple (blue)31200 px500 px/s2.40 sabout 6.672015Three small homing rockets at fixed -12, 0, and +12 degree launch angles, with separate targets when possible. Their guidance receives small deterministic meander turns during flight rather than launch-angle jitter.

Yellow Fivefold and cyan Dart deliberately retain the longer 1800-pixel range; the other wrench rockets use 1200 pixels. Homing target acquisition is limited separately to 1500 pixels, so a projectile may retain travel range after it can no longer acquire a new target. Permanent Speed upgrades and Flight scale player-fired rocket velocity; projectile lifetime is shortened inversely so the authored travel range remains the same. Flight halves the direct damage and secondary splash of the standard no-wrench rocket only. Overdrive halves the fuel cost of every launch without changing the table's underlying rocket profile.

Permanent upgrades

Score and treasure chests

Health

Menus and saved games

The title screen provides five primary actions:

During play, open the pause menu with Escape or either upper HUD panel. It provides Save Game, Load Game, Settings, and Exit to Title. Every non-title menu has a top-right Back button. From the top-level pause menu, Back resumes the game.

There are three visible manual slots and one hidden autosave slot. Entering a level currently acts as a checkpoint. Saves therefore restore the beginning of the saved level rather than an exact mid-action frame, while Score and permanent upgrade progression are restored from the playthrough record. Future authored checkpoints can use the same save slots.

Settings

Most development guides apply only to the current run. Game-tuning overrides, Debug logging, and Recording are persistent preferences. When no saved preference exists, Debug logging and Recording default to the product DEVELOPMENT setting. Debug logging starts a fresh structured log for each application launch and records one snapshot per second while enabled; SDL writes under logs/, while the browser downloads the collected log when logging is switched off. Recording starts a fresh gameplay recording for each level session while enabled, finalizing the previous level before the next one begins. Asset guides show walkable geometry in green and blocking geometry in yellow. Enemy guide shows enemy hitboxes, awareness fields, and AI states.

Rendering-mode changes take effect after the game is reloaded. Explicit development URL options may still override the saved browser renderer while testing.

Ranged enemy attacks

Ranged enemies may begin an attack as soon as Ignatius is inside their awareness range and facing cone, even while they are still moving toward their preferred combat distance. They do not deliberately fire through solid scenery, and they cancel the projectile release if the shot becomes blocked or Ignatius leaves their current view during the wind-up. Skeleton Casters launch green undeath orbs with a bubbly trail. The Tri-fireball Goblin launches three slightly smaller, non-homing fireballs in a straight ±15-degree fan; it commits to the volley when at least one of the three real trajectories can reach Ignatius without hitting solid scenery first. Each fireball deals the same damage as the ordinary Fireball Goblin's homing shot. Dwarf axethrowers hurl large, rapidly spinning axes along straight non-homing paths. Bombing bats keep circling in a broad individual swarm above Ignatius and release rocks only while crossing directly over him, provided the falling path is not blocked by a platform or other solid obstacle.

Level authoring: automatic enemies

The Level Editor can enable Auto spawn enemies for a level. The percentage is checked once each second. A successful check creates one eligible enemy outside the forward edge of the screen, between one tenth and one full screen width away, normally in the direction of the exit door.

Enemy spawner is a separate placeable entity for scripted fights such as boss encounters. It is invisible during play and uses the same per-second percentage and numbered enemy-pool format as automatic spawning. Each spawner rolls independently only while its authored area is inside the current camera view. Off-screen spawners do not roll or accumulate time. A successful roll teleports one already-alert enemy onto the spawner point with a brief purple-blue flash. Ground enemies require a nearby safe floor, and a blocked or occupied spawn attempt is skipped. An optional Disable signal stops future rolls once that named channel becomes active.

Level authoring: bosses and signal gates

Any placed character enemy can be marked as a Boss encounter, given a display name, and assigned an optional defeat signal. It remains an ordinary enemy underneath, so its scale, health, movement, projectile, and attack overrides continue to define the fight. Enemy scale is one uniform multiplier: it enlarges the Character Editor hitbox, rendered character, artwork offsets, and projectile radius together, and updates immediately while typed in the Level Editor. When the boss notices Ignatius or takes damage, a prominent current/max-health bar appears at the top of the game view. Defeat hides the bar, emits the boss event, and activates the configured signal channel.

A boss uses the weighted drop table authored directly on that boss entity. This table replaces the ordinary drop table of the underlying monster and can produce at most one item. If its probabilities total less than 100 percent, the unused remainder means nothing drops. The current four-way permanent-upgrade table totals 100 percent, so one upgrade is guaranteed.

Every wizard exit door automatically remains closed while any living boss exists in the current level. Once the last boss is defeated, the ordinary proximity-opening sequence works normally. Level authors therefore do not need a separate gate merely to keep the player inside a boss encounter.

Hanging Gate and Spiked Gate entities can listen to a named signal channel for authored barriers. They begin closed and blocking when Blocks player is enabled. When the channel activates, their closed artwork fades away in place over 0.75 seconds instead of raising or sliding out of the way. The gate remains solid during that visible fade, then the gate entity and its blocking collision are removed together when the fade completes. A named signal is broadcast to every listener on that channel, so the same lever, keyhole, boss defeat, or scripted event can activate a gate and one or more moving platforms at the same time.

Level authoring: Background and Foreground

Placed artwork can use a cosmetic Background layer behind terrain and actors, ordinary Terrain, or an inert Foreground layer in front of them. In the Asset palette, choose Layer for new assets, then use the single Place asset tool. Background and Foreground automatically disable atlas collision and moving-platform behavior. Background artwork remains behind ordinary scenery regardless of its stack-order value.

The dedicated Layers panel contains matching Foreground and Background groups for each cosmetic layer's Parallax X, Parallax Y, Brightness, and Scale. Parallax X controls horizontal drift and Parallax Y controls vertical drift independently. Background defaults to approximately 0.925926 on both axes, the exact reciprocal of the Foreground default 1.08. Set either axis to 1.0 when it should move exactly with the playable world; values down to 0.01 are accepted for almost stationary artwork on that axis. Background brightness and scale normally begin at 1.0. Foreground displays its complete treatment directly, normally about 0.36 brightness and 2.0 scale, so there is no additional hidden darkening or enlargement. Hover over a field for a compact explanation. These settings affect the whole layer, including generated perimeter artwork on Foreground. Existing levels were converted by copying their former single parallax value to both axes, preserving their previous appearance. The separate Perimeter panel contains only cave-shape, feather, spline, and perimeter-population controls.

The Level Editor always evaluates Background and Foreground parallax from the centered 1920 × 1080 fullscreen gameplay camera, even when the editor workspace is zoomed out to show a much larger area. In the View panel, Show 1920 × 1080 gameplay camera frame draws a green live viewfinder around the exact reference composition without opening a separate preview. It is enabled by default and draws at 50% opacity. An unobtrusive nine-pixel green + marks the exact camera centre, and two five-pixel green × markers show where the wizard would rest while stationary and facing right or left. Show gameplay camera rulers is also enabled by default and draws cyan rulers immediately left and below that frame so you can quickly measure wizard height/width plus default jump, double-jump, and hover reach (`WH`, `JH`, `DH`, `HH`, `WW`, `JW`, `DW`, `HW`). Panning changes the gameplay camera position continuously; zooming changes only how much authoring workspace surrounds the frame. Show gameplay perimeter boundary is also enabled by default and draws the orange player-interaction contour.

Level authoring: cave perimeter

Manual and generated cave windows default to a 200-pixel Feather to full black distance. The fade can be made organically uneven with Gradient waviness, Wave period, and Gradient seed. Wave period accepts 10-500 pixels and defaults to 50; waviness also defaults to 50 pixels. The smooth cyan perimeter remains unchanged so automatic stalactites and stalagmites keep stable inward directions. Only the opacity contours inside the feather wobble, while navigation and the rendered full-black contour remain unchanged. Gameplay bakes a separate interaction contour 20% of the feather distance farther into the darkness. Floor-facing portions remain lethal after the wizard fully crosses them; ceiling and wall portions block outward movement instead. The query follows both Foreground parallax axes without rebuilding the baked contour. Independently of that cave interaction, the rectangular world border is always a simple lethal mask: once any part of the wizard leaves the authored world bounds, he dies and respawns. Keep the world bounds outside every intended playable and cave-interaction region. Automatic perimeter decoration defaults to a 2.0 asset scale and places about 40% of each formation inside the cyan opening, with slight deterministic variation. The Level Editor's Inward coverage % field adjusts that overlap before repopulating the perimeter. Formation spacing is calculated automatically from each asset's rendered size so the decoration remains densely overlapped through the full-black boundary. Manual Populate perimeter deliberately reserves no gameplay clearance: foreground formations may cover platforms, doors, enemies, pickups, or the wizard so level authors can create passages that are partly hidden behind stalactites and stalagmites. The editor warns about hidden gameplay geometry only when the placement's actual collision lines and areas lie completely beyond the full-black contour, evaluated with the gameplay camera aimed at the placement center and with Foreground parallax applied.

Level authoring: proximity text

Select TEXT in the Entity palette to place a one-shot message directly in the level. The text is always bold and may contain multiple lines. Its content, world-space letter size, dark-blue-by-default fill, font family, optional outline color and thickness, trigger radius, one-second-by-default fades, and five-second-by-default display time are editable in Selected object. The visual text and trigger do not have to occupy the same place: drag the circular trigger handle in the level view, or edit its X/Y offsets numerically. When Ignatius comes within the trigger radius, the message completes its fade-in, display, and fade-out sequence once. Trigger guides are visible only while authoring and never appear during gameplay.

Level authoring: selection and assets

Use Shift-drag on the canvas to select every fully enclosed entity or asset. Ctrl-click toggles one object, and Ctrl+Shift-drag toggles all objects enclosed by the rectangle. The last selected object remains the primary white-outlined object whose properties appear in Selected object; the other gray-outlined objects participate in group movement and clipboard actions. Position, size, angle, layer, mirror settings, entity state, and other inspector controls commit directly, so there is no Apply button. X, Y, W, H, angle, and enemy scale update while edited. Timed power-up pickups can optionally enable a per-instance Custom duration; when it is unchecked, the level omits durationSeconds and uses the built-in duration. The toolbar provides standard Cut, Copy, Paste, and Delete actions for either one object or a multi-selection. The corresponding Ctrl/Cmd+X, Ctrl/Cmd+C, Ctrl/Cmd+V, Delete, and Backspace shortcuts work whenever a text field is not being edited. The first paste after Cut restores the objects at their original coordinates; copied objects paste with a small snapped offset, and repeated pastes continue to cascade. The Asset palette lists every asset from every loaded atlas, so no separate atlas dropdown is needed. Both the Asset and Entity palettes use matching two-column thumbnail cards, compact filter fields, and their own full-height scroll areas. Thumbnail rows keep a useful fixed height and scroll rather than being compressed to fit; previews use the displayed card aspect ratio and are centered from the final visible artwork, including complete composed enemy poses. Selecting an asset card enters Place Asset mode; choosing an entity card enters Place Entity mode, while the toolbar placement buttons reuse the current palette choices without duplicate dropdowns. Newly placed assets start with Blend overlaps disabled; the selected-object inspector can enable it when a particular composition benefits from overlap smoothing. Moving over the canvas shows the selected item as a snapped translucent preview. One click places it, after which both asset and entity placement return automatically to Select mode. While Colormap controls are being adjusted, the palette preview remains visible and every selected map asset also previews the pending hue rotation or Color Exchange directly on the level canvas, including multi-selections; the level changes only after Apply.

Palette thumbnail cache: The Level Editor uses one generated resources/palette/thumbnails.png sheet for its Asset and Entity palettes. The cache uses compact 64 × 64 cells by default, while full-resolution atlas artwork loads only after you select an asset or open a level that uses it. After changing atlas or entity artwork, start the local server, open devel.html, choose palette-builder.html, rebuild the cache, and reload the editor. The page reuses the JavaScript character runtime, so enemy thumbnails keep their assembled pose and colour replacement, and the cell size can still be switched to 128 × 128 without changing the editor.