Forum Discussion

tastytourist's avatar
10 years ago

Maxis Documentation - Comments

@SimGuruEugi – since you said here that you’d look into updating the docmentation PDF, here’s some more suggestions I thought I should post – perhaps you can take a look at that too while you’re at it:

– A table of contents and/or index would make that PDF quite a bit easier to use I think, particularly since you are often using slightly different terms than the ones that have been established in the modding community over the years (which makes it difficult to know the correct search terms when trying to just search the PDF).

– String localisation (page 11, middle): A list of which top byte corresponds to which language would be very helpful; could you perhaps add that? You state “The string table system will not be discussed more here, as it a fairly straightforward system and works similarly to previous Sims games” but there are quite many TS4 modders who have no previous experience with earlier games.

– I think there is no explicit mention of when/why to use decimal vs. hexadecimal references in XML tuning, which has been confusing lots of people (me included =P) – a short mention like “note that in XML tuning, references to other resources are given in decimal form” might be helpful.

– Naming conventions (when to use or not to use a custom group ID, how to generate resource keys from a hash etc): this is currently found in various places throughout the document (page 4 top, page 17, examples throughout the entire documnt) – since this is very important for all sorts of custom content, not just XML tuning and scripting, maybe this could be grouped together some more? E.g. on page 4 you just state "ALWAYS use a hash for the instance": people who don’t know what a hash is will be quite lost at this point. If the examples and explanations you're giving later on (e.g. page 5: "In particular, the resource type is the 32-bit FNV-1 hash of this instance type. As an example, the resource type of “topic” is 0x738e6c56. More on FNV-1: http://www.isthe.com/chongo/tech/comp/fnv/index.html") were added in here I think this would be much easier to understand.

– Also, "Set the top bit of the group to 1 for all resources" or "Just generate the 64 bit hash and then force the top bit to 1" (page 3/4) is something that goes over the head of a lot of people – it would be great if, early on in the PDF, some kind of simplified explanation for this procedure could be added. For example: "Use a group ID of 0x80000000 for all custom content except XML tuning (i.e. set the top bit to 1)", and/or “to make sure that custom content resources will never have the same ID as Maxis resources (and thus accidentially override Maxis content), please always use an instance key that is higher than 0x8000000000000000 (i.e. set the top bit to 1)" or something along these lines. When people understand better what they're doing and why they need to do it, that works better than blindly following rules IMO =).

– Direct links to the modding forum (not just the main Sims 4 forum as the modding forum is not visible in the overview for people who are not already logged in!), the actual download thread of the PDF/documentation, and perhaps even the various .bt files and other resources that you have posted meanwhile might also be useful.
  • No problem =) -- these were just meant to be comments, not requests or anything!

    The thing about education, though .. not sure I can agree here -- the reason I wrote this was that instances and naming conventions are a topic that comes up quite often in mts Create and elsewhere, and my impression is that it helps people a lot when someone explains it in terms they can follow and understand. I cannot look into other people's brains of course, it is just an impression, but the “hey, i'm able to understand this stuff” moment seems to be a big motivation =).

    That doesn’t mean one shouldn’t use e.g. ModdingToolkit to actually calculate the instance in question – I was about to add the link to that above, as well ;) –, just that providing information that helps people understand the procedure behind the buttons would help make sure they will do it correctly. “Making modding easier" and "trying to educate about the internals of the game" are not a contradiction, in my eyes, quite the opposite =).
  • "Fogity;13214969" wrote:
    What I was thinking you meant was that they should include instructions on how you go about setting the high bit and such in the documentation


    Oh no, I just meant putting the explanations that are already in the doc in a different order, so as to make them more approachable =). Because, exactly, I guess a full time engineer has a different idea of “approachable” than a mere mortal =P ..
  • Those are great suggestions; I can work on that with @SimGuruModSquad‌

    As you can imagine, we're pretty busy around here so this might not happen immediately, but I will try to get it done in a reasonable time frame.

    Thanks!
  • I think you have a lot of good points about how to improve the documentation, but I want to say that the language used when referring to hashes and setting bits are actually appropriate given the expertise required to know how to use this information.

    Remember that s4pe is required for most of these things you mention here, and things like setting high bit and calculate hashes are actually features that should be considered in the purview of such a tool.

    Having modders and not tool makers care about how to set the high bit and calculate the hashes is like expecting them to use a hex editor to edit simdata or package files. The reason I say this is that I think it is more important that the Gurus provide new information for the people who can use it rather then providing explanations of old information to those who shouldn't have to care.

    For instance it was very easy for me to create my tool that calculates all types of hashes one would need, so now no one else need to bother looking into it (unless they want to add the functionality to their tools).

    I know there are some problems with the toolmakers currently and that collaboration hasn't been as good as it could be, but I still believe that we should focus on making modding easier and more strait-forward rather then trying to educate everyone about the internals of the game.

    And as I said, your other points are valid and important in my opinion. I don't mean to be hostile. :)
  • You are absolutely right, knowing how things work is important for understanding.
    Though I think, not to bad talk the guru's, that such explanations probably are best coming from an experienced modder as they know more how new modders think.
    Naming conventions is something they really should elaborate though as that is something that should come from them.
    What I was thinking you meant was that they should include instructions on how you go about setting the high bit and such in the documentation (again, I consider the documentation just that and should not be considered a tutorial, tutorials have quite a different purpose).
    But I should not try to dictate how people should do things, especially not as I have almost no time to mod or create tools myself.
  • And it shouldn't be forgotten that the documentation is intended more as a "reference" work than an instruction manual. It's quite alright IMHO to just say "similarly to previous games" for the STBLs, since new modders can then use their own time to research the previous information about STBLs which modders have shared, instead of taking up Eugi's time collating it. I think his time is better spent giving us new information none of us had access to ever before.
  • FWIW I agree with Inge. I find I can use the modding community (and other resources like the tdescs) for help with what certain coding language might mean. But when it comes to files that just aren't working the way they're expected, and I've tried everything I can think of, the SimGurus seem to be the only place to go.

    The only unfortunate part really is that they ARE so busy, there's generally only about one day each week to get responses, so if you miss that window, you're cooling your heels for a while. I find my questions have gotten quite a few views, but no responses from the community, only from a guru. Having them being responsive to the modding community is fantastic (maybe because EA pulled Maxis back in?). It's been speeding up all kinds of modding that we had to just fumble through in prior titles to find answers. Sure, we got there eventually, and way more talented people than I have done incredible things, but this resource is invaluable.

    So because of that, I also would like to stay away from requests that tools, tutorials, etc. could address, so they have time to put out new stuff for the incredibly talented I mentioned before, and for those of us looking for answers that people with an intimate working knowledge of the whole system can breeze through and help set everyone on their way quickly. :)