Minor Point of Confusion - Mod Tools

Discussion in 'Mod Discussions' started by stormingkiwi, May 15, 2014.

  1. stormingkiwi

    stormingkiwi Post Master General

    Messages:
    3,266
    Likes Received:
    1,355
    I'm slightly confused about that - are we talking about The Elder Scrolls entry level of mod tools (just need to be competent using a mouse and keyboard, no coding knowledge necessary for simple mods)
  2. someonewhoisnobody

    someonewhoisnobody Well-Known Member

    Messages:
    657
    Likes Received:
    361
    I think maybe modding tools is talking about the coherent debugger and the easy way of installing mods.

    Could also be talking about the .papa converting tools.
    Last edited: May 15, 2014
  3. cola_colin

    cola_colin Moderator Alumni

    Messages:
    12,074
    Likes Received:
    16,221
    Easy way? Stock PA requires you to move files into directories deep in your filesystem and modify a json file.
    pamm is not part of stock PA. I think that advertisement is speaking of what is planned for PA. Not what we have now from the official side of things.
    stormingkiwi likes this.
  4. someonewhoisnobody

    someonewhoisnobody Well-Known Member

    Messages:
    657
    Likes Received:
    361
    json is like a second language to me so not to hard... So easier
  5. aevs

    aevs Post Master General

    Messages:
    1,051
    Likes Received:
    1,150
    I don't think it's too complicated right now, although it could be better. What I think we need the most is some straightforward and up-to-date documentation on it, as opposed to the fractured information found in various posts within various threads referenced by various other stickied threads that we have right now. Going from "I don't know how to mod PA" to a simple "hello world" level UI mod takes a lot of thread searching and a little guesswork as it stands.
  6. stormingkiwi

    stormingkiwi Post Master General

    Messages:
    3,266
    Likes Received:
    1,355
    The Elder Scrolls Construction Kit - you don't need any coding knowledge whatsoever, because everything is handled by a database program. Once you can use the program, you're home and host. I added a new NPC to the game as the first mod I made (or rather, I duplicated an existing NPC, and gave them a different appearance, different equipment, etc.)

    To add a new unit to PA, you would have to edit the unit JSON (which is written in Java and not formatted nicely), I'm pretty sure you'd have to edit the factory json also, and then you'd have to mod the UI so it displayed with the option to build it.

    I guess the point I'm making - it's not friendly towards modders with no knowledge of coding.
  7. cptconundrum

    cptconundrum Post Master General

    Messages:
    4,186
    Likes Received:
    4,900
    Json is a human-readable file format that has nothing to do with java. It is often used with javascript (also not java), but it still isn't javascript. Json isn't even a programming language at all since it's just a file format. If you prefer it, there are free json editors available to help organize that information in a ui. If adding a unit is just a matter of importing a 3d model and then editing the json, then that's something a person without coding experience can do.

    *Edit*
    I hate that this forum saves drafts. I have a habit of partially writing something out, not finishing, and then including that draft later in an unrelated reply. Anyway, that's fixed now.
    Last edited: May 16, 2014
  8. someonewhoisnobody

    someonewhoisnobody Well-Known Member

    Messages:
    657
    Likes Received:
    361
    PA modding is not very hard, all you need to know is some javascript(If you are making a new feature like an In Game Browser) and how to read json.

    Here is a quick guide on json:

    Json is a file format used to store Key Value pairs, this means that a value is associated with a name. With json you always enclose the document in curly brackets { }

    A simple key value entry is just:

    Code:
    {
        "Key": "Value"
    }
    you can also have arrays of Key Value entries, for example lets say you want to store info about people. To make an array you first make a key(aka a name) for the array just like any other key value par. But instead of curly brackets you store the data in square brackets [ ].

    Code:
    {
        "People": [
            {
                "Name": "Someonewhoisnobody",
                "Is Awesome?": "Yes"
            },
            {
                "Name": "Scathis",
                "Is Awesome": "Yes"
            }
        ]
    }
    In my opinion json is one of the best things to happen to coding(Not the best though :p). It allows for easy data storage and things like client server API's

    Note:
    Due to PA's build process(Turning all the text code into computer readable code) the json does not look as nice, this is because they most likely use something similar to Unglify which removes unnecessary white space from code. To fix this you can install a plugin to your favorite text editor to format it, or use a website like http://jsonformatter.curiousconcept.com/
    cptconundrum and LavaSnake like this.
  9. cola_colin

    cola_colin Moderator Alumni

    Messages:
    12,074
    Likes Received:
    16,221
    You don't actually need to be able to write Javascript at first. Any halfway modern programming language that has objects will do. I learned javascript from PA basically. Reading a little book on the quirks of js after a while is recommended to get to know that js actually has a few things that look like other languages and seem to work, but actually turn out to work quite differently.
    Oh once you know Javascript you can learn json as: "Javascript objects definitions with slightly more strict syntax"

    https://forums.uberent.com/threads/reformat-your-json-files.47529/
    LavaSnake likes this.
  10. stormingkiwi

    stormingkiwi Post Master General

    Messages:
    3,266
    Likes Received:
    1,355
    I think people are missing the point.

    I know coding is easy to learn for the purposes of PA.

    The point I am making is that you do have to Learn a new skill, rather than apply an old one.

    The issues with JSONs is that to edit them , it is not presented in a pretty way. You also have to do it file by file in the directory of the game.

    Imagine if each Unit had a Hex ID, and file names were the Hex ID. You would have to manually expect each file until you found the one you wanted.

    Compare this to TES, where you open a shortcut on your desktop, load a file, and have every file to edit available at your fingertips and searchable by multiple parameters. You never once need to open notepad to edit anything, and in the vast majority of cases you don't need to navigate outside of my documents during the whole procedure.

    Edit: what is really annoying is sometimes on my browser when i cut and paste text (which i do a lot, ill open multiple tabs to reply to one post) it pastes the text, displays it as white space in the editor and displays it correctly when published. There have been a couple of times where I've been caught out by that.
    Last edited: May 17, 2014

Share This Page