Register to post in forums, or Log in to your existing account
 

Play RetroMUD
Post new topic  Reply to topic     Home » Forums » CMUD General Discussion
Talahaski
Enchanter


Joined: 10 Oct 2000
Posts: 656
Location: USA

PostPosted: Thu May 01, 2008 10:45 pm   

mapper - follow mode, highlight changes
 
Is there any way when walking in follow mode and entering a room, to compare the room to the information the map database has stored and display any differences.

For example if a new exit gets added to a room or the description gets changed slightly (some object was added to the room description). It would be awesome to echo what is different to another window, then I can decide if I want to explore whatever is new. After exploring the new stuff, I would then want to update the room information in the mapper. But If I decide not to explore the new stuff today, I would NOT want to update the map information yet. Instead perhaps just change the room color or do something to flag the room as having changed. that way I can investigate another time.
_________________
Talahaski


dartmud.com 2525
Reply with quote
chris-74269
Magician


Joined: 23 Nov 2004
Posts: 364

PostPosted: Fri May 02, 2008 1:43 am   
 
Quote:

roomload

Syntax: %roomload(vNum,value)

Return or set the Reload flag of the room to value. Three different values can be reloaded: Name, Description, Exitinfo. Use a value with bit 1 assigned to name, bit 2 assigned to description, and bit 3 assigned to exit. So, a value of 7 (all three bits set) will set all three flags. If vNum is omitted, the current room is used.

roomload Example:

#CALL %roomload(,2)
tells the mapper to reload the description text from the MUD the next time you enter the current room.
Reply with quote
Rahab
Wizard


Joined: 22 Mar 2007
Posts: 2320

PostPosted: Fri May 02, 2008 1:14 pm   
 
Chris-74269's solution would actually update the new map information rather than point out discrepancies.

I have a partial solution, but it requires the ability to recognize and trigger on all room descriptions. I have a trigger that grabs room descriptions for certain types of rooms so that I can remove variable parts of the description (illumination and similar things) and #TAG the result for the mapper. As an afterthought, I store the modified description in a variable @description. I also have an event onRoomEnter:
Code:

#if (@description != %roomdesc) {#say Room Description Has Changed~!}


Something similar would work for you, but you'd have to somehow grab and store all of the room elements you want to check. Talahaski, I suggest triggering on the illumination phrase in the description, if you can. You should be able to grab the exit list easily enough, too, but comparing it to %roomexit will be tricky, due to non-compass exit names. You'll also have the problem of exits marked in the map which don't show in the exit list from the mud, such as exits implied in the description. But at least that is not a case of new things which aren't on the map yet.
Reply with quote
Anaristos
Sorcerer


Joined: 17 Jul 2007
Posts: 821
Location: California

PostPosted: Fri May 02, 2008 11:47 pm   
 
You can check and/or manipulate the non-standard exits as follows:
Code:

....
  #FORALL  %roomexit( $vnum) {
    $room = %roomlink( $vnum, %i)
    #IF (%null( $room)) {$room = %item( %roomportal( $vnum, %i), 2)}
    ....
    }
....

Or something like it.
_________________
Sic itur ad astra.
Reply with quote
Talahaski
Enchanter


Joined: 10 Oct 2000
Posts: 656
Location: USA

PostPosted: Sun May 04, 2008 3:48 pm   
 
Perhaps this would be better suited as a enhancements to the mapper by adding a new mode of travel.

Maping with update as exists today
Mapping without updating, highlight differences for existing rooms, map new rooms
Follow mode - as exists today

I'm not sure I can grab the descriptions myself, that would take some amount of work. When your mapping, are you always using follow mode then, and manually adding rooms? how are you sending the description information to the mapper for a new room.
_________________
Talahaski


dartmud.com 2525
Reply with quote
Fang Xianfu
GURU


Joined: 26 Jan 2004
Posts: 5155
Location: United Kingdom

PostPosted: Sun May 04, 2008 5:10 pm   
 
Perhaps it'd be simpler to remove the three modes altogether and change them into three toggleable options: Following, Updating and Creating. With following off, the mapper won't parse any text and won't move, create or update. With following on but the other two off, it'll follow but not update, like the current follow mode. With update mode on, it'll update rooms that already exist if they're different. With creation on, it'll create new rooms but won't overwrite them.

Also quite nice would be if, when you have update and create on, instead of creating a new room when the room you enter is different (which is the current behaviour), it'd update the old room instead. With both on, it'd only create new rooms when you followed an unlinked exit.
_________________
Rorso's syntax colouriser.

- Happy bunny is happy! (1/25)
Reply with quote
Rahab
Wizard


Joined: 22 Mar 2007
Posts: 2320

PostPosted: Mon May 05, 2008 1:54 pm   
 
That's an interesting idea.

As for mapping, Talahaski, I do have mapping mode turned on when I map. I trigger on the illumination phrase (which is in every room description in Dartmud), massage the description to pull out the variable parts, and use #TAG to send the description to the mapper. So far I've only done this for a limited set of variable phrases which appear in certain rooms, so I can't use auto mapping for the entire world yet. This discussion has inspired me to work on it some more (though I seem to be having some trouble with psub now).
Reply with quote
Fang Xianfu
GURU


Joined: 26 Jan 2004
Posts: 5155
Location: United Kingdom

PostPosted: Mon May 05, 2008 2:59 pm   
 
Eh, a much easier solution to variable descriptions is to just not use the description. There're very few instances on most muds where knowing the description of a room is useful.
_________________
Rorso's syntax colouriser.

- Happy bunny is happy! (1/25)
Reply with quote
Rahab
Wizard


Joined: 22 Mar 2007
Posts: 2320

PostPosted: Mon May 05, 2008 3:13 pm   
 
In the case of Dartmud, it is actually useful. For instance, there is a maze area, where the room names are all similar, but the descriptions are more useful. In addition, you can scry for people, but you only get a room description, not a room name.
Reply with quote
Display posts from previous:   
Post new topic   Reply to topic     Home » Forums » CMUD General Discussion All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

© 2009 Zugg Software. Hosted by Wolfpaw.net