1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.
  2. Hey Guest, is it this your first time on the forums?

    Visit the Beginner's Box

    Introduce yourself, read some of the ins and outs of the community, access to useful links and information.

    Dismiss Notice

Public consultation on plan for mod distribution system

Discussion in 'Community Dev Corner' started by Shadlington, Mar 24, 2013.

Mods: Downburst, Mazey
  1. eamono

    eamono Arsonist

    Messages:
    498
    damn
     
  2. NPM Is great.
     
    Mazey and Froghead48 like this.
  3. Shadlington

    Shadlington THD Team THD Team Administrator Global Moderator

    Messages:
    1,562
    I don't really see what you miss out on, tbh.

    Also, I'll check out NPM. Lots of open source projects have similar systems, which have been my inspiration (though I haven't looked at NPM in particular).
    Are there any specific features you think are missing from my plan that are in NPM? What does the <= operator represent in the dependency system?
     
    Froghead48 likes this.
  4. JobWorkOrder

    JobWorkOrder Catapult Fodder

    Messages:
    1
    SteamWorkshop has done the work for you already! pay the damn fee and get workshop
     
  5. VanHuek

    VanHuek KAG Guard Tester

    Messages:
    751
    But not everyone will be using Steam.
     
  6. Shadlington

    Shadlington THD Team THD Team Administrator Global Moderator

    Messages:
    1,562
    No, we simply can't achieve numerous aspects of this system using workshop. I don't believe there is a fee required to use workshop - we have chosen not to use it because it doesn't meet our needs.
    Plus, as Van says, not all players use steam - we'd essentially be alienating all non-steam players if we went with workshop as our mod distribution platform.
     
    VanHuek likes this.
  7. Boxpipe

    Boxpipe single, female, lawyer

    Messages:
    293
    I am interested in developing mods when Full KAG is released. I may want to run mods on my server. I may even just want to have a smooth process for downloading and running mods when I connect to a modded server.
     
  8. Shadlington

    Shadlington THD Team THD Team Administrator Global Moderator

    Messages:
    1,562
    Okay, so this hasn't been abandoned, just delayed.
    Additionally, the plan has changed a bit - in particular, the first phase is to have a simple way of still allowing mods to be downloaded directly from the server you play on, but still verify that they have come straight from the developer that created the mod, without being tampered with.
    The first phase is complete now. A developer can register mods, and after doing so they can obtain a secret developer key that can be used to generate a registration file for the mod, which KAG clients can use to verify that the mods haven't been tampered with (with the exclusion of .cfg files).
    With this system a developer doesn't need to upload their source code to the API, they just need to re-generate their registration file every time they push out the code in a new release (whether that be to the forums, some other site, or just onto their own servers).

    I've created a simple python app that lets you do this - see what mods are available, create/edit mods, get the dev key and generate the mod registration file (if you select your mod in the list and give it the path to your mod's folder - you'll also need to enter your auth details). You authenticate with your kag account credentials - currently mod developers are limited to a single user but that will change soon.
    The GUI for this app is a bit crappy and there are probably a few bugs (+ it's not terribly well designed, IMO) - it's just something I knocked together quickly in an afternoon. However, it should do the job and it is open source, available here: https://github.com/Shadlington/KAGModManager. Feel free to make improvements or write your own in your preferred language!
    It's a python app, which is fairly easy to run on any platform, but I'll look at packaging it up as an .exe or something soon.

    Currently KAG doesn't use this system to verify anything, but in time we'll roll it out. It won't be mandatory - you could do things exactly as they are now without any registration. For now you can just play with it and give me feedback on the system (and the GUI app I suppose, though I'm less interested in that).
     
    Last edited: Jan 10, 2014
  9. Shadlington

    Shadlington THD Team THD Team Administrator Global Moderator

    Messages:
    1,562
    Published an .exe which should work (no promises though) on windows: https://forum.kag2d.com/threads/kag-mod-manager.18609/

    The API now supports uploading and downloading of mod code to the api.
    All mods are packaged as .tar.gz files. full, server and client packages are automatically generated when you upload your code, with the server package containing no client-only scripts and vice versa. More detailed documentation will come soon.
     
    jackitch and Rayne like this.
Mods: Downburst, Mazey