Princess Remedy in a World of Hurt

Princess Remedy in a World of Hurt

Not enough ratings
Save File Hacking
By Montinevra
Documentation for the save file and how to modify it.

This guide is intended for anyone who's played through the game and wants to explore normally unreachable areas and generally just screw around. Full of spoilers.
   
Award
Favorite
Favorited
Unfavorite
Save file overview
The game has three save slots. The data for each slot is contained within its own separate file, aptly named:
remedy1.sav remedy2.sav remedy3.sav
They are located in the game's install directory. (Quick way to get there: go to your games library, right click Princess Remedy, "Properties", "local files" tab, "browse local files..." button.)

The files are plain text, and are neatly formatted with similar data grouped together by line. Most lines contain a single value. Others, namely 7 through 11, are an array of values; each digit is a distinct value. I'll be describing the file format line-by-line.
Line 1: final boss dialogue
0: do nothing 1: trigger action 2: do nothing
This value changes from 0 to 2 after beating the final boss. A value of 1 triggers the "press action button" event immediately on loading into the game, forcing you to interact with the npc in front of you (or opening the menu). This is likely what is used to trigger Prince Hingst's post-healing dialogue immediately after the encounter without needing player input (all other npcs wait for player input before displaying their dialogue). Additionally, a value of 1 sets "proposal mode" to 1 as well (see Line 2).

Doesn't affect whether or not the boss encounter is actually available. This is instead determined by Prince Hingst's status (see Line 8).
Line 2: proposal mode
0: disabled 1: enabled
This determines whether or not speaking to an npc gives you the option to marry them. During normal gameplay, it is enabled after healing Prince Hingst. Additionally, npcs can only be proposed to after they've been healed, and have been spoken to at least once after being healed (see Line 8).

Also determines whether or not to play the falling-through-space sequence when jumping from the Palace Platform.

Together with your attributes (see Lines 12-16), also affects whether or not the Saturnian Secret door is open.
Line 3: intro dialog
0: do nothing* 1: trigger action 2: do nothing
Similar to line 1, a value of 1 forces the "press action button" event immediately upon loading. This is likely what is used to trigger Queen Amelia's dialog on starting a new game without requiring input from the player. A 2 always gets written on saving.

When in the Saturnian Palace, any value less than 2 triggers the action button.
Lines 4-5: coordinates
Your east/west (line 4) and north/south (line 5) coordinates for the current zone. Interestingly, coordinates are measured in pixels and not map tiles. Map tiles are 16x16 pixels, so any movement is done in increments of 16.

The origin point (0, 0) of Remedy's sprite is at its center, i.e. offset by (8, 8) pixels from the world grid. As such, during normal gameplay, each coordinate can only ever be (some multiple of sixteen) plus eight (i.e. 8, 24, 40, 56, etc.). Setting these to some other value will misalign Remedy from the world grid. For colision checking purposes, Remedy is considered to be in every tile she overlaps with.

Most zones are 20 x 15 tiles, or 320 x 240 pixels. House zones (see Line 17) are 60 x 40 tiles (960 x 640 pixels). Setting your coordinates outside these boundaries is possible, and you can move around freely, but the camera will not scroll farther than the map edges.

The playable area in each map is bordered by impassable tiles, but this border is usually only one tile wide. It's possible to move about freely in the inaccessible tiles beyond it.
Line 6: direction
0: east 1: north 2: west 3: south
The direction Remedy is facing. Values greater than 3 cause Remedy to face south.

