Problems with aassign/savearea and vnum ranges

Posted by Toad on Sat 17 Jan 2004 03:20 AM — 7 posts, 27,483 views.

#0
Anyway I figured out through trial and error that my aassign/savearea isnt saving rooms/zones. Yet foldarea is. So half my olc problem is solved. Next question for you guys. Is there anyway to save the mobs/objects, besides doing what I am now? Any help would be appreciated. I checked the boards but couldn't find anything referring to this. Anyway thanks again.
Amended on Sat 17 Jan 2004 03:21 AM by Toad
Australia Forum Administrator #1
According to the online help, you should aassign area-name, make your changes then:

aassign none
foldarea (name)

What is wrong with doing that? It seemed to work OK for me.
#2
Ok here's what i did:


test.are is the area file.

I assigned the vnum ranges 25000-25050 for rooms, obj, mobs.

aassign test.are
mcreate 25000 Doug from R&D
aassign none
foldarea test.are

reboot mud now

Startup mud

minvoke doug

Log: Abel: minvoke doug
No such mobile exists.



Sorry to be such a newb. I am a ANSI/PL SQL programmer by trade, not a c programmer. Also I have played muds for years but this is the first time running/creating one. Anyway any help you can give is once again very much appreciated.

Thanks,

Todd
Australia Forum Administrator #3
In your area folder is a file called area.lst. The area file name needs to be inside that. Is it?
#4
Yeah it's in there. I have tested on many areas, and none save objects or mobiles.
Australia Forum Administrator #5
OK, I see the problem. I got your example to work with a few extras. :)

Type "help massign" and you see this:


help massign
RASSIGN MASSIGN OASSIGN
Syntax: rassign
        oassign 
        massign

> Steps for creating a new area from scratch;
> 1. checkvnum rooms   low_vnum hi_vnum
>    checkvnum objects low_vnum hi_vnum
>    checkvnum mobs    low_vnum hi_vnum
>     (make sure the vnums don't overlap another area)
> 2. rassign (person) low_vnum hi_vnum
>    massign (person) low_vnum hi_vnum
>    oassign (person) low_vnum hi_vnum
> 3. mset (person) aloaded yes
> 4. goto low_vnum
>    goto hi_vnum
> 5. savea
> 6. save
> 
> This should create a new area listed as '{PROTO} (Person)'s area in
> progress', with the file name '(person).are' and it should load up after
> rebooting the MUD with 'loadarea' or 'loadarea (person).are' if it's not
> your area.
NEVER do this to someone who has an area assigned to them. This would
change the range for the area they have assigned and wipe out the area.


The problem with your example as given is that it doesn't know your mob is in your area.

If you type "zones" you see this:


zones
test.are       | Rooms:     0 - 0     Objs:     0 - 0     Mobs:     0 - 0    


So, when you save the area, it only saves mobs in the vnum range 0 to 0. Thus your mob isn't saved.

You need the commands:


rassign self 25000 25050
massign self 25000 25050
oassign self 25000 25050


Then when you type "zones" you should see:


zones
test.are       | Rooms: 25000 - 25050 Objs: 25000 - 25050 Mobs: 25000 - 25050


Then, folding the area saves the mobs, etc.
#6
Thanks a lot Nick, you were a big help. Much appreciated.