Bags
Moderators: Moderator, Quality Control, Developer, DM
- Rhifox
- Retired Admin (Acting Assistant Admin)
- Posts: 3711
- Joined: Wed Jan 13, 2016 2:34 am
Bags
To follow up on the removal of the NW Tradeway bags, we've got a plan for implementing bags in a way that does not tax server resources. To assuage concerns of the NWTW container removal, I'm going to give a summary of our plans.
We are looking at creating a "virtual bag" system that stores gear in sql to prevent bic inflation. This will work similar to vanilla bags in the sense of being able to drag and drop items (and might be usable for horses, too?). Before that can be done, though, we need to finish work on a universal ID system. This was already being worked on before this, and is needed to better identify specific characters in a way that can't get broken by things like Disguise or name changes and so on, and would allow various improvements in several systems.
Dae can provide more details on the specifics of this, but in short, we have plans to work on these, but it may take some time to build these systems. So we ask players to be patient. We've heard the clear desires the player base has for the implementation of containers, so we are going to work towards a way of adding them to the server properly.
We'll give you an update when these systems are further along.
We are looking at creating a "virtual bag" system that stores gear in sql to prevent bic inflation. This will work similar to vanilla bags in the sense of being able to drag and drop items (and might be usable for horses, too?). Before that can be done, though, we need to finish work on a universal ID system. This was already being worked on before this, and is needed to better identify specific characters in a way that can't get broken by things like Disguise or name changes and so on, and would allow various improvements in several systems.
Dae can provide more details on the specifics of this, but in short, we have plans to work on these, but it may take some time to build these systems. So we ask players to be patient. We've heard the clear desires the player base has for the implementation of containers, so we are going to work towards a way of adding them to the server properly.
We'll give you an update when these systems are further along.
Tarina — Witch, Apothecary, Dealer in Spirits and Black Magic
-
- Posts: 607
- Joined: Wed Feb 28, 2018 2:01 pm
Re: Bags
These are only good for the current session. A particular object's serial number doesn't persist across server resets.
These ids are not even the same across server boundaries. When you transfer to the other server all your objects and PC are recreated and new object ids assigned based on whatever the next available ones are for the session.
Keep in mind we don't have the source code for the game server or client. I'm not sure what kind of development work you've done, but reverse engineering and engine hacks for executables without having any source code are quite complex compared to having access to and compiling high level source code.
AKA Dae-Glyth
Discord: Dae-Glyth#1759
Discord: Dae-Glyth#1759
- zhazz
- Posts: 806
- Joined: Sat Feb 08, 2020 7:12 am
Re: Bags
Of this I am awareEwe wrote: ↑Thu Jan 27, 2022 1:14 pmKeep in mind we don't have the source code for the game server or client. I'm not sure what kind of development work you've done, but reverse engineering and engine hacks for executables without having any source code are quite complex compared to having access to and compiling high level source code.
From my own limited experience, and talking with Valefort in the past, it is my understanding that nearly all of what is mod-able in the game happen either true the 2da files, or event subscriptions: e.g. PCEquipsItemEvent or AttackHitsTargetEvent.
Any changes or additions to the game code has to happen through these events, and some of them are unfortunately limited in what data they expose; either through no visibility at all for said data, or that data being read-only.
The following pseude-example (don't know all the syntax and loops and hoops) is how to possibly generate and use a unique character id.
The only time there will be an issue with it, is if the player decides to RCR their character (new DMFI Tool), while also changing the name of their character (RP reasons or mis-spellings). Name changes, however, are usually handled by the staff, or have been in the past at least.
Maybe our developers have already thought and scrapped this option, if so, I'll continue to scratch my head and hope something falls out.
Pseudo-code example of unique character id generation and usage.
Code: Select all
void OnCharacterLogInEvent(var oTarget, ..., ...)
{
const string DMFITOOL_CHARACTERID_KEY = "UniqueCharId";
if (!IsPC(oTarget))
return;
var oDMFITool = GetDMFIToolFromPC(oTarget);
var dictDMFIEntries = GetDatabaseFromDMFITool(oDMFITool); // Might be an array? I don't know.
string uniqueCharId = dictDMFIEntries.GetEntryByKey(DMFITOOL_CHARACTERID_KEY);
if (uniqueCharId != NULL && uniqueCharId != "")
return;
string uniquePlayerId = GlobalTools.GetCurrentPlayerId(); // Might be the CD-Key, might be something else.
string characterName = GetCharacterName(oTarget);
uniqueCharId = GlobalTools.MD5(uniquePlayerId + characterName);
dictDMFIEntries.AddEntry(DMFITOOL_CHARACTERID_KEY, uniqueCharId);
}
void OnItemAddedToContainer(var oTarget, var oItem, ..., ...)
{
const string DMFITOOL_CHARACTERID_KEY = "UniqueCharId";
const string TBL_PLAYER_CONTAINERS = "tblPlayerContainers";
if (!IsPC(oTarget))
return;
var oDMFITool = GetDMFIToolFromPC(oTarget); // Psedu-example
var dictDMFIEntries = GetDatabaseFromDMFITool(oDMFITool); // More Psedu-example
string uniqueCharId = dictDMFIEntries.GetEntryByKey(DMFITOOL_CHARACTERID_KEY);
string uniqueItemId = GetUniqueItemId(oItem); // Not sure how to do this (yet)
if(GlobalTools.Database.CheckEntryExists(TBL_PLAYER_CONTAINERS, new [] { uniqueCharId, uniqueItemId })) // Check for multi-column unique key.
return;
GlobalTools.Database.AddEntry(TBL_PLAYER_CONTAINERS, uniqueCharId, uniqueItemId);
}
-
- Posts: 607
- Joined: Wed Feb 28, 2018 2:01 pm
Re: Bags
These conversations are becoming more than what the typical player needs to be concerned about. This has been pretty well thought out by the staff already, I'd ask you trust us. I'll try to answer this, but I don't have time to dedicate to defending every technical decision. I understand you want to help, but maybe consider applying as a dev?
Why is UUID needed?
Object IDs for Playable Characters (PCs) do not persist across sessions or server boundaries. Further, other identifying information about a player including CDKey, First Name, Last Name, bic file name, and so on are all mutable. PC names are frequently changed by DMs at player request or when granting an RP title reward. Additionally, the disguise system also changed PC names.
PCs may be tied to one or more CD keys, which can also change over time if the player obtains a new CD key and makes an admin request. It is typical for one CD key to have many characters. CD Keys may also be given away by one player to another. Additionally, previous attempts at “unique IDS” were subject to ill advised truncation issues or illegal windows filename symbols being removed and so on.
It’s just really hard to maintain a PW when a PC id is mutable. To this end, an immutable ID in the form of a UUID that cannot be changed through nwscript makes sense. It makes so much sense that this is literally what Beamdog did for nwn:ee. See nwn1 lexicon: https://nwnlexicon.com/index.php?title=GetObjectUUID
Why is UUID needed?
Object IDs for Playable Characters (PCs) do not persist across sessions or server boundaries. Further, other identifying information about a player including CDKey, First Name, Last Name, bic file name, and so on are all mutable. PC names are frequently changed by DMs at player request or when granting an RP title reward. Additionally, the disguise system also changed PC names.
PCs may be tied to one or more CD keys, which can also change over time if the player obtains a new CD key and makes an admin request. It is typical for one CD key to have many characters. CD Keys may also be given away by one player to another. Additionally, previous attempts at “unique IDS” were subject to ill advised truncation issues or illegal windows filename symbols being removed and so on.
It’s just really hard to maintain a PW when a PC id is mutable. To this end, an immutable ID in the form of a UUID that cannot be changed through nwscript makes sense. It makes so much sense that this is literally what Beamdog did for nwn:ee. See nwn1 lexicon: https://nwnlexicon.com/index.php?title=GetObjectUUID
AKA Dae-Glyth
Discord: Dae-Glyth#1759
Discord: Dae-Glyth#1759
- Rhifox
- Retired Admin (Acting Assistant Admin)
- Posts: 3711
- Joined: Wed Jan 13, 2016 2:34 am
- mrm3ntalist
- Retired Staff
- Posts: 7712
- Joined: Wed Feb 29, 2012 5:31 pm
- Location: Skala Kallonis, Lesvos, Greece
Re: Bags
Oh boy…
IS EMOTIONAL KEKW - GIT GUD
Mendel - Villi of En Dharasha Everae | Nikos Berenicus - Initiate of the Mirari | Efialtes Rodius - Blood Magus | Olaf Garaeif - Dwarven Slayer
Spelling mistakes are purposely entered for your entertainment!
Mendel - Villi of En Dharasha Everae | Nikos Berenicus - Initiate of the Mirari | Efialtes Rodius - Blood Magus | Olaf Garaeif - Dwarven Slayer
Spelling mistakes are purposely entered for your entertainment!
- selhan
- Custom Content
- Posts: 967
- Joined: Tue Jun 09, 2020 7:40 am
Re: Bags
All very well nice to know. Containers are cool and all but the point of my question to begin with is ..will this have a weight reduction? LOL Kits, clothes, consumables, food, other RP items or items used for rp tend to be very troublesome to someone that aint got a bunch of str . When looting, the amount of nice stuff left behind just so some of us light weights wont be encumbered at the start of the run can get heart breaking.
Im not saying it needs to be 100% weight reduction but even a good 15-20 pounds would be very helpful. I seen some ppl encumbered all day, that gotta be frustrating lol.
Im not saying it needs to be 100% weight reduction but even a good 15-20 pounds would be very helpful. I seen some ppl encumbered all day, that gotta be frustrating lol.
“We drink to get drunk, we get drunk to fall asleep, when we fall asleep, we commit no sin, when we commit no sin, we go to the Heaven's."
Bartender of the Broken Goblet - "What's yer Poison?"
Click to find out what time is it for the Bartender
Bartender of the Broken Goblet - "What's yer Poison?"
Click to find out what time is it for the Bartender
- zhazz
- Posts: 806
- Joined: Sat Feb 08, 2020 7:12 am
Re: Bags
In regards to multiple sets of clothes for different outfits, there's currently a suggestion for a Quality-Of-Life feature. Don't know where it stands with the development team, but so far no one have objected to it.selhan wrote: ↑Mon Feb 21, 2022 9:03 am All very well nice to know. Containers are cool and all but the point of my question to begin with is ..will this have a weight reduction? LOL Kits, clothes, consumables, food, other RP items or items used for rp tend to be very troublesome to someone that aint got a bunch of str . When looting, the amount of nice stuff left behind just so some of us light weights wont be encumbered at the start of the run can get heart breaking.
Im not saying it needs to be 100% weight reduction but even a good 15-20 pounds would be very helpful. I seen some ppl encumbered all day, that gotta be frustrating lol.
viewtopic.php?f=610&t=77223
-
- Posts: 504
- Joined: Thu Feb 20, 2020 10:57 pm
Re: Bags
As what I would call a "medium STR" toon (14 STR, 16 with a ring) I'd be ok with no weight reduction. Certainly, any time I pick up heavy armor, I become encumbered. But to me, the bags would be more about inventory sorting than anything. I currently have only one tab open, and have over 30 TKL songs in my inventory. I can't rightly justify leaving those in storage, or on a horse, as Emmanuel would be able to play them whenever.selhan wrote: ↑Mon Feb 21, 2022 9:03 am All very well nice to know. Containers are cool and all but the point of my question to begin with is ..will this have a weight reduction? LOL Kits, clothes, consumables, food, other RP items or items used for rp tend to be very troublesome to someone that aint got a bunch of str . When looting, the amount of nice stuff left behind just so some of us light weights wont be encumbered at the start of the run can get heart breaking.
Im not saying it needs to be 100% weight reduction but even a good 15-20 pounds would be very helpful. I seen some ppl encumbered all day, that gotta be frustrating lol.
Others I know carry around loads of scrolls, or wands, etc. I would wager that to them it would be more about inventory management than weight, too.
With this said, I wouldn't object to weight reduction. But it's not something I'm personally asking for.
"Now this is the law of the jungle, as old and as true as the sky,
And the wolf that shall keep it may prosper, but the wolf that shall break it must die."
- Rudyard Kipling
And the wolf that shall keep it may prosper, but the wolf that shall break it must die."
- Rudyard Kipling
- selhan
- Custom Content
- Posts: 967
- Joined: Tue Jun 09, 2020 7:40 am
Re: Bags
"Minor reduction would be helpful. Im pretty sure all the ladies with multiple fashion would agree!" But seriously its Forgotten Realms after all..I understand the load it puts on the server to have the normal Magic bags, but I think by now.....given that the server been up over a decade would have something similar at the very least. 5-10 Pounds reduction even. *Prays*
“We drink to get drunk, we get drunk to fall asleep, when we fall asleep, we commit no sin, when we commit no sin, we go to the Heaven's."
Bartender of the Broken Goblet - "What's yer Poison?"
Click to find out what time is it for the Bartender
Bartender of the Broken Goblet - "What's yer Poison?"
Click to find out what time is it for the Bartender
- Destinysdesire
- Posts: 44
- Joined: Thu May 19, 2022 11:11 am
Re: Bags
Given the latest update was in February, is there any updates?
Also regarding weight reduction bags....yes please? Good money sinks for sure. Have the 100% bags be like 500,000 - 1 mill, you will easily create a money sink people will be happy with!
Also regarding weight reduction bags....yes please? Good money sinks for sure. Have the 100% bags be like 500,000 - 1 mill, you will easily create a money sink people will be happy with!
- arakan94
- Custom Content
- Posts: 21
- Joined: Fri Jul 22, 2022 6:57 pm
- Location: CZ, UTC +2
Re: Bags
I can't wait for bags! And I only started playing week ago
As others said, primary use is inventory management (scrolls, potions, ingredients, RP stuff), which leads me to question - would it be possible with the new system to put something that's in bag on the hotbar?
As others said, primary use is inventory management (scrolls, potions, ingredients, RP stuff), which leads me to question - would it be possible with the new system to put something that's in bag on the hotbar?