Modding Help Furious & Enraged: Updating Mod Code

Discussion in 'Starbound Modding' started by Thundercraft, Oct 22, 2014.

  1. Thundercraft

    Thundercraft Phantasmal Quasar

    It's been a while since I played Starbound or tried any modding. I had one small mod released, with almost half a dozen others in the works, when a nasty virus stopped me in my tracks.

    Right now, I'm trying to get an old mod that I enjoyed to work with Enraged, despite not having been updated. And I still plan to release some of the mods I had been working on.

    I've been trying to familiarize myself with the code changes that happened with Furious and Enraged, in order to adapt the code. However, I can't be certain that I found everything relevant or important to modding. I saved a chat from the IRC the night Furious came out. And, after much searching, I found a single thread discussing Enraged and mod compatibilty. This is what I've found:

    FURIOUS CHANGES
    • Content in the "assets" folder became packed into a "packed.pak" file. For access, you need to use asset_unpacker.exe (or the fan-made GUI) to unpack. Also, assets content has been split into music, user (.abc songs), and the rest of the assets.
    • Any and all items now require a Price tag. Anything without it will come out as a Perfectly Generic Item.
    • Price was previously stored as a String. It must now be an Int.
    • Many things that were stored in Strings must, instead, be Ints and Booleans. The rule of thumb seems to be: If it was a number stored in quotation marks (including "0"), it most likely must be converted into an Int.
    • Interestingly: It sounds like the config files were an exception to this rule and still had numbers stored as strings.
    • Added an extra argument to world.placeMaterial for allowOverlap. (Possibly relevant for tile mods?)
    And other changes...
    Lua Changes in v. Furious Koala from Angry Koala: Global (ENV): unpack, new functions (Dev notes on pastebin)
    Also, unless I'm mistaken, I think this update was the first allow mods to use packed .modpak files. But this was not forced on mod authors. (However, it seems like we have to rename .modpak to .pak in order to unpack and visa-versa to pack. :()

    ENRAGED CHANGES

    (Minor note: When I unpacked "packed.pak", I saw that the music folder was back alongside all the other folders. Or was it also this way with Furious?)

    The only thing I managed to find was an easily-missed Mod compatibility thread dating back to March:

    Reading the above post, the changes from Furious to Enraged sound very minor. Strange. o_O Surprising, at least to me. I know there are many Furious mods that refuse to work with Enraged. As such, I would have imagined a lot more differences to cause such problems. :confused:

    Am I missing anything?
    Is this all I need to be aware of to adapt code from Furious to Enraged or Angry to Enraged?
     
  2. The | Suit

    The | Suit Agent S. Forum Moderator

    Code wise there was really no major change in enraged.
    Boolean statements (true and false) as well as numbers no longer being in quotes is the biggest incompatibility issue with older mods.

    The biggest one was probably a lot of assets were moved around.

    So you will get a lot of duplicate errors from previous versions which try to modify old vanilla asset locations.

    Rampaging Koala on the other hand makes massive changes Which I suggest you persue instead of updating to enraged. As if you are planning on editing vanillia assets you will have to redo all the work. If you are planning on creating custom assets, moving your mod from enraged to rampaging will be much less painful though.
     
    Last edited: Oct 22, 2014
  3. Only thing that I can think of that was not covered or touched upon is that now all objects may contain scripts and not just "wired" objects (which is now a deprecated object type)
     
  4. Thundercraft

    Thundercraft Phantasmal Quasar

    Thanks for the replies. Maybe I can fix my mod compatibility problems now...

    It does sound like good advice. Are there any hints, yet, how soon Rampaging might be coming? (At least we have a name.)

    Regardless, I don't like how frequent Nightly updates have completely replaced Stable/Unstable updates and I have no plans to even take Nightly for a spin. There are a few mods for Nightly, but not many. Wise or not, I prefer to get my mods working for Enraged. (After all, I want to use my own mods. And I want to play Starbound now.) I'll wait until Rampaging is good and released before trying to mod for it.

    That said:
    Are there any guides or discussions on what changes need to be made to get a mod to work on Nightly (vs. Enraged)? I might take a gander at that (even if I don't plan to use the info any time soon).
     
  5. The | Suit

    The | Suit Agent S. Forum Moderator

    The next stable should be coming soon. So it is a good time to start thinking about moving to rampaging.
    They made a tweet on friday stating it is coming. So I put it for a week or two at max. I am guessing they want to finish up the status effect system before pushing it to unstable. Since hunger and temperature as of right now is not yet put back into the main branch.,.

    Also a guide for the new patching system
    http://community.playstarbound.com/index.php?threads/basic-patching.84496/
     

Share This Page