Passport Revisited and HotU Local Variables Stored on items

Discuss any general matters related to CoPaP here!
Red Golem
World Leader: Abyss404
Posts: 109
Joined: Fri Nov 21, 2003 8:19 pm
Location: Honolulu, Hawaii (GMT-10)
Contact:

Passport Revisited and HotU Local Variables Stored on items

Post by Red Golem » Mon Dec 15, 2003 2:32 pm

There's a thread on the Bioware scripting boards that could be of use in transferring information across servers with a character: this thread. If I'm reading the thread correctly, basically local variables set on items are saved in the character file and can be loaded again out of them.

With HotU, local variables for items are stored in the saved character file - meaning we could use this to do the passport system that was talked about previously in another thread from the old CoPaP forums.

This way, we wouldn't need to pass the info via some kind of DB, but rather just embed all the information onto the passport item variables. Anyone see the potential to this?
[url=http://nwn.bioware.com/guilds_registry/viewguild.html?gid=6231]Autobic Guild[/url]

Orleron
Multiverse Scholar
Posts: 1247
Joined: Mon Nov 10, 2003 11:15 am
Location: Avlis
Contact:

Post by Orleron » Mon Dec 15, 2003 2:44 pm

Hey yeah, you know, you're right. We can just store a variable on the first item in their inventory and read that variable when they get to the next server.
Avlis: http://www.avlis.org

"My name is Orleron...a dungeonmaster...two years ago I got shot through a game client...I'm in a distant part of the internet aboard these servers of escaped mental patients...my players. I've made enemies, stupid, and annoying...now all I want to do is make CoPaP a reality, to warn Earth...Look inward(to your monitor) and share the newbies I've seen..."

Jeff
World Leader: Ea
Posts: 130
Joined: Wed Nov 19, 2003 8:36 pm
Location: EA
Contact:

Post by Jeff » Mon Dec 15, 2003 3:35 pm

I would advise the values being put on a specific item that all worlds will look for. Said item would be added to the PC inventory just before they leave and removed just after they land on the new server.
This would keep the task of tracking the item with the most up-to-date vars easy and painless.

Thoughts?
Come by and see us at:
http://hanus.is-a-geek.net/

Nightbringer
Groundling
Posts: 94
Joined: Wed Nov 19, 2003 6:06 pm
Location: Crimson Stars
Contact:

Post by Nightbringer » Mon Dec 15, 2003 3:58 pm

this is exactly what I thought when I saw that thread, but I thought we were going to try for an all DB solution?

I prefer the item solution as its easier and cleaner I think... would be simple to have a standard "passport" item with some set vars like:
"Origin Server"
"Destination Server"
"Origin Location"
"Destination Location"

The first two are obvious, and imprinted by the origin server. The destination server chechs to make sure its the valid location, and can use the origin to help decide where to place the pc's. The extra two vars might be useful if there are multiple links between the same worlds, but would not generally be used (e.g. Origin Location "Phlo" vs Origin Location "Portal" could tell me whether someone arrived on Avlis at the edge of the crystal sphere or inside a portal in a wizard's tower)
[url=http://www.crimsonstars.com]Crimson Stars: Spelljammer Persistant world[/url]
[url=http://nwvault.ign.com/Files/hakpacks/data/1060320751937.shtml]Arcane Space Tileset / Turn Based Spelljammer[/url]
Spelljammer in NWN, ship to ship combat, space piracy, and more!

Red Golem
World Leader: Abyss404
Posts: 109
Joined: Fri Nov 21, 2003 8:19 pm
Location: Honolulu, Hawaii (GMT-10)
Contact:

Post by Red Golem » Mon Dec 15, 2003 4:17 pm

Yeah, a specific temporary passport item would be good as opposed to just the first item in inventory (which could possibly get shuffled with different implementations).

A permanent cursed-plot-nondroppable passport might be worth considering as well/instead for cross-world shared data such as:

Which server the PC was created in.
Which servers the PC has been to.
Which server the PC last played on.
Which server the PC is portalling to (if different then the last one)
Special race info (ECL, night/day indoor/outdoor effects on them)
[url=http://nwn.bioware.com/guilds_registry/viewguild.html?gid=6231]Autobic Guild[/url]

lafferty
Planewalker
Posts: 31
Joined: Mon Nov 24, 2003 9:30 pm
Location: look at my hands... they are HUGE. And they cant touch themselves... (AVLIS)
Contact:

Post by lafferty » Mon Dec 15, 2003 4:37 pm

I may be wrong but isnt it also possible to attach attributes directly to player character objects with hotu? I think i read something about that on the bioware forums but i cant find it right now.

and if we'd have to use an item why not put in the hidden creature inventory... i think every character would get a Copap global information token item that stores info and it would not show up in the player inventory... right?
[url=http://zope.lafferty.de]Crafter's helper[/url]

Jeff
World Leader: Ea
Posts: 130
Joined: Wed Nov 19, 2003 8:36 pm
Location: EA
Contact:

Post by Jeff » Mon Dec 15, 2003 4:40 pm

I thought we were talking about somthing like crafting skill transfer server to server.
So if your a Level 5 Blacksmith on Avlis and you port to Hala, your craft vars would be saved on some item and Hala would update your skill record on their database to reflect this. Then if you port to EA we would see your skill from Avlis + whatever skill gain you made on Hala and update our records. This way we can get our crafters to move around without being forced to start over again.
Come by and see us at:
http://hanus.is-a-geek.net/

Orleron
Multiverse Scholar
Posts: 1247
Joined: Mon Nov 10, 2003 11:15 am
Location: Avlis
Contact:

Post by Orleron » Mon Dec 15, 2003 4:56 pm

This is true, we can use this to transfer any variable, like crafting. Hmm...

I would rather not use up a creature item slot. You never know what you'll use those things for.
Avlis: http://www.avlis.org

"My name is Orleron...a dungeonmaster...two years ago I got shot through a game client...I'm in a distant part of the internet aboard these servers of escaped mental patients...my players. I've made enemies, stupid, and annoying...now all I want to do is make CoPaP a reality, to warn Earth...Look inward(to your monitor) and share the newbies I've seen..."

Nightbringer
Groundling
Posts: 94
Joined: Wed Nov 19, 2003 6:06 pm
Location: Crimson Stars
Contact:

Post by Nightbringer » Mon Dec 15, 2003 5:55 pm

Orleron wrote:This is true, we can use this to transfer any variable, like crafting. Hmm...

I would rather not use up a creature item slot. You never know what you'll use those things for.
I agree... and I've got plans for mine! they're all mine!

uhh... I hadn't even thought of things like tradeskills, that could be pretty complicated to xfer.

And every test I've seen says that local vars on characters are NOT stored with the characters, only local vars on items on chars...
[url=http://www.crimsonstars.com]Crimson Stars: Spelljammer Persistant world[/url]
[url=http://nwvault.ign.com/Files/hakpacks/data/1060320751937.shtml]Arcane Space Tileset / Turn Based Spelljammer[/url]
Spelljammer in NWN, ship to ship combat, space piracy, and more!

Red Golem
World Leader: Abyss404
Posts: 109
Joined: Fri Nov 21, 2003 8:19 pm
Location: Honolulu, Hawaii (GMT-10)
Contact:

Post by Red Golem » Mon Dec 15, 2003 8:03 pm

Yeah I've tried storing variables on characters - setting up the variables table inside the saved character file - but when the character is saved back out again via NWN, the variables are not saved again.

Transferring tradeskills stuff via the item would be good though different servers may use different tradeskills systems.

Anyone try setting local objects for the items? It would be cool/uncool if those saved as well. One could then do a real persistent chest that could save any item regardless of whether the server has it or not.
[url=http://nwn.bioware.com/guilds_registry/viewguild.html?gid=6231]Autobic Guild[/url]

Nightbringer
Groundling
Posts: 94
Joined: Wed Nov 19, 2003 6:06 pm
Location: Crimson Stars
Contact:

Post by Nightbringer » Mon Dec 15, 2003 9:52 pm

True, persistant chests would be nice, but to actually store that object (and not just a pointer to it) would be a serious burden I'd think... just a few of those and character files would become huge.
[url=http://www.crimsonstars.com]Crimson Stars: Spelljammer Persistant world[/url]
[url=http://nwvault.ign.com/Files/hakpacks/data/1060320751937.shtml]Arcane Space Tileset / Turn Based Spelljammer[/url]
Spelljammer in NWN, ship to ship combat, space piracy, and more!

hermyt
World Leader - LoT: Moonsea
Posts: 65
Joined: Fri Nov 21, 2003 9:41 pm
Contact:

dunno who all has seen this

Post by hermyt » Tue Dec 16, 2003 2:07 am

Once again I'll post this perhaps someone would like to take the time out to actually take a boo at this forum and read a bit and take a look at the script, it could be a solution to all these database problems, without using an item slot.

http://nwn.bioware.com/forums/viewtopic ... highlight=

I posted about this before on avlis, but I don't think anyone paid much attention.

Orleron
Multiverse Scholar
Posts: 1247
Joined: Mon Nov 10, 2003 11:15 am
Location: Avlis
Contact:

Post by Orleron » Tue Dec 16, 2003 10:30 am

We cannot use the Deity field for anything like this because Avlis makes use of the Deity field for quests and we don't want it messed up. Also, when we start making a system for clerics to lose spells when travelling to other spheres, we will need to use the deity field.


I don't think this is good for storing objects in chests for the reasons you guys specified. But I do think it's good for transferring character tradeskill data and passports.

For transfering tradeskill data, it can be stored on the same token as the passport. This transfer of data can be optional to the person who runs the server. For example, if HermyT runs CNR instead of ARS, then a character with levels in ARS would not get their data transfered to Hermyt's database when porting over. Unless, of course, hermyT wanted to make some funky translation system to translate their skills into CNR versions and then back again when that person left his world. However, I think the actual translation of skills would be an external matter, no?
Avlis: http://www.avlis.org

"My name is Orleron...a dungeonmaster...two years ago I got shot through a game client...I'm in a distant part of the internet aboard these servers of escaped mental patients...my players. I've made enemies, stupid, and annoying...now all I want to do is make CoPaP a reality, to warn Earth...Look inward(to your monitor) and share the newbies I've seen..."

Nightbringer
Groundling
Posts: 94
Joined: Wed Nov 19, 2003 6:06 pm
Location: Crimson Stars
Contact:

Post by Nightbringer » Tue Dec 16, 2003 8:38 pm

Orleron wrote: For transfering tradeskill data, it can be stored on the same token as the passport. This transfer of data can be optional to the person who runs the server. For example, if HermyT runs CNR instead of ARS, then a character with levels in ARS would not get their data transfered to Hermyt's database when porting over. Unless, of course, hermyT wanted to make some funky translation system to translate their skills into CNR versions and then back again when that person left his world. However, I think the actual translation of skills would be an external matter, no?
I don't think that will work. Here's some examples of potential problems (I don't know anything about these systems or servers, just making this up ;):
Bobby the dwarf takes a trip across 3 servers:
Avlis his starting server which uses ARS
Moonsea which does not (uses CNR or whatever)
Rockholm which does use ARS

Bobby gets levels in ARS, then goes to visit Moonsea. No problem, his data simply isn't transfered. Now he goes to Rockholm, and since Moonsea doesn't use ARS that data of course isn't transfered, so he doesn't have his skill on Rockholm now.

If instead he goes from Avlis straight to Rockholm, he would have his ARS skills and be able to use them, so now the path he taeks makes a big difference.

The worst possibility: he goes from Avlis to Moonsea to Rockholm. Then he tries out some of his skills, and realizes he doesn't have them, but in the attempt also now establishes a skill base of almost nothing on Rockholm. Now when he goes back to Avlis, Rockholm will transfer his new skill data over erasing his previous skill completely!

Avlis might be able to avoid this with some fancy scripting, ignoring any transfered skill less than currently stored on itself, but that doesn't solve the "path" problem. I think the only real solution is to either transfer all skill data all the time with some standards or not transfer any data and make that very clear. The latter could even be IC with some descriptions added about how the tradeskills are "regional": learning to mine and smith from metal harvested from asteroids just doesn't teach you anything about how to do it in the mines of Avlis nor the depths of the planes.
[url=http://www.crimsonstars.com]Crimson Stars: Spelljammer Persistant world[/url]
[url=http://nwvault.ign.com/Files/hakpacks/data/1060320751937.shtml]Arcane Space Tileset / Turn Based Spelljammer[/url]
Spelljammer in NWN, ship to ship combat, space piracy, and more!

Pitched Black
World Leader: Hala
Posts: 76
Joined: Mon Nov 24, 2003 5:59 pm

Post by Pitched Black » Wed Dec 17, 2003 12:59 am

Check if there's a creature hide and if there isn't one on the player, add a generic one. If there already is a hide, just store the variables on it anyways. When the player gets to the next server, update the db from whatever's in that slot but don't delete the hide. Update it again right before portalling. If some server comes online that absolutely refuses to temporarily store these variables on a db (even the built-in thing would do) and they want to change the hides of every character that portals through, we might have a problem (with the leader).

Nightbringer
Groundling
Posts: 94
Joined: Wed Nov 19, 2003 6:06 pm
Location: Crimson Stars
Contact:

Post by Nightbringer » Wed Dec 17, 2003 11:46 am

Pitched Black wrote:If some server comes online that absolutely refuses to temporarily store these variables on a db (even the built-in thing would do) and they want to change the hides of every character that portals through, we might have a problem (with the leader).
Could be, though I can see that happening. I'm already going to have quite a few variables to save / load for spelljamming vessels, particularly if powerful characters start building up fleets of them. Having to also read / write thousands of variables for 3 different skill systems could be a serious resource hog. Plus, integrating that with a server's current systems (in the case of servers which don't use the Avlis compliant standards) might be tough.

Once again, I think there should be a standard that everyone follows, or nothing at all. Having it up to servers how they want to handle it will only lead to problems when two servers approaches are vastly different.

On the SetDiety approach, that system DOES provide the capability to access the "diety" as well as all its other data, just with a slightly different call to GetDiety. It doesn't solve the problem of standards not huge amounts of data being put there, and it relies of bio's read / write (when saving chars) rather than our own, perhaps faster methods, but it would avoid the need to create an item for data passing.
[url=http://www.crimsonstars.com]Crimson Stars: Spelljammer Persistant world[/url]
[url=http://nwvault.ign.com/Files/hakpacks/data/1060320751937.shtml]Arcane Space Tileset / Turn Based Spelljammer[/url]
Spelljammer in NWN, ship to ship combat, space piracy, and more!

Pitched Black
World Leader: Hala
Posts: 76
Joined: Mon Nov 24, 2003 5:59 pm

Post by Pitched Black » Wed Dec 17, 2003 12:15 pm

If we limit this to just the crafting system for a minute (which is the only big semi-standard system that could benefit from this), we only need to pass 1 number for each skill that the PC has experience in. And you also only 'have' to keep this in some kind of db (LocalInt would work fine) while you want to change the player's hide.

This means that if some server wants to be non-Avlis-compliant to the point of refusing to run that script and wants to change hides, the server might be non-CoPaP-compliant too so we don't have to worry about that ever happening.

Nightbringer
Groundling
Posts: 94
Joined: Wed Nov 19, 2003 6:06 pm
Location: Crimson Stars
Contact:

Post by Nightbringer » Wed Dec 17, 2003 2:11 pm

Pitched Black wrote:If we limit this to just the crafting system for a minute (which is the only big semi-standard system that could benefit from this), we only need to pass 1 number for each skill that the PC has experience in. And you also only 'have' to keep this in some kind of db (LocalInt would work fine) while you want to change the player's hide.

This means that if some server wants to be non-Avlis-compliant to the point of refusing to run that script and wants to change hides, the server might be non-CoPaP-compliant too so we don't have to worry about that ever happening.
Orleron mentioned 2 crafting systems in his post, I have no idea how many exist that we'd have to plan for, but the system would have to deal with and sort ALL of those, not just one. So that would be 1 number for each skill that the pc has for every crafting skill in every crafting system. Why use the creature hide slot though? That seems to be a fairly common slot for putting things (don't most of the subrace systems use that? what does Avlis's subrace system use?)
[url=http://www.crimsonstars.com]Crimson Stars: Spelljammer Persistant world[/url]
[url=http://nwvault.ign.com/Files/hakpacks/data/1060320751937.shtml]Arcane Space Tileset / Turn Based Spelljammer[/url]
Spelljammer in NWN, ship to ship combat, space piracy, and more!

Orleron
Multiverse Scholar
Posts: 1247
Joined: Mon Nov 10, 2003 11:15 am
Location: Avlis
Contact:

Post by Orleron » Wed Dec 17, 2003 2:22 pm

Red Golem's race system (which is what Avlis uses) employs the creature hide slot for its races. It also has provisions for using the claw or teeth slot if there's a race that needs them. This is why I kinda don't want to use them for data systems, because someday down the line, there may be a race that has claws that do 1d4, and if the claw slot is used, that will screw up that race.

Avlis Recipe System is the recommended CoPaP crafting system, but if you guys want to foot a proposal that requires all CoPaP worlds to use this system, I would vote for it. We'd have to discuss it with the WIP's first though, to be nice. It certainly would solve a lot of these issues. If everyone has the same crafting system, then data is data. We can transfer it over without worry, if we figured out that path problem that Night mentioned, which is easy enough if you record the date and time of transfer and only use the newest data.

One day it might be nice to have a central database system which transfers all this data around, but Pap will not get to that for a while.
Avlis: http://www.avlis.org

"My name is Orleron...a dungeonmaster...two years ago I got shot through a game client...I'm in a distant part of the internet aboard these servers of escaped mental patients...my players. I've made enemies, stupid, and annoying...now all I want to do is make CoPaP a reality, to warn Earth...Look inward(to your monitor) and share the newbies I've seen..."

Nightbringer
Groundling
Posts: 94
Joined: Wed Nov 19, 2003 6:06 pm
Location: Crimson Stars
Contact:

Post by Nightbringer » Wed Dec 17, 2003 3:30 pm

I'd have no problem with supporting only one crafting system, that would help the sense of continuity from one server to another. I've got no immediate plans to use a crafting system anyway, and when I look for one, having only one good choice would make that search easier. Do any of the current worlds use a different system?
[url=http://www.crimsonstars.com]Crimson Stars: Spelljammer Persistant world[/url]
[url=http://nwvault.ign.com/Files/hakpacks/data/1060320751937.shtml]Arcane Space Tileset / Turn Based Spelljammer[/url]
Spelljammer in NWN, ship to ship combat, space piracy, and more!

Pitched Black
World Leader: Hala
Posts: 76
Joined: Mon Nov 24, 2003 5:59 pm

Post by Pitched Black » Wed Dec 17, 2003 10:40 pm

What I'm trying to say is, if a player does already have a hide equipped, why can't we use it to store variables on anyways. Whether the hide is labelled anything specific or not, you can still find it with the equipped in slot command and can still get the variables off of it.

If you do want to pass variables around without deleting the item that the variables are stored on (so the third server can read data from the first server), this would be the way to go. The only other alternatives are a cursed item which the player will see or a central db which nwnx can't do yet.

Orleron
Multiverse Scholar
Posts: 1247
Joined: Mon Nov 10, 2003 11:15 am
Location: Avlis
Contact:

Post by Orleron » Wed Dec 17, 2003 10:59 pm

That's true. We can put the variables on already existing hides.
Avlis: http://www.avlis.org

"My name is Orleron...a dungeonmaster...two years ago I got shot through a game client...I'm in a distant part of the internet aboard these servers of escaped mental patients...my players. I've made enemies, stupid, and annoying...now all I want to do is make CoPaP a reality, to warn Earth...Look inward(to your monitor) and share the newbies I've seen..."

Nightbringer
Groundling
Posts: 94
Joined: Wed Nov 19, 2003 6:06 pm
Location: Crimson Stars
Contact:

Post by Nightbringer » Thu Dec 18, 2003 12:58 am

except for when the hides get switched out or something... if the system changes out the hide based on some condition (like a lycanthropy script?) then it would have to have all the code for moving stuff around included within it and do that everytime something changed. I think we'd be better of using the diety slot than a hide item as it won't cause that much rewriting anywhere (just a find replace of the set / get dieties with the new function), but I'm not hugely in favor of doing that either.
[url=http://www.crimsonstars.com]Crimson Stars: Spelljammer Persistant world[/url]
[url=http://nwvault.ign.com/Files/hakpacks/data/1060320751937.shtml]Arcane Space Tileset / Turn Based Spelljammer[/url]
Spelljammer in NWN, ship to ship combat, space piracy, and more!

Pitched Black
World Leader: Hala
Posts: 76
Joined: Mon Nov 24, 2003 5:59 pm

Post by Pitched Black » Thu Dec 18, 2003 2:25 am

How often do you replace hides and how long would it take to get (a quick guess) 10 variables before you replace it and then store that same 10 again. For the price of that bit of extra script when you replace hides, this would be a very nice feature to have up and running.

Daerthe
Ambassador: Ea
Posts: 41
Joined: Fri Nov 21, 2003 2:56 pm
Location: Ea: Legend of Valinor
Contact:

Post by Daerthe » Thu Dec 18, 2003 10:11 am

First off, I don't really know much of anything about scripting. So if my idea is way off the mark, just ignore it.

IF CoPaP goes with a standardized crafting system, like ARS, PCs who craft carry an item with their crafting skill information in it. In the crafting systems I have seen it is usually a book or a box. But if all worlds are using the same crafting system it would be the same item for every PC. Why don't you just use that item? And doesn't it already have the information you need stored in it?

Post Reply