RChat - Chat Replacement Add-On For Windower

Langues: JP EN DE FR
users online
Forum » Windower » General » rChat - Chat Replacement Add-On for Windower
rChat - Chat Replacement Add-On for Windower
First Page 2
 Asura.Erupt
Offline
Serveur: Asura
Game: FFXI
user: erupt
Posts: 68
By Asura.Erupt 2020-06-26 21:55:29
Link | Citer | R
 
rChat - Windower Chat Replacement Add-On

This was originally written as just a text box replacement for tells and checking thechatlog without using sandbox if your multiboxing. After coding a majority of it I expanded to a bigger chat system replacement. Still a work in progress making style patterns for the text.

https://github.com/erupt321/ruptchat

__01.25.21__
Made auto undocked window hiding. This will allow the secondary tab to auto disappear when there's been no activity for 30 seconds. So for battle log if nothing has happened it will autohide, it'll reappear as soon as a log entry shows up.

__12.07.20__
I've been on a bit of a break from the game, but I've added support for the new Assist Channel, some
beta support for Rank #'s showing, but I do not have a mentor character to test fully atm. I've also
fixed some issues with the font calibrator. Namely if the system detects a font that is not support it
will default back to Arial font and re-calibrate again. There's alot of instances where players systems
just seem to not even support what is supposed to be a windows native font I have set. Windower's text
system does not actually detect if you give it a bad font and it will continue to set windows with any
font name you give it.

__09.01.20__
Small bug fix for Battle Flash mentions where the bg color change would also change other windows
bg color due to some issues with windowers text library.

__08.31.20__
Activated Bold/Italic settings if your font has a variant. Also made window format copying function to run after different window cosmetic options are run.

_08.21.20__
Added vanilla_mode option which turns off the styles portion of the addon and enables direct text from the vanilla client, still not 100% on all color codes for this mode. This option can be accessed from //rchat vanilla_mode or from the setup menu.
Did some rewrites on the save functions that was having issues with the recent inclusion of battle log to the saved file. Old table was not being wiped and was causing a error during the save if currently had a large unpurged battle log.

__08.20.20__
Added cacheing for font data now, Should only need on font calibration to populate everything. Fine tuning the wrapping functions some more, namely for breaking up words instead of wrapping to the next line.

__08.18.20__
Huge backend change to how fonts are handled and how width is handled in the addon.

First big thing is there is now a Font Calibrator built into the addon. What this does is load a new font and attempt to figure out if its a Monospace font or not and then detect how large the average letter is to more accurately map out click controls and word wrap functions.

With this change width settings have changed from Character based to Pixel based width settings. So if you had a 115 width prior your new width is probably going to be more like 700.

I've also tweeked some default settings for first time users, I've made both the strict* settings on by default as this is one of the most common questions I get about the addon. The default font has been changed to 'Lucida Sans Typewriter', this was only chosen because it's a default installed windows monospace font.

About monospace vs non. Monospaced fonts have exact width size per character which is the ideal type of font for this addon. If you notice your window moving even with strict on maybe a couple
pixels chances are you aren't using a monospace font. The font calibrator will tell you if your font is 100% monospaced during it's test. For non monospaced font I have put alot of work into
trying to make the addon accomodate for your font's shortcomings. There's a new option called enhancedwhitespace which is defaulted to on. If the addon detects you aren't using a monospace font
it'll try to use this alternative whitespace character to build the menu's. There is a chance some fonts don't actually have this character and will show up as blocky garbage in the menu. You can disable this using the rChat setup menu by right clicking [rChat] or //rchat enhancedwhitespace.

Hopefully this will new addition will help some new users that are scared about switching their
chat windows over.

__08.15.20__
Made a setup menu, if you right click on the [rChat] in the main menu a setup menu will open up, which you can then click on all the setup options to do either a quick setting change or just to view all your changes. Right clicking the [rChat] again will close the menu.

__08.14.20__
Rewrote the scrolling code and chat processor to be universally compatible with scrolling ability.
Now undocked tab can be scrolled just like the Main window and Drops window, and in the future adding
new scrollable windows will be much simplified.

__08.13.20__
Mostly backend cleaning up code and seperating the single file lua into seperate packages.

