MonstruodellagoJess

New Member
Jul 19, 2022
14
7
I've played this game for awhile and I've never seen that even when loading saves from a previous version. Is the save from a few versions past or did it use mods?
new game, I tried mods for a long time but I always delete the folder to install the new one... aren't old mods deleted like this?
 

Bif

Newbie
Nov 18, 2017
30
15
Started the game and it never autosaved even after day 5, only 2 save slots ever worked at all, and now neither of them will save anything either.
 

Pamphlet

Member
Aug 5, 2020
348
609
l1lym, Sorry to be a pain but, could you add a line to the telling people to copy across the updated Harlowe files from the repository?

It's not a nightmare to work out if someone's as bad a programmer as I am - I know error messages - but it could trip up a lot of new gamers.
 
Last edited:

Smallfrie

Active Member
Dec 25, 2018
881
319
Does anyone know if I can make it so that, when I am a woman and I am pregnant, I can marry the father or something like that?
Since this game and mods tries to turn the MC into free use slut, i do not see it in the possible future development any time soon.
 

Yuki-x

Member
Jul 22, 2021
235
381
@
Thanks. I have now used your save file to fix the issue so it will patch the skill into old saves. Fix will be out with 0.21.1
You may want also to review/check the passagesdata with names:
name="hidden achievements score multiplier"
and
name="score multiplier calc"

it seems that they conflict with each other
Code:
(set:$score_multiplier to $score_multiplier + _hidden_ach_bonus)
Instead for adding a bonus to the $score_multiplier it gives a lower value
eg instead of 1.26 + whatever the bonus should be
x1.PNG
it gives 1.01
x2.PNG

ps the only thing that I moded in the html is the line
Code:
(set: _level_cap_adjustment to $stats_unobtainable * 0.03)
which I set to
Code:
(set: _level_cap_adjustment to $stats_unobtainable * (1 / 3))
and happens after the first achievement is unlocked
 
  • Haha
Reactions: Smallfrie

l1lym

Aphrodite, creator of X-Change Life™
Game Developer
Jan 21, 2019
1,145
3,752
@

You may want also to review/check the passagesdata with names:
name="hidden achievements score multiplier"
and
name="score multiplier calc"

it seems that they conflict with each other
Hi, I will do my best to explain what you are experiencing and the key points of the base game system:

The XP multiplier system is designed to balance gameplay and provide subtle advantages for different character builds.

1. Base Multiplier Calculation:
The base multiplier uses a logarithmic function based on total stats:

Code:
(set: _score_multiplier_temp to _a + _b * (log: $total_stats - _c))
This ensures that as your total stats increase, the multiplier changes at a decreasing rate, preventing exponential growth.

2. Level Cap Adjustment:
The 3% adjustment per unobtainable stat point compensates for self-imposed limitations:

Code:
(set: _level_cap_adjustment to $stats_unobtainable * 0.03)
(set: $score_multiplier to (round: (100 * $score_multiplier * (1 + _level_cap_adjustment))) / 100)
This is multiplicative, not additive. In your first screenshot, with a total of 11 stats and a max of 10 per stat, you have 19 unobtainable points (30 - 11). This results in a 57% increase (19 * 3%), explaining the 1.26x multiplier.

3. Hidden Achievements Bonus:
This bonus is applied separately and additively:

Code:
(set:_hidden_ach_bonus to $hidden_achievement_count * 0.03)
(set:$score_multiplier to $score_multiplier + _hidden_ach_bonus)

This bonus is applied after the level cap adjustment, which is why you might not see it directly reflected in the numbers you mentioned.

The reason your modification (changing 0.03 to 1/3 - 3% to 33%) resulted in a lower multiplier is that it drastically increased the level cap adjustment, which interacts with the logarithmic base calculation

The system aims to reward self-imposed limitations while still allowing players free to choose various stat setups. If you find it too grindy, modding is definitely encouraged, as you know it is very easy to do. All I can do is explain why I have set it up this way in the base game, as far as I can tell things are working as intended.
 

ViperFood

Newbie
Jul 20, 2023
15
36
I feel like the current way EXP multipliers and curves are set up is brilliant. Its hard to stay patient and avoid the game between updates because its already so good.
 

Smallfrie

