Work revamp
game

Revamp

A dark, interconnected world awaits. Explore, fight, evolve. — Metroidvania built in Godot 4.

Revamp is an in-development Metroidvania built in Godot 4 with a PHP webhook backend for telemetry and progression sync. The web build runs in the browser via Godot's HTML5 export; the desktop build ships native. Currently a teaser landing site while the vertical slice comes together.

Last updateFeb 21, 2026 PrimaryGDScript
  • Godot 4
  • GDScript
  • Godot HTML5 export
  • PHP
  • Apache (reverse proxy)
  • systemd
Revamp — A dark, interconnected world awaits. Explore, fight, evolve. — Metroidvania built in Godot 4.

Revamp is the in-development Metroidvania entry in our games portfolio — interconnected world, exploration-gated traversal, deliberate combat, character progression that opens up new map regions over time. The web build runs straight in the browser via Godot 4's HTML5 export; a thin PHP backend handles telemetry, save sync, and sponsor / promo webhooks for the events the game shows up at.

Where it sits in the catalog

Our other games — XRPG Engine, Tulpa, Grim Syndicate — all run on the same Python text-RPG engine. Revamp is the deliberate step away from that lineage: a real-time, controller-friendly, pixel-art world running on Godot's own renderer. Different muscle, different tooling, different audience. The "interconnected world + earn-your-traversal" Metroidvania skeleton is the part we're building from scratch.

What's playable

  • Browser-playable web build — Godot 4 HTML5 export shipping the current vertical slice. Loads in a tab; mobile-friendly fallback messaging when controls don't translate.
  • Recent updates feed — the landing page publishes development snapshots so the people watching the build know which mechanics are landing next.
  • PHP webhook layer for the eventing side — promo-code redemption, telemetry collection, integration with the larger gamingworld.uk player profile.

Why "Revamp"

The name is the design philosophy. Metroidvania traversal is a genre of revisiting — every new ability sends you back to a place you've already been, only this time the wall you stared at is a doorway. Revamp is built around that loop of "the map you remember is not the map you can read now." The world rewards memory; the abilities rewrite the memory.

Straight from the source

The project's own README.

Rendered in place — every link, image, and code block carried over from the repo. The page below is what a contributor would see opening the project for the first time.

Changelog

v0.7.0 — 2026-02-21

New Features

  • Player hurt/knockback state: Taking damage now triggers a proper HurtState with directional knockback away from the damage source and 0.4s of input lockout
  • Floating damage numbers: Diablo II-style numbers rise and fade when enemies are hit. 15% critical hit chance shows gold numbers at 2x damage
  • Enemy name display: Attacking an enemy shows their name above their head for 3 seconds with a smooth fade-out
  • Enemy knockback: Enemies are knocked back away from the player when hit (skulls get a velocity kick, dragons use a decaying knockback vector)

Bug Fixes

  • Skull enemies stuck at bottom: Increased collision shape (12x12 to 14x16), added offset, and added safety Y clamp to prevent falling through ground
  • Skull sprite jittering: Added 8px dead zone and 0.15s flip cooldown to prevent rapid direction changes when player is directly above
  • Player sinking into ground: Raised ground collision surface by 20px (offset CollisionShape2D) so player walks near the grass tops instead of chest-deep in them. All ground-level entities repositioned to match
  • Player rendering behind stage: Added z_index=10 to Player so it always renders above ground decorations
  • Melee hitbox too small/high: Enlarged from 34x22 to 48x28 and repositioned from (20,-26) to (24,-16) for much better ground-level coverage
  • Crouch attack hitbox: Hitbox Y now shifts to -6 during crouch attacks (was staying at standing height -26, missing everything)
  • Crouch attack re-triggering: Changed CrouchState attack input from is_action_pressed to is_action_just_pressed

Enhancements

  • Pickup visuals: Replaced tiny 12x12 colored squares with larger 14x14 orbs with glow effect, center highlight, pulsing animation, icon characters, and clear labels ("2x JUMP", "3x JUMP", "HI-JUMP")
  • Spell pickup visuals: Same glow/pulse treatment applied to spell pickups
  • Enemy hit feedback: Flash white (overbright) instead of red for a more impactful hit feel

v0.6.0 — 2026-02-21

