Here's a script for future usage in case there's any problem getting names, that dumps the name of everything in the game. Do have in mind that it'll be a text file with 30k lines and you won't know what a few IDs are. But for clothes, images, items and a few other things, you shouldn't have any problem. Just search for a random item or clothing name, and you'll get to the rest:Reall wrote: ↑Thu Oct 07, 2021 4:23 amI've been taking a look at the data folder, where you can find items, poses, images, clothes and almost everything in the game, but it looks like something has changed, the characters are now unreadable (Characters like û,þ,ÿ), for that matter, just for me changed? If not, do any of you know a mechanism that I can read again?
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
<CheatEntries>
<CheatEntry>
<ID>2609</ID>
<Description>"Booty Calls Name Dumper"</Description>
<LastState/>
<Color>FF8000</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
{$lua}
if syntaxcheck then return end
if process and readInteger(process) ~= 0 then mono_initialize() LaunchMonoDataCollector() end
local extraDebug = false
local GCD = mono_class_findInstancesOfClassListOnly(mono_enumDomains()[1],mono_findClass('','GameContentData'))[1]
local cGDCData = 0
function getContents(p,l)
for z = 0,l*4-4,4 do
local cData = readInteger(readInteger(p) + 0x10 + z)
local cKey = readString(readInteger(cData + 0x8) + 0x0C,1000,true)
if z == l*4-4 then
DumpFile:write(' ' .. cKey,"\n\n")
else
DumpFile:write(' ' .. cKey,"\n")
end
--print(readString(readInteger(cData + 0x8) + 0x0C,500,true))
end end
local offsetTable = mono_class_enumFields(mono_findClass('','GameContentData'))
DumpFile = io.open(getCheatEngineDir() .. 'BootyCallsDump.txt', "w+")
for i = 1,#offsetTable do
if (offsetTable[i].isStatic) == false then
if string.match((offsetTable[i].name), "DataDict") then break end
--print(offsetTable[i].name)
local gp = GCD + offsetTable[i].offset
local p = readPointer(gp) + 0x08
local l = readInteger(p + 0x04)
if l ~= 0 then
local cGDCData = i
if cGDCData == i then DumpFile:write(string.format('[' .. offsetTable[i].name .. ']\n')) end
getContents(p,l)
end end end
DumpFile:close()
shellExecute(getCheatEngineDir():gsub("%\\", "\\\\") .. 'BootyCallsDump.txt')
[DISABLE]
</AssemblerScript>
</CheatEntry>
</CheatEntries>
</CheatTable>
The text file with the dumped names will open automatically.
P.S.: If I see that it's too confusing this way, I might make it so each part of it goes in a different text file, in the future. Like, have a file for items, file for clothes, file for girls, etc.
How to use this cheat table?
- Install Cheat Engine
- Double-click the .CT file in order to open it.
- Click the PC icon in Cheat Engine in order to select the game process.
- Keep the list.
- Activate the trainer options by checking boxes or setting values from 0 to 1