Skip to content

Releases: EverestAPI/CelesteTAS-EverestInterop

v3.47.0 (Studio v3.10.0)

24 Dec 11:40
v3.47.0
2842bf9

Choose a tag to compare

## Improved Auto-Completion

Auto-complete has been has been a big feature of the initial Studio v3 release,
however now with over a year of user feedback, there have been some improvements:

Importancy Ranking

All entries are now ranked, such that the most relevant ones are more likely to be at the top.
This is achived by placed them into 4 different categories, which are listed in the following order:

  1. Favourites: These are manually chosen by clicking on the heart icon and always appead on top
  2. Frequently Used: These are your top-5 most used entries (note that an entry is only counted when it is actually selected)
  3. Suggestions: These are suggestions from the game, based on what could be useful in the current situation
  4. Uncategorized: This is everything remaining, which doesn't fall into another category

Reduced Clutter

Entries which have seen basically no usage have been removed to reduce visual clutter.
Additionally, the popup window now attempts to take up less space.

Feedback

Please continue to share feedback about the auto-complete feature - but of course everything else too! - so that they can further be improved.


## Custom-Info Editor

The Custom-Info editor has now been upgraded from a simple textbox into a full proper editor!

That includes auto-completion, syntax-highlighting and a live preview.
With this, it should now be considerably easier to quickly create a Custom-Info template for something specific.

Additionally, the Game Info displayed in Studio is now a proper textfield, meaing you can select and copy anything from it with ease.


New Commands

RequireDependency

This command declares dependencies required for the TAS to run, which can easily be installed with a respective dialog box.
Examples:

  • RequireDependency, StrawberryJam2021 for any version
  • RequireDependency, StrawberryJam2021, 1.10.0 for specifically v1.10.0 or higher

ActivatedLobbyWarps

This command tracks which warp points have been activated during the TAS' execution,
which can be useful for lobby routing or sync-checking.
Example: ActivatedLobbyWarps: [4, 7]


Features

  • Add accurate hitbox rendering for CommunalHelper Melvins
  • Allow other mods to open a 3rd-party text window in Studio
  • Add RequireDepenency command
  • Add ActivatedLobbyWarps command
  • Display popup when generated TAS file contains errors
  • Add Favourite/Suggestion/Frequently Used entries to auto-complete menus
  • Rework Custom-Info Editor into own popup
  • Allow for selection of text from the Game Info box
  • Add auto-complte support for StateMachine states of Player/Seeker/Oshiro
  • Allow setting VirtualButton fields/properties directly
  • Add BossesHelper support to SeedRandom command

Bug Fixes

  • Inaccuracies in RTA timer
  • Deadlock when stepping back into freeze frames
  • Inactive timers showing up in Info HUD when TimeRate is zero
  • Properly save altered Crouch Dash and Grab modes in savestates
  • Desync caused by inconsistant timings for exiting options menu
  • Folder path with spaces not being correctly opened Finder on macOS
  • Integrate Read Commands incorrectly skipping some lines at the start/end
  • Light/Dark title bar not being properly applied on Windows
  • Properly style bottom-right corner tile of scrollbars on Windows (R.I.P. ugly white square)
  • Undo-state getting corruped by fix-up actions
  • Don't register mouse inputs while window isn't focused
  • Crash if entity has a null scene
  • Use quotes if generated console command uses spaces
  • Avoid starting TAS when manually starting recording with TAS Recorder
  • Certain entities not being watchable in the Info HUD

Tweaks

  • Hide JungleHelper fireflies with Simplified Graphics
  • Hide light beams with Simplified Graphics
  • Hide KoseiHelper Debug Renderer with Simplified Graphics
  • Enable appended Actual Collide Hitboxes by default
  • Clear discovered lobby map when 'console load'ing
  • Always allow for tab-completion in the auto-complete menu

Removals

  • Unused clutter in parameter auto-complete for Set/Invoke commands

Commit Details

Features

Bug Fixes

Read more

v3.46.2 (Studio v3.9.7)

05 Aug 17:17
c3595e5

Choose a tag to compare

Repository Cloning

