Socialist
Status
Socialist is in a re-development phase, and a new beta will be released sometime in September. Stay tuned!
About
Socialist is a social tracking suite aimed at supplementing and largely replacing the built-in Social panel.
Socialist will:
- Provide a robust, real-time searchable, client-cached table displaying a wide variety of data on every character you meet in WoW, including those you meet in person, in a raid, in your guild, or over a chat channel. This view can also be used as a complete replacement to the original table-based /who system, powered by WhoLib.
- Provide a searchable table displaying every party or raid you've been a part of, detailing the important information of that group (members, RaidID, instances visited)
- Provide a searchable listing of every profession recipe you observe in chat, allowing you to search by recipe or by crafter.
- Allow you to share your data with guildmembers and friends.
Socialist will not:
- Entirely replace the built-in Social panel. The default panel will remain the place to go to modify Raid settings and Chat preferences. While unfortunate, this is necessary in order to keep from causing potentially raid-wiping issues and to keep complexity low.
- Be highly customizable. Socialist's user interface will be clean, minimalistic, and intuitive, and will achieve this by forgoing customizability.
Usage
Coming soon!
Panel details
Socialist is cleanly devidided by purpose in to six panels: Who, Groups, Professions, Preferences, About, and Sharing.
Details on these panels, including screenshots, will be added as development continues.
Who
The Who panel provides a real-time searchable client-cached table of every character you meet. The table begins fully populated with every character you have encountered. As you enter search criteria, the table will be restricted to the characters that meet those criteria. The criteria you can search for are:
- Name / Class / Race / Guild / Zone / Level (these criteria can also be sent as a /who query to the server via the "Query Server" button)
- Talent specialization (either by Tree 1 - 3 or, if a class is specified, by the name of that tree (e.g. Arcane, Fire, Frost)
- Last Seen
- Grouped With
Note that Name and Guild search criteria are normalized when searching the client cache (and not during a server query). This means that if you search for Tom, a character named "Töm" would be in the results. Note that this option can be disabled in the preferences panel, and that this option may possibly produce strange results in non-enUs locales.
Not only is the table updated as you restrict the criteria, the table is also updated as new data is collected. Data can be collected through a variety of means:
- By listening to /who results, for instance from a "Query Server" result as the result of a passive scan used to keep the database current
- By listening to chat channels
- By a player joining your group
- By the guild or friend roster
- By mousing over a player
These new results will be entered and displayed immediatly (assuming they fit your criteria).
Each entry in the table can be selected by left-clicking the entry, which also queues that entry for an update in the passive scan (which can, particularly when in a major city, take upwards of two or three minutes to complete). Double clicking an entry opens a whisper to that player. Alt-clicking an entry invites that player to your raid or party. Control-clicking an entry opens the Group panel and searches for groups with that player. Right clicking an entry opens a context tooltip with further options.
Groups
The Groups panel provides a real-time searchable table of every Group you have been a part of. A group is defined as:
- A group consists of all of the players who are in or were in your party or raid.
- A group tracks all members of the Group during the time you were in the Group.
- A group tracks which instances you visited while in the group.
- A group tracks all RaidIDs you updated while in the group.
- A group starts when you join a party or a raid, or when a party you are in is converted to a raid.
- A group ends when you leave your party or raid, or when a party you are in is converted to a raid.
- Note that some groups will behave in a way that makes this definition cause Socialist to report groups strangely. For instance, a group could end up spanning several days and consist of several hundred members visiting a dozen or more instances. Tracking a group across game sessions is NOT intended, and as such doing a UI reload can cause eratic behavior.
- This definition will be updated as development continues.
Groups can be searched by:
- Players in the group
- Instances visited by the group
- The date the group was formed
- The Raid IDs updated by the group
At this time, no further functionality is planned for the Groups panel, though in the future the ability to use past group data to invite players to a brand new group is a possibility, as is potentially harvesting data from attendance trackers and damage meters, or things like tracking talent changes. This remains to be seen.
Professions
The Professions panel provides a real-time searchable table of every craftable item recipe you've seen linked in any chat channel (Trade, for instance, or guild or whispers). The available criteria for search, and tracked data, are:
- By item name (e.g. Titanium Frostguard Ring)
- By component name (e.g. Titanium Bar)
- By crafter
- By profession
Each row in the table will correspond to one single craftable item found (or 'scraped') from every profession link you see in chat or whispers. The item name is clickable to view that item's tooltip. Next, a link to the crafting recipe is provided, and is also clickable. Next, the name of the profession that can craft that recipe. In the final column, a comma-separated list of every player that can craft that item.
Rows in this table cannot be selected or interacted with other than to click on the item links they contain.
Preferences
Information on the Preferences panel will be made available when the beta is closer.
Sharing
Information on the Sharing panel will be made available when the beta is closer.
To Do / Known Bugs / Upcoming
Coming Soon!
I've just released the v0.2 Alpha. Please note that once again, Alpha releases are not intended to be used by others. In this case, I needed to check to see if the packaging system used by Curse was going to correctly interpret a specific file in the project that tells Curse where to find the embedded libraries. It did work correctly.
You'll notice in this Alpha release that clicking a player's name pops up a box that... doesn't do much. In fact, it might just throw an LUA error. This will eventually become the "Information Drawer" (or Gutter or Pullout, depending on what you've learned to call them), where more detailed information on the player is shown.
Once the pullout is done and the data mining is more complete, I will tag the first official beta. The Beta will not yet be prettified, but it will be fully functional.
Development is picking up in pace now as this quarter's classes have ended. I expect the beta will be out before Christmas.
At this point, Socialist works, but isn't even a shade of what it will one day be. It still manages to be useful from time to time, if just to recall the name of that fellow you saw one time. "I think it was Rin-something. R-i-n, ah, there it is, Rincewind."
Enjoy, and please give me your feedback, though I do ask you understand that this is still code in progress.
Thank you very much for your diligence. At this time the code is in an extreme alpha stage. I'm changing it drastically on a day-to-day basis.
I should have the first public beta out some time around Christmas. You might want to try tonight's build, it's actually pretty spiffy, albeit not very pretty at the moment.