• New Horizons on Maelstrom
    Maelstrom New Horizons


    Visit our website www.piratehorizons.com to quickly find download links for the newest versions of our New Horizons mods Beyond New Horizons and Maelstrom New Horizons!

Brits are hostile toward me again

<!--quoteo(post=164664:date=Sep 30 2006, 07:23 AM:name=Hook)--><div class='quotetop'>QUOTE(Hook @ Sep 30 2006, 07:23 AM) [snapback]164664[/snapback]</div><div class='quotemain'><!--quotec-->
There was a problem that I found and fixed where it was never marked that you'd paid a loan back to the loanshark, so you'd take the -20 reputation hit as soon as the original loan was supposed to go overdue, even if you had paid it back. That should no longer be happening.

There may be an additional problem where the overdue date is not being calculated correctly. I once got a loan from the loanshark immediately before dividing the plunder, and when the "2 months" had elapsed after dividing the plunder I was overdue on the loan. This character may have had only 2 months to pay back the loan, so I don't know if it's an error in the calculations.

<!--QuoteEnd--></div><!--QuoteEEnd-->

Yes! This one occured in my game too, I'm quite shure of it! I came back to pay the loanshark one day before the elapsed time, he thanked me, I divided the plunder, and the next day lost -20 rep and that loanshark called me bastard and all this... And didn't ask me to pay, as I hadn't got any debts now. Good that you corrected this bug!
 
It might be safest to wait until after midnight to divide the loot if you've paid a loanshark back that day. I'm not sure when everything is updated.

But that was a nasty bug, and had apparently been there for a long time.

Hook
 
I just noticed that the reputation code has indeed recently been changed. IncredibleHat changed it back to int, which was meant to fix some problems. But could it be that that also caused some problems?
<!--c1--><div class='codetop'>CODE</div><div class='codemain'><!--ec1-->    if (incr != 0) {
        incr = makeint( makefloat(incr) * 1.9 );// leaves 1 as 1, but almost doubles all other rep increases, good enough
    } else {
        incr = 0; // just to make sure it actually _IS_ zero, and not just false
    }<!--c2--></div><!--ec2-->
Does the line <i>incr = makeint( makefloat(incr) * 1.9 );</i> cause the repution doubling in this code? Why not just use <i>* 2</i> ? <img src="style_emoticons/<#EMO_DIR#>/unsure.gif" style="vertical-align:middle" emoid=":?" border="0" alt="unsure.gif" />
 
<!--quoteo(post=164664:date=Sep 30 2006, 01:23 PM:name=Hook)--><div class='quotetop'>QUOTE(Hook @ Sep 30 2006, 01:23 PM) [snapback]164664[/snapback]</div><div class='quotemain'><!--quotec-->

Has anyone been around long enough to know why the reputation changes were doubled in the code? This doesn't seem like a very good idea to me. I know this was done some time before build 12, but I don't have any versions of the code between the stock game and build 12, so I don't know exactly when this was done. If we keep the reputation doubling, we should at least put a buildsettings.h toggle on it so it can be turned off. I suspect the doubleing code was put in because of the problem with the loanshark code.

Hook
<!--QuoteEnd--></div><!--QuoteEEnd-->

IIRC once upon a time I told NK that this function always made positive repchanges even if you called it with negative values. I assume that the section with the doubling is meant to correct that. Though I don't understand the logic behind it. Why can't it simply add incr to the old reputation and set that as the new reputation???
 
Hat did something with that calculation so that church donations didn't get doubled, but you still passed an integer to the function. I've fixed it a completely different way, and will be sending the code to you shortly.

Thanks CCC. I'm going to put a toggle on the doubling. There shouldn't be any problems with negative rep changes anywhere.

I've also added some code to change your officers' reputations by 1/2 the amount the player's rep changes. Unless the change is 1, which won't be cut in half.

Hook
 
Back
Top