You can now easily clone Git repositories directly from Studio!
Simply goto File -> Clone Git Repository... and enter the appropriate URL and target directory.

This has the advantage of always cloning the respective submodules as well, unlike GitHub's "Download .zip" option.


Features

  • Utility to clone Git repositories from Studio

Bug Fixes

  • Commands like Set,Player.Speed.X,300 not working (any Set command referencing value types in value types)
  • Exception when setting element of collection with [] indexing syntax
  • Disable hotkey inputs in modded binding GUIs
  • Trim room labels before validating
  • Incorrectly rendering various SkinModHelper+ features on skin

Commit Details

Features

Bug Fixes

Code Refactoring

  • ac393a3 Change default parameter for GetAll*Infos to include static (@psyGamer)

Builds

Continuous Integration

v3.46.1 (Studio v3.9.6)

01 Aug 15:08
bc324b3

Choose a tag to compare

Features

  • Ignore breakpoints inside files accessed with Read commands
  • Add * spread operator to target-queries, to flatten out collections (e.g. Set,Player.ChaserStates*.TimeStamp,0)
  • Add [] index operator to access individual elements of collect (e.g. Get,Player.Sprite.animations[idle].Delay)
  • Allow specifying custom file name for StartRecording,FileName

Bug Fixes

  • Avali SkinMod not working with "Prevent Skin-Mod Gameplay Changes" option
  • Changes in breakpoint playback speed not immediately being respected
  • RNG seeding being applied outside of TAS
  • Not being able to set statemachine states with names (e.g. Set,Player.StateMachine.State,Player.StNormal)
  • Auto-complete with Invoke commands not being avaiable when mods have unloaded optional dependencies
  • "Game Settings" menu in Studio not reflecting changes to numeric inputs
  • Apply correct theme for changelog popup dialog

Tweaks

  • Adjust wording / duration of auto-pause toast message

Commit Details

Features

Bug Fixes

Styles

Code Refactoring

  • c177bb9 Add universal reporting system for warnings/errors in TASes (@psyGamer)
  • 4c137ab TargetQuery: Require explicit spread operator ('*') to flatten collections (@psyGamer)

Tweaks

  • da38764 Move auto-pause toast message to dialog system and increase duration to 8s for first time (@psyGamer)

Builds

v3.46.0 (Studio v3.9.5)

23 Jul 19:18
813ea63

Choose a tag to compare

Universal RNG Seeding

Even though most things in Celeste are deterministic, some are not!
To solve this issue, CelesteTAS now changes all randomness to have deterministic behavior.

Additionally, all (technically) undeterministic randomness can now be seeded with the SeedRandom,[Target],[Seed] command.
You can refer to the wiki page to read about all supported cases and the ethics surrounding them.

Please report any remaining cases of undeterministic behaviour or randomness!
That also includes deterministic behavior which breaks with seemingly unrelated changes.


Features

  • Consistent behaviour of randomness when running a TAS
  • Universal RNG seeding system with SeedRandom command

Bug Fixes

  • Maintain correct Calc.Random state while fast-forwarding
  • Dust sprites not being created while fast-forwarding

Commit Details

Features

Bug Fixes

Tweaks

  • dae5166 RNG: Reset non-Calc.Random seeds at beginning of every level (@psyGamer)

Builds

v3.45.4 (Studio v3.9.5)

18 Jul 12:03
ce210f4

Choose a tag to compare

Features

  • Allow force-enabling accessibility tools only after doing a casual playthrough

Tweaks

  • Better communicate warnings / risks about force-enabling accessibility tools in options

Commit Details

Features

  • 202d377 Add "After Casual Playthrough" option for force-enabling accessibility features (@psyGamer)

Tweaks

  • c7683e3 Move "For Current Session" option between the default and "Always" (@psyGamer)
  • 0bd1316 Make warnings about force-enabling accessibility tools more prominent to the user (@psyGamer)
  • 259fc88 Wording and presentation of warnings about force-enabling accessibility tools (@psyGamer)
  • 11b860e Dialog: Add German translation for "Prevent Skin-Mod Gameplay Changes" option (@psyGamer)

Builds

v3.45.3 (Studio v3.9.5)

16 Jul 15:11
9edab2b

