Author Topic: Persistant Storage Containers  (Read 1116 times)

Legacy_Jenna WSI

  • Hero Member
  • *****
  • Posts: 1837
  • Karma: +0/-0
Persistant Storage Containers
« on: July 31, 2010, 06:45:23 pm »


               Are there any downsides to using a script that uses the database to do this? Any lag or bad stuff from too much being stored? 
               
               

               
            

Legacy_TSMDude

  • Hero Member
  • *****
  • Posts: 1515
  • Karma: +0/-0
Persistant Storage Containers
« Reply #1 on: July 31, 2010, 06:51:13 pm »


               Depends on the system and the way you implment it. There are numerous systems and some are alot better than the other ones. OldManWhistler's is the oldest I think and was pretty good though there was some things that coudl go wrong with it here and there. Markshire's had a exploit I think they found it though. I still prefer Scarfaces myself and limiting it to a certain amount of items.



Most of the ones I mentioned here have pretty good read me's as well.
               
               

               
            

Legacy_Jenna WSI

  • Hero Member
  • *****
  • Posts: 1837
  • Karma: +0/-0
Persistant Storage Containers
« Reply #2 on: July 31, 2010, 06:55:37 pm »


               Hunter's housing, if you're familiar with it. I don't have to give them persistent containers, I can limit it to housing. I don't mind though, if there's no downside to it.
               
               

               
            

Legacy_Genisys

  • Hero Member
  • *****
  • Posts: 961
  • Karma: +0/-0
Persistant Storage Containers
« Reply #3 on: July 31, 2010, 07:56:30 pm »


               Scarface's Persistent Banking is consistent, non-exploitable, and I've been using it for years..
               
               

               
            

Legacy_Jenna WSI

  • Hero Member
  • *****
  • Posts: 1837
  • Karma: +0/-0
Persistant Storage Containers
« Reply #4 on: July 31, 2010, 08:51:00 pm »


               I don't want to use a different system, I want to know if the one I already have installed for housing, that happens to include persistent storage, would cause any issues to use.
               
               

               
            

Legacy_GhostOfGod

  • Hero Member
  • *****
  • Posts: 1490
  • Karma: +0/-0
Persistant Storage Containers
« Reply #5 on: August 01, 2010, 04:20:15 am »


               

Depends on the system and the way you impliment it.


Pretty much what TSMDude said in the first line there. Some persistent storage is buggy, laggy, exploitable and can cause problems. Some work very smoothly without any hiccups. Totally depends on how that housing system implemented it. Everyone here pointed to Scarface's because it is a good, reliable, persistent storage system. Best bet is perhaps to give the scripts from that system a good looking over and compare what the housing system is doing with it's persistent storage.

Good Luck.
               
               

               


                     Modifié par GhostOfGod, 01 août 2010 - 03:21 .
                     
                  


            

Legacy_TSMDude

  • Hero Member
  • *****
  • Posts: 1515
  • Karma: +0/-0
Persistant Storage Containers
« Reply #6 on: August 01, 2010, 04:37:08 am »


               It would depend. Is there an exploit in Hunters? I know there was awhile back with duping and some people loss some items once in awhile. Also when you have a mass of houses in the database it can cause lag.

Yet it is not a bad system. It is actually a nice system. All of them are not bad but Scarfaces just works a bit better.



I have not used Hunters though in a long time so really cannot answer but will look at it if you need me to.
               
               

               
            

Legacy_Jenna WSI

  • Hero Member
  • *****
  • Posts: 1837
  • Karma: +0/-0
Persistant Storage Containers
« Reply #7 on: August 01, 2010, 05:07:38 am »


               Thanks for the offer. Might just stay away from persistant containers though, I hadn't planned to use them they just appeared to work as a part of the system. Rather not have people using exploits and I have too many projects atm to really test it well. If you wanted to look it over, TSM.. that'd be great, it's not essential for us but if you want to do it, it's not a bad feature to have.
               
               

               
            

Legacy_Shadooow

  • Hero Member
  • *****
  • Posts: 7698
  • Karma: +0/-0
Persistant Storage Containers
« Reply #8 on: August 01, 2010, 07:27:37 am »


               

TSMDude wrote...

It would depend. Is there an exploit in Hunters?

I bet there is, I was able to e*ploit each system PW I was once playing tried. Locking containers won't help. Also if the storage system stores resref, thats e*ploit itself. But I would not worry about cheaters, I guess most known bugs are fixed there so chance that someone find the way is very limited.
               
               

               
            

Legacy_Sharona Curves

  • Full Member
  • ***
  • Posts: 115
  • Karma: +0/-0
Persistant Storage Containers
« Reply #9 on: August 02, 2010, 01:06:30 am »


               At Eternal Destiny we use several variations of persistent storage containers depending on the specific needs of our players.
 
Some examples are:
 
PC Specific - a container that stores items persistently only for a specific PC and is otherwise empty for everyone else.

Player Specific - a container that stores items persistently for all PCs of a specific player allowing transfer of items securely between their PCs.

Non-Specific - a container that stores items persistently for all to have access to.
 
Examples of our Non-Specific Scriptset

OnOpen:

