Skip to content

[Port] Mapping Editor - Early Merge 'N Tweaks#3810

Open
lexaSvarshik wants to merge 4 commits intoMonolith-Station:mainfrom
lexaSvarshik:mapping-editor
Open

[Port] Mapping Editor - Early Merge 'N Tweaks#3810
lexaSvarshik wants to merge 4 commits intoMonolith-Station:mainfrom
lexaSvarshik:mapping-editor

Conversation

@lexaSvarshik
Copy link
Copy Markdown
Contributor

@lexaSvarshik lexaSvarshik commented Apr 17, 2026

LICENSE: MIT

About the PR

Ports Reserve-Station/Reserve-Station#82 which is early merge of stale wizden PR, see it for more details.

Mapping simpler now

Media

Quick look:
изображение
Mapping templates, disabled rendering of walls, airlocks, markers

изображение Tiles and decals ## Why / Balance ## Requirements - [x] I have read relevant guidelines/documentation to this PR found on [our devwiki](https://monolith-station.github.io/mono-docs/). - [x] I have added media to this PR or it does not require an ingame showcase. - [x] I can confirm this PR contains either no AI-generated content, or AI-generated content that meets our guidelines.

How to test

run mapping command, load any map, try messing with menus

Breaking changes

Changelog

* add layers menu and erase tile button

* add fixgridatmos and rmgrid buttons

* remove delete button

* fix texture

* add icons

* move layers buttons to xaml

* add move grid button

* add secondary use cancel actions

* add grid VV button and decales parents

* add shaddow toggle button

* idk what i do

* add erase decal overlay

* rename layers window to visibility window

* rework editor ui layout

* cleanup

* better pick action overlay

* add gallery layout for decals

* unfuck fucking ui

* better icons

* fix gallery layout search

* locale and rename stuff

* add dical picker

* fix

* decal color pick

* add decal switch on middle mouse

* better bindings

* fixes and cleanup

* add use custom color button

* fixes

* add favorite objects list

* add search for entities by prototype id

* rename

* add mapping objects templates

* add pipes color action and decal rotation

* fix escape menu in editor

* add chat toggle button

* save favorites objects locally

* todo

* update mappingclientsidesetup command

* fix admin menu in editor

* update mapping templates

* add buttons tooltip

* add palette for atmos pipes

* comments and code cleanup

* remove mapping overlay disabling on server

* cleanup

* fix decal pick bind

* fix yaml linter

* split pr into parts

* fix null prototypes search

* review

* forgot

* fix typecheck

* hide HideSpawnMenu entities

* add show/hide spawn lists button

* open object tree on double click in search list

* fix human-readable names for tiles

* fix objects dublicating

* webedit ops

* Update MappingOverlay.cs

* chore: Automatically update REUSE headers

* chore: Automatically update REUSE headers

* get everything working

* chore: Automatically update REUSE headers

* chore: Automatically update REUSE headers

* whitespace

* tags for mapping

* tag fix

* markings, comments and namespace

* chore: Automatically update REUSE headers

* mapping templates update part 1

* mapping templates update part 2

---------

Co-authored-by: poemota <142114334+poeMota@users.noreply.github.com>
Co-authored-by: ReserveBot <211949879+ReserveBot@users.noreply.github.com>
@monolith8319 monolith8319 changed the title [Port] Mapping editor - early merge 'n tweaks [Port] Mapping Editor - Early Merge 'N Tweaks Apr 17, 2026
@Ilya246
Copy link
Copy Markdown
Contributor

Ilya246 commented Apr 17, 2026

needs to handle our shuttle stuff such as radar edge markers and non-square tiles well

@lexaSvarshik
Copy link
Copy Markdown
Contributor Author

needs to handle our shuttle stuff such as radar edge markers and non-square tiles well

will do

@Redrover1760
Copy link
Copy Markdown
Contributor

Redrover1760 commented Apr 17, 2026

the original is MIT, so this should be licensed MIT as well (I just put it in the PR it works)

@lexaSvarshik
Copy link
Copy Markdown
Contributor Author

good

@lexaSvarshik lexaSvarshik marked this pull request as ready for review April 19, 2026 20:32
Comment on lines +98 to +111
private void OnMappingFavoritesSave(MappingFavoritesSaveMessage message)
{
var mapping = new MappingDataNode();
mapping.Add("prototypes", _serialization.WriteValue(message.PrototypeIDs, notNullableOverride: true));

var path = new ResPath(FavoritesPath);
using var writer = _resourceMan.UserData.OpenWriteText(path);
var stream = new YamlStream { new(mapping.ToYaml()) };
stream.Save(new YamlMappingFix(new Emitter(writer)), false);
}

private void OnMappingFavoritesLoad(MappingFavoritesLoadMessage message)
{
var path = new ResPath(FavoritesPath);
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

those should either A) be gatekept by a cvar that enables/disables them and is false by default but true in devenv (there's a devenv config file) B) check admin perms on the sender
currently those could be used on live server to take up disk space

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i don't think russian locale is needed?

@Corrupt142 Corrupt142 self-assigned this Apr 25, 2026
@Corrupt142 Corrupt142 self-requested a review April 25, 2026 09:18
Copy link
Copy Markdown
Contributor

@Corrupt142 Corrupt142 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i didnt look at the code but!

Mandatory:

Image - The mirrored arrow has a ERROR sign (probably a sprite error) Image
  • All radar marking showcase sprites are the same, it can be confusing

Suggestions:

  • Visualiser of multitool connections (what machine/door is connected to other machines/doors/buttons, ect)

  • add a mass scanner ability button to check the ship out on mass overview

image
  • Try to make the text not get cut off so instead of it just dissapearing into the ather it would do this instead:

Airlock
Exterior,Locked

image
  • The middle mouse rotate should pick the north,south,east,west version of the decals to prevent the missalignment and other visual inconsistencies

Copy link
Copy Markdown
Contributor

@UnicornOnLSD UnicornOnLSD left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested it myself, I'll only mentions issues I have for the sake of efficiency:

  • The color hexer is broken, I cannot input the hexcode of a color I want (for example #0055CC) when I tried to paint pipes. It just breaks and autofills another color.

  • When searching for specific tiles, the scrolling enus don't show up which is pain since it'll likely be how mappers will be looking for the entire menu and now just all the items spread out (see image)

Image

Instead of

Image
  • While you CAN favorite any kind of tiles, you cannot have one specific item bound to a key. You need to be able to bind some tiles to action keys like before

  • As corrupt said, a mass scanner view.

  • A way to toggle the UI back to regular client on and off especially for testing purposes would be deeply appreciated.

  • Possibly showing the entity ID when hovering over them instead of the same thing, that way you can search for similar items easier

Image
  • It's a bit weird the old "copy button" is replaced by a new bind which does the same thing for the "pick entity or tile"

It's some of the issues I've seen while testing, however, it's a massive improvement overall.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants