Register forum user name Search FAQ

Gammon Forum

Notice: Any messages purporting to come from this site telling you that your password has expired, or that you need to "verify" your details, making threats, or asking for money, are spam. We do not email users with any such messages. If you have lost your password you can obtain a new one by using the password reset link.
 Entire forum ➜ MUSHclient ➜ Plugins ➜ MUSHclient generic graphical mapper module

MUSHclient generic graphical mapper module

It is now over 60 days since the last post. This thread is closed.     Refresh page


Pages: 1  2  3  4  5 6  7  8  9  10  11  12  13  14  15  16  17  

Posted by Twisol   USA  (2,257 posts)  Bio
Date Reply #60 on Sat 20 Mar 2010 01:49 AM (UTC)
Message
Nick Gammon said:

Larkin said:

I can't figure out the exits from my room or a path from point A to point B. I think I'll be working on the exit length thing, if I manage to figure out how to merge bits of my renderer with yours.


Left- click on point B and it will path you there.


I think it's more an issue of figuring out which room to click on, honestly.

'Soludra' on Achaea

Blog: http://jonathan.com/
GitHub: http://github.com/Twisol
Top

Posted by Larkin   (278 posts)  Bio
Date Reply #61 on Sat 20 Mar 2010 01:53 AM (UTC)
Message
Nick Gammon said:

Left- click on point B and it will path you there.


I was in/near a room with northwest, southeast, up, and down exits, which made finding the neighboring rooms a real challenge. That's part of what I'm getting at, I guess.

Maybe the coordinates, especially Z, can help with this. I haven't looked closely enough to see if the X and Y are simply relative or if they're absolute, as in constant exit length versus variable exit length.


I don't see a single environment anywhere in the Lusternia map, at least not the current version available on the site.
Top

Posted by Nick Gammon   Australia  (23,072 posts)  Bio   Forum Administrator
Date Reply #62 on Sat 20 Mar 2010 02:05 AM (UTC)
Message
Larkin said:

Testing it out, I am very disoriented by the layout of the map ...


Is it because you are used to a different layout, or is there a more fundamental problem?

I note with interest that earlier today when I was playing with the Aardwolf implementation, it *can* get confusing you have have "show all areas" turned on. This is because in their case the outside areas are a different scale to the inside ones, and thus things just illogically appear everywhere. However with only one area visible it looks a lot better.

Maybe we need to do the same with the Z axis? ie. Not show rooms where you have to go up or down to get to them.

This makes quite a bit of sense, because if you are in the middle of town, you can normally see far off to the distance north, south, east, and west, but you can't see the contents of a cellar which might be quite close to you, but underground.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
Top

Posted by Twisol   USA  (2,257 posts)  Bio
Date Reply #63 on Sat 20 Mar 2010 02:07 AM (UTC)
Message
Nick Gammon said:
Maybe we need to do the same with the Z axis? ie. Not show rooms where you have to go up or down to get to them.


This is partly what I suggested before, about being able to change exits so they went up/down a "level" and weren't rendered. I'd be all for this.

'Soludra' on Achaea

Blog: http://jonathan.com/
GitHub: http://github.com/Twisol
Top

Posted by Nick Gammon   Australia  (23,072 posts)  Bio   Forum Administrator
Date Reply #64 on Sat 20 Mar 2010 02:17 AM (UTC)
Message
I have pushed the changes to mapper.lua and ATCP_Mapper.xml to GitHub. These let you choose whether or not to see other "levels" than your current one.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
Top

Posted by Larkin   (278 posts)  Bio
Date Reply #65 on Wed 24 Mar 2010 02:59 PM (UTC)
Message
I've had a chance to mess around with this a bit more recently, and though I'm not "done" with it yet, I thought I'd share a few comments.

The "find" functionality only searches for nearby rooms, which means you can't easily look up rooms in other areas and you can't find rooms while offline. I feel like there should be a 'mapper nearby (wildcard)' and a more general 'mapper find (wildcard)' to keep them separate and both useful at the same time.

The ATCP mapper updates when you see into rooms other than your own, such as a GLANCE, OBSERVE, SCRY, etc. Not a big deal, but thought it worth noting as it goofs up the map display and could affect someone actively mapping out an area.

That said, I've always found it very useful to be able to render the map for an arbitrary room, just to get a picture of where someone or something is located before I jump in. Maybe an alias for that?

