Download
(9 MB)
Download
Updated: 03/18/24 04:10 AM
Pictures
File Info
Compatibility:
Scions of Ithelia (9.3.0)
Endless Archive (9.2.5)
base-game patch (9.1.5)
Necrom (9.0.0)
Scribes of Fate (8.3.5)
Firesong (8.2.5)
Lost Depths (8.1.5)
High Isle (8.0.0)
Updated:03/18/24 04:10 AM
Created:04/01/14 07:05 AM
Monthly downloads:11,573
Total downloads:1,437,620
Favorites:1,130
MD5:
9.3.0
pChat (Chat customization & help: look/notification/sound/automation/history)  Popular! (More than 5000 hits)
Version: 10.0.5.1
by: Puddy, Ayantir, Baertram, DesertDwellers
pChat

Please logout and backup your SavedVariables regularly!
pChat will update and support server dependent settings + histories!

The SavedVariables backup reminder will remind you once a week and after APIversion changes, and can be disabled in the Backup settings submenu.


pChat is an addon to overhaul the way text is displayed in the chatbox, make your chat customizable as it should be
pChat was not created to work properly with the gamepad input mode! It may work if you play in gamepad input mode but using the keyboard chat mode (ingame settings), but please do not report any bugs if you use the gamepad input mode! Switch to keyboard input mode instead if you want to use pChat.

The original author of this addon were: Puddy & Ayantir
Modified by: DesertDwellers (maintainer before Baertram) and many other addon devs.
Current maintainer: Baertram (since 1st December 2019)
-> Please do not ask for new features. I'm only maintaining this addon to keep it functional and alive.


Needed libraries/dependencies
-LibAddonMenu 2
-LibAddonMenu - Sound slider Widget <--- ATTENTION: NEW DEPENDENCY! 2022-04-10
-LibMainMenu-2.0 (do not confuse with LibMainMenu)
-LibMediaProvider
-LibCustomMenu
-LibDebugLogger

Optionally using these libraries (which must be installed seperately):
-LibChatMessage in version 93 or higher!
-LibAnnyoingUpdateNotificationInGame (Launig)
-Custom Titles



Addons description


Features
  • Character/Account names : Because in your guild chat you won't see @JohnTheRipper but Bugnark gro-Moshul, pChat replace account names with Character Names. Customizable by guild, groupe, normal chat. PlayerName@AcountName and @AccountName/Playername available too.

  • Copy Text : You want to copy your chat ? Right click a chat message to put it to the chat editbox, and Ctrl+C to copy it to your clipboard then. Or open the copy dialog where you ca filter by chat channel and categories.
  • Search copy Text : You want to search your chat history and current chat? Open the copy dialog and click on the search button to show the search UI. Right clicking found chat entries can be copied to the chat editbox again (CTRL+C to copy it to your clipboard then). The chat channel and categories filters will change the chat search UI once you applied the filters.
  • Anti-Spam : Bored of LFG, WTB and other flooding players ? AntiSpam without any configuration

  • Resizing Chatbox : Got a Full HD screen or more ? So let's resize your chatbox up to fullscreen

  • Timestamps : For the ones who like precision, now all messages got their timestamps. Hightly customizable to show your desired format. 11:43 PM or 23:43:12, choose the one you like.

  • No more whisper missed : A whisper : A sound. Visual
    notification if you want it too.

  • [21:08] [pChat] [Ayantir]: Because chat should be easy to read : Timestamps, From Info and messages can be colorized as you like

  • Rename your Guilds Chans : Guild Tag or Officer one, each channel can be renamed

  • French / German translations : Russian & Spanish Translations too

  • Exit /g1, /say, /o1 : Click on chat, timestamp, channel name, and pChat will set your channel to the one you clicked on

  • Chat history : No more chat wiped when you'll reloadUI. Also include a restore history when you logout, get kicked or disconnect.

  • New Fonts embedded : 15 new fonts if you don't like the default one. And you can add the one you want too.

  • Darker chat window : If your eyes need a little help to improve your chat reading, and if you don't like background it can also be always transparent.
  • Define your own messages via /msg slash command : Define messages (long text) which you are able to quick post using a !<tag>, e.g. !ts + return key in the chat editbox: Will post the TeamSpeak server host/IP and login data information to chat. Often used with !ga to post guild advertisement texts.
  • Chat context menu (at names and/or messages) :
    -Setting: Show @AccountName/CharacterName (based on the chat channel and your pChat configuration for that chat channel! if you have not enabled @AccountName but only characterName it can be that @AccountName is missing!) in the context menu headline
    -Setting: Teleport to player (if in guild, group or on friends list)
    -Setting: Send mail to player
    -Setting:Ignore will ask before ignoring, with a Yes/No dialog (works in "Friends list" and "Report player" too as you try to ignore a player).

  • Added teleport slash commands :
    [color]
    /pchattpgl Port to group leader
    /tpgl Port to group leader
    /pchattppl Port to group leader
    /pchattpgm <name> Port to group member <1st found partial or full @displayName or character name>
    /tpgm <name> Port to group member <1st found partial or full @displayName or character name>
    /tpp <name> Port to group member <1st found partial or full @displayName or character name>
    /pchattpp <name> Port to group member <1st found partial or full @displayName or character name>
    /pchattpfr <name> Port to friend <1st found partial or full @displayName or character name>
    /tpfr <name> Port to friend <1st found partial or full @displayName or character name>
    /pchattpg <guildIndex 1 to 5ptional> <name> Port to guild's <guildIndex> member <1st found partial or full @displayName or character name>
    /tpg <guildIndex 1 to 5ptional> <name> Port to guild's <guildIndex> member <1st found partial or full @displayName or character name>
    [/color]
  • Integrated addon "Chat Mentions" and other features : Enable sounds and visual mentioning of your character/account.
    Show the currently typed character count at the chat window header bar.
    Show the last time you have posted something to the zone chat at the chat window header bar.
    Addon and features provided by: Coorbin


  • And many other features : Redundant information like "says" are optionally removed, Prevent chat text from fading, Set default channel & tab at login, Strip Colors to avoid Raimbow Messages, Automatic Party Switching, Remove Brackets on Player Names, Change Tab color, Automatic chat configuration between chars, No Guild reorganization when you leave a guild, System Messages in the tab you have chozen, Keybinds to switch between tabs and toggle chat window, Automated messages system, Party Leader own color, Clear current tab, Auto switch channel when using arrow keys, Configurable switches for channels


Missing a feature? Have a look at the "Other chat addons" section below






Options menu to setup the addon : In Settings > Addon Settings > pChat ("Extensions" in French and "Erweiterungen" in German)



Known Issues :
-Do not use a keybind that uses Alt. For example, Alt+Shift+x, Alt+Ctrl+x, all keybinds without Alt are good.
-If you get an error message first read and apply the information from above, written below the headline
After updating pChat please be sure to check the subfolder "lib" is not there anymore. If it is still there: Delete it!


Any problems : Please let me know with a comment or a PM.
Please read the sticky comment (first comment) before posting a bug!


Important information:
Chat addons cannot work properly if the CrownStore is open! This is due to ZOs restrictions to protect the crown store against changes via addons and affects the chat as well.


Other chat addons
FCOChatTabBrain: Auto switch multiple chat tabs upon incoming messges, remember last chat channel at each tab, automatically change chat channels to last incoming one upon pressing <chat start> (RETURN) key, redirect whisper messages, play sound notifications on messages (keywords, friends, group, leaders, guilds), auto switch to group, and many more features.


