Guide
Game ballistic penetration and wallbang systems explained
Harbor Depot’s warehouse objective stalled for weeks. Defenders hugged plywood partitions and drywall corners that blocked all incoming fire — binary hitscan: either the ray hit a player or it stopped at the first surface. Attackers burned utility and time on flanks while campers held angles with zero risk. Round telemetry showed 41% of post-plant outcomes decided by “hard-cover camp” stalemates longer than 45 seconds. After shipping a material-tier penetration model with caliber-based penetration power, per-layer damage falloff, and oblique-angle penalties, hard-cover camps dropped to 14% of outcomes. SMG wallbang tags became a readable skill expression; rifle AP rounds punched two drywall layers; concrete still stopped everything except designated anti-material weapons — without shrinking the map or removing cover entirely.
Ballistic penetration (colloquially wallbang) models how projectiles interact with world geometry beyond simple line-of-sight blockers. It decides whether a shot through a wooden crate still kills, how much damage survives two walls, and whether grazing angles ricochet instead of punch through. This guide covers material hardness tiers, penetration power per weapon class, multi-layer traversal and damage falloff, angle-of-incidence rules, ricochet vs pass-through, player feedback and fairness, integration with suppression and ranged combat pacing, the Harbor Depot refactor, a technique decision table, pitfalls, and a production checklist.
What penetration is (and is not)
Penetration lets bullets continue after striking a surface, optionally damaging targets on the far side. It is not the same as area damage through walls (explosives), not destructible cover (geometry removal), and not expanded hitboxes behind thin props. Penetration is a ray-march or segment query that consumes penetration budget per material layer until the bullet stops or exits.
A good penetration system makes cover graded, not binary. Plywood is soft; reinforced concrete is hard. Players learn which angles are “wallbangable” and which require flanking or utility. Without penetration, level designers must either make all cover perfectly safe (camp meta) or make all cover paper-thin (no cover fantasy).
Material hardness tiers
Tag every penetrable surface with a material class and a penetration cost (how much weapon power one traversal consumes). Typical tier ladder:
| Tier | Examples | Typical cost | Design role |
|---|---|---|---|
| 0 — None | Reinforced concrete, thick steel plate | Blocks all | Hard anchor cover; objective rooms |
| 1 — Light | Plasterboard, thin wood, corrugated tin | 1 | Readable wallbang targets; SMG/rifle tags |
| 2 — Medium | Brick veneer, car doors, office partitions | 2 | Rifle-only or multi-hit wallbang |
| 3 — Heavy | Engine block, sandbags (stacked), tree trunk | 3–4 | LMG / AP ammo fantasy; slow chip damage |
Use consistent art language: players should predict tier from visuals. Harbor Depot painted penetrable drywall with a subtle seam texture; concrete pillars used a different normal map. Avoid invisible penetration blockers that look identical to penetrable surfaces.
Thickness and multi-layer stacks
Two adjacent drywall panels are two traversals, not one. Model each render mesh collider as a layer with its own cost. Stacked materials (wood crate against metal siding) sum costs. This prevents “one thin prop blocks an entire warehouse wall” bugs.
Weapon penetration power
Each weapon (or ammo type) carries penetration power — the budget available per shot. A 9 mm pistol might have power 1; an assault rifle 2; an LMG or AP rifle 3; a dedicated anti-material round 4+.
On impact, subtract the material cost from remaining power. If power reaches zero mid-layer, the bullet stops inside that layer (no exit wound). If power survives, continue the ray from the exit point with reduced damage.
Damage falloff per layer
Penetrating shots should not deal full damage. Common pattern:
- Base damage on first hit (direct line-of-sight target).
- Falloff multiplier per layer traversed (e.g. 0.65× after first wall, 0.45× after second).
- Minimum damage floor (e.g. 15% of base) so wallbangs chip but rarely one-shot through three layers.
Pair falloff with spread: wallbang attempts through unknown geometry are inherently uncertain; slightly wider cone after penetration rewards map knowledge without pure RNG.
Caliber vs ammo-type modifiers
Separate weapon class from ammo loadout. FMJ increases penetration power at the cost of direct-hit damage; hollow-point does the reverse. Loadout choice becomes tactical without new animation sets.
Angle of incidence and ricochet
Grazing shots should behave differently from perpendicular ones. Compute angle between bullet direction and surface normal:
- Near-perpendicular (< 30° from normal): full penetration cost applies; standard falloff.
- Oblique (30–60°): increased penetration cost (+1 tier) or forced ricochet roll.
- Grazing (> 60°): high ricochet probability; bullet deflects with damage heavily reduced or zero.
Ricochet can spawn a secondary ray with diminished power and randomized deflection cone — fun for metal corridors, dangerous if every surface ricochets (friendly-fire chaos). Cap ricochet count at 1–2 per shot in PvP.
Penetration vs cover height
Low crouch behind a crate may leave head exposed while torso is safe; penetration through the crate still tags legs if your hurtbox extends below cover. Align penetration rays with stance capsules so wallbangs feel physically consistent.
Detection, feedback, and readability
Attacker feedback
- Distinct impact VFX per material (dust puff vs spark vs wood splinter).
- Exit-hole decal on far side when penetration succeeds.
- Hit marker tier: solid hit vs wallbang chip (different color/icon).
- Penetration audio: muffled report on exit side for enemies to locate.
Defender feedback
- Directional damage indicator showing through-wall source sector.
- Subtle camera punch or shell-whiz SFX before impact on thin cover.
- UI callout first time a player is wallbanged (“Cover is not bulletproof”) in onboarding.
Spectator and esports
Replay tools should draw penetration path as a dashed line through layers. Casters need to explain why a 37-damage chip killed a one-HP defender — transparency reduces “random death” perception.
Balance, pacing, and multiplayer
Penetration shifts the TTK budget: wallbang chip makes passive defense costly. Tune so attackers must commit (ammo, position reveal, spread risk) rather than pixel-scan every corner from spawn.
Mode-specific rules
- Search-and-destroy / objective modes: moderate penetration breaks post-plant camps (Harbor's target).
- Battle royale: often lower penetration to preserve looting tension behind buildings.
- PvE horde: high penetration lets players shoot through zombie clusters — satisfying power fantasy.
Suppression interaction
Near-miss suppression through thin cover should still accumulate — players pinned behind drywall feel pressure even without direct hits. Pair penetration tags with suppression meters so LMGs have a role beyond raw DPS.
Server authority
Penetration raycasts must run server-side (or on host in P2P). Client-only wallbang prediction causes dispute clips. Log material tier, layers traversed, and exit damage for anti-cheat review.
Harbor Depot refactor (worked example)
Problem: binary hitscan stopped at first collider; plywood and drywall were impenetrable; defenders won 41% of rounds via post-plant camps behind light cover.
Changes shipped
- Material tags on all warehouse props: tier 1 drywall, tier 2 brick, tier 0 concrete pillars.
- Penetration power: pistol 1, SMG 1, rifle 2, LMG 3; AP mag +1 on rifles.
- Per-layer damage falloff 0.70× / 0.50× / 0.35×; floor 18% base damage.
- Oblique angle +1 tier cost above 35°; ricochet on metal at > 55°.
- Wallbang hit marker (amber) + directional damage wedge for defenders.
- Penetration path debug overlay in spectator mode.
Result: hard-cover camp outcomes 41% → 14%; average post-plant duration −22%; SMG pick rate in warehouse map +31% without rifle nerfs. Defender complaints about “random deaths” dropped after onboarding tooltip and material visual pass.
Technique decision table
| Technique | Best for | Weak when | Harbor-style signal |
|---|---|---|---|
| No penetration (binary cover) | Arena hero shooters, clear LOS readability | Tactical modes with light props | Camp stalemates > 30% of rounds |
| Tiered material penetration | Tac-shooters, military sim, extraction | Arcade fast-TTK modes | Players avoid entire map zones as “safe” |
| Weapon-specific AP ammo only | Loadout depth, ranked metas | Onboarding simplicity | Default ammo never wallbangs; AP feels mandatory |
| Full ballistic sim (velocity, drop, pen) | Milsim, sniper fantasy | Console close-quarters | CPU budget spikes; netcode disputes |
| Penetration + destructible cover | Campaign set-pieces | Competitive fairness | Cover state desync in multiplayer |
Common pitfalls
- Binary impenetrable light props — Harbor's 41% camp rate; tag plywood as tier 1.
- Full damage through three walls — one-shot wallbangs feel random; use per-layer falloff and floors.
- Invisible tier mismatch — identical mesh, different penetration; players cannot learn map.
- Client-authoritative wallbangs — exploit and replay disputes; server must validate layers.
- No defender feedback — deaths feel cheated; add directional indicators and exit audio.
- Pistol wallbangs through concrete — breaks weapon identity; reserve tier 0 for true hard cover.
- Unlimited ricochet chains — team-kill roulette in tight corridors; cap bounces.
- Penetration ignores stance — crouch behind crate still headshot through floor gap; align hurtboxes.
Engineer checklist
- Define material tier enum and per-surface penetration cost in level tools.
- Assign penetration power per weapon class and optional ammo modifiers.
- Implement multi-layer ray march with remaining-power accounting.
- Apply per-layer damage falloff and global minimum damage floor.
- Add angle-of-incidence cost and ricochet rules for metal/graze cases.
- Tag penetrable surfaces with consistent art language for player learning.
- Ship attacker hit-marker tiers and defender directional damage wedges.
- Integrate suppression accumulation on near-miss through thin cover.
- Run penetration queries server-side; log layers and damage for replays.
- Build spectator/debug penetration path visualization.
- Playtest camp-prone objectives before and after; tune tier 1 coverage.
- Document wallbang-safe vs hard-cover zones in map callouts.
Key takeaways
- Cover should be graded — material tiers turn binary blockers into readable risk.
- Penetration power + falloff — Harbor cut camp outcomes 41% → 14% without map shrink.
- Angles matter — oblique shots cost more or ricochet; perpendicular wallbangs reward positioning.
- Feedback prevents “random death” — markers, audio, and directional UI sell the system.
- Pair with cover, suppression, and weapon classes — penetration is one leg of tactical shooter pacing.
Related reading
- Cover systems explained — hard vs soft cover and peek mechanics
- Ranged combat systems explained — engagement distance and TTK budgeting
- Suppression fire and pin-down systems explained — pressure through thin cover
- Recoil and spread systems explained — accuracy cost on wallbang attempts