16 comments

[ 3.3 ms ] story [ 38.7 ms ] thread
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!

Wolfenstein is peanuts compared to writing your own doubly linked list.
Not sure about that, but these are an awesome tutorials on linked list and related exercise problems [1],[2].

It's an old website for C programming from Stanford Uni by Nick Parlante [3].

For full blown treatment on linked list and doubly linked list please check this an excellent book Pointers on C by Kenneth Reek (1998) [4].

[1] Linked List Basics

http://cslibrary.stanford.edu/103/

[2] Linked List Problems:

http://cslibrary.stanford.edu/105/

[3] Essential C:

http://cslibrary.stanford.edu/101/

[4] Pointers on C:

https://archive.org/details/pointersonc0000reek

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...
I actually find 1:1 to be helpful when learning a language.

How debug-able is the internals of the rust lambda version?

I will often write the code so I can simply insert a break point for debugging versus pure anonymous and flow-style functions.

C# example:

    #if DEBUG
    const string TestPoint = "xxxx";
    #endif

    var filtered = items.Where(x =>
    {
        #if DEBUG
        if (x.Name == TestPoint)
            x.ToString()
        #endif
        .....
    });
vs

    var filtered = items.Where(x => ....);
is it faster than original?

Port it to 286, and then claim RUST victory

Oh man for a second i though ironwolf, the vr game, was about to see some love.
Stein means rock. Wolfenstein is something like Wolf’s rock.

Eisen means Iron. You could name it Wolfeneisen?