This Grand Life 2

Upload your cheat tables here (No requests)
Post Reply
User avatar
Tahtawy
Expert Cheater
Expert Cheater
Posts: 136
Joined: Fri Mar 03, 2017 7:36 pm
Reputation: 94

This Grand Life 2

Post by Tahtawy »

A quick table for This Grand Life 2 Early Access v.0.44.19:


Options
- Income Multiplier (Default is x100)
- Full Needs (Needs will remain maxed as soon as they decrease) (will raise happiness quickly)
- Time Pointer (Elapsed time in hours in a month) (reset to zero to go back to 728 hours remaining)


How to use this cheat table?
  1. Install Cheat Engine
  2. Double-click the .CT file in order to open it.
  3. Click the PC icon in Cheat Engine in order to select the game process.
  4. Keep the list.
  5. Activate the trainer options by checking boxes or setting values from 0 to 1
Attachments
TGL2 Table.CT
v.0.44.19
(13.4 KiB) Downloaded 527 times

LegendZero88
Expert Cheater
Expert Cheater
Posts: 88
Joined: Wed Apr 19, 2017 8:23 am
Reputation: 13

Re: This Grand Life 2

Post by LegendZero88 »

Hello and thank you for the table.
Could I know how to search value for this game?
I tried searching for preference point and don't find a single value.
I also searched stock market share price but nada de nada.

What I do wrong?

User avatar
Tahtawy
Expert Cheater
Expert Cheater
Posts: 136
Joined: Fri Mar 03, 2017 7:36 pm
Reputation: 94

Re: This Grand Life 2

Post by Tahtawy »

If you'd like to get more preference points at the start of the game, I recommend editing the game xml files.

Go to "data/misc/defaultData.xml" within the game folder and search for

Code: Select all

preferencePointOffset="0"
change it to any number you want to get extra preference points at character creation.

Have not figured out how to change stock market price share but it does not matter, I can just earn a lot of money with the multiplier and purchase the %20 shares as I'd like. However, if you'd like to adjust the amount of dividends you get from your stocks each year you can go to "data/misc/tagStocks.xml" in the game folder and edit the "dividendRatio" of each industry

LegendZero88
Expert Cheater
Expert Cheater
Posts: 88
Joined: Wed Apr 19, 2017 8:23 am
Reputation: 13

Re: This Grand Life 2

Post by LegendZero88 »

Thank you mate! buit i was curious on how to search for those values in cheat engine just for understand! thanks you

Zoratoune
What is cheating?
What is cheating?
Posts: 4
Joined: Sat Jun 10, 2023 12:52 pm
Reputation: 0

Re: This Grand Life 2

Post by Zoratoune »

How do you repair the full need script ?
In a new version of the game it says



Ok so I compared the before and after and fixed the aob value and this seems to work I'm proud of myself I was never able to update this kind of thing before !
Patch note :
Fixed the full needs script by putting in the correct aob
F3 0F 11 00 FF 75 08 E8 0C -> F3 0F 11 00 FF 75 08 E8 02

This is the updated version of the script

Code: Select all

{ Game   : TGL2.exe
  Version: 
  Date   : 2024-06-28
  Author : Tahtawy

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(Ndds,TGL2.exe,F3 0F 11 00 FF 75 08 E8 02) // should be unique
alloc(newmem,$1000)

label(code)
label(return)

newmem:
  movss [eax],xmm0
  mov [eax],(float)2000.00
  push [ebp+08]
  jmp return

code:
  movss [eax],xmm0
  push [ebp+08]
  jmp return

Ndds:
  jmp newmem
  nop 2
return:
registersymbol(Ndds)

[DISABLE]

Ndds:
  db F3 0F 11 00 FF 75 08

unregistersymbol(Ndds)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+508

TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+4E4: E8 C7 20 D8 FF  - call TGL2.cocos2d::__Double::clone+4AA0
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+4E9: 8B CE           - mov ecx,esi
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+4EB: F3 0F 10 00     - movss xmm0,[eax]
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+4EF: 8D 45 08        - lea eax,[ebp+08]
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+4F2: 50              - push eax
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+4F3: F3 0F 11 45 E4  - movss [ebp-1C],xmm0
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+4F8: E8 B3 20 D8 FF  - call TGL2.cocos2d::__Double::clone+4AA0
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+4FD: 8B CF           - mov ecx,edi
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+4FF: F3 0F 10 00     - movss xmm0,[eax]
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+503: F3 0F 58 45 10  - addss xmm0,[ebp+10]
// ---------- INJECTING HERE ----------
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+508: F3 0F 11 00     - movss [eax],xmm0
// ---------- DONE INJECTING  ----------
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+50C: FF 75 08        - push [ebp+08]
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+50F: E8 0C 03 00 00  - call "TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data"+820
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+514: F3 0F 2C C0     - cvttss2si eax,xmm0
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+518: 0F 57 D2        - xorps xmm2,xmm2
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+51B: 89 45 10        - mov [ebp+10],eax
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+51E: 66 0F 6E C0     - movd xmm0,eax
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+522: 0F 5B C0        - cvtdq2ps xmm0,xmm0
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+525: 0F 2F D0        - comiss xmm2,xmm0
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+528: 72 34           - jb "TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data"+55E
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+52A: 83 EC 18        - sub esp,18
}
To compare this is the old :

