WSRP Chat on Discord
Open Chat in New Window
Page
of 2

[Addon] [In Development] OKNexus!

13 replies
Posts:
791
Stars:
+1,091
Admins
Caretaker
Good effort! There's still stuff that can be done.

Yesterday several people were suggesting an /inspect feature - If you see someone with the addon, you can type /inspect to basically do a holonet search on them, and then their profile comes up. Is that something that would work and save on bandwidth?
Posted Oct 19, 15
Posts:
372
Stars:
+386
Well, there's sorta how I have in mind. Except you'll first have to "meet" the person to get the data. Once it's stored you can get it at any time.
EIlMTaR.png
Posted Oct 19, 15 · OP
Star
x 1
x 1
List
Undo
Posts:
372
Stars:
+386
Data:

  • Alias (For a name other than your character name)
  • Title / Nickname (For a job title or nickname you also answer to)
  • IC / OOC Flag (True / False)
  • Profile Link (Super streamlined link to these forums. Would be just the thread name, addon would add the rest of the URL locally)
  • Over All Version Field included too

A CodeEnum is used for each field in the overall data
Each field gets a version attribute.
Data is sent via a table that's converted using LibJSON.

Copy
local CodeEnumOKNexusData = { name = 1, title = 2, ic = 3, profileUrl = 4, version = 5 } local tData = { { version = 1, data = "Veelo Nightshade"}, { version = 1, data = "Witch"}, { version = 3, data = true}, { version = 1, data = "24625996-[Entity][Ex]-Veelo-Nightshade"}, 7, }


Upon encountering a unit (When the unit triggers a UnitCreated event) a message is sent requesting overall version. This also uses a CodeEnum to keep those messages short.

Copy
local CodeEnumOKNexusMessageType = { requestVersion = 1, replyVersion = 2, requestAllVersions = 3, replyAllVersion = 4, requestData = 5, replyData = 6, }


On encountering, you send a short message with the CodeEnumOKNexusMessageType.requestVersion in the message type header.

If the version you have is mismatched, you send a CodeEnumOKNexusMessageType.requestAllVersions in the message header to get a list of versions that is compared. From there, the specific data that is different is requested using another CodeEnumOKNexusMessageType.

An option is to make IC / OOC use a different channel and an overall broadcast, not using the versioning system. Actually, this would be better, since you'd cut out message packaging overhead. IC / OOC would change most over all.

Additional fields could possibly be added.

The idea I had for the URL is that we have a specific sub forum for Profiles here. The URL is pasted into the addon, which cuts out the bits not needed since they'll be the same for everyone. This will shorten the URL data.
EIlMTaR.png
Posted Nov 1, 15 · OP · Last edited Nov 2, 15
Star
x 1
x 1
List
Undo
Posts:
372
Stars:
+386
Also needed, a timer and minimum time between sendings. You don't want o send the message a million times running around Thayd because another person is also doing the same.
EIlMTaR.png
Posted Nov 2, 15 · OP
Page
of 2
NoticeNotices