Skip to content

Releases: vawser/Smithbox

1.0.23

29 Oct 23:29
Compare
Choose a tag to compare

General

  • Added basic support for Armored Core: For Answer, Armored Core 5 and Armored Core: Verdict Day (credit to WarpZephyr)
  • Added the ability to toggle which editors are presented to you in Smithbox.
    • Includes supports for work-in-progress editors: EMEVD, ESD and Cutscene.
      • EMEVD: supports basic property editing.
      • ESD: read-only.
      • Cutscene: read-only.
    • These are useful for data discovery, but editing features are not complete or not present at all.
  • Restored Soapstone support for DarkScript data linking (e.g. selecting an entity from DarkScript if the map is loaded).
    • You need to use the DarkScript build present in the Smithbox discord server however.
  • Pinned the search filter section in all editors that use it, so it doesn't disappear on scroll.

Param Editor

  • Added new BB Paramdex Meta.
  • Added new SDT Paramdex Meta (credit to MyMaidisKitchenAid).
  • Added new potential shortcuts for exporting param data via CSV. Unbounded by default.
  • Added support for AC6 regulation 1.07.2 to the Upgrader.

Model Editor

  • Added basic tools for model mesh translation, rotation and scaling to the Model Editor.

Text Editor

  • Text Search tool can now search for entry ID instead of only text.
  • Added "From external file" action for Text Import to allow the user to select the specific JSON to import instead of relying on the project-local lists.

Bugfixes

  • Text Editor: fixed issue with the fmg reference finder so it accounts for passed ID offset from the Paramdex meta again.
  • Text Editor: added null safeguards to Text Difference Manager.
  • Text Editor: blocked ability to change project whilst vanilla text bank is loading (preventing a crash).
  • Text Editor: fixed issue with container-level export actions.
  • Text Editor: fixed crash when multi-selecting in the File or Text File lists.
  • Text Editor: fixed issue with the naming templates being stored incorrectly.
  • Text Editor: fixed issue with the Text Creation menu creating entries incorrectly.
  • Text Editor: fixed issue with the Select-All shortcut applying outside of focus on the Text Entry window.
  • Model Editor: fixed issue that caused DS2 objects not to load in the model editor.

1.0.22.1

22 Oct 21:53
7d1f7d3
Compare
Choose a tag to compare

Text Editor

  • Added Simple File List view: displays containers used by the game (enabled by default).
  • Added Simple Text File List view: displays the text files in a simple form, split by base, DLC1 and DLC2 if relevant.
  • Overhauled Text Import and Export. Append adds unique entries, but ignores existing ones. Replace will add unique entries and replace the text contents of existing entries.
  • Text Export will include grouped entries (unless disabled in the options).
  • Creating new entries will now create all associated group text entries if applicable (e.g. you select a Title entry, creating off it will create a Title, Summary, Description and Effect entry if applicable).
  • Simplified the Text Import/Export menu options to make it clearer what they do.
  • Added 'Text Merge' tool that will merge a target project's text files (e.g. unique and modified entries) into the currently loaded project.
  • Added 'Language Sync' tool that will add all unique entries from the current primary category into the targeted category (e.g. add all uniqu entries from English into French).

Param Editor

  • Added AC6 Paramdex discoveries (credit to ndur).
  • Fixed the FMG quick-link functionality.
  • Restored the row re-name functionality (from FMG ref).
  • Restored the FMG ref re-name functionality (from row name).

Map Editor

  • Added an explicit 'Search' button to Local Property Search in the map editor so input in the Property Name field isn't constantly polled, instead only once when the button is pressed.

Bugfixes

  • Fixed language detection for DS1R for Neutral Spanish, Portuguese and Simple Chinese
  • Fixed issue with saving FMG files with DS2 projects.
  • Fixed issue with text input being cleared when selecting text entries or the ID field.
  • Fixed issue where Duplicate/Delete shortcut didn't respect the current user context, causing accidently usage.
  • Fixed issue where Text Difference checks were ignore null vanilla entries when checking project entries.
  • Fixed issue with Duplicate Selected to Map menu item.

1.0.22

18 Oct 21:07
Compare
Choose a tag to compare

General

  • Added missing map aliases for ER.
  • Adjusted the menubar to make the settings, help, etc more visible.
  • Moved all menubar entries that were in the 'Actions' submenu to 'Edit'.
  • Added character/part aliases for DES

