Jump to content

SSE - mod & ram limits


lazloarcadia

Recommended Posts

 

 

 

Cool, thanks for the reply. I've seen a couple of other comments about the 255 mod limit staying the same for architectural reasons (mod compatibility, etc) but didn't know if that was official. I wonder if someone will make a patch or extension that can exceed this limit like they did with SKSE for scripting.

No, the 255 limit is a core design choice. There's absolutely no way something like SKSE could alter it.

 

The game itself was converted to 64-bit code but the formID values are still 32-bit values and changing that would require altering absolutely everything. Even for the game developers changing it would be at least as hard as the switch from 32-bit to 64-bit code they've just done. So I don't expect that to change even for the next games in the series.

 

 

Not that hard to include more bits, in fact they could have just used a 64-bit primitive/type instead of 32-bit even on a 32-bit system (bit slower tho). If they made it 33-bit values, they could double it or increase it by one hex value to be 9 hexadecimals long, making it 36 bits long or they could have done 48 bits, so the first 16 bits would be related to the mods, the last 32 bits for the form id.

 

It really isn't that hard to change. All you really are doing is changing a value type. Yes it is annoying as hell to do, specially if you have ten of thousands of lines of lines of code. But not impossible or require altering absolutely everything. And they would only have to change these values in the game engine and the creation kit. Then recompile both and then recompile the game. Sure it might take a week at most with most of the time just being compile time.

 

I totally disagree.

 

You are right when you talk about a simple 1-file program. But the Skyrim engine is a huge conglomerate of probably more than 20 years of development, based on the old gamebryo engine. You cannot judge from outside what what kind of programming techniques, casting, mapping to data and file structures are used over the time. Techniques that make it impossible to simply change the type.

 

The engine is not a properly designed piece of software. Why do you think there are all these CTD coming from. I bet by making the engine use a different type for IDs we would simply get more of them.

 

And finally: they gave us the game as they have implemented it. They have never designed and tested with a huge modding system in mind. Why should they change that now? More than 255 mods is the desire of an extreme small portion of their customers. A fraction of 1% I would think. Why should they spend effort and risk "stability" for that small community.

 

 

It actually isn't very hard to change primitive typing even with tens of thousands of lines of code. It is time consuming. There wouldn't have to be much of a redesign if any at all. Normally you tend to not do primitive type casting just because it can tend to waste memory or you lose data from that primitive. For instance if you go from an int64(long) to a int32(int) you tend to lose information from the leading 32 bits. Tho there are the odd times you do. And then when you are going to be dealing with Form Ids, you most likely will always be dealing with the full value and thus won't be casting to any different primitive.

 

Techniques wouldn't change, because all you are doing is changing the type on all ends (so within the function and the calling function, etc). The only issue that going from 32 bit Forms to 64 bit Forms or higher bit sized Forms would be memory and time (since you would have to change each calling function, function and all the references to the 32 bit Form to 64 bit Form and their memory allocations, specially if you are using pointers).

 

For all we know, much of the system could have been coded not into the game engine itself, but into a module for the game engine or a module of the game itself. But then again they might have a few other reasons other than memory bloat that they stuck with the 255 mod limit.

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...