Build & update your mod on starcatcher

  • jacob1
    4th Aug 2016 Developer 4 Permalink
    When releasing mods, there are often a lot of difficulties getting it to work on all computers. Sometimes it will require dlls you forgot to distribute, or maybe you have no method of compiling for mac and linux users.

    That's why I've decided to allow people to use my build server for their mods. It will compile for all platforms (win32, macosx, lin32, lin64) in the exact same way official builds are done. Which means if you can run the official version, you will be able to run the mod. The builds are also distributed straight from our site, so you know the executable matches the given source.

    In addition, it modifies the update checker to point to our server. So when you want to release an update to your mod, all players will see it when they start it up, and won't have to go manually redownload it. This feature is almost never seen in mods besides my own, so is very nice to have.


    There are only a few requirements:
    1) Your mod must be hosted in github (useful guide). Part of the build process is me passing in a url to git clone from.
    2) It can't use any custom libraries other other weirdness. The build server only has the default libraries installed.
    3) It must use a recent-ish TPT source. Most importantly it has to be newer than this commit.
    4) Do not modify SConscript / the build process. The SConscript will be overwritten with the one from the official repo. If you need to make some changes I might be able to work something out, but ideally you would not change the build process at all.
    5) It must compile, i'll tell you what the build errors were but you have to fix it.


    If you are interested, send me a message on here. But an even better / quicker method would be on IRC, I can get it done in a much shorter time if you find me while i'm online (7PM-12 eastern, or on weekends). It only requires a one line change in your source, then I can get it compiled in ~20-30 minutes.

    Mods currently using this service:
    TPT-Alchemy
    The GoL Toy
    Subframe Mod
    Larger Canvas Space Mod
    The Realistic Physics Mod

    Update check logs are stored, but only I can view them. I can provide you with a count of users if you want (for example, TPT-Alchemy has been launched 9741 times total and is still fairly active)
    Edited 8 times by jacob1. Last: 22nd Jun 2019
  • jacob1
    5th Mar 2017 Developer 0 Permalink
    I made some updates to the build server. The windows version is now built with MSVC. This provides a massive speed boost that's already present in the snapshots and will be present in the official version soon. You'll need to update to the latest source as of 2017-03-05 to make it work.

    Also, mods can now optionally have changelogs. These show before the update, just like in the official game. When you ask me to update your mod, just give me a changelog.

    SubframeIDE is now updated to version 2, it adds some new stacking related things. @mark2222 will probably post about it later, I wrote a short changelog which appears when you start version 1 of the mod.
  • DUC
    3rd Jul 2018 Member 0 Permalink

    I have a small question: what is the difference between creating an element with a simple lua script that can run on preexisting TPT and submitting it, as opposed to compiling a full mod, and adding actual element files to the source code? What would be the benefits/downsides of each?

  • jacob1
    3rd Jul 2018 Developer 0 Permalink
    @DUC (View Post)
    Lua scripts are a lot slower than actual compiled code. A Lua element with an update function can get really laggy.

    Lua scripts are far more portable though. And you don't need to release a new version every time TPT updates. For this build server, I only update mods at request. Some of the linked mods are based on older versions.