It's also nice to have an alias that shows you the room info for an arbitrary room, listing the environment, exits to whichever rooms, and anything else that might be stored. I know the map does that with mouseover tooltips, but an alias might still be useful. Easy for someone like to me to implement, anyway, so not a big deal.

I've found it helpful to compute a path to a certain room without actually starting along that path right away. Sometimes you want to go at your own pace, but you'd like to know how to get from A to B.


I'm trying to convince IRE to add more details to their XML map format, so we can hopefully improve the map display with things like special exits and exit lengths.

When I get a larger chunk of free time, I also want to investigate drawing the rooms at the pre-determined coordinates given in that XML file, to see if the exit lengths are necessary at all or if they can be done more on-the-fly after the rooms are placed where they belong.
Top

Posted by Twisol   USA  (2,257 posts)  Bio
Date Reply #66 on Wed 24 Mar 2010 04:32 PM (UTC)
Message
Larkin said:
When I get a larger chunk of free time, I also want to investigate drawing the rooms at the pre-determined coordinates given in that XML file, to see if the exit lengths are necessary at all or if they can be done more on-the-fly after the rooms are placed where they belong.

The maps emitted from the MAP command are generated on the fly based on those coordinates, I believe. Testing in Eleusis shows that rooms right next to eachother, with one '-' between them, change the coordinate by 1, while rooms with three -'s between them change the coordinate by 2. For the record, as a cartographer I always found it immensely easier to always use odd numbers of exits. Even numbers throw it out of whack. So this makes total sense to me.

'Soludra' on Achaea

Blog: http://jonathan.com/
GitHub: http://github.com/Twisol
Top

Posted by Nick Gammon   Australia  (23,072 posts)  Bio   Forum Administrator
Date Reply #67 on Wed 24 Mar 2010 08:41 PM (UTC)

Amended on Wed 24 Mar 2010 08:42 PM (UTC) by Nick Gammon

Message
Larkin said:

The "find" functionality only searches for nearby rooms, which means you can't easily look up rooms in other areas and you can't find rooms while offline. I feel like there should be a 'mapper nearby (wildcard)' and a more general 'mapper find (wildcard)' to keep them separate and both useful at the same time.


Well that is a straight database lookup. Already in the plugin is this:


  local rooms = {}
  local count = 0
  
  -- find matching rooms using FTS3
  for row in db:nrows(string.format ("SELECT uid, name FROM rooms_lookup WHERE rooms_lookup MATCH %s", 
             fixsql (wildcards [1]))) do
     rooms [row.uid] = true
     count = count + 1
  end   -- finding room


It uses that information to see if anything in the rooms array is nearby. To find things anywhere just display the resulting rooms and descriptions.

Larkin said:

The ATCP mapper updates when you see into rooms other than your own, such as a GLANCE, OBSERVE, SCRY, etc. Not a big deal, but thought it worth noting as it goofs up the map display and could affect someone actively mapping out an area.


Sounds like a bug if they are sending down room info without making it clear it isn't the room you are in.

Larkin said:

That said, I've always found it very useful to be able to render the map for an arbitrary room, just to get a picture of where someone or something is located before I jump in. Maybe an alias for that?


An alias that calls mapper.draw for any supplied room number would do that, certainly.

Larkin said:

It's also nice to have an alias that shows you the room info for an arbitrary room, listing the environment, exits to whichever rooms, and anything else that might be stored. I know the map does that with mouseover tooltips, but an alias might still be useful. Easy for someone like to me to implement, anyway, so not a big deal.


Again, a simple SELECT of the database would achieve that.

Larkin said:

I've found it helpful to compute a path to a certain room without actually starting along that path right away. Sometimes you want to go at your own pace, but you'd like to know how to get from A to B.


I initially displayed that, then took it out in favour of a hyperlink that "just does it". However if you call "build_speedwalk (path)" - that will return the speedwalk string.

Larkin said:

I'm trying to convince IRE to add more details to their XML map format, so we can hopefully improve the map display with things like special exits and exit lengths.


I think their current position is that the coordinates value (which is in the database) tells you how far rooms are from each other.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
Top

Posted by Larkin   (278 posts)  Bio
Date Reply #68 on Wed 24 Mar 2010 08:48 PM (UTC)
Message
Right! I figured it would all be simple enough to do, but I thought perhaps you'd want to update the base mapper with a few of this nice little things, too.

I'm going to work out the rendering of rooms at their designated coordinates eventually.