New Features

  • Crouch system: Hold Down to crouch (halves collision height), release to stand. Supports crouch attack and crouch shooting at lower projectile height
  • Crouch attack: Press attack while crouching for a low slash with hitbox timing (0.1s-0.32s window)
  • Dynamic jump animations: Double/triple jumps now play a tumbling "air_jump" animation using alternating run frames
  • Gravity boots visual: Sprite flips upside-down during high jump for clear visual feedback of powered ascent

Bug Fixes

  • Idle animation loop: Trimmed 2 narrower end frames (23px vs 24-25px) that caused a visible hiccup at loop boundary — now a smooth 5-frame cycle
  • Melee hitbox: Enlarged (28x18 -> 34x22) and raised (y:-16 -> y:-26) to reliably hit enemies at chest height

v0.5.0 — 2026-02-21

Bug Fixes

  • Sprite transparency: Removed solid black background from Alucard sprite sheet using corner flood-fill (preserves internal outlines)
  • Platform collisions: All platforms now use 96x16 collision shapes matching the visual tile width (was 160/256px of invisible walkable area)
  • Ground tile gaps: Re-spaced 20 ground tiles at 96px intervals for seamless coverage across full 1920px level width
  • Projectile spawn: Projectiles now fire from chest level (y=-24) instead of hip level (y=-8)
  • Decoration alignment: All cemetery decorations repositioned to sit flush with ground surface; tombstones/crosses grouped into tighter cemetery clusters

Enhancements

  • Jump animation: Expanded from 6 to 7 frames, now loops to prevent freezing during long airtime
  • Fall animation: Expanded from 4 to 7 frames, now loops for smooth descent visuals
  • Developer docs: Added docs/quick-start.md reference for AI assistants and contributors

v0.4.0 — 2026-02-21

New Features

  • Alucard sprite replacement: Replaced placeholder gothic-hero with Alucard (Castlevania SOTN) sprite sheet
  • Dedicated fall animation: FallState now plays its own "fall" animation instead of reusing "jump"
  • 5 animation states: idle (7 frames), run (12 frames), jump (6 frames), fall (4 frames), attack (6 frames)

Enhancements

  • Single sprite sheet: All player animations now sourced from one atlas (alucard-sprite-sheet.png) instead of 4 separate PNGs
  • Collision tuning: Slightly taller collision box (14x32) and extended melee hitbox (28x18) for better fit

v0.3.0 — 2026-02-21

Bug Fixes

  • Pink squares eliminated: Tileset regions now use verified Piece A (304,16,96,48) — the clean grass-topped tile instead of the magenta marker area
  • Decoration sprites fixed: All tombstones, crosses, bushes, and trees now use pixel-verified bounding boxes from objects.png via ImageMagick connected-component analysis
  • Background coverage: Moon scaled 3x, mountains 2.5x, graveyard 2x — no more blank edges when camera reaches level boundaries
  • Gravity boots visible: Fixed by correcting the platform visual sprite that was obscuring the pickup

New Features

  • Castlevania-style spell system: Pick up spells (fire/water), swap by walking over a different one — old spell drops as a pickup
  • Water spell projectile: Blue water effect with 5-frame animation, costs 2 mana
  • Fire spell projectile: Existing fireball now costs 3 mana to cast
  • Mana system: 20 MP max, regenerates at 3/sec — fast enough to cast often but prevents spam
  • Spell HUD: Shows equipped spell name and mana bar below health

v0.2.0 — 2026-02-21

Bug Fixes

  • Pickup collection: Player collision_mask now includes pickups layer (bit 7), fixing item collection
  • Health HUD: Replaced unicode hearts with ASCII characters for web export compatibility
  • Tileset regions: Reverted region offsets to (0,0) — previous (16,16) offset grabbed wrong tile areas
  • Invisible walls: All platforms now use one-way collision so player can jump through from below
  • Background gaps: Scaled parallax layers to 1.5x width, updated mirroring to cover full 480px viewport

Enhancements

  • Enemy AI: Ground enemies and flying dragons now detect and chase the player within 150px range
  • Attack cooldown: Enemies have 1s cooldown between damage hits to prevent instant kills

v0.1.0 — Initial

  • Cemetery test stage with parallax backgrounds
  • Player with state machine (idle, run, jump, fall, attack, high jump)
  • Pickup system for abilities (double jump, gravity boots, triple jump)
  • Ground enemies and flying dragons with patrol AI
  • Health system with HUD
  • CI/CD pipeline with Godot web export and SSH deploy

Build something like this

Want a tool like this for your shop?

We've shipped this kind of thing before. Twenty-minute intro call, no slides.