Releases: Joshuarox100/VRC-Inventory-Inventor
Inventory Inventor v1.3.3
v1.3.3
Important bug-fix for the auto-updater so it receives new versions correctly. If you are currently on v1.3.2, you will not receive automatic updates because of it. Sincerest apologies for the inconvenience.
Fixes
v1.3.3
- Fixed a bit of an oversight with the updater changes.
v1.3.2
- Added preliminary support for arbitrary parameter space in the UI.
- Default controller templates and animations are now included in II.
- Fixed a UI issue with dark mode that caused text to appear black.
- Revised the auto-updater to support future versions.
v1.3.1
- Bandaged an issue with Menu creation that caused incorrect Menus to be found or used if their names were similar and contained whitespace. (Found by @MikeMatrix)
v1.3.0
- All instances of the chosen Animator are now replaced in the Avatar Descriptor.
- Fixed a long-standing bug with new Page creation that occurred when names were already in use (The correct item should now be renamed).
- Fixed a bug with the "Corrupt Member" error message that didn't specify the correct item when triggered by buttons. (Found by @MikeMatrix)
- Aaaaaand here's all the Unity 2019 related ones:
- Changed references for "UnityEngine.Experimental.UIElements" to "UnityEngine.UIElements" so it would compile.
- Removed the IsDirtyUtility Subclass since the "EditorUtility.IsDirty" function is Public in Unity 2019.
- Added a bar to the tops of Reorderable list footers since they no longer have one by default.
- Fixed Data & Memory usage bar colors so that they work in both light & dark mode.
- Fixed the styling of ToolbarTextFields to not blend in with the color of Box sections.
- Changed the style of overlapping Boxes to Helpboxes since the border of Boxes was removed.
- Adjusted some spacing between elements in the Manager window to prevent the Create button from going off the screen.
- Subtly changed the way the destination option was displayed in the manager to better align with other settings.
- Adjusted the About window to account for the new VERSION file format.
- Edited the text in the About window as well as several Textfields & Labels scattered in other areas to support dark theme.
- Edited the "Append Preset" window to both support dark theme and to not crunch the "No Preset Selected" text.
- Corrected some code involving asset loading that caused submenus to not be preserved during export in 2019 exclusively.
(The major version's release notes will now follow.)
WOOT UNITY 2019 IS HERE BABY! DARK MODE FOR ALL! cough- sorry about that. Anyways, this is a feature update! Several new features have been added, as well as support and compatibility for Unity 2019.
Due to the somewhat sudden release of VRChat's Unity 2019 upgrade, this version hasn't been able to be vigorously tested in the updated engine. Visual bugs in the Editor may be present, if you find one, please report it to the Issue's page on GitHub, not to me on Discord.
New Features
- Unity 2019 Support!
Following VRChat in its footsteps, Inventory Inventor is now being built upon Unity 2019. All UI elements have been adjusted to work with the new theming and design language better. - Dark Mode Compatibility
With the upgrade to Unity 2019, everyone now has free access to Dark mode. Because of this, support for it has now been implemented into Inventory Inventor. - Copying & Pasting
Copying and pasting is now possible with Pages, Items, & Groups. Both options can be found when right-clicking them in the Directory (or the header for Groups).- Settings are copied to the system buffer, so any changes made after copying settings won't be pasted. It will also overwrite whatever you currently have saved to the clipboard.
- All members copied from one type of Group can be pasted as any other type, meaning you can copy a Button's Group and paste it into a Toggle's Enable or Disable Group for example and vice-versa. (Suggested by @noideaman)
- More Context Menu Options
Right-clicking Pages, Items, & Groups now provides several more options than before:- In addition to copying & pasting, you can now duplicate or delete Pages & Items after right-clicking them in the Directory.
- You can now set all members of a Group at once or clear a Group entirely after right-clicking the Group header.
- Additional Toggle Settings
When using Animation Clips for Toggles, new options have been added for better control and adaptability:- You can now set a duration for the transition in either fixed or normalized time, this is useful for blending animations such as those that affect opacity or blend shapes.
- You can now offset the animation's starting point while your avatar is loading, this is useful for progressive animations such as dissolves.
Changes
- General
- The location of relevant windows such as the Manager have been relocated to "Tools/Joshuarox100" instead of "Tools/Avatars 3.0"
- The README has been updated with new documentation for introduced features and includes some modifications to the Troubleshooting section.
- A new social preview for the GitHub has been applied and is also included in the "Images" folder.
- Inventory Manager
- The last used destination is now saved within each Preset and is automatically used if possible when selecting the Preset in the Manager. (Suggested by @sinni800)
- Presets
- Toggles with syncing disabled (local-only) are now able to be saved locally.
- The icon for Presets has been updated to match the new design language of the Editor.
Inventory Inventor v1.2.5
v1.2.5
This is a quick patch to the updater so that updates between Unity 2018.4 and Unity 2019.4 for Inventory Inventor are distinguishable. Unfortunately, I'm both not knowledgeable or determined enough to maintain two separate builds of the tool for 2018.4 and 2019.4, so consider this to be the last version supported for Unity 2018.4.
VERY IMPORTANT NOTE: Before upgrading your project to Unity 2019, install Inventory Inventor v1.3.0, which should release at the same time the update for VRChat goes live. Otherwise, things will break and you will likely be unable to upload avatars due to compiler issues until you manually update it, since the included updater likely won't work either.
Fixes
v1.2.5
- Modified the VERSION file syntax to include the supported Unity version and modified the Updater to account for the information.
- Fixed an issue with the AutoUpdater that could result in it failing midway through the installation.
v1.2.4
- Modified the solution introduced by the previous patch to not require the usage of extra unsynced parameters within the animator.
v1.2.3
- Worked around the saved parameter issue to display the default state of the inventory to remote clients until the local client has loaded their avatar themselves.
v1.2.2
- Added several null checks to fix problems when viewing presets for an avatar without Expression Parameters assigned.
- Fixed an oversight that caused the script to use the wrong animation file generated for objects.
v1.2.1
- Added a null check for Subpage Items when they can't find the page they link to during appending.
v1.2.0
- Added a null check for using Controls on an avatar without assigned parameters.
- Fixed an ingame syncing issue that was caused by some VRChat update regarding buttons.
(The major version's release notes will now follow.)
I should probably be focusing on my college work instead of this...
This is a FEATURE RELEASE.
Several things have changed with this release, but all your existing Presets will be usable after following the steps in Update Instructions.
Due to the amount that has either been added or changed in this release, you may encounter some minor bugs that I failed to expect or encounter during testing. If you encounter something during usage that you believe is either a bug or unintentional, please contact me on Discord or leave a post under the Issues tab here in GitHub. You can find links to both of these resources in the README.
Summary
Summarizing this release is a tad difficult due to how much has changed.
There have been many additions and changes relating to Presets such as the ability to import Expressions Menus, copying Pages from other Presets, and moving Items between Pages. Additionally, there are several tweaks to the tool as a whole as well as the addition of an automatic installer for future updates. There are also a couple fixes to a few critical flaws that I was not made aware of until recently.
Update Instructions
To update to this release from a previous version (prior to 1.2.0), please delete the version you previously had first. This should include the following folders/files: "Assets/Inventory Inventor" and "Assets/Gizmos/InventoryPreset Icon.png". If you do not delete these files first, you will have compiler errors and missing icons for Presets.
Additionally, although it is not required, it's recommended that you enter the settings and manually upgrade all your Presets after updating to this release, since the code that does it automatically will only run on future updates installed through the tool. If you do not do this, your Presets will not have the correct icon and they will also not be usable in various menus. Selecting a Preset in the Project window will also automatically upgrade it and allow it to be used again, but the button in the settings will be quicker if you have several Presets in the same Project.
New Features
- Importing External Expressions Menus
This is a new way to create Pages within a Preset. If you already have a VRC Expressions Menu that you want to have somewhere inside the Preset, you can import it as a new Page using this option. This option can be found by clicking on the icon to the right of the 'Create Page' button.- If you choose to, you can also import any submenus within the menu's structure as well. This will import every submenu found in the menu, as well as those within those submenus. With this option, all Controls referring to imported submenus will be remade as Subpages instead.
- Appending Other Presets
This is another new way to create Pages within a Preset. You can use this option to copy Pages from another Preset. After selecting a Preset to copy from, all its Pages will be listed and you can choose which Pages you want to add. This option can also be found by clicking on the icon to the right of the 'Create Page' button.- If you copy a Page containing a Subpage Item without copying the Page it refers to, it will not lead anywhere.
- If you copy a Page containing a Toggle that has a Group that refers to an Item on a Page that was not copied, it will be set to none.
- If you copy a Page with a name that's already used in the Preset you're copying to, it will be renamed as it normally would.
- Moving Items between Pages
You are now able to move Items between Pages by right-clicking on them and choosing a different Page.- Pages that already contain the maximum number of items are excluded from the selectable list. If no Pages are able to be used, right-clicking an Item will simply not do anything.
- Project Settings Support
Inventory Inventor now has a few persistent settings you can access within Project Settings ('Edit -> Project Settings').- You can enable or disable the Automatic Update Checker (see below).
- You can choose to allow the usage of animations that modify invalid types of properties (see below).
- You can change the default path the Manager reverts to when it is unable to use the one you assigned (Must be located within the Assets folder).
- You can choose to automatically search for and upgrade any older Presets found within the Project.
- Automatic Update Installer
If enabled in the settings, Inventory Inventor will silently check for any updates when Unity is starting and will prompt you to install them. This is also implemented in the 'Check for Updates' button.- If you choose to install them, they will automatically be downloaded and properly imported.
(All Presets in your Project will automatically be upgraded if needed when a new update is installed.) - If no updates were found for any given reason (lack of Internet, already using the latest, etc.), nothing will be displayed.
- If you choose to install them, they will automatically be downloaded and properly imported.
- Allowing Invalid Animations
The new settings have an additional setting for allowing animations that modify invalid types.- All animations used in Presets are applied in the FX layer. This setting allows you to use Animations that normally wouldn't work correctly in this layer. There are several cases where this behavior does work despite VRChat's warnings, so this option has been included for those who know what they're doing and want to bypass the type restriction.
- New Example Assets
There are now a few more example assets for you to refer to included in the package.- The existing example has been named 'Complex Cubes'.
- A new example called 'Simple Shapes' is a more updated example using some of the newer features included in v1.1.x.
- One of the Presets, 'Tutorial', featured in the README's screenshots is now included.
Changes
- General
- Swapped the placement of Yes/No options to be consistent with the rest of the tool and Unity as a whole (sorry for ruining your muscle memory).
- Code has been further divided into separate files to improve readability.
- File Structure
- The overall folder structure has been expanded to improve file organization.
- All scripts relating to Inventory Inventor are now (if possible) integrated into a unique namespace, preventing any possible naming conflictions with other tools.
- The 'Example' folder has been renamed to 'Examples' and contains additional examples.
- BMB Libraries is now stored internally under 'Libraries' instead of in its own folder at the Project root.
- Inventory Manager
- The last destination used for applying a Preset is saved and used the next time the Manager is opened.
- The window for removing Inventories now highlights Expression Parameters in purple when the corresponding option to remove them is selected.
- The window for removing Inventories now has a sticky header in the scrollable portion.
- 'Check for Updates' has been modified to utilize the Automatic Update Installer.
- Presets
- Made Pages easier to select and reorder.
- Pages can now contain zero Items.
- The Item a Group entry refers to can now be set to none.
- Subpages can now lead nowhere.
- Buttons now are actually controlled by buttons ingame.
- A Control's type is now labelled as a subtype to reduce confusion.
Inventory Inventor v1.1.3
v1.1.3
This patch fixes a few more issues regarding a off-by-one error and handles a few niche data issues that can occur.
Fixes
v1.1.3
- Fixed an off-by-one error that prevented all possible toggles from being addable to buttons.
- The manager now properly handles a Schrodinger's group item.
- The manager will now replace the Avatar's starting menu if the starting menu was the Inventory previously.
v1.1.2
- Members can now properly be added or removed from groups.
v1.1.1
- Items now properly display their settings if their hosting page is reordered while the contents were being viewed.
(The major version's release notes will now follow.)
Been a while, but Parameter Persistence was enough to bring me back.
This is a FEATURE RELEASE. Several things have changed with this release, but all your previously made Presets will be usable*.
Most notably is the introduction of an entirely new UI for editing Presets, two new Item types, and the ability to save the state of Toggles in the Inventory between worlds and when switching Avatars.
To update to this release from a previous version, please import this package directly over the old one. Don't do deletion installs.
New Features
- Entirely new user interface for creating Presets.
- You can now use Game Objects within Toggles instead of Animation Clips.
- Presets now display the amount of data and memory that they use.
- Presets now refer to active Avatars in the Scene for certain settings.
- Presets can now allocate bits of Expression Parameter memory to use for saving the states of Toggles.
- Two new Item types were added: Buttons and Controls. (View the README or the GitHub page for more info.)
- The Removal tool in the Manager can now also remove associated Expression Parameters if desired.
Changes
- Submenu Items have been replaced by Control Items*.
- Page Items are now referred to as Subpages.
- Subpages can now use an alias instead of the name of the Page they direct to.
- Proper future-proofing is now implemented for later feature releases; older versions of Presets will be upgraded in a way that retains their former settings.
- Presets no longer save when changes haven't been made.
- The images used for the README are now included in the package.
* - All Submenu Items will automatically be converted to Control Items when this update is installed, but you will need to manually go in and give them the menus they were meant to go to again. This kind of issue shouldn't be a concern with future releases or patches, as this version adds proper future-proofing.
Inventory Inventor v1.0.5
v1.0.5
Quickly patched some Inventory issues that occurred during calibration for some users due to recent VRChat updates.
Fixes
- Local Inventory boolean parameters are now set to their initial states within the controller before upload to guarantee the Avatar returns to the correct state when calibrating.
Inventory Inventor v1.0.4
v1.0.4
Another quick patch to correct an oversight in the code causing errors when an unsynced toggle is configured before an automated one.
Fixes
- Corrected a check that should have caught when too few auto toggles were present.
Inventory Inventor v1.0.3
v1.0.3
Just a quick patch fix to resolve some issues regarding Animator Controller modification. If you had problems with Sub-State Machine transitions disappearing, it should be fixed now.
Fixes
- Sub-State Machines are now properly handled by Inventory Inventor.
Changes
- Animator Controllers are now duplicated and stripped of Inventory layers during creation and removal, rather than being rebuilt from scratch via deep cloning.
Inventory Inventor v1.0.2
v1.0.2
This is just a quick patch fixing a minor issue with the saving of Expressions Menus. Not much else to say aside from that.
Fixes
- Expressions Menu references are now properly retained after a restart.
- Changes made to Expression Parameters are now properly retained after a restart.
Inventory Inventor v1.0.1
v1.0.1
And as I expected, there was a bug I missed.
This patch fixes a crash caused by switching off of or reloading an Avatar using Inventory Inventor. This patch can be imported on top of your existing installation if you already have it. After updating Inventory Inventor, simply reapply your Preset to your Avatar to apply the fix.
Fixes
- A crash caused by switching or reloading Avatars using Inventory Inventor should no longer occur.
Changes
- Changed how Inventory Layers are identified for removal due to the previous method causing a crash.
- The Inventory Machine behavior is no longer used but remains in the package for legacy support and upgrading.
Inventory Inventor v1.0.0
v1.0.0
Summary
This is the official first release of Inventory Inventor to the public. This version is zero percent compatible with v0.1.0. So if you have that version for whatever godforsaken reason, please remove it and use this instead. You'll be glad you did.
Being the first public release and the 80 to 100+ hours that have been spent coding this over the past several weeks, I fully expect there to be bugs and issues that I hadn't accounted for. If you do come across one, please let me know either here on GitHub under the Issues page or over on Discord. There will likely be a patch released sometime next week once a few issues have been discovered and fixed.
Changes
- Reworked quite literally everything.
- Inventories are now made within a custom Asset called a Preset.
- Inventories can now be properly removed using the 'Remove' operation in the manager.
Inventory Inventor v0.1.0
v0.1.0 (Initial Release)
Initial Release