Within mud.h,in mob_Index data, around or between:

    MPROG_DATA *	mudprogs;
    EXT_BV		progtypes;


Add:

    AREA_DATA *		area; // The concept smaug forgot

in obj_Index data, Between:


    MPROG_DATA *	mudprogs;
    EXT_BV		progtypes;


Add:


    AREA_DATA *		area; // The concept smaug forgot




Next, into db.c

in: load_mobiles

After:

	pMobIndex->vnum			= vnum;

Add

	pMobIndex->area			= tarea;



in: load_objects

After:

	pObjIndex->vnum			= vnum;

Add:

	pObjIndex->area			= tarea;




In build.c

do_mcreate

After:

    pMobIndex = make_mobile( vnum, cvnum, argument );

Add:

    pMobIndex->area = ch->pcdata->area;


do_ocreate

After:

    pObjIndex = make_object( vnum, cvnum, argument );

Add:

    pObjIndex->area = ch->pcdata->area;


Finally:


act_wiz.c

do_mstat
Add in a line such as this wherever you want:

    if (IS_NPC(victim))
     ch_printf( ch, "&cArea: &w%s\n\r", victim->pIndexData->area->name );


do_ostat
Add in a line such as this wherever you want:

    ch_printf( ch, "&cArea: &w%s\n\r", obj->pIndexData->area->name );