Negative values cause Remedy to spin around until you press escape or a movement key (action key won't work). Saving the game in this state writes the same value that was loaded.
Line 7: keys
0: unobtained 1: obtained
This line is six digits wide, each corresponding to one of the six obtainable keys, as follows:
1: Eastern Key 2: Western Key 3: Black Hole Key 4: Northern Key 5: Royal Key 6: Chocolate Box
The status of the chests they are obtained from is saved separately (see Line 9).

Values over 1 display the key in the inventory, but will not allow you to open the appropriate door.
Line 8: npc status
0: sick 1: cured/healthy, not spoken to 2: ready to marry
This line is 64 digits wide, each corresponding to a different npc, as follows:
1: Ducklord 2: Sam 3: Robin 4: Dark Lord 5: Flowerman 6: Kentaur girl 7: Stinky 8: Wobbly 9: Tulip X 10: Kentaur boy 11: Brad 12: Face 13: Ron 14: Romeo 15: Jeff 16: Lambo 17: Camilla 18: Shark 19: Anki 20: Flat 21: Mandark 22: Lady 23: Bro 24: Mug 25: Ittle 26: Tippsie 27: Jenny 28: Tall One 29: Rosepun 30: Daddy 31: Slinky 32: Kurt 33: Dude 34: Guy 35: Becker 36: Doc 37: Plait 38: Josefin 39: Some girl 40: Queen Amelia 41: Tage 42: Sadbloom 43: Snide 44: Chicory 45: Mange 46: Sivert 47: Sture 48: Sten 49: Wrapper 50: Rotten King 51: Old Queen 52: Paper boy 53: Slick 54: Apathetic Frog 55: Hrist 56: Esi 57: Palle 58: Eir 59: Chomp 60: Dark Servant 61: Prince Hingst 62: Seal of quantity 63: Moonbunny 64: Frallan
Every npc has a "sick" sprite, including ones that normally start off healthy. Such npcs don't have an associated healing encounter, and attempting to heal one displays an empty dialog box and triggers the screen transition, but will immediately return to the overworld screen without entering an encounter. The npc remains sick and no hearts are awarded.

A value of 1 normally occurs immediately after healing the npc, if they don't already start out healthy. They cannot be married in this state. Speaking to a healthy npc sets the value to 2, which does allow them to be married (if "proposal mode" is enabled [see Line 2]). This guarantees you at least one chance to read their post-healing dialog before ending the game.

Values higher than 2 function identically to 2.
Line 9: chest status
0: unopened 1: opened
Each digit corresponds to one of the 57 chests in the game, as follows:
1: heart (Warp Room) 2: flask (Mild Town) 3: heart (House [Mild Town]) 4: heart (House [Mild Town]) 5: heart (Secret Grove) 6: regen (Secret Grove) 7: heart (Fall Town) 8: multi (Fall Town) 9: Eastern Key (Fall Town) 10: heart (House [Fall Town]) 11: regen (House [Fall Town]) 12: heart (Mysterious Cave) 13: flask (Mysterious Cave) 14: heart (Burn Town) 15: power (Burn Town) 16: heart (House [Burn Town]) 17: flask (House [Burn Town]) 18: heart (Pyramid 1F) 19: multi (Pyramid 1F) 20: Western Key (Pyramid 1F) 21: heart (Pyramid 2F) 22: regen (Pyramid 1F) 23: heart (Spider Cave) 24: heart (Spider Cave) 25: regen (Spider Cave) 26: flask (Spider Cave) 27: heart (Moon Garden) 28: heart (Moon Garden) 29: power (Moon Garden) 30: regen (House [Moon Garden]) 31: heart (Asteroid) 32: regen (Asteroid) 33: heart (Crystal Palace 1F) 34: multi (Crystal Palace 1F) 35: Black Hole Key (Crystal Palace 1F) 36: heart (Crystal Palace 2F) 37: flask (Crystal Palace 2F) 38: heart (Lonely House) 39: flask (Lonely House) 40: power (Nothing Dimension) 41: heart (Black Fortress 1F) 42: heart (Black Fortress 1F) 43: power (Black Fortress 1F) 44: heart (Black Fortress 2F) 45: regen (Black Fortress 2F) 46: flask (Black Fortress 2F) 47: heart (The Living End) 48: multi (The Living End) 49: Northern Key (The Living End) 50: heart (House [The Living End]) 51: flask (House [The Living End]) 52: heart (Omen Shore) 53: regen (Omen Shore) 54: regen (Royal Castle 1F) 55: flask (Royal Castle 1F) 56: Royal Key (Royal Castle 1F) 57: Chocolate Box (Royal Castle 1F)
64 digits get written on saving. It is possible to load a line longer or shorter than 64 digits. Anything loaded remains in ram until overwritten by a line at least as long.

The entire line affects whether or not you can open the Jealous Chest (see Line 19), even digits beyond the first 57.
Line 10: heart gates
0: closed 1: open
LIke line 9, 64 digits get written on saving. The second through the ninth correspond to a different gate. I've identified them by the number of hearts needed to unlock (numbers in parentheses are for normal difficulty). The other digits don't affect anything.
2: 10 (East Hurtland) 3: 16 (East Hurtland) 4: 20 (West Hurtland) 5: 28 (West Hurtland) 6: 56 (45) (West Hurtland) 7: 48 (40) (Black Hole) 8: 64 (50) (North Hurtland) 9: 75 (60) (North Hurtland)
Line 11: locked gates
0: closed 1: open
The status of the five Warp Room gates (and the "heart" one in the Nothing Dimension). 64 digits get written on saving. Only the first six affect anything.
1: East Hurtland 2: West Hurtland 3: Black Hole 4: North Hurtland 5: Royal Valley 6: Nothing Dimension
Lines 12-16: attributes
Five lines representing Remedy's attributes, as follows:
12: Hearts 13: Power 14: Multi 15: Regen 16: Flasks
Hearts can be in the range of 5 - 99. All others can be 1 - 99. On loading, numbers outside these ranges are set to the closest within range. In game, any attribute gained when at 99 won't increase it further.

Any power value greater than 6 uses the frog sprite for projectiles.

A multi value of 36 is enough to fire projectiles in a full circle around Remedy. At higher levels, the projectiles overlap each other, but still each deal their individual damage.

During normal gameplay, the max obtainable values are as follows and are displayed as such on the score screen at the end of the game:
Hearts: 80 Power: 5 Multi: 5 Regen: 10 Flasks: 10
These, together with "proposal mode" (see Line 2), serve as the requirements to unlock the door in the Saturnian Secret (max power can actually go to 6 with the Jealous Chest, but isn't required). Higher values unlock the door as well.

The completion percentage displayed at the end of the game is calculated by totalling all five attributes and subtracting 10.
Line 17: zone
: Nowhere 1: Saturnian Palace 2: Palace Platform 3: Warp Room 4: East Hurtland 5: Mild Town 6: House (Mild Town) 7: Secret Grove 8: Fall Town 9: House (Fall Town) 10: Mysterious Cave 11: West Hurtland 12: Burn Town 13: House (Burn Town) 14: Pyramid 1F 15: Pyramid 2F 16: Spider Cave 17: Black Hole 18: Moon Garden 19: House (Moon Garden) 20: Asteroid 21: Crystal Palace 1F 22: Crystal Palace 2F 23: Lonely House 24: Nothing Dimension 25: North Hurtland 26: Black Fortress 1F 27: Black Fortress 2F 28: The Living End 29: House (The Living End) 30: Omen Shore 31: Royal Valley 32: Royal Castle 1F 33: Royal Castle 2F 34: Saturnian Secret 35: Moon Garden Secret
Your current zone.

There are five different zones simply called "House". These contain the map data for all of the houses in a given city.

An empty line, or any other value not listed above, puts you in "Nowhere". It's completely empty except for a warp tile that brings you to East Hurtland. It's not accessible through normal gameplay and likely exists as a failsafe in case you try to warp to an invalid zone index. Like through save file hacking.
Line 18: time played
Your playtime, in thirtieths of a second. This is presumably the length of a frame or game tick. Can be negative.
Line 19: jealous chest
0: unopened 1: opened; previous chests unopened 2: opened; previous chests opened
The status of the Jelous Chest. Can only be opened if no other chest is open (Line 9) and proposal mode is disabled (Line 2). Opening it sets this value to 1.

With a value of 1, stepping in front of the Moon Garden Secret entrance opens all chests in East and West Hurtland (i.e. sets digits 2 through 26 of Line 9 to a value of 1) and grants you their contents (i.e. adds 12 hearts, 1 power, 2 multi, 4 regen, 4 flasks to your attributes [Lines 12-16]).

A value of 2 makes it behave like a regular empty chest.
Line 20: difficulty
0: Normal 1: Hard 2: Master 3: Reallyjoel's dad
Game difficulty, as chosen from the new game menu. Modifying this changes the difficulty of healing encounters as well as the number of hearts needed to unlock the various gates.

Despite displaying an infinity symbol, the unlock requirements for the heart gates on Reallyjoel's dad difficulty are the same as in Hard or Master.
Lines 21-28: unknown
A 0 gets written to each line on saving. Doesn't appear to affect gameplay.
Line 29: metadata
Contains the following string:
Princess Remedy savefile 1.1 (6 Dec 2014)
Always gets written on saving. Doesn't affect gameplay.
1 Comments
Lucarvee 1 Jul, 2023 @ 5:57pm 
Excelent guide for the entire sav file code. Maybe give some examples of what certain positions would look like for the four 64 character lines