Releases: tesselslate/resetti
v0.5.4
v0.5.3
Thanks to @sathya-pramodh, @Dworv, and @GroobleDierne for their contributions.
This is the first 0.5.x release (non pre-release). There have been a number of breaking changes since 0.4.x; refer to the release notes of the 0.5.x betas for more information.
Bugfixes:
- Don't print instance death messages twice
- Always disable freeze filters on launch
- Create data directory with correct permissions
- Do not error when data directory does not exist
- Write the cgroup preparation script when using the benchmark utility
- Attempt to warp pointer to the center of projector when refocusing wall
- Fix parsing certain keys in options.txt
Improvements:
- Added Debian package generation
- Added Fedora (RPM) package generation (thanks @Dworv)
- Provide error message when Leave Preview or Atum reset hotkeys are not set (thanks @Dworv)
- Parse the grave key (`) in options.txt (thanks @Dworv)
- Improve log output (thanks @sathya-pramodh)
- Allow using non-English OBS languages (thanks @GroobleDierne)
- Allow using negative window coordinates in configuration file (thanks @sathya-pramodh)
- Run the ingame reset hook before the window is unfocused (thanks @sathya-pramodh)
v0.5.2-beta
Fix --force-wpstate
and a crash when affinity is disabled.
v0.5.1-beta
Fix OBS websocket authentication issue (thanks @olexsmir)!
v0.5.0-beta
Huge thanks to Sathya (@sathya-pramodh) and boyenn (@dev-boyenn) for additional
testing and feedback, code contributions, and design suggestions.
BREAKING CHANGES
- Reworked configuration file format
- Reworked OBS scene generation
You will have to convert your config and regenerate your OBS scene collection.
Additions:
--force-cgroups
flag to force cgroup script to run--force-wpstate
and--force-log
flags to choose state reader- Debug info dump via stdin or SIGUSR1
- Readded sequence affinity
- Added CCX split affinity option
- Added "confine pointer to wall" option
- Added "reset on unlock" option to wall
- Added instance hiding (dirt covers) to wall
- Added preview freezing to wall
- Added more options to sequence affinity (thanks @dev-boyenn)
- Added play first locked hotkey (thanks @dev-boyenn)
- Added alternate resolution hotkey (thanks @dev-boyenn, @sathya-pramodh)
- Massively improved moving wall (thanks @dev-boyenn, @sathya-pramodh)
- Mouse support
- More binds
- Configurable layout
- Automatic Z indexing
- Added
force_reset_before_play
option to moving (thanks @dev-boyenn)
- Close automatically when instance crashes
Improvements:
- Made keybind system much more robust (BREAKING)
- Specify one or more actions per key
- Support more than just mouse for wall actions
- Support per-instance wall actions
- Revamped scene generation to be single scene (BREAKING)
- One
Instance
scene instead of one scene per instance
- One
- Cleaned up config (BREAKING)
- Improved input latency on wall
- Made benchmark utility much more robust
- Better ghost pie fix
- More fine-grained delay system for latency optimization
- No longer requires set scene collection name
- Account for projector letterboxing when handling mouse inputs
- Automatically take new projector size into account while resizing
- Store files (e.g. cgroup script) in separate data folder
Other technical improvements:
- Even more refactoring
- Asynchronous OBS websocket calls
- Less blocking I/O in event loops
- Use leave preview key when available
- Less wasteful log reader
- Added wpstateout.txt state reader
- Don't spawn goroutines for empty hooks
- Get rid of keyboard grabs
Bug fixes:
- Don't click menu buttons when doing Atum click fix
- Analyze CPU cache topology to make affinity correct
- Avoid runtime.NumCPU()
- Make end of preview resets work correctly
- Probably some others (and probably some new bugs)
v0.4.0
Support for obs-websocket 4.x has been dropped in favor of 5.0. Many changes have been made to the configuration file and some features have been removed. You may want to generate a new config profile and copy your settings over.
Changes since 0.3:
- Major changes:
- Removed set seed resetting
- Removed the fancy UI
- Removed obs-websocket 4.x support
- Added obs-websocket 5.0 support
- Added initial moving wall implementation, courtesy of @sathya-pramodh
- General changes:
- Simpler scene generation (no more scaling filters) in the OBS wizard
- Added lock image width/height options to the OBS wizard
- Allowed recreating existing scene collections in the OBS wizard
- Removed the old standard affinity settings
- Added
codeXXX
syntax to specify any keycode for a hoteky - Switched to Atum global reset key
- Now automatically finds the user's Atum reset key
- Better logging
- Debug information on startup
- More messages about what is happening
- Moved log to /tmp instead of
$XDG_CACHE_HOME
- You can specify a custom path with
$RESETTI_LOG_PATH
- You can specify a custom path with
- Wall changes:
- Added initial moving wall implementation, courtesy of @sathya-pramodh
- Added advanced affinity
- Added sleepbg.lock support
- Added support for F1 to hide hotbar on wall
- Added option to move instances to specific X, Y coordinates when stretching
- Automatically re-find OBS projector when closed and reopened
- Automatically release and re-grab keys when tabbing out of the projector
- Bug fixes:
- Fixed crashing when configuration directory does not exist
- Fixed
reset
hook not being used - Fixed affinity only setting affinity of the process and not its threads
- Fixed reading partial log lines
- Mostly fixed Minecraft not grabbing the mouse pointer when tabbing in
- Mostly fixed OBS projector not grabbing the pointer
- Update
_NET_CURRENT_DESKTOP
to help improve WM support - Discard buffered mouse events on the wall after switching to an instance
- Handle the _NET_ACTIVE_WINDOW property not existing
- Support wall projector sizes other than the entire screen size
- Allow for clicking off of the wall projector
v0.4.0-beta3
Fix OBS setup issue with non moving wall
v0.4.0-beta2
MANY CHANGES HAVE BEEN MADE SINCE THE LAST FULL RELEASE. THERE MAY BE BUGS, PLEASE REPORT THEM
Support for obs-websocket 4.x has been dropped in favor of 5.0. Many changes have been made to the configuration file and some features have been removed. You may want to generate a new config profile and copy your settings over.
This update brings a lot of new features and is also aimed at trying to make the codebase much easier to work with. As such, some old features (in particular, set seed resetting and the fancy UI) have been removed to make the code simpler.
Changes since 0.3:
- Major changes:
- Removed set seed resetting
- Removed the fancy UI
- Removed obs-websocket 4.x support
- Added obs-websocket 5.0 support
- Added initial moving wall implementation, courtesy of @sathya-pramodh
- General changes:
- Simpler scene generation (no more scaling filters) in the OBS wizard
- Added lock image width/height options to the OBS wizard
- Allowed recreating existing scene collections in the OBS wizard
- Removed the old standard affinity settings
- Added
codeXXX
syntax to specify any keycode for a hoteky - Switched to Atum global reset key
- Now automatically finds the user's Atum reset key
- Better logging
- Debug information on startup
- More messages about what is happening
- Moved log to /tmp instead of
$XDG_CACHE_HOME
- You can specify a custom path with
$RESETTI_LOG_PATH
- You can specify a custom path with
- Wall changes:
- Added initial moving wall implementation, courtesy of @sathya-pramodh
- Added advanced affinity
- Added sleepbg.lock support
- Added support for F1 to hide hotbar on wall
- Added option to move instances to specific X, Y coordinates when stretching
- Automatically re-find OBS projector when closed and reopened
- Automatically release and re-grab keys when tabbing out of the projector
- Bug fixes:
- Fixed crashing when configuration directory does not exist
- Fixed
reset
hook not being used - Fixed affinity only setting affinity of the process and not its threads
- Fixed reading partial log lines
- Mostly fixed Minecraft not grabbing the mouse pointer when tabbing in
- Mostly fixed OBS projector not grabbing the pointer
- Update
_NET_CURRENT_DESKTOP
to help improve WM support - Discard buffered mouse events on the wall after switching to an instance
- Handle the _NET_ACTIVE_WINDOW property not existing
- Support wall projector sizes other than the entire screen size
- Allow for clicking off of the wall projector
v0.4.0-beta
This is a new beta version, but it is very unstable. Set seed resetting is temporarily gone while I focus on the other parts of resetti. I mostly want to get this out for the purpose of testing, as I have once again rewritten basically everything, hopefully for the last time.
- Refactor
- Rewrote everything. Removed useless small packages.
- More imperative style, cleaner and more code reuse
- Features
- Naive implementation of "advanced" affinity
- Instance freezing on wall (currently doesn't work well with OpenAL)
- Maximum concurrent resets
- Click-on-focus setting
- Switched to global Atum hotkey
- Specify any keycode for a keybind (
codeXXX
) - Added debug info to log, to make it actually useful
- Moved default log path to
/tmp/resetti.log
(you can change it now with theRESETTI_LOG_PATH
variable)
- Bug fixes
- Fixed issues with configuration directory not existing
- Update
_NET_CURRENT_DESKTOP
when switching windows for greater WM support, hopefully - Fixed
reset
hook not being used
There are still more features/fixes I'd like to implement before releasing a proper v0.4, as well as improving the documentation once again.
v0.3.1
Set default for count_resets
to false and added a more helpful error message.