Text Editor

  • The editor has been completely rewritten: you can now view all text files available, and navigate between the supported languages with ease.
  • Entry creation has been improved, you can now easily create multiple entries that follow a pattern or template.
  • Existing tools have been retained and improved.
  • Import and Export actions are now per FMG or by selected FMG.Entries. This means you can more easily mix and match what you want to import. Exports are now stored within the project's .smithbox folder. Imports are populated from this folder.
  • Added 'modified' entry filter command: filters the list to only rows that have been edited from vanilla.
  • Added 'unique' entry filter command: filters the list to only rows that have been added and aren't in vanilla.
  • Added color coding for modified and unique rows in the list.

Param Editor

  • Support for AC6 1.07.1 regulation in the Param Upgrader.
  • Support for ER 1.16.0 regulation in the Param Upgrader.
  • Added Row Name strip options for all project types (enabled for DS2 and ER by default).
  • Paramdex updates and contributions (credit to LordExelot).
  • FMG references now update instantly, and follow your primary language selection.
  • Param Comparison Report now accounts for indexed rows

Model Editor

  • Added the ability to export models in the .OBJ format.
  • Mesh visibility is now properly handled in the viewport when they change.
  • Added Model Mask Toggler tool: quickly toggle between model mask combinations by selecting a NPC Param entry.

Gparam Editor

  • Fixed an issue where Quick Edit didn't flag the gparam as modified, which meant Save All didn't save them.

Bugfixes

  • Removed strict resource checking: this caused a throw to occur, which caused the hanging on map loads whenever a texture could not be assigned a texture descriptor. Now it simply prints a log message and returns false.
  • Added some handling for BB PS4 textures with R16G16B16A16_FLOAT format, so they are ignored and don't cause a crash.
  • Fixed an issue where Image Preview could cause a crash.
  • Fixed lots of Model Editor issues.
  • Fixed issue in Time Act Editor with imeActCommandQueue.Parse
  • Fixed issue in ER/AC6 MQB (credit to alson041)
  • Fixed issue with loading Loose FLVER files
  • Fixed issue in the TAE Editor where animation create/duplicate/delete didn't work
  • Fixed issue where duplicating Time Act didn't work
  • Fixed oversight where the local prop search was constantly being reset, breaking some functionality.

1.0.21

03 Oct 02:30
Compare
Choose a tag to compare

Map Editor

  • Added support for the Lightmap Atlas Editor (BTAB files) for DS3 projects.

Model Editor

  • Added "Associated Files" panel in the Model Editor so the user can pick between each FLVER within a FLVER container, e.g. a barrel will have one FLVER for it's intact state, and another for its broken state.
  • Added visible collision for Assets for ER projects.
  • Added handling for map piece textures so they display in the Model Editor.
  • Map Piece lists with zero entries are hidden in the Model Editor asset browser list.

Param Editor

  • Updated the Paramdex.
  • Mass Edit input now ignores ; usage in mass edit instead of truncating the command.
  • Added "positive" and "negative" search engine commands that act as shorthand for proprange 0.00001 +Infinity and proprange -0.00001 -Infinity respectively when searching.
  • Added support for graphics config editing for SDT in the Param Editor.
  • Added Param Field Offset meta, that assists with the MenuPropertySpecParam offset field.
  • Added support for 1.15 regulation update for ER projects.
  • Added toggle to the Param Comparison Report for ignoring row indexed params as they show erroneously show diffs as row indexing isn't handled.
  • Added current param line to the in progress text for the Param Comparison Report so the user can see the report is actually progressing.

Time Act Editor

  • Added search filter to the Event Creation sub-menu.

Miscellaneous

  • Added a toggle within the Resource List panel that allows the resource load window to be toggled off (hiding it).

Bugfixes

  • Fixed the movement increment settings so it actually updates the CFG var.
  • Fixed crash when material index is set to -1 when viewing Mesh properties in the Model Editor.
  • Fixed various crashes in the Model Editor.
  • Added null check in TexRefSelectable in case the ImagePreview isn't yet initialized.
  • Fixed the handling of BB models in the Model Editor.
  • Fixed the texture locators for BB, meaning textures display for characters, objects, parts and map pieces (mostly).

1.0.20.1

20 Sep 21:02
Compare
Choose a tag to compare

Editors

  • Added the ability to hold the undo key and undo continuously without having to spam-click (uses a new shortcut: Ctrl+Alt+Z). Mainly for continuous actions that generate an action per frame, to make it easier to roll them back.
  • Added the ability to hold the redo key and redo continuously without having to spam-click (uses a new shortcut: Ctrl+Alt+Y).

