Dynamic Name Experimental Functionality - Feedback Thread

An area to facilitate free-form feedback on systems (in-game or out) related to Arelith.

Moderators: Forum Moderators, Active DMs, Contributors

Post Reply
User avatar
Silvard
Project Lead
Project Lead
Posts: 145
Joined: Sat Apr 14, 2018 8:20 am

Dynamic Name Experimental Functionality - Feedback Thread

Post by Silvard » Tue Jan 15, 2019 11:33 am

So as has been announced the dynamic name functionality (disguise, slave tags, greyed out stealthed names, bartender tags, etc) has been restored, but it's going to need feedback and testing from as much of the playerbase as possible in order to polish it up to standard.

For the technically minded: the reason why disguise (and other dynamic names) broke is because the plugin which the functionality relied on, NWNX_Names, worked by patching individual memory addresses that had been reversed engineered from the 1.69 dedicated server. Back then this wasn't such a problem because it wasn't in active development anymore, but the EE server is obviously getting frequent updates, meaning there's a high chance that this memory patching would simply break with newer versions (like it did with the new sever). So a new plugin was written which uses a different method to achieve similar functionality by hooking certain server functions through the NWNX API (you can check it out in the NWNX repo if interested). Each approach as its pros and cons, and in developing the plugin I have tried to make the transition into as seamless as possible, but...

What this means is that the underlying method is different, and it needs some changes in the Arelith codebase to fully support. Most of the big changes have already been made and gone through internal testing, and the result is what is currently live on the server. But no amount of internal testing is going to catch all the unexpected behavior or bugs in a system that has, for all intents and purposes, been freshly implemented. That is the reason for this thread's existence.

Please, post detailed reports with as much information as you can of anything you encounter that you believe may not be working as intended. Because of the nature of the change there's bound to be places where your character's real name is used instead of your disguise name, and viceversa, and/or where tags/color are not appropriate. Please document these and post them here. I know that there have been thoughts on how disguise as a design feature should work, and it's alright to share these, but I'll ask you to please focus on current functionality. The faster that can reach a "stable" version the faster other design decisions can come into play.

Nobs
Posts: 345
Joined: Tue Jul 24, 2018 6:32 pm

Re: Dynamic Name Experimental Functionality - Feedback Thread

Post by Nobs » Tue Jan 15, 2019 8:49 pm

Personaly i dont like tags nor do i like to see grey names on the playerlist to see who is sneaking around...

Why help people to meta game , Would it not be better to prevent it from happening so the dm's/admins dont need to look over reports?

User avatar
TroubledWaters
Posts: 153
Joined: Fri Apr 06, 2018 7:10 pm

Re: Dynamic Name Experimental Functionality - Feedback Thread

Post by TroubledWaters » Tue Jan 15, 2019 8:55 pm

-moved to other thread-
Last edited by TroubledWaters on Tue Jan 15, 2019 9:36 pm, edited 1 time in total.

Irielynn Duskwalker
Posts: 6
Joined: Wed Nov 21, 2018 8:57 pm

Re: Dynamic Name Experimental Functionality - Feedback Thread

Post by Irielynn Duskwalker » Tue Jan 15, 2019 9:07 pm

I belive that having (disguised) tag is completely breaking the idea of disguise. Let me explain myself. Lets imagine that Boris is enchanter and Natasha is his customer. Natasha walks towards Boris' home and sees (disguised) Boris. Player behind Natasha PC doesn't want to be punished for metagaming but doesn't want to lose his money falling for a scam performed by sneaky-peaky Ivan (who is disguised as Boris).

What would Natasha do? Natasha would act like she didn't intend to make any deals with Boris, she was just walking around. A potential RP situation was ruined by metagaming which can't be proved. Having (disguise) tag opens a great amount of ways to metagame people without getting punished, without making it obvious. You don't leave your car door open even if you are parking it at good neighbourhood, right?


There were few discussions about it before, but no one came with suggestion. The main reason why it should be this way was that: "Players would pretend to be others and break rules, and make it difficult for DMs to investigate the issue". So, I belive, I came with solution.

I belive it would be technically easy to assign ID to each player on the server upon logging. Lets say we'll have 1000 vacant numbers (integers) which would be automaticly assigned to a players upon logging. So, today when Pyotr login he gets number 1. When Daria loggins she gets number 2. Upon each restart numbers would be assigned again, so people would have different numbers and you wouldn't be able to memorize their ID to metagame.

How is it useful? You want to report a player named Boris and you aren't sure if he is disguised or not. You type a command that would review his ID. So you report person typing down his ID, name and date. Server has history about proccess of giving players ID numbers. So, in logs you will see that at 01.01.2020 under ID 2 Pyotr was playing.

