Commit History

  1. refactor: port IMG_Decode and rename GfxResource to IMG⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    d7eb276

  1. refactor: port GfxDir resource loading system to Rust⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    3f42fbe
  2. refactor: port BufferObject ctor, replace more bridges with typed calls⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    05452c7
  3. refactor: typed vtables, port PaletteContext__Init and GameStateStream__Init⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    4902606
  4. refactor: replace raw pointer arithmetic with typed field access in game_state_init⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    314b694

  1. refactor: type CoordEntry fields as Fixed and eliminate pointer arithmetic in level_bounds⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    89937ca
  2. refactor: propagate types and named fields in game_state_init⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    afaf5de
  3. feat: port DDGame__InitGameState (0x526500) to Rust⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    d439705

  1. refactor: type set_active_layer return + propagate PaletteContext⁠

    4a4cdc9
  2. refactor: propagate type info through display vtable.rs and friends⁠

    1b3fdc4
  3. refactor: fix DDGameWrapper size to 0x6F10 and remove WABox⁠

    paavohtl +1: Claude Sonnet 4.6
    902aa11
  4. refactor: replace inline thiscall transmutes with typed GfxDirVtable pattern⁠

    paavohtl +1: Claude Sonnet 4.6
    1a5e3f2
  5. refactor: extract font module, type GfxDir pointers, rename DisplayVtable⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    4f85ac3

  1. refactor: reorganize display/ and render/ into unified render/ module⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    5c850f4

  1. refactor: eliminate DDDisplay, make DisplayBase generic, rename DDDisplayWrapper⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    88857ea
  2. refactor: rename TeamArenaState to TeamArena, use raw pointers for soundness⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    e80ee6b
  3. chore: prefer use over qualified path for structs

    5c51f8a

  1. refactor: move bitgrid module from display to crate root⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    31262e9
  2. refactor: typed BitGrid variants with alloc constructors⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    dd5434f
  3. refactor: unify BitGrid to display::bitgrid, clean up naming⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    893074e

  1. feat: type BitGrid display-layer vtable (0x664144, 8 pixel ops)⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    8e9f44c
  2. refactor: rename openwa-wormkit crate to openwa-dll, output openwa.dll⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    e5f8547
  3. feat: port DDGame__LoadFonts and DDGameWrapper__LoadFontExtension to Rust⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    f870fda
  4. feat: port CTaskTeam__CreateWeatherFilter to Rust, extract wa_lcg⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    113d28e
  5. refactor: call load_wav directly instead of through vtable⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    985fb50
  6. feat: port DSSound_LoadEffectWAVs to Rust, rename DDGame__LoadFonts⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    487fa54
  7. feat: port Music streaming audio system to pure Rust⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    c2c06b0

  1. chore: Add new DDGame & GameInfo fields based on game state init functions

    5ec61be

  1. feat: port streaming sound chain to Rust, unify SoundId/SoundSlot⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    aab6d6e
  2. refactor: extract game logic from wormkit/replacements to openwa-core⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    a553079
  3. refactor: split input.rs into frame_hook, replay_test, debug_utils⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    0179a59
  4. feat: add trace-desync tool for per-frame checksum comparison⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    c0e3602

  1. style: cargo fmt across all crates⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    1d3de83

  1. refactor: eliminate raw pointer arithmetic in weapon_release.rs⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    e85f37c
  2. feat: port WeaponRelease (0x51C3D0) to Rust⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    f5fbbeb

  1. feat: discover CTaskWorm poison and health display fields⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    ed7ea8c
  2. refactor: eliminate pointer arithmetic in weapon.rs — typed params throughout⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    e1d5d02
  3. refactor: fully type CTaskCloud handler — no raw offsets⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    1d08533

  1. refactor: split ddgame.rs (2240 lines) into 3 modules⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    e88ffaf
  2. refactor: replace raw pointer arithmetic with typed DDGame fields⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    54f5373
  3. feat: add #[vtable(...)] attribute macro for typed vtable definitions⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    1a163b2

  1. feat: add #[derive(FieldRegistry)] proc macro for auto-generated field maps⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    123d0d1
  2. fix: resolve all clippy warnings across core, wormkit, and test-runner⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    d350890
  3. feat: port Surrender and Mail/Mine/Mole weapon handlers to pure Rust⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    a60dc8d

  1. fix: correct DDGame constructor — allocation size, arrow collision params⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    6b181ec
  2. fix: load sprites unconditionally, improve desync debugging tools⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    a683d3d
  3. fix: pass ESI (layer_ctx) to LoadSprites usercall in DDGame constructor⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    5107860
  4. fix: canonicalize landscape_property as pointer, remove arrow dump⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    a6446dc
  5. feat: add arrow_sprites to DDGame snapshot, narrow desync further⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    4127435
  6. feat: add game state snapshot system⁠

    paavohtl +1: Claude Opus 4.6 (1M context)
    2c6f096