__08.11.20__
This is a big update as in I've rewritten alot of the backend on tab handling and made click maps fully dynamic. This all in preparation for one of the funner features I've been able to release.

Customizable Tabs.

You now have a tabs.lua file which includes all the tab settings for the addon. Within this file you can add and delete tabs, Rename them, change the ordering. You can also create new custom tabs which you can put custom chat id's you'd like them to receive.

One example:

You set ['All_Exclusions'] = {148,161}

This will now filter out chat id's 148, and 161 from the 'All' type tab. Which are instance queue messages and moogle/campaign messages.

Now we make a Custom Tab with this in your tabs.lua.
{name='Custom',ids={148, 161},tab_type='Normal'},

Now all queue messages and moogle messages will filter into that tab solely. The same can be done with battle chat types to record spell casts perhaps in their own tab.

You can combine Tell/LS1/LS2 into a single tab if you'd like. On initial reload when you've renamed tabs your tables will be empty. You can modify your chat log and rename old tables to your new ones if you want your history to resume.

If you'd like to figure out what chat id's are to what, I have very brief descriptions for quite a few of them in the styles.lua file. But just enable //rchat debug and you can see what id's go for what chat types to use in your custom settings.

__08.08.20__
Changed autotranslate phrases to show up with {}'s in the chatlog and be easier to see.
Added some more effects to Autotranslate bracers, colored them like they are in vanilla chat!

__08.07.20__
After some testing with the archive feature I have changed the way writes are performed to
not degrade performance under heavy logging situations like cleaving or alliance fights.
Archive textlines will buffer until the next scheduled log write. You can always force the log
to write by either reloading the addon or using //rchat save.
I also updated a style format that was causing Erase's to not display properly.
Added //rchat dropswindow toggle.
If splitdrops is active this will enable or disable the window from popping up unless you do abilities
//rchat showdrops to force it.
I also redid how the chat windows are updated to avoid the window processing 8 times a second
when chat packet comes in with multiple entries. Window should just process after last one to make
things smoother.

__08.06.20__
Reworked many of the battle filters, and some of the other filters that can glitch
out here and there with double spaces or reives Area names being misformated. Also
added a format for Zone in message, which means I added a color to the template for that
as well. I also added 2 more chat id's to the incoming_pause list, I haven't had anything
issues with these yet.

__08.05.20__
Added a echo color to the styles / template file.

__08.04.20__
Added Drop window in previous version, fixed some issues it caused with the find function.
Drop window is scrollable just like the main window.
use //rchat splitdrops to enable
Added Archive setting, this will make permanent archive files by CharacterName-Month.log.
Use //rchat archive to enable

Features

*Most usability is point and click.

*Window is draggable as well as clickable.

*All tabs are clickable, all text windows are mouse wheel scrollable. Holding down ALT and clicking a tab will open a second window for that tab's chat.

*Clicking the [ - ] in the upper right corner will minimize the text box and leave just the tab menu.

*New tells recieved while in a none "All"/"Tell" tab will provide a Notification.

*Search system for searching through current tab. Can click to search next until finished.

*Can save as much chat log lines as you'd like but anything over 5000 can lag during save.

*Mentions can be added that alert you when a word is mentioned in a tab.


Newest Features

*Added Color Templates to enable custom color profiles saved in between code updates.


Console Commands

//rchat save (Force a chatlog save)

//rchat find <search terms> (Search current selected tab for search terms

//rchat mentions (Shows mention phrases you have saved for tabs)

//rchat addmention <tab> <phrase> (Add mention phrase for tab)

//rchat delmention <tab> <phrase> (Remove mention phrase for tab)

//rchat hide (Hide's text box from showing)

//rchat show (Show hidden text box)

//rchat drag (Disable Draggable boxes; requested option)

//rchat alpha <0-255> (Change background transparency)

//rchat size <font size> (Change font size, this will increase whole window size)

//rchat font <font name> (Change font, some fonts that are grossly different sizes will affect clickables)

//rchat length <Log Length> (Change log length size)

//rchat dlength <Undocked Length> (Same as Log Length, if set to 0 will use Log_Length settings)

//rchat width <Log Width> (Change log width size; when wordwrap should take effect)

