Witness Protection: Anonymize Your Screen.

Language: JP EN DE FR
New Items
2023-11-19
users online
Forum » Windower » General » Witness Protection: anonymize your screen.
Witness Protection: anonymize your screen.
VIP
Offline
Posts: 662
By Lili 2020-04-04 20:02:45
Link | Quote | Reply
 
Witness Protection - ver. 0.1.0

This addon takes care of renaming all the characters you encounter to random names. The goal is to make it impossible, or at least very difficult, to recognize who you are or what server you are on by watching a video or a stream.

Potentially useful for, well, streamers or videomakers that want to mantain partial anonymity on the internet. Probably useful for other things but I'll leave that up to you to find. It was also quite fun to write.

Download: https://github.com/lili-ffxi/FFXI-Addons/

Changelog:
- 0.1.0 - Added persistent random names and colors for Linkshells, improved caching of names, revamped code significantly.
- 0.0.11 - testing ls colors
- 0.0.10 - added incoming /check notifications and improved generation of names
- 0.0.9 - correctly assigns name lengths
- 0.0.8 - switched from Index to ID
- 0.0.7 - first public release

How does it work:
It reassign names both to characters that show up on screen, and to names in chat (party, linkshell, /say, /yell, etc). Also assigns a random new color and name to any linkshell you come across, both on screen and in chat log. All reassignments are cached and are persistent during each session, but are reset if you close the game or reload the addon.
The random names are made from the player Id, and for this reason permanent names are only assigned once somebody shows up on your screen. People that you haven't met yet will be "Anonabcd", where "abcd" is a random four letter string. I figure 9999 possibilities are enough with the current state of the game.

For testing purposes, the command `//wit` will dump the entire cache to the chatlog. Careful, it might get long.

Names are assigned uniquely and biunivocally , so if you can send a /tell to a reassigned name and the proper recipient will receive it - this also makes it possible to reply to tells.

Also due to the name cache, it is possible to assign permanent renames to anybody you want. You can also de-anonymize yourself (or anybody) by simply assigning your own name to yourself.

All the code in this has been written by me, but the original idea belong to towbes from the Ashita discord, who is writing the exact same thing for Ashita.

Known issues:
- LS names can be garbage, this is due to a quirk of Windower which will be fixed soon. If it happens to you, just wait for the next Windower update.
- Synthesis messages are untested so use at your own risk.

To-do:
- maybe randomize character race and/or face
- not sure what else.

Please test it (at your own risk!) and report any suggestion/bugs/improvements. Thanks, and enjoy!
[+]
 Shiva.Thorny
Offline
Server: Shiva
Game: FFXI
user: Rairin
Posts: 2076
By Shiva.Thorny 2020-04-04 20:34:26
Link | Quote | Reply
 
Player indexes change every time you zone, may want to use IDs instead.
[+]
 Lakshmi.Byrth
VIP
Offline
Server: Lakshmi
Game: FFXI
user: Byrthnoth
Posts: 6137
By Lakshmi.Byrth 2020-04-04 20:37:46
Link | Quote | Reply
 
IIRC some packets have a name field that is one of those sizes, so the packet size would have to change to make the names a constant size. There isn't a clean way to change packet size. You have to block the original and inject a new one.

Just make the names all four characters maybe? As long as you null terminate it I bet it works out.
VIP
Offline
Posts: 662
By Lili 2020-04-04 21:04:22
Link | Quote | Reply
 
Shiva.Thorny said: »
Player indexes change every time you zone, may want to use IDs instead.

That's fair, will do.

EDIT: huh, it seems I initially started using IDs for 00A and 00D, then had a brainfart and switched to Index after that. Derp. Fixed.

Lakshmi.Byrth said: »
IIRC some packets have a name field that is one of those sizes, so the packet size would have to change to make the names a constant size.

Yeah, that's what we thought as well. It's not a big deal, i just didn't write around it because lazy yet. I'd rather not inject a new packet, seems unnecessary overhead. EDIT: also fixed.

