Skip to content

2.2.0

Choose a tag to compare

@vawser vawser released this 04 Jun 19:52
· 304 commits to main since this release
62046d6

Program

Features

  • Added a project 'editor' window that holds all of the project selection and configuration features.
  • Removed the dropdown project menu.
  • Added buttons to the Shortcuts menu that clear the keybind for a keybind entry.
  • Added a toggle for the inclusion of the scope in the log message.
  • Added child sections to all the tool window sections so they are scrollable.
  • Added user-facing configuration for the section heights for the left-most panels in editors with multiple internal windows.

Adjustments

  • Standardised the UI and UX design between all editors so each follows the same design principles.

Fixes

  • Fixed some project creation/edit bugs that caused unintentional edits to the project state.
  • Fixed some sd folder file entries appearing incorrectly in file lists (mainly affected AC6).
  • Fixed a crash issue with keybinds when a Keybinds.json contains an old key that has since been removed from the internal key lists.
  • Fixed a crash issue when unloading a project when only one is loaded.
  • Added a bugfix for Linux systems when writing out a file via the VFS

Map Editor

Features

  • Overhauled how the Map Editor metadata is structured (folder and file wise).
  • Added selection outline color preference.
  • Updated the MSB implementation for DS2 projects, exposing new properties.
  • Added support for DS2 projects to load the BTAB and BTPB data
  • Updated NVA implementation (credit: Nordgaren)
  • Allowed NVA save for ER and NR projects.
  • Added the ability to change the color of the viewport background.

Adjustments

  • Restored the original approach to the untextured mesh shading.
  • Adjusted the simple flver shader to give the untextured look a more uniform white to gray gradient.
  • Reset the flat model brightness default to 0.5.
  • Made the untextured selected shader mix the selection color with the normal-derived color so a selection is more obvious in the untextured state.
  • Restored option to have a selection outline (applies alongside the selection tint).
  • Moved several of the existing Tools into a Common Actions tool, and made the individual elements tabs.
  • Moved the model/texture extraction tool into the Data Transfer tool section.
  • Changed all the popup messages for no object errors to normal ErrorLog messages.
  • Adjusted the Local Map Search to allow for partial string matches.
  • Added aliases to the Entity ID validator.
  • Exposed more of the contexual actions within the Tool window in two new grouped sections (Select and Visibility).
  • Added the viewport filter toggles to a tab in the Visibility section.

Fixes

  • Fixed a crash when an Entity's name was null.
  • Stopped the Map Editor color property edit spamming an error message.
  • Fixed issue that caused DS2 BTLs not to be detected and not to be saved.
  • Fixed an issue that meant the AC6 MSB wouldn't save changes to the Shape property of a Region.
  • Small fixes in Entity.cs.
  • Fixed ImGui ID bug in the map editor content list for the visibility icons.
  • Fixed usage of Param.Row.Cells in MapPropertyView (credit: Axi)
  • Fixed regression with nameProp and idProp in the map property view.
  • Fixed an issue with the Duplicate to Map tool if the map object type didn't already exist in the target map.
  • Fixed a bug that stopped the entity ID, instance ID and entity group ID assignement from working in the AddMapObjectsAction.
  • Fixed some task blocking in the DrawableHelper class that was slowing down map loading.
  • Fixed regression with MeshRenderableProxy where it could throw an enumeration exception on certain map loads.

Model Editor

Features

  • Added the ability to select only primitive entities (i.e. dummies and bones) by holding Z down whilst picking in the viewport.

Adjustments

  • Made the auto-select option instead auto-load the first entry in the selection list.
  • Made the content tree open by default.
  • Adjust the mesh entry name to include the linked material and node (with option to toggle node inclusion).

Fixes

  • Fixed a crash when an Entity's name was null.
  • Made the Model Instance Finder result list scrollable.
  • Fix model editor trying to read DS2 flvpwv files (credit: GoogleBen)
  • Fixed the deletion action handling in the Model Editor.
  • Fixed the action manager handling (changed it to ViewportActionManager which is what the Model Editor uses most of the time)
  • Fixed the clone action handling in the Model Editor (clone inherits the submesh state).
  • Enabled the gizmos for the dummies/bones in the Model Editor.
  • Fixed the Model Editor saving process so it includes additions in the save output.

Param Editor

Features

  • Overhauled how the Param Editor metadata is structured (folder and file wise).
  • Externalized the param field name and description information for all projects into a new format: Param Annotations.
  • These are associated by Param Type, rather than Param Name.
  • Split the param enums into individual files per enum.
  • Added multi-language support to Row Names.
  • Added multi-language support to Field Names.
  • Added multi-language support to Param Categories (the category names).
  • Added multi-language support to Field Layouts (the section names).
  • Added multi-language support to Param Enums.
  • Added Reference Groups: used to display multiple references for one field in a more useful and readable manner, mainly for DS2.
  • Added Field Layouts, determines how sets of fields are displayed. Basically a better form of AlternativeOrder.
  • Converted most AlternativeOrders into Field Layouts (missing SDT currently).
  • Added support for displaying item lot chances via Field Layouts.
  • Added full English field annotations and meta for DS2 projects.
  • Added param categories and param community names toggle buttons to the Param List window.
  • Added support for NR 1.03.5 regulation to upgrader.
  • Added "paramtype" filter to the param search engine to more easily filter the list to params that share a common ParamType.
  • Split the Row List entry into two parts (ID and Name), rather than just one.
  • Added ability to right-click and edit the row ID (like with the Name in the context menu)
  • Added ability to press Alt and right-click to enter 'edit' mode when clicking on the ID or Name part, allowing direct editing without having to move to the Field List window.
  • Added the ability to reorder the rows by dragging and dropping (supports multiselection).
  • Added pref to toggle the cell borders for data tables.
  • Added context action in Param List to export a param as a discrete .param file.
  • Param Delta Patcher: Fixed a oversight that mean importing params from one project type to another wouldn't work properly (selected export was setting Modified rather than Added row delta state)
  • Param Delta Patcher: Added Import type selection (Simple for basic row add/overwrite, Complex for conditional changes based on the Row Delta type)
  • Param Delta Patcher: Added option to allow row overwrite for Simple import.
  • Added Copy ID, Copy Name, Copy ID and Name actions under a Information submenu in the row context menu.