The special exits will still be a trick. I know plenty of MUDs have these sorts of exits (aka teleports), so it would be a general sort of thing, I think. My current mapper uses an alias to setup the next command as a special exit (to a room being created or a particular vnum), and that alias gets remembered and included in speedwalks.
Top

Posted by Nick Gammon   Australia  (23,072 posts)  Bio   Forum Administrator
Date Reply #69 on Wed 24 Mar 2010 09:41 PM (UTC)
Message
I admit my current mapper does not really address the issue of having to take special exits like teleports. I suppose I thought that was detail that could be worked out easily enough, once the base idea is bedded down.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
Top

Posted by Fiendish   USA  (2,533 posts)  Bio   Global Moderator
Date Reply #70 on Sat 03 Apr 2010 07:35 PM (UTC)
Message
Hmm. You have the ability to set arbitrary border thickness on room boxes, but none of the windowline drawing accounts for that. And the rounded ends on the exit lines visually muck up intersections for any that are wider than 1 pixel.

https://github.com/fiendish/aardwolfclientpackage
Top

Posted by Nick Gammon   Australia  (23,072 posts)  Bio   Forum Administrator
Date Reply #71 on Sat 03 Apr 2010 08:00 PM (UTC)
Message
The exit lines I noticed - well spotted - you are the first to comment.

I wasn't troubled too much, it can be fixed, and I think the simplest way would be to defer drawing the boxes until later so they get plonked on top of the exit lines.

It didn't happen initially until I started drawing thicker lines to show where you had been.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
Top

Posted by Fiendish   USA  (2,533 posts)  Bio   Global Moderator
Date Reply #72 on Sat 03 Apr 2010 08:26 PM (UTC)
Message
Also, what an odd close box. I think people might be more familiar with something like...

-- close box
WindowRectOp (win, 1, x + frame_width - box_size - GAP * 2, y + 1, x + frame_width - GAP * 2, y + 1 + box_size, 0x808080)
WindowLine (win, x + frame_width - box_size - GAP * 2 + 3, y+4, x + frame_width - GAP * 2 - 3, y - 2 + box_size, 0x808080, 0, 1)
WindowLine (win, x-4 + frame_width - GAP * 2, y+4, x-1 + frame_width - box_size - GAP * 2 + 3, y - 2 + box_size, 0x808080, 0, 1)

https://github.com/fiendish/aardwolfclientpackage
Top

Posted by Shadowfyr   USA  (1,788 posts)  Bio
Date Reply #73 on Sat 03 Apr 2010 09:37 PM (UTC)
Message
Hmm. Suppose you could put a sort of sparkly in the center of a room that has a teleport, or special exit, then another in the destination room (by sparkly, I mean something animated, so it stands out), and color them each something fairly unique. If you clicked on the room, or what ever you do to get more information on one, you just light up both the one in that room, and the destination. That way you could use colors to designate "type" of exit, and only to linked ones will "light up" when checking against the map (mouse over maybe, to show them?). Mind, you might have multiple "special exits", in which case.... cycle the colors and light ups, or something? Hmm.
Top

Posted by Nick Gammon   Australia  (23,072 posts)  Bio   Forum Administrator
Date Reply #74 on Sat 03 Apr 2010 11:43 PM (UTC)
Message
Fiendish said:

Also, what an odd close box. I think people might be more familiar with something like...

-- close box
WindowRectOp (win, 1, x + frame_width - box_size - GAP * 2, y + 1, x + frame_width - GAP * 2, y + 1 + box_size, 0x808080)
WindowLine (win, x + frame_width - box_size - GAP * 2 + 3, y+4, x + frame_width - GAP * 2 - 3, y - 2 + box_size, 0x808080, 0, 1)
WindowLine (win, x-4 + frame_width - GAP * 2, y+4, x-1 + frame_width - box_size - GAP * 2 + 3, y - 2 + box_size, 0x808080, 0, 1)


Yes, that looks better. Thanks, Fiendish.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
Top

The dates and times for posts above are shown in Universal Co-ordinated Time (UTC).

To show them in your local time you can join the forum, and then set the 'time correction' field in your profile to the number of hours difference between your location and UTC time.


748,809 views.

This is page 5, subject is 17 pages long:  [Previous page]  1  2  3  4  5 6  7  8  9  10  11  12  13  14  15  16  17  [Next page]

It is now over 60 days since the last post. This thread is closed.     Refresh page

Go to topic:           Search the forum


[Go to top] top

Information and images on this site are licensed under the Creative Commons Attribution 3.0 Australia License unless stated otherwise.