Active Member
Dec 25, 2018
881
319
I feel like the current way EXP multipliers and curves are set up is brilliant. Its hard to stay patient and avoid the game between updates because its already so good.
Its working as intended...from the start and that is an example to others to not delay the process(cause most do and degrade their own game over time)
Yuki-x is a self confident new coder who forgot that coding is in service of the logic and intended end result. Not the other way.
 

l1lym

Aphrodite, creator of X-Change Life™
Game Developer
Jan 21, 2019
1,145
3,752
Well I can definitely see how the system can be confusing but as far as I can tell it is working as it is intended to. I have had issues in the past where the score multiplier doesn't always display properly on the menu screens so there's always a chance of that too, but yeah.
 

Yuki-x

Member
Jul 22, 2021
235
381
Hi, I will do my best to explain what you are experiencing and the key points of the base game system:

The XP multiplier system is designed to balance gameplay and provide subtle advantages for different character builds.

1. Base Multiplier Calculation:
The base multiplier uses a logarithmic function based on total stats:

Code:
(set: _score_multiplier_temp to _a + _b * (log: $total_stats - _c))
This ensures that as your total stats increase, the multiplier changes at a decreasing rate, preventing exponential growth.

2. Level Cap Adjustment:
The 3% adjustment per unobtainable stat point compensates for self-imposed limitations:

Code:
(set: _level_cap_adjustment to $stats_unobtainable * 0.03)
(set: $score_multiplier to (round: (100 * $score_multiplier * (1 + _level_cap_adjustment))) / 100)
This is multiplicative, not additive. In your first screenshot, with a total of 11 stats and a max of 10 per stat, you have 19 unobtainable points (30 - 11). This results in a 57% increase (19 * 3%), explaining the 1.26x multiplier.

3. Hidden Achievements Bonus:
This bonus is applied separately and additively:

Code:
(set:_hidden_ach_bonus to $hidden_achievement_count * 0.03)
(set:$score_multiplier to $score_multiplier + _hidden_ach_bonus)

This bonus is applied after the level cap adjustment, which is why you might not see it directly reflected in the numbers you mentioned.

The reason your modification (changing 0.03 to 1/3 - 3% to 33%) resulted in a lower multiplier is that it drastically increased the level cap adjustment, which interacts with the logarithmic base calculation

The system aims to reward self-imposed limitations while still allowing players free to choose various stat setups. If you find it too grindy, modding is definitely encouraged, as you know it is very easy to do. All I can do is explain why I have set it up this way in the base game, as far as I can tell things are working as intended.
Thanks for the answer, I had already understood points 1 2 3

What I do not get (and the reason I reported it as bug) is how the level cap adjustment can result in a lower multiplier, but it happens only after a achievement is unlocked.

with the 33% modification enabled:
a) before unlocking an achievement
The level cap adjustment interacts with the logarithmic base calculation => gives the expected multiplier score (1.26)
b) after unlocking an achievement
step (a) should still stand / remains the same? correct? It should still be (1.26)
then the bonus should be triggered and the new value should be (1.26) + bonus
But from what I see it ignores the level cap adjustment (all together) and gives
a result of the default initial multiplier only (logarithmic base calculation), ignoring the level cap adjustment setting, and the bonus compensates to bring the value back to the initial setting.
----------------------------
If no modifications are done to the game:
no achievement triggered
level cap + base calculation = results to a value (A)
achievement triggered
level cap + base calculation + bonus = results to a value (B)