//rchat dwidth <Undocked Width> (Same as Log Width, if set to 0 will use Log_Width settings)

//rchat strict_width (Toggle maintaining the max log width; avoid box shrinking and expanding)

//rchat tab [tab name] (Change tab's without mouse input, goes to next tab if empty)

//rchat undock [tab name] (Opens a second dedicated chat window for that tab, off if empty)

//rchat snapback (When enabled the undocked window will follow your main window

//rchat battle_all (Toggle Battle Chat showing in the All tab)

//rchat battle_off (Toggle Battle Chat being process at all; totally off)

//rchat battle_flash (Toggle Battle Messages forced pop on screen with flashing)

//rchat chatinput (Toggle a small box showing currently typed text)

//rchat inputlocation (Toggle if the chatinput box is on Top or Bottom orientation)

//rchat splitdrops (Toggle if you'd like drops to goto their own window)
*Drops window fades after 30 seconds from last addition*

//rchat showdrops (Forces drops window to open for 120 seconds)

//rchat incoming_pause **EXPERIMENTAL** (Will turn off vanilla windows receiving chat. Coupled with the "Reactive window sizing" setting will make your chat log vanish. This is more visually appealing but you'll be solely relying on this addon for all ingame text. If in doubt just unpause it again.)


===Issues===

*If mouse input lags, enable hardware mouse in windower settings.

*Timestamps could possibly cause some false reads on filters, do recommend you turn it off.


**Usage Examples**

My current usage is keeping battle_all = off, this prevents battle log messages in my main log window
then I launch a undocked 'battle' window so that I now have a split window setup. If I want to scroll
my battle log I'll just click into battle on my main window and scroll. If I'm in the middle of a /tell
conversation I will change the undocked to 'tell'. Plenty of options to customize how you want your windows
setup through log_length / log_width.







[+]
 Fenrir.Aladeus
Offline
Serveur: Fenrir
Game: FFXI
user: Aladeus
Posts: 209
By Fenrir.Aladeus 2020-06-26 22:04:15
Link | Citer | R
 
looks quite a bit like wows chatlog system, which is a great thing
[+]
Offline
Posts: 506
By Aerison 2020-06-27 15:26:59
Link | Citer | R
 
Not sure if "//rchat strict_width" will prevent chat from expanding height wise, but with it enabled chat will still expand width if there's a long text and then eventually will come back to correct size set.

Size I set


Size it can sometimes expand to
 Asura.Erupt
Offline
Serveur: Asura
Game: FFXI
user: erupt
Posts: 68
By Asura.Erupt 2020-06-27 16:22:26
Link | Citer | R
 
Aerison said: »
Not sure if "//rchat strict_width" will prevent chat from expanding height wise, but with it enabled chat will still expand width if there's a long text and then eventually will come back to correct size set.

I'll tweak the numbers some, most of my strict_width testing and use was for much wider width limits. There is a general minimum it's not going to take you to due to the top menu forcing it's own minimum width.
 Asura.Erupt
Offline
Serveur: Asura
Game: FFXI
user: erupt
Posts: 68
By Asura.Erupt 2020-06-27 16:58:30
Link | Citer | R
 
I pushed out a new update that seems to solve the strict_width issue.
 Asura.Erupt
Offline
Serveur: Asura
Game: FFXI
user: erupt
Posts: 68
By Asura.Erupt 2020-06-29 07:27:07
Link | Citer | R
 
Asura.Erupt said: »
Aerison said: »
Not sure if "//rchat strict_width" will prevent chat from expanding height wise, but with it enabled chat will still expand width if there's a long text and then eventually will come back to correct size set.

I'll tweak the numbers some, most of my strict_width testing and use was for much wider width limits. There is a general minimum it's not going to take you to due to the top menu forcing it's own minimum width.


I went ahead and went a step forward now and fixed strict width by font type, as well as added customization to the image map's by what type of font you are using. This is done by editing a table that has the font and some multiplier numbers that need to be adjusted according to how much space that font uses. So if anyone happens to play with those numbers for a new font I'd ask to submit those numbers to me so I can plug it in.

Here's an example of a font that probably takes up double the landscape of a typical font(Unispace):

Offline
Posts: 506
By Aerison 2020-06-29 08:10:50
Link | Citer | R
 