What if didn't check another player for ID and wants to report? There would be logs, and knowing date of rule breaking and a nickname of a player, there would be possibility to look up who was hiding behind that name.

I would post that to Suggestions thread, but it seems to be closed for now. I may understand something wrong, feel free to correct me.

User avatar
Revelations
Posts: 160
Joined: Fri Jan 26, 2018 3:17 pm

Re: Dynamic Name Experimental Functionality - Feedback Thread

Post by Revelations » Tue Jan 15, 2019 9:15 pm

Guys,

the tags function exactly the way it’s intended, and as it has always been.

This thread is about oddities occurring around the intended behavior, as this is a new technical approach (and fix) to an existing system.

Perhaps, especially due to the fact that the contributor himself asked about it, keep this thread for its intended use, and take your thoughts, points and suggestions to another feedback thread until you can post it as a suggestion.
Be faithful in the face of death
And I will give you the crown of life

User avatar
TroubledWaters
Posts: 153
Joined: Fri Apr 06, 2018 7:10 pm

Re: Dynamic Name Experimental Functionality - Feedback Thread

Post by TroubledWaters » Tue Jan 15, 2019 9:18 pm

I was pointed here from the Announcements page suggestion
Please: if you find any oddities, bugs, or things that need further enhancements, let us know in Feedback, particularly in this thread, please:

viewtopic.php?f=37&t=22679
I think this is something that could use a further enhancement, though happy to move the conversation to another topic if we need.

User avatar
Baron Saturday
Posts: 2364
Joined: Mon Sep 08, 2014 4:34 am

Re: Dynamic Name Experimental Functionality - Feedback Thread

Post by Baron Saturday » Tue Jan 15, 2019 9:25 pm

TroubledWaters wrote:
Tue Jan 15, 2019 9:18 pm
I was pointed here from the Announcements page suggestion
Please: if you find any oddities, bugs, or things that need further enhancements, let us know in Feedback, particularly in this thread, please:

viewtopic.php?f=37&t=22679
I think this is something that could use a further enhancement, though happy to move the conversation to another topic if we need.
I think a different thread would be best, yes. The (disguise) tag argument is an old one with fairly entrenched opinions on both sides. Bringing it here will likely mean that this thread gets used for nothing else.
Rolled: Helene d'Arque, Sara Lyonall
Shelved: Kels Vetian, Cin ys'Andalis, Saul Haidt
Playing: Oshe Jordain

User avatar
triaddraykin
Arelith Silver Supporter
Arelith Silver Supporter
Posts: 735
Joined: Mon Sep 08, 2014 2:32 am

Re: Dynamic Name Experimental Functionality - Feedback Thread

Post by triaddraykin » Sat Jan 19, 2019 7:16 pm

Orian_666 wrote:
Sat Jan 19, 2019 2:22 am
As much as I love that Disguise is back, one of my characters being a Rogue, I have to report this bug because my other character is a mage..

Basically, previously regardless of Disguise (afaik) you could "-scry Joe Bloggs" even if they were disguised, and you'd know it was them and that was the ruling, there's more to it of course but the particulars can be found here: http://wiki.arelith.com/Console_command#-scry

However if Joe Bloggs is now disguised, using "-scry Joe Bloggs" gives you a warning that that player could not be found.
As far as i'm aware a -disguise is entirely mundane and shouldn't be blocking scriers from scrying in terms of IG sense and logic.

I have no idea if the new way the disguise system was brought in will allow for a scry work around but I figured it was best you know just in case there is.

Thank you.
Stealing this, as it does look to be an actual bug: Basically, if you scry someone's name, and they're disguised, it's not letting you scry them. Disguise is a mundane action, and shouldn't block a magical scry.
Alia: The uncanny knack of Angela Amana to make the otherwise perpetually well-mannered girl lose her temper and be HORRIBLY ASHAMED afterwards.

Who on the Team to PM and When
Public Tower Discord
Tower Library
Scroll, Wand, & Potion Costs

User avatar
Silvard
Project Lead
Project Lead
Posts: 145
Joined: Sat Apr 14, 2018 8:20 am

Re: Dynamic Name Experimental Functionality - Feedback Thread

Post by Silvard » Sat Jan 19, 2019 7:47 pm

Thanks for bringing this to my attention. It's already been fixed and will be live with the next update.

Aelryn Bloodmoon
Arelith Supporter
Arelith Supporter
Posts: 2028
Joined: Thu Sep 11, 2014 4:57 pm

Re: Dynamic Name Experimental Functionality - Feedback Thread

