Add Celeste Any% + IL Autosplitters + Splits - #25
Conversation
|
Chonky PR here, I see! Do you prefer waiting for 369 to be merged or do you prefer having things merged sooner and go back to edit stuff later? |
|
I think its fine, theoretically you shouldnt need to do any of those things in the first place :p I guess it would be good to add it to the readme at least. |
|
I was just about to start working on a Celeste implementation, so very serendipitous timing that you put this together 😄 |
|
Minor nitpick, the room start for 2a awake is 2 rooms early. This is when I was testing any% checkpoint. It should trigger in the room with the checkpoint, not when you actually wake up. I haven't had a chance yet to figure out how to get the room numbers, but I will when I get the chance. EDIT: Just checked and it's end_3 instead of end_0 for both of the checkpoint lua scripts |
|
Another issue I had that stopped this from running out of the box was an address read issue: There's always the possibility I've misconfigured something on my end that would cause this. But my (admittedly vibecoded) solution was to add the following function and locals at the top of the 4 lua scripts: and then modify the startup function as follows: From my understanding, it seems like at least my machine doesn't like the the absolute virtual addresses that the Celeste scripts use by default. So this just converts them to offsets. Not sure if this is a hackjob; but it has made everything run very smoothly on my end. |
yeah, we generally use that room instead of the checkpoint room in-game since it kinda makes more sense and feels better. the newest splits on src for instance all use end_0 instead of end_3 |
hmm, someone else I had given it to was also getting that same error, so I think its like a distro specific thing? that solution seems fine to me, I dont think its better to like add the offset manually to every readAddress. |
|
that also has the added benefit of no longer needing LIBRESPLIT_DISABLE_IOCTL_MAPS=1 so thats nice |
Makes sense! It's super easy to swap it on my end and can definitely be personal preference for most folks. |
|
Been playing around with it more, and another thing I think would be helpful would be to a bigger default width and height for all of the split files. I've been using "width": 350, |
|
Was just going for a full run, and I noticed that the splits for any% 6b route checkpoints still is the 6a route. Should be 6a Start, Lake, Casette, 6b start/ Reflection / Rock Bottom/ Reprieve. EDIT: Actually I can see with the existing splits you wouldn't include Lake, since it's just the one room. |
mmm, true, thats just the default you get when you convert. Im not sure what the best size is, but I assume most people will have to change it anyway since the window gets resized on every reset. |
I didnt include the 2 room hollow split cause I think its a little silly, but unbeknownst to me most people do include hollows so I added it :p |
I havent tested every chapter in every split, but everything I tested was working.
The split logic will break if people skip/undo/manually split, requires LibreSplit/LibreSplit#369 to fix, but this felt like the best solution to handle all the edge cases and also allow for easily reusing on the other categories when I get around to that.