Map Editor

  • Added "Rename Map Objects" tool for AC6 in the Map Editor to quickly apply names to the blank map objects.
  • Added Rotation Increments:
    • Added the ability to define 5 rotation increments for usage with the "Rotate Selection on X/Y axis" actions in the Map Editor.
    • Added shortcut to cycle through each rotation increment.
  • Added Viewport Information Panel:
    • Added transparent panel to the top-left of the viewport, displaying status of various tools: currently just which rotate increment the user is on.
    • Added shortcut to toggle display of viewport info panel
  • Added Movement Increments:
    • Added the ability to move map objects via the key arrows instead of requiring movement within the viewport with the gizmo element.
    • Added 5 profiles for movement increment, similar to the rotation increment stuff
  • Added a "Go to Model" button below the ModelName field in the map editor for Assets/Objects/Enemies that will jump to the Model Editor and load the associated model when pressed.
  • Scale property is now disabled for Enemy map object types to indicate that it does not work for them.

Model Editor

  • Added support for handling multiple internal FLVER files to the Model Editor
  • Internal Files within a container are now listed. Selecting between them will load the relevant underlying FLVER and update the viewport model
  • Disabled the 'data integrity' warning in the Model Editor since it is more confusing than helpful for users.

Param Editor

  • Added prompt to save the params immediately after a param upgrade.
  • Characters after the ; character will now be ignored when parsing the command.
  • Added param upgrade stuff for latest AC6 regulation
  • Added orbitActiveHeatBuildup discovery to Paramdex.
  • Added a "param comparison" report to the Comparison sub-menu. This will detail the differences between two sets of param banks.

Bugfixes

  • Fixed issue where created map objects (via the Create action) would not be saved correctly.
  • Removed the disambiguation name appends for AC6 (instead this is done via a map editor action, rather than within the MSB read process)
  • Removed line that caused an exception when framing a selection group in the viewport.

1.0.20

11 Sep 17:22
Compare
Choose a tag to compare

Map Editor

  • Fixed AC6 MSB implementation, which fixes the lighting bug and crash bugs that could occur when saving a map.
    • Maps saved via Smithbox before this release may not load correctly, if so then enable the "Ignore asserts" option in the settings, which should allow you to re-save them.

Param Editor

  • Added support for ER regulation.bin 1.14.1 (credit to ivi)

Settings

  • Added CFG toggle for displaying Debug tool windows (disabled by default)

Bugfixes

  • Fix crash when trying to load DS1R collision but no PTDE collision root is set (credit to GoogleBen)
  • Fix map property editor not handling arrays correctly (credit to GoogleBen)
  • When loading a DS1R project, users may now be warned if CFG.Current.PTDE_Collision_Root is an empty string, or if the directory it points to does not exist. (credit to GoogleBen)
  • Hidden "Upgrade Text Files" for non-ER projects in Text Editor tool list.
  • Fixed issue with model container not being closed when saving, causing the save to fail in the Model Editor.

1.0.19.1

03 Sep 21:20
Compare
Choose a tag to compare

Map Editor

  • Added toggle for disabling the map query feature.
  • Map Query tool now waits for the user to explicitly choose to load the map data before running the async map loads.
  • Map Pieces now load correctly in DS2 (credit to GoogleBen).

Param Editor

  • Added GameSystemCommonParam discoveries by ElaDiDu.
  • Added discoveries reported by Drakrylos, Moonlight Ruin, Big MP, Lord Exelot.
  • Added CFG option that lets the user decide whether the ER regulation.bin is saved as DCX_DFLT_11000_44_9_15 if working with a post 1.12.1 regulation. The default is DCX_ZSTD, but other tools may not support that.

Model Editor

  • Added forward and upward display to the dummy polygons in the Model Editor (credt to GoogleBen).

Text Editor

  • Added the multi-select keybinds to the keybind window for the Text Editor.
  • Added "Select All" keybind in the Text Editor.