If your chat addon needs to be compatible with pChat
The CHAT_ROUTER:RegisterMessageFormatter only allows 1 function for each EVENT_CHAT_* callback function!
If you assign it new you'll overwrite exisitng ones!
So ALWAYS please check if any other chat addon is enabled, add these other known chat addons to your manifest txt ## OptionalDependsOn: list so the other addons load before your addon, and afterwards "post hook", or manually post hook, the other message formatter callback function -> See example for pChat below.
ATENTION: pChat uses the EVENT_PLAYER_ACTIVATED callback to register the message formatters! If you want to post hook it you MUST do that after your own EVENT_PLAYER_ACTIVATED callback! Using EVENT_ADD_ON_LOADED will make pChat overwrite your callback function again (and it's no good to use EVENT_ADD_ON_LOADED here as the chat is ready first after first called EVENT_PLAYER_ACTIVATED)!

Example code for your EVENT_PLAYER_ACTIVATED callback function, for the chat message formatter of EVENT_CHAT_MESSAGE_CHANNEL
Lua Code:
  1. local function myChatHandlersMessageChannelReceiver(channelID, from, text, isCustomerService, fromDisplayName)
  2.         --your chat EVENT_CHAT_MESSAGE_CHANNEL callback function
  3.     end
  4.     --For the example OR - Wrapper function for the existing EVENT_CHAT_MESSAGE_CHANNEL callbackFunction    
  5.     local function myOnChatMessageChannelWrapper(messageText)
  6.        local messageTextNew = messageText
  7.        --Do whatever you need with the messageText passed in from original function
  8.        return messageTextNew
  9.     end
  10.  
  11.  
  12.     if pChat == nil then
  13.         --pChat is not loaded: Add your own handler to the CHAT_ROUTER
  14.         --I'd always check if any other chat addon is active though and maybe thus always add the code below, even if pChat is not loaded
  15.         --as it will keep exisitng callback functions of other addons or event add to the original vanilla chat formatter callback function
  16.         CHAT_ROUTER:RegisterMessageFormatter(EVENT_CHAT_MESSAGE_CHANNEL, myChatHandlersMessageChannelReceiver)
  17.     else
  18.         --pChat is loaded
  19.         --!!!ATTENTION!!!
  20.         --Do the following at EVENT_PLAYER_ACTIVATED after pChat has set CHAT_ROUTER:RegisterMessageFormatter(EVENT_CHAT_MESSAGE_CHANNEL, pChatChatHandlersMessageChannelReceiver)
  21.         --Get all chat formatters. Table formatters will contain the different chat event entries, like EVENT_CHAT_MESSAGE_CHANNEL now
  22.         local formatters = CHAT_ROUTER:GetRegisteredMessageFormatters()
  23.         --Get the chat callback function for EVENT_CHAT_MESSAGE_CHANNEL of pChat
  24.         local originalpChatFormatter = formatters[EVENT_CHAT_MESSAGE_CHANNEL]
  25.         if originalpChatFormatter then
  26.  
  27.            --Either:
  28.             --Post Hook pChat's EVENT_CHAT_MESSAGE_CHANNEL callbackFunction by re-applying the own handler function
  29.             --which first calls pChat's function, and then your own code
  30.             CHAT_ROUTER:RegisterMessageFormatter(EVENT_CHAT_MESSAGE_CHANNEL, function(...)
  31.                 local messageTextOfpChatHandler = originalpChatFormatter(...)
  32.                 --Do something with messageTextOfpChatHandler if you need to
  33.                 return myChatHandlersMessageChannelReceiver(...)
  34.             end)
  35.  
  36.           --Or:
  37.           --As the callback function of EVENT_CHAT_MESSAGE_CHANNEL returns  Instead of a manual posthook your could also define your own "wrapper" function around the original function
  38.           CHAT_ROUTER:RegisterMessageFormatter(EVENT_CHAT_MESSAGE_CHANNEL , function(...)
  39.                     return myOnChatMessageChannelWrapper(originalpChatFormatter (...))
  40.                 end)          
  41.  
  42.         end
  43.     end



Special Thanks to :
Seerah for LibAddonMenu & Garkin for his Help
Phidias, Kirix & Toperharrier, Baertram for their translations
and Puddy for his original work


Contribute / Help / Fix:
If you want to contribute, help or fix feel free to send Github pull requests:
pChat at GitHub
- Maintained by Baertram. Please do not ask for new features. I'll just keep the addon running. Thanks for your support -

Changelog:
## v10.0.5.1 ## 2024-03-18
Fixed:
--RU translations, thanks to mychaelo
--APIversions of needed libraries (LAM, LMP) to prevent errors


## v10.0.5.0 ## 2024-03-09
Fixed:
--EN translations wrong used \
--Guild spam detection lua patterns, wrong used escape character \ instead of % (thanks to DakJaniels)

Changed:
--Default keybind for "Next chat tab" removed (was harcoded to be SHIFT+TAB)


## v10.0.4.9 ## 2024-03-05
Fixed en translations - Thanks Antisenil

## v10.0.4.8 ## 2024-02-26
Fixed default tab setting resetting to tab 1

## v10.0.4.7 ## 2024-02-22
Fixed left over testing variable that existed on my tests, but not your SavedVariables ;)

## v10.0.4.6 ## 2024-02-22
-Fixed version shown ingame
-Fixed character name context menu to show "teleport to" and "send mail" for own logged in account
-Fixed character name context menu to not work with some guild mates, if they relogged the character (and you got the character name only, or the @account/characterName enabled in the message output settings)
-Fixed some typos
-Fixed chat copy dialog XML usage of resizeToFitDescendents (in ZO's XML template) with a fixed width/height
-Fixed missing/deleted chat tabs brought up error messages if chat tab config sync was enabled between characters
-Changed "Show zone of currently logged in character, if chat history restore is enabled": It will show the parent zone (e.g. Vvardenfell) an the chat message's end too now, and not only the current (sub)zone like Vivecc
-Added more translations
-Made compatible with API101041 "Scions of Ithelia"


Added on request:
--Show character level at character context menu (use setting to enable this)
--Minimize the chat only in some menus, e.g. keep open in inventory, just like it worked as the bug still existed (use setting to enable this)


## v10.0.4.5 ## 2024-01-29
Removed chat channel for player emotes from backlisted chat mention chat channels -> For roleplaying

## v10.0.4.4 ## 2024-01-26
-Improve several translations, e.g. at the sync and copy chat options settings
-Fix chat minimize making sync save wrong values cuz minimized too early
-Fix copy dialog prev/next button texts
-Make copy dialog movable
-Added chat Search UI at copy dialog, for copy channel talk and copy whole chat (toggle button at top right edge of the copy chat dialog):
You want to search your chat history and current chat? Open the copy dialog and click on the search button to show the search UI. Right clicking found chat entries can be copied to the chat editbox again (CTRL+C to copy it to your clipboard then). The chat channel and categories filters will change the chat search UI once you applied the filters.


## v10.0.4.3 ## 2024-01-13
-Fixed menus closing the chat and not reopening it (ESC, game menu, CPs, and others)
-Fixed Chat mentions reacting on NPC talk
-Added new settings submenu "Chat context menu" with:
--Mail player
--Teleport to player (if grouped, friend or in any guild)
--Ignore player option: Add dialog asking if you want to ignore (no more accidently ignored players if you wanted to whisper them via the chat context menu). Also works at friends list and player reports -> ignore.
--Added slash commands:
--- /pchattpgl Port to group leader
--- /tpgl Port to group leader
--- /pchattppl Port to group leader
--- /pchattpgm <name> Port to group member <1st found partial or full @displayName or character name>
--- /tpgm <name> Port to group member <1st found partial or full @displayName or character name>
--- /tpp <name> Port to group member <1st found partial or full @displayName or character name>
--- /pchattpp <name> Port to group member <1st found partial or full @displayName or character name>
--- /pchattpfr <name> Port to friend <1st found partial or full @displayName or character name>
--- /tpfr <name> Port to friend <1st found partial or full @displayName or character name>
--- /pchattpg <guildIndex 1 to 5:optional> <name> Port to guild's <guildIndex> member <1st found partial or full @displayName or character name>
--- /tpg <guildIndex 1 to 5:optional> <name> Port to guild's <guildIndex> member <1st found partial or full @displayName or character name>

## v10.0.4.2 ## 2023-12-05
Fixed possible nil error at MessageFormatters (sys messages)

## v10.0.4.1 ## 2023-11-27
-Fixed chat mentiosn: Finally no BING and (!) anymore on self send mesages, if disabled in the settings
-Added setting (1st submenu "Chat options", below "Enable copy of chat text"):
"Show @account/Charname header" at copy context menu
-> Only works if the chat channel already shows you the characterName and/or @accountName (depening on your chat format settings for the chat chanel)

## v10.0.4.0 ## 2023-11-20
-Fixed /roll command chat and chat history
-Added chat handlers for AvA keep attack messages
-Added scrollbar to settings dropdowns (where needed, e.g. Fonts list)

## v10.0.3.9 ## 2023-10-27
-Fixed chat background fading
-Fixed chat background darknesss
-Added social chat background (inactive) transparency setting directly to pChat settings (below background darkness) so one can see and change it there at pChat settings too

## v10.0.3.8 ## 2023-10-27
Fixed chat background fadeout on live

## v10.0.3.7 ## 2023-10-26
Updated for PTS, API101040
-Fixed chat text fade out on PTS
-Fixed Chat Mentions: Self send whispers played the mention sound and added the (!) icon, even if setting to do that for self send messages was off

## v10.0.3.6 ## 2023-10-15
Fixed Default chat channel empty error

## v10.0.3.5 ## 2023-04-11
Attention: New dependency needed. LibAddonMenu-SoundSlider widget. Check the pChat addon description for the link
-Fixed system messages rawLines saving duplicate timestamps
-Added chat copy UI buttons to enable/disable all filters, non-guild (zones, say, whisper, ...) and guild filters
You need to press "Apply filter" button after clicking these new buttons, they only affect the checkboxes marked/unmarked!
-Fixed Corbin's chat mention coloring :housing: chat links for own send messages


## v10.0.3.4 ## 2022-12-27
Fix a lua error message that coudl occur within the ChatMentions code (function pChat.alreadyHasColorize)

## v10.0.3.3 ## 2022-12-22
Fix chat transparency compatibility with Perfect Pixel addon

## v10.0.3.2 ## 2022-11-20
-Updated dependency versions
-Added ZH zone chat channels and settings for Chinese zone chat

## v10.0.3.1 ## 2022-11-06
-Updated API and dependencies
-Fixed whisper IMlabel not closing if manually switching to whisper tab
-Fixed chat text fade out with fresh install/new SavedVariables not working properly
-Added new settings for customizable chat text fade out start time, and duration time
-Changed "characters entered" label to only show if some characters are entered at the chat editbox (stop showing the 0/350 label)

## v10.0.3.0 ## 2022-06-15
pChat 10.0.3.0
-Fixed whisper IM label/close button not clickable
-Fixed QuickChat messages not showing

## v10.0.2.9 ## 2022-05-15
-Added PTS High Isle support
-Added Spanish language support
-Fixed chat auto minimize
-Added some performance tweaks

## v10.0.2.7 ## 2021-12-23 Merry Christmas
-Removed debug messages
-Added new settings submenu at the "Chat options" -> submenu "Chat window": Thanks to Coorbin!
--Show typed character count (and /350 as max chars) at the chat window header bar
--Show Z@<last time posted to zone chat) at the chat window header bar. This can help to keep track if you have already posted a chat advertisement/guild recruit message. Will reset with zone change!

