User Files for Celeste

Upload All User Files

#76413095205812728 - Celeste Classic 2 WIP TAS

celeste2-2.ltm
In 00:31.67 (1900 frames), 1157 rerecords
Game: Celeste ( Linux, see all files )
167 downloads
Uploaded 12/24/2021 6:26 AM by Rm (see all 7)
Unknown module flowplayer

Annotations

! Version info: 

libTAS version: 1.4.2

#68228389290700157 -

Celeste_any_new_v2_postcredits.ltm
In 28:53.02 (103981 frames), 65 rerecords
Game: Celeste ( Linux, see all files )
401 downloads
Uploaded 12/20/2020 4:01 PM by keylie (see all 119)
Movie for inputs after credits

Annotations

! Version info: 

libTAS version: 1.4.0

! Annotation info: 

{{Game: Celeste, v1.3.1.2, drm-free version (available at https://mattmakesgames.itch.io/celeste), 64-bit binary.

OS: Debian Buster amd64 with Linux kernel 4.19.0-5-amd64, libTAS v1.4.0. Game executable is `/path/to/game/Celeste.bin.x86_64`.

libTAS must be configurated with `Runtime > Recycle threads` unchecked and `Runtime > Wait timeout > No waits` checked. In `File > Executable options`, library path must be set to `/path/to/game/lib64`.

There are specific settings in libTAS to enforce constant loading times: `Runtime > Game-specific settings` and check `Celeste` in both frames. It syncs the main thread and loading threads determined by their thread name. It is only necessary to frame-advance the game startup, until frame ~70.

For encoding purpose, there are a few settings that can be changed in the game menu before playing back the movie, which does not affect sync. The screen size can be changed. The speedrun clock can be set to "File" (this setting is actually mandatory because it allows to skip level completion animations). Also, we recommend to disable the screen shake and turn on photosensitive mode, it makes the video more pleasant to watch.}}

#59704130845022648 - Updated Celeste 100%

100%final.ltm
In 1:27:36.12 (315367 frames), 0 rerecords
Game: Celeste ( Linux, see all files )
660 downloads
Uploaded 12/2/2019 6:36 PM by euni (see all 1)

Annotations

! Version info: 

libTAS version: 1.3.5

! Annotation info: 

{{Game: Celeste, v1.3.1.2, drm-free version (available at https://mattmakesgames.itch.io/celeste), 64-bit binary.

OS: Debian Buster amd64 with Linux kernel 4.19.0-5-amd64, libTAS v1.3.5. Game executable is `/path/to/game/Celeste.bin.x86_64`.

libTAS must be configurated with `Runtime > Recycle threads` unchecked and `Runtime > Wait timeout > No waits` checked. In `File > Executable options`, library path must be set to `/path/to/game/lib64`. 

Like the previous Celeste movie, there is an issue in this game regarding sync and loading times. The movie must be paused for a short amount of time at specific frames to let the game load stages. This is especially true for the game startup which features a lot of thread spawning. To make the movie to sync, the beginning should be run with frame advance until the main menu appear (from frame 1 to 94). On the rest of the game, almost all loadings happen concurrently with thread spawning or terminating. Thanks to that, a good way to ease the playback of the movie is to add a sleep call in the game execution: in "src/library/frame.cpp" at line 262, add "NATIVECALL(usleep(2000000));" after "saveBacktrack = false;", which is executed when the thread set has changed. This does not cover several level loadings, which need to be paused manually at frame: 64001 (5A), 93204 and 98508 (6A), 115295 to 115323, 115358 and 147910 (7A), 156315 (credits), 219700 (7B) and 265365 (9).

It should be noted that because this movie aims for fastest in-game time, and all loadings occur outside levels (where the in-game time is paused), it is not critical to simulate accurate loading times.

For encoding purpose, there are a few settings that can be changed in the game menu before playing back the movie, which does not affect sync. The screen size can be changed. The speedrun clock can be set to "File". Also, we recommend to disable the screen shake and turn on photosensitive mode, it makes the video more pleasant to watch. }}

#52821896824952159 - Celeste any% improved with epilogue

Celeste_any_postcredit_new.ltm
In 30:09.60 (108576 frames), 47 rerecords
Game: Celeste ( Linux, see all files )
626 downloads
Uploaded 1/26/2019 7:57 PM by keylie (see all 119)

Annotations

! Version info: 

libTAS version: 1.3.2

! Annotation info: 

{{Game: Celeste, v1.2.6.1, drm-free version (available at https://mattmakesgames.itch.io/celeste), 64-bit binary.

OS: Ubuntu 18.04 amd64 with Linux kernel 4.13.0-36-generic, libTAS v1.3.2. Game executable is `/path/to/game/Celeste.bin.x86_64`.

libTAS must be configurated with `Runtime > Recycle threads` unchecked. In `File > Executable options`, library path must be set to `/path/to/game/lib64`.

Like with SteamWorld Dig 2 movie, there is an issue in this game regarding sync and loading times. The movie must be paused for a short amount of time at specific frames to let the game load stages. This is especially true for the game startup which features a lot of thread spawning. To make the movie to sync, the beginning should be run with frame advance until the main menu appear (from frame 1 to 94). At frame 64, the game should print a bunch of "LOAD MAP DATA: XXX" on the terminal, and at frame 70 the game should print "LOADED : 1150ms". After that, the game should be paused at specific frames before and after each level. To help that, here is the code that I added in file "src/linTAS/GameLoop.cpp" in line 196 before "emit startFrameBoundary();" which contains all the frames to pause. Finally, there's another little section that must be frame advanced because we couldn't find the exact frame when loading occurs, between frame 69528 and 69590.

        int pause_frames[] = {414, 2005, 2054, 2061, 2664, 6071, 6073, 6466, 6473, 7077, 13136, 13138, 13531, 13538, 14142, 27686, 27688, 28081, 28088, 28741, 36554, 36556, 36949, 36956, 37560, 41662, 41711, 41718, 42075, 49564, 49566, 49959, 49966, 50482, 54160, 54209, 54216, 54573, 68934, 68936, 69329, 69336, 69528, 69590, 97103, 97105, 97498, 108325};
        for (int pp = 0; pp < (sizeof(pause_frames)/sizeof(pause_frames[0])); pp++)
            if (pause_frames[pp] == (context->framecount))
                sleep(1);

It should be noted that because this movie aims for fastest in-game time, and all loadings occur outside levels (where the in-game time is paused), it is not critical to simulate accurate loading times.

Before launching the TAS, one specific setting must be set in the game: the speedrun clock must be set to "File". It is mandatory because, starting from v1.2.6.0, the game has shorter animations in the hub after a level has been completed (berry collection, B-side/heart unlocking) with this particular setting. For encoding purpose, there are a few other settings that can be changed in the game menu before playing back the movie, which does not affect sync. The screen size can be changed. Also, we recommend to disable the screen shake and turn on photosensitive mode, it makes the video more pleasant to watch.
}}

#52821885141911372 - Celeste any% improvement

Celeste_any.ltm
In 27:04.43 (97466 frames), 47 rerecords
Game: Celeste ( Linux, see all files )
601 downloads
Uploaded 1/26/2019 7:57 PM by keylie (see all 119)
Added prologue skip, some frames saved here and there, and update to v1.2.6.1

Annotations

! Version info: 

libTAS version: 1.3.2

! Annotation info: 

{{Game: Celeste, v1.2.6.1, drm-free version (available at https://mattmakesgames.itch.io/celeste), 64-bit binary.

OS: Ubuntu 18.04 amd64 with Linux kernel 4.13.0-36-generic, libTAS v1.3.2. Game executable is `/path/to/game/Celeste.bin.x86_64`.

libTAS must be configurated with `Runtime > Recycle threads` unchecked. In `File > Executable options`, library path must be set to `/path/to/game/lib64`.

Like with SteamWorld Dig 2 movie, there is an issue in this game regarding sync and loading times. The movie must be paused for a short amount of time at specific frames to let the game load stages. This is especially true for the game startup which features a lot of thread spawning. To make the movie to sync, the beginning should be run with frame advance until the main menu appear (from frame 1 to 94). At frame 64, the game should print a bunch of "LOAD MAP DATA: XXX" on the terminal, and at frame 70 the game should print "LOADED : 1150ms". After that, the game should be paused at specific frames before and after each level. To help that, here is the code that I added in file "src/linTAS/GameLoop.cpp" in line 196 before "emit startFrameBoundary();" which contains all the frames to pause. Finally, there's another little section that must be frame advanced because we couldn't find the exact frame when loading occurs, between frame 69528 and 69590.

        int pause_frames[] = {414, 2005, 2054, 2061, 2664, 6071, 6073, 6466, 6473, 7077, 13136, 13138, 13531, 13538, 14142, 27686, 27688, 28081, 28088, 28741, 36554, 36556, 36949, 36956, 37560, 41662, 41711, 41718, 42075, 49564, 49566, 49959, 49966, 50482, 54160, 54209, 54216, 54573, 68934, 68936, 69329, 69336, 69528, 69590, 97103, 97105};
        for (int pp = 0; pp < (sizeof(pause_frames)/sizeof(pause_frames[0])); pp++)
            if (pause_frames[pp] == (context->framecount))
                sleep(1);

It should be noted that because this movie aims for fastest in-game time, and all loadings occur outside levels (where the in-game time is paused), it is not critical to simulate accurate loading times.

Before launching the TAS, one specific setting must be set in the game: the speedrun clock must be set to "File". It is mandatory because, starting from v1.2.6.0, the game has shorter animations in the hub after a level has been completed (berry collection, B-side/heart unlocking) with this particular setting. For encoding purpose, there are a few other settings that can be changed in the game menu before playing back the movie, which does not affect sync. The screen size can be changed. Also, we recommend to disable the screen shake and turn on photosensitive mode, it makes the video more pleasant to watch.
}}

#52376912538365399 - Celeste any% with epilogue

Celeste_any_postcredits.ltm
In 30:35.68 (110141 frames), 24 rerecords
Game: Celeste ( Linux, see all files )
626 downloads
Uploaded 1/6/2019 7:00 PM by keylie (see all 119)
Movie that does the epilogue (just entering the house and skipping the cutscene). There are loadings that must be frame advanced: before the credits and after the credits.

Annotations

! Version info: 

libTAS version: 1.3.2

! Annotation info: 

{{Game: Celeste, v1.2.5.3, drm-free version (available at https://mattmakesgames.itch.io/celeste), 64-bit binary.

OS: Ubuntu 18.04 amd64 with Linux kernel 4.13.0-36-generic, libTAS v1.3.2. Game executable is `/path/to/game/Celeste.bin.x86_64`.

libTAS must be configurated with `Runtime > Recycle threads` unchecked. In `File > Executable options`, library path must be set to `/path/to/game/lib64`.

Like with SteamWorld Dig 2 movie, there is an issue in this game regarding sync and loading times. The movie must be paused for a short amount of time at specific frames to let the game load stages. This is especially true for the game startup which features a lot of thread spawning. To make the movie to sync, the beginning should be run with frame advance until the main menu appear (from frame 1 to 94). At frame 64, the game should print a bunch of "LOAD MAP DATA: XXX" on the terminal, and at frame 70 the game should print "LOADED : 1150ms". After that, the game should be paused at specific frames before and after each level. To help that, here is the code that I added in file "src/linTAS/GameLoop.cpp" in line 196 before "emit startFrameBoundary();" which contains all the frames to pause. Finally, there's another little section that must be frame advanced because we couldn't find the exact frame when loading occurs, between frame 71093 and 71120.

        int pause_frames[] = {414, 2857, 2859, 2908, 2915, 3518, 6925, 6927, 6951, 7320, 7327, 7930, 13989, 13991, 14384, 14391, 14994, 28539, 28541, 28934, 28941, 29623, 37441, 37443, 37836, 37843, 38446, 42556, 42606, 42612, 43199, 50688, 50690, 51083, 51090, 51709, 55391, 55439, 55446, 56033, 70394, 70396, 70789, 70796, 71092, 71093, 71120, 71121, 71155};
        for (int pp = 0; pp < (sizeof(pause_frames)/sizeof(pause_frames[0])); pp++)
            if (pause_frames[pp] == (context->framecount))
                sleep(1);

It should be noted that because this movie aims for fastest in-game time, and all loadings occur outside levels (where the in-game time is paused), it is not critical to simulate accurate loading times.

For encoding purpose, there are a few settings that can be changed in the game menu before playing back the movie, which does not affect sync. The screen size can be changed, the speedrun clock can be set to "File" to show the in-game time of the entire run. Also, we recommend to disable the screen shake, it makes the video much more pleasant to watch.
}}

#52168517062145338 - Celeste any

Celeste_any_new.ltm
In 27:31.15 (99069 frames), 228 rerecords
Game: Celeste ( Linux, see all files )
625 downloads
Uploaded 12/28/2018 9:45 AM by keylie (see all 119)
Just a backup for now until the annotations and submission text are being worked on.

Annotations

! Version info: 

libTAS version: 1.3.2

! Annotation info: 

{{        int pause_frames[] = {413, 2856, 2858, 2907, 2914, 3517, 6924, 6926, 6950, 7319, 7326, 7929, 13988, 13990, 14383, 14390, 14993, 28538, 28540, 28933, 28940, 29622, 37440, 37442, 37835, 37842, 38445, 42555, 42605, 42611, 43198, 50687, 50689, 51082, 51089, 51708, 55390, 55438, 55445, 56032, 70393, 70395, 70788, 70795, 71092, 71120, 71152};
        for (int pp = 0; pp < (sizeof(pause_frames)/sizeof(pause_frames[0])); pp++)
            if (pause_frames[pp] == (context->framecount))
                sleep(1);
}}