Closed AMelonInsideLemon closed 2 months ago
I think everything except for the store contents can be stored in a database to enable interaction with events, for example, from the same web UI. For now, I've put everything in MongoDB.
For sake of making the worldState more "dynamic", I'd argue this is a shortsighted move that will make it more static in the long run.
If you really want a dynamic worldState, look into PRNG algorithms (I suggest LCG) and seed ESO based on the current week. Or bounties based on the current 90 minute window. Etc.
I'll just leave this open for now, to see what direction this takes.
I'm not sure about what worldstate all contains. I think not everything should be put to db, but perhaps also be read from files.
E.g. bounty rotations: have the possible bounties in a file, and rotate them based on that 90 minute window sainan mentioned.
Or changing the events via the webUI also sounds good. But, right now, I think they should be in files not in database.
Have perhaps ids for every event, and save a "activeEventId" to database.
I am failing to see what the point of any of this is. The real server generates the current worldstate based on its current time. Some things like news and alerts may be fetched from a database, but certainly not the whole thing.