Does a patch/mod exist for the Curse Broken achievement in Cave Story+?

Mar 10, 2017 at 7:46 PM
Junior Member
"Fresh from the Bakery"
Join Date: May 20, 2014
Location: Netherlands
Posts: 18
So everyone here might know that this achievement has been broken since the beginning of it's release and Nicalis hasn't bothered to fix it. I have seen some stuff that people have looked into the code and there wasn't any mention of the Curse Broken achievement popping up when you beaten the game.
 
Mar 10, 2017 at 10:38 PM
Junior Member
"Fresh from the Bakery"
Join Date: May 20, 2014
Location: Netherlands
Posts: 18
nope, there is no patch
Odd. For most games people tend to release patches for certain things to fix the games. Apparently there is none for Cave Story+, sadly.
 
Mar 11, 2017 at 7:49 AM
Junior Member
"Fresh from the Bakery"
Join Date: May 20, 2014
Location: Netherlands
Posts: 18
CaveStory+ actually has edit protection, making this task very difficult. Thomas Xin has managed to overwrite the write protection. But it cannot be boiled down into a small patch, he has to redistribute the entire .exe.
If that patch ever got released and you replace the Cave Story+ executable to the one he modified, would you still get the achievement upon beating Ballos?
 
Mar 11, 2017 at 7:56 AM
Junior Member
"Fresh from the Bakery"
Join Date: May 20, 2014
Location: Netherlands
Posts: 18
The way you phrased your question is a little confusing. You do not get the achievement either way without further modification to fix the bug.
That was I meant to say. My bad.
 
Mar 12, 2017 at 2:35 PM
Senior Member
CSE Discord Admin
"Fly, Fly, Fly!"
Join Date: Jan 13, 2016
Location:
Posts: 132
I think I found the cause. Turns out a fix only requires a simple TSC modification.

I did some digging through the Cave Story+ EXE, and found the code for triggering achievements. Each achievement is assigned an ID: the Normal Ending achievement ID is 50, the Mimiga Mask Ending is 52, and the Good Ending is 51. So I did some more digging, and found that CS+ added a TSC command for triggering achievements: 'ACH'. None of the achievements triggered by the game's code used ID 51, so that left only the TSC scripts. Looking in the script for the room 'Fall' (the cutscene where you're caught by Kazuma or Balrog), I found the following:

Code:
Let's go home.<NOD<CLO
<KEY<FAO0004<HMC
<ITJ0024:0101
<ACH0050<TRA0000:0100:0001:0015

#0101
<ACH0052<TRA0000:0100:0001:0015

As you can see, the Normal/Mimiga endings are properly unlocked. But, looking at the Good Ending...

Code:
<KEY<FAO0004<HMC<ITJ0032:0121<TRA0000:0100:0001:0015

#0121
<KEY<WAI0100<MSG<GIT1032
Aren't we forgetting something?<NOD<TRA0000:0100:0001:0015

...there's no such command. It seems like Nicalis just forgot to insert a '<ACH0051' before the 'TRA's.
 
Last edited:
Mar 12, 2017 at 4:23 PM
Senior Member
CSE Discord Admin
"Fly, Fly, Fly!"
Join Date: Jan 13, 2016
Location:
Posts: 132
Ah, right. 51 isn't unlocked in Fall, it's in Ballo2. Achievements that depend on the good ending unlock properly, so 51 should be processed properly. Each achievement is represented by a string, which is passed to the steam_api.dll file. Maybe the good ending's one is wrong. The one in the game is 'ENDGOOD', but maybe the one on steam's server is different?

EDIT: According to this page, the string Steam expects is 'ENDBEST'. That explains it. So the 'ENDGOOD' string inside the EXE needs changing.

EDIT2: In other news, whoa: the internal name for the achievement for beating Hard Mode is 'BAMF', which I'm pretty sure is short for 'Bad-Ass Mother-Fucker'. Dayum, Nicalis.
 
Last edited:
Jan 10, 2018 at 8:50 PM
Neophyte Member
"Fresh from the Bakery"
Join Date: Jan 10, 2018
Location:
Posts: 2
Apologies for the necro, but I created an account just to ask for further details on this. I'm no stranger to hex editing, but I was curious as to what needs to happen to bypass the exe's "edit protection". Simply editing the ENDGOOD string causes the exe to bomb. Is there some kind of checksum?
 
Jan 10, 2018 at 9:30 PM
In my body, in my head
Forum Moderator
"Life begins and ends with Nu."
Join Date: Aug 28, 2009
Location: The Purple Zone
Posts: 5998
works fine for me, ive made way more heinous exe edits than this and still had the game run fine. pretty sure theres no protections.
 
Jan 11, 2018 at 5:23 AM
Neophyte Member
"Fresh from the Bakery"
Join Date: Jan 10, 2018
Location:
Posts: 2
You are right! I was double-clicking the exe, but running it through Steam works just fine.
 
Aug 3, 2019 at 11:48 PM
Senior Member
"Wahoo! Upgrade!"
Join Date: Dec 22, 2018
Location: Sand Zone Residence
Posts: 55
Cave Story+ didn't receive an update - does this mean that the previously incorrect code "ENDGOOD" is now the correct one?
Yeah, they changed it on the server side, so ENDGOOD is the correct code.

Can someone tell them to initialise the scoreboards now
yes please

so that I can hack my way to the top of them?
bad zxin, very bad
 
Top