Skip to content

Improve Ground Editor tile authoring - #150

Draft
solbounder wants to merge 2 commits into
RogueCollab:masterfrom
solbounder:codex/ground-editor-tile-authoring
Draft

solbounder wants to merge 2 commits into
RogueCollab:masterfrom
solbounder:codex/ground-editor-tile-authoring

Conversation

@solbounder

Copy link
Copy Markdown

Summary

This improves two common Ground Editor tile-authoring workflows:

  • Add a zoom control to the shared Tile Browser, from 50% to 800% with a 200% default.
  • Keep tile hit testing, the selected-tile border, and multi-tile selections aligned at every zoom level.
  • Add rectangular copy and paste tools for Ground Map texture layers.
  • Preserve copied regions across layers and maps for the current editor session without serializing clipboard state.
  • Clip copied and pasted regions to map bounds and apply each paste as one existing undo step.
  • Add Ctrl+C and Ctrl+V shortcuts, with both Control keys supported. Undo and redo now also recognize both Control and Shift keys.
  • Use a dedicated translucent selection preview instead of rendering copied selections as erased tiles.

Why

Large tilesets are difficult to inspect at their native size, and recreating repeated Ground Map texture arrangements tile by tile is slow. These changes keep the existing editor model and undo system while making both tasks faster.

Usage

  • Change the Tile Browser zoom with the percentage control above the tileset.
  • Select Copy region or press Ctrl+C, then drag over the Ground Map.
  • Select Paste region or press Ctrl+V, then place the copied region.
  • Each completed paste is a single undoable edit.

Validation

  • dotnet build RogueEssence.sln -c Debug --no-restore
  • dotnet build RogueEssence.sln -c Release --no-restore
  • Focused validation for reverse-direction rectangle selection, cluster/paste offsets, zoom scaling, and the converters' 100% compatibility fallback
  • git diff --check
  • Independent final review for clipping, undo behavior, deep copies, shortcut handling, session clipboard behavior, and MVVM bindings

The full solution builds with no errors. Existing repository warnings remain; the new members introduce no additional warnings.

Draft follow-up

The original workflow has been used interactively while authoring a mod. I am leaving this PR as a draft until I add a final interactive pass and screenshots for this cleaned upstream version.

AI disclosure

The implementation was produced with OpenAI Codex under my direction. I reviewed the final changes against the existing RogueEssence code and previously accepted contributions, and I welcome experienced upstream review.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant