ID:2917154
 
Resolved
Right-clicking on the map editor will now include objects that are not strictly on that tile, but overlap from another tile. They are marked separately with their x,y,z coordinates for clarity. Additionally, turf underlays are now properly marked as underlays in the menu.
Applies to:Dream Maker
Status: Resolved (515.1634)

This issue has been resolved.
Hey there. How've you been? Let's face it, BYOND's grown a lot since it was initially envisioned, and with the recent fixes to SIDE_MAP making layering more predictable and controllable, setting up very large objects should really be better supported.

One of the great things about the new map editor, is we can just click on something with the selector to move it around. It's also great that we can double-click on things to make them the active object.

But the right click menu still has some options we need to take advantage of occasionally that are a pain in the ass to use because in order to do so, we have to find the exact tile that an object's bounds start on in order to find the object in the right click context menu.

You know what'd be neat? If the right click context menu also got ahold of anything with solid pixels under the mouse, or even just within the vis or phys bounds. Not sure what the best approach here is. Maybe a configurable toggle for including extra stuff in the right click menu.

Objects that don't actually start on that tile should have a "(x,y,z)" that tells us the coordinates of which tile they are actually on next to their name in the right click context menu.

Some of my objects don't have very obvious vis/phys bounds, due to what I need to do to them to make layering work. Here's an example of where it starts to get cumbersome:




As you can see here, I've got a fairly complicated vis/phys bounds and collision shape I'm using for this building. I use a homebrew system for doing complex collision for these objects --It works well for tile-bound objects.

The red boxes are tiles that are considered dense. The yellow outline is the physical bounding area for the building to assist with interlayering with the player properly.

The checkerboard area is the visual bounds for the sprite.



The below image shows sections I've split off the main graphic and isolate din order to faciliate complex layering when moving around the building. These are parts of the building that have their own visual bounds and physical bounds separate from the main building. They basically only exist to help the player properly pop out in front of extensions to the building at the proper places, or pop behind parts of the building when moving around within the structure's walkable area.



Interacting with these buildings in the map editor is pretty damn inconvenient, because I have to find the exact tile the building starts on, which in the case of many of these structures, is not obvious due to the organic nature of how they blend with the environment.

Take for instance, my highway set:



Because of the way these pieces are laid out on the map, they have some elevation to them that makes it unclear where the bottom-left tile is. They are also set up to allow the player to walk in front of or behind the pylons that support the highway sections without there having to be any denied tiles where the player can't walk. It works very well, but again, it's pretty painful to find the exact tile where these start and end, especially when they weave in and out of the gaps between buildings like the top screenshot.


I really appreciate the love that's been done to the map editor. It's got issues, and it's extremely clunky, but the overhaul has really been a boon to my workflow after some stumbling.

I think adjusting what shows in these right click menus with a modal toggle would be a fantastic addition that would take a lot of clunk out of working with the map editor.
++
Working on this now. The stumbling block I have is that the right-click menu code was designed around DS's needs and not DM's, so I'm having some "fun" dealing with that. In DS, a turf has its own ID; in the map editor, only movables have their own ID, so areas and turfs aren't recognizable by tile (it needs a combo of coordinate + type + position, where position is relevant to underlays).
Lummox JR resolved issue with message:
Right-clicking on the map editor will now include objects that are not strictly on that tile, but overlap from another tile. They are marked separately with their x,y,z coordinates for clarity. Additionally, turf underlays are now properly marked as underlays in the menu.