Posts for keylie


1 2
15 16
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
I didn't consider submitting a new movie. I was thinking if it would be relevant to replace the published movie with this one, given that the published one has spurious lag frames that artificially increase the movie duration. Also, with the exact same game version the published movie was done on, all lag frames could be removed if the framerate is set to a slightly lower value (59.999 fps) to overcome the game bug that does not enforce correctly the intended framerate. All of this has low importance because the final product is not affected much by this. Having a clean movie is much convenient to work on improvements, that is why I wanted to post is somewhere.
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
Not sure how to handle this, but I updated this movie (User movie #637787978063843404) to a newer version of the game that don't feature any lag frame anymore. Gameplay is unchanged. It saves ~ 10 seconds
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
I tried finding the game on itch.io which has the closest release date from Unworthy. The MOBrio was released 3 months after Unworthy, has a runner executable which is only 9 bytes bigger than Unworthy's one, but still does not feature the glitch.
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
I checked on three different versions of the runner file, and all three show the same behavior (no clipping through the statue). It is still possible that one specific version of the linux runner features this behavior, but then it may be considered as an engine bug? I'll try doing the opposite on Windows: using the Windows runner file from Ryuku in place of the originial runner file to see if I'm still getting the clipping. Edit : I checked using Ryuku's executable on Windows, and I actually couldn't reproduce the bug! So it should mean that there's a specific version of the GM:S runtime shipped with the game that has a some sort of flaw?
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
feos wrote:
keylie wrote:
The skip to go past the statue that is used by RTA runners is not possible on the Linux version of the game.
But we're using the Windows version. Do you mean the launcher from Ryuku: Extinction makes it not work?
I don't know if it's specific to this version of the launcher, I honestly didn't investigate when I made the run. It could all linux compatible runner files that have this difference with the Windows version. If you think that this needs to be answered, I can try other runner files and see if I can replicate the glitch.
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
feos wrote:
keylie, why do you take the detour to Catacombs of Ur (and to the thorns area) in the middle of the run? The RTA record goes straight to Cradle of Death, and counting from that point you only kill the final boss 5 seconds sooner. Judging by how quickly you navigate, is it really worth it to go to that other area? The movie is overall still shorter than RTA of course, but still.
Sorry, I thought I mentioned this in the submission notes. The skip to go past the statue that is used by RTA runners is not possible on the Linux version of the game. I tried to understand how it works, I explored the game data files using UndertaleModTool, which is an awesome tool to browse and modify all the maps, scripts, objects, etc. of the game. I came to the conclusion that this is not an overlook of the game level design or the game scripts, so I guess it is about gamemaker studio engine and collisions?
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
fsvgm777 wrote:
I tried downloading the older version via Depot Downloader....but it seems you can no longer download previous versions through that method. I get the following error:
Downloading depot manifest...Got CDN auth token for steamcontent.com result: Fail (expires 01/01/1970 00:00:00)
keylie, can you verify if it syncs with another libsteam_api.so from a different game (preferably latest version)?
I can do that when I'll have some time
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
I got my steam api library from a previous version of Axiom Verge
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
Same except for the steam_api. I don't have Baba on Steam. I tried the one from Axiom Verge, which has hash
74b93a8111fc19af999459a5c230c498047cfda7
and it does not work, probably because the version is too recent, and Steam likes to update their API with interfaces incompatible with previous versions (they add methods in Steam class in between old methods, instead of appending them at the end). I started working on versioned interfaces, but it's a lot of work, and there are a lot of classes. Regarding the crashes at random and desync, this is weird, I don't know why. Yes, the game is very slow with software rendering, and one of the reasons is that the audio thread is taking 100% of one CPU because it queries for free buffers with no yielding at all.
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
feos wrote:
Is there no way to get the version that works?
I don't know if there's a reliable way to pick the version that works. One could determine the version of the Windows runtime and get the Linux counterpart (from official Yoyo website if they have an account).
feos wrote:
This also sounds like it will only (probably) work for a short period of time. Using a beta version is questionable in itself, and without info on what exact version it's known to work on, this may be a future problem to get this movie to replay (provided it still works).
Using the Steam beta feature is a convenience, but it actually refers to a previous released version of the game. You can look at the manifest id 2435903942916489485 in the speedrunner_spirit branch which corresponds to the version released on june 11 in the main branch. This is still a problem if Steam decides to prevent people from getting previous versions in the future.
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
Not all runner executable work. Recent ones from 2019/2020/2021 that I tested instantly crashed the game. The one that I used to make the TAS came from the same game that was used for Deltarune chapter 1, see this post and the game in question. Unfortunately this game has been updated since, so the runner executable does not work anymore. I still have this executable, whose md5 is
f121671f73bfaf965ed2f0bfdda263b4
The md5 of the game I found for the submission is
597d991811097a58080f09c09f522c0b
Furthermore, while I browsed through itch.io Unity games to find a good one, some games that were slightly more recent than the correct ones did not crash, but I was getting a desync in the middle of the run.
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
feos wrote:
1) Consistent-ish loads sounds like something upstream would want indeed?
The changes made are specific to Unity engine, and are the following: * Specific threads are identified as coming from the Unity thread pool that does async stuff (used by Unity's coroutines). The main thread is paused as long as one of those threads are still processing. One of the current problem is that libtas cannot identify those threads easily, because Unity is in C#, so code is JIT and internals are inaccessible. The solution I found to detect those threads is comparing their identifier (defined as pointer-to-thread-routine - pointer-to-caller) to a known list of identifiers (those are constant across instances and computer, but change for each version of the Unity engine used). This is very hacky, but addressed the issue. That's how it looks like in libtas code:
bool isWaitThread = (thread->routine_id == -12625) || (thread->routine_id == -12493) || (thread->routine_id == 1236) ||
                        (thread->routine_id == -9535) || (thread->routine_id == -9456) || (thread->routine_id == 801) || (thread->routine_id == 777);
* Sleep calls with a specific value of 2000 us are discarded as they occur on some situations when main thread is waiting for another thread. I could merge those into libtas main branch, but they would still look hacky unless I could figure out how to better get into Unity's internals.
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
Version 1.4.2 is out. Lua support was added, and input editor was improved. See the full changelog.
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
libTAS does not support using a joystick as an input device. Only keyboard/mouse is supported, and you can bind keys to joystick inputs in the input mapping window.
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
fsvgm777 wrote:
EDIT: So....I can't get it to sync at all. clock_gettime() gets set again if I run the movie file, even if I uncheck it. Running with it unchecked causes it to not run at all. Doesn't matter if the game's on windowed or fullscreen. It desyncs around the third stage. I'm running libTAS with the "~/.steam/bin/steam-runtime/run.sh libTAS" command, as a note.
Did you remove all files created by the game (in "~/.config/FlywrenchStudio/") ?
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
Hotkeys seem like a much better solution, if it is fine modifying PCem even more for TASing
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
I could try fixing libTAS to allow right click to be used on PCem. However, that will look a bit awkward. Until then, using libTAS + PCem was equivalent to bringing TAS tools to PCem. but with CD swap, you would need to make mouse inputs to bring up the contextual menu and browse through it to change the cd. It means it takes some actual frames to do that. So it becomes TASing an emulator and not TASing an emulated game, which has some consequences with TAS length I guess (does PCem pauses when the contextual menu is opened?) There could also be some desyncs regarding where the contextual menu will appear, and I guess the contextual menu won't be part of the encode. So that raises several issues actually.
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
I'm not sure I'll work on it tbh
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
The category is any%, so it is the least arbitrary category chosen for this game, and TAS timing is the default timing method. You didn't describe other strategies that would lead to a better time. You are talking about overkill, but what set of weapons would lead to more damage potential that wouldn't require the fight to be significantly longer? Also, I'm sorry but given the nature of the game (heavily rng dependent), you can't expect it to be optimized to the frame. There are probably a few frames that can be saved with this strategy, but it would need exploring a much larger space of randomness. It may feel like a lame excuse, but I spent a few hours on this last fight alone, getting a better rng may requires 10 times more.
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
ais523 wrote:
I'm not sure it makes sense to end input early in cases where that causes the use of a suboptimal strategy for the fight. It's delaying the end of the run by a substantial amount, and is saving very little in terms of ending the input (I'm not sure, but most likely it's a few frames of luck manipulation).
Isn't this the case of most "end input early" cases, to have a suboptimal end? Going for an optimal would need to send the second volley manually, to activate hacking/manipulate luck/drones/etc... which would cost at least 20 seconds (time for the flak 2 to recharge).
ais523 wrote:
(I also wonder if sufficient amounts of overkill might make it so that you don't have to resync the Flak, and thus save time when it comes to ending input, too.)
Sorry, I don't understand what "amounts of overkill" means.
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
There are subtitles if you didn't see them. Otherwise, I guess I could dump all the events I encounter. Regarding pre-igniter glitch, I couldn't use it unfortunately. When entering phase 1, the clocking makes all non-powered weapons to discharge, so that I can't keep charged weapons for the next phases. Phase 3 fight could be speed up, yes, but it won't change the final time which is based on the last input (beginning of the fight).
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
Score is computed from collected scraps, number of visited beacons and number of destroyed ships. A TAS with highest score would visit as many beacons as possible before the rebel fleet arrives (manipulating nebulas). Then, it would visit every single beacon of the sector again (controlled by rebels), because rebels overwrite each beacon event with a rebel fight, counting toward the number of destroyed ships (and gives 1 fuel). Rebel fights are very hard, but a TAS should be able to fight them unharmed.
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
Blazephlozard wrote:
Tasvideos as a site is completely neutral towards everything.
I don't agree with that. Tasvideos has made some political choices, and it's ok to do so. For example, using Creative Commons for movies, or allowing people to display their gender in the forum. Also, like it was said in another topic, not taking any side is itself a choice, so it is political.
keylie
He/Him
Editor, Experienced Forum User, Expert player, Published Author (2697)
Joined: 3/17/2013
Posts: 385
PC TASer of 2020PC TAS of 2020TASer of 2019PC TASer of 2019First edition TAS of 2019PC TAS of 2019TASer of 2018PC TASer of 2018First edition TAS of 2015First edition TAS of 2014Computer TAS of 2013
So, jemalloc opens some file during init (looks like it is "/proc/sys/vm/overcommit_memory"), but libtas allocates some memory in its "open" hook, resulting in a deadlock. I will look at it.
1 2
15 16