Code:
<?xml version="1.0" encoding="utf-8"?>
<CheatTable CheatEngineTableVersion="26">
<CheatEntries>
<CheatEntry>
<ID>148</ID>
<Description>"Master"</Description>
<Options moHideChildren="1"/>
<LastState Activated="1"/>
<Color>0000FF</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[enable]
alloc(SetMasterCode, 128)
//aobscan(SetMasterOrig, 89 99 EC 83 38 00 F3 0F 10 89 ?? ?? ?? ?? F3 0F 10 91)
aobscan(SetMasterOrig, 89 99 ?? ?? ?? ?? F3 0F 10 89 ?? ?? ?? ?? F3 0F 10 91 ?? ?? ?? ?? 89 75 E8 89 F1 89 C6 E8 ?? ?? ?? ?? B8 ?? ?? ?? ?? 8B 75 F4 E8 ?? ?? ?? ?? 8B 4D F4 8B 01 83 B8 ?? ?? ?? ?? 01 0F 9F C0 0F B6)
registersymbol(SetMasterOrig)
label(SetMasterOrigReturn)
label(Master)
registersymbol(Master)
////
SetMasterOrig:
jmp SetMasterCode
nop
SetMasterOrigReturn:
////
SetMasterCode:
mov [ecx+003B18C4],ebx
mov [Master],ebx
jmp SetMasterOrigReturn
////
Master:
dd (int)0
////
[disable]
dealloc(SetMasterCode)
unregistersymbol(SetMasterOrig)
unregistersymbol(Master)
SetMasterOrig:
//mov [ecx+00373310],ebx
db 89 99 10 33 37 00
</AssemblerScript>
<CheatEntries>
<CheatEntry>
<ID>149</ID>
<Description>"Master (Debug)"</Description>
<DropDownList ReadOnly="1" DescriptionOnly="1" DisplayValueAsItem="1">0:HACK OFF
1:HACK ON
</DropDownList>
<Color>FF00FF</Color>
<VariableType>4 Bytes</VariableType>
<Address>Master</Address>
</CheatEntry>
<CheatEntry>
<ID>156</ID>
<Description>"Debug Info"</Description>
<Options moHideChildren="1"/>
<LastState Value="" RealAddress="00000000"/>
<Color>FF00FF</Color>
<GroupHeader>1</GroupHeader>
<CheatEntries>
<CheatEntry>
<ID>169</ID>
<Description>"Current Club Info"</Description>
<Options moHideChildren="1"/>
<LastState Value="" RealAddress="00000000"/>
<Color>FF00FF</Color>
<GroupHeader>1</GroupHeader>
<CheatEntries>
<CheatEntry>
<ID>168</ID>
<Description>"Accuracy"</Description>
<VariableType>4 Bytes</VariableType>
<Address>ClubDataAddress</Address>
<Offsets>
<Offset>8</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>177</ID>
<Description>"Power"</Description>
<VariableType>Float</VariableType>
<Address>ClubDataAddress</Address>
<Offsets>
<Offset>14</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>174</ID>
<Description>"Ball Guide"</Description>
<VariableType>Float</VariableType>
<Address>ClubDataAddress</Address>
<Offsets>
<Offset>34</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>173</ID>
<Description>"Ability 1"</Description>
<VariableType>4 Bytes</VariableType>
<Address>ClubDataAddress</Address>
<Offsets>
<Offset>38</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>172</ID>
<Description>"Ability 2"</Description>
<VariableType>4 Bytes</VariableType>
<Address>ClubDataAddress</Address>
<Offsets>
<Offset>3C</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>171</ID>
<Description>"Ability 3"</Description>
<VariableType>4 Bytes</VariableType>
<Address>ClubDataAddress</Address>
<Offsets>
<Offset>40</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>170</ID>
<Description>"Curl"</Description>
<VariableType>Float</VariableType>
<Address>ClubDataAddress</Address>
<Offsets>
<Offset>44</Offset>
</Offsets>
</CheatEntry>
</CheatEntries>
</CheatEntry>
<CheatEntry>
<ID>199</ID>
<Description>"Wind Base"</Description>
<VariableType>Float</VariableType>
<Address>WindBaseAddress</Address>
<Offsets>
<Offset>0</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>154</ID>
<Description>"Needle Speed Mult"</Description>
<VariableType>Float</VariableType>
<Address>MultDataAddress</Address>
<Offsets>
<Offset>0</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>153</ID>
<Description>"Wind Mult"</Description>
<VariableType>Float</VariableType>
<Address>MultDataAddress</Address>
<Offsets>
<Offset>18</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>187</ID>
<Description>"Accuracy Mult"</Description>
<VariableType>Float</VariableType>
<Address>MultDataAddress</Address>
<Offsets>
<Offset>1C</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>188</ID>
<Description>"Current Aim"</Description>
<VariableType>Float</VariableType>
<Address>MultDataAddress</Address>
<Offsets>
<Offset>B4</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>193</ID>
<Description>"Ring Calc Info (Debug)"</Description>
<Options moHideChildren="1"/>
<LastState Value="" RealAddress="00000000"/>
<Color>FF00FF</Color>
<GroupHeader>1</GroupHeader>
<CheatEntries>
<CheatEntry>
<ID>194</ID>
<Description>"CurrentAim"</Description>
<VariableType>Float</VariableType>
<Address>CurrentAim</Address>
</CheatEntry>
<CheatEntry>
<ID>195</ID>
<Description>"MaxAim"</Description>
<VariableType>Float</VariableType>
<Address>MaxAim</Address>
</CheatEntry>
<CheatEntry>
<ID>196</ID>
<Description>"AimMult"</Description>
<VariableType>Float</VariableType>
<Address>AimMult</Address>
</CheatEntry>
<CheatEntry>
<ID>197</ID>
<Description>"WindBase"</Description>
<VariableType>Float</VariableType>
<Address>WindBase</Address>
</CheatEntry>
<CheatEntry>
<ID>198</ID>
<Description>"WindMult"</Description>
<VariableType>Float</VariableType>
<Address>WindMult</Address>
</CheatEntry>
</CheatEntries>
</CheatEntry>
</CheatEntries>
</CheatEntry>
<CheatEntry>
<ID>167</ID>
<Description>"Long Line"</Description>
<LastState Activated="1"/>
<Color>FF0000</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[enable]
alloc(LongLineCode, 128)
label(LongLineCode1)
label(LongLineCode2)
label(DontLongLine1)
label(DontLongLine2)
aobscan(LongLineOrig1, 8B 7C 1F 34 8B 4D EC 83 E9 2F 03 D6 89 BB ?? ?? ?? ?? 3B D1 0F 83 ?? ?? ?? ?? 6B 4D E8 48 8B 54 1A 2C 8B 7D EC 83 EF 2B 03 CE 89 93 ?? ?? ?? ?? 3B CF 0F 83 ?? ?? ?? ?? 6B 55 E8 48 8B 4C 19 28)
registersymbol(LongLineOrig1)
label(LongLineOrig1Return)
aobscan(LongLineOrig2, F3 0F 10 4C 1A 34 F3 0F 11 55 E0 F3 0F 11 A5 40 FE FF FF F3 ?? ?? ?? ?? FE FF FF ?? ?? ?? FF FF FF)
registersymbol(LongLineOrig2)
label(LongLineOrig2Return)
label(WantedLineLength)
registersymbol(WantedLineLength)
label(ClubDataAddress)
registersymbol(ClubDataAddress)
////
////
LongLineOrig1:
jmp LongLineCode1
nop
nop
LongLineOrig1Return:
////
LongLineOrig2:
jmp LongLineCode2
nop
LongLineOrig2Return:
////
LongLineCode:
db 90 90 90 90
////
LongLineCode1:
cmp [Master],(int)1
jne DontLongLine1
add edi,ebx
mov [ClubDataAddress],edi
sub edi,ebx
mov edi,[WantedLineLength]
mov ecx,[ebp-14]
jmp LongLineOrig1Return
DontLongLine1:
mov edi,[edi+ebx+34]
mov ecx,[ebp-14]
jmp LongLineOrig1Return
////
LongLineCode2:
cmp [Master],(int)1
jne DontLongLine2
add edx,ebx
mov [ClubDataAddress],edx
sub edx,ebx
movss xmm1,[WantedLineLength]
jmp LongLineOrig2Return
DontLongLine2:
movss xmm1,[edx+ebx+34]
jmp LongLineOrig2Return
////
WantedLineLength:
dd (float)10
ClubDataAddress:
dd (int)0
////
////
[disable]
dealloc(LongLineCode)
unregistersymbol(LongLineOrig1)
unregistersymbol(LongLineOrig2)
unregistersymbol(WantedLineLength)
unregistersymbol(ClubDataAddress)
LongLineOrig1:
//mov edi,[edi+ebx+34]
//mov ecx,[ebp-14]
db 8B 7C 1F 34 8B 4D EC
LongLineOrig2:
//movss xmm1,[edx+ebx+34]
db F3 0F 10 4C 1A 34
</AssemblerScript>
</CheatEntry>
<CheatEntry>
<ID>155</ID>
<Description>"Perfect Shot"</Description>
<LastState Activated="1"/>
<Color>FF0000</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[enable]
alloc(PerfectShotCode, 128)
label(DontPerfectShot)
aobscan(PerfectShotOrig, 89 96 ?? ?? ?? ?? 3B C1 0F 83 ?? ?? ?? ?? 8B 44 30 2C 89 86 ?? ?? ?? ?? FF 75 E8 33 DB 89 FE 8B 45 F4 8B 55 F0 8B 4D EC E8 ?? ?? ?? ?? 8B 75 F8 B8 ?? ?? ?? ?? E8 ?? ?? ?? ?? 89 EC 5D C3)
//aobscan(PerfectShotOrig, 89 96 ?? ?? ?? ?? 3B C1 0F 83)
registersymbol(PerfectShotOrig)
label(PerfectShotOrigReturn)
label(MultDataAddress)
registersymbol(MultDataAddress)
////
////
PerfectShotOrig:
jmp PerfectShotCode
nop
PerfectShotOrigReturn:
////
PerfectShotCode:
cmp [Master],(int)1
jne DontPerfectShot
mov [esi+0043BA88],(float)0
add esi,0043BA88
mov [MultDataAddress],esi
sub esi,0043BA88
jmp PerfectShotOrigReturn
DontPerfectShot:
mov [esi+0043BA88],edx
jmp PerfectShotOrigReturn
////
MultDataAddress:
db 00 00 00 00
////
[disable]
dealloc(PerfectShotCode)
unregistersymbol(PerfectShotOrig)
unregistersymbol(MultDataAddress)
PerfectShotOrig:
//mov [esi+004125B0],edx
db 89 96 B0 25 41 00
</AssemblerScript>
</CheatEntry>
<CheatEntry>
<ID>185</ID>
<Description>"Full Accuracy"</Description>
<LastState Activated="1"/>
<Color>FF0000</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[enable]
alloc(FullAcc, 128)
label(AccCode1)
label(DontAccCode1)
aobscan(AccOrig1, 8B 5C 13 08 6B 75 D8 34 8B BA ?? ?? ?? ?? 89 C8 83 E8 1B 03 F7 89 5D DC 6B 5D D8 34 3B F0 0F 83 ?? ?? ?? ?? 83 E9 1F 8D 04 1F F3 0F 10 4C 16 18 3B C1 0F 83 ?? ?? ?? ?? F3 0F 2A 55 DC F3 0F 10)
registersymbol(AccOrig1)
label(AccOrig1Return)
aobscan(AccOrig2, F3 0F 11 8B ?? ?? ?? ?? 8B B3 ?? ?? ?? ?? 6B 7D E8 48 89 55 EC 83 EA 37 03 FE 3B FA 0F 83 ?? ?? ?? ?? 6B 55 E8 48 ?? ?? ?? ?? ?? ?? ?? 83 E9 2F 03 D6 89 BB ?? ?? ?? ?? 3B D1 0F 83)
//aobscan(AccOrig2, F3 0F 11 8B CC 25 41 00 8B B3)
registersymbol(AccOrig2)
label(AccOrig2Return)
label(WantedAccValue)
registersymbol(WantedAccValue)
label(WantedAccMult)
registersymbol(WantedAccMult)
////
////
AccOrig1:
jmp AccCode1
nop
nop
nop
AccOrig1Return:
////
AccOrig2:
jmp AccCode2
nop
nop
nop
AccOrig2Return:
////
FullAcc:
db 90 90 90 90
////
AccCode1:
cmp [Master],(int)1
jne DontAccCode1
mov ebx,[WantedAccValue]
imul esi,[ebp-28],34
jmp AccOrig1Return
DontAccCode1:
mov ebx,[ebx+edx+08]
imul esi,[ebp-28],34
jmp AccOrig1Return
////
AccCode2:
cmp [Master],(int)1
jne DontAccCode2
push eax
mov eax,[WantedAccMult]
mov [ebx+0043BAA4]],eax
pop eax
jmp AccOrig2Return
DontAccCode2:
movss [ebx+0043BAA4]],xmm1
jmp AccOrig2Return
////
WantedAccValue:
dd (int)100
WantedAccMult:
dd (float)1
////
////
[disable]
dealloc(FullAcc)
unregistersymbol(AccOrig1)
unregistersymbol(AccOrig2)
unregistersymbol(WantedAccValue)
unregistersymbol(WantedAccMult)
AccOrig1:
//mov ebx,[ebx+edx+08]
//imul esi,[ebp-28],34
db 8B 5C 13 08 6B 75 D8 34
AccOrig2:
//movss [ebx+004125CC],xmm1
db F3 0F 11 8B CC 25 41 00
</AssemblerScript>
</CheatEntry>
<CheatEntry>
<ID>157</ID>
<Description>"No Wind (Only Golden Shot)"</Description>
<LastState/>
<Color>FF0000</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[enable]
alloc(NoWindCode, 128)
label(DontNoWind)
aobscan(NoWindOrig, F3 0F 11 8B ?? ?? ?? ?? F3 0F 11 8B ?? ?? ?? ?? 83 BB ??)
registersymbol(NoWindOrig)
label(NoWindOrigReturn)
////
////
NoWindOrig:
jmp NoWindCode
nop
nop
nop
NoWindOrigReturn:
////
NoWindCode:
cmp [Master],(int)1
jne DontNoWind
mov [ebx+00449060],(float)0
jmp NoWindOrigReturn
DontNoWind:
movss [ebx+00449060],xmm1
jmp NoWindOrigReturn
////
////
[disable]
dealloc(NoWindCode)
unregistersymbol(NoWindOrig)
NoWindOrig:
//movss [ebx+004125C8],xmm1
db F3 0F 11 8B C8 25 41 00
</AssemblerScript>
</CheatEntry>
<CheatEntry>
<ID>146</ID>
<Description>"Club Abilities"</Description>
<Options moHideChildren="1"/>
<LastState Activated="1"/>
<Color>FF0000</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[enable]
alloc(UnlockAbilities, 256)
label(UnlockAbility1)
label(UnlockAbility2)
label(UnlockAbility3)
label(DontUnlock1)
label(DontUnlock2)
label(DontUnlock3)
aobscan(Ability1Orig, C7 44 18 38 00 00 00 00 6B 45 E8 48 3B FA 0F 83 ?? ?? ?? ?? 8B 55 EC 83 EA 43 03 C6 C7 44 1F 3C 00 00 00 00 3B C2 0F 83 ?? ?? ?? ?? C7 44 18 40 00 00 00 00 8B 4D F8 8B 45 EC 89 DA 6B 5D E8 48 8B B2 ?? ?? ?? ?? 89 C7 83 EF 3F 03 DE 3B DF 0F 83)
registersymbol(Ability1Orig)
label(Ability1OrigReturn)
aobscan(Ability2Orig, C7 44 1F 3C 00 00 00 00 3B C2 0F 83 ?? ?? ?? ?? C7 44 18 40 00 00 00 00 8B 4D F8 8B 45 EC 89 DA 6B 5D E8 48 8B B2 ?? ?? ?? ?? 89 C7 83 EF 3F 03 DE 3B DF 0F 83 ?? ?? ?? ?? 8B 5C 13 3C 89 5D EC 83 FB 00 0F 8E ?? ?? ?? ?? 8B B2 ?? ?? ?? ?? 83 C6)
registersymbol(Ability2Orig)
label(Ability2OrigReturn)
aobscan(Ability3Orig, C7 44 18 40 00 00 00 00 8B 4D F8 8B 45 EC 89 DA 6B 5D E8 48 8B B2 ?? ?? ?? ?? 89 C7 83 EF 3F 03 DE 3B DF 0F 83 ?? ?? ?? ?? 8B 5C 13 3C 89 5D EC 83 FB 00 0F 8E ?? ?? ?? ?? 8B B2 ?? ?? ?? ?? 83 C6 06 3B DE 0F 8D ?? ?? ?? ?? 6B F3 1C 8B BA)
registersymbol(Ability3Orig)
label(Ability3OrigReturn)
label(SetAbillity1)
label(SetAbillity2)
label(SetAbillity3)
registersymbol(SetAbillity1)
registersymbol(SetAbillity2)
registersymbol(SetAbillity3)
////
////
Ability1Orig:
jmp UnlockAbility1
nop
nop
nop
Ability1OrigReturn:
////
Ability2Orig:
jmp UnlockAbility2
nop
nop
nop
Ability2OrigReturn:
////
Ability3Orig:
jmp UnlockAbility3
nop
nop
nop
Ability3OrigReturn:
////
////
UnlockAbilities:
db 90 90 90 90
//
UnlockAbility1:
cmp [Master],(int)1
jne DontUnlock1
push ecx
mov ecx,[SetAbillity1]
mov [eax+ebx+38],ecx
mov eax,[SetAbillity2]
mov [eax+ebx+3C],eax
mov ecx,[SetAbillity3]
mov [eax+ebx+40],ecx
pop ecx
jmp Ability1OrigReturn
DontUnlock1:
mov [eax+ebx+38],00000000
mov [eax+ebx+3C],00000000
mov [eax+ebx+40],00000000
jmp Ability1OrigReturn
//
UnlockAbility2:
cmp [Master],(int)1
jne DontUnlock2
push eax
mov ecx,[SetAbillity1]
mov [edi+ebx+38],ecx
mov eax,[SetAbillity2]
mov [edi+ebx+3C],eax
mov ecx,[SetAbillity3]
mov [edi+ebx+40],ecx
pop eax
jmp Ability2OrigReturn
DontUnlock2:
mov [edi+ebx+38],00000000
mov [edi+ebx+3C],00000000
mov [edi+ebx+40],00000000
jmp Ability2OrigReturn
//
UnlockAbility3:
cmp [Master],(int)1
jne DontUnlock3
push ecx
mov ecx,[SetAbillity1]
mov [eax+ebx+38],ecx
mov eax,[SetAbillity2]
mov [eax+ebx+3C],eax
mov ecx,[SetAbillity3]
mov [eax+ebx+40],ecx
pop ecx
jmp Ability3OrigReturn
DontUnlock3:
mov [eax+ebx+38],00000000
mov [eax+ebx+3C],00000000
mov [eax+ebx+40],00000000
jmp Ability3OrigReturn
////
////
SetAbillity1:
dd (int)0
SetAbillity2:
dd (int)0
SetAbillity3:
dd (int)27
////
////
[disable]
dealloc(UnlockAblilities)
unregistersymbol(Ability1Orig)
unregistersymbol(Ability2Orig)
unregistersymbol(Ability3Orig)
unregistersymbol(SetAbillity1)
unregistersymbol(SetAbillity2)
unregistersymbol(SetAbillity3)
Ability1Orig:
//mov [eax+ebx+38],00000000
db C7 44 18 38 00 00 00 00
Ability2Orig:
//mov [edi+ebx+3C],00000000
db C7 44 1F 3C 00 00 00 00
Ability3Orig:
//mov [eax+ebx+40],00000000
db C7 44 18 40 00 00 00 00
</AssemblerScript>
<CheatEntries>
<CheatEntry>
<ID>150</ID>
<Description>"Abillity 1 (No Effect?)"</Description>
<DropDownList ReadOnly="1" DescriptionOnly="1" DisplayValueAsItem="1">0: None
1: Sweetspot
2: Steady Swing
3: Rough and Ready
4: Bulldozer
5: Green Goo
6: Messiah
7: Rain Check
8: Wind Preview
9: Nerves of Steel
10: Smash it
11: Guide Pulse
12: High Roller
13: Lawnmower
14: Lumberjack
15: Fairway Spike
16: Wind Resistance 1
17: Sidespin 1
18: Power 1
19: Forgiveness 1
20: Overpower Dampening 1
21: Wind Resistance 2
22: Sidespin 2
23: Power 2
24: Forgiveness 2
25: Overpower Dampening 2
26: Wind Resistance 3
27: Sidespin 3
28: Power 3
29: Forgiveness 3
30: Overpower Dampening 3
31: Fore
32: Ball Guide Test
33: Power 4
34: Power 5
35: Wind Resistance 4
36: Wind Resistance 5
</DropDownList>
<VariableType>4 Bytes</VariableType>
<Address>SetAbillity1</Address>
</CheatEntry>
<CheatEntry>
<ID>151</ID>
<Description>"Abillity 2"</Description>
<DropDownList ReadOnly="1" DescriptionOnly="1" DisplayValueAsItem="1">0: None
1: Sweetspot
2: Steady Swing
3: Rough and Ready
4: Bulldozer
5: Green Goo
6: Messiah
7: Rain Check
8: Wind Preview
9: Nerves of Steel
10: Smash it
11: Guide Pulse
12: High Roller
13: Lawnmower
14: Lumberjack
15: Fairway Spike
16: Wind Resistance 1
17: Sidespin 1
18: Power 1
19: Forgiveness 1
20: Overpower Dampening 1
21: Wind Resistance 2
22: Sidespin 2
23: Power 2
24: Forgiveness 2
25: Overpower Dampening 2
26: Wind Resistance 3
27: Sidespin 3
28: Power 3
29: Forgiveness 3
30: Overpower Dampening 3
31: Fore
32: Ball Guide Test
33: Power 4
34: Power 5
35: Wind Resistance 4
36: Wind Resistance 5
</DropDownList>
<VariableType>4 Bytes</VariableType>
<Address>SetAbillity2</Address>
</CheatEntry>
<CheatEntry>
<ID>152</ID>
<Description>"Abillity 3"</Description>
<DropDownList ReadOnly="1" DescriptionOnly="1" DisplayValueAsItem="1">0: None
1: Sweetspot
2: Steady Swing
3: Rough and Ready
4: Bulldozer
5: Green Goo
6: Messiah
7: Rain Check
8: Wind Preview
9: Nerves of Steel
10: Smash it
11: Guide Pulse
12: High Roller
13: Lawnmower
14: Lumberjack
15: Fairway Spike
16: Wind Resistance 1
17: Sidespin 1
18: Power 1
19: Forgiveness 1
20: Overpower Dampening 1
21: Wind Resistance 2
22: Sidespin 2
23: Power 2
24: Forgiveness 2
25: Overpower Dampening 2
26: Wind Resistance 3
27: Sidespin 3
28: Power 3
29: Forgiveness 3
30: Overpower Dampening 3
31: Fore
32: Ball Guide Test
33: Power 4
34: Power 5
35: Wind Resistance 4
36: Wind Resistance 5
</DropDownList>
<VariableType>4 Bytes</VariableType>
<Address>SetAbillity3</Address>
</CheatEntry>
</CheatEntries>
</CheatEntry>
<CheatEntry>
<ID>165</ID>
<Description>"Ball Changer"</Description>
<Options moHideChildren="1"/>
<LastState Activated="1"/>
<Color>FF0000</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[enable]
alloc(BallChangerCode, 128)
label(DontBallChanger)
aobscan(BallChangerOrig, 8B 14 18 B8 03 00 00 00 89 CE E8 ?? ?? ?? ?? 8B 4D F4 8B 41 04 83 E8 03 8B 5D EC 8D 93 ?? ?? 00 00 8B 31 3B D0 0F 83 ?? ?? ?? ?? 8B 14 32 B8 05 00 00 00 89 CE ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??)
registersymbol(BallChangerOrig)
label(BallChangerOrigReturn)
label(WantedBall)
registersymbol(WantedBall)
////
////
BallChangerOrig:
jmp BallChangerCode
nop
nop
nop
BallChangerOrigReturn:
////
BallChangerCode:
cmp [Master],(int)1
jne DontBallChanger
push ecx
mov ecx,[WantedBall]
mov [eax+ebx],ecx
pop ecx
mov edx,[eax+ebx]
mov eax,00000003
jmp BallChangerOrigReturn
DontBallChanger:
mov edx,[eax+ebx]
mov eax,00000003
jmp BallChangerOrigReturn
////
WantedBall:
dd (int)17
////
////
[disable]
unregistersymbol(BallChangerOrig)
unregistersymbol(WantedBall)
BallChangerOrig:
//mov edx,[eax+ebx]
//mov eax,00000003
db 8B 14 18 B8 03 00 00 00
</AssemblerScript>
<CheatEntries>
<CheatEntry>
<ID>166</ID>
<Description>"Wanted Ball"</Description>
<DropDownList ReadOnly="1" DescriptionOnly="1" DisplayValueAsItem="1">43:Best/Max Wind (Bauble)
34:Max Power (Berserker)
40:Best Power (Skull)
17:Standard
23:Easter Egg
24:Marlin
26:Navigator
27:Quasar
28:Katana
29:Titan
30:Kingmaker
31:Eagle
33:Gold
34:Berserker
35:Mechanic
36:Football
37:Pumpkin
38:Eyeball
39:Mummy
40:Skull
41:Turkey
42:Snowglobe
43:Bauble
44:Snowman
45:Santa
46:Snowglobe 2
47:Movie Ball
48:Pot 'O Gold
49:KingMaker(?)
50:KingMaker(?)
51:KingMaker(?)
53:Bunny
54:Earth
55:Bandera Ball
56:Royal Ball
57:Turbo Ball
58:Striker Ball
59:Roulette Ball
60:NEW BALL
61:NEW BALL
</DropDownList>
<VariableType>4 Bytes</VariableType>
<Address>WantedBall</Address>
</CheatEntry>
</CheatEntries>
</CheatEntry>
<CheatEntry>
<ID>190</ID>
<Description>"Wind Ring Calc"</Description>
<Options moHideChildren="1"/>
<LastState Activated="1"/>
<Color>FF0000</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[enable]
alloc(WindCalc,512)
aobscan(SetAimDistOrig, F3 0F 11 1C 3A 50 B8 ?? ?? ?? ?? 66 0F 6E E8 58 0F 2E EA 0F 97 C3 0F B6 DB 83 FB 00 0F 84 ?? ?? ?? ?? F3 0F 10 5D E0 83 FB 00 0F 84 ?? ?? ?? ?? 50 B8 ?? ?? ?? ?? 66 0F 6E C8 58 8B 5D CC 83 C3)
registersymbol(SetAimDistOrig)
label(SetAimDistOrigReturn)
aobscan(SetWindBaseOrig, F3 0F 11 88 ?? ?? ?? ?? B8 ?? ?? ?? ?? E8 ?? ?? ?? ?? 8B 4D F8 B8 ?? ?? ?? ?? 89 08 89 EC 5D C3)
registersymbol(SetWindBaseOrig)
label(SetWindBaseOrigReturn)
label(StoreWindBase)
label(BadPtr)
label(Storage0)
label(Storage1)
label(CurrentAim)
label(MaxAim)
label(AimMult)
label(WindBase)
label(WindMult)
label(RealWind)
label(WindRings)
label(WindBaseAddress)
registersymbol(CurrentAim)
registersymbol(MaxAim)
registersymbol(AimMult)
registersymbol(WindBase)
registersymbol(WindMult)
registersymbol(RealWind)
registersymbol(WindRings)
registersymbol(WindBaseAddress)
////
SetAimDistOrig:
jmp WindCalc
SetAimDistOrigReturn:
////
SetWindBaseOrig:
jmp StoreWindBase
nop
nop
nop
SetWindBaseOrigReturn:
/////
WindCalc:
movss [edx+edi],xmm3
cmp [Master],(int)1
jne SetAimDistOrigReturn
// Store Registers
push eax
push ebx
// Get Data
mov ebx,[MultDataAddress]
cmp ebx,00000000
je BadPtr
mov eax,[ebx+18]
mov [WindMult],eax
mov eax,[ebx+B4]
mov [CurrentAim],eax
mov ebx,[ClubDataAddress]
cmp ebx,00000000
je BadPtr
mov eax,[ebx+14]
mov [MaxAim],eax
mov ebx,[WindBaseAddress]
cmp ebx,00000000
je BadPtr
mov eax,[ebx]
mov [WindBase],eax
BadPtr:
// Restore Registers
pop ebx
pop eax
// Store xmm Registers
movss [Storage0],xmm0
movss [Storage1],xmm1
// Calc AimMult
movss xmm0,[CurrentAim]
movss xmm1,[MaxAim]
divss xmm0,xmm1
movss [AimMult],xmm0
// Calc RealWind
movss xmm0,[WindBase]
movss xmm1,[WindMult]
mulss xmm0,xmm1
movss [RealWind],xmm0
// Calc WindRings
movss xmm0,[AimMult]
movss xmm1,[RealWind]
mulss xmm0,xmm1
movss [WindRings],xmm0
// Restore xmm Registers
movss xmm1,[Storage1]
movss xmm0,[Storage0]
jmp SetAimDistOrigReturn
////
StoreWindBase:
movss [eax+003B1850],xmm1
add eax,003B1850
mov [WindBaseAddress],eax
sub eax,003B1850
jmp SetWindBaseOrigReturn
////
CurrentAim:
dd 00000000
MaxAim:
dd 00000000
AimMult:
dd 00000000
WindBase:
dd 00000000
WindMult:
dd 00000000
RealWind:
dd 00000000
WindRings:
dd 00000000
WindBaseAddress:
dd 00000000
Storage0:
dd 00000000
Storage1:
dd 00000000
////
[disable]
dealloc(WindCalc)
unregistersymbol(SetAimDistOrig)
unregistersymbol(SetWindBaseOrig)
unregistersymbol(CurrentAim)
unregistersymbol(MaxAim)
unregistersymbol(AimMult)
unregistersymbol(WindBase)
unregistersymbol(WindMult)
unregistersymbol(RealWind)
unregistersymbol(WindRings)
unregistersymbol(WindBaseAddress)
SetAimDistOrig:
// movss [edx+edi],xmm3
db F3 0F 11 1C 3A
SetWindBaseOrig:
//movss [eax+00388378],xmm1
db F3 0F 11 88 78 83 38 00
</AssemblerScript>
<CheatEntries>
<CheatEntry>
<ID>191</ID>
<Description>"WindRings"</Description>
<Color>0000FF</Color>
<VariableType>Float</VariableType>
<Address>WindRings</Address>
</CheatEntry>
<CheatEntry>
<ID>192</ID>
<Description>"RealWind"</Description>
<VariableType>Float</VariableType>
<Address>RealWind</Address>
</CheatEntry>
</CheatEntries>
</CheatEntry>
</CheatEntries>
</CheatEntry>
</CheatEntries>
<UserdefinedSymbols/>
</CheatTable>
Enjoy






