Page 1 of 1

Offsets for Antarian fleet build rates

Posted: Sat May 19, 2007 9:05 pm
by Lord Brazen
Here are the offsets for the Antarian ship build rates. These are 1.31 offsets. Add 0x8040 for 1.40 offsets.

Code: Select all

Offset -------------------------------------- E9CE0 BYTE Offensive ship build rate E9CCD BYTE Defensive ship build rate

Posted: Mon Dec 01, 2008 12:28 am
by Jos
Can someone tell me how to use this info to increase Anterean attacks please?

Posted: Wed Dec 03, 2008 4:39 am
by darquan
i have 1.4 patch and dc mod and am trying to increase number of antaran attacks or size of antaran ships when they do attack, i have found the above location on hex editor and ran some tests changing the numbers but cant figure out how to do either of these. I also dont understand "Add 0x8040 for 1.40 offsets"... Can anyone help?

Posted: Wed Dec 03, 2008 12:46 pm
by Overlord2
I also dont understand "Add 0x8040 for 1.40 offsets"... Can anyone help?
there is a shift in hexes between 1.31 and 1.40 equal to 40 hexes if I remember correctly. Meanwhile all addresses given refer to 1.31. This is what he probably meant....

Posted: Thu Apr 29, 2010 3:20 pm
by Jos
Can anyone tell me if these offsets will make the Antareans attack more frequently? I mean, increasing the amount of offensive ships they build doesn't necessarily mean it'll increase the frequency of their attacks, right? Or am i missing something?

Posted: Thu Apr 29, 2010 7:12 pm
by darquan
Well i've found the hex values but my trial and error failed and I can't work out what to change them to so that either they bring bigger fleets or they come much more often ..preferably both, can anyone help with this?

Posted: Fri Apr 30, 2010 9:55 am
by tf8

Code: Select all

int __fastcall ANTARANS_Increment_Antaran_Resource_Level_(int a1) { int result; // eax@1 signed int v2; // edx@1 int v3; // edx@1 signed __int16 v4; // ax@3 signed __int16 v5; // si@7 __int16 v6; // cx@11 int v7; // ebx@11 result = ANTARANS_Antaran_Delay_(a1, MOX__stardate); v2 = v3 - 35000 - (signed __int16)result; if ( v2 > 0 ) { result = v2 / 25; if ( !(v2 % 25) ) { v4 = 100; if ( byte_191CB0 == 3 ) { v4 = 150; } else { if ( byte_191CB0 == 4 ) v4 = 200; } v5 = 100; if ( byte_191CB0 == 3 ) { v5 = 150; } else { if ( byte_191CB0 == 4 ) v5 = 200; } v7 = (v2 / 25 * v4 + 99) / 100; word_191176 += v7; result = ANTARANS_Antaran_Defensive_Force_At_Maximum_( (v2 / 25 * v5 + 99) / 100, (v2 / 25 * v5 + 99) % 100, v7, (v2 / 25 * v5 + 99) / 100); if ( (_BYTE)result ) word_191176 += v6; else word_191178 += v6; } } return result; }
That's the decompiled function code for which Lord Brazen gave those offsets.

v5 = 100; is the value, located at E9CE0 offset.

You can find it in moo exe by sequence of bytes:

FB 89 C3 0F BF C6 0F AF C1 83 C0 63 B9 64 00 00 00

Where 64 00 00 00 is that v5 = 100 value.

Posted: Fri Apr 30, 2010 11:03 am
by Jos
Thanks - but i don't really understand. Are you saying those offsets DO control the frequency of Antarean attacks? Or are these completely the wrong offsets, and i'm barking up the wrong tree?

Posted: Fri Apr 30, 2010 11:42 am
by Overlord2
He extracted the antarans function, which is to be interpreted. No clarity with it now...