Skip to content

Commit

Permalink
Fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
cxong committed Oct 7, 2024
1 parent f58b8ea commit f831111
Show file tree
Hide file tree
Showing 3 changed files with 2 additions and 5 deletions.
6 changes: 2 additions & 4 deletions _posts/2024-10-07-making-a-wolf3d-mod.markdown
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ published: true

While it's cool that the gameplay experience is very authentic, due to directly using the same levels, sounds and music, this also hides the fact that a lot of work was required to get to this point. Many elements, most notably the graphics, could not be reused, so they were meticulously recreated for C-Dogs SDL, not to mention many engine enhancements had to be made to support Wolf3D-style gameplay. The original release with Wolf3D + Spear of Destiny support took about 2 years, but even the [Mission Packs took 4 months of active development](https://cxong.github.io/cdogs-sdl/release/2021/12/03/c-dogs-1.2.0.html), and that was mostly a content-only update. I think we did a good job making an end product that plays both like Wolf3D and C-Dogs, and is still fun.

> ![Wolf3D wall textures](https://beta.wolf3d.net/sites/default/files/styles/128x128_hi_res_sprite_/public/users/Cabo_Fiambre/previews/prev.png?itok=giCEDucP) ![Wolf3D in C-Dogs SDL](/_posts/wolf3d_sprites.png)
> ![Wolf3D wall textures](https://beta.wolf3d.net/sites/default/files/styles/128x128_hi_res_sprite_/public/users/Cabo_Fiambre/previews/prev.png?itok=giCEDucP) ![Wolf3D in C-Dogs SDL](https://raw.githubusercontent.com/cxong/cdogs-sdl/gh-pages/_posts/wolf3d_sprites.png)
>
> Wolf3D textures are 64x64, but C-Dogs tiles are 16x12. There is no way to automate this conversion process, so they had to be recreated by hand, with a lot of creative license added
Expand Down Expand Up @@ -55,9 +55,7 @@ Then there's recreating the parts of Wolf3D that cannot be easily extracted. We

We took some liberties porting across enemy behaviour. Wolf3D actually has pretty complex NPC AI considering its age, most likely due to its aborted initial design of being an action-stealth game: enemies have patrol routes, rooms have defined noise triggers such that a gunshot in the same room alerts everyone in it, and enemies have vision cones so you can sneak up behind them. C-Dogs SDL also had an enemy awareness mechanic but it was much more rudimentary, so mechanics like vision cones and noise alerting had to be built in specifically for Wolf3D. However mechanics like patrolling were entirely left out; I don't think players would even notice!

Wolf3D's gunplay was also quite unique; apart from the knife, the 3 guns are all variations of hitscan weapons. C-Dogs SDL already had [hitscan weapons](https://cxong.github.io/cdogs-sdl/release/2017/04/23/c-dogs-0.6.5.html) thanks to earlier work with a Doom mod, but if you look closer, [Wolf3D doesn't actually use traditional hitscan weapons](https://wolfenstein.fandom.com/wiki/Hitscan)! Instead it uses damage formulas, which aim to simulate the experience of realistic gunplay: more damage is dealt/received if the target is close, there's a random chance of missing, depending on factors like whether you are running, but also weirdly, enemies deal different damage to you if you can't see them!

![Wolf3D enemy hit chance chart](https://static.wikia.nocookie.net/wolfenstein/images/4/49/Wolfenstein_3D_enemy_hit_chance.svg/revision/latest?cb=20121016020223)
Wolf3D's gunplay was also quite unique; apart from the knife, the 3 guns are all variations of hitscan weapons. C-Dogs SDL already had [hitscan weapons](https://cxong.github.io/cdogs-sdl/release/2017/04/23/c-dogs-0.6.5.html) thanks to earlier work with a Doom mod, but if you look closer, [Wolf3D doesn't actually use traditional hitscan weapons](https://wolfenstein.fandom.com/wiki/Hitscan)! Instead it uses damage formulas, which aim to simulate the experience of realistic gunplay: more damage is dealt/received if the target is close, there's a random chance of missing, depending on factors like whether you are running, but also weirdly, [enemies deal different damage to you if you can't see them](https://wolfenstein.fandom.com/wiki/Damage)!

Rather than try to recreate this tangle of a damage system, we were conservative and just went for simple hitscan bullets that deal constant, predictable damage. It's not the same and makes the game more C-Dogs-like than Wolf3D-like, but is still quite fun.

Expand Down
File renamed without changes.
1 change: 0 additions & 1 deletion css/stylesheet.css
Original file line number Diff line number Diff line change
Expand Up @@ -393,7 +393,6 @@ footer .owner p a {
.markdown-body tbody {
border-top: 2px solid #557398;
border-bottom: 2px solid #557398;
background-color: #EBEFF4;
}

.markdown-body table td * {
Expand Down

0 comments on commit f831111

Please sign in to comment.