Opened 12 years ago

Last modified 11 years ago

#11 new defect

Avoid problems with mod and patch overload

Reported by: Iritscen Owned by: Christian
Priority: critical Component: AEI2
Keywords: Cc:

Description (last modified by Iritscen)

We have a report of 60 mods causing Oni to run out of memory, and of too many particle mods crashing Oni. Either prevent user from checking too many mods, or else count the number of potentially-problematic files for a more intelligent solution. But first we need to work out what kind of limits we're up against.

Change History (9)

comment:1 by Iritscen, 12 years ago

Description: modified (diff)
Priority: majorcritical
Summary: Correct or avoid problems with mod and patch overloadAvoid problems with mod and patch overload

ticket:27 tells us one of the more important limits: 1024 particle classes. Until such time as the Daodan raises a limit like this, the AEI should currently be warning users when their selected mods, plus Oni's, pass a limit like that.

comment:2 by Iritscen, 12 years ago

Just a note to see my comment:9:ticket:55 for some elaboration on this ticket's suggestion.

comment:3 by Iritscen, 11 years ago

http://oni.bungie.org/community/forum/viewtopic.php?pid=47032#p47032
"I just started downloading the mods which is 450mb++. Am i supposed to download everything?"

Stop the insanity, Alloc. You have the power! Clearly the warning dialog is not doing the job for everybody.

http://oni.bungie.org/community/forum/viewtopic.php?pid=47134#p47134
"i have around 43 mods installed, xD. It just depends on the mods you install. But yeah, having 43 mods removes my intro screen into a level."

This hints at another limitation that I don't think we've seen before.

On a side note, if hard limits are added to the AEI, we will also need the ability to turn off those limits so that we can test things ourselves.

comment:4 by Christian, 11 years ago

What would you suggest? Just put an arbitrarily chosen limit on the number of mods allowed to install at once?

comment:5 by Iritscen, 11 years ago

Well, that would be better than nothing, but I was hoping to build a list of resource limitations that the AEI could watch for in the selected packages. As I suggested in the comment I linked to above, we can try installing lots of mods and seeing what crashes or causes glitchy behavior like missing splash screens, then determine what resource type was overloaded and program that new-found limit into the AEI.

One potential point of difficulty is XML patching, because a patch might add any number of resources programmatically. I think in that case we can only count resources after the fact and warn the user that the preceding installation may be unstable.

In all cases, we should allow the player to proceed if he really wants to, since some players are okay with some glitches and we also need to be able to test freely.

comment:6 by Christian, 11 years ago

Well then ... Give me a list and I'll try to implement it ;P
I honestly don't have any idea what the limits are and currently don't have the time to do hundreds of tests for each resource type :(

comment:7 by Iritscen, 11 years ago

No need to do hundreds of tests, let others do them for you! I would help test myself, but I'm rather busy at the moment. In any case, we can let the players and modders test for us, by asking them to file a support request when something goes wrong. The request will have a record of the mods they used, and hopefully their message will tell us what problem they're seeing. The only question is how to let them know they can help us by doing this; in fact, I generally feel that the "Request help..." item is not discoverable enough for players.

As far as what limits we know already, all I can think of is the 1024 particle classes mentioned above. I would also suggest a flat limit of 30 or 40 for total mods. Again, we're only warning the user so he doesn't do something risky out of ignorance; we'll still let him proceed if he is sure he wants to do something risky. So if we warn someone about 33 mods that actually don't cause a problem together, it's not a big issue. At least we'll be letting users know they're not supposed to be selecting ALL THE MODS when installing.

As far as the message itself is concerned, here's a sample of what it could look like:
"Warning: the set of mods you've chosen to install may cause unstable behavior in Oni.

  • Over 30 mods selected; this may cause unexpected issues.
  • Over 1024 total particle classes; this may cause crashes.
  • Over (???) textures; this will cause splashscreens to not appear."

(P.S.: I have no idea what causes splashscreens to not appear, that's just an example.)

comment:8 by Iritscen, 11 years ago

:-<

http://oni.bungie.org/community/forum/viewtopic.php?id=2679

Another example of a disaster that could have been averted with tickets #11 and #12.

As said above, a flat limit on mods would be better than nothing, so if you don't have the time to drive the limit-discovery project I described above, at least add a warning when a bunch of random mods are being selected, which explains the sort of thing I wrote in that thread.

comment:9 by Christian, 11 years ago

As the de-facto director of the overall community development ... can't you manage that research? I would be glad to integrate the results afterwards ;)

Note: See TracTickets for help on using tickets.