-Removed old changelg prior to versin 10.0.0.0 as it was slowing down the changelog window a lot.

## v10.0.2.6 ## 2021-11-15
-#12 Fixed spam message checking for non-set (nil) timestamps of self send messages (e.g. WT messages)

## v10.0.2.5 ## 2021-11-03
-Fixed guild name format not remembering value in some situations

## v10.0.2.4 ## 2021-11-02
-API version updated
-Local speed up variables added
-Fixed name format (@account / char / ...) to use 1 table -> stripped redundancy
-Fixed name format to migrate old "guild name strings" instead of "guildId" from non-server to server dependent SavedVariables

## v10.0.2.3 ## 2021-09-16
--Updated API, removed old one
--Chat message channel switch to group channel. Thanks to LasherasGH!

## v10.0.2.2 ## 2021-06-22
-Fixed error message for new pChat users, which had no SV to migrate to server dependent values yet

## v10.0.2.1 ## 2021-06-20
-Fixed ChatMentions global leaking variable "news"
-Moved ChatMentions code to subtable pChat.ChatMentions

## v10.0.2.0 ## 2021-06-19
-Changed the SavedVariables to Server dependent ones: Means NA and EU server will save different settings and histories now.
Your current "non-server dependent" settings will be automatically copied to the server you login (NA, EU, PTS).
On-screen and chat messages, as well as LibDebugLogger messages (in the DebugLogViewer UI if you use this) will show you what was migrated and as it finished (2 automatic reloadUIs should happen during the migration process).

Attention: You are able to delete the non-server dependent (old) SavedVariables, to clean up the SV file s ize and increase the loading times, by using the chat slag command /pchatdeleteoldsv
BUT: Do NOT use this command before having logged in to ALL of the servers you play on! These non-server dependent settings are used as the copy base for the different servers. Copying SV from e.g. server NA to EU is not possible! So FIRST login to each server you play on, enable pChat and the dependencies, watch the screen for the migration messages and the reloaduis until it says finished.
After having migrated all servers you can use the slash command to delete the old SV file contents.

## v10.0.1.5 ##
-Changed backup reminder dialog to show gamepad dialog as well

## v10.0.1.4 ##
-Updated API to Blackwood
-Fixed settings menu to show the new CTRL+backspace settings proper: Chat options -> Chat Window -> Chat edit box
-Updated dependency versions
-Added a "Backup your SavedVariables" reminder. It will be shown once weekly or if the game's APIversion changes.
Please backup your SV at least once weekly as the pChat SV structures will change in the future and if migration will fail you will need a file to go back to.

You are able to disable the SV backup reminder in the settings at the Backup submenu.

## v10.0.1.3 ##
-Removed LibMainMenu
->You will need to install LibMainMenu-2.0 now!
-Added new setting to use CTRL+backspace to delete a whole word in the chat edit box (Thanks to Dolgubon)


## v10.0.1.2 ##
-Fixed copy dialog
-Changed copy dialog to disable filter checkboxes and labels for non filtered chat channels

## v10.0.1.1 ##
-Updated Russian translations -> Thanks to ivann339!
-Fixed chat copy dialog messing up the HUD/HUD_UI scenes
-Added keybind: "Copy whole chat (dialog)"
-Updated API version
-Updated needed library LibMainMenu to version 9

## v10.0.1.0 ##
Fixed
Copy dialog (still scene bug active)

Changed
-API version to Markarth
-Dependency versions needed: LibMainMenu v9, LibCustomMenu v694

Added
-Chat mentions by Coorbin, thanks for including this into pChat!


## v10.0.0.5 ##
Removed duplicate constants for the automated messages, hidden in pChat.lua file

## v10.0.0.4 ##
Fixed translations of the automated messages dialog, which you are bale to spawn via the /msg chat slash command

## v10.0.0.3 ##
After some users were not able to find the name format dropdown boxes for guilds and groups in the chat channel submenus, and thought the name format setting in the chat message submenu would apply to all chat messages:
Changed the settings so that the "name format" dropdown boxes for guild and group are also shown (duplicate) in the "message options"->"names in messages" submenu.

Hopefully the "bug reports" stop now as you will find them all at one spot :-)

## v10.0.0.2 ##
Fixed:
-Automated messages keybind and chat comamnd /msg will show the UI again

## v10.0.0.1 ##
Fixed:
-Timestamps and other formatting re-added for system mesages
-Timestamps and other formatting re-added for system mesages send by LibChatMessage (thanks sirinsidiator)
Attention: If you got the addon "DebugLogViewer" enabled the debug messages of addons will be ONLY shown in the DebugLogViewer UI/Quicklog UI, and NOT in the normal chat anymore! This is normal and an intended behaviour.
-Chat tab switch to default chat tab, after login

Added:
-Settings to enable/disable the chat format handlers (colors, timestamps, names, etc.).
You can find these settings as new submenu inside the "Message settings" submenu.
The following chat handlers can be enable/disabled:
  • System messages
  • Group left
  • Group type change
  • Friends list online status
  • Ignore list added
  • Ignore list removed
Standard setting value is: Enabled
You can use them to disable the chat formatters for e.g. online status and thus fix problems with other addons like "No Thank You".
You MUST reload the UI to change these settings so be sure to do so after changing the checkboxe values.



## v10.0.0.0 ## File split and code cleanup by sirinsidiator! Many thanks
-New dependencies were added:
-LibCustomMenu
-LibDebugLogger

--Fixed:
--#4 Sound notifications for incoming whispers were not played
--#5 Changing the slider for the chat background "flickers" sometimes (resets the color to black and then to the chosen one)
--Updated and corrected settings menu texts and tooltips

--Changed:
--Cleanup by sirinsidiator: Rewrite of some functions and removed overwritten ZOs function code + split into several files
--Removed redundant/non working/not needed code
--Many code improvements
--Settings menu totally changed to use less space on main menu page but use mroe submenus; moved related settings together into the same submenus

--Added:
--Description and tooltip to eso standard color and pChat color settings menu
--Added chat color darkening/lightening for NON ESO colors as well + added new sliders to change the values
--Added chat channel filter checkboxes to the copy chat dialog
--Added support for /zoneru chat

