ninkendo2 hours ago
Was this translated automatically from C? I picked a spot totally at random and saw in https://github.com/Ragnaroek/iron-wolf/blob/main/src/act1.rs in place_item_type:

    let mut found_info = None;
    for info in &STAT_INFO {
        if info.kind == item_type {
            found_info = Some(info);
            break;
        }
    }
When typically in rust this is just:

    let found_info = STAT_INFO.iter().find(|info| info.kind() == item_type);
Now I want to go through and feng shui all the code to look more like idiomatic rust just to waste some time on a saturday...
klaussilveira1 hour ago
As a non-Rust guy, I keep writing the example above. I didn't even know about the second option!

If you do that, please share a link so I can learn from you! This is awesome!

ragnaroekX1 hour ago
Yes, the code is _very, very_ close to the C-Code. All over the place.
derwiki1 hour ago
Sounds like something an LLM agent might be good at?
amelius5 hours ago
Wolfenstein is peanuts compared to writing your own doubly linked list.
hamza_q_2 hours ago
Cool! I did an incomplete version in Rust a while back as well. Not a source port, tried to recreate the game from scratch myself, without looking at the C src code

https://github.com/hamzaq2000/wolf3d-reimpl-rs

xeonmc4 hours ago
Game would be considered too politically incendiary if released today.
yorwba4 hours ago
Or the other way around. Wolfenstein 3D was first banned in Germany in 1994, but unbanned in 2018: https://arstechnica.com/gaming/2018/08/german-ratings-board-...
legitster3 hours ago
Wolfenstein 3D was pretty squarely a WWII fantasy shooter. Only later does it get into the alternate history post-war stuff which does get somewhat more squarely political.

I think it cuts both ways. The Wolfenstein franchise has obviously relished in violence against Nazis, but also inadvertently is part of the trend of glorifying them.

TehCorwiz2 hours ago
The first game has zombies with guns in their chest and a mecha hitler.
bombcar0 minutes ago
Someone's not up to date on the History Channel documentaries about WWII!
klaussilveira4 hours ago
yuppiepuppie3 hours ago
This is cool! Wolfenstein will always have a place in my heart.

You should add it to https://hnarcade.com

vunderba6 hours ago
Nice job. Couple notes for the web version:

- Once started the shareware game on Chromium browsers seems to flicker like crazy which displays the "B.J. Blazkowicz" face.

- You missed adding the classic code that everyone knows, M-L-I!

midzer1 hour ago
Can confirm the flicker.

I did a WASM port of the shareware from https://github.com/fabiangreffrath/wolf4sdl playable at https://midzer.de/wasm/wolfenstein/

Freak_NL5 hours ago
The flickering happens in Firefox too.
beemboy4 hours ago
Sweet memories...
hexo3 hours ago
again?