Haunted Manor IV: A Little Mischief
Loading...
Haunted Manor IV: A Little Mischief

Teal: Haunted Manor · Chapter 4

A Little Mischief

Same creaky manor. Much sillier ghosts. Codert, Mutton, and Lucky are on a coin hunt—and someone has their eye on your wand.

13 levels. 3 disco trams. 12 coins each.

Room for a little wonder

Dodge sofas, weave around dining sets, and sneak past bookcases and pianos. Furnished mansion rooms connect through carpeted passageways, with open routes for chases and clever ambushes.

Just 12 coins per level. Explore mansion rooms and disco tram cars, collect all 12, and find the green exit. Lucky and Filch's finds count too!
One rare ring per level: 9 seconds of ghost-chasing power. Ghosts can eat it first! Blue crystals add 30 Arcana and replenish over time.
Fire ring
Mend ring
Ice ring
Lightning ring

13 levels. 30 HP. At 0 HP, rally back with Space or tap Get up! Nearby Lucky and Mutton cheer you on. Keep your coins, regain 15 HP, and turn the chase around!

One staff. A whole lot of teamwork.

Bonk a ghost for a 3-second KO. Aim at Lucky or Mutton: E empowers, R gives a friendly pat. Only crystal or ring power makes ghosts go poof—staff boosts never do.

Mutton · Your stretchy lookout

She's a shapeshifting lookout: senses ghosts, holds them still, and tugs back stolen wands. Train her to spring disguise ambushes.

Lucky · Your tuxedo treasure hunter

She gathers coins and brings power back to you. Train her to hide in shadowy wall cover and pounce on unsuspecting ghosts.

How much mischief?
Best score0

The Midnight Disco Express

A little room to groove

Three tram rides, thirteen original songs! Levels 4, 8 and 12 each have their own playlist. Lucky and Mutton share the spotlight with guest singers Shadey and Filch. Collect 12 coins, dance, and enjoy—no chasing ghosts or timer.

04 · Moonbeam Line08 · Starlight Shuttle12 · Last Dance Express

Clear the manor to unlock the optional Candy Vault: no ghosts, no hurry, just sweets.

How to play
  • E / Empower — Aim at an ally within 5 steps. For 8 seconds they move 50% faster and recover skills twice as fast. 12-second staff cooldown. No Arcana is granted.
  • R / Pat — Aim at a nearby ally for a gentle reward and a happy heart. Once every 15 seconds per ally, a pat also takes 2 seconds off their skill cooldowns. No XP or coins are created.
  • WASD / Arrow keys — Move
  • Mouse — Look. Click to capture, or hold and drag if capture is unavailable.
  • Shift — Dash
  • Click / Space — Staff bonk. Ordinary bonks KO ghosts for 3 seconds, even the thief. Only active crystal/ring Arcana can vaporize ghosts or count as a powered boss hit. Bonks never hurt your allies.
  • F — Mutton Reach. Hold a ghost still, or tug your wand back within reach.
  • G — Lucky Fetch. She collects coins and brings power back. Fetch overrides her trained hiding-and-pounce tactic.
  • H — Shadey Double, after recruitment. Her 6-second decoy draws ghosts and distracts the nearby thief; 18-second cooldown. Train her to KO nearby ghosts and choose a practiced disguise.
  • B / Shop — Recruit Shadey (60 coins) or Filch (45). Explore mazes to earn XP, then buy three ranks of training. Skills activate automatically. XP, training and recruits carry between runs; spending never affects door progress.
  • Health — Start with 30 HP. Hearts heal 5 HP. Coins heal 1 HP below 20% health. At 0 HP, tap Space or Get up! to fill the rally meter within 10 seconds. Holding Space does not count. Each nearby teammate cheers automatically. Revive with 15 HP and 5 seconds of protection; coins, training, and floor progress stay put. Esc pauses the rally. If time runs out, the run ends.
  • Rings — Just one per level, with no replacement if collected or eaten. Fire, Mend, Ice, and Lightning fill 100 Arcana for 9 seconds, even without your wand. Mend also heals 5 HP. Blue crystals add 30 charge (2.7 seconds) and replenish one every 18 seconds, or 12 in the final showdown, up to the floor's supply cap.
  • Ring thieves — After an 8-second head start, nearby ghosts can seek out a ring and stop for a 1.4-second munch. Bonk or KO them to interrupt, use Shadey as a distraction, or send Lucky to fetch it first. Frightened ghosts cannot eat rings. Blue crystals are safe from snacking.
  • M / Map button — Open the full manor map. The ghosts wait while you plan your route.
  • Esc / Pause button — Pause
  • Touch — Left stick to move, drag the right side to look. Tap Bonk for ghosts, or face an ally and tap Empower or Pat. Companion skill buttons still work as before.
Behind the sheets · Learn Three.js

A tiny workshop, using the same characters as the game. Natural animal shapes, supernatural laundry. Try the slider: nothing here changes your run.

1.0×

0× stops the fabric ripples; 2× exaggerates them. This changes wave size, not speed. No wind, gravity or cloth physics are being simulated.

  1. 1. Shape + surface = a mesh

    Geometry is the shape; a material tells light how its surface looks. A Mesh combines both. In world.js, makeGhostMesh builds a dome that widens into a pleated sheet. MeshStandardMaterial makes it look like matte fabric; the eyes use an unlit material so they stay bright in the dark.

  2. 2. Animate a little every frame

    In world.js, animateSheet nudges the geometry's points (vertices) with sine waves. Lower points move more than the crown, giving a loose hem without physics. animateAnimal rotates Groups used as leg pivots; companions.js calls it as the animals walk. dt is the seconds since the previous frame, keeping motion consistent across frame rates.

  3. 3. Your first small experiment

    In world.js, find animateSheet and change wave * 0.07 * edge to wave * 0.035 * edge. Preview again: that ripple becomes half as wide. Restore 0.07 when you're done. Change one number at a time, compare, and keep what you like. Next try the ear height in makeLuckyMesh.

  4. 4. Shadey's shape-changing trick

    In shop.js, Shadey puts a chest, cat, ferret and sheet inside one THREE.Group. setForm toggles their visible properties: only one shape shows at a time. Her glowing floor ring marks the decoy. Ghosts are given her map tile as a temporary target. After a lesson, the training hub lets you choose which practiced disguise she uses. These are four rehearsed forms, not the limit of her shapeshifting in the story.

  5. 5. Teach a character a tactic

    In training.js, Lucky's tactic has three states: cover, hide and pounce. A path moves her to a wall-side hiding place, a timer gives her a chance to wait, and then a faster path becomes her leap. pose changes her crouch and jump height. ko only sets a ghost's stunTimer; it never calls poof. Try changing the pounce movement speed from 12 to 10 to see a slower leap. A state machine is just one small behavior at a time—not a physics simulation.

Your art is part of the design—not just decoration

Your Codert drawing sets the silhouette, blue gloves, red scarf and wand. Your HUD gives the meter colors; your item and ring sketches define shapes and rules. To help next, draw Lucky and Mutton from the front and side, show their size beside Codert, and add one expression or pose for each. Rough drawings with notes are enough. A 2D drawing guides a 3D model; it doesn't automatically become one.