UniTAS 0.4.0
This release mainly fixes a bunch of compatibility problems and stuff, so some games might start working. I wanted to fix the big problems with games for them to be TASable but I wanted to just get this breaking change out of the way in the release first.
Changes
Added
TAS movie
- Added config
MOVIE_CONFIG.update_type
and APIenv.update_type
to choose what update frame advancing should use
New input system support
- Added very basic new input system support
- Added support for keyboard and mouse devices
Old input system support
- Added support for
ResetInputAxes
- Added support for
mouseScrollDelta
Testing
- Added runtime unit tests to test if UniTAS features works
Fixed
TAS movie
- Fixed accidentally skipping a frame when an unity
FixedUpdate
happens
Compatibility
- Fixed AssetBundle async operations failing with null reference exception
- Fixed game setting AsyncOperation priority throwing an exception
- Fixed unity's Camera events not being cleared on soft restart throwing a null reference exception
- Fixed unity's SceneManager events not being cleared on soft restart throwing a null reference exception
- Fixed unity's NavMesh events not being cleared on soft restart throwing a null reference exception
- Fixed opened files not being closed on soft restart, causing IO exceptions
- Fixed static constructor dependency called in the wrong order
- Fixed static fields not being reset all at once
- Fixed not being able to call some async methods in AssetBundle
UniTAS internal
- Fixed UniTAS not patching AsyncOperation classes if SceneManagerAPIInternal isn't found
- Fixed UniTAS's wrapped classes not handling the case of the original wrapped type being null
- Fixed not resolving monobehaviour types more than 1 parent
- Fixed use of unload scene being called wrong causing null reference exception
- Fixed not searching async load method in scene manager
- Fixed AsyncOperation's OnComplete being not called at the right timing