Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Better mapping editor (Part 1 - UI) #34302

Open
wants to merge 50 commits into
base: master
Choose a base branch
from

Conversation

poeMota
Copy link
Contributor

@poeMota poeMota commented Jan 8, 2025

About the PR

This PR heavily reworks and increases the functionality of the current map editor.

what's changed:

  • Improved the map editor UI: entities, decals, and tiles are now in separate lists; decal and tile lists have been moved to the right side of the screen; many interface icons have been added and updated.
  • Added a button for deleting tiles.
  • Removed the second button for deleting entities.
  • Decals in the decal list are now displayed in a gallery format.
  • When changing a decal's color, all decals in the list are updated to reflect the corresponding color.
  • A checkbox labeled "Use Custom Color" has been added to the decal menu.
  • Fixed a bug with tile texture rendering where extremely long sprites would now be cropped into a square.
  • Fixed the ability to open the main menu in the map editor.
  • Added the ability to rebind hotkeys for pick action.
  • Added ability to add objects from lists to “Favorites”.
  • Prototypes can now be searched by id, not just by name.
  • Now the mapping command increases zoom to 1.5 and enables map editor mode.
  • Added ability to rotate decals by clicking the middle mouse button.

Why / Balance

The current map editor sucks.

Technical details

  • Abstract parents have been added for all decals to facilitate grouping them into subcategories.

Media

изображение
изображение

editor2.mp4

Requirements

Changelog

no 🆑

@github-actions github-actions bot added the S: Untriaged Status: Indicates an item has not been triaged and doesn't have appropriate labels. label Jan 8, 2025
@IamVelcroboy
Copy link
Contributor

A couple more suggestions/requests (sorry to keep piling on 😬)

  1. A togglable "powered" overlay. A button that shows the range of mapped lv cables so mappers know whether something is in range or not. Additional benefit of cutting down on overlap.

  2. Another toggleble option to show entity IDs while hovering over with the mouse. An alternative to right-clicking everything. This one might be a little trickier 🤷‍♂️but is just a suggestion. It would be helpful for map reviewers to quickly check things like airlocks and other entities with variants.

Even if these don't make it, thanks for the great work!

@poeMota
Copy link
Contributor Author

poeMota commented Jan 13, 2025

I think at this point the map editor is already much more convenient than the normal mode, so I think it's reasonable to make it automatically turn on with mapping command

@poeMota
Copy link
Contributor Author

poeMota commented Jan 15, 2025

Updated the description and media, did most of what I planned, something could not do, for example, to fix the removal of objects in the selected zone (problem in PlacementManager, in the engine).
There were a lot of good suggestions in the comments, but I decided not to inflate this PR even more and stop at what we have, the rest of the ideas can be implemented in another PR.

@poeMota poeMota marked this pull request as ready for review January 15, 2025 09:01
@ScarKy0 ScarKy0 added S: Needs Review Status: Requires additional reviews before being fully accepted and removed S: Untriaged Status: Indicates an item has not been triaged and doesn't have appropriate labels. labels Jan 16, 2025
@sleepyyapril
Copy link
Contributor

I feel like you could change your command buttons (such as the fixgridatmos) into a list instead of doing multiple buttons through the UI

sleepyyapril added a commit to Simple-Station/Einstein-Engines that referenced this pull request Jan 20, 2025
# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

Ports space-wizards/space-station-14#32294
Ports ss14-harmony/ss14-harmony#310 (and
everything needed for it to function)
Early-merges
space-wizards/space-station-14#34302

Adds the ability for multiple central command maps that get randomly
selected.
Tested and works.

---

# Changelog

<!--
You can add an author after the `:cl:` to change the name that appears
in the changelog (ex: `:cl: Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

:cl: Several contributors
- add: Added a new central command map that is randomly picked alongside
the old one (thank you to Spanky from Harmony)
- add: Added Advanced SMES for mappers.
- add: Added the atmospheric network monitor for seeing what the
temperature, moles, and pressure is on every pipe everywhere through a
computer.
- add: Nukie med bundle now contains a compact defibrillator.
- add: Ported a better mapping editor.
- add: Added the throngler plushie.
- remove: Removed the Throngler as a possible loot spawn for gamble
crates.

---------

Signed-off-by: sleepyyapril <[email protected]>
rosieposieeee pushed a commit to rosieposieeee/Delta-v-rebase that referenced this pull request Jan 20, 2025
<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

Ports space-wizards/space-station-14#32294
Ports ss14-harmony/ss14-harmony#310 (and
everything needed for it to function)
Early-merges
space-wizards/space-station-14#34302

Adds the ability for multiple central command maps that get randomly
selected.
Tested and works.

---

<!--
You can add an author after the `:cl:` to change the name that appears
in the changelog (ex: `:cl: Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

:cl: Several contributors
- add: Added a new central command map that is randomly picked alongside
the old one (thank you to Spanky from Harmony)
- add: Added Advanced SMES for mappers.
- add: Added the atmospheric network monitor for seeing what the
temperature, moles, and pressure is on every pipe everywhere through a
computer.
- add: Nukie med bundle now contains a compact defibrillator.
- add: Ported a better mapping editor.
- add: Added the throngler plushie.
- remove: Removed the Throngler as a possible loot spawn for gamble
crates.

---------

Signed-off-by: sleepyyapril <[email protected]>
@poeMota poeMota changed the title Better mapping editor Better mapping editor (Part 1 - UI) Jan 21, 2025
@poeMota
Copy link
Contributor Author

poeMota commented Jan 21, 2025

PR will be divided into several parts, this part is mostly focused on UI changes.

Spatison pushed a commit to Spatison/wwdpublic that referenced this pull request Jan 21, 2025
# Description

<!--
Explain this PR in as much detail as applicable

Some example prompts to consider:
How might this affect the game? The codebase?
What might be some alternatives to this?
How/Who does this benefit/hurt [the game/codebase]?
-->

Ports space-wizards/space-station-14#32294
Ports ss14-harmony/ss14-harmony#310 (and
everything needed for it to function)
Early-merges
space-wizards/space-station-14#34302

Adds the ability for multiple central command maps that get randomly
selected.
Tested and works.

---

# Changelog

<!--
You can add an author after the `:cl:` to change the name that appears
in the changelog (ex: `:cl: Death`)
Leaving it blank will default to your GitHub display name
This includes all available types for the changelog
-->

:cl: Several contributors
- add: Added a new central command map that is randomly picked alongside
the old one (thank you to Spanky from Harmony)
- add: Added Advanced SMES for mappers.
- add: Added the atmospheric network monitor for seeing what the
temperature, moles, and pressure is on every pipe everywhere through a
computer.
- add: Nukie med bundle now contains a compact defibrillator.
- add: Ported a better mapping editor.
- add: Added the throngler plushie.
- remove: Removed the Throngler as a possible loot spawn for gamble
crates.

---------

Signed-off-by: sleepyyapril <[email protected]>

(cherry picked from commit 9272f65b64392f66a7cd4fd7c84bb152dc93b65a)
@beck-thompson beck-thompson self-assigned this Jan 24, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A: Mapping Area: Maps, or tools used for mapping Changes: UI Changes: Might require knowledge of UI design or code. D1: High Difficulty: Extensive codebase knowledge required. P1: High Priority: Higher priority than other items, but isn't an emergency. S: Needs Review Status: Requires additional reviews before being fully accepted size/L Denotes a PR that changes 1000-4999 lines. T: New Feature Type: New feature or content, or extending existing content T: Refactor Type: Refactor of notable amount of codebase
Projects
None yet
Development

Successfully merging this pull request may close these issues.