Few questions;

  • Is there anyway to get a strict_lenth? Sometimes when message/text spam happens it increases the length of the chat box.

  • Is there a way to adjust for different aspect ratios?

  • Have you run into an issue where clicking different tabs makes your character move? I realize this is probably a ffxi setting, just wondering if you've encountered it.



Also thanks for this, rchat is much cleaner imo.
 Asura.Erupt
Offline
Serveur: Asura
Game: FFXI
user: erupt
Posts: 68
By Asura.Erupt 2020-06-29 08:32:36
Link | Citer | R
 
Aerison said: »
Few questions;

  • Is there anyway to get a strict_lenth? Sometimes when message/text spam happens it increases the length of the chat box.

  • Is there a way to adjust for different aspect ratios?

  • Have you run into an issue where clicking different tabs makes your character move? I realize this is probably a ffxi setting, just wondering if you've encountered it.



Also thanks for this, rchat is much cleaner imo.


The chat length should only move by 1 line at the most. Because of the word wrap feature I process the text in reverse so if the topmost chat line is wrapped then it creates a extra line. The alternative is to be missing a line instead, which I suppose I can make a toggle since some others have mentioned it(people really love box size consistency).

By aspect ratio, is that alot different then just changing text size? Changing text size already scales the full window down.

Clicking sometimes and moving is a issue with mouse events itself. Since I'm making these boxes capture mouse presses as well dragging if you drag too fast sometimes it can throw that to your vanilla UI instead of windower keeping the mouse input captured.


Thanks this was really just supposed to be a companion app to scroll tells easier since vanilla logs can bug out. Then just got kinda hooked on making it just a little more everyday.
Offline
Posts: 506
By Aerison 2020-06-29 08:39:29
Link | Citer | R
 
Asura.Erupt said: »
Aerison said: »
Few questions;

  • Is there anyway to get a strict_lenth? Sometimes when message/text spam happens it increases the length of the chat box.

  • Is there a way to adjust for different aspect ratios?

  • Have you run into an issue where clicking different tabs makes your character move? I realize this is probably a ffxi setting, just wondering if you've encountered it.



Also thanks for this, rchat is much cleaner imo.


The chat length should only move by 1 line at the most. Because of the word wrap feature I process the text in reverse so if the topmost chat line is wrapped then it creates a extra line. The alternative is to be missing a line instead, which I suppose I can make a toggle since some others have mentioned it(people really love box size consistency).

By aspect ratio, is that alot different then just changing text size? Changing text size already scales the full window down.

Clicking sometimes and moving is a issue with mouse events itself. Since I'm making these boxes capture mouse presses as well dragging if you drag too fast sometimes it can throw that to your vanilla UI instead of windower keeping the mouse input captured.


Thanks this was really just supposed to be a companion app to scroll tells easier since vanilla logs can bug out. Then just got kinda hooked on making it just a little more everyday.

Yeah, I guess I'm one of those people that just like that consistency lmao. No worries if it's too difficult to implement.

For the aspect ratio, I play on 1440p so I scale my UI by like 1.3/4 in the windower settings. This makes it so I have to click a little to the right and below the chat tabs, if that makes sense. I know this is an issue with a lot of addons run on scaling not 1.0.

The issue with the mouse is not with dragging, I can just click once, trying to change chat tabs for instance. When I move my mouse the character will move. I can try and create a gif to demonstrate.
 Asura.Erupt
Offline
Serveur: Asura
Game: FFXI
user: erupt
Posts: 68
By Asura.Erupt 2020-06-29 08:53:49
Link | Citer | R
 
The strict length should be super easy to do. I'll go ahead and change my ui scale a bit and see if I can make a easy fix to scale the maps. The ui scale might be one of the causes of your character moving as well.
 Asura.Erupt
Offline
Serveur: Asura
Game: FFXI
user: erupt
Posts: 68
By Asura.Erupt 2020-06-29 15:27:00
Link | Citer | R
 
Aerison said: »
Yeah, I guess I'm one of those people that just like that consistency lmao. No worries if it's too difficult to implement.

I pushed out a version with strict_length now, I'll see if I have time later to try out some different ui scales.
[+]
 Asura.Zekie
