#Ankh - An in-game timer and autosplitter for Balatro
221 messages · Page 1 of 1 (latest)
There's not even proper number formatting yet... LOL
OK I added that
Updated version
do you have a link to the modloader?
ty
Yeah, I can get to that when I come home
I made the mod pretty quickly as a proof of concept so I’ll add more updates as things come along
the code for doing this without modifying the original function is an actual nightmare
Ok, new features in this version:
- Elapsed Time shows in Win/Lose Screen
- Timer state saved/loaded in savefiles
New features:
- Official Mode - A profile that prevents loading of profile/savefiles when running. Final time will appear in a gold background when this profile is used.
(what the winscreen looks like)
It now shows as red if you have another mod loaded (in this case all the negatives are hacked)
i think it makes sense for the speedrun mod to have "protections" to see whether a run has been tampered with
Oh I’m working on that as we speak
Literally just added a check that the game exe hasn’t been tampered
very nice
And I also have one that prevents other mods from being loaded
For the ones you can do by accident there’ll be a red timer but for the sneakier ones there’ll be subtler indicators
ok I added that
I'll upload it later, want to start obfuscating the code to prevent people from cheating by doing that
That also makes it dependent on the game and Steamodded version
New features:
- Detects loading other mods or tampering with game executable
- Will display orange if a check is unable to work properly. For all checks to work properly you must be using Windows with v1.0.0k of Balatro and v0.6.0 of Steamodded because that is what I used to check the integrity of the game files.
v0.1.0 Release
- Has many more security checks
- Detects full unlocks
- Displays mod version on win screen
Speedrun Timer Mod
Two checks currently don’t work, so if your run is marked as invalid don’t worry
v0.2.0 Release
- Fix bugs in validation checks
- Adds options menu (currently can only toggle timer visibility)
I tried disabling the Timer that is displayed during the game while I was in the main menu
Can I provide some further infos for you somehow to ease debugging?
/edit: this happens for both options
(I use multiple mods, so this might just be some incompatibility maybe)
Probably a patched bug. I changed a lot since the last public release but haven’t made those changes public yet for two reasons:
a) people trying to bypass the anticheat
b) people accidentally using this for official speedruns (it hasn’t been approved yet for the leaderboards)
(me posting amessage here so it stays in my threads)
Something big coming today 👀
👀
👀
I mean, you're not obligated to release it. take your time
Of course
Ankh - A speedrun timer and autosplitter for Balatro
The full release of Ankh is here!
just call the debug mode thing like, incantation 
*enables one variable in the code*
Trance
deja vu for run history please
So to properly install this you have to use the folder name "Ankh"
Your final directory is %Appdata%/Balatro/Mods/Ankh <- unzip the Ankh_1_0_0.zip in here
(I wanted to call it SpeedrunTimer Ankh so I wouldnt forget what it is but that lead to crashes. thought I should leave a note for this here)
also it doesnt show up in the achievement list since it doesnt use steamodded i guess
would it be possible to somehow check if a steamodded installation exists and then add a entry into the list? (just for easier handling) if not present it could just be ignored
I can probably check if the variable for the Steamodded version is defined and then add it as a Steamodded mod
However, not my main priority as with Steamodded installed you won’t be able to submit the runs you get to the leaderboards anyway
The next release will be with r2mm hopefully, and then I can focus on some extra features like that
So that kinda fixes the issue with me hardcoding the mod directory name haha
Ankh - An in-game timer and autosplitter for Balatro
I think this is causing crashes whenever i fail a run (im trying to figure out if its another mod, but its most likely ankh as its not a steamodded mod) cause of a stack overflow
gimme a sec ill send screenshot
here
the crash report is very descriptive
I believe this isn’t caused by my mod. The line number it reports is just setting a variable to 1000 lol
lol
im gonna try and trace my steps with my mods
ugh
hmm better stack traces causes it to crash instantly
i mean like not give me a stack trace
It was due to ankh
I have no idea why but removing ankh fixed the problem (and allowed me to finish my goated run)
Hmm that’s odd
Stack overflow makes me think that there’s some conflict with this mod and another mod that changes the game over screen in some way
Since that would trigger when failing a run
If you don’t mind telling me what mods you’re using I can try to resolve that issue
i realized the problem just now
its run reviewer
its cause it makes a button whenever you fail or win
Im guessing ankh and run reviewer are trying to make a button at the same spot (or text and a button?) which is causing the stack overflow
Perhaps; I’ll investigate it later
That would make a lot of sense though
@languid radish found the issue and it’s kinda funny lol
Mi1cK used my code as a reference for creating the UI edits on the win/lose screen
So some of the variable names conflicted since we both used them
That also means that even without the stack overflow weird things would happen since he didn’t even change the ID of the button
(Either the elapsed time or the run review button would appear twice)
I’ll fix it for 1.0.1 though
fixed it
I also just found a bug with Run Reviewer but I'm going to assume that's not my fault
I also don't know why the colors are broken. Gonna blame Steamodded or Run Reviewer for that too
Thats funny, ty for fixing it though xd
I’m sure this kind of problem is going to happen for many mods lol
I bet
https://thunderstore.io/c/balatro/p/MathIsFun0/Ankh/
On Thunderstore/r2modmanager now
wait why isnt 1.0.1 on github
I should probably add that since Thunderstore support is public now lol
But I do want to wait for someone to test that the security features work on their device with Thunderstore first
and also make sure they work when installed directly with Lovely and nativefs
https://github.com/MathIsFun0/Ankh/releases/tag/v1.0.1
I added it now
would it be possible to make the color indicator for the timer a weird gradient rather than a flat color?
makes it harder to just eyedrop over the color (idk if its feasible or not but as a precaution)
or a small color difference that is different dependent on the time in a weird non-linear way
like a 12:00 might be super slightly greener in hue compared to like a 12:01 even though they are both shades of gold/yellow
That way any photoshopped times can be found out since the color won't match the time, and anything that alters the colors in-game would be turned red
that's a smart idea, I can see if something like that is possible in the game engine
could maybe make it change between two colors since there's already something that does that
I'd be wary about failing for that since most runs would be uploaded on youtube and idk how that would work with their video compression
Unless you're provided a png image which is important since that's a lossless format that can show the colors as they are shown on screen
There’s way more checks than just the win screen timer color btw
I said failing for that
It was meant to be specific for that reason
Cuz in the end lossless video almost doesn't exist so you can't really compare a pixel value to a database you have stored yourself
Well if the entire box is one color then it could work…
Compared to it changing based on some function
https://github.com/MathIsFun0/Ankh/releases/tag/v1.0.2
Small update to add a feature some speedrunners requested
hey, sorry to bug you, but ive tried installing with just nativefs, lovely, and ankh, and am getting hit with this error, any idea where i messed up? @muted sun https://awau.moe/8irWu5B.png
Make sure your Ankh installation is in the exact folder “MathIsFun0-Ankh”
Renaming it will break the install
I don’t think that’s necessary
The directory name is just because of how I programmed Ankh
https://github.com/MathIsFun0/Ankh/releases/tag/v1.0.3
v1.0.1 support and a few bugfixes
just so I can keep this saved ima type in this chat
The "Follow post" button likes being ignored, apparently
You might like what’s coming next to Ankh btw ;)
i did follow the post, just dont like the way it works. I like just seeing it in the channel list
it actually does the opposite, just following the post shows up in the threads category at the top, but messaging makes you active in it. It sounds dumb but for threads it works like that
at least for me
It also is just personal prefernce at the end of the day
https://github.com/MathIsFun0/Ankh/releases/tag/v1.1.0-beta
I added replays
GitHub
Note: This is a beta version of Ankh, so expect bugs! Additionally, it is also not allowed in Speedrun.com submissions.
Special thanks to @OceanRamen for their help in the development process of 1....
nice
GitHub
Note: This is a beta version of Ankh, so expect bugs! Additionally, it is also not recommended in Speedrun.com submissions.
Special thanks to @OceanRamen for their help in the development process o...
How do i bring up the Replays / Security menu? Using the latest beta release
Settings > Spectral Pack > Ankh > View a Replay
Ah I see now. Should probably include that in the readme (and remove the mention of requiring nativefs)
This mod is extremely impressive by the way. I'm definitely seeing how we could leverage this for Sessions
Just wanted to give props for this indispensable QoL mod. I'm currently using it to archive my run history, and aside from a single corrupted replay and the occasional crash when returning to the main menu it's been smooth sailing.
My only suggestion would be to add the seed somewhere in the final filename for unseeded runs, alongside the profile name, date, and time.
That’s a good idea, I’ll make sure to improve that
And thanks for enjoying the mod!
First of all thx for the mod again. I just redid big parts of my wr run and a small potion of it (1 min) was not recorded. Thanks to you, I could reproduce the steps exactly.
However, there unfortunately are a few bugs.
-it is not uncommon for the replay to miss the cashout button and to not add the money correctly. Since this happened in my replay in the very first blind, the money was always wrong. At least the actions performed were mostly right.
now why I make the post. when you exit the game during an open arkana pack, it is not uncommon that reopening the game displays the cards in a different order. Since I used death there, everything after this is off.
Can this reordering be reproduced without Ankh?
yeah it is a bug/feature of vanilla
i might actually have old videos of it on my channel before ever touching mods
To make it short. Restarting during the shop affects the outcome for rng in seeded runs. This can be felt strongly for Perkeo or invisible joker.
To make it short. Restarting during the shop affects the outcome for rng in seeded runs. This can be felt strongly for Perkeo or invisible joker.
same arcana
differently ordered because of restarting
I will work on overcoming this with Ankh
thx. sorry for keeping you busy so much
I am not sure if you plan this but a pausd button for the replay would be great
I could do stuff like checking the deck or other things
If it is possible to do a pause button, you please also do a one step forward button
Hi. You know the run. Some people are actually really paying attention to my videos and making remarks. One of the comments under my ankh replay reads as follows:
hey, sorry for asking so many questions, but if I wanted to get this exact save, I would do the ankh replay till round 7 (where this video starts). then follow this video until A7B1, then switch to the ankh replay and then to part 2 right? btw I found some misplays in the ankh replay, such as copying a normal king instead of a gold one, which in this video, you fixed. and not putting a gold seal first even though you had chad
Me again.
The order of the hand played matters because of stuff like hanging chad. Not sure if you track this etc.
hand ordering is tracked, yes
I plan to get back to working on Ankh relatively soon, so hopefully I'll have a version that patches the bugs you've reported that I can share
lmk if anything is missing from this "known bugs" list, it's basically what I'm going to be using
Not a bug but I think for seeded runs, you can display the seed in plain text on the continue screen
Also this reminded me of another bug, the save UI in the main menu often shows the encrypted version of the seed
I know that it mainly lists the ordering of an arcana pack
But the current cartomancer has a „disbable all handsorting“ feature
I would assume that this feature in combination with restart could result in similar issues like an arcana with restarts
Perhaps that’s the cause of it
Not the arcana bug
Remember
The video I sent here was completely vanilla
Not 100% sure but in my game, I tried to purposefully game over multiple times.
However, it just saved one of the replays
You know that they all originated in the same run
Maybe it cannot distinguish properly
I believe it updates it with the latest?
So the latest replay for that run is in one file, overwriting the rest
That’s probably easy to fix
Is this mod compatible with Steamodded?
DrSpected like to use it for timer, but with Steamodded - crash on launch
I'm pretty sure most people run it with steamodded
I don’t
So it definitely works without
But depending on the lovely version you might experience issues
@proper surge doesnt your modpack have both ankh and steamodded?
Ofc
Which version?
Okay, thanks
On the beta it should work fine with Steamodded
I've been having a lot of fun using Ankh and saving my replays of a seeded run that I'm working on but I ran into a bug which I didn't see listed in the github notes as a known issue and I wanted to bring it to your attention. The bug consists of selling a Joker (or presumably a consumable) while in the cash out screen with there being the same Joker in the next shop. The replay immediately cashes out and then sells the joker which causes the replay to have a different joker than what they're supposed to have. This causes a desync which can eventually crash the game. I'm using Ankh 2.0.0-beta3. I was also using Brainstorm, Saturn, and Handy to help make my previous run but this recording was done with just the Ankh mod
Here's a full video of me creating the run and getting the bug to trigger, with the important part starting at 1:40-
https://youtu.be/1SuuISddHE4
Other than that, it's been able to handle a lot of savestate and save scumming for my run and I'm impressed with how consistent it's been overall lmao
that’s a neat edge case you found, thanks
No problem! I'm glad this was helpful
Hi, I'm getting this crash with the v1.0.4 version of this mod
Also running these mods
v2.0.0-beta3 works however 
1.0.4 isn't compatible with steamodded 1.0, you have to use 2.0
peak
thank you :)
sorry but what is "include time between runs" mean?
Time spent in the menu, compared to just time in game
like if you’re doing a 3 deck run it adds the time navigating to the next deck
Why cant I replay my run 😦
That seed is still in your savefile, so it’s an anticheat measure
so what do it count as cheat tho, as i only use the mod to save some good seeds i have found
if you start a new run then it'll let you view the replay
but people could use that seed and some tools to scout ahead in endless, so it doesn't show the seed by default if the run is still continuable
is it a known bug that Ankh misses rearranging a joker that's meant to be copying Perkeo, resulting in a crash?
here's the log
I have footage where I rearrange the joker, and if you need I can try to get footage of Ankh missing it and crashing as a result
it might have something to do with ectoplasm hitting the joker in question, but I'm not sure
Ankh sometimes misses rearranging jokers as of now, yes
if you'd still like the footage let me know, I think in this particular case it has something to do with ecto hitting the blueprint in question since my run is extremely heavy on joker rearranging and that's the only time it misses it
also, it seems that using Ankh along with Steamodded causes severe performance issues that aren't present if Steamodded isn't installed
I know that Ankh not tracking Director's Cut/Retcon rerolls is a known issue, but I'd just like to add that it results in a crash immediately afterwards in the replay if the boss you rerolled from would otherwise cause you to lose (in my case, rerolling from the Plant). It doesn't cause any issues during the run itself, however. Other than that though, it's really impressive how well Ankh tracks everything, and watching the replay is really satisfying because it's kind of like a TAS. (Also, thank you for all the hard work on your various tools and mods! My runs would be impossible without Ankh, Talisman, The Soul and Immolate.)
has replay feature been removed from latest version ? I can't find it anymore
hello! im a non-coder pleb trying to install your ankh mod for timing. I'm not sure what im doing wrong but i tried installing the mod and it doesn't work for me
this is what i see
Hey, are you planning to officially release the 2.0.0 version?
And can I add your mod to the [Balatro Mod Manager](#1339375696254074942 message) ?
If so, which version should I take? official or beta?
try the beta release
https://github.com/SpectralPack/Ankh/releases/tag/v2.0.0-beta3
GitHub
Note: This is a beta version of Ankh, so expect bugs! Additionally, it is also not recommended in Speedrun.com submissions.
Special thanks to @OceanRamen for their help in the development process o...
v.2.0.0-beta4
Not a lot of new features, but I went over some bugs and made some quality of life changes
https://github.com/SpectralPack/Ankh/releases/tag/v.2.0.0-beta4
GitHub
Note: This is a beta version of Ankh, so expect bugs! Additionally, it is also not recommended in Speedrun.com submissions.
What's new
Added Ante 12 category.
Added Jimbo's Buffet category...
Tested pretty much everything but lmk if you run into new issues.
Tried to make sure to keep compatibility with old replays so hopefully there isn't many 
Also I did not test this with steamodded outside of supporting JSON metadata, so most likely all old issues are still present