Game · In development · Nov. 2021 – present
SuperTag
Unreal Engine / C++ – Multiplayer chase-tag
SuperTag is a fast‑paced chase‑tag game where players navigate arenas using parkour movement and a grappling hook. As the main gameplay programmer, I designed modular movement mechanics (wall-run, climb, grapple) using component-based logic to ensure systems were reusable. I implemented basic server-authoritative gameplay features using Unreal replication and worked with RPCs to sync high-speed movement. I integrated assets and fine-tuned the character controller to ensure fluid navigation. Collaborating with a large team, I iterated on mechanics based on playtests and design feedback, ensuring the gameplay felt responsive and balanced. Since late 2025 I have been building its online layer: Steam online support, a custom Node.js matchmaking server on Google Cloud that changes queue logic without a client update, and a health dashboard to monitor it.
Key systems
Advanced Movement Replication
Implemented client-side prediction and server reconciliation for high-speed parkour moves like wall-running and grappling.
Grappling Hook Physics
Designed a custom physics constraint system for the grappling hook to allow dynamic swinging while maintaining network sync.
What I did
- Designed modular movement mechanics (wall-run, climb, grapple).
- Implemented server-authoritative features using Unreal replication.
- Ensured gameplay systems were reusable and adjustable.
- Iterated on mechanics based on playtests and feedback.
Gallery 04
Dev log 25
-
Started working on visual improvements
Implemented a multitude of small visual improvements. I will soon start working on assets to define a new, more cohesive visual identity.
-
Server "Health" Page
Created a dashboard page for the Matchmaking Server to monitor performance and status. More detailed metrics will be added in the future.
-
Custom Matchmaking System
Created a custom Node.js server running on Google Cloud to handle matchmaking without requiring game client updates for queue logic changes. Migrated the previous system to use this server instead of the basic Unreal session search.
Note: The server is shut down when not testing to prevent unintended costs.
supertag-680958624519.europe-west1.run.app ↗ -
Steam Compatibility
Made the game work with steam instead of the basic online system
-
Milestone 4 feedback → polish backlog
Steam-style milestone notes: tutorial pacing (earlier obstacles, force slide), orthography fixes, clearer tag range/angle, show round count, stronger hit feedback, map rename, timer comms (10s indicator/sudden death), collision/clipping fixes, emotes, and info channels (UI+audio+PP), plus more external playtests.
-
Build upload & playtest prep (Jan 22–23)
Build hiccup (locked file) then upload; broadcast to GD/Prog. How-To sheets shipped; copy/layout tweaks; schedule playtests.
-
Feature list & bug doc; feedback iteration (Jan 17–20)
Formalize feature list & bug doc; move bugs → Testing and request verification. Debate particle color vs UI rings for grapple feedback (likely both, exposed params). Iterate UI flows to reduce IP re-entry.
-
Tag logic rework (Jan 14–16)
Downward grapple bug report; new Tag logic function returns ‘can tag’, distance, and dot product (1 front/−1 back). Propose render-through-walls for Tagger (vs red ring); align. Queue next tasks: vault decision, grapple anims/graph, grapple point feedback, UI changes, debug, SFX hooks.
-
Start screen + nightly accountability (Jan 3–5)
Prototype start screen; begin nightly ‘what did you do today?’ check-ins. Log/structure remaining work (controller, vault/camera turn, tag+VFX, crouch, stagger timing). Visual passes continue on maps/UI.
-
Routine syncs (Dec 15 & 20)
Regular syncs; steady shipping toward playable state.
-
Pursuer indicator + IP discovery workaround (Dec 12–13)
Add pursuer indicator. Campus proxy kills auto-discovery → manual host IP entry for now. Fix climb on small ledges.
-
Functional menu + network test plan (Dec 10–11)
Push functional menu; request default GameMode on maps. Plan Monday network test on ‘la serre’. Menu flow feedback to apply after feature lock.
-
Laser trap (teammate) + LD tracking
Teammate ships laser trap with tweakable values; tracked for LD integration.
-
Smoother feel + animated vault (Dec 2–6)
Movement feels smooth; ship animated vault (swappable; multiple variants supported).
-
Climb progress
Climb advancing; animations still glitchy.
-
Daily sync + slide anim; WallRun BP rework (Nov 23–25)
Finish slide (with anim); rework WallRun BPs so anims integrate smoothly.
-
Grapple ~50% + quick build
Grapple half-working (no lock/tuning yet). Quick build routes menu → dev map.
-
Stylish menu prototype; soften WallRun
Pause controller to prototype menu; tune WallRun values (softer feel).
-
Blocker = one-click
Classic: hours on a problem; fix was one click. Keep momentum.
-
WallRun/WallJump/Slide functional (Nov 8–10)
Movement suite functional; client-side anim replication is the blocker. Vault pass planned next.
-
First ‘Build works!’ + netcode stance
Build uploaded (WIP). Debate LAN vs true netcode; stance: ‘ça reste du réseau.’
-
Anim unblocked with Mixamo
Add Mixamo character to unblock animation work; confirm same skeleton; keep assets in _Dev.
-
Launcher build; wall-run replicated
New launcher build: WallRun ‘works’ (buggy) but replicated; hosting/testing enabled.
-
Docs & movement ideation (Oct 20–22)
Team spins up LD/GD docs and movement ideas (state machine, stamina, wall-run inputs, grapple cooldown). Push on networking despite a Monday Unity rendering deadline.
-
Kickoff & first replicated movement
Project starts; first replicated player movement working.
Team 07
- ArthurProducer & Level Designer
- TimothéCo-Producer & UI/UX Designer
- BastienController Designer & Level Designer
- LuanaSound Designer
- Michael AbidLead Programmer: Controller & Network
- KevinProgrammer: Integration & LD elements
- MatthieuCommunity Manager & Benchmarking