ESOUI

ESOUI (https://www.esoui.com/forums/index.php)
-   General Authoring Discussion (https://www.esoui.com/forums/forumdisplay.php?f=174)
-   -   Communicating with group member's addons (https://www.esoui.com/forums/showthread.php?t=8107)

MycroftJr 10/13/18 04:15 PM

Communicating with group member's addons
 
As part of an addon I requested here, I'll need to (or strictly, would like to) be able to have an instance of the addon running on one group member's client with instance(s) on the other group members' client(s).

https://www.esoui.com/forums/showthread.php?t=7371 should be revived as an open wish, correct?
Are there any new communication hacks that weren't mentioned there that I should know about?

Baertram 10/14/18 09:54 AM

Check the addons + forum thread for LibGroupSocket. It is able to send a small amount of data to the other players in a group using MapPings.

Maybe a group ready check can do the trick for you as well by sending some info from one addon to another but not showing the ready check dialog (if this is still possible).

Be warned:
Both ways can kick you from the game if you send too many data requests in a short time, so killing a lot of people in a group could kick you or others from the client.

Rhyono 10/14/18 09:58 AM

Quote:

Originally Posted by Baertram (Post 36294)
Both ways can kick you from the game if you send too many data requests in a short time, so killing a lot of people in a group could kick you or others from the client.

I'd imagine the best way of going about it would be to accumulate kill counts then send them off every X seconds/minutes, rather than sending every single kill.

MycroftJr 10/14/18 12:39 PM

Quote:

Originally Posted by Rhyono (Post 36295)
I'd imagine the best way of going about it would be to accumulate kill counts then send them off every X seconds/minutes, rather than sending every single kill.

Is that really necessary for Blade of Woe kills? Surely it's not possible to make Blade kills faster that 1 every ~2 seconds?

Baertram 10/14/18 12:41 PM

If you are playing with about 10 users in a group and each one of them kills there will be 10xkills messages to send.
Not sure how the game is counting them, if it's per account/user or total group or whatever.
I think you'd need to test it but sending the data only once each x seconds sound for a good way if you only wnat to know the total in the end (for your addon).

Sordrak 10/18/18 01:33 AM

The game allows a rapid burst of messages, yet i wouldn't recommend it.

I'm playing around with Map Pings as well, yet I'm not using any library and went for my own implementation. Yet, for such a small addon i wouldn't recommend this. Just use LibGroupSocket. LibGroupSocket should allow sending 3 respectively 7 bytes, which means a single message can transfer all you need. Use a new Message Identifier (first byte wich wasn't counted above) and send the kill count in another byte.

I guess the easiest way would be an update loop with a 1 second interval (1s seems to be a good time for not being kicked from the server for spamming) to send messages. For every kill you make increase a counter, once a message is sent set it to 0.

Shouldn't be a huge deal to implement this.

Regarding the question about simultaneous Map Pings by different group members. That's not an issue. It doesn't really matter if you are 2 players or 24 players in the group. It only matters how often you send something.

Edit: Seems like i have misread the last part. If you send a Map Ping, everyone in the group will see that Map Ping. So in a group of 24 it is sufficient to send one Map Ping with your information. Not 100% sure about how it is handled when someone is in a loading screen, i guess one will miss Map Pings in loading screens. So if that is part of your game, instead of sending an incremental amount of kills, you might go for sending the total kill count and a way to reset the count.


All times are GMT -6. The time now is 04:35 PM.

vBulletin © 2024, Jelsoft Enterprises Ltd
© 2014 - 2022 MMOUI