[DiscordArchive] The question here stands though, if I (or someone) wants to implement new functionality to Eluna, ho
[DiscordArchive] The question here stands though, if I (or someone) wants to implement new functionality to Eluna, ho
Archived author: kebabstorm • Posted: 2022-01-07T15:44:40.808000+00:00
Original source
The question here stands though, if I (or someone) wants to implement new functionality to Eluna, how would one go about doing it. Do I need to make myself familiars with every core and make sure the functionality works in everything, or can I add new features which work in let's say AC&TC3.3.5 and just use #ifdefs to make something work for one core, but leave the function returning 0 or false or whatever to the other cores and leave developing the functionality for other cores to other people?
Archived author: Roboto • Posted: 2022-01-07T15:45:02.209000+00:00
Original source
> from what I gather, you have your own fork of Eluna but the changes there are supposed to be pushed to the main Eluna repo and kept in sync, right? So that they don't deviate into different forks
Yes that's correct, we recently made our own fork because there are some features that Rochet2, the maintainer of the main Eluna repository wasn't too keen on merging. But yes we would like to keep our fork as close as possible to the original so that we can benefit from its changes while still contributing with our fixes, and features when they are welcome
Archived author: kebabstorm • Posted: 2022-01-07T15:46:14.999000+00:00
Original source
Let's say I wanted to implement something like this https://github.com/ElunaLuaEngine/Eluna/issues/403 , do I need to implement it for every possible core or can I just implement it for AC (or AC&TC3.3.5). Is it allowed ? And how specifically to do that
[Embed: [Suggestion] Implement asynchronous DB queries · Issue #403 · Eluna...]
Currently Eluna has only DBQuery and DBExecute which of Execute is pushed to the core's database worker thread pool and does not block, but also does not return results. If you want to make...
https://github.com/ElunaLuaEngine/Eluna/issues/403
Archived author: kebabstorm • Posted: 2022-01-07T15:47:47.323000+00:00
Original source
I literally cannot comprehend why asyncqueries aren't used? Is there something I'm not seeing? I think it would be absolutely the way to go, as the cores do have database worker threads for DB queries, why they should ever be blocking if the information is not instantly needed?
Archived author: kebabstorm • Posted: 2022-01-07T15:48:31.956000+00:00
Original source
and btw thanks for taking the time to answer
Archived author: Roboto • Posted: 2022-01-07T15:49:32.995000+00:00
Original source
Most of the time if you add something simple (eg. expose a function from the core it'll work everywhere, except if the game feature for it doesn't exist in the core's expac, for example arena methods in mangos zero)
For more complicated features it's awesome if you can make them work everywhere, but otherwise yes you can just implement them in one core and expose in an `#ifdef AZEROTHCORE`
And well, if the other cores want it they'll have to port your feature to their core I guess
Archived author: Roboto • Posted: 2022-01-07T15:50:01.728000+00:00
Original source
Ah, async queries, interesting
Archived author: Roboto • Posted: 2022-01-07T15:51:27.405000+00:00
Original source
Funnily enough, I had in mind the same callback idea
Archived author: Roboto • Posted: 2022-01-07T15:51:37.788000+00:00
Original source
Talked about it yesterday with <@!595620700706832414>
Archived author: kebabstorm • Posted: 2022-01-07T15:52:27.087000+00:00
Original source
So the right way to do it would be to wrap the whole function in an #ifdef ? So it doesn't exist at all in other cores? As another way would be to have the function but have it not return anything in other cores. Which one is the right way to go ?