Bugfixes

  • Added safeguard to the map query load so it doesn't try and load bad filepaths.
  • Fixed to BB map load in Param quicklinks to use the correct MSB
  • Changed Keybinds window toggle keybind to F6 (was F5 by accident)
  • Search action in map properties will now open the Local Property Search tab
  • The currently viewed texture is disposed when switching projects in the Texture Viewer.
  • Fixed issue where List actions was never actually initialized in the Text Editor.
  • Fixed lag issue when using multi-select in the Text Editor.
  • Fixed duplicate name handling for games that don't use InstanceID so it still increments the postfix numbers properly.
  • Added 'during loading' property panel state whilst maps are loading to prevent a concurrency crash due to some of the property decorators accessing the current map lists.
  • Previously, LoadBinderResourcesAction.ProcessBinder would dispose of its BinderReader upon return in some cases, which is an error because that BinderReader could still be referenced by pending resource actions. This is fixed by using a ref counted wrapper around the reader and all values that potentially reference its Memory<byte> (credit to GoogleBen).
  • Model Editor now correctly cleans up on project switch (credit to GoogleBen).
  • Fixed a potential crash with Image Preview in Low Requirements mode.

1.0.19

22 Aug 15:05
Compare
Choose a tag to compare

Project

  • ProjectJsonPath is now set when the Create button is pressed, instead of within the Game Root section.
    • This prevents an issue where inputting Game Root, then Project Directory would result in an empty Project Root upon creation.
  • Added a tooltip to the project menu options so the blockers can be seen by the user.
  • Import Rows is now enabled by default when creating a new project.
    • Adjusted how it is handled in the Param Bank so the import action doesn't 'spread' like before.
  • Blocked F4 from being bound in the keybinds, allowing Alt F4 to work.

Alias Tabs

  • Fixed the Go to Alias action so it properly opens the Settings menu, and allows the Alias Tabs to be initialized.
  • Alias Tab text inputs are now normal inputs, not multiline.
  • Fixed tab selection when using Go to Alias action
  • If an alias doesn't exist, Go to Alias action will automatically add the name to the ID section of the Add panel

Paramdex

  • Added Bloodborne character aliases.
  • Added full Bloodborne Param META support.
  • Added allowMagicCast naming for EquipParamWeapon unknown_0x17c_7
  • Added several AC6 field discoveries (mainly from Drakrylos).
  • Changed ER PostureControlParam_WepRight/Left to account for the structure change reported by RashFever.
  • Added lots of names for Behavior, Bullet and AtkParam rows in the ER name lists.

Param Editor

  • Added map alias support for DS2 params that have Map IDs within their names.
  • Added support for ZSTD compression when saving ER params. (credit to ivi). Smithbox will automatically save ER params over param version 1.12 with ZSTD.
  • Added skips for the bad param loads instead of catching them with an exception, meaning DS1 and DS2 params load much quicker.
  • Added map link support for ReturnPointParam within a Bloodborne project.
  • Introduced param re-ordering (credit to GoogleBen):
    • Added the ability to reorder param rows.
    • Added GUI for reordering param rows & fields while in Editor Mode.

Map Editor

  • Restored arrow key navigation to the Map Object List.
  • Changed the toolbar actions so they follow the new collapsible window design the other editors use.
  • Import/Export Prefab panels are now collapsible windows within the Toolbar panel.
  • Selection Group panel is now a collapsible window within the Toolbar panel.
  • Local Property Search is now a collapsible window within the Toolbar panel.
  • Added support for DS2 MapObjectInstanceParam and TreasureBoxParam refs in the Map Editor.
  • Added a workaround that allows DS1R maps to display DS1 collisions in the editor.
    • Within a DS1R project, go to the Project Status window (under Settings) and point the Project Collision Directory to the PTDE .exe.
    • Smithbox will now use PTDE collisions when rendering the collisions within the Map Editor.
  • Added "Global Property Search" action: allows you to search all maps for specific property values.
    • Has three filters: Map, Property and Value. All support regex.
    • Map will filter which maps it searches (e.g. m61 will narrow the search to only the maps with m61 in the name).
    • Property will specify which property you want to target during the search (e.g. ModelName).
      • For array properties, add the index in square braces (e.g. EntityGroupIds[1]).
    • Value will specify which value you want to target during the search (e.g. c3000).
    • Searching will then produce a list of maps and the matches within them.

Model Editor

  • Added arrow key navigation to the column lists within the editor.
  • Added "Global Model Search" tool, which lets the user quickly search all maps for usage of a model,.
    • Lists the maps in which it is used, with a quicklink to load and select the map object that uses the model.

Gparam Editor

  • Added arrow key navigation to the column lists within the editor.