Post by Aelryn Bloodmoon » Sun Jan 20, 2019 9:14 am

I've experienced an issue with my journal since this went live. I disguised as my character's alias Sparky, and opened a journal to take some notes. When I opened my journal the file was empty. I wrote some names down that were disclosed IC.

Later, I opened my journal undisguised- my original journal came back and loaded in. When I re-disguised later, I could not load disguised journal.

I believe this means that for some reason, when you disguise the game is making a separate journal file under a different name and pulling it when you open your journal. However, the behavior does not seem to be consistent, as I can not switch back and forth on command with disguise.

Afterthought: I did some digging in my local vault file- I do, in fact, have a txt journal file for a sparkydisguised, and the end of it includes the names I acquired during said RP.

Is there a way to divorce disguise from creating a new journal file, or a way to make it consistently open the new one when disguise activates?
Bane's tyranny is known throughout the continent, and his is the image most seen as the face of evil.
-Faiths and Pantheons (c)2002

Halibutthead
Posts: 187
Joined: Tue Jun 12, 2018 5:56 pm

Re: Dynamic Name Experimental Functionality - Feedback Thread

Post by Halibutthead » Sun Jan 20, 2019 6:23 pm

Aelryn Bloodmoon wrote:
Sun Jan 20, 2019 9:14 am
Is there a way to divorce disguise from creating a new journal file, or a way to make it consistently open the new one when disguise activates?
it's hardcoded. nwn was not designed with the fantastic extensions that have been added in mind

User avatar
Kenji
Arelith Platinum Supporter
Arelith Platinum Supporter
Posts: 1496
Joined: Mon May 14, 2018 9:14 am
Location: Mechanics Dungeon

Re: Dynamic Name Experimental Functionality - Feedback Thread

Post by Kenji » Tue Jan 22, 2019 4:27 am

After a server reset, the disguise my ranger had was gone.

Not that it was a detriment to the RP at the time, but I imagine some might need to keep their disguises up in the event of an emergency reset.

Dragonovith
Contributor
Contributor
Posts: 600
Joined: Tue Sep 12, 2017 7:58 pm

Re: Dynamic Name Experimental Functionality - Feedback Thread

Post by Dragonovith » Tue Jan 22, 2019 4:42 am

Image

I don't think the name was supposed to be greyed out. I'd hazard a guess and say that it happened when the horse's owner mounted it during stealth mode.

User avatar
Silvard
Project Lead
Project Lead
Posts: 145
Joined: Sat Apr 14, 2018 8:20 am

Re: Dynamic Name Experimental Functionality - Feedback Thread

Post by Silvard » Wed Jan 23, 2019 1:03 pm

Aelryn Bloodmoon wrote:
Sun Jan 20, 2019 9:14 am
I've experienced an issue with my journal since this went live. I disguised as my character's alias Sparky, and opened a journal to take some notes. When I opened my journal the file was empty. I wrote some names down that were disclosed IC.

Later, I opened my journal undisguised- my original journal came back and loaded in. When I re-disguised later, I could not load disguised journal.

I believe this means that for some reason, when you disguise the game is making a separate journal file under a different name and pulling it when you open your journal. However, the behavior does not seem to be consistent, as I can not switch back and forth on command with disguise.

Afterthought: I did some digging in my local vault file- I do, in fact, have a txt journal file for a sparkydisguised, and the end of it includes the names I acquired during said RP.

Is there a way to divorce disguise from creating a new journal file, or a way to make it consistently open the new one when disguise activates?
Unfortunately this is client side functionality. We don't have access to it.
Kenji3108 wrote:
Tue Jan 22, 2019 4:27 am
After a server reset, the disguise my ranger had was gone.

Not that it was a detriment to the RP at the time, but I imagine some might need to keep their disguises up in the event of an emergency reset.
By design disguise doesn't persist through resets or transfers so it's not a bug, but I'll note the suggestion.
Dragonovith wrote:
Tue Jan 22, 2019 4:42 am
Image

I don't think the name was supposed to be greyed out. I'd hazard a guess and say that it happened when the horse's owner mounted it during stealth mode.
Thank you for bringing this up, it will be rectified for the next update.

Aelryn Bloodmoon
Arelith Supporter
Arelith Supporter
Posts: 2028
Joined: Thu Sep 11, 2014 4:57 pm

Re: Dynamic Name Experimental Functionality - Feedback Thread

Post by Aelryn Bloodmoon » Wed Jan 23, 2019 7:43 pm

