Skip to content

Releases: risk-of-thunder/RoR2EditorKit

3.4.0 - Scale Helper

05 Nov 16:40
Compare
Choose a tag to compare
  • RoR2EditorScripts Changes:
    • Added a Scaling Tool window, used to roughly see how big something is compared to ror2 bodies and stages.
    • Changed the EntityStateConfiguration inspector to use the old IMGUI version instead of visual elements.
      • All improvements made are also in the IMGUI inspector.
      • EntityStateConfiguration inspector no longer tries to serialize fields marked as constant
    • Added a Gizmo for visualizing the scale of a HitBox

3.3.1 - SerializableShaderWrapper

27 Oct 18:57
Compare
Choose a tag to compare

'3.3.1'

  • Core Changes:

    • Added SerializableShaderWrapper
      • Serializes shaders by serializing their shader.name and their GUID's
    • The material editor now works properly by using the SerializableShaderWrapper
    • Added new utilities to the AssetDatabase utils class
    • Added AssetRipper's Shader asset post processors.
      • This in turn should fix unity destroying YAML shader assets.
  • RoR2EditorScripts changes:

    • Stage Creator wizard now prefixes the scene's name with the token prefix
    • Fixed an issue where having mutliple inspectors would break the Skill Locator inspector.
    • Fixed an issue where the CanBeRandomlyTriggered bool for EquipmentDefs wouldnt show
    • Exposed HGCloudRemap's Internal Simple Blend Mode property

3.3.0 - You're a Wizard Harry.

24 Sep 00:12
Compare
Choose a tag to compare

'3.3.0'

  • Core Changes:

    • Improved material editor so it doesnt wipe itself
    • Added wizard systems
      • A wizard allows you to create complex jobs for your project.
    • All the asset GUID contants are now under Constants.AssetGUIDS class.
      • Added a QuickLoad and GetPath methods for AssetGUIDS class.
    • Added FormatPathForUnity and GetCurrentDirectory to IOUtils.
    • Extended inspector's object name conventions have been extended.
      • Can now specify both a custom help box message and custom name validation function
    • Component Inspectors now always have the fancy enable toggle visual element.
  • RoR2EditorScripts changes:

    • Added ModCreator wizard.
      • Creates an Asmdef, manifest, assetbundle folder and main class for a mod
    • Added StageCreator wizard
      • Creates a template stage and scenedef
    • Added CharacterBodyCreator Wizard
      • Creates a valid CharacterBody by supplying minimal data and the FBX game object for the model.
    • Added a SurvivorCreator Wizard
      • Creates a SurvivorDef and DisplayPrefab, the DisplayPrefab is taken directly from the specified CharacterBody's model.
    • Added MapNodeGroup inspector
      • MapNodeGroup inspector allows for easy placement of nodes and utilities (Thanks Anreol & IDeath)
    • EntityStateConfiguration no longer renames the asset file without consent if naming conventions are enabled.
    • Added JumpVolume Inspector
      • Automatically calculates the JumpVelocity using the Time variable and the TargetElevationTransform variable.
    • Added SurvivorDef Inspector
    • SerializableSystemType changes
      • SerializableSystemType can now obtain the required type if the field is an Array.
      • SerializableSystemType no longer fails to populate if a Type does not have an enclosing namespace.

3.2.2 - Fixes and Improvements

30 Jun 03:22
Compare
Choose a tag to compare

'3.2.2'

  • Core Changes:

    • XML documentation file now always appears when ROR2EK is installed via the UPM
    • Extended editor window's opening methods now return the instance
  • RoR2EditorScripts changes:

    • ESC asset name now updates to the target type when the enable naming conventions is on
    • ESC now displays a tooltip for serializable fields if the FieldInfo had the Tooltip attribute
    • Updated Skill Locator for new bonus stock override skills
    • Characterbody's crosshair prefab now properly shows in the inspector

3.2.1 - Code Cleanup

23 May 20:47
Compare
Choose a tag to compare

'3.2.1'

  • Core Changes:

    • Cleaned up the code
    • Added XML documentation file
    • ListViewHelper now has a refresh method
  • RoR2EditorScripts changes:

    • Cleaned up the code

3.2.0 - Editor Windows

