GHOUL Had 36 Gore Zones and Zero Physics. Nothing Since Has Fixed That.

By · September 2026 · 14 min read · Sources: Game Developer postmortem, IMFDB, developer interviews

In the year 2000, Soldier of Fortune did something no shooter had done before. Its enemy models were divided into 26 independent zones, and each one responded differently to being hit. A shotgun blast to the stomach left a wound you could see. A shot to the arm could take the arm off. Hit a man's hand and he might drop his weapon and surrender. The system behind this was called GHOUL, and it was so far past the tolerances of the era that some jurisdictions rated the game like an adult film rather than software.

A quarter century later, GHOUL is still the reference point. Ask anyone who played Soldier of Fortune what they remember and you'll get the same answer: what bullets did to bodies. No mainstream shooter since has shipped a body-damage system that detailed.

But underneath the gore was a secret almost nobody talked about, then or since: GHOUL contained no ballistics whatsoever. No projectile physics, no material penetration, no velocity, no energy. A canvas tent was as bulletproof as a bank vault. The most famous damage model in gaming history had nothing underneath it.

And here's the part that should bother you if you care about shooters as simulations: in the 24 years since, the industry has built the other half — real penetration physics, in games like Escape from Tarkov and Arma — and let GHOUL's half atrophy. Nobody has ever shipped both. This article is about that gap: what GHOUL actually was, what modern shooters actually simulate, and why the two halves have never met.

What GHOUL Actually Was

Start by clearing up what GHOUL was not, because the name has accumulated a mythology. GHOUL was not a ballistics engine. It was not even primarily a damage system. According to the development postmortem written by project coordinator Eric Biessman for Game Developer in September 2000, GHOUL was Raven Software's replacement for the entire Quake 2 modeling system: new model format, animation-data compression, attachable "bolt-on" sub-models, multiple skin pages per model. The gore capability everyone remembers was one application of that modeling flexibility — and, by Raven's own account, a deliberate branding exercise. Biessman wrote it plainly: "Ghoul became an important marketing word for SoF."

Mechanically, the famous damage worked like this, per the same postmortem: gore zones were implemented as skin-page overlays (a wounded texture swapped over the clean one), bolt-on viscera models attached at the wound site, and the ability to detach limb sub-models. Death reactions were animation lookups — the game selected one of several death sequences based on where on the body the enemy was hit and what weapon hit them. Location in, animation out. That's the whole pipeline.

Notice what's absent from that pipeline: physics. There is no projectile with a mass and a velocity. There is no target material with a density and a strength. There is no computation anywhere between "hitscan ray intersected zone 14" and "play stomach-wound animation, apply viscera bolt-on." The inputs are a zone ID and a weapon ID; the output comes from a table. It's a brilliantly art-directed lookup, not a simulation.

Two more details from the postmortem underline how far this was from physical modeling. First, GHOUL in the original Soldier of Fortune didn't even have a skeletal animation system — Raven judged the switch too risky mid-project and shipped with a vertex-compression scheme instead. Second, the man behind the system, programmer Gil Gribb, is credited in a GamesRadar retrospective (via assistant programming director Dan Kramer) with the actual innovation: breaking a character model into sub-locations, which to the team's knowledge no shooter had done before. That was the breakthrough — where you hit mattered. What the bullet was doing on the way there did not exist as a concept.

The sequel scaled the same idea

Soldier of Fortune II: Double Helix (2002) upgraded to GHOUL 2.0 on the Quake 3 codebase and raised the zone count — Raven's own marketing pitched 36 damage zones and 16 dismemberment zones. Wounds became more localized and more believable; full dismemberment now required genuinely powerful weapons rather than a couple of pistol rounds. The direction was realism. The mechanism was still thresholds and tables: more zones, finer gates on which weapon class unlocks which effect.

And the ballistics were still absent. A period review at Old PC Gaming states it flatly: bullet penetration is not a factor in Soldier of Fortune II — duck inside a tent and you have total cover against incoming high-caliber fire. Canvas stops 7.62. If you remember enemies shooting you through walls, that wasn't simulated penetration either; speedrun documentation of the game describes AI that behaves as if it has wallhacks — a cheat, not a system.

Then the third game threw half of it away

Soldier of Fortune: Payback (2007) is the cautionary coda. Developed by Cauldron on their CloakNT engine — no Raven, no GHOUL — it kept the gore as a bullet point on the box. But modding documentation on ModDB reveals what was under the hood: weapons divided into three categories (light, heavy, explosive), with the category gating whether dismemberment happens. Twenty-six zones with per-weapon thresholds had collapsed into a three-row table. Reviewers at the time judged the dismemberment the game's only redeeming feature — and even that was a shadow of the system it was imitating. When the studio that built the tech left, the tech left with it.

