6 KiB
Pitchwell — gameplay
Repo: OpenKKnD. In-game title: Pitchwell (never ship “KKnD” in UI, VO, or maps).
Genre loop: 1990s two-faction wasteland RTS. Original setting, names, and art only — see IP-FENCE.md.
Engine: Godot 4. Net: ENet (MultiplayerENet). Briefings: original video ≥1280×720.
Pitch (one paragraph)
After the Bent War, the land leaks Pitch — black well-tar that both remaining powers can burn. The Crooked Staff drinks it as tincture and walks ley cracks. The Rust Host packs it into reactors and walks on treads. Same map, same wells, different conversion. Whoever holds the wells fields the army.
Match loop
- Briefing (campaign) — HD FMV, then load.
- Open — HQ + 4 workers. 500 Pitch. Scout with the fifth build.
- Seed — one extra worker, first Sump Well, housing, T1 producer.
- Expand — second well, T1 army, one turret on the choke.
- Tech — T2 producer + one siege or AA before the opponent’s push.
- Break — raid workers or snipe tech or mass T3. Do not turtle past pop cap.
- End — enemy HQ dead, or annihilation (no production + no army).
Skirmish/MP skip step 1. Target length: 12–20 min 1v1, 20–35 min 2v2.
Economy
| Item | Rule |
|---|---|
| Resource | Pitch only. No power grid. |
| Nodes | Sump Wells — finite (2 500 each), slow seep (+0.4/s while claimed). |
| Carry | Worker load 100. Trip time is the real cost; wells in fog are the prize. |
| Drop-off | Faction refinery or HQ. Refinery next to the well wins. |
| Start | 500 Pitch, 10 pop, 80 pop cap. |
| Housing | +8 pop per shack. Cap 80. |
| Costs | Worker 50 / 12 s. T1 75–120. T2 200–350. T3 450–700. Turret 150. |
Staff harvests slower (−15%) but Well-Walkers walk rough ground at full speed.
Host harvests faster (+10%) and vacuums wreck piles for +25 Pitch. Treads crawl in crooked woods.
Claim a well by finishing a refinery in radius. Neutral wells are contestable. Last refinery standing holds the seep.
Combat
HP + damage, 20 Hz sim. Four armor tags: Hide, Plate, Ward, Air.
| Attacker \ target | Hide | Plate | Ward | Air |
|---|---|---|---|---|
| Bolt / small-arms | 100% | 60% | 80% | 40% |
| Hex / splash | 130% | 70% | 50% | 80% |
| Shell / siege | 70% | 130% | 110% | 40% |
| Flak / kite | 50% | 50% | 80% | 140% |
Splash is Staff’s edge. Single-target armor is Host’s. No Warcraft-style skirmish heroes. Campaign officers are VO + a flag on a normal unit.
Fog of war. Radar / familiar reveals a blob, not the roster. Cliffs and woods block ground; air ignores both.
Tech (three tiers)
Shared beat: T1 swarm → T2 push → T3 closer. Unlock by building the tier hall, not by researching a global age.
| Tier | Staff hall | Host hall | You should have |
|---|---|---|---|
| T1 | Coven Yard | Bolt Hall | workers, scouts, one turret |
| T2 | Hex Circle | Dynamo | siege or AA, second well |
| T3 | Eclipse Spire | Core Stack | air + one super shot |
Supers are once-per-5 min, visible charge, dodgeable. They are not instant GG.
Campaign
Two campaigns × 8 missions (0 = tutorial, 1–7 = war). Same maps, opposite briefings. No mirrored clone of any commercial campaign.
| # | Staff beat | Host beat |
|---|---|---|
| 0 | Walk, gather, build a Font | Walk, gather, build a Press |
| 1 | Hold two wells vs raiders | Smash a feral wreck-camp |
| 2 | Night woods, Crookhounds | Tread through slag ridges |
| 3 | Rescue a coven, escort | Steal a Font’s Pitch |
| 4 | First air (Kite-Familiars) | First Rotor-Cans |
| 5 | Defend Eclipse charge | Core Dump a Bend Keep |
| 6 | Island wells, air-only closer | Naval-bridge treads + Sky-Hooks |
| 7 | Break the Scrap Spire | Break the Bent Keep |
Win: listed objective. Default fail: HQ lost, or timeout on escort.
Briefings (FMV)
| Spec | Value |
|---|---|
| Resolution | ≥1280×720, 16:9. 1080p preferred. |
| Length | 20–90 s. Skip with Enter after 2 s. |
| Picture | Original live-action or own 3D render. |
| Audio | Original VO + score. No commercial rips. |
| Fallback | Still 1280×720 + VO if the movie is missing (dev only). |
Forbidden: 480p, SMK/Bink dumps, “AI upscale” of someone else’s frames, Nintendo likenesses, named characters from other games.
File layout: media/briefings/<campaign>/<nn>_<slug>.ogv (+ .license). Credits in CREDITS.md when that file exists.
Multiplayer (ENet)
| Spec | v1 | later |
|---|---|---|
| Transport | Godot ENet MultiplayerENet, UDP 7777 |
same + dedicated |
| Model | Host-authoritative, 20 Hz | lockstep + hash desync dump |
| Size | 1v1, 2v2 (4 peers) | 3v3 |
| Lobby | LAN browse + IP join | NAT punch / relay |
| Sync | Pitch, pop, unit ids, orders | replays |
| Disconnect | 8 s timeout → AI take-over or defeat | — |
Orders are the wire format (select, move, attack, build, rally). Do not replicate every transform if lockstep lands. Until then, host sim is truth; clients interpolate.
Pause is campaign-only. MP never pauses.
Cheats (pitch 9999) are offline-only.
Modes & victory
| Mode | Victory |
|---|---|
| Campaign | Scripted objective |
| Skirmish | HQ kill or annihilation (toggle) |
| MP | same as skirmish |
Draw if both HQs die in the same second.
Camera & input (v1)
RTS camera, 3D world, min view 1280×720. WASD / edge pan, wheel zoom, LMB select, RMB move/attack, B build, H hold, S stop, Ctrl-groups 0–9.
Build slices
| Slice | Ship |
|---|---|
| v0 | One map, both workers, one well, T1 melee, fog, win on HQ |
| v1 | Full T1–T2, turrets, 2 skirmish maps, LAN 1v1 ENet |
| v2 | T3 + air + one super, campaign 0–3 with HD briefings |
| v3 | Campaigns complete, 2v2, lockstep experiment |
Do not start v2 art until v1 plays in LAN.
Out of scope
Story novels, four factions, naval as a third army, loot RPGs, user-generated FMV, anything that needs a proprietary ISO.