Choose a tag to compare

Features

  • Allow force-enabling accessibility tools only for current session
  • Add --validate-room-labels CLI option to promote room label validation from a warning to an error

Bug Fixes

  • Crash when removing last line in Studio
  • Project File Formatter tool not working correctly for some cased on Windows
  • Studio requiring the user to manually install .NET 8 on Linux

Tweaks

  • Hide in-game popup messages while recording with TAS Recorder
  • Require each changelog page to be viewed for at least 1 second, to avoid users skipping over them
  • Avoid showing "Unsaved Changes" indicator when using Auto Save File

Commit Details

Features

  • 6818c0f Add --validate-room-labels CLI option to promote current warning to an error (@psyGamer)
  • 5710207 Allow force-enabling accessibility tools only for current session (@psyGamer)

Bug Fixes

  • 0214820 SyncCheck: Properly calculate combined hash for all files (@psyGamer)
  • 9053822 Studio: Crash caused by removing last line of file (@psyGamer)
  • 772c572 Studio: Properly handle errors during file formatting and flush all files to filesystem at once (@psyGamer)
  • abdfec4 Studio: Publish self-contained binary for GTK backend (@psyGamer)
  • 68512b2 Avoid applying/restoring SkinMod fix when always active (@psyGamer)

Tweaks

Builds

Continuous Integration

v3.45.2 (Studio v3.9.4)

08 Jul 14:03
e5d768b

Choose a tag to compare

Features

  • Automatically fill-in intro animation and first room label for new files if possible
  • Expose SkinMod desync fix to RTA gameplay

Bug Fixes

  • Breakpoint speed being shown twice in Studio
  • Prevent Frame Advance or Slow Forward from triggering auto-pause popup
  • Account for potential failure of loading a savestate
  • Incorrect classification of various triggers
  • Unexpected editing behaviour when using \n in commands
  • Not being able to bind number keys to actions in Studio
  • Frame Operations not working with AZERTY keyboard layout
  • Exception when using Read-command with blank file path
  • Crash when running a TAS in a map which isn't structured properly
  • Crash when starting game while TAS with errors / warnings is opened
  • Crash when commenting-out a blank line
  • Misalignment of inputs shown in the Info HUD
  • SyncChecker overflowing Windows command line length

Tweaks

  • Display infinity instead of int.MinValue when time-rate is zero
  • Fully disable particles while fast-forwarding
  • Show warning when trying to use savestate breakpoints without Speedrun Tool being installed
  • Wait 0.1s before saving a file to allow for changes to accumulate and avoid changes not being properly saved when rapidly adjusting inputs

Refactors

  • Upgrade .NET 8
  • Use Everest's EntityData / Tracker systems instead of own solutions

Commit Details

Features

  • f41058d Expose skin-mod desync fixer to regular RTA gameplay (@psyGamer)
  • 79c82c9 Support more intro types with auto-generated new-file template (@psyGamer)
  • 80a3459 Display warning message when using savestate breakpoint without SRT installed (@psyGamer)

Bug Fixes

Documentation

Code Refactoring

Tweaks

Performance Improvements

Builds

Continuous Integration

  • 3ab039d Fix incorrect GitHub ref-check for caching sync-check results (@psyGamer)

v3.45.1 (Studio v3.9.3)

05 Jun 16:41
632183c

Choose a tag to compare

Features

  • Allow adjusting repeat count slightly, just like how frame counts can be adjusted (with Ctrl+Shift+Up/Down and Shift+MouseWheel)
  • Allow zooming in/out of Studio with Ctrl+Plus/Minus keyboard bindings

Bug Fixes

  • Re-saving frame after clearing when paused on savestate breakpoint
  • Invalid playback state being set after loading a savestate
  • Slightly incorrect logic for determining save point for savestate breakpoint