Offline
Serveur: Asura
Game: FFXI
Posts: 19
By Asura.Zekie 2020-06-29 17:31:25
Link | Citer | R
 
Awesome addon! I like it so far. i have questions: is there a way to hide a vanilla chat box? or add dark black color to the background? (maybe u already have?) thank you for your work!
[+]
Offline
Posts: 506
By Aerison 2020-06-29 17:37:41
Link | Citer | R
 
Asura.Zekie said: »
Awesome addon! I like it so far. i have questions: is there a way to hide a vanilla chat box? or add dark black color to the background? (maybe u already have?) thank you for your work!

//rchat incoming_pause - stops chat

//rchat alpha 0-255 - changes transparency
[+]
 Asura.Erupt
Offline
Serveur: Asura
Game: FFXI
user: erupt
Posts: 68
By Asura.Erupt 2020-07-01 07:00:08
Link | Citer | R
 
Added log_dwidth, which forces a different width setting on your undocked window so you can have mixed window sizes to suit your screen setup.

Added snapback which will force the undocked window to follow your main window whenever you drag the main. You can still move around the undocked while this is enable and it will not snapback until the main window is dragged.


[+]
 
Offline
Posts:
By 2020-07-01 08:29:43
 Undelete | Edit  | Link | Citer | R
 
Post deleted by User.
[+]
 Bismarck.Zalena
VIP
Offline
Serveur: Bismarck
Game: FFXI
user: alyria
Posts: 24
By Bismarck.Zalena 2020-07-01 20:47:33
Link | Citer | R
 
Hey there Erupt,

I am using your addon and there are a few bugs on my side with it, how can I report them to you?

Also, is it possible to add for certain text to be a specific color? Such as the mob text when it readies a move. "Blah blah readies TP move". The text is white and blends in with remaining text of the effects.
 Leviathan.Frostrike
Offline
Serveur: Leviathan
Game: FFXI
user: Frostrike
Posts: 10
By Leviathan.Frostrike 2020-07-01 21:09:27
Link | Citer | R
 
Wow, awesome job on this addon!
[+]
 Asura.Erupt
Offline
Serveur: Asura
Game: FFXI
user: erupt
Posts: 68
By Asura.Erupt 2020-07-01 22:45:17
Link | Citer | R
 
Bismarck.Zalena said: »
Hey there Erupt,

I am using your addon and there are a few bugs on my side with it, how can I report them to you?

Also, is it possible to add for certain text to be a specific color? Such as the mob text when it readies a move. "Blah blah readies TP move". The text is white and blends in with remaining text of the effects.


You can just PM them to me here I usually will fix most things the same day, might even have already fixed them in today's build. I'm thinking about doing some highlighting as a feature in the future maybe, having a custom style for a mob action might work better for you though. For more accurate reporting on any issues with how chat is outputting or formatted please enable the '//rchat debug' option and screenshot examples of that output to me.
 Asura.Erupt
Offline
Serveur: Asura
Game: FFXI
user: erupt
Posts: 68
By Asura.Erupt 2020-07-02 18:21:18
Link | Citer | R
 
New setting Battle_flash. This is a toggle for mentions that have to do with the battle log. If this is enabled it'll flash the mention it finds along with the words on that line, this is useful for abilities, when it's on it also bypasses certain mention properties like ignoring if your currently viewing the battle window. All other mentions should still work like normal. I'm hoping this will be somewhat how people were wanting monster abilities to alert them. Also fixed some bugs with tabs not loading correctly on a reload, specifically empty tabs. Fixed a battle log style that was showing a [cr on the beginning of the spell cast.

 Asura.Erupt
Offline
Serveur: Asura
Game: FFXI
user: erupt
Posts: 68
By Asura.Erupt 2020-07-27 12:53:20
Link | Citer | R
 
Fixed some issues with self used items not having a style format. Added a dlength option so you can have a new way of doing undocked windows. Added chatinput which allows you to see text currently in the game client input box, this allows you to cover the in game box and still see your typed text. Also allows to put this text either on top of rchat or below.


[+]
Offline
Posts: 25
By Aoibhe 2020-07-27 13:53:20
Link | Citer | R
 