/*/////////////////////////////////////
//  Persistent Storage
//  Non-Specific
//  OnOpen Event
//  Sharona Curves
//  06/17/2007
//
/////////////////////////////////////*/
void main()
{
     if(GetLocalInt(OBJECT_SELF, "DoOnce") == 1)
        return;

    SetLocalInt(OBJECT_SELF, "DoOnce", 1);
    string sTag = GetStringLeft(GetTag(OBJECT_SELF), 10);
    int cItems=0;
    int total = GetCampaignInt("EDChests", sTag+"_items");
    if(total == 0)
        return;
    sTag = GetTag(OBJECT_SELF) + "_0";
    object oItem = RetrieveCampaignObject("EDChests", sTag, GetLocation(OBJECT_SELF), OBJECT_SELF);
    while(GetIsObjectValid(oItem) && (cItems < total))
    {
        cItems++;
        sTag = GetTag(OBJECT_SELF) + "_" + IntToString(cItems);
        oItem = RetrieveCampaignObject("EDChests", sTag, GetLocation(OBJECT_SELF), OBJECT_SELF);
    }
}


OnClose:

/*/////////////////////////////////////
//  Persistent Storage
//  Non-Specific
//  OnClose Event
//  Sharona Curves
//  06/17/2007
//
/////////////////////////////////////*/
void main()
{
    string sTag = GetStringLeft(GetTag(OBJECT_SELF), 10);
    int cItems=0;
    object oItem = GetFirstItemInInventory();
    while(GetIsObjectValid(oItem))
    {
        if(GetHasInventory(oItem) == FALSE)
        {
            StoreCampaignObject("EDChests",sTag+"_"+IntToString(cItems),oItem);
            cItems++;
        }
        oItem = GetNextItemInInventory();
    }
    SetCampaignInt("EDChests",sTag+"_items",cItems);

    if(cItems == 0)
        DeleteCampaignVariable("EDChests",sTag+"_0");
}

               
               

               
            

Legacy_Shadooow

  • Hero Member
  • *****
  • Posts: 7698
  • Karma: +0/-0
Persistant Storage Containers
« Reply #10 on: August 02, 2010, 06:45:38 am »


               Wonder nobody didn't e*ploited your chest already. Never found chest to be bugged ? Like they was opened and could not be closed?
               
               

               


                     Modifié par ShaDoOoW, 02 août 2010 - 06:43 .
                     
                  


            

Legacy_Sharona Curves

  • Full Member
  • ***
  • Posts: 115
  • Karma: +0/-0
Persistant Storage Containers
« Reply #11 on: August 02, 2010, 10:34:26 pm »


               

ShaDoOoW wrote...

Wonder nobody didn't e*ploited your chest already. Never found chest to be bugged ? Like they was opened and could not be closed?

 
Nope.  We had one small issue with bags, but that was quickly mitigated.  Cheating by duping, monty hauling, fast XP gains, and much much more has been virtually eliminated from Eternal Destiny through player intervention, scripted nuiances, and just plain server support for alot of what other servers consider as cheating. (twinking, muling, gifting, etc.)
 
We've never seen any chest that wouldn't close on its own or found any bugs that would cause duping and such.  It's a simple system that works effectively as a persistent storage container set of scripts.
               
               

               
            

Legacy_ElgarL

  • Full Member
  • ***
  • Posts: 128
  • Karma: +0/-0
Persistant Storage Containers
« Reply #12 on: August 05, 2010, 02:16:42 pm »


               I played around with Hunters Housing. I rewrote much of it and found no bugs available to exploit. There is mention in a few of the scripts that disallowing cerain things due to the possibility of exploiting, but I found no actual evidence of any exploit.
               
               

               
            

Legacy_Lightfoot8

  • Hero Member
  • *****
  • Posts: 4797
  • Karma: +0/-0
Persistant Storage Containers
« Reply #13 on: August 05, 2010, 10:10:14 pm »


               The only exploit with Hunters Housing storage, If i remember right, Is if the PC is still in the house when a Server reset happens.  If the PC's know when a reset is going to happen they can use it to duplicate there items.  It has been awhile and i dont remember the method, but i used the bug at one time to doup several things.  The fix would be to make sure all PC's are exported/saved befor resets  or that they are not in there houses.
               
               

               
            

Legacy_Thrym of Markshire

  • Newbie
  • *
  • Posts: 14
  • Karma: +0/-0
Persistant Storage Containers
« Reply #14 on: August 24, 2010, 09:23:02 am »


               Markshire's Portable Persistent Chest System does something that few other systems can ... stores custom items (DM crafted and not on the palette), stores stacks, containers with contents and of course, much more then a placeable chest.

We're currently building Markshire 2.0 for NWN1 so if there are suggestions and what not, please feel free to post them on the Vault or on our Website.  At this time we're still in the area building stage so I won't get to updating the system (which I have a few things I plan to do) for a bit.  If someone has a bug, please, let me know.  I have a large can of RAID for just that sort of thing.

Coming soon from Markshire, FX Points ... placeable Special Effects made easy.  Just drop them in your module or even from the Creator for on the fly fun.  Version 1.0 will have close to 20 preset FX Points.  And we've made it easy to add your own.  Stop by and see them in our persistent world ... 24/7.  If you want a tour of our world, you know, see the sites that a 1st level PC can't ... just ping me and we'll arrange something.