Bar chart showing damage zone counts across Soldier of Fortune games: 26 zones in SoF1 (2000), 36 zones plus 16 dismemberment zones in SoF2 (2002), collapsing to 3 weapon categories in Payback (2007)
26 → 36+16 → 3. The system that made SoF famous was gone by the third game.

What Modern Shooters Have — and Don't

Now flip to 2026 and take inventory of the realism-shooter landscape. The striking thing is that the industry built exactly the half GHOUL was missing, and only that half.

Escape from Tarkov has the most developed small-arms ballistics in a mainstream shooter: every cartridge carries penetration and damage values, armor is modeled by zones and material classes, rounds ricochet and fragment, velocity matters. It is the closest thing to a per-projectile simulation players can buy. And its body-damage model? Locational hit zones, bleeds, fractures, a medical system — genuinely deep as gameplay — but visually, bodies remain intact. There is no GHOUL-class rendering of what the wound channel did. The simulation is rich and invisible.

Arma and Squad model projectile flight, drop, and penetration through vehicles and structures at the fidelity you'd expect from milsim lineage. Their infantry damage models are hit-probability zones with health pools — functional, abstract, and visually mute.

Ready or Not simulates penetration through interior materials — the drywall-and-door physics that CQB actually hinges on — and its wound rendering is better than most. It is still nowhere near a 36-zone anatomical model.

Hell Let Loose is the instructive edge case. Developer statements on the Steam forums confirm penetration exists — for certain deployable barricade tiers. The environment is another story: players have complained for years, in threads spanning 2021 to today, that thin wooden planks are effectively bulletproof and that machine guns penetrate no armor at all; one community answer summarized the design honestly — it's simplified, they don't penetrate armor, it's a game mechanic. For a title marketed on WWII realism, the ballistic layer is thin enough that the community keeps re-litigating it. (This is not a "HLL bad" point — it's evidence of demand: the players of realism shooters notice the missing layer and ask for it, repeatedly.)

Meanwhile, GHOUL's actual descendants evolved along the anatomy line, not the ballistics line. Sniper Elite's X-ray kill cam is locational, anatomical damage as spectacle — the closest living relative of GHOUL's design philosophy, and even it renders a scripted anatomy vignette rather than computing terminal ballistics. Dead Space's strategic dismemberment took the "shoot the specific part" idea and made it the core verb of a horror game. Fallout's V.A.T.S. made body-part targeting a turn-based mechanic. All of them inherited where you hit matters. None of them inherited — because there was nothing to inherit — what the projectile physically does.

Game / systemMaterial penetration physicsAnatomical damage model
SoF / SoF2 (GHOUL, 2000–02)None — lookup tables, canvas stops rifles26 → 36 zones, best ever shipped
SoF: Payback (CloakNT, 2007)NoneRegressed to 3 weapon categories
Escape from TarkovPer-round pen values, armor classes, frag/ricochetDeep as gameplay, visually intact bodies
Arma / SquadProjectile flight + structure/vehicle penetrationZone HP pools
Ready or NotInterior material penetrationBetter than most, far from 36 zones
Hell Let LoosePartial (select barricades); environment largely opaqueMinimal
Sniper EliteTrajectory sim (drop, wind)Anatomical kill-cam (scripted vignette)

Read the columns. In 24 years, no row has ever gone green on both. The two axes — what the bullet does to the world, and what the bullet does to the body — have never met in one shipped game.

Timeline chart showing two tracks across FPS games from 2000 to 2026 — damage model depth (green) and ballistics physics (red). The two lines cross paths but never both peak in the same game, illustrating that no shooter has shipped both a deep anatomical damage model and real penetration physics
Two tracks, seven games, twenty-six years. Neither line ever reaches the top of the other.

The 24-Year Gap

Why? The comfortable answer is content ratings: GHOUL-level gore in a modern AAA release means fighting ESRB, PEGI, USK, and every platform holder simultaneously — Soldier of Fortune was rated like an adult film in places, Payback was refused classification in Australia outright, and no publisher volunteers for that fight at a $200M budget. That's a real force, and it explains the atrophy of the damage-model axis. Treat it as one hypothesis among several, though, because it doesn't explain the other half of the gap.

Because ratings don't prevent ballistics. Nothing about ESRB stops a studio from computing whether 5.56 goes through a pine door. The reason most shooters don't is more mundane: there is no infrastructure for it. Physics middleware will give you rigid bodies, cloth, destruction, vehicles. Animation middleware will give you ragdolls and hit reactions. But no off-the-shelf layer answers the question a penetration event actually poses: given this caliber, this velocity, this material, this thickness, this angle — does it go through, and with how much left?

So every studio that wants the answer builds it from scratch, calibrates it from scratch, and scopes it down to whatever the game absolutely needs — Tarkov's armor-class tables, Squad's vehicle plates, Ready or Not's drywall. Each is a bespoke sliver of the same physics problem, solved locally, never generalized. GHOUL, remember, was itself a bespoke system that died with its studio's involvement — Payback's three-category table is what "we'll rebuild it ourselves" looks like under budget pressure.

