Rabi-Ribi Ironbun mod
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Ironbun/Ironbun.CT

130 lines
5.3 KiB

<?xml version="1.0" encoding="utf-8"?>
<CheatTable CheatEngineTableVersion="45">
<CheatEntries>
<CheatEntry>
<ID>0</ID>
<Description>"No description"</Description>
<LastState Value="118" RealAddress="19F8BDE8"/>
<ShowAsSigned>0</ShowAsSigned>
<VariableType>4 Bytes</VariableType>
<Address>rabiribi.exe+01682364</Address>
<Offsets>
<Offset>4F0</Offset>
</Offsets>
</CheatEntry>
<CheatEntry>
<ID>1</ID>
<Description>"No description"</Description>
<LastState Value="0" RealAddress="021B7CE8"/>
<ShowAsSigned>0</ShowAsSigned>
<VariableType>4 Bytes</VariableType>
<Address>rabiribi.exe+0x1637CE8</Address>
</CheatEntry>
</CheatEntries>
<UserdefinedSymbols/>
<LuaScript>erinaCostume = readInteger("rabiribi.exe+167CFB4")
ribbonCostume = readInteger("rabiribi.exe+167CFB8")
print("Started Bun")
writeInteger("rabiribi.exe+167CFB4",5*65536)
writeInteger("rabiribi.exe+167CFB8",6)
maxHealthPointer=readPointer("rabiribi.exe+01682364")+0x4F0
healthPointer=readPointer("rabiribi.exe+01682364")+0x4E0
currentHealth=50
currentMaxHealth=50
currentDonutCount=0
currentCakeCount=0
characterData={1,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,1,1,1}
townMember={false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false}
characterStartAddr=0x1637CCC
waitForReset=false
confirmTimes=10
skipItemCheck=false
os.remove("C:\\Program Files (x86)\\Steam\\steamapps\\common\\Rabi-Ribi\\custom\\Ironbun\\save\\save0.sav")
function update(timer)
consumedItem=false
skipItemCheck=false
for i, char in ipairs(characterData) do
if (townMember[i]==false and readInteger("rabiribi.exe+"..string.format("%x",characterStartAddr+4*i))==1) then
townMember[i]=true
if (characterData[i]==1) then
print("Add Cake")
currentCakeCount=currentCakeCount+1
writeInteger("rabiribi.exe+167303C",currentCakeCount)
skipItemCheck=true
else
currentDonutCount=currentDonutCount+1
print("Add Donut")
writeInteger("rabiribi.exe+1673038",currentDonutCount)
skipItemCheck=true
end
end
end
if (currentDonutCount-readInteger("rabiribi.exe+1673038")==1 and skipItemCheck==false) then
currentDonutCount=readInteger("rabiribi.exe+1673038")
consumedItem=true
if (math.floor(currentHealth+currentMaxHealth*0.2)&lt;currentMaxHealth) then
currentHealth=math.floor(currentHealth+currentMaxHealth*0.2)
else
currentHealth=currentMaxHealth
end
end
if (currentCakeCount-readInteger("rabiribi.exe+167303C")==1 and skipItemCheck==false) then
currentCakeCount=readInteger("rabiribi.exe+167303C")
consumedItem=true
if (math.floor(currentHealth+currentMaxHealth*0.7)&lt;currentMaxHealth) then
currentHealth=math.floor(currentHealth+currentMaxHealth*0.7)
else
currentHealth=currentMaxHealth
end
end
if (readInteger(maxHealthPointer)==50 and waitForReset==false) then
if (confirmTimes&gt;0) then
confirmTimes=confirmTimes-1
else
currentHealth=50
currentMaxHealth=50
currentDonutCount=0
currentCakeCount=0
waitForReset=true
print("RESET")
os.remove("C:\\Program Files (x86)\\Steam\\steamapps\\common\\Rabi-Ribi\\custom\\Ironbun\\save\\save0.sav")
townMember={false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false}
end
return
else
confirmTimes=10
if (readInteger(healthPointer)==0 and waitForReset==true) then
print("Ded")
os.remove("C:\\Program Files (x86)\\Steam\\steamapps\\common\\Rabi-Ribi\\custom\\Ironbun\\save\\save0.sav")
waitForReset=false
end
if (readInteger(healthPointer)&lt;currentHealth and (readInteger(healthPointer)~=50) and (consumedItem==false)) then
currentHealth=readInteger(healthPointer)
end
if (readInteger(maxHealthPointer)&gt;currentMaxHealth) then
print("Max Health increased: "..tostring(currentMaxHealth).."&gt;"..tostring(readInteger(maxHealthPointer)))
currentHealth=currentHealth+readInteger(maxHealthPointer)-currentMaxHealth
currentMaxHealth=readInteger(maxHealthPointer)
print("Current Health: "..tostring(currentHealth).." / Max: "..tostring(currentMaxHealth))
end
writeInteger("rabiribi.exe+1673038",currentDonutCount)
writeInteger("rabiribi.exe+167303C",currentCakeCount)
writeInteger(healthPointer,currentHealth)
end
writeInteger("rabiribi.exe+16751C4",0)
end
healthSetTimer=createTimer(getMainForm())
healthSetTimer.setInterval(100)
healthSetTimer.setOnTimer(update)
healthSetTimer.setEnabled(true)
</LuaScript>
</CheatTable>