XYZ grid + mapping #6

Open
opened 2024-10-25 10:56:32 -07:00 by oakbrad · 3 comments
oakbrad commented 2024-10-25 10:56:32 -07:00 (Migrated from github.com)
No description provided.
oakbrad commented 2024-11-14 20:32:33 -08:00 (Migrated from github.com)

The contrib way of doing this seems overly complicated (making ASCII maps, then importing and interpreting those).

In a discussion on their Discord, these changes to the builder commands were linked. This modifies tunnel to incorporate an xyz grid and also sharing those coordinates over GCMP so that MUD clients can pick it up.

https://github.com/RodRitter/Evennia-Doodads/blob/main/Evennia%20Mudlet%20Mapper/builder_cmds.py

https://github.com/evennia/evennia/discussions/2718

https://discord.com/channels/246323978879107073/980878618685231194/1306670614727360552

The contrib way of doing this seems overly complicated (making ASCII maps, then importing and interpreting those). In a discussion on their Discord, these changes to the builder commands were linked. This modifies `tunnel` to incorporate an xyz grid and also sharing those coordinates over GCMP so that MUD clients can pick it up. https://github.com/RodRitter/Evennia-Doodads/blob/main/Evennia%20Mudlet%20Mapper/builder_cmds.py https://github.com/evennia/evennia/discussions/2718 https://discord.com/channels/246323978879107073/980878618685231194/1306670614727360552
oakbrad commented 2025-01-26 15:37:56 -08:00 (Migrated from github.com)

Dude on their Discord is using godot and out of band messages to create a visual representation

https://github.com/user-attachments/assets/8a037671-8fe3-489c-a14a-051f3a0a1994

Dude [on their Discord](https://discord.com/channels/246323978879107073/980879586042716231/1332451098417565706) is using godot and out of band messages to create a visual representation https://github.com/user-attachments/assets/8a037671-8fe3-489c-a14a-051f3a0a1994
oakbrad commented 2025-08-13 22:20:21 -07:00 (Migrated from github.com)

I've done a lot of research on this. The xyz contrib is a good data model to use and I can probably use it's mapping/pathfinding functions if I copy that. However I hate the x,y,asciimap input. Ideally there would be a pipeline where writing would be separate from code-as-content and then test and deploy from dev->prod. The way Evennia works out of box with dig/tunnel is that building essentially happens on the live server.

So, what alternative tools are out there? Quite a few, none perfect for this purpose:

  1. Tiled - meant for 2D level building, it operates on a very strict grid but can be set up for text games
  2. Trizbort - very good for our purposes, has no z axis though. Patch with optional attributes, or modify myself
  3. mudmapper - can output Evennia batch commands natively, not sure how customizable

Rooms need to have absolute (x,y,z) coordinates within one world space relative to one another. If Trizbort supported z-axis or layers, it would be perfect, but it doesn't.

Easiest path? - adopt xyzcontrib data model on Room type, make dig/tunnel xyz aware, use Trizbort for area building then generate batch commands

I've done a lot of research on this. The xyz contrib is a good data model to use and I can probably use it's mapping/pathfinding functions if I copy that. However I hate the x,y,asciimap input. Ideally there would be a pipeline where writing would be separate from code-as-content and then test and deploy from dev->prod. The way Evennia works out of box with dig/tunnel is that building essentially happens on the live server. So, what alternative tools are out there? Quite a few, none perfect for this purpose: 1. Tiled - meant for 2D level building, it operates on a very strict grid but can be set up for text games 2. Trizbort - very good for our purposes, has no z axis though. Patch with optional attributes, or modify myself 3. mudmapper - can output Evennia batch commands natively, not sure how customizable Rooms need to have absolute (x,y,z) coordinates within one world space relative to one another. If Trizbort supported z-axis or layers, it would be perfect, but it doesn't. **Easiest path?** - adopt xyzcontrib data model on Room type, make dig/tunnel xyz aware, use Trizbort for area building then generate batch commands
Sign in to join this conversation.
No description provided.