PlaneShift
Support => Technical Help: IN GAME bugs (after loading world) => Topic started by: ThomPhoenix on October 02, 2006, 08:43:16 pm
-
You all know that bug, you're crafting happily and then BAM! the server goes down.
You relogin, and you see that your precious items are gone!
Well, Nunelor asked me if I could try to fix that.
My knowledge of C++/SQL is almost zero, but hey, I could always try :P
So I searched the code to see if I could find the part that loads & saves the containers.
I found nothing usefull really, or I just didn't recognize the code, but I did found this line related to the loading of containers.
So I showed it to Nunelor and he pointed out that the line was trying to load container objects from a non-existant column in the database table.
Nunelor showed me how to correct this typo in the code and I rebuilt my server.
I tested it and the items within containers are now loaded correctly upon server startup, that means that items you put in a forge/oven before a server shutdown/crash will be saved now and restored after server reboot. I put the fix in a bugtracker entry right here (http://www.hydlaa.com/bugtracker/bug.php?op=show&bugid=2101&pos=12). That means that on the next server rebuild, this fix will be in hopefully.
Let's all thank Nunelor;)
edit:
Fixed, server updated and restarted.
--Acraig
-
\\o// Great work guys!
BTW: Why isn't this fix mentioned in the CVS-History?
-
Because it wasn't applied yet, we just found it :P
edit:
Damn that Acraig's fast, he's already applied it and restarted the server ::|
:thumbup:
-
Will commit it when I get home. It was fixed on the server because it was easy to fix but we don't make a habbit of committing stuff from the main server.
-
You mean you normally don't commit stuff to Laanx first and then CVS?
edit:
Okay, this little fix has some bad/good, but expected, effects.
It's like this:
For ages, everything you put in the ovens/forges was saved into the database after a crash/shutdown of the server, but it was never reloaded, so the items disappeared, they were in the DB though. Now we fixed the bug, so items get reloaded, that basically means that after the latest crash the forge/oven got 100000 items loaded into it. Someone probably needs to cleanse the forge/oven from it's items, GM's can't do that. We don't know the exact effects of this side-effect, but we currently think the system has a timer built-in that once every X minute checks for unloaded items, so once every X minutes the forge/oven gets filled again. If you see the forge/oven is filled, just tell the player who owns an item (right-click for the name) that his/her item is back and he/she needs to remove it.
People: take advantage from this, your long-lost items can appear in the forge/oven now!
-
As an update, the server currently loads lost items to the empty slots in the forge, furnace, stock caster, smith's table, quench tank, etc after a reboot or crash. Due to the number of items already saved by the server, there is still no guarantee what order they load in. In other words, if a crash occurs while you are crafting an item, the item may or may not load back into the game right away.
-
Update:
Magodra added the ability for GM"s to remove player owned items in public containers
So they can help keep the forge/furnace clean :)
-
I saw it was added too, in the CVS-history
But i still have received no information about it yet.
Atm i see no changes ingame for the GM's.
It could be that the command is added somewhere in our regular commands
or it could be that teh server needs to be rebooted first, to run the update.
So all i can do for now is wait and hope we get more information quickly. :)
-
Yesterday I saw a GM standing by Harniquist for a while though. Don't know what they were doing but I assume it is this.
-
Eh... don't mean to sound like a grandma :) but acraig please don't forget to make the changes to that piece of code in the public cvs version too.
-
I saw Magodra ingame too, yesterday.
Magodra is not a GM, but a Developer.
All Developers show up in the GM-guild too, ingame as GM8
This is the way, to be able to talk with the developers and see them, when they are around.
Normal GM's are not standing visible ingame for a long time at same spot.
Also the Developers are using red names, instead of dark green/yellow names.
-
For the change to take effect the server will need to be updated & rebooted.
Another issue here is that there is no timer that makes your items public after X minutes, so GM's have to manually remove them.
But Nunelor is working on that right now!
edit:
Nunelor got spammed in-game by users who figured "Hey, that guy coded on the crafting system a bit, he must know how to craft".
Nunelor's response:
"Contrary to popular demand, I firmly believe in roleplay. Sending me tells asking for answers is not roleplay. Have a nice day."
So please DO NOT /tell him in-game.
-
Hi, I lost items from furnace during server crash. This thread identifies the problem as fixed, is it? The server crashed while item was in the furnace, upon reboot, I spawned far from the furnace, when I got there item was gone :o. If problem was fixed, what could have happened? Thanks in advance.
-
Someone could have taken it out, in case he/she relogged quicker than you. Last I checked, the guarding system didn't work after a server restart.
-
When you go off-line your items should be kept for half a minute, I think. The problem here might also be that the user spawned far away from the furnace. When you go far away your items also become public. Perhaps something can be done.
-
Half a minute isn't even enough for me to load the client, let alone log in and load the world too :P
-
Scratch what I said, there is no "safe time" at all :P/me reports