--Added on request:
--New setting: Chat channel will be automatically changed to /party if you port/reloadui to/in a dungeon, and if you are grouped. This is a new sub-setting of the "Enable Party Switch" setting.
Archived Files (140)
File Name
Version
Size
Uploader
Date
10.0.5.0
9MB
Baertram
03/09/24 10:24 AM
10.0.4.9
9MB
Baertram
03/05/24 07:50 AM
10.0.4.8
9MB
Baertram
02/26/24 09:27 AM
10.0.4.7
9MB
Baertram
02/22/24 02:07 PM
10.0.4.6
9MB
Baertram
02/22/24 12:35 PM
10.0.4.5
2MB
Baertram
01/28/24 07:11 PM
10.0.4.4
2MB
Baertram
01/25/24 07:21 PM
10.0.4.3
2MB
Baertram
01/13/24 09:37 AM
10.0.4.2
2MB
Baertram
12/05/23 10:02 AM
10.0.4.1
2MB
Baertram
11/27/23 03:40 PM
10.0.4.0
2MB
Baertram
11/19/23 05:35 PM
10.0.3.9
2MB
Baertram
10/27/23 08:13 AM
10.0.3.8
2MB
Baertram
10/27/23 07:13 AM
10.0.3.7
2MB
Baertram
10/26/23 03:31 PM
10.0.3.6
2MB
Baertram
10/15/23 12:14 PM
10.0.3.5
2MB
Baertram
04/10/23 05:38 PM
10.0.3.4
2MB
Baertram
12/27/22 02:02 PM
10.0.3.3
2MB
Baertram
12/22/22 09:14 AM
10.0.3.2
2MB
Baertram
11/20/22 10:13 AM
10.0.3.1
2MB
Baertram
11/06/22 04:51 PM
10.0.3.0
2MB
Baertram
06/14/22 06:51 PM
10.0.2.9
2MB
Baertram
05/15/22 03:50 PM
10.0.2.7
2MB
Baertram
12/23/21 10:05 AM
10.0.2.6
2MB
Baertram
11/15/21 04:07 PM
10.0.2.5
2MB
Baertram
11/03/21 07:31 AM
10.0.2.4
2MB
Baertram
11/02/21 08:46 AM
10.0.2.3
2MB
Baertram
09/16/21 02:41 PM
10.0.2.2
2MB
Baertram
06/21/21 04:54 PM
10.0.2.1
2MB
Baertram
06/20/21 02:37 PM
10.0.2.0
2MB
Baertram
06/19/21 10:01 AM
10.0.1.5
2MB
Baertram
06/07/21 07:19 AM
10.0.1.4
2MB
Baertram
06/06/21 04:04 PM
10.0.1.3
2MB
Baertram
04/12/21 11:32 AM
10.0.1.2
2MB
Baertram
11/15/20 04:22 PM
10.0.1.1
2MB
Baertram
11/15/20 01:48 PM
10.0.1.0
2MB
Baertram
11/02/20 07:38 AM
10.0.0.5
2MB
Baertram
06/29/20 12:43 PM
10.0.0.4
2MB
Baertram
06/29/20 12:24 PM
10.0.0.3
2MB
Baertram
06/28/20 03:20 PM
10.0.0.2
2MB
Baertram
06/23/20 02:27 PM
10.0.0.1
2MB
Baertram
06/22/20 12:30 PM
10.0.0.0
2MB
Baertram
06/19/20 05:02 PM
9.4.1.4
2MB
Baertram
03/02/20 10:34 AM
9.4.1.3
2MB
Baertram
03/02/20 04:26 AM
9.4.1.2
2MB
Baertram
02/27/20 12:52 PM
9.4.1.1
2MB
Baertram
02/26/20 04:44 AM
9.4.1.0
2MB
Baertram
02/24/20 05:33 PM
9.4.0.9
2MB
Baertram
02/24/20 04:43 AM
9.4.0.8
2MB
Baertram
01/16/20 01:04 PM
9.4.0.7
2MB
Baertram
01/10/20 07:57 AM
9.4.0.6
2MB
Baertram
12/13/19 01:55 PM
9.4.0.5
2MB
Baertram
12/11/19 03:42 AM
9.4.0.4
2MB
Baertram
12/06/19 06:40 PM
9.4.0.2
2MB
Baertram
12/02/19 01:14 PM
9.4.0.1
2MB
Baertram
12/01/19 09:07 PM
9.4.0.0
2MB
Baertram
12/01/19 11:18 AM
9.3.11.25
2MB
DesertDwellers
10/20/18 09:32 AM
9.3.10.24
2MB
DesertDwellers
09/02/18 03:51 PM
9.3.9.24
2MB
DesertDwellers
08/29/18 12:53 PM
9.3.8.24
2MB
DesertDwellers
08/28/18 12:01 PM
9.3.7.24
2MB
DesertDwellers
08/09/18 09:18 AM
9.3.6.24
2MB
DesertDwellers
08/04/18 05:00 PM
9.3.5.24
2MB
DesertDwellers
08/04/18 07:23 AM
9.3.4.23
2MB
DesertDwellers
06/16/18 08:46 AM
9.3.3.23
2MB
DesertDwellers
06/01/18 09:51 PM
9.3.2.23
2MB
DesertDwellers
06/01/18 07:01 PM
9.3.1.23
2MB
DesertDwellers
06/01/18 02:40 PM
9.3.0.23
2MB
DesertDwellers
05/28/18 12:39 PM
9.3.0.23
2MB
DesertDwellers
05/22/18 06:32 PM
9.1.23
2MB
DesertDwellers
05/20/18 12:21 PM
9.0.23
2MB
DesertDwellers
05/20/18 10:35 AM
9
2MB
Ayantir
10/14/17 12:12 PM
8.2
2MB
Ayantir
10/17/16 06:17 PM
8.1
2MB
Ayantir
10/08/16 12:58 AM
8
2MB
Ayantir
10/07/16 08:35 PM
7.6
2MB
Ayantir
08/18/16 01:41 AM
7.5
2MB
Ayantir
08/17/16 08:28 PM
7.4
2MB
Ayantir
08/17/16 07:42 PM
7.3
2MB
Ayantir
08/17/16 07:24 PM
7.2
2MB
Ayantir
08/08/16 09:32 PM
7.1
2MB
Ayantir
08/08/16 09:13 PM
7
2MB
Ayantir
08/06/16 10:31 PM
6.2
2MB
Ayantir
07/05/16 03:37 PM
6.1
2MB
Ayantir
07/04/16 04:14 PM
6
2MB
Ayantir
07/04/16 02:16 PM
5
2MB
Ayantir
06/02/16 09:41 PM
4.1a
2MB
Ayantir
04/11/16 10:32 AM
4.1
2MB
Ayantir
04/11/16 10:30 AM
4
2MB
Ayantir
03/07/16 12:05 AM
3.1
2MB
Ayantir
11/07/15 11:55 AM
3
2MB
Ayantir
11/03/15 07:48 AM
2
2MB
Ayantir
08/31/15 04:34 PM
2.6.1
2MB
Ayantir
06/16/15 07:22 PM
2.6
2MB
Ayantir
06/09/15 08:58 AM
2.5.1
2MB
Ayantir
05/24/15 07:33 PM
2.5
2MB
Ayantir
05/20/15 12:34 PM
2.4.3
2MB
Ayantir
04/28/15 06:33 AM
2.4.2
2MB
Ayantir
04/22/15 02:10 AM
2.4.1
2MB
Ayantir
04/21/15 03:59 AM
2.4
2MB
Ayantir
04/20/15 07:23 AM
2.3b
2MB
Ayantir
03/31/15 04:24 PM
2.3a
2MB
Ayantir
03/25/15 06:59 PM
2.3
2MB
Ayantir
03/25/15 11:30 AM
2.2a
2MB
Ayantir
03/15/15 02:05 PM
2.2
2MB
Ayantir
03/13/15 11:29 AM
2.1
2MB
Ayantir
03/12/15 09:29 AM
2
79kB
Ayantir
03/03/15 04:49 AM
1.18
70kB
Ayantir
01/15/15 08:02 PM
1.17
65kB
Ayantir
01/04/15 04:28 PM
1.16
61kB
Ayantir
01/02/15 04:44 PM
1.15
60kB
Ayantir
12/27/14 02:17 PM
1.14
59kB
Ayantir
11/12/14 09:23 PM
1.13.1
60kB
Ayantir
11/05/14 11:35 AM
1.13
60kB
Ayantir
11/05/14 08:42 AM
1.12
61kB
Ayantir
09/23/14 04:28 PM
1.11
63kB
Ayantir
09/16/14 10:12 AM
1.10.2
59kB
Ayantir
09/11/14 05:01 PM
1.10.1
58kB
Ayantir
09/10/14 10:40 AM
1.10
57kB
Ayantir
09/09/14 05:14 PM
1.9.1
44kB
Ayantir
08/12/14 04:45 PM
1.9
43kB
Ayantir
08/11/14 04:14 PM
1.8.1
41kB
Ayantir
08/07/14 11:31 AM
1.8
41kB
Ayantir
08/07/14 09:41 AM
1.7
38kB
Ayantir
07/29/14 12:16 PM
1.6
38kB
Ayantir
07/27/14 07:58 PM
1.5.1
16kB
Puddy
05/22/14 11:31 PM
1.5.0
16kB
Puddy
05/11/14 12:39 AM
1.4.4
16kB
Puddy
05/10/14 03:48 AM
1.4.3
16kB
Puddy
05/08/14 04:57 AM
1.4.2
16kB
Puddy
05/06/14 07:59 PM
1.4.1
16kB
Puddy
04/14/14 07:38 PM
1.4.0
15kB
Puddy
04/12/14 04:32 AM
1.3.0
14kB
Puddy
04/09/14 11:21 PM
1.1.1
11kB
Puddy
04/09/14 06:55 AM
1.1.1
11kB
Puddy
04/07/14 12:54 AM
1.1.0
11kB
Puddy
04/06/14 06:55 PM
1.0.2
10kB
Puddy
04/03/14 11:35 PM
1.0.1
10kB
Puddy
04/02/14 09:52 PM
1.0.0
10kB
Puddy
04/02/14 06:53 PM
1.0.0
9kB
Puddy
04/02/14 05:42 PM


