Help, I updated my mod's API version and it nolonger works!

This is a moderated forum that collects tutorials, guides, and references for creating Transcendence extensions and scripts.
Post Reply
User avatar
Aury
Fleet Admiral
Fleet Admiral
Posts: 5524
Joined: Tue Feb 05, 2008 1:10 am
Location: At the VSS Shipyards in the frontier, designing new ships.

Hi, if you have just updated your mod above certain API versions, sometimes things will nolonger work correctly, or throw deprecation errors when scripts are running.

This topic is meant to track breaking changes between API versions. (Note that this is a work-in-progress)

API 54 - 2.0 Alpha 1

UNID not found error:
A number of UNIDs were moved to a compatibility library. They were deprecated or had typos in them. You have two options to fix this:
  • you can update the UNIDs using find & replace tools to use the corrected UNIDs (you can find the mapping in this file: https://github.com/kronosaur/Transcende ... ibrary.xml (Note, prior to Alpha2, rsMolotokHD is mapped to rsMolotokHD when it should be mapped to rsMolotokB). The <!-- Commented --> unid is the one that you want to use instead of the unid name on that line. This fix also works in legacy mods, if you want to maintain a compatible codebase.
  • you can add the following compatibility library as a requirement in your mod (only works in API54+)

    Code: Select all

        <!ENTITY CMPT_unidAPI54CompatUNIDLibrary    "0x00710000">
    ...
        <CoreLibrary filename="CMPT_API54CompatUNIDsLibrary.xml"/>
Some error about objDestroy in scripts/debuglog
Calling (objDestroy blah) was deprecated, as it was causing confusion with (objDestroy blah Nil). Use (objRemove blah) instead.

(older API versions to be added later)

API ## (template)
(shpOrder gPlayership 'barrelRoll)

<New tutorials, modding resources, and official extension stuff coming to this space soon!>
Post Reply