My objects, mobs, and all my programs disappear.

Posted by Zamnedix on Fri 08 Jun 2007 10:49 PM — 17 posts, 72,862 views.

#0
For some reason, whenever I shutdown the MUD, all my mobs and objects disappear. They aren't there anymore. Example:
((I created an object called 'chocolate chip cookie' vnum 1000 in room vnum 21482))
<hp 30000 mana 30000 mv 30000>shutdown mud now
MUD Shutdown by System Operator
((login again))
<hp 30000 mana 30000 mv 30000>goto 21482
Object Creation Room
You are in Zamnedix's private object creation & testing room.
Exits:None.
((Notice no objects? The cookie was there before.))
<hp 30000 mana 30000 mv 30000>ofind 1000
No object has that vnum.


The same thing happened with one of my mobs.
But my areas are always the same. If I create an area or edit one, they stay. But the objects and mobs don't. I added resets too.
Can someone please help me?
USA #1
Did you make sure to savearea or foldarea?

Also, try invoking the item. Make sure there is a reset so it stays in that room.
#2
I did all those.
USA #3
What are you using? Cygwin?

After you save it, before shutting down, is the item still in the area file? And after you shut down, is the item in the area file?

Can you show us the resets?
Amended on Fri 08 Jun 2007 11:55 PM by Zeno
Brazil #4
But how the cookie was there in the first time? I mean, the first time is just after you saved the area? After that the area file have no cookie?
Australia Forum Administrator #5
The first time, it is in memory. You need to convince it to write that memory to the area file.
#6
Agh. Ok.
I'm using PuTTY on WinXP home version
My version of SMAUG is 1.4 alpha.
Commands I typed:
{
goto 21482
ocr 1000 chocolate chip chocolate-chip cookie
oset cookie on
type food
long A delicious-looking chocolate-chip cookie is here.
short A chocolate-chip cookie
done
opedit cookie add use 100
> mpecho There is a flash of light, and $n is gone.
> mptransfer $n 21489
drop cookie
reset add obj 1000 21482 1
shutdown mud now
}
Re login and cookie is gone. Same thing happened with a mob.
And, Nick, how do I convince it to write that memory to the area file?
USA #7
You said you did a savearea and foldarea, but in that log you just posted you did nothing of that sort.
#8
I forgot to put that in, sorry.
USA #9
What's the vnum range you've got assigned to yourself?

You're doing a goto command to room 21482, but then creating a cookie object out of number 1000. There's a strong chance that 1000 is outside of your assigned range. If 1000 is outside of your assigned area, then it will not get written with your file data when it's saved.

The fold_area function starts at your first vnum and runs in sequence to your last vnum, saving only things within that range to the area file. fold_area is called by both the foldarea command and the savearea command.
#10
I'm the 'supreme entity' of my mud, and I own the server.
Do I still have to assign stuff to myself?
USA #11
In a word: Yup. :-)
#12
I type:aassign newdark.are self
this is what happens with the zones command:
{
<30100hp 30025m 29950mv> zones
Log: zamnedix: zones
limbo.are | Rooms: 1 - 43 Objs: 2 - 99 Mobs: 1 - 99
newgate.are | Rooms: 100 - 199 Objs: 100 - 199 Mobs: 100 - 199
astral.are | Rooms: 800 - 899 Objs: 800 - 899 Mobs: 800 - 899
gods.are | Rooms: 1200 - 1201 Objs: 1200 - 1200 Mobs: 1200 - 1200
srefuge.are | Rooms: 1500 - 1599 Objs: 1500 - 1599 Mobs: 1500 - 1599
pixie.are | Rooms: 2070 - 2099 Objs: 2070 - 2076 Mobs: 2070 - 2073
unholy.are | Rooms: 2101 - 2172 Objs: 2101 - 2150 Mobs: 2101 - 2120
manor.are | Rooms: 2400 - 2499 Objs: 2400 - 2499 Mobs: 2405 - 2484
chapel.are | Rooms: 3405 - 3475 Objs: 3400 - 3430 Mobs: 3400 - 3416
midennir.are | Rooms: 3500 - 3590 Objs: 3500 - 3550 Mobs: 3500 - 3550
grave.are | Rooms: 3600 - 3651 Objs: 3600 - 3613 Mobs: 3600 - 3605
haon.are | Rooms: 6000 - 6156 Objs: 6000 - 6155 Mobs: 6000 - 6117
dwarven.are | Rooms: 6500 - 6554 Objs: 6502 - 6519 Mobs: 6500 - 6517
daycare.are | Rooms: 6601 - 6651 Objs: 6600 - 6647 Mobs: 6600 - 6610
sewer.are | Rooms: 7001 - 7445 Objs: 7190 - 7310 Mobs: 7000 - 7206
redferne.are | Rooms: 7900 - 7918 Objs: 7909 - 7911 Mobs: 7900 - 7900
grove.are | Rooms: 8901 - 8999 Objs: 8900 - 8919 Mobs: 8900 - 8911
Build.are | Rooms: 9500 - 9589 Objs: 0 - 0 Mobs: 0 - 0
export.are | Rooms: 9810 - 9899 Objs: 9810 - 9899 Mobs: 9800 - 9899
newacad.are | Rooms: 10300 - 10499 Objs: 10300 - 10499 Mobs: 10300 - 10499
newdark.are | Rooms: 21000 - 21499 Objs: 21000 - 21435 Mobs: 21000 - 21499
Areas listed: 21 Loaded: 21
}
Should I make my objects 21000 - 21499 and my mobs 21000 - 21499?
Amended on Sat 09 Jun 2007 06:13 PM by Zamnedix
USA #13
Yes. You were trying to make the vnum of the cookie 1000. There is no area with those vnums. That is why it wasn't saving. You need to put it in a valid area.
#14
Ah. Thankyou.
USA #15
in case you're still monitoring this thread, you generally do not want to create a reset in one area for an item assigned to a different area. so even if vnum 1000 did exist, you would not add a reset in newdark.are for vnum 1000. the only way to do this would be to rewrite the startup procedure and change it so that all areas are initially reset after every area has been loaded first.
USA #16
The startup procedure already does that. Resets are not fired off for the first time until all of the areas are loaded. Your logs will still fill up with messages about bad objects and such if you reset stuff from different areas that haven't loaded yet but it's not actually a big deal.

The problem here is creating things outside of the vnum range of the area in question. Regardless of if the vnum ended up in a proper area or not, it will not save if it's outside the range of the area you're trying to do savearea on.