22 May 18:22
Compare
Choose a tag to compare
  • Core Changes:

    • Added "GetParentProperty" extension for SerializedProperty
    • Added "SetDisplay" extension for VisualElements
    • ListViewHelper's SerializedProperty can now be changed, allowing for dynamic use of a ListView
    • ListViewHelper's created elements now have the name "elementN", a substring can be used to get the index of the serialized property
    • Improved the ExtendedEditorWindow:
      • Now works like pre 2.0.0 ExtendedEditorWindow
      • Still uses VisualElements
      • ExtendedEditorWindows can load their UI via TemplateHelpers
      • Contains a SerializedObject that points to the instance of the ExtendedEditorWindow
    • Added ObjectEditingEditorWindow
      • ObjectEditingEditorWindow's main usage is for constructing more complex editing tools for objects
      • ObjectEditingEditorWindow's SerializedObject points to the inspected/editing object
  • RoR2EditorScripts changes:

    • Added an AssetCollectionInspector

3.1.0 - IMGUI is gone

10 May 00:44
Compare
Choose a tag to compare

There are no more inspectors that use IMGUI now, huzzah for visual elements!

  • Core Changes:

    • Added Missing XML Documentation
    • Added "HasDoneFirstDrawing" property to ExtendedInspector
    • Added "ListViewHelper" class
    • PropertyValidator now works on PropertyFields, as well as any VisualElement that implements "INotifyValueChanged"
    • Made the returning value of the PropertyValidator's Functions nullable (Returning null skips the container drawing process)
    • Removed UtilityMethods from ExtendedEditorWindow
    • Improved the look of the MaterialEditorSettings and EditorInspectorSettings inspectors & settings window
  • RoR2EditorScripts changes:

    • Redid the following inspectors to use VisualElements:
      • ChildLocator
      • EntityStateConfiguration
      • ObjectScaleCurve
    • Readded Tooltip and Labeling from NetworkStateMachine feature
    • Added SerializableContentPack inspector

3.0.2 - The mind is feeble

08 May 04:18
Compare
Choose a tag to compare

I thought i fixed the RoR2EditorScripts assemblyDef from not being editor only, i was wrong.

this makes them editor only, for real this time.

3.0.1 - Forgotten Tidbits

07 May 15:38
Compare
Choose a tag to compare
  • Core Changes:

    • Fixed ScriptalbeObjectInspector drawing multiple InspectorEnabled toggles (3 inspectors = 3 toggles)
    • Added ReflectionUtils class
  • RoR2EditorScripts changes:

    • Changed the method that the EntityStateDrawer and SerializableSystemTypeDrawer uses for getting the current Types in the AppDomain

3.0.0 - Package Repo and Improvements

07 May 02:34
Compare
Choose a tag to compare

Package Repo

RoR2EditorKit has always been a Project Repo from its inception, This was due to not having enough knowledge on how to handle Package repositories, this has now changed, and RoR2EditorKit is not setup as a PackageRepo

This allows end users to directly add RoR2EK via the unity's package manager.

Extended Inspector "De-Crappyfication"

The extended inspector while useful, had some major flaws in design that made working with it bothersome in certain scenarios, As more inspectors and utilities where added for RoR2EK, it soon became evident we had to standarize a lot of methods from the project.

Naming Conventions

The entirety of the naming convention system from the ExtendedInspector has been cut and replaced by an Interface and a struct, this Interface+Struct combination allows for extremely easy implementation of naming conventions, all of RoR2EditorKit inspectors follow this new system, examples include the ArtifactCompoundDef, BuffDef and EliteDef inspectors

ContextMenu utilities

The process of adding new ContextMenus can be bothersome, having to create a method for creating the context menu event handler, and then populating the contexTMenu with more actions, which themselves need more methods and so on. We've added the AddSimpleContextMenu method, which adds a contextMenu based off the VisualElement to attatch it to, and a struct for holding the data of the ContextMenu, the visualElement and menu are stored in a dictionary, which means multiple calls of the method will always add a new action to the same element's contextMenu.

Property Validators

Certain inspectors came with the ability to notify the end user when certain aspects of the inspected object where considered "Invalid", a key example of this was the ability to continuously keep what is called the "Elite Loop" (Elite Def -> EquipmentDef -> BuffDef -> EliteDef). The original systems for this where extremely cumbersome to manage and not at all easy to replicate in other classes.

We've added the PropertyValidator class, this type of class can be used for standarizing and creating validation systems for PropertyFields, what used to take a massive method for creating a property validator can now be done in a single class by creating it, and calling the AddValidator method.

Examples of the usage of these can be found in the BuffDef, EliteDef and EquipmentDef inspectors.

Styling is King

We've decided to recreate most of the Inspectors from RoR2EK with the changes above, this includes changing the visual aspect of them.
To aid with any type of extensions that try to mimick RoR2EK's now defined styles, we've replaced all of our USS files into the Component & ScriptableObject USS files, below is an example of the old look of the EquipmentDef and its new look