Stage config spec changelog =========================== Changes to the format of stage config JSON files will be documented here. The format is based on `Keep a Changelog `__, and this spec adheres to `Semantic Versioning `__. .. contents:: :local: :depth: 1 [0.6.0] - 2022-12-03 - Rolled Out v0.5.7 ---------------------------------------- This released with Rolled Out! v0.5.7. Added ~~~~~ - Mesh node data: ``goal_volume`` and ``warp_distance`` were added to make passing through a mesh finish the stage - Mesh node data: ``gravity_volume`` and ``gravity_dir`` were added to change gravity direction (permanently, like gravity floors) Changed ~~~~~~~ - Quaternions are now normalized when loading a stage config [0.5.0] - 2022-06-25 - Rolled Out v0.5.6 ---------------------------------------- This released with Rolled Out! v0.5.6. Added ~~~~~ - Mesh node data: ``trigger_volume`` was added to make a mesh act as an invisible trigger, even if it is not marked as a wind or fallout volume. This can be used in conjunction with ``activate_touch_platform_groups`` to start animations when entering a trigger volume. - Bonus stages can be marked with ``"bonus": true`` on the root object of a config - ``"timer_seconds": null`` can be used to make stages with no time limits [0.4.0] - 2021-11-16 - Rolled Out v0.5.5 ---------------------------------------- This released with Rolled Out! v0.5.5. Deprecated ~~~~~~~~~~ - Axis string: ``none`` has been deprecated (it works identically to the ``y`` axis when used as the seesaw axis) [0.3.0] - 2021-03-22 - Rolled Out v0.5.0 ---------------------------------------- This released with Rolled Out! v0.5.0. Added ~~~~~ - ``conveyor_uv_velocity`` was added as a mesh node option (of type Vector2), for conveyors that should follow a mesh's UVs - ``animations`` was added as a material option (of type Array[Identifier String]) - Animations with channels that reference paths like ``parameter_overrides.scalar.metallic_multiplier`` or ``parameter_overrides.vector2.tex_coord_offset.y`` can now be used to animate materials - ``scalar``, ``vector2``, and ``vector3`` properties are supported Changed ~~~~~~~ - ``conveyor_velocity`` was renamed to ``conveyor_local_velocity`` - Touch platforms have been overhauled - In short: instead of touch platforms groups being connected to mesh nodes, they can now be connected to any animation (including material animations). Mesh nodes can specify an array of which touch platform groups they should activate. - Touch platform group object > ``animations`` (``Array[Identifier String]``, default ``[]``) has been added - Touch platform group object > ``playback_speed`` (Float, default ``1.0``) has been added - Touch platform group object > ``ping_pong`` (Boolean, default ``false``) has been added - Touch platform group object > ``playback_type`` has been removed (use ``ping_pong`` for ping pong animations, and define looping animations by setting ``loop_zone`` on animation objects. - Touch platform group object > ``name`` (``Identifier String``) has been added otherwise specify on your animations whether they should play once or loop with a loop zone) - Touch platform group object > ``nodes`` has been removed (and replaced with the below bullet point) - Mesh nodes now specify themselves what touch platform groups they activate with a ``activate_touch_platform_groups`` array - Mesh node ``touches_enabled`` has been removed Deprecated ~~~~~~~~~~ - Switch node data Object > ``link_nodes`` was deprecated. Eventually, switches should be linked to animations, instead of linked to scene nodes containing animations. This replacement doesn't exist yet. Removed ~~~~~~~ - Various bits related to touch platforms has been removed with the touch platform rework. See the Changed section for a breakdown. [0.2.0] - 2020-11-05 -------------------- Added ~~~~~ - ``timer_seconds`` was added as an integer option to the root of the config. This lets you specify the number of seconds a player has to complete the stage. [0.1.0] ------- Nothing to note here, this is when we started versioning this