However, the LS name in the LS message becoming garbage is very clearly a bug in windower (they turn this way even if the new name has the same amount of characters as the old one):
 Asura.Slyshenx
Offline
Server: Asura
Game: FFXI
user: Slyshen1
Posts: 377
By Asura.Slyshenx 2020-04-04 22:22:55
Link | Quote | Reply
 
I like this idea, but isn't that what /names is for?

Streamers tend to like having their name on the screen as it helps with publicity, therefore making it fairly easy for someone to track which server they are on. If they were trying to hide their names AND others, /names would do the trick, but it would also remove NPC names which could be a problem.
 Asura.Arico
Offline
Server: Asura
Game: FFXI
user: Tename
Posts: 535
By Asura.Arico 2020-04-04 22:26:49
Link | Quote | Reply
 
Asura.Slyshenx said: »
I like this idea, but isn't that what /names is for?

Streamers tend to like having their name on the screen as it helps with publicity, therefore making it fairly easy for someone to track which server they are on. If they were trying to hide their names AND others, /names would do the trick, but it would also remove NPC names which could be a problem.


Maybe you want to show off how you 6 box master trials but it's pretty highly automated and don't want to get banned.
[+]
VIP
Offline
Posts: 662
By Lili 2020-04-04 22:50:50
Link | Quote | Reply
 
Asura.Slyshenx said: »
I like this idea, but isn't that what /names is for?

/names also does not change/hide names in the chatlog, nor in the alliance list. Which means that if I want to video/stream a fight without giving away my character(s)'s name, I'd also have to block those parts of the screen, which is where most of the action can actually be seen.

This addon also gives the option of showcasing your name and still making others anonymous.
Offline
By Shichishito 2020-04-05 04:32:49
Link | Quote | Reply
 
should have named it brag protection cheaters edition ver. 0.0.9
[+]
Offline
Posts: 12226
By Pantafernando 2020-04-05 04:58:19
Link | Quote | Reply
 
I was thinking something completely different when i read this thread title...
Offline
By Shichishito 2020-04-05 05:00:41
Link | Quote | Reply
 
Pantafernando said: »
I was thinking something completely different when i read this thread title...
YouTube Video Placeholder

this?
[+]
VIP
Offline
Posts: 662
By Lili 2020-04-08 19:23:44
Link | Quote | Reply
 
Updated to version 0.1.0.

Changes:
- Fixed the LS garbage issue, but see below.
- Added renaming of Linkshells, both in LS messages and in /check windows. Pearl colors are also randomized, both on screen and in /check windows.
- Reworked the code significantly, should be a little smoother now.

The garbage issue was due to a quirk in how windower rebuilt edited packets, and has now been fixed by the great and almighty Arcon who is saintly patient, funny and generous, and still has not stopped helping me when I pester him. Also thanks to Rubenator.

Anyway, the LS name issue is fixed in the dev branch of windower but not yet in live. As far as this addon is concerned, it's only a graphical glitch, so I'm releasing it anyway, the issue will be fixed 100% as soon as the current windower dev branch goes live.

Enjoy, and please give feedback.
 Fenrir.Cariboulou
Offline
Server: Fenrir
Game: FFXI
Posts: 39
By Fenrir.Cariboulou 2020-04-09 09:54:29
Link | Quote | Reply
 
Nice work Lili. Very Cool.
necroskull Necro Bump Detected! [426 days between previous and next post]
 Valefor.Caelesta
Offline
Server: Valefor
Game: FFXI
user: Keyser
Posts: 1
By Valefor.Caelesta 2021-06-09 16:28:53
Link | Quote | Reply
 
There's a syntax error on line 22, needs a comma after 'Player Name'
necroskull Necro Bump Detected! [452 days between previous and next post]
Offline
Posts: 8
By Yawley 2022-09-04 22:43:15
Link | Quote | Reply
 
Big necro post.

I'm not-so-good at editing luas. I wrote in an alias so that it always shows my name as something different, but I'd like to have it filter only my name. Does anyone know how I can do that?
Log in to post.