All notable changes to the Field-Map-Editor project will be documented in this file, based on the available tags from the GitHub repository. Versions are sorted from the largest to the smallest number, with Canary representing the unreleased changes.
- Refactor Filters and Generic Combo: #208
- Changed upstream way of storing the BPP and Palette strings commits 2dfa9c5 → 6214118 & commit 6214118
- Tweaks to canary building: deletes the previous build before adding a new one commits ded5c38 → 63777d5
- Add Context Menu for Textures Window #213
- Add Copy Image to Context Menu for Textures Window #215
- Fix not disabling compact filter in all the needed places #212
- Fix Add and Remove from Selection in Toml editor Context Menu and update Readme.md #214
- Fix Swizzle and Swizzle As One Image loaded at the same time. #216
- Integration with GitHub milestones for release tracking (inspired by FFNX project).
changelog.mdskip_branch_with_pr: truetoappveyor.yml- Search to toml editor.
- Button to fix name(s) in search.
- Checkboxes to select which names need fixed.
- Parent checkboxs to toggle child checkboxes.
- Store previous name in toml.
- Undo Rename button.
- Removed bullet for the Goto button.
- Optimized gizmo rendering for smoother interactions.
- Improved async texture loading with better thread synchronization.
- Updated shader pipeline for compatibility with newer OpenGL versions.
- Swapped Appveyor for Github Actions
- Swapped Conan for VCPKG
- Support Searching by Map Index and show Map Index/ID in dropdown.
- Path scanning on Windows will now lookup you FF8 2000 install from the registry. And it'll look up you FF8 and FF8 Remastered from Steam. This only happens on the initial startup. Path scanning for Steam installs might be possible on Linux as well but needs more research. 7 commits
- Allow seperate input and
.mappaths. #206
- Saving
.mapfiles even if disabled. #205 - Allow loading of Swizzle as one Image textures without
.mapfiles. #207 - Fixed memory leaks in texture caching system.
- Resolved intermittent crashes during rapid field switching.
- Major rendering bug. Not clearing texture slots when flushing vertice buffer.
Ongoing Milestone: Bugfix Release Sept-2025
- Associated Items: Specific issues assigned to this milestone are not detailed in the available page content. For the current list of open and closed issues, please refer to the milestone page on GitHub: https://github.com/Sebanisu/Field-Map-Editor/milestone/1. As the milestone is active, the items may include ongoing bug fixes and improvements targeted for the September 2025 release.
Related Issues & PRs:
- #182 - Add change.log from grok, and add skip_branch_with_pr: true
- #184 - Add button to allow fixing names in
deswizzle.toml - #201 - Remove appveyor and conan, Add Github Actions and VCPKG
- #203 - Support Searching by Map Index and show Map Index/ID in dropdown.
- #204 - Major rendering bug. Not clearing texture slots when flushing vertice buffer.
- Switching tp Github Actions will change the versioning. Because I used Appveyor to track the version number.
- TOML editor for Pupu Texture Combinations.
- BatchRenderer for improved rendering performance.
- ImGuizmo for interactive tile manipulation.
- Checkerboard shader for enhanced visual rendering.
- Filtertags for swizzle_one_image.
- ForceReloadingOfTextures to control texture loading explicitly.
- Edge scrolling when dragging a gizmo.
- Filter to field picker for improved usability.
- Ability to remove selected tiles with escape key.
- Revamped texture path handling.
- Renamed Upscale to Swizzle for clarity.
- Replaced SFML with OpenGL-based glengine for rendering.
- Removed
sf::Texture,sf::RenderTexture, and other SFML dependencies. - Moved key_to_string to header and improved configuration saving.
- Updated texture page grid handling for MIM.
- Improved framebuffer handling to prevent black screens during field toggling.
- Optimized async path loading to reduce crashes and improve UI responsiveness.
- Restructured map rendering with
bind_color_attachmentand improved blending modes. - Converted
sf::Vectortoglm::vecandsf::IntRecttoglm::ivec4. - Replaced checkerboard pattern with shader and framebuffer.
- Updated CMakeLists.txt to reflect SFML removal and experimental OpenGL support.
- Moved various functions (e.g.,
set_uniform) to appropriate files for better organization. - Improved error handling with stack traces and better logging via spdlog.
- Adjusted gizmo scaling and fixed scroll bar interactions.
- Updated map history to prevent excessive updates during multi-frame operations.
- Fixed color button display bug by storing
tile_button_optionsby value. - Optimized saving of images with
save_image_pboand improved texture loading stability.
- Fixed OpenGL context closing early.
- Resolved crashes in async code by restructuring to avoid race conditions.
- Fixed texture page grid issues for MIM.
- Corrected blending mode issues with help from GPT.
- Fixed saving selected fields in the map list on batch screen.
- Addressed framebuffer cloning issues for RGB textures.
- Fixed bugs related to tile placement restrictions.
- Corrected color menu display to use two columns.
- Fixed GCC-specific compilation errors (e.g., missing headers, sign-conversion warnings).
- Resolved div-by-zero issue in batch processing.
- Fixed map order issues for specific fields.
- Removed SFML dependencies, including
sf::Imageandsf::ContextSettings. - Commented out unused
square.cppand related RenderTexture code. - Removed
control_panel_window.cppdue to tight coupling withgui.cpp. - Disabled import window temporarily to focus on stability.
Related Issues & PRs:
- #157 - Revamp texture path handling, rename Upscale to Swizzle, and TOML editor for Pupu Texture Combinations.
- #154 - BlendModeSettings fix.
- #149 - Remove SFML.
- #81 - BPP validity when changing x position.
- Custom path parsing with regex for FFNX config.
- Pupu ID support in custom paths window.
- Table-based UI for custom paths with tooltips.
- Selected path tracking for batch processing.
root_path_typesfor flexible directory selection.safe_copy_stringfor robust string handling.- FilterSettings with toggle save/load config.
- GenericComboClassWithFilterAndFixedToggles to disable invalid options dynamically.
- Explore button for input paths in batch processing.
- PatternSelector for updating configuration keys.
- Map picker functionality with directory browser support.
- Functions to copy maps from FF8 back to
maphistory. first_to_working_and_originalto restore .map files with undo support.generate_(de)swizzle_map_pathsfor map path handling.- Sorting and duplicate removal for map paths.
- Improved UI for saving settings in custom paths window.
- Moved variables to selections for better state management.
- Restructured texture loading to support non-path inputs.
- Optimized batch processing with new
key_value_dataclass. - Replaced
append_file_structurewith new path handling logic. - Moved patterns to selections and added configuration saving.
- Switched to singletons for certain components.
- Updated
conanfile.pyto use CMake 3.31.6 and Visual Studio 17 2022 generator. - Improved map sprite access to selections.
- Reformatted and cleaned up code for consistency (e.g.,
fme::color,gui.cpp). - Enhanced logging with spdlog for filter messages and background color saves.
- Updated sorting functions for better performance.
- Fixed issue with imgui-sfml macro handling via upstream fork.
- Corrected double-saving of selections in batch processing.
- Fixed upscale/swizzle path parsing for manual additions.
- Resolved issues with map loading when filters are enabled.
- Fixed output path storage issues in the textbox.
- Addressed div-by-zero errors in batch processing.
- Fixed
batch_flatten_typeandbatch_compact_typesave/load issues. - Corrected map order issues for specific fields.
- Removed unneeded
load_configurationfunction. - Eliminated redundant
open_viii::LangTcoo from function calls. - Commented out unused batch pattern tests.
Related Issues & PRs:
- #144 - Configure output paths need to diffs.
- Support for configuring output paths with diff handling.
- Added
ctreto Conan for regex support.
- Updated
.gitignoreto exclude unwanted files.
Related Issues & PRs: None found.
- Updated
.gitignoreto exclude additional unwanted files.
Related Issues & PRs: None found.
Note: Version numbering started in 2025, with earlier builds using incremental build numbers. The changelog is constructed based on the provided GitHub tags and commit messages, with Canary including additional unreleased changes. Related issues and PRs are linked where explicitly mentioned in commit messages.