Skip to content

Is there support for importing functions when unused in maps? #37

@duarte-pompeu

Description

@duarte-pompeu

Hi!

I'm doing a mod with some tweaks to the design of Dark Souls (1): Remastered, and trying to add a ladder in Firelink shrine. Here's what I did so far:

  • In DS Map Studio, I used the function "Duplicate to Map" to copy it one from Undead Burg to Firelink Shrine
  • I assigned it the Entity ID of 1011142 and a collision of a nearby enemy
  • I added the code to the script of m10_02_00_00 : RegisterLadder(11010010, 11010011, 1011142);

Expected: being able to see and use the ladder

Result: I can only see the ladder; I cannot climb it, neither from the bottom or top.

The docs don't include it in the list of maps; this is m10_02_00_00 , and they say:

Used in m10_00_00_00, m10_01_00_00, m11_00_00_00, m12_00_00_00, m12_01_00_00, m13_00_00_00, m13_01_00_00, m14_00_00_00, m14_01_00_00, m15_00_00_00, m15_01_00_00, m16_00_00_00, m17_00_00_00, m18_00_00_00, m18_01_00_00

I asked Claude (AI) and it says:

EMEVD binaries carry their own table of available instruction signatures. RegisterLadder (instruction 2009[00]) is only present in the binaries the DarkScript3 docs list, and m10_02_00_00 (Firelink Shrine) is not in that list. So when DarkScript3 recompiles your .js back to .emevd.dcx, even if the call looks fine in source, the resulting binary either won't include the instruction or the game will silently ignore it because the function pointer isn't registered.

Is there a simple (ish) way to add this function to firelink shrine?

Thanks for the help (and for the tooling, appreciate it a lot ❤️ ).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions