logo logo

 Back to main page

The NWNX Community Forum

 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 
 
ACCURATE character deletion module?

 
Post new topic   Reply to topic    nwnx.org Forum Index -> Windows technical support
View previous topic :: View next topic  
Author Message
Liberty Valance



Joined: 06 Jan 2005
Posts: 21
Location: A Persistent World West2

PostPosted: Fri Jan 07, 2005 23:18    Post subject: ACCURATE character deletion module? Reply with quote

Hey everyone... does anyone know of any sort of plugin, NWNX or otherwise (although hopefully NWNX, because that variety seems to be better-documented, more stable, and would be less work for me!) that can accurately delete character files from in-game? For example, a character called "E of the Prismatic Tower" walks up to my character deletion NPC, and wants his character deleted. Now, for whatever reason, he's got about six characters with the same or similar names, and his server vault looks like this:

eoftheprismatic1.bic
eoftheprismatic2.bic
eoftheprismatic3.bic
eoftheprismatic4.bic
eoftheprismatic5.bic
eoftheprismatict.bic

... the current thingy I'm using just "guesses" by looking at the character's name... which inevitably leads to "eoftheprismatict.bic" being deleted, even if he's currently logged in with "eoftheprismatic1.bic". This of course leads to much wailing on their part and suffering on my part. Does someone have something out there that searches all character files in a user's vault, and matches not only the name (as stored within the file), but maybe some stats as well or something? Is this even possible? Help!
_________________
A Persistent World West2 | APWW2 Forums
Wirehead Studios
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
Papillon
x-man


Joined: 28 Dec 2004
Posts: 1060
Location: Germany

PostPosted: Fri Jan 07, 2005 23:36    Post subject: Reply with quote

Just an idea: you could ExportSingleCharacter the player and then call a NWNX plugin that deletes the most current file.
_________________
Papillon
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
Makzimia De Graf



Joined: 31 Dec 2004
Posts: 55
Location: San Diego CA.

PostPosted: Fri Jan 07, 2005 23:37    Post subject: Reply with quote

We actually implemented a script which checks for dupe names and stops the player from using them. We also made a script about to go into place, that stops players from having more than one account per CD key Very Happy
_________________
Makzimia De Graf

DM/Creator Island of Fredian
fredian.game-host.org:5123
Forums at http://castille.us/fredian/Forums
Back to top
View user's profile Send private message
Liberty Valance



Joined: 06 Jan 2005
Posts: 21
Location: A Persistent World West2

PostPosted: Sat Jan 08, 2005 0:04    Post subject: Reply with quote

Papillon wrote:
Just an idea: you could ExportSingleCharacter the player and then call a NWNX plugin that deletes the most current file.


that sounds like it would work... where can i find such a plugin? i can't code my way out of a paper bag in C/C++ (although interestingly enough i'm a small PHP demigod), so i can't make it myself Razz

Makzimia De Graf wrote:
We actually implemented a script which checks for dupe names and stops the player from using them. We also made a script about to go into place, that stops players from having more than one account per CD key Very Happy


How do you do the dupe name checking? I'd find that most valuable! The multiple accounts per CD key thing isn't as useful for me though, as I actually encourage my DMs to have another account to play on so they can play "stealth" and not get harassed by players wanting quests Wink
_________________
A Persistent World West2 | APWW2 Forums
Wirehead Studios
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
Makzimia De Graf



Joined: 31 Dec 2004
Posts: 55
Location: San Diego CA.

PostPosted: Sat Jan 08, 2005 0:15    Post subject: Reply with quote

Liberty the person to REALLY talk to is my head dev, and I am trying to get him on here when he has some time. I am the creator etc of IoF, but he and my wife are our gurus.
_________________
Makzimia De Graf

DM/Creator Island of Fredian
fredian.game-host.org:5123
Forums at http://castille.us/fredian/Forums
Back to top
View user's profile Send private message
Papillon
x-man


Joined: 28 Dec 2004
Posts: 1060
Location: Germany

PostPosted: Sat Jan 08, 2005 0:22    Post subject: Reply with quote

Liberty Valance wrote:
Papillon wrote:
Just an idea: you could ExportSingleCharacter the player and then call a NWNX plugin that deletes the most current file.


that sounds like it would work... where can i find such a plugin? i can't code my way out of a paper bag in C/C++ (although interestingly enough i'm a small PHP demigod), so i can't make it myself Razz


I don't think this plugin exists yet, but the VaulSTER contains 90% of the needed code (basic framework, accessing servervault, returning a result), so this would be a good start. You should try to find someone how can code a bit in C/C++ Razz

Btw, you could also purge the character files after 90 days of inactivity. That's how Avlis does it. I wrote a script that does that way back, but I am not sure if this script is still active.
_________________
Papillon
Back to top
View user's profile Send private message Visit poster's website MSN Messenger
Blacksting



Joined: 03 Jan 2005
Posts: 107

PostPosted: Sat Jan 08, 2005 0:37    Post subject: Reply with quote

I have written a 100% accurate PC deleter but I have not released it. How it works:

NWNX code gets the last file written (which thankfully is always the last character logged on from that player.) That file name is sent back through NWNX and placed as a local variable on a non-droppable item in PC inventory on login (if it doesn't exist already.) Wala.... the EXACT filename of the PC is stored for use. Because I was lazy, however, I just added it to the nwnx_functions.dll along with the file delete code. This is why I did not release it being that it was trampling on an existing module.

In game I use the LetoScript.dll to open up each bic and extract the real names from the files and list them along side the bic filename (along with a number.) The players themselves can type (since I use the Talus chat sniffer) deletechar::# and wala once again... bic deleted (also its backed up too somewhere else in case they make a mistake... and we all know THAT never happens Smile )

As with work that has been evolving over time the above scenario requires several integrated components... Talus, Leto, and the NWNX additions. If people are interested in the ENTIRE thing I can probably package it up.
Back to top
View user's profile Send private message
Xildjian



Joined: 08 Jan 2005
Posts: 100

PostPosted: Sat Jan 08, 2005 18:03    Post subject: Reply with quote

Blacksting wrote:
As with work that has been evolving over time the above scenario requires several integrated components... Talus, Leto, and the NWNX additions. If people are interested in the ENTIRE thing I can probably package it up.


I'm interested Smile
Back to top
View user's profile Send private message
Xildjian



Joined: 08 Jan 2005
Posts: 100

PostPosted: Wed Jan 19, 2005 21:40    Post subject: Reply with quote

Papillon wrote:
I don't think this plugin exists yet, but the VaulSTER contains 90% of the needed code (basic framework, accessing servervault, returning a result), so this would be a good start. You should try to find someone how can code a bit in C/C++ Razz


I have a plugin mostly working that will do this, and will verify the file against the characters' name. So far the file selection appears to be working quite nicely. I should be able to post this in a day or two for people to take a look and give some feedback.
_________________
Member Shadow of Iniquity development team
Back to top
View user's profile Send private message
dragonsong



Joined: 08 Jan 2005
Posts: 19
Location: Salinas, CA

PostPosted: Thu Jan 27, 2005 10:16    Post subject: Reply with quote

A trick demux came up with is proactive association. It works on the assumption that all new characters have a blank Tag. When a PC connects, use GetTag(), and when the result is blank, run a routine that identifies that character's file, and either stores the file name as the character's Tag, or matches them up in your *SQL database (by storing a Primary Key in the Tag, instead).

demux used LetoScript's <vault:> function to scan through all the files in the player's directory to find the one with a blank tag, and hence matched character to file name.

This only works as a proactive solution, though, since an existing playerbase has blank Tags in every file. You could, however, still write an external script that "catches up" and sets Tags / SQL.

The system was also meant as a useful foundation for LetoScript in general, as it works specifically on files, so it always needs a filename.
_________________
- dragonsong
Back to top
View user's profile Send private message Visit poster's website
princewally



Joined: 29 Dec 2004
Posts: 9

PostPosted: Tue Feb 08, 2005 20:12    Post subject: Reply with quote

http://www3.sympatico.ca/vlmcgill/msvadmin/msvadmin.zip

This is a good external program that deletes characters based on inactivity. It also allows you to set a maximum number of characters per player.


I've also heard about servers using a NPC deleter to set the deity to "DeleteMe" or something similar and using a windows script to delete anything with that text string in the bic file.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    nwnx.org Forum Index -> Windows technical support All times are GMT + 2 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group