Post A Reply Comment Options
Unread 12/06/19, 07:35 PM  
wizzard2k

Forum posts: 0
File comments: 75
Uploads: 0
Re: Re: libMainMenu is lowercase L

Originally Posted by Baertram
Sorry but that makes no sense. libMainMenu is not a global variable and does not exist within pChat!
It only exists within LibMainMenu and it's not the global you need to use.
It's LibMainMenu with capital L.

If you get the error message read the bugfixes and problems with other addons above in the sticky post (I cannot write it more often and bigger, you simply need to read it )

What I'm referring to is the text following to this text (above in the FIRST comment):
!READ THIS FIRST PLEASE, BEFORE SENDING NEW BUGs!

It's most likely a problem of any of the other addons using an outdated LibMainMenu which you need to remove from them!
Simply delete the subfolder lib or libs/LibMainMenu and add ## DependsOn: LibMainMenu to their addon's txt files (e.g. PVPMeter.txt).

Originally Posted by wizzard2k
had
Code:
user:/AddOns/pChat/pChat.lua:1270: function expected instead of nil
stack traceback:
user:/AddOns/pChat/pChat.lua:1270: in function 'InitAutomatedMessages'
user:/AddOns/pChat/pChat.lua:6486: in function 'OnAddonLoaded'
|caaaaaa<Locals> _ = 65536, addonName = "pChat" </Locals>|r
so I changed line 28 from
Code:
LMM = LibMainMenu
to
Code:
LMM = libMainMenu
Ok, so my error I guess was in 9.4.0.3 because Minion just popped up another available update, and no errors in 9.4.0.4!
Report comment to moderator  
Reply With Quote
Unread 12/06/19, 08:37 PM  
Baertram
Super Moderator
 
Baertram's Avatar
ESOUI Super Moderator
AddOn Author - Click to view AddOns

Forum posts: 4971
File comments: 6038
Uploads: 78
Re: Re: Re: libMainMenu is lowercase L

Originally Posted by wizzard2k
Originally Posted by Baertram
Sorry but that makes no sense. libMainMenu is not a global variable and does not exist within pChat!
It only exists within LibMainMenu and it's not the global you need to use.
It's LibMainMenu with capital L.

If you get the error message read the bugfixes and problems with other addons above in the sticky post (I cannot write it more often and bigger, you simply need to read it )

What I'm referring to is the text following to this text (above in the FIRST comment):
!READ THIS FIRST PLEASE, BEFORE SENDING NEW BUGs!

It's most likely a problem of any of the other addons using an outdated LibMainMenu which you need to remove from them!
Simply delete the subfolder lib or libs/LibMainMenu and add ## DependsOn: LibMainMenu to their addon's txt files (e.g. PVPMeter.txt).

Originally Posted by wizzard2k
had
Code:
user:/AddOns/pChat/pChat.lua:1270: function expected instead of nil
stack traceback:
user:/AddOns/pChat/pChat.lua:1270: in function 'InitAutomatedMessages'
user:/AddOns/pChat/pChat.lua:6486: in function 'OnAddonLoaded'
|caaaaaa<Locals> _ = 65536, addonName = "pChat" </Locals>|r
so I changed line 28 from
Code:
LMM = LibMainMenu
to
Code:
LMM = libMainMenu
Ok, so my error I guess was in 9.4.0.3 because Minion just popped up another available update, and no errors in 9.4.0.4!
No, It's NOT pChat's error! Your error was in 9.4.0.3 because of what I have written in my psot before. I'm repeating it again, last time now
YOU MUST check which other incompatible addons YOU GOT active and fix them. Read the sticky 1st comment above, completely, and follow the instructions (especially about other incompatible addons), please.
Shouldn't be too hard to understand and follow, now that I have mentioned and described it 3 times

9.4.0.4 will just suppress the error message, but the cause is still there making the /msg chat command of pChat (and maybe others) not work properly anymore!
Last edited by Baertram : 12/06/19 at 08:40 PM.
Report comment to moderator  
Reply With Quote
Unread 12/06/19, 09:14 PM  
wizzard2k

Forum posts: 0
File comments: 75
Uploads: 0
Re: Re: Re: Re: libMainMenu is lowercase L

Originally Posted by Baertram
Originally Posted by wizzard2k
Originally Posted by Baertram
Sorry but that makes no sense. libMainMenu is not a global variable and does not exist within pChat!
It only exists within LibMainMenu and it's not the global you need to use.
It's LibMainMenu with capital L.

If you get the error message read the bugfixes and problems with other addons above in the sticky post (I cannot write it more often and bigger, you simply need to read it )

What I'm referring to is the text following to this text (above in the FIRST comment):
!READ THIS FIRST PLEASE, BEFORE SENDING NEW BUGs!

It's most likely a problem of any of the other addons using an outdated LibMainMenu which you need to remove from them!
Simply delete the subfolder lib or libs/LibMainMenu and add ## DependsOn: LibMainMenu to their addon's txt files (e.g. PVPMeter.txt).

Originally Posted by wizzard2k
had
Code:
user:/AddOns/pChat/pChat.lua:1270: function expected instead of nil
stack traceback:
user:/AddOns/pChat/pChat.lua:1270: in function 'InitAutomatedMessages'
user:/AddOns/pChat/pChat.lua:6486: in function 'OnAddonLoaded'
|caaaaaa<Locals> _ = 65536, addonName = "pChat" </Locals>|r
so I changed line 28 from
Code:
LMM = LibMainMenu
to
Code:
LMM = libMainMenu
Ok, so my error I guess was in 9.4.0.3 because Minion just popped up another available update, and no errors in 9.4.0.4!
No, It's NOT pChat's error! Your error was in 9.4.0.3 because of what I have written in my psot before. I'm repeating it again, last time now
YOU MUST check which other incompatible addons YOU GOT active and fix them. Read the sticky 1st comment above, completely, and follow the instructions (especially about other incompatible addons), please.
Shouldn't be too hard to understand and follow, now that I have mentioned and described it 3 times

9.4.0.4 will just suppress the error message, but the cause is still there making the /msg chat command of pChat (and maybe others) not work properly anymore!
Didn't see it because it was inside the harvestmap/modules/harvestmap/libs subfolder, not the basic harvestmap/libs
Its tough when its your addon that's throwing the error but it was another addons fault that ISN'T erroring... thanks for your patience
Report comment to moderator  
Reply With Quote
Unread 12/07/19, 04:30 AM  
iFedix
 
iFedix's Avatar
AddOn Author - Click to view AddOns

Forum posts: 11
File comments: 241
Uploads: 1
Any idea why I receive debug messages before messages arrive to me? Example:
[pChat]FormatMessage-chanCode: 2, from: Icekiller^Fx, text: THX ^^
Report comment to moderator  
Reply With Quote
Unread 12/07/19, 04:59 AM  
Kyoma
AddOn Author - Click to view AddOns

Forum posts: 125
File comments: 328
Uploads: 10
Originally Posted by iFedix
Any idea why I receive debug messages before messages arrive to me? Example:
[pChat]FormatMessage-chanCode: 2, from: Icekiller^Fx, text: THX ^^
It isn't coming just from pChat, do you have other chat-related addons and/or chat libraries?
Report comment to moderator  
Reply With Quote
Unread 12/07/19, 05:50 AM  
iFedix
 
iFedix's Avatar
AddOn Author - Click to view AddOns

Forum posts: 11
File comments: 241
Uploads: 1
Originally Posted by Kyoma
Originally Posted by iFedix
Any idea why I receive debug messages before messages arrive to me? Example:
[pChat]FormatMessage-chanCode: 2, from: Icekiller^Fx, text: THX ^^
It isn't coming just from pChat, do you have other chat-related addons and/or chat libraries?
I have no other chat-related addons... The only lib related to chat that I have may be LibChatMessage from Postmaster addon
Report comment to moderator  
Reply With Quote
Unread 12/07/19, 08:08 AM  
mlq88
 