Great updates. The text input was an issue for me so glad it’s sorted, I’ll give it another go now. I attempted to add it myself before but had issues with auto translate, is that working?
 Asura.Erupt
Offline
Serveur: Asura
Game: FFXI
user: erupt
Posts: 68
By Asura.Erupt 2020-07-27 14:18:12
Link | Citer | R
 
Aoibhe said: »
Great updates. The text input was an issue for me so glad it’s sorted, I’ll give it another go now. I attempted to add it myself before but had issues with auto translate, is that working?


It's just pulling from the active chat input buffer, I'm running a auto translate convert on the text so it'll just appear as regular text in that block.
 Asura.Panasync
Offline
Serveur: Asura
Game: FFXI
Posts: 95
By Asura.Panasync 2020-07-27 14:24:41
Link | Citer | R
 
Is there any way to get it to justify all output from users to the right of their names even after a line break?

Kind of like this (example):
 Asura.Erupt
Offline
Serveur: Asura
Game: FFXI
user: erupt
Posts: 68
By Asura.Erupt 2020-07-27 14:41:59
Link | Citer | R
 
Asura.Panasync said: »
Is there any way to get it to justify all output from users to the right of their names even after a line break?

Kind of like this (example):


It's certainly possible technically, would be a little bit of a pain but I'll add it to my wish list to look into at some point as a view toggle.
[+]
 Bismarck.Batton
Offline
Serveur: Bismarck
Game: FFXI
user: BattonBiz
Posts: 81
By Bismarck.Batton 2020-07-27 14:57:46
Link | Citer | R
 
Been eyeing this addon, will give it a try. The first thing I hoped to see as soon as I skimmed over it (similar to the post above) was if it had a text length min/max and "overflow" option (ala CSS text-overflow: ellipsis). I always wondered if it would be better to see strict text lengths in the log so I could immediately return my eyes to the next line to see what's next

[Name min=15 max=15 overflow=true] [Text min=30 max=30 overflow=true]
Code
Bozetto Blahbla..: asdf asdf asdf asdf asdf asdf ..
PlayerOne        : asdf asdf
Bozetto Blahbla..: asdf asdf asdf asdf asdf asdf ..
[+]
 Asura.Erupt
Offline
Serveur: Asura
Game: FFXI
user: erupt
Posts: 68
By Asura.Erupt 2020-07-27 15:43:49
Link | Citer | R
 
Asura.Panasync said: »
Is there any way to get it to justify all output from users to the right of their names even after a line break?

Kind of like this (example):


There's so many chat types, would be some amount of work to deal with. But just a quick glance at adding some static spacing to wordwrapped chat has me with this example so far.




I might be able to just go through every chat ID and throw up a pattern to search for a dynamic wrap spacing for each ID to find. Would be a bit of work, but it might look nice in the end.
[+]
 Asura.Erupt
Offline
Serveur: Asura
Game: FFXI
user: erupt
Posts: 68
By Asura.Erupt 2020-07-30 19:58:27
Link | Citer | R
 
Fixed a drag bug thanks to Akaden today, as well as added a new option. //rchat splitdrops will make drops go to a extra drop window, which fades within 30s of last activity. This should help keeps main log window a little cleaner during large events with alot of drops.

//rchat showdrops will force show the drop window for 120seconds in case you missed something.

Features I will be adding to this option are being able to scroll the drops window, will probably add that tomorrow or so.


[+]
 Asura.Erupt
Offline
Serveur: Asura
Game: FFXI
user: erupt
Posts: 68
By Asura.Erupt 2020-07-30 22:32:45
Link | Citer | R
 
Went ahead and coded the scrolling for drops window already, Enjoy!
[+]
 Asura.Erupt
Offline
Serveur: Asura
Game: FFXI
user: erupt
Posts: 68
By Asura.Erupt 2020-08-04 17:28:52
Link | Citer | R
 
Finished a original feature request.

Added Archive setting, this will make permanent archive files by CharacterName-Month.log

Use //rchat archive to enable

Also fixed a //rchat find bug introduced when I added drop windows.
 
Offline
Posts:
By 2020-08-05 02:55:38
 Undelete | Edit  | Link | Citer | R
 
Post deleted by User.
First Page 2
Log in to post.