Silvard wrote:
Wed Jan 23, 2019 1:03 pm
Unfortunately this is client side functionality. We don't have access to it.
Does this mean it might be possible to modify the behavior with a client-side override? Any guesses on how difficult it would be? Anyone inspired to do a public Arelith release of such an idea if possible with disguise being fixed now?

Additional Question: If coloring the names (such as stealthing making them grey) creates a new name entry, is there any chance they grey will be removed from stealthed names? Or is this the functionality that keeps runners from being able to find stealthed people?
Bane's tyranny is known throughout the continent, and his is the image most seen as the face of evil.
-Faiths and Pantheons (c)2002

User avatar
triaddraykin
Arelith Silver Supporter
Arelith Silver Supporter
Posts: 735
Joined: Mon Sep 08, 2014 2:32 am

Re: Dynamic Name Experimental Functionality - Feedback Thread

Post by triaddraykin » Wed Jan 23, 2019 9:13 pm

Aelryn Bloodmoon wrote:
Wed Jan 23, 2019 7:43 pm
Silvard wrote:
Wed Jan 23, 2019 1:03 pm
Unfortunately this is client side functionality. We don't have access to it.
Does this mean it might be possible to modify the behavior with a client-side override? Any guesses on how difficult it would be? Anyone inspired to do a public Arelith release of such an idea if possible with disguise being fixed now?

Additional Question: If coloring the names (such as stealthing making them grey) creates a new name entry, is there any chance they grey will be removed from stealthed names? Or is this the functionality that keeps runners from being able to find stealthed people?
I've experimented extensively with grey names and disguises, and the journal, as one of my stealthy characters has a distinct personality for her disguised names and outfits.
When your name goes grey, there's a special set of characters that go before it to make it go that color, and this changes the name as far as the game is concerned. You can identify these in your localvault by the extra 'c' in front of the names.
Your journal works off of the name of your character. When you open it up, the game searches for a name-match, and if it's not there, displays it as empty. When you close the journal, the game performs a write action to a file by that name, and if there's not one there, it creates one. As mentioned, you'll have a 'c' in front of the name.

So, you've got Bert Allin. He goes by the disguise Spokes.
These files will be created when you close the journal, and depending on if he's in stealth.
bertallin.txt
cbertallinc.txt
spokesdisguised.txt
cspokesdisguised.txt
Now, the PLUS of this is that you can copy journals this way. Open Bert's journal, disguise as Spokes, and close the journal. bertalin.txt and spokesdisguised.txt now match. Unfortunately, you can also wipe out a good journal this way, irrecoverably. I've seen a character rolled because 4 months of notes on every interaction they had, had been wiped, it was heartbreaking.

Now, as to a clientside mod? It would need to be able to somehow detect what character you were playing, and convert every file into it, with every single disguise or name change, dynamically. This would be possible by perhaps isolating the files with folders, because otherwise you'd only be able to ever have one character's journal. Possibly you could program specific disguises into it to watch for, but that would mean you'd have to tell it every disguise name for every character.

Disclaimer: Not a programmer, modder, or code monkey, just observant.
Alia: The uncanny knack of Angela Amana to make the otherwise perpetually well-mannered girl lose her temper and be HORRIBLY ASHAMED afterwards.

Who on the Team to PM and When
Public Tower Discord
Tower Library
Scroll, Wand, & Potion Costs

User avatar
Silvard
Project Lead
Project Lead
Posts: 145
Joined: Sat Apr 14, 2018 8:20 am

Re: Dynamic Name Experimental Functionality - Feedback Thread

Post by Silvard » Thu Jan 24, 2019 4:22 pm

Aelryn Bloodmoon wrote:
Wed Jan 23, 2019 7:43 pm
Silvard wrote:
Wed Jan 23, 2019 1:03 pm
Unfortunately this is client side functionality. We don't have access to it.
Does this mean it might be possible to modify the behavior with a client-side override? Any guesses on how difficult it would be? Anyone inspired to do a public Arelith release of such an idea if possible with disguise being fixed now?

Additional Question: If coloring the names (such as stealthing making them grey) creates a new name entry, is there any chance they grey will be removed from stealthed names? Or is this the functionality that keeps runners from being able to find stealthed people?
This is not achievable through an override, to the best of my knowledge, but through something like NWNCX. However I strongly advise against client modification. If this is key to you then set up a file/folder watcher to delete all newly created files and replace them for symbolic links to your character's "master" journal. Simple enough for a single character, for multiple characters you'll have to select which "master" file to symlink to when you launch NWN. You can look into Powershell scripting to do something like this.

Additional Answer: I'd say 0 chance. The graying out of the stealther's name serves an important function: It allows a spotter to realize that the character they've detected is in stealth mode, which allows them to react accordingly.

Post Reply