mlq88's Avatar

Forum posts: 0
File comments: 98
Uploads: 0
Originally Posted by iFedix
Any idea why I receive debug messages before messages arrive to me? Example:
[pChat]FormatMessage-chanCode: 2, from: Icekiller^Fx, text: THX ^^
I have the same issue now
Report comment to moderator  
Reply With Quote
Unread 12/07/19, 11:31 AM  
ariloum

Forum posts: 2
File comments: 20
Uploads: 0
Question Re: Re: Re: Re: Some bugs?

Thanx for adding solution for Superstar.

Originally Posted by Baertram
I know what you mean but there won't be any solution except fixing the incompatiblities
Acutally there is solution exits for ages in many different languages and it calls library versioning.
So each library has version in it's name and some lib including references so you can have at same time any amount different versions of the same library and each addon can use any version it designed with.
Correct me if I wrong but in case of ESO all u need is to add versions to library folder names so it looks like: LibMenu-1.09.12, AnyLib-x.xx.xx.
The only question - why library developers can't use that approach?

Originally Posted by Baertram
Thanks for the info.
Will add it to the sticky post under a new category "Incompatible adons".

I guess the reason is that Superstar is abandoned since years now and there was no real update in the last months.
The same with many other addons. AND the real reason libraries exist is to reuse the same code properly. If you'd rename them there would be no need for a library anymore, you could simply include all code locally in your addons then, what makes maintenance a real hell.
I know what you mean but there won't be any solution except fixing the incompatiblities or fix old addons using embedded old libraries, or disable old addons and use replacements which are compatible already (check these addons comments to find fixes or other addons e.g.).

Originally Posted by ariloum
Yeah, thanx. I found that it was superstar who overrides some pchat libs.

Why don't some often bugged (by library hell) addons authors not including needed libraries versions with renaming their names so they won't conflict any other addons and feels like standalone containers like it was old age?
I know the reason ppl started to do libraries in eso is to have easier inheritance but it goes some wrong way. Now if you have 100+ addons it's impossible to find what's wrong and fix that fast. Real libraries hell we are expecting there..
Report comment to moderator  
Reply With Quote
Unread 12/07/19, 03:06 PM  
Baertram
Super Moderator
 
Baertram's Avatar
ESOUI Super Moderator
AddOn Author - Click to view AddOns

Forum posts: 4971
File comments: 6038
Uploads: 78
Re: Re: Re: Re: Re: Some bugs?

Well we do via LibStub in former times and now via libraries txt file tag AddOnVersion. But if you include the libraries hard-coded in old versions which will be loaded ALWAYS by the main addons txt file, and not only by the inGame addon manager once with the newest version, the errors happen.
This happens now as many libs were hard-coded and directly shipped in the past, as there did not exist a proper versioning possibility within eso, or because it was user friendly to include the libs. They should have always got their own txt files but they hadn't.
And this is the compatibility problem now!

So 3ekove libs from subfoldersnof addons (like lib/libs) if they can be downloaded new with their own txt files, and just load them standalone will fix most issues. If an addons txt file tries to load some line like /lib/mylib/mylibmlua and it does jot exist it will silently fail. Only problem is the addon needs to know it depends/optionally depends on these libs and that is why there should be a tag in the addon's txt file telling it so.


Originally Posted by ariloum
Thanx for adding solution for Superstar.

Originally Posted by Baertram
I know what you mean but there won't be any solution except fixing the incompatiblities
Acutally there is solution exits for ages in many different languages and it calls library versioning.
So each library has version in it's name and some lib including references so you can have at same time any amount different versions of the same library and each addon can use any version it designed with.
Correct me if I wrong but in case of ESO all u need is to add versions to library folder names so it looks like: LibMenu-1.09.12, AnyLib-x.xx.xx.
The only question - why library developers can't use that approach?

Originally Posted by Baertram
Thanks for the info.
Will add it to the sticky post under a new category "Incompatible adons".

I guess the reason is that Superstar is abandoned since years now and there was no real update in the last months.
The same with many other addons. AND the real reason libraries exist is to reuse the same code properly. If you'd rename them there would be no need for a library anymore, you could simply include all code locally in your addons then, what makes maintenance a real hell.
I know what you mean but there won't be any solution except fixing the incompatiblities or fix old addons using embedded old libraries, or disable old addons and use replacements which are compatible already (check these addons comments to find fixes or other addons e.g.).

Originally Posted by ariloum
Yeah, thanx. I found that it was superstar who overrides some pchat libs.

Why don't some often bugged (by library hell) addons authors not including needed libraries versions with renaming their names so they won't conflict any other addons and feels like standalone containers like it was old age?
I know the reason ppl started to do libraries in eso is to have easier inheritance but it goes some wrong way. Now if you have 100+ addons it's impossible to find what's wrong and fix that fast. Real libraries hell we are expecting there..
Report comment to moderator  
Reply With Quote
Unread 12/07/19, 03:08 PM  
Baertram
Super Moderator
 
Baertram's Avatar
ESOUI Super Moderator
AddOn Author - Click to view AddOns