Code: Select all

{ Game   : TGL2.exe
  Version: 
  Date   : 2024-06-28
  Author : Tahtawy

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(Ndds,TGL2.exe,F3 0F 11 00 FF 75 08 E8 0C) // should be unique
alloc(newmem,$1000)

label(code)
label(return)

newmem:
  movss [eax],xmm0
  mov [eax],(float)2000.00
  push [ebp+08]
  jmp return

code:
  movss [eax],xmm0
  push [ebp+08]
  jmp return

Ndds:
  jmp newmem
  nop 2
return:
registersymbol(Ndds)

[DISABLE]

Ndds:
  db F3 0F 11 00 FF 75 08

unregistersymbol(Ndds)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+508

TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+4E4: E8 C7 20 D8 FF  - call TGL2.cocos2d::__Double::clone+4AA0
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+4E9: 8B CE           - mov ecx,esi
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+4EB: F3 0F 10 00     - movss xmm0,[eax]
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+4EF: 8D 45 08        - lea eax,[ebp+08]
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+4F2: 50              - push eax
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+4F3: F3 0F 11 45 E4  - movss [ebp-1C],xmm0
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+4F8: E8 B3 20 D8 FF  - call TGL2.cocos2d::__Double::clone+4AA0
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+4FD: 8B CF           - mov ecx,edi
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+4FF: F3 0F 10 00     - movss xmm0,[eax]
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+503: F3 0F 58 45 10  - addss xmm0,[ebp+10]
// ---------- INJECTING HERE ----------
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+508: F3 0F 11 00     - movss [eax],xmm0
// ---------- DONE INJECTING  ----------
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+50C: FF 75 08        - push [ebp+08]
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+50F: E8 0C 03 00 00  - call "TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data"+820
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+514: F3 0F 2C C0     - cvttss2si eax,xmm0
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+518: 0F 57 D2        - xorps xmm2,xmm2
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+51B: 89 45 10        - mov [ebp+10],eax
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+51E: 66 0F 6E C0     - movd xmm0,eax
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+522: 0F 5B C0        - cvtdq2ps xmm0,xmm0
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+525: 0F 2F D0        - comiss xmm2,xmm0
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+528: 72 34           - jb "TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data"+55E
TGL2.boost::archive::detail::iserializer<boost::archive::text_iarchive,Pathfinder>::load_object_data+52A: 83 EC 18        - sub esp,18
}
Attachments
TGL2 Table updated to 0.48.14.CT
(13.4 KiB) Downloaded 71 times

Zoratoune
What is cheating?
What is cheating?
Posts: 4
Joined: Sat Jun 10, 2023 12:52 pm
Reputation: 0

Re: This Grand Life 2

Post by Zoratoune »

I've managed to make work the experience gain and applied a multiplier which you can choose
It does it all from what I've tested, even though I was expecting for it to be only for work experience.

Zoratoune
What is cheating?
What is cheating?
Posts: 4
Joined: Sat Jun 10, 2023 12:52 pm
Reputation: 0

Re: This Grand Life 2

Post by Zoratoune »

Update: I've fixed the experience multiplier not working anymore
Attachments
TGL2 0.49.16.CT
(19.04 KiB) Downloaded 196 times

sundrops
Noobzor
Noobzor
Posts: 11
Joined: Thu Mar 07, 2024 5:28 am
Reputation: 0

Re: This Grand Life 2

Post by sundrops »

income multiplier is not working

Post Reply

Who is online

Users browsing this forum: anarchyangel, Darkedone02, Google Adsense [Bot], Nerroth, snailsmog