(A) should be different than (B) if a bonus is really applied correct?
But in reality, what I get is that (A) is equal to (B)
So either the bonus is not applied (I don't think is the case)... or the multiplier ignores the level cap and applies only the bonus.


edit: it could be related to the export/import saves
edit 2: never mind I found the conflicting code
It's inside passagedata pid="3321" name="score multiplier calc"
(set: $score_multiplier to (round: (100 * _score_multiplier_temp)) / 100)
conflicts with
(set: $score_multiplier to (round: (100 * $score_multiplier * (1 + _level_cap_adjustment))) / 100)
During the setup is used
(set: $score_multiplier to (round: (100 * $score_multiplier * (1 + _level_cap_adjustment))) / 100)
and then during the game play is ovewritten again from
(set: $score_multiplier to (round: (100 * _score_multiplier_temp)) / 100)
 
Last edited:

Smallfrie

Active Member
Dec 25, 2018
881
319
Thanks for the answer, I had already understood points 1 2 3

What I do not get (and the reason I reported it as bug) is how the level cap adjustment can result in a lower multiplier, but it happens only after a achievement is unlocked.

with the 33% modification enabled:
a) before unlocking an achievement
The level cap adjustment interacts with the logarithmic base calculation => gives the expected multiplier score (1.26)
b) after unlocking an achievement
step (a) should still stand / remains the same? correct? It should still be (1.26)
then the bonus should be triggered and the new value should be (1.26) + bonus
But from what I see it ignores the level cap adjustment (all together) and gives
a result of the default initial multiplier only (logarithmic base calculation), ignoring the level cap adjustment setting, and the bonus compensates to bring the value back to the initial setting.
----------------------------
If no modifications are done to the game:
no achievement triggered
level cap + base calculation = results to a value (A)
achievement triggered
level cap + base calculation + bonus = results to a value (B)

(A) should be different than (B) if a bonus is really applied correct?
But in reality, what I get is that (A) is equal to (B)
So either the bonus is not applied (I don't think is the case)... or the multiplier ignores the level cap and applies only the bonus.


edit: it could be related to the export/import saves
edit 2: never mind I found the conflicting code
It's inside passagedata pid="3321" name="score multiplier calc"
(set: $score_multiplier to (round: (100 * _score_multiplier_temp)) / 100)
conflicts with
(set: $score_multiplier to (round: (100 * $score_multiplier * (1 + _level_cap_adjustment))) / 100)
During the setup is used
(set: $score_multiplier to (round: (100 * $score_multiplier * (1 + _level_cap_adjustment))) / 100)
and then during the game play is ovewritten again from
(set: $score_multiplier to (round: (100 * _score_multiplier_temp)) / 100)
It happens in code that is rewritten multiple times... not that it maters much...
 

l1lym

Aphrodite, creator of X-Change Life™
Game Developer
Jan 21, 2019
1,145
3,752
Thanks for the answer, I had already understood points 1 2 3

What I do not get (and the reason I reported it as bug) is how the level cap adjustment can result in a lower multiplier, but it happens only after a achievement is unlocked.

with the 33% modification enabled:
a) before unlocking an achievement
The level cap adjustment interacts with the logarithmic base calculation => gives the expected multiplier score (1.26)
b) after unlocking an achievement
step (a) should still stand / remains the same? correct? It should still be (1.26)
then the bonus should be triggered and the new value should be (1.26) + bonus
But from what I see it ignores the level cap adjustment (all together) and gives
a result of the default initial multiplier only (logarithmic base calculation), ignoring the level cap adjustment setting, and the bonus compensates to bring the value back to the initial setting.
----------------------------
If no modifications are done to the game:
no achievement triggered
level cap + base calculation = results to a value (A)
achievement triggered
level cap + base calculation + bonus = results to a value (B)

(A) should be different than (B) if a bonus is really applied correct?
But in reality, what I get is that (A) is equal to (B)
So either the bonus is not applied (I don't think is the case)... or the multiplier ignores the level cap and applies only the bonus.


edit: it could be related to the export/import saves
edit 2: never mind I found the conflicting code
It's inside passagedata pid="3321" name="score multiplier calc"
(set: $score_multiplier to (round: (100 * _score_multiplier_temp)) / 100)
conflicts with
(set: $score_multiplier to (round: (100 * $score_multiplier * (1 + _level_cap_adjustment))) / 100)
During the setup is used
(set: $score_multiplier to (round: (100 * $score_multiplier * (1 + _level_cap_adjustment))) / 100)
and then during the game play is ovewritten again from
(set: $score_multiplier to (round: (100 * _score_multiplier_temp)) / 100)
No, it is working for me. I did the exact same setup and got 1.26x, and then it went up to 1.38x due to 4 hidden achievements.

You started by telling me the whole system is bad, and then you modified the game code, and then now you are getting some unexpected values, and now you are telling me things are reverted, but I have no way to verify the state of your game, so I'm not going to spend anymore time investigating this unless more people report it.
 
4.50 star(s) 102 Votes