Forum posts: 4971
File comments: 6038
Uploads: 78
Forgot to remove a debug message in pChat.lua file, function Format Message.
You can search for it and remove the d(".... line or wait until I find time to remove it.

Originally Posted by mlq88
Originally Posted by iFedix
Any idea why I receive debug messages before messages arrive to me? Example:
[pChat]FormatMessage-chanCode: 2, from: Icekiller^Fx, text: THX ^^
I have the same issue now
Report comment to moderator  
Reply With Quote
Unread 12/08/19, 05:49 AM  
ariloum

Forum posts: 2
File comments: 20
Uploads: 0
Re: Re: Re: Re: Re: Re: Some bugs?

Originally Posted by Baertram
as there did not exist a proper versioning possibility within eso
Wrong, look at this library:
https://www.esoui.com/downloads/info563-LibMapPins.html
It has name LibMapPins-1.0, same folder name (NOT like LibMapPins, but LibMapPins-1.0), and all hardlinks linked to that library will be fine (because they will not cross with future addon's released versions lile LibMapPins-1.4) and addons who uses this approach will work until library works while zos not make some incompatible changes to API.

So, the only reason we have library hell here is developers who goes wrong way naming their libraries, their libraries folder names etc. without PROPER versioning.

This way you can have unlimited amount of same library versions loaded in game for any addons needs, and they all will be fine.

Originally Posted by Baertram
Well we do via LibStub in former times and now via libraries txt file tag AddOnVersion. But if you include the libraries hard-coded in old versions which will be loaded ALWAYS by the main addons txt file, and not only by the inGame addon manager once with the newest version, the errors happen.
This happens now as many libs were hard-coded and directly shipped in the past, as there did not exist a proper versioning possibility within eso, or because it was user friendly to include the libs. They should have always got their own txt files but they hadn't.
And this is the compatibility problem now!

So 3ekove libs from subfoldersnof addons (like lib/libs) if they can be downloaded new with their own txt files, and just load them standalone will fix most issues. If an addons txt file tries to load some line like /lib/mylib/mylibmlua and it does jot exist it will silently fail. Only problem is the addon needs to know it depends/optionally depends on these libs and that is why there should be a tag in the addon's txt file telling it so.


Originally Posted by ariloum
Thanx for adding solution for Superstar.

Originally Posted by Baertram
I know what you mean but there won't be any solution except fixing the incompatiblities
Acutally there is solution exits for ages in many different languages and it calls library versioning.
So each library has version in it's name and some lib including references so you can have at same time any amount different versions of the same library and each addon can use any version it designed with.
Correct me if I wrong but in case of ESO all u need is to add versions to library folder names so it looks like: LibMenu-1.09.12, AnyLib-x.xx.xx.
The only question - why library developers can't use that approach?

Originally Posted by Baertram
Thanks for the info.
Will add it to the sticky post under a new category "Incompatible adons".

I guess the reason is that Superstar is abandoned since years now and there was no real update in the last months.
The same with many other addons. AND the real reason libraries exist is to reuse the same code properly. If you'd rename them there would be no need for a library anymore, you could simply include all code locally in your addons then, what makes maintenance a real hell.
I know what you mean but there won't be any solution except fixing the incompatiblities or fix old addons using embedded old libraries, or disable old addons and use replacements which are compatible already (check these addons comments to find fixes or other addons e.g.).

Originally Posted by ariloum
Yeah, thanx. I found that it was superstar who overrides some pchat libs.

Why don't some often bugged (by library hell) addons authors not including needed libraries versions with renaming their names so they won't conflict any other addons and feels like standalone containers like it was old age?
I know the reason ppl started to do libraries in eso is to have easier inheritance but it goes some wrong way. Now if you have 100+ addons it's impossible to find what's wrong and fix that fast. Real libraries hell we are expecting there..
Last edited by ariloum : 12/08/19 at 06:14 AM.
Report comment to moderator  
Reply With Quote
Unread 12/08/19, 06:56 AM  
Baertram
Super Moderator
 
Baertram's Avatar
ESOUI Super Moderator
AddOn Author - Click to view AddOns

Forum posts: 4971
File comments: 6038
Uploads: 78
Re: Re: Re: Re: Re: Re: Re: Some bugs?


LibMainMenu, folder LibMainMenu.
LibMainMenu-2.0, folder LibMainMenu-2.0

What is the difference if one would use 1.0 or not here for e.g. LibMainMenu? There clearly is a difference in the naming of without version and 2.0.
And it even is not the same lib! Adding a versioning 1.0 to LibMainMenu would tell the users it's the same lib which is simply wrong.

And there never is a change in the folder or addon filename for the same library! Why should one even version the name of the folders? It wouldn't change anything if the internal variables used for the same library of different versions would stay the same (e.g. LibMapPins or LibMainMenu).With even LibStub used the variables internally in the code make the difference!
And if this is coded wrong and kills addons if e..g loaded twice, it wil break addons nevertheless if loaded via a versioned folder name 1.0, no version name or 2.0 etc.!


So I don't get what your point is here related to Pchat libraries?
Or do you speak generally about libraries? Wrong place then, use the forum to reach all devs and explain what should be changed why and keep in mind that if you always load libraries hard-coded from a txt file it will Not use ESOs versioning system via AddOnVersion tag but it forced to load Always. If you do not use proper code to detect multiple load of different versions (LibStub e. G.) you run into trouble, no matter what your folder or filename looks like!

Originally Posted by ariloum
Originally Posted by Baertram
as there did not exist a proper versioning possibility within eso
Wrong, look at this library:
https://www.esoui.com/downloads/info563-LibMapPins.html
It has name LibMapPins-1.0, same folder name (NOT like LibMapPins, but LibMapPins-1.0), and all hardlinks linked to that library will be fine (because they will not cross with future addon's released versions lile LibMapPins-1.4) and addons who uses this approach will work until library works while zos not make some incompatible changes to API.

So, the only reason we have library hell here is developers who goes wrong way naming their libraries, their libraries folder names etc. without PROPER versioning.

This way you can have unlimited amount of same library versions loaded in game for any addons needs, and they all will be fine.

Originally Posted by Baertram
Well we do via LibStub in former times and now via libraries txt file tag AddOnVersion. But if you include the libraries hard-coded in old versions which will be loaded ALWAYS by the main addons txt file, and not only by the inGame addon manager once with the newest version, the errors happen.
This happens now as many libs were hard-coded and directly shipped in the past, as there did not exist a proper versioning possibility within eso, or because it was user friendly to include the libs. They should have always got their own txt files but they hadn't.
And this is the compatibility problem now!

So 3ekove libs from subfoldersnof addons (like lib/libs) if they can be downloaded new with their own txt files, and just load them standalone will fix most issues. If an addons txt file tries to load some line like /lib/mylib/mylibmlua and it does jot exist it will silently fail. Only problem is the addon needs to know it depends/optionally depends on these libs and that is why there should be a tag in the addon's txt file telling it so.


Originally Posted by ariloum
Thanx for adding solution for Superstar.

Originally Posted by Baertram
I know what you mean but there won't be any solution except fixing the incompatiblities
Acutally there is solution exits for ages in many different languages and it calls library versioning.
So each library has version in it's name and some lib including references so you can have at same time any amount different versions of the same library and each addon can use any version it designed with.
Correct me if I wrong but in case of ESO all u need is to add versions to library folder names so it looks like: LibMenu-1.09.12, AnyLib-x.xx.xx.
The only question - why library developers can't use that approach?

Originally Posted by Baertram
Thanks for the info.
Will add it to the sticky post under a new category "Incompatible adons".

I guess the reason is that Superstar is abandoned since years now and there was no real update in the last months.
The same with many other addons. AND the real reason libraries exist is to reuse the same code properly. If you'd rename them there would be no need for a library anymore, you could simply include all code locally in your addons then, what makes maintenance a real hell.
I know what you mean but there won't be any solution except fixing the incompatiblities or fix old addons using embedded old libraries, or disable old addons and use replacements which are compatible already (check these addons comments to find fixes or other addons e.g.).

Originally Posted by ariloum
Yeah, thanx. I found that it was superstar who overrides some pchat libs.

Why don't some often bugged (by library hell) addons authors not including needed libraries versions with renaming their names so they won't conflict any other addons and feels like standalone containers like it was old age?
I know the reason ppl started to do libraries in eso is to have easier inheritance but it goes some wrong way. Now if you have 100+ addons it's impossible to find what's wrong and fix that fast. Real libraries hell we are expecting there..
Last edited by Baertram : 12/08/19 at 07:04 AM.
Report comment to moderator  
Reply With Quote
Unread 12/08/19, 09:01 AM  
ariloum

Forum posts: 2
File comments: 20
Uploads: 0
Re: Re: Re: Re: Re: Re: Re: Re: Some bugs?

Originally Posted by Baertram

LibMainMenu, folder LibMainMenu.
LibMainMenu-2.0, folder LibMainMenu-2.0

What is the difference if one would use 1.0 or not here for e.g. LibMainMenu? There clearly is a difference in the naming of without version and 2.0.
And it even is not the same lib! Adding a versioning 1.0 to LibMainMenu would tell the users it's the same lib which is simply wrong.
Sorry for confusing, I'm talking globally ofc.
The only way to get out of library hell is there must not libraries without versions in names/folder names exists.
If it's not same library it must have different name, isn't it?

There is RFC standards for versioning https://semver.org/

For example, in java world it's usual practice to have all libraries versions included in files/folders names.
so the lib might looks like samplelib-3.24.15.jar. It's even fully automated with special builders. So you can import it to your project with link including proper version you need.

Originally Posted by Baertram
Why should one even version the name of the folders? It wouldn't change anything if the internal variables used for the same library of different versions would stay the same
Because this way you can load into your addon proper library with linking it's folder name.
Idk for sure how did sharing variables works inside addons for used libraries (since I'm enterprise java backend dev, not have too much knowledge in lua and the ways it's used to be in eso .
Maybe in case of eso your libraries global variables must contains versions aswell to keep versioning up.

For pChat libraries - if it's author is you, then you should find the way to make it unconflictable with other addons due to libraries hell with methods used to maintain such situations like I described above.

Originally Posted by Baertram

LibMainMenu, folder LibMainMenu.
LibMainMenu-2.0, folder LibMainMenu-2.0

What is the difference if one would use 1.0 or not here for e.g. LibMainMenu? There clearly is a difference in the naming of without version and 2.0.
And it even is not the same lib! Adding a versioning 1.0 to LibMainMenu would tell the users it's the same lib which is simply wrong.

And there never is a change in the folder or addon filename for the same library! Why should one even version the name of the folders? It wouldn't change anything if the internal variables used for the same library of different versions would stay the same (e.g. LibMapPins or LibMainMenu).With even LibStub used the variables internally in the code make the difference!
And if this is coded wrong and kills addons if e..g loaded twice, it wil break addons nevertheless if loaded via a versioned folder name 1.0, no version name or 2.0 etc.!


So I don't get what your point is here related to Pchat libraries?
Or do you speak generally about libraries? Wrong place then, use the forum to reach all devs and explain what should be changed why and keep in mind that if you always load libraries hard-coded from a txt file it will Not use ESOs versioning system via AddOnVersion tag but it forced to load Always. If you do not use proper code to detect multiple load of different versions (LibStub e. G.) you run into trouble, no matter what your folder or filename looks like!

Originally Posted by ariloum
Originally Posted by Baertram
as there did not exist a proper versioning possibility within eso
Wrong, look at this library:
https://www.esoui.com/downloads/info563-LibMapPins.html
It has name LibMapPins-1.0, same folder name (NOT like LibMapPins, but LibMapPins-1.0), and all hardlinks linked to that library will be fine (because they will not cross with future addon's released versions lile LibMapPins-1.4) and addons who uses this approach will work until library works while zos not make some incompatible changes to API.

So, the only reason we have library hell here is developers who goes wrong way naming their libraries, their libraries folder names etc. without PROPER versioning.

This way you can have unlimited amount of same library versions loaded in game for any addons needs, and they all will be fine.

Originally Posted by Baertram
Well we do via LibStub in former times and now via libraries txt file tag AddOnVersion. But if you include the libraries hard-coded in old versions which will be loaded ALWAYS by the main addons txt file, and not only by the inGame addon manager once with the newest version, the errors happen.
This happens now as many libs were hard-coded and directly shipped in the past, as there did not exist a proper versioning possibility within eso, or because it was user friendly to include the libs. They should have always got their own txt files but they hadn't.
And this is the compatibility problem now!

So 3ekove libs from subfoldersnof addons (like lib/libs) if they can be downloaded new with their own txt files, and just load them standalone will fix most issues. If an addons txt file tries to load some line like /lib/mylib/mylibmlua and it does jot exist it will silently fail. Only problem is the addon needs to know it depends/optionally depends on these libs and that is why there should be a tag in the addon's txt file telling it so.


Originally Posted by ariloum
Thanx for adding solution for Superstar.

Originally Posted by Baertram
I know what you mean but there won't be any solution except fixing the incompatiblities
Acutally there is solution exits for ages in many different languages and it calls library versioning.
So each library has version in it's name and some lib including references so you can have at same time any amount different versions of the same library and each addon can use any version it designed with.
Correct me if I wrong but in case of ESO all u need is to add versions to library folder names so it looks like: LibMenu-1.09.12, AnyLib-x.xx.xx.
The only question - why library developers can't use that approach?

Originally Posted by Baertram
Thanks for the info.
Will add it to the sticky post under a new category "Incompatible adons".

I guess the reason is that Superstar is abandoned since years now and there was no real update in the last months.
The same with many other addons. AND the real reason libraries exist is to reuse the same code properly. If you'd rename them there would be no need for a library anymore, you could simply include all code locally in your addons then, what makes maintenance a real hell.
I know what you mean but there won't be any solution except fixing the incompatiblities or fix old addons using embedded old libraries, or disable old addons and use replacements which are compatible already (check these addons comments to find fixes or other addons e.g.).

Originally Posted by ariloum
Yeah, thanx. I found that it was superstar who overrides some pchat libs.

Why don't some often bugged (by library hell) addons authors not including needed libraries versions with renaming their names so they won't conflict any other addons and feels like standalone containers like it was old age?
I know the reason ppl started to do libraries in eso is to have easier inheritance but it goes some wrong way. Now if you have 100+ addons it's impossible to find what's wrong and fix that fast. Real libraries hell we are expecting there..
Report comment to moderator  
Reply With Quote
Unread 12/08/19, 09:39 AM  
Baertram
Super Moderator
 
Baertram's Avatar
ESOUI Super Moderator
AddOn Author - Click to view AddOns

Forum posts: 4971
File comments: 6038
Uploads: 78
Re: Re: Re: Re: Re: Re: Re: Re: Re: Some bugs?

Okay got you.

ESO and lua, libraries/Addons and versioning explained
-ESO manifest txt file of addons/libraries-
-Additional information about libraries within ESO lua-

But lua and librraies are quite different than within other real coding languages. lua is a script language and ESO is a special case as well. The libraries (which basically are addons) are
loaded via their txt file (called manifest).

You can load them directly from the txt file as hardcoded lines:
Code:
libs/myLib1/myLib1.lua
Or you add them as a dependency (optional: Addon will be loaded ingame even if dependency is missing / non optional: Addon wont't be loaded at all if a dependency is missing) in the addon's manifest txt file:
Code:
## OptionalDependsOn: OtherAddon1 OtherAddon2 myLib2
## DependsOn: myLib1
The libraries/addons name is defined by it's folder name within the eso addons folder, e.g. "c:/users/windows username/documents/elder scrolls online/live/myLib1" -> the libraries/addons name is "myLib1" (case sensitive!) and also needs a myLib1.txt file which is loaded by the vanilla UI addon manager ingame then.

This name is the same you specify within ## OptionalDependsOn or ## DependsOn and if the folder or txt is missing the dependency is marked as "missing".

So you can assure that it will load this folder by either adding it to dependencies, which imo is the best way for reusable library code!
Or you can hardcode the myLib1.lua call to your addon's txt file and add the library to your addon's subfolders e.g. libs/myLib1.

BUT if you hardcode the call and ship the bundled libray without it's own myLib1.txt file:
-other addons are not finding it properly and the dependency checks faile
-older versions you have shipped and never updated may break other adons as updated code (with bugfixes) gets overwritten by the old code from the old bundled and ALWAYS loaded files.


The differenc to java and other languags may be that ESO is calling the files and runs it code ALWAYS if you are NOT using one the following method to assure ONLY the NEWEST versioned file get's loaded:

1. In your addon's manifest txt specify the dependency
2. In your librarise folder got the myLib1.txt manifest file AND specify the ## AddOnVersion: <unsigned interger> tag to specify the version.
Only than the vanilla UI addon manager will recognize the versions properly and ONLY load the newest file found (comparing the integer version numbers).

In the past (before Summerset) this tag ## AddOnVersion did not exists so one has build a library LibStub to do the versioning checks.
Within the librarise lua files you define a unique name like myLib1 as mayjor and a version number as minor.
Both were compared if the libraries were loaded from different addons, subfolders and files, even without own txt file but hardcoded calls (which was pretty common in the beginings of eso until now, and was imo always wrong way to "ship libraries". They should be standalone and not bundled.
Only ne place to check and update if something is wrong! But for the sake of user friendlyness it was mostly bundled and shipped and most of the devs (as they were active) updated their addons in totla if any of the bundled libs were updated... A totla mess and time waste imo!).

So for now you can use LiBStub (which is obseolete in most cases and should be removed) or the
## AddOnVersion and ## IsLibrary: true tags in the own libraries's txt files to assure a library gets loaded, and only with the newest version.

You see that a change of the foldername would not help here as then it would be totally different addons/libraries and not only a version change! ESO wouldn't find them at all if you have specified
## OptionalDependsOn: myLib1 or DependsOn: myLib1 but the foldername is myLib1-r12 now and the txt file is still myLib1.txt e.g.

But you are right:
LibMainMenu and LibMainMenu -2.0 should have been named diffeerntly as they look the same but are totally different in the end

As I took maintenance of LibMainMenu I might rename it one day to assure the problems get lost here.
But the same problem remains: If addons like old SuperStar or PVPMeter call LibMainMenu with version 5 maybe from internal hardcoded Superstar.txt or PVPMeter.txt and pChat uses new LibMainMenu v8 loaded via it's own LibMainMenu.txt files properly + added as pChat.txt ## DependsOn: LibMainMenu:
You always have the problöem that both files will be loaded if:
1. LibMainMenu v8 was installed as standalone or somewhere shipped as bundled library in a subfolder of an addon, but got it's own LibMainMenu .txt file and it'S code get's run
2. LibMainMenu .lua was loaded from hardcoded SuperStar.txt/PVPMeter.txt and it's code get's run.

Both files use LibStub if installed to assure only the newest version get's loaded in total.
But there is a code bug in version 5 of LibMainMenu which will also overwrite the global variable LibMainMenu even if LibStub found a newer version active. Or at least there is some bug which makes the LibMainMenu vglobal variable empty, or missing needed functions in the end of both (v5 or olrder and v8 versions) are loaded.
And I'm not able to fix this.

I guess I need to rename and rethink LibMainMenu's name and code and let pChat use the new library then, strip old LibMainMenu in total.

Originally Posted by ariloum
Sorry for confusing, I'm talking globally ofc.
The only way to get out of library hell is there must not libraries without versions in names/folder names exists.
If it's not same library it must have different name, isn't it?

There is RFC standards for versioning https://semver.org/

For example, in java world it's usual practice to have all libraries versions included in files/folders names.
so the lib might looks like samplelib-3.24.15.jar. It's even fully automated with special builders. So you can import it to your project with link including proper version you need.

For pChat libraries - if it's author is you, then you should find the way to make it unconflictable with other addons due to libraries hell with methods used to maintain such situations like I described above.
Last edited by Baertram : 12/08/19 at 09:47 AM.
Report comment to moderator  
Reply With Quote
Unread 12/08/19, 10:52 AM  
SammiSakura
 
SammiSakura's Avatar

Forum posts: 0
File comments: 106
Uploads: 0
Currently getting this error:

[4:48pm] [pChat] The following library is missing and needs to be installed & enabled: 'LibMainMenu' ->Check: pChat - pChat_ShowAutoMsg

which is preventing me from opening the automated messages window. Really confused as the lib is definitely installed and active? O.o
Report comment to moderator  
Reply With Quote
Post A Reply



Category Jump:

Support AddOn Development!

You have just downloaded by the author . If you like this AddOn why not consider supporting the author? This author has set up a donation account. Donations ensure that authors can continue to develop useful tools for everyone.