boshyst

0

Описание

Boshy Speedrun Tool - IWBTB mod menu and experimental TAS tool written in C++ with ImGui

Языки

  • C++78%
  • C22%
11 минут назад
2 месяца назад
2 месяца назад
месяц назад
месяц назад
11 минут назад
месяц назад
2 месяца назад
2 месяца назад
2 дня назад
2 месяца назад
месяц назад
месяц назад
2 месяца назад
месяц назад
3 месяца назад
месяц назад
месяц назад
README.md

Boshyst

IWBTB mod with hacks and tools to help speedrunning and creating TAS

Screenshots

Screenshot1 Screenshot2

Cold start (mod menu)

Put Boshyst DLL and DLL Injector into the game folder.
Launch the game, open command prompt in the game folder and type:

Menu should be opened (toggled by Insert as a default bind).

Cold start (BTAS) (experimental)

Just also put BTAS launcher into the game folder and launch the game via it.
Open the config to see binds.
Known problems:

  • Save files forgetting after loading a state (breaks in-game save logic, also some visual stuff which game thinks is locked) (can be fixed: see
    tas_save_slot_fix
    in config)
  • RNG seed desyncs (also might be caused by changing visual settings)
  • Hitbox desyncs (TODO: research why DirBlur x3.fx affects that)
  • Some input problems (you can shoot right after loading a state even if you shot right before saving; pressing C right after load won't work => desyncs)
  • May crash when loading a state (seems to be memory corruption, also happens without BTAS, would be really difficult to fix) (seems to be using software render with
    MESA
    +
    WineD3D
    reduces ammount of crashes)

Building and running

For testing, just build the DLL using Visual Studio and inject it into the game process (

boshyst.conf
config will be created is in the game dir).
For hourglass (Windows XP compatible), build the DLL using Visual Studio 2010 (manually create a project and add all the C++ files, configure includes), put it into the game folder (with config file, also set
tas_mode
to 1 in config), replace
wintasee.dll
with modified version to automatically inject the mod when launching the game through the hourglass. Allow normal thread creation.
Building helper scripts (use MinGW32 for compatibility):

Configuring

See

boshyst.conf
in the game folder

Recording video

For hourglass, use special modified hourglass r90 version.
Set

allow_render
to
1
.
FFmpeg is required to be in
PATH
variable.

Automatic start/end of the recording can be configured with

render_start
,
render_count
/
render_end
(not recommended).
It's recommended to set start/count vars to 0 and use start_cap and end_cap scripts.
Not using direct render <=> front buffer capturing.
Using direct render <=> back buffer capturing.
Capture starts from the frame you will see, and ends with the frame you currently see.
Warning: game window should not be resized while recording.

Recording audio

Before replaying TAS, set

tas_audio_capture
and
tas_audio_main_thread
. Then replay TAS without using fast forward. Then stop audio recording and close the game.
Run
amerge.bat
script created in the game folder to join all sounds in a single output (it requires FFmpeg).
NOTE: Fading is not supported yet (kinda used in credits only).

Boshyst DLL (Windows 8+)
Boshyst DLL (Windows XP compatible)
Modified wintasee.dll for hourglass r90
Modified wintasee.dll for hourglass r78
Capture start and end scripts
BTAS launcher
Simple DLL Injector (Windows 7+)
Modified hourglass r90 for video recording