[DiscordArchive] IMHO it should be possible to store in a key-value data structure all the primitives (int,char etc.)
[DiscordArchive] IMHO it should be possible to store in a key-value data structure all the primitives (int,char etc.)
Archived author: Foe • Posted: 2022-10-10T14:41:17.585000+00:00
Original source
Most of this comes down to poor script optimization, but that's not really a reason to not look into better core side handling
Archived author: Yehonal • Posted: 2022-10-10T14:44:00.164000+00:00
Original source
yeah, but how would you optimize it? storing the result of the query in a global state at the startup?
maybe we should start limiting it unless you want to use the cross-state feature for that as well
Archived author: Foe • Posted: 2022-10-10T14:47:27.998000+00:00
Original source
Which part? The scripts or the DB queries core side?
For scripts it's primarily limiting scripts to only run in the states they need to run in. This would probably be the biggest change people would have to make, as any script in the default script directory would be loaded for every state. By specifying which states (maps) the scripts should be loaded in you can lessen the load and amount of queries being ran pretty drastically
Archived author: Foe • Posted: 2022-10-10T14:48:25.265000+00:00
Original source
But yes, doing loading in the global state and exposing that data through the cross state storage would be a good way to deal with most cases where queries are used
Archived author: Yehonal • Posted: 2022-10-10T14:49:29.850000+00:00
Original source
yep, I think it should be a mix of both, loading at the startup and doing async queries when really needed
Archived author: Foe • Posted: 2022-10-10T14:49:36.930000+00:00
Original source
Yeah
Archived author: Yehonal • Posted: 2022-10-10T14:50:17.522000+00:00
Original source
please keep me posted about your progress. Also, is there a specific reason why you're not using AC?
Archived author: Foe • Posted: 2022-10-10T14:52:49.992000+00:00
Original source
Primarily because of the major changes we've done to the core, hence why we're on an old tc branch. It wouldn't make sense to port it over when it works fine on TC. Secondary reasons are rather personal preference, I'm not super happy with some of the AC design choices, as an example with memory management, and I haven't been very happy with some of ACs license choices in the past
Archived author: Foe • Posted: 2022-10-10T14:55:19.894000+00:00
Original source
Our current core is a branch from 2018 roughly, but due to the nature of the project we've rewritten quite a lot of the class, talent and spell handlers
Archived author: Foe • Posted: 2022-10-10T14:57:27.945000+00:00
Original source
The Eluna rewrite ended up being a part of the solution to some of the performance issues we experienced during an alpha test, even though it turned out to be something completely different causing the issues