Quantcast Syncing between admins using the same add-on - ESOUI
Thread Tools Display Modes
01/04/15, 10:20 PM   #1
Join Date: Nov 2014
Posts: 6
Question Syncing between admins using the same add-on

Hi Guys and Gals,
PHP programer/gaming nerd turned add-on programmer here. I am very new to the add-on scene so please do not get offended/nasty if I ask something that is not possible/the normal way(the proverbial wheel)/Recommended...

My question is this: How does one go about syncing data (saved variables) between two people using the same add-on. Is it already done, or is it not possible? I have an idea for an add-on that is great for a one man wolfpack but was wondering if a sync is possible (besides emailing/dropboxing the file) between two admins, say a guild master and a(n) officer(s)? I know lua can do an ftp connection which is as pretty straight forward as any other programming language but wasn't sure and cannot find anything about it on the forum. If I missed a post on the subject please show me as I can be blind from time to time . Also another thought might be an in game mail catcher that could send an update/receive an update automatically.

Thanks in advance.
  Reply With Quote
01/04/15, 10:48 PM   #2
AddOn Author - Click to view addons
Join Date: Apr 2014
Posts: 163
Welcome to the madness that is ESO addon coding! Folks here tend to be quite polite, especially by MMO standards. I suggest downloading ZO's official API function list, which is attached to this post on the official forums, and getting the Zgoo addon, which lets you look at the global namespace in-game. (Some people have also reverse-engineered the game files to read ZO's lua code for the vanilla UI. If you think that might be helpful, there's folks here who can help you privately.)

It is notoriously hard to get addon data out of a user's instance of the game. Outside the game, you need to rely on parsing the SavedVariables file, which only gets written at initial load, logout, and /reloadui . Lua's file manipulation is disabled in the ESO client, and even copying data to the system clipboard was made a private function in the last update.

In-game, you have a few more options, but not many. Any in-game chat message needs to be sent via a keyboard stroke, though you can pre-populate the chat input buffer. In-game mail can be sent automatically, though that might change after this incident; also, you run into issues having to do with delays for in-game "mail received" notifications. And I know of at least one addon that passes messages via guild member notes.

I hope this helps!
"GUIs are tough. Let's go wumpus hunting."
  Reply With Quote
01/04/15, 11:32 PM   #3
Ayantir's Avatar
AddOn Author - Click to view addons
Join Date: Jul 2014
Posts: 1,022
As katkat says, there is 0 "auto" interaction possible between addons.

If addons need to communicate, they must do it with user validation: hit enter in chat or send a mail. chat got its spam restrictions (max 10 inputs in few seconds) and mail too, so there's not a lot of possibilities and as for now, we don't need a lot.
  Reply With Quote
01/05/15, 11:35 AM   #4
AddOn Author - Click to view addons
Join Date: Apr 2014
Posts: 241
There are a couple of efforts for exporting data for viewing elsewhere that use a 3rd party program loaded onto the computer (Guild Sales Assist and IGOR (Research)) but those are essentially export-only. To reliably read data in from an external source you'd pretty much need the user to quit/restart the game.

There are also a few that function by generating a URL then asking the user to copy/paste that into a browser. I suppose you could also make it to copy/paste text back from the site to sync, but it's far from automated.

Mailing would probably be the easiest if you want low-frequency (1-2 times per week) updates that don't have to go into effect immediately. If you want quicker, you're pretty much limited to prefilling the chat box and letting the user submit it.
  Reply With Quote
02/04/15, 07:28 AM   #5
Baertram's Avatar
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 2,580
Hi and welcome to ESO addon development.

As katkat42 has alreay told you there is an addon which uses the guild note method to transfer information between guild members:

Merlight builds a kind of identifier string that will be stored inside the guild notes and wil be read by other users using his addon to show the information at crafting stations again.

But the note is not very long and if the information should only be viewable by guild admins/guild officers you cannot assure it this way, I guess.

And in additon the guild members cannot use the guild note to inform others about their name, likes/dislikes etc. anymore.

An idea:
Perhaps you can build an addon that will encode the guild note information (enabled/disabled and manually entered in the settings of the addon for each of the 5 guilds) in such a unique identifier too, so you can use it for your guild members (they all need the addon then) to show the guild information about each member, and in addition the admins/officers of the guild see extra info that you want.
You could realize it with a custom tooltip (on mouse enter of the guild note) for the guild where the addon is enabled for in the settings, instead of showing the original guild info tooltip then.

This way, if it works, you can build a tooltip with the information that you like to have it in (show the main character name + class icon, level etc.).
The information can be automatically be updated for each guild member as he/she logs in/logs out/reloads UI.

And maybe even make it compatible to Merlights addon mentioned above.
If your addon is disabled for any of the 5 guilds the standard tooltip will be shown.

Last edited by Baertram : 02/04/15 at 07:30 AM.
  Reply With Quote

ESOUI » General Discussion » Class Discussions » Syncing between admins using the same add-on

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off