Tweaks

  • Only show auto-pause toast message when playing TAS back normally. Also reduce duration from 5s to 2s
  • Change default hotkey for Frame Step Back to Ctrl+[ in order to match the regular Frame Advance default hotkey
  • Limit Repeat command at 10 million iterations to avoid accidentally running out of memory
  • Use TAS command parsing for get/set/invoke debug commands to support spaces in arguments

Commit Details

Features

  • 186d241 Studio: Support adjusting repeat count with Ctrl+Shift+Up/Down / Shift+MouseWheel (@psyGamer)
  • 2827a9b Studio: Allow using Ctrl+Plus/Minus to zoom in/out (@psyGamer)

Bug Fixes

Tweaks

  • c894368 Avoid compiling mod-interop example into release binary (@psyGamer)
  • 7496336 Don't show auto-pause toast when fast forwarding into end and reduce duration (@psyGamer)
  • dc22531 Change default Frame Step Back hotkey to Ctrl+[ to match Frame Advance default (@psyGamer)
  • f57f6ed Limit repeat count to 10 million to avoid accidentally using all available memory (@psyGamer)
  • e1d6748 Use TAS command parsing for get/set/invoke debug commands (@psyGamer)

Builds

Continuous Integration

Commits

v3.45.0 (Studio v3.9.2)

30 May 12:39
623e601

Choose a tag to compare

Multiple Savestate Slots

With the release of multiple savestate slots for Speedrun Tool, by Lozen, CelesteTAS follows with exposing that functionally to regular TASes.
Simply use as many savestate-breakpoints as you desire, and it'll use the most appropriate when restarting the TAS.

While there is no hard upper limit, for your own computers sake, try to keep the amount reasonable and only in the area you're currently working in.

NOTE: For backwards compatibility reasons, the minimum required SpeedrunTool version is not v3.25.0. However, you will need it (or later), to be able to use multiple savestates at once, so make sure it's up-to-date.


Frame Step Back

Previously a feature of TAS Helper, this now has been moved over to CelesteTAS itself.
By pressing the hotkey (Ctrl+I by default), you'll be able to step in time to previously executed inputs.

This an accumulative action, allowing you to specify the amount of frames by repeatedly pressing the hotkey (and hotkeys which would usually forward to TAS), before the action is performed.
Since the game does not support going back in time, it has to play back to the target frame from a breakpoint before or the start if none is available. Since that is an expensive operation, it is best to specify the desired frame count once, to avoid re-running the TAS multiple times.


Force-Stop Breakpoints

By placing an exclaimation mark after a breakpoint (***!), it will always cause the TAS to be stopped at the desired location.
This can be useful when wanting to go back without having to comment-out / delete all breakpoints after it.


Improved Runtime Validation

While playing a TAS back, the current level and room will be validated, based on available information such as a console load command or room labels.
This is useful to identify desyncs in the TAS early.

NOTE: Since some projects currently have incorrect room labels, it's only a warning right now. However, it is intended to become an error later on.


Features

  • Multiple Savestate Slots support
  • Migrate Frame Step Back from TAS Helper
  • Force-Stop Breakpoints
  • Live-update simplified spinner color when changing the setting
  • Validate active level and room labels

Bug Fixes

  • Crashes / Desyncs caused by attempting to fix desyncs caused by SkinMods
  • Custom Info Template displaying instance instead of value for arrays
  • Specifying a @ModName suffix on target-queries returning duplicate results
  • Command separator placeholder not being replaced when inserted from command menu in Studio
  • Not being able to undo past implicit formatting changes
  • Studio auto-installer having wrong checksum hardcoded on Linux
  • Desync caused by Simplified Graphics with some custom FrostHelper spinners
  • Info HUD not accounting delta-time for frame count calculations
  • Debug Console commands not allowing same separators, like respective TAS commands
  • Crash when launching Studio v3 for the first time

Tweaks

  • Display popup-message for various actions during TAS playback

Commit Details

Features

Bug Fixes

Styles

  • f383c03 Savestate: Disable warning caused by implicit assignment through ModInterop (@psyGamer) #117

Code Refactoring

Tweaks

Removals

Performance Improvements

Builds

Continuous Integration

Commits

v3.44.1 (Studio v3.9.1)

17 May 10:35
b21ec6d

Choose a tag to compare

Bug Fixes

  • Crash on first start-up on Windows

Commit Details

Bug Fixes

  • a4e4245 Studio: Force-apply WPF theme when showing changelog dialog (@psyGamer)

Builds