Time Act Editor

  • Added arrow key navigation to the column lists within the editor.
  • Added auto-select of lower tiers when changing selection.
    • For example, changing Time Act will auto-select the first Animation and first Event of that animation, instead of requiring the user to select.
  • Saving in the Time Act Editor is now done asynchronously, meaning Smithbox no longer hangs until the save is finished.
    • You cannot edit the TAE whilst it is saving however.
  • Saving an individual Time Act container will always occur (used to require a modification first). Save All will still only save modified containers.
  • Updated TAE Template for ER.
  • Updated TAE Template for BB.
  • Blocked saving in the Time Act Editor for AC6 until the TAE implementation is updated to properly support saving it.
  • Added support for creating, duplicating and delete Time Acts (including undo).
  • Added support for creating, duplicating and delete Animations (including multi-select and undo).
  • Added support for creating, duplicating and delete Events (including multi-select and undo).

Texture Viewer

  • Added arrow key navigation to the column lists within the editor.

Misc

  • Removed the input switch buttons and added the ImGui shortcut for raw input to the hover tooltips.

Bugfixes

  • Fixed exception if import project row names is used but the project names directory doesn't exist
  • Fixed an issue that prevented the duplication of lights in the Map Editor.
  • Fixed an oversight in the Text Editor that mean the Search and Replace tool would only affect the description text if targeting all categories.
  • Applied vertex fix from SoulsFormatsNEXT (credit ivi).
  • Fixed issue where MassEditScript tried to load when project type is Undefined.
  • Fixed an issue where the Map Query Bank would never been deemed initialized if the project type was Undefined, which blocked the project menu options.
  • Fixed issue where switching project would mess up the TAE Template used by the Time Act Editor.
  • Fixed "Toggle Selection Outline" keybind functionality so it actually switches the CFG var.

1.0.18.2

13 Aug 02:26
Compare
Choose a tag to compare

Map Editor

  • Restored regular Name field in map editor properties (credit to Strackeror).
  • Duplicating map objects now correctly uses the instance ID within the Name field as it did before 1.0.18.
  • Added UnkT04 discovery for SoundRegion (WwiseEnvPlaceTypeID).

Param Editor

  • Added task log when Sort Rows action occurs.

Time Act Editor

  • Added "Search for Value" tool: supports Animation ID, Event ID, Event Name and Event Value, lets you jump to the value location immediately.
  • Added "Duplicate" and "Delete" for Time Act and Animation entries (WIP, does not support Undo yet).
  • Saving in the Time Act Editor will now correctly save only modified files.

Bugfixes

  • Fixed PartsDrawParamID type in MSBE (credit to ivi).
  • Cleared the default keybinds for toggling "Show Pinned Params/Rows/Fields only" and "Sort Rows".
  • Fixed an exception when looking up the MSB Enums if the enum list is empty.
  • Fixed potential issues when loading prefabs during the import and list functions.
  • Fixed issue in the Param editor so it doesn't crash when a param is deleted entirely but also pinned.

1.0.18.1

08 Aug 22:41
Compare
Choose a tag to compare

General

  • Overhauled the menubar: reduces the icon menus to "Configuration", "Help" and "Keybinds".
  • Configuration window now presents the project information, settings and aliases in a more orderly fashion.
  • Overhauled the keybind menu: keybinds are now presented in a more orderly fashion.
  • Added several new keybinds.

Interface

  • Includes new interface options for child background and text colors.

Time Act Editor

  • Added an editor for editing TAE files. Functionality is not yet fully complete. Warning: not tested in-game yet either.
  • Supports all games: DS1, DS2, DS3, BB, SDT, ER and AC6.
  • Implements alias supports for Time Acts, Animations, Events and Properties.
  • Implements enums and param references for Properties.
  • Supports both Character TAE and Object/Asset TAE.

Param Editor

  • Added support for 1.13.2 (credit to ivi).
  • Added Pin Groups, which allow configurations of pinned param, row or field lists to be saved. Saved groups can be quickly switched between by double-clicking the entry in the pin group lists.
  • Added "Pin Selection" and "Unpin Selection" actions to the row context menu so rows can be quickly pinned instead of having to do it one by one.
  • Added the ability to automatically filter the param/row/field lists to display only the pinned params/rows/fields, allowing pin groups to act as 'views'
  • Added support for ShopLineUp image previews (credit to ivi).

Map Editor

  • Overhauled the Prefab tool (credit to Strackeror).
  • Duplication now retains references if both elements are duplicated (e.g. Treasure and the Asset it references).
  • Updated MSBE to include Message UnkT08 info (credit to ivi)

Bugfixes

  • Fixed an issue where keybinds would not appear in the keybind menu.
  • Fixed issue with cloning enemies in DS1/DS1R