Adjustments

  • Param def, meta and row names contributions: PositronCannon, homoradahn, Natalie Weizenbaum, Maybe Birb, El Fonz0, Radai, BoatMonkey678, moitt2, Supuritto, Kirby7871
  • Implemented proper DS2 param definitions.
  • Comparison column header in Row List now checks the Field Display mode to determine what to display as the header text.
  • Added some of the dropdown only features into the Tool window for better discoverability and ease of use.
  • Improved the CSV import so it is more flexible: it will now import partially if the header or value line is incomplete (this means minor differences between paramdef versions should no longer cause issues with importing).
  • CSV construction now uses StringBuilder, making it quicker than before.
  • Added 2.6.2.0 entry for ER ItemGib.

Fixes

  • Enabled row name stripping for DS2 projects by default.
  • Added RandomAppearParam to the table param definitions for ER projects.
  • Fixed a bug with the param row operations that was messing up the row name adjustments.
  • Fixed row name inherit and propagate actions so they work with RefGroups.
  • Restored the ability to configure if CSV import can overwrite existing rows.
  • Fixed a bug that meant the inverted percentages behavior in the Param Editor was being applied when it was disabled.
  • Fixed Row Name Export (Text) exporting JSON rather than txt.
  • Fixed the export flow (All/Selected Params) being inverted.
  • Fixed the field padding toggle tooltip in the Param Editor.
  • Fixed a bug that caused the param offset meta hint not to appear for AC6 projects.
  • Fixes magic param in DeS project showing good names, since it would show you consumables and upgrade materials rather then the sorceries and miracles (credit: GercoDutch).
  • Fixed a crash when a field is pinned whilst Field Layouts are enabled.
  • Fixed a pinned field being duplicated in the top section when Field Layouts are disabled.
  • Fixed potential ImGui ID conflicts for info rows.
  • Fixed an issue with All Text Row name export.
  • Fixed slow comparison in the Param Comparison tool (credit: Axi)
  • Fixed the Sort Rows feature so it works correctly for row indexed rows (i.e. it doesn't squish them all into one row).
  • Added a missing param upgrader entry for ER 1.04.2
  • Fixed bug in the data finder range search where a float was handled as a double incorrectly.

Text Editor

Features

  • Added Data Transfer tool.

Adjustments

  • Moved the Language Sync feature into the Tool Window
  • Added Text Entry Creator tool to Tool Window.

Fixes

  • Added an exception for files in the workflow text directory that cannot be deserialized (credit: GercoDutch).
  • Fixed an issue with DS2 FMG refs that caused some not to work correctly.
  • Fixed the sync prefix not applying properly in some cases.
  • Fixed the FMG import so it ignores the diff check (which was making the import incredibly slow).
  • Added guard clause for invalid regex so invalid usage doesn't crash Smithbox when the Text Search or Replacement actions are used.

Graphics Param Editor

Features

  • Added support for DS2 fltparam to the Graphics Param Editor.
  • Added support for BB gparambnd files
  • Added a toggle for BB projects in the Gparam Editor to switch the view between the gparambnd files and the gparam files.
  • Implemented the new annotation system for the Graphics Param Editor.
  • Added group and field annotations for all supported project types.
  • Added proper clone support to the GPARAM implementation, a GPARAM clone will cascade down fully.
  • Added Gparam Group add and delete actions with undo/redo support.
  • Added delete support (for project-only) gparam files.
  • Updated the add/delete actions to maintain indexes
  • Added AddValue/DeleteValue actions
  • Duplicate action now acts slightly differently based on how it is invoked, explicit usage uses the ID, whereas the shortcut/Edit menu usage will use Offset.
  • Added value ID editing.
  • Added new value column that handles the 'row' selection
  • Updated the Time of Day edit action.
  • Added export as JSON action.
  • Added basic support for import/export for GPARAM objects. Currently it is inflexible, so a exported field needs to be imported in the Field 'scope', rather than the importer automatically shifting if done in a different scope.
  • Added support for adding new groups and fields even if the default list is empty
  • Added support for adding new values even if the list is empty
  • Added the data finder for collating results based on GPARAM properties.
  • Added the group/field descriptions on tooltip in the add menus.
  • Added setting to toggle the description display on group/field hover.
  • Added Data Transfer to Gparam Editor Tool window.

Fixes

  • Cleaned up the GPARAM.cs file.
  • Added support for the DS2 fltparam string handling to the GPARAM.cs file.
  • Updated the quick edit class to cover all the GPARAM field types and to use the new EditValueAction.
  • Fixed an issue with value list changes not being written to the output GPARAM file.
  • Fixed the display of enums in the information column
  • Fix for loading the mapbase gparam from ER (Capacity should be read as Byte, not SByte).

Texture Viewer

Adjustments

  • Added auto-selection of the first TPF and Texture.