- Home
- Changelog
What's new on the block
Every build, every fix, every new way to run the corner. Newest first.
v0.4.0
Coming in the next APKYour voice, new modes and the cosmetics store
Added
- New Feedback screen in the menu: send a suggestion, bug report, balance note or anything else without leaving the game.
- Feedback written while offline is saved on the phone and sent automatically once you are back online.
- "My feedback" list shows everything you sent, its status and any reply from the team.
- The top player suggestions are listed on the Hood Warfare website, where players can vote for the ones they want most.
- The game version is shown on the boot screen, every menu, the pause menu and in a corner of the match HUD, so bug reports always say which build you were on.
- An "Update available" notice tells you when a newer version of the game is out.
- A "What's new" screen appears once after each update and lists the changes in that version.
- Two new game modes: Free For All (first to 20 kills or 8 minutes) and Team Deathmatch (first crew to 40 kills or 8 minutes), alongside Turf War.
- Room owners can pick the mode and map; Practice has a mode picker too.
- Cosmetics: weapon skins, outfits, premium characters, kill-feed emotes and crew tags, with a store and locker that preview them in 3D.
- Cosmetics are visible to everyone in a match and never change weapon stats.
- Cosmetics can be bought with gold, by card in the browser, or with crypto (the game shows the pay address and amount).
- Community features for the website: public profiles with bio, favorite weapon and recent matches, follows, blocks, a feed with posts and comments, and reporting.
- Crews: create or join a crew, crew tags, rosters and a crew leaderboard.
- Invite codes that can carry a welcome reward.
- A rebuilt narrator with more lines, variety, cooldowns and a settings toggle, plus new sound effects and music.
- An occasional ad between matches (at most one every three matches, never during a match).
- Six new maps alongside The Block: The Projects, The Docks, The Strip, The Yard, The Rooftops and Dead Mall, each with turf zones, RPG stashes, team and free-for-all spawns, and bots that know every route.
- Rooftops, galleries, bridges and container stacks to fight from; enterable shops and back alleys for flanking.
- New lighting for every map: night skies, dusk at the docks, sodium-lit rail yard, a dim dead mall with real reflections.
- Street art, billboards, posters and storefront signs for ToddMichael.tv, The Todd Michael Podcast, Todd's books, Thai Gold Source, 1 Matrix Tech, GhostBrain, 2Solutions, ExpatShield, TechBench Live and Hood Warfare.
Changed
- The game now reports its real version number instead of a development placeholder.
- Watching a rewarded ad on the results screen now pays 150 Street Cash.
- Matches can last up to 8 minutes in the new modes.
- Sharper, lighter textures (mipmaps and GPU compression) and a much smaller Block scene for faster loading and less memory.
Fixed
- Rewarded-ad verification now passes the ad network's setup check, so rewarded ads can be switched on for real.
Known issues
- The extra map choices (Projects, Docks, Strip, Yard, Rooftops, Mall) can be picked but still play on the Block 01 layout.
- Google sign-in is not configured yet; use email sign-in.
- Crypto checkout cannot take Bitcoin directly; pick another coin such as ETH, USDT or LTC.
- Bluetooth controller support has not been tested on a real controller yet.
- There is no iPhone version yet.
Technical notes
- `POST /v1/feedback` (kinds: suggestion, bug, balance, other) with an idempotency key so offline retries never duplicate, plus a "my feedback" read and public top suggestions with votes.
- `version.json` is the single source of truth for version name and Android versionCode (10); `changelog.json` is generated from this file for "What's new"; `GET /v1/public/version` drives the update nudge.
- Merge 5049bb3 (upgrade3/api): cosmetics and equip slots, FixedFloat crypto checkout, `/v1/community/*`, `/v1/admin/*`; migration `202610250001_Upgrade3`; docs/UPGRADE-3-API.md.
- Merge 5e9e93e (upgrade3/modes): `Runtime/modes.gd`, mode/map in rooms, queue, allocation and snapshots; cosmetics replicated per actor; interstitial pacing.
- AdMob SSV callbacks that match no reward return 200 "unmatched" without a grant; optional `interstitial_unit_id` in the release ads policy.
v0.3.0-beta
Available nowUpgrade 2: accounts, Street Cash, the arsenal and your own gangster
Added
- Sign in with an email code and keep your guest progress; every player claims a unique gangster name.
- Two currencies: Street Cash earned from kills, captures, wins and rewarded ads, and Gold Bars from daily login streaks or purchase.
- An in-game store and loadout picker: 9 guns across pistol, rifle and shotgun slots, extended, taped and drum magazines, and light or heavy body armor.
- Grenades (one free per life), medkits and hollow-point rounds you can stock up on and bring into matches.
- An RPG you can grab from the rooftop stashes; whoever carries it shows up on everyone's radar.
- Enterable buildings with doorways, furnished interiors, stairs and steel fire escapes up to the roofs.
- A third-person camera you can toggle; it shows more around you but fires with wider spread.
- Make-your-gangster creator: pick a body, skin tone, hair, facial hair, clothes and accessories, or start from a photo analyzed on your phone (the photo never leaves the device).
- Your name, look and loadout appear in matches; bots get gangster names too.
- Android volume buttons can fire (Up) and throw grenades (Down) during matches, with a settings toggle.
- Gold packs can be bought on the website.
- Public leaderboards, player pages and live stats for the website.
Changed
- The HUD gains grenade, medkit and view buttons with counts, an armor bar, gun names and an RPG slot, all fitted to crowded phone layouts.
- Matches now pay Street Cash and use up the consumables you brought.
- The store and account screens connect on their own instead of going through Play online first.
Known issues
- Google sign-in is not configured yet; use email sign-in.
- Refunded or disputed purchases are not taken back automatically.
Technical notes
- 4c001ee: weapons/mags/armor/consumables tables in `Runtime/rules.gd`; grenade and RPG physics, armor soak, per-player results.
- e150b8e: accounts (email code, Google), names, wallet/inventory, store, loadout/avatar, Whop checkout and signed webhook, public reads, CORS; migration `202610240013_Economy`.
- Contract in docs/UPGRADE-2-CONTRACT.md, API notes in docs/UPGRADE-2-API.md.
- 1970ef4: avatar recolor shader and attachments; the server applies name/avatar/loadout from admission.
- Merges a193946 and 5a33d29 (upgrade2/api); HUD layout passes 8868af6..9442c93.
Online for everyone
Added
- Online matches now work over the internet, not just on the home network, through the public game address.
- Muzzle flashes, physical brass casings and shotgun shells, with clink sounds.
- A live phone screen in your hand when you make a call-in.
- Call-ins upgraded: the drive-by car cruises slowly with hydraulics, underglow and music; homies pull up at the curb and hop out; snitched enemies glow red through walls.
- Call-in countdown chips on the HUD.
Changed
- Slow home connections get more time to connect before the game gives up.
- HUD layouts were reworked for small and crowded phone screens.
Fixed
- Phones no longer reject server updates when looking straight up or down.
- Sounds stop cleanly when a match ends.
Known issues
- Narrator voice lines are stand-ins until the voice generator account is fixed; captions always work.
- Bluetooth controller support has not been tested on a real controller yet.
Technical notes
- f292e6b: long-lived online CA and server bundle builder with bundle id.
- 54a0949 / 6d8e5de: route through the GCP edge, then a DNS-only hostname (carrier DNS rejected sslip.io).
- 235c800 / 41bbf04: dedicated online VM, `tools/boost/deploy-vm.sh`; boot deadline 10 s -> 20 s.
- 0d74d25: full test pass with HUD and first-person fixes; 8de6562 trailer capture pipeline.
- docs/ONLINE-HOSTING.md.
Boost: night city, call-ins and a real first-person look
Added
- Call-ins paid for with Rep earned from kills and captures: Snitch reveals the enemy team, Homies sends two AI backups, Drive-by sends a car down the main street.
- Making a call takes your phone out for a moment, so you cannot shoot while dialling; bots use call-ins too.
- Block 01 rebuilt as a night-time inner-city block with a liquor store, barbershop, pawn shop, basketball court, neon, street lamps and graffiti.
- New street characters in team colors with bandanas and full animations.
- First-person view shows your own arms and sleeves, with aiming, reload animation, recoil and impact effects.
- A new HUD with radar, kill feed, banners, health bar, hit markers, damage flash and a reload ring.
- A narrator that calls out match start, captures, call-ins, multi-kills, streaks, lead changes and the final minute.
- Real gunshot, reload, car and night-city sounds; footsteps; hit flinch and ambient effects such as neon flicker and steam.
- A live 3D street scene behind the menus with new title fonts.
Changed
- Smoother performance on phones with resolution scaling and lighter lighting.
- The touch controls use a new L-shaped button cluster with a fallback grid on unusual screens.
- Closing the Practice tips hides them instead of quitting Practice.
Known issues
- Online play only works on the private network in this version.
Technical notes
- 6df469f: server-authoritative call-ins and rep economy in `Runtime/rules.gd` / `match.gd` / `bots.gd`.
- 1206178: Quaternius + Poly Haven kit baked into `Art/Block01/HoodBlock.scn`; Rocketbox characters; Vulkan Mobile with GL fallback.
- 23d93a0: FSR scaling, FXAA, cached HUD styles.
- 9346e55: validated L-shape touch cluster; docs/BOOST-UPGRADE.md.
Private phone beta polish
Added
- Practice now opens with a guide and checklist (move, look, fire, reload, objective) and a Skip button.
- A clearer way to join a friend's room, plus a new dusk menu background.
- An on-screen marker that points to the objective.
Changed
- Menus follow the approved color palette and stay inside the phone's safe area.
- Touch controls adapt to busy eight-player matches.
- Settings toggles use the same button style as the rest of the menus.
Fixed
- Match results are no longer lost if the game server restarts right after a match.
- Controller buttons now trigger the right menu actions.
- Touch look works through the HUD, and quick taps are no longer missed.
- The game no longer hangs at boot on a bad connection, and a cancelled boot cannot restore a stale session.
- Joining a match recovers if the reply from the server was lost.
- Long matches no longer build up an endless command history.
Known issues
- Not yet tested with a real Bluetooth controller.
- The launch decision is still on hold; this is a private test build.
Technical notes
- e2de195 / 85a6992: persisted results are recovered before new intake; storage that cannot be read keeps the intake fence.
- 13e1754: soak lab per-file limits and PostgreSQL protocol readiness (PARENT_SOAK_REPAIR_20261019.md).
- a5b6a59 / 984d897: Practice guidance, friend joins, arena surfaces (PARENT_NATIVE_U2_REVIEW_20261019.md).
- 558086a: recover authorized committed admission responses; cfb7aac: bounded match command history.
Hardening and graphics finish
Added
- Richer street visuals: facade relief, finished materials and lighting, and better-machined first-person weapons.
- Graphics quality tiers that are prepared before a match starts.
Changed
- The HUD keeps touch buttons and captions in their own lanes when you switch between touch and controller.
- Settings can be changed even while graphics quality is still loading.
Fixed
- Cancelling matchmaking at the last moment no longer drops you into a match.
- Results always match the match you just played.
- Server maintenance mode now survives server heartbeats and needs an explicit resume.
- Sharing stays cancelled after you cancel it.
Known issues
- No physical phone, controller or accessibility test pass has been completed yet.
- There is no iPhone version yet.
Technical notes
- cd84feb / 53e10c5 / bf5e80e: bounded server leases, operator drain kept across heartbeats and registration, audited resume.
- 6957874 / 283a1df: production reward adapters bound to the release policy; offline production packet verification.
- e2c6666 / 192ceb8 / e4e20e2: urban materials, lighting, facade relief, isolated quality profiles.
- c950478: sign and verify Android App Bundle exports; 9e0c1bf: migration-only restore of the private server.
- 81ae6a7: dedicated server no longer creates client nodes.
Store, rewards, safety and accessibility
Added
- Ad consent screens and optional rewarded ads, with rewards that are granted exactly once even after a crash.
- Cosmetic purchase and equip, with your cosmetics shown on match results and result cards.
- Report and block players from rooms and matches.
- Presentation settings that are saved on the phone, plus font scaling and safe-area aware menus.
- Controller and keyboard remapping, controller pairing, and menu navigation by controller.
- Room controls for bots and settings, matchmaking search progress, and a confirmation before leaving a room or match.
- Android accessibility support so screen readers can read the menus.
- Share friend room invites through the phone's share sheet.
- Optional, opt-in gameplay measurement you can turn off at any time.
- Account deletion with an explicit confirmation step.
Changed
- All English text lives in one catalog, ready for translation.
Fixed
- Bots now move toward enemies they can see but cannot yet hit.
- Privacy choices are kept even when ads are turned off.
Known issues
- Ads use test units only; real ads and optional data collection stay off.
- No controller has been tested on real hardware.
Technical notes
- 564fb3c..bb8ea96: native consent core, pending-grant recovery, consent refresh watchdog.
- 03e5ce4 / 8d877a4 / 40b4d3f: event ingest, experiment enrollment, cohort reports.
- aad732e: bounded fail-closed soak orchestration; 4e5a197: backup and restore drill.
- 88ae429: capacity forecasts and draft store packet (docs/release/).
- 8c20484 / 46874b6: cosmetic purchase/equip and authoritative cosmetic tags in results.
A complete match loop
Added
- Distinct weapon roles and authored bots that fill the teams.
- An urban look for the first block with presentation assets.
- A match HUD with readable result cards.
- Boot, results, progression and next-match screens that flow together.
- An Android package with secure guest sign-in refresh.
Changed
- Other players now move smoothly between server updates.
Fixed
- Combat audio stops when a match ends.
- Touch actions in rooms are kept, and finished results are recovered if the app was interrupted.
- Menu dialogs keep focus where it belongs.
Known issues
- Online play is private: only test phones on the private network can join.
Technical notes
- 4c6ba77: weapon roles, authored bots, fixed-physics replay.
- 02ef29f: Android bridge packaging and guest refresh identity.
- bceb780 / 710cac0: supervised private target with live health checks.
- 7f2c233: remote actor interpolation and ordered input lifecycle; 7486e15: A2 Presenter lifecycle recovery.
Moved to Godot and first online match on a phone
Added
- The game now runs on the Godot engine, built for Android.
- First online matches: warmup lobbies, live server-run gameplay and secure joining.
- Reconnecting during a match puts you back in your own character.
- Practice mode that can be restarted cleanly.
- Rewards from the server are saved and delivered once, even after a reconnect.
Fixed
- Players waiting in the lobby no longer spawn before they are fully admitted.
- Warmup and jumping stay in sync on a real phone.
Known issues
- Only a private test phone could play; no public release.
Technical notes
- 4f52bcd: native foundation ported from Unity to Godot 4 with secure API admission (Unity packet kept in docs/history/).
- 589c2c8: Godot pool admission recovery and API journeys.
- ba48901 / 2344d1a / 0dac1d5: warmup rosters, online gameplay, ENet lifecycle.
- 1c87f8e: verified reward callbacks and once-only recovery grants; a62bbaa: private phone build tied to source.
Foundation: plan, contracts and the backend
Added
- The Hood Warfare Mobile design: Android first, online PvP, bots, friend lobbies and controller support.
- Guest accounts that are created automatically and kept on the device.
- Friend rooms with invite codes.
- Matchmaking that fills matches fairly and admits each player once.
- Match results and progression that are saved on the server.
- Moderation, configuration and privacy tools for operators.
Known issues
- No playable game yet; the first prototype used Unity and was replaced in 0.1.1.
Technical notes
- 6b4e4f0..46bd543: specification, 25-task factory plan, UI spec and wireframes (docs/superpowers/, docs/design/).
- 7649814 / 9313b54: .NET API and test foundation with validated wire contracts.
- d97688e / 6a39e5f: durable guest identity, transactional friend rooms, matchmaking leases with consume-once admission.
- dc40db8: persisted progression and immutable gameplay results; 8bda62a: configuration, moderation and privacy operations.
Nothing hereNo changes of that type yet.