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

Play RetroMUD
Post new topic  Reply to topic     Home » Forums » zMUD General Discussion
chris74269
Novice


Joined: 26 Mar 2003
Posts: 40

PostPosted: Fri Jun 04, 2004 7:06 pm   

exit stubs
 
is there anyway to make zmud print out a list of rooms with exits that aren't connected?
Reply with quote
Vijilante
SubAdmin


Joined: 18 Nov 2001
Posts: 5182

PostPosted: Fri Jun 04, 2004 10:45 pm   
 
I put my unfinished scan directly into my map database as an SQL query. This is what I use.

SELECT ExitTbl.ExitId, ExitTbl.ToID, ExitTbl.FromID, ObjectTbl.Name, DirTbl.DirName, ZoneTbl.Name
FROM ((ObjectTbl RIGHT JOIN ExitTbl ON ObjectTbl.ObjId = ExitTbl.FromID) LEFT JOIN ZoneTbl ON ObjectTbl.ZoneID = ZoneTbl.ZoneId) LEFT JOIN DirTbl ON ExitTbl.DirType = (DirTbl.DirId-1)
WHERE (((ExitTbl.ToID)=(ExitTbl.FromID)));

I am of course using Access to display it. If you wish to do it directly in zMud you search the forums for methods to access the map directly, and you can tweak down the SQL string. Currently it displays ZoneName, RoomName, and Direction of stub; very helpful when your looking for that exit. I think it still eroniously reports one way links as stubs. I can't recall whether I fixed that or not, but believe I did.

There are also other script solutions to this problem if you have no interest in implementing the above. Simply post again and I will be happy to provide more methods.
Reply with quote
chris74269
Novice


Joined: 26 Mar 2003
Posts: 40

PostPosted: Sun Jun 06, 2004 8:08 pm   
 
yeah, i would like to do it from within zmud. Does anyone have a method, or could you post alternatives vigilante?
Reply with quote
Vijilante
SubAdmin


Joined: 18 Nov 2001
Posts: 5182

PostPosted: Mon Jun 07, 2004 11:36 pm   
 
I still prefer the Access based query it is fast and gives lots of data. I tried rather futiley, for a few hours last night, to convert it into a series of COM calls that could provide any useful output. Time to fall back and punt, a really old script that I used to use is:

quote:
#CLASS {UnfinishedScan}
#ALIAS uscan {UScanCount=0;UScanResults="";#T+ MapScanStat status;#WHILE (@UScanCount<%numrooms) {#ADD UScanCount 1;#FORALL %roomexit(%mapvnum(@UScanCount)) { #IF (%i) { #IF (%roomlink(%mapvnum(@UScanCount),%i)=-2) { #ADDITEM UScanResults {%mapvnum(@UScanCount)}}}}};#T- MapScanStat status}
#VAR UScanCount {0} {0}
#VAR UScanResults {}
#STAT {MapScan: %eval(@UScanCount*100/%numrooms)~%} "" "MapScanStat"
#CLASS 0
#T- MapScanStat status

It leaves all the room numbers in @UScanResults.

This too was nicely published a long time ago in the forums. It should work still with the current version but I am preforming no testing on it.

Charbal seems to be the real expert on the map DB and COM around here. Perhaps he will pipe up and provide a nice way to integrate the query into zScript, I know I would appreciate it.
Reply with quote
chris74269
Novice


Joined: 26 Mar 2003
Posts: 40

PostPosted: Tue Jun 08, 2004 11:47 pm   
 
thanks a lot vijilante, that script rocks, was exactly what i wanted, and btw, do you mean microsoft access?
Reply with quote
Display posts from previous:   
Post new topic   Reply to topic     Home » Forums » zMUD 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