The gap, in other words, isn't artistic. Wound assets, dismemberment rigs, overlay textures — 2026 art pipelines eat that for breakfast, and the Sniper Elite series proves anatomical rendering sells. The gap is infrastructural: the industry never built the layer that sits between "the ray hit something" and "show the consequence."

The Missing Layer

Name the layer precisely, because it's neither of the things games already have. It is not hit detection (games have superb hit detection). It is not a damage model (that's what happens to the body after). The missing layer is terminal ballistics: the physics that runs between impact and consequence.

Its contract looks like this: input a projectile (mass, diameter, velocity, construction), a barrier (material, thickness, angle), and get back the physical outcome — penetrates or stops, residual velocity and energy if it exits, deformation and fragmentation state, what the exit event looks like. That single function call is what would let a game answer "the player shot through the door at the man behind it" with physics instead of a designer's spreadsheet — and it's what would make a GHOUL-class damage model mean something, because the wound rendered would depend on what actually arrived: a full-velocity rifle round, a yawing bullet that lost half its energy to a cinder block, or a cloud of fragments.

Diagram showing three columns: damage model on the left with checkmarks for body zone mapping, wounds, and dismemberment; ballistics on the right with checkmarks for projectile flight, penetration values, and ricochet; and the missing layer in the center with unchecked items for material-based penetration calculation, residual velocity output, and physics-to-wound mapping. BallisticEngine is identified as Layer 1
Two halves the industry ships. The layer between them is what nobody built.

Is that layer technically feasible? It already exists — outside the games industry. The physics is published: Poncelet cavity-expansion models for brittle materials, Johnson–Cook for metals, Mohr–Coulomb for granular media, fiber models for aramids, all of it validated against decades of military and NIJ test data. Our own engine, BallisticEngine, implements exactly this stack — five material-class physics models across 18 materials, with per-shot outputs (penetration depth, residual velocity, fragmentation, exit-cone geometry) and an export path that maps results onto Unreal Engine 5 Chaos Physics destruction parameters. We built it as a standalone calculator, not as game middleware — but it's an existence proof that the layer is buildable by a small team, because the underlying models are public science, not secret sauce. The question was never feasibility. It's that nobody in the pipeline between physics literature and shipped shooters ever owned the problem.

See what the missing layer computes

Try what 5.56 does to 10 mm of pine — then switch the material to Kevlar and watch the physics change class.

Open the calculator →

What It Would Take to Close the Gap

A shooter that finally merges both halves needs three layers, and it's worth being precise about how different they are:

Layer 1 — projectile vs. world. The terminal-ballistics function above: caliber + material + geometry in, physical outcome out. This exists today as calculators and research code; what's missing is its packaging as engine middleware. Of the three layers, this is the one that's pure, portable physics — the same equations regardless of engine or art style.

Layer 2 — projectile vs. body. The GHOUL-class anatomical model: zones, wound states, dismemberment, driven by the output of Layer 1 rather than by weapon-ID tables. The pieces exist in fragments across the industry — per-bone hit detection has been public since Raven's Jedi Outcast code went GPL (the Ghoul2 model system lives on in the community-maintained OpenJK project), ragdolls and wound masking are commodity tech — but nobody has reassembled them at Soldier of Fortune fidelity and wired them to physics instead of tables.

Layer 3 — synchronization. Multiplayer demands that every penetration and every wound state resolve identically on all clients, under latency, without inviting cheats. This layer is unavoidably engine- and netcode-specific — the one part that genuinely can't be generalized middleware.

Layer 1 exists. Layer 2 exists in scattered, table-driven pieces. Layer 3 is per-project plumbing. Nothing on that list is a research problem; all of it is an integration problem that no studio has had the combination of budget, rating tolerance, and stubbornness to finish. Soldier of Fortune proved players never forget the consequence half. Tarkov proves players will master the physics half. The game that ships both is still unclaimed — 24 years and counting.

Methodology & Sources

Ballistics data referenced in this article come from the BallisticEngine physics engine (Poncelet, Johnson–Cook, Mohr–Coulomb, orthotropic, and fiber models). GHOUL analysis is based on Eric Biessman's Soldier of Fortune postmortem (Game Developer, September 2000), the GamesRadar making-of retrospective with Dan Kramer (2021), the Old PC Gaming review of Soldier of Fortune II, Speed Demos Archive game documentation, IMFDB weapon databases for the SoF series, ModDB modding documentation for Soldier of Fortune: Payback, Steam community threads and developer responses for Hell Let Loose, and the OpenJK (GPL Jedi Outcast/Academy) source release for the Ghoul2 model system. Where games' internal systems are undocumented, we describe observed behavior reported by their communities rather than implementation details.