Page 2 of 2 FirstFirst 12
Results 16 to 24 of 24
  1. #16
    qwerty1234test's Avatar
    Join Date
    May 2019
    Gender
    male
    Posts
    1
    Reputation
    10
    Thanks
    0
    If you have ******* id love to add you,Mine is MrDoom#8564

  2. #17
    hax4lifebb's Avatar
    Join Date
    Mar 2018
    Gender
    male
    Posts
    19
    Reputation
    10
    Thanks
    65

    Here a working version...

    Sorry, i forget to add the trove.exe as process name so here the ct table:


    (Save it as ct)

    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <CheatTable CheatEngineTableVersion="28">
      <Forms>
        <CETrainer Class="TTrainerForm" Encoding="Ascii85">(6mxN,cp%1X)[h.)wQKeAe,GGqDZrv^7$lqENfyT=#QqhG_i5duE*g4qC=R$NuD9-Tl6+Z0s+?1YxEIHOB!1mGXb:TyD{,{m+,c2+Ot2n2.uR])M@mwp)+ea#ut_7m$Mrqm/fH-=hJsQ(4vDFOUG:fTdnr+G!{FHWy_o$Qc#w5,L+HoxalPnQn6X=6!XpMAoUWKfnnz#??8}yj#*/6C5)e53nLDYdU6YJ/Y3PamkAYeVuk,LpSU:f/eIc*U6O[hMOqsnQ+IlR6cXEiizn^bJ?rS$CiIO;%eI?*v)*I2WWCPr!38A4R2pDd)}A,i1P+a:HCTz-*$ajoOB0i6z,;QA3t3WDZzTjv9k(.{!M!(a2d9NFtrVu,(Hc=vf3;6)W_E{G/kp4ht@@C_C$P50yHmCjxwFzu![KFLvzyaV.mUA9(Y)T}(3*z9(),?-hG?Iz7Cc5MIEZL(p^l;$z._*Q-/8@5^VTd(?4L@+SF{}G/.RW46cT3..Me^iBe!;To[%H8VSb!ls^du/O:rNwIec],gv.t4OBgrNw(Jb6A9_DF7!QNfO4)Rl[TILvKbt]$u9d9;=2UrZuLk[O9]NES.A6v0qdDW5W0LbCVx-Er:$cK(mF{r#,;r=Z5uH4jBc)[8%Sir4hPPgODmPjfK8R;dVOUYphZ$KV!t!G)E[0D[X:BGqR{0]Y;K-_L$RbV*b/T-w,E38MbOCm.G_AiTu)B$?@3HN2K]*4a+gPzU?=LRvJ4z/9(B8gmEQ)n6fMjbKJ?(zL/X9=;(Zly64fUZC*!jvHHAj6_L.dMWfA:jXANK/LND2FH7glQy]:_yhiOAk?A1iUQU0l66=(Es4!(LtIkZg_,?*H%T^u%Ak-e@wyq*yw1ebYWw)+C8OZ8xWVTBE)Q;DysCqbZexK8w%x!}IOj^YAmuY0mwu#)lTa!v6#EV/q]N3UZ?4]EiZ;cDMwHyZ7.(X5AU)nfP?t$j[C=_0/Bp:E%:$$Ok2I2oX!.^ouY).%?#hRB*}4xG)D8VB3WG52rPX7Z2r2mj1H;+KUscK$-3dTX8Y{VY}=a2L</CETrainer>
      </Forms>
      <CheatEntries>
        <CheatEntry>
          <ID>0</ID>
          <Description>"Xray"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]
    aobscanmodule(INJECT,trove.exe, B8 03 02 00 00 c3)
    label(return)
    INJECT:
      db B8 07 02 00 00
    return:
    registersymbol(INJECT)
    [DISABLE]
    INJECT:
      db B8 03 02 00 00
    unregistersymbol(INJECT)
    </AssemblerScript>
          <Hotkeys>
            <Hotkey>
              <Action>Activate</Action>
              <Keys>
                <Key>97</Key>
              </Keys>
              <Description>Activate Xray</Description>
              <ID>0</ID>
            </Hotkey>
            <Hotkey>
              <Action>Deactivate</Action>
              <Keys>
                <Key>98</Key>
              </Keys>
              <Description>Deactivate Xray</Description>
              <ID>1</ID>
            </Hotkey>
          </Hotkeys>
        </CheatEntry>
        <CheatEntry>
          <ID>1</ID>
          <Description>"Dodge"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]
    
    aobscanmodule(DODGE,trove.exe,DF F1 DD D8 73 12 56) // should be unique
    alloc(newmem,$1000)
    
    label(code)
    label(return)
    
    newmem:
    
    code:
    fcomip st(0),st(1)
    fstp st(0)
    jae trove.exe+56E4C9
    jmp return
    
    DODGE:
    fcomip st(0),st(0)
    return:
    registersymbol(DODGE)
    
    [DISABLE]
    
    DODGE:
    db DF F1 DD D8 73 12
    
    unregistersymbol(DODGE)
    dealloc(newmem)
    
    {
    // ORIGINAL CODE - INJECTION POINT: "trove.exe"+56E4B1
    
    "trove.exe"+56E494: DD 5A 18 - fstp qword ptr [edx+18]
    "trove.exe"+56E497: 52 - push edx
    "trove.exe"+56E498: 8B 01 - mov eax,[ecx]
    "trove.exe"+56E49A: FF 50 04 - call dword ptr [eax+04]
    "trove.exe"+56E49D: D9 EE - fldz
    "trove.exe"+56E49F: DD 83 E0 00 00 00 - fld qword ptr [ebx+000000E0]
    "trove.exe"+56E4A5: DF F1 - fcomip st(0),st(1)
    "trove.exe"+56E4A7: 76 1E - jna trove.exe+56E4C7
    "trove.exe"+56E4A9: DD 83 E0 00 00 00 - fld qword ptr [ebx+000000E0]
    "trove.exe"+56E4AF: D9 C9 - fxch st(1)
    // ---------- INJECTING HERE ----------
    "trove.exe"+56E4B1: DF F1 - fcomip st(0),st(1)
    "trove.exe"+56E4B3: DD D8 - fstp st(0)
    "trove.exe"+56E4B5: 73 12 - jae trove.exe+56E4C9
    // ---------- DONE INJECTING ----------
    "trove.exe"+56E4B7: 56 - push esi
    "trove.exe"+56E4B8: E8 C3 58 F7 FF - call trove.exe+4E3D80
    "trove.exe"+56E4BD: 83 C4 04 - add esp,04
    "trove.exe"+56E4C0: 8B F0 - mov esi,eax
    "trove.exe"+56E4C2: E9 F3 00 00 00 - jmp trove.exe+56E5BA
    "trove.exe"+56E4C7: DD D8 - fstp st(0)
    "trove.exe"+56E4C9: 8B CF - mov ecx,edi
    "trove.exe"+56E4CB: E8 F0 24 0F 00 - call trove.exe+6609C0
    "trove.exe"+56E4D0: 84 C0 - test al,al
    "trove.exe"+56E4D2: 0F 84 8E 00 00 00 - je trove.exe+56E566
    }
    </AssemblerScript>
          <Hotkeys>
            <Hotkey>
              <Action>Activate</Action>
              <Keys>
                <Key>101</Key>
              </Keys>
              <Description>Activate Infinite Dodge</Description>
              <ID>0</ID>
            </Hotkey>
            <Hotkey>
              <Action>Deactivate</Action>
              <Keys>
                <Key>102</Key>
              </Keys>
              <Description>Deactivate Infinite Dodge</Description>
              <ID>1</ID>
            </Hotkey>
          </Hotkeys>
        </CheatEntry>
        <CheatEntry>
          <ID>8</ID>
          <Description>"Speed"</Description>
          <Options moHideChildren="1" moActivateChildrenAsWell="1" moDeactivateChildrenAsWell="1"/>
          <LastState Value="" RealAddress="00000000"/>
          <GroupHeader>1</GroupHeader>
          <Hotkeys>
            <Hotkey>
              <Action>Toggle Activation</Action>
              <Keys>
                <Key>103</Key>
              </Keys>
              <Description>Speed (This first)</Description>
              <ID>0</ID>
            </Hotkey>
          </Hotkeys>
          <CheatEntries>
            <CheatEntry>
              <ID>2</ID>
              <Description>"Speed"</Description>
              <LastState Value="12" RealAddress="3CE406CE"/>
              <VariableType>Byte</VariableType>
              <Address>"trove.exe"+00ECEEF0</Address>
              <Offsets>
                <Offset>F2</Offset>
                <Offset>10</Offset>
                <Offset>24</Offset>
                <Offset>8</Offset>
                <Offset>68</Offset>
                <Offset>90</Offset>
                <Offset>190</Offset>
                <Offset>58</Offset>
              </Offsets>
              <Hotkeys>
                <Hotkey>
                  <Action>Set Value</Action>
                  <Keys>
                    <Key>104</Key>
                  </Keys>
                  <Value>12</Value>
                  <Description>Speed (Second)</Description>
                  <ID>0</ID>
                </Hotkey>
              </Hotkeys>
            </CheatEntry>
            <CheatEntry>
              <ID>7</ID>
              <Description>"Speed when shooting"</Description>
              <LastState Value="217" RealAddress="3CE406CF"/>
              <VariableType>Byte</VariableType>
              <Address>"trove.exe"+00ECEEF0</Address>
              <Offsets>
                <Offset>F3</Offset>
                <Offset>10</Offset>
                <Offset>24</Offset>
                <Offset>8</Offset>
                <Offset>68</Offset>
                <Offset>90</Offset>
                <Offset>190</Offset>
                <Offset>58</Offset>
              </Offsets>
              <Hotkeys>
                <Hotkey>
                  <Action>Toggle Activation</Action>
                  <Keys>
                    <Key>105</Key>
                  </Keys>
                  <Description>Speed (Third)</Description>
                  <ID>0</ID>
                </Hotkey>
                <Hotkey>
                  <Action>Set Value</Action>
                  <Keys>
                    <Key>106</Key>
                  </Keys>
                  <Value>217</Value>
                  <Description>Speed (Fourth)</Description>
                  <ID>1</ID>
                </Hotkey>
              </Hotkeys>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>54</ID>
          <Description>"Time"</Description>
          <LastState Value="7.33209361147692" RealAddress="2EE0F778"/>
          <VariableType>Double</VariableType>
          <Address>"trove.exe"+00ECEE60</Address>
          <Offsets>
            <Offset>178</Offset>
            <Offset>14</Offset>
            <Offset>0</Offset>
            <Offset>14</Offset>
            <Offset>0</Offset>
            <Offset>12C</Offset>
          </Offsets>
          <Hotkeys>
            <Hotkey>
              <Action>Increase Value</Action>
              <Keys>
                <Key>99</Key>
              </Keys>
              <Value>1</Value>
              <Description>Increase Time</Description>
              <ID>0</ID>
            </Hotkey>
            <Hotkey>
              <Action>Decrease Value</Action>
              <Keys>
                <Key>100</Key>
              </Keys>
              <Value>1</Value>
              <Description>Decrease Time</Description>
              <ID>1</ID>
            </Hotkey>
          </Hotkeys>
        </CheatEntry>
        <CheatEntry>
          <ID>56</ID>
          <Description>"Freeze time"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>{ Game   : trove.exe
      Version: 
      Date   : 2019-05-18
      Author : zViinin_
    
      This script does blah blah blah
    }
    
    [ENABLE]
    
    aobscanmodule(More,trove.exe,DD 5E 18 56 8B 01 FF 50 04 DD) // should be unique
    alloc(newmem,$1000)
    
    label(code)
    label(return)
    
    newmem:
    
    code:
      fstp qword ptr [esi-18] //fstp qword ptr [esi+18]
      push esi
      mov eax,[ecx]
      jmp return
    
    More:
      jmp newmem
      nop
    return:
    registersymbol(More)
    
    [DISABLE]
    
    More:
      db DD 5E 18 56 8B 01
    
    unregistersymbol(More)
    dealloc(newmem)
    
    {
    // ORIGINAL CODE - INJECTION POINT: "trove.exe"+C6C97
    
    "trove.exe"+C6C7F: D9 C9              -  fxch st(1)
    "trove.exe"+C6C81: DC 77 60           -  fdiv qword ptr [edi+60]
    "trove.exe"+C6C84: DC 46 18           -  fadd qword ptr [esi+18]
    "trove.exe"+C6C87: DD 46 18           -  fld qword ptr [esi+18]
    "trove.exe"+C6C8A: DF E9              -  fucomip st(0),st(1)
    "trove.exe"+C6C8C: 9F                 -  lahf 
    "trove.exe"+C6C8D: F6 C4 44           -  test ah,44
    "trove.exe"+C6C90: 7B 16              -  jnp trove.exe+C6CA8
    "trove.exe"+C6C92: 8B 4E 10           -  mov ecx,[esi+10]
    "trove.exe"+C6C95: DD D9              -  fstp st(1)
    // ---------- INJECTING HERE ----------
    "trove.exe"+C6C97: DD 5E 18           -  fstp qword ptr [esi+18]
    "trove.exe"+C6C9A: 56                 -  push esi
    "trove.exe"+C6C9B: 8B 01              -  mov eax,[ecx]
    // ---------- DONE INJECTING  ----------
    "trove.exe"+C6C9D: FF 50 04           -  call dword ptr [eax+04]
    "trove.exe"+C6CA0: DD 05 C8 02 D8 00  -  fld qword ptr [trove.exe+C102C8]
    "trove.exe"+C6CA6: EB 02              -  jmp trove.exe+C6CAA
    "trove.exe"+C6CA8: DD D8              -  fstp st(0)
    "trove.exe"+C6CAA: DD 87 A0 00 00 00  -  fld qword ptr [edi+000000A0]
    "trove.exe"+C6CB0: DF F1              -  fcomip st(0),st(1)
    "trove.exe"+C6CB2: 72 40              -  jb trove.exe+C6CF4
    "trove.exe"+C6CB4: DC 6E 18           -  fsubr qword ptr [esi+18]
    "trove.exe"+C6CB7: DD 46 18           -  fld qword ptr [esi+18]
    "trove.exe"+C6CBA: DF E9              -  fucomip st(0),st(1)
    }
    </AssemblerScript>
          <Hotkeys>
            <Hotkey>
              <Action>Toggle Activation</Action>
              <Keys>
                <Key>96</Key>
              </Keys>
              <Description>Freeze Time</Description>
              <ID>0</ID>
            </Hotkey>
          </Hotkeys>
        </CheatEntry>
      </CheatEntries>
      <CheatCodes>
        <CodeEntry>
          <Description>Change of mov [esi+00000308],eax</Description>
          <AddressString>trove.exe+8CAD6D</AddressString>
          <Before>
            <Byte>5F</Byte>
            <Byte>B3</Byte>
            <Byte>FF</Byte>
            <Byte>8B</Byte>
            <Byte>CE</Byte>
          </Before>
          <Actual>
            <Byte>89</Byte>
            <Byte>86</Byte>
            <Byte>08</Byte>
            <Byte>03</Byte>
            <Byte>00</Byte>
            <Byte>00</Byte>
          </Actual>
          <After>
            <Byte>E8</Byte>
            <Byte>C8</Byte>
            <Byte>11</Byte>
            <Byte>DD</Byte>
            <Byte>FF</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[esi+54]</Description>
          <AddressString>trove.exe+3B071A</AddressString>
          <Before>
            <Byte>84</Byte>
            <Byte>5C</Byte>
            <Byte>01</Byte>
            <Byte>00</Byte>
            <Byte>00</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>46</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of cvttss2si eax,[ecx+54]</Description>
          <AddressString>trove.exe+400D60</AddressString>
          <Before>
            <Byte>CC</Byte>
            <Byte>CC</Byte>
            <Byte>CC</Byte>
            <Byte>CC</Byte>
            <Byte>CC</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>2C</Byte>
            <Byte>41</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>C3</Byte>
            <Byte>CC</Byte>
            <Byte>CC</Byte>
            <Byte>CC</Byte>
            <Byte>CC</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[ebx+54]</Description>
          <AddressString>trove.exe+79C56F</AddressString>
          <Before>
            <Byte>46</Byte>
            <Byte>44</Byte>
            <Byte>02</Byte>
            <Byte>74</Byte>
            <Byte>2A</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>43</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[eax+54]</Description>
          <AddressString>trove.exe+6B2CD0</AddressString>
          <Before>
            <Byte>FF</Byte>
            <Byte>85</Byte>
            <Byte>C0</Byte>
            <Byte>74</Byte>
            <Byte>69</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>40</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[esi+54]</Description>
          <AddressString>trove.exe+10D270</AddressString>
          <Before>
            <Byte>D5</Byte>
            <Byte>58</Byte>
            <Byte>00</Byte>
            <Byte>8B</Byte>
            <Byte>D8</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>46</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[esi+54]</Description>
          <AddressString>trove.exe+8CAD88</AddressString>
          <Before>
            <Byte>3B</Byte>
            <Byte>D0</Byte>
            <Byte>0F</Byte>
            <Byte>4F</Byte>
            <Byte>D0</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>46</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>83</Byte>
            <Byte>C6</Byte>
            <Byte>3C</Byte>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss [esi+18],xmm1</Description>
          <AddressString>trove.exe+8CADA0</AddressString>
          <Before>
            <Byte>7B</Byte>
            <Byte>0E</Byte>
            <Byte>8B</Byte>
            <Byte>4E</Byte>
            <Byte>10</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>11</Byte>
            <Byte>4E</Byte>
            <Byte>18</Byte>
          </Actual>
          <After>
            <Byte>56</Byte>
            <Byte>8B</Byte>
            <Byte>01</Byte>
            <Byte>FF</Byte>
            <Byte>50</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[edx+18]</Description>
          <AddressString>trove.exe+56575A</AddressString>
          <Before>
            <Byte>4D</Byte>
            <Byte>FC</Byte>
            <Byte>8B</Byte>
            <Byte>51</Byte>
            <Byte>08</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>42</Byte>
            <Byte>18</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2E</Byte>
            <Byte>C1</Byte>
            <Byte>9F</Byte>
            <Byte>F6</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of fadd dword ptr [esi+54]</Description>
          <AddressString>trove.exe+3B07D3</AddressString>
          <Before>
            <Byte>DC</Byte>
            <Byte>4D</Byte>
            <Byte>F0</Byte>
            <Byte>8B</Byte>
            <Byte>CE</Byte>
          </Before>
          <Actual>
            <Byte>D8</Byte>
            <Byte>46</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>DD</Byte>
            <Byte>55</Byte>
            <Byte>E8</Byte>
            <Byte>D9</Byte>
            <Byte>5D</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[edx+18]</Description>
          <AddressString>trove.exe+3B0856</AddressString>
          <Before>
            <Byte>C3</Byte>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>5F</Byte>
            <Byte>D0</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>42</Byte>
            <Byte>18</Byte>
          </Actual>
          <After>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>5D</Byte>
            <Byte>D1</Byte>
            <Byte>0F</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of cvttss2si ecx,[esi+54]</Description>
          <AddressString>trove.exe+69B8D9</AddressString>
          <Before>
            <Byte>02</Byte>
            <Byte>3B</Byte>
            <Byte>F8</Byte>
            <Byte>72</Byte>
            <Byte>D7</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>2C</Byte>
            <Byte>4E</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>8B</Byte>
            <Byte>46</Byte>
            <Byte>30</Byte>
            <Byte>89</Byte>
            <Byte>4D</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[esi+54]</Description>
          <AddressString>trove.exe+69B968</AddressString>
          <Before>
            <Byte>E8</Byte>
            <Byte>18</Byte>
            <Byte>FC</Byte>
            <Byte>FF</Byte>
            <Byte>FF</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>46</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[ebx+54]</Description>
          <AddressString>trove.exe+8CA78A</AddressString>
          <Before>
            <Byte>85</Byte>
            <Byte>27</Byte>
            <Byte>01</Byte>
            <Byte>00</Byte>
            <Byte>00</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>43</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>C1</Byte>
            <Byte>0F</Byte>
            <Byte>86</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[esi+54]</Description>
          <AddressString>trove.exe+69BDE2</AddressString>
          <Before>
            <Byte>E8</Byte>
            <Byte>6E</Byte>
            <Byte>C7</Byte>
            <Byte>FB</Byte>
            <Byte>FF</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>46</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[edi+54]</Description>
          <AddressString>trove.exe+8CAAAC</AddressString>
          <Before>
            <Byte>82</Byte>
            <Byte>B4</Byte>
            <Byte>00</Byte>
            <Byte>00</Byte>
            <Byte>00</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>47</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss [edx+18],xmm2</Description>
          <AddressString>trove.exe+3B086B</AddressString>
          <Before>
            <Byte>7B</Byte>
            <Byte>0E</Byte>
            <Byte>8B</Byte>
            <Byte>4A</Byte>
            <Byte>10</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>11</Byte>
            <Byte>52</Byte>
            <Byte>18</Byte>
          </Actual>
          <After>
            <Byte>52</Byte>
            <Byte>8B</Byte>
            <Byte>01</Byte>
            <Byte>FF</Byte>
            <Byte>50</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss [edx+18],xmm1</Description>
          <AddressString>trove.exe+56576F</AddressString>
          <Before>
            <Byte>00</Byte>
            <Byte>00</Byte>
            <Byte>8B</Byte>
            <Byte>4A</Byte>
            <Byte>10</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>11</Byte>
            <Byte>4A</Byte>
            <Byte>18</Byte>
          </Actual>
          <After>
            <Byte>52</Byte>
            <Byte>8B</Byte>
            <Byte>01</Byte>
            <Byte>FF</Byte>
            <Byte>50</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[eax+54]</Description>
          <AddressString>trove.exe+506AC1</AddressString>
          <Before>
            <Byte>00</Byte>
            <Byte>85</Byte>
            <Byte>C0</Byte>
            <Byte>74</Byte>
            <Byte>0E</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>40</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[eax+54]</Description>
          <AddressString>trove.exe+9FA14</AddressString>
          <Before>
            <Byte>E8</Byte>
            <Byte>EC</Byte>
            <Byte>AD</Byte>
            <Byte>5F</Byte>
            <Byte>00</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>40</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
      </CheatCodes>
      <UserdefinedSymbols/>
      <LuaScript>getAutoAttachList().add("trove.exe") --attach to trove
    
    function createTRadioButton(Parent)
    local box = createComponentClass('TRadioButton', Parent)
    box.Parent = Parent
    return box
    end
    
    function skip() --performs the skip
      local xcoord=readFloat("[[[[[trove.exe+00ECEEF0]+0]+28]+C4]+4]+60") --Loading in the current xyz coords
      local ycoord=readFloat("[[[[[trove.exe+00ECEEF0]+0]+28]+C4]+4]+64")
      local zcoord=readFloat("[[[[[trove.exe+00ECEEF0]+0]+28]+C4]+4]+68")
      local xper=readFloat("[[[[[trove.exe+00ECEEF0]+4]+24]+84]+0]+100")
      local yper=readFloat("[[[[[trove.exe+00ECEEF0]+4]+24]+84]+0]+104")
      local zper=readFloat("[[[[[trove.exe+00ECEEF0]+4]+24]+84]+0]+108")
      local xadd=xper*main.skipdist.text
      local yadd=yper*main.skipdist.text
      local zadd=zper*main.skipdist.text
      local xdest=xcoord+xadd --calculating the new xyz coords
      local ydest=ycoord+yadd
      local zdest=zcoord+zadd
      writeFloat("[[[[[trove.exe+00ECEEF0]+0]+28]+C4]+4]+60",xdest) --Writes speed values
      writeFloat("[[[[[trove.exe+00ECEEF0]+0]+28]+C4]+4]+64",ydest)
      writeFloat("[[[[[trove.exe+00ECEEF0]+0]+28]+C4]+4]+68",zdest)
    end
    
    function speedenableChange() --turns on and off speedhack
      if main.speedenable.checked==true then
         if main.stogs.checked==true then
           speedhack_setSpeed(main.speeds.text)
         else
           speedhack_setSpeed(main.speedf.text)
         end
      else
        speedhack_setSpeed'1'
      end
    end
    
    function togglespeed() --speedhack toggle for hotkey
      if main.speedenable.checked==true then
        main.speedenable.checked=false
      else
        main.speedenable.checked=true
      end
    end
    
    function jump() --boosts jumps for superjump
      if main.superjump.checked==true then
        writeFloat("[[[[[trove.exe+00FFB014]+0]+28]+C4]+4]+94",15)
      end
    end
    
    function switchspeed() --toggles between speeds for speedhack
    if main.stogs.checked==true then
      main.stogs.checked=false
      main.stogf.checked=true
    else
      main.stogs.checked=true
      main.stogf.checked=false
    end
    speedenableChange()
    end
    
    function elockChange() --turns on and off energy lock script
    if main.elock.checked==false then
      etimer.Enabled = false
    else
        efreezeval = readFloat("[[[[[trove.exe+00E61A2C]+0]+28]+18C]+610]+70")
        etimers()
    end
    end
    
    function etimers() --energy lock timer
    etimer = createTimer(getMainForm(),true)
    timer_setInterval(etimer,100)
    timer_onTimer(etimer, setener)
    end
    
    function setener(sender) --sets energy value when energy lock timer ticks
    writeFloat("[[[[[trove.exe+00EB7D78]+0]+28]+C4]+170]+70",efreezeval)
    end
    
    jumpkey = createHotkey("jump",VK_SPACE) --superjump hotkey
    speedokey = createHotkey("togglespeed",VK_5) --speedhack on/off hotkey
    speedtkey = createHotkey("switchspeed",VK_4) --speedhack toggle hotkey
    skipkey = createHotkey("skip",VK_3) --skip hotkey
    
    function close() --on close for form
    if etimer ~= nil then
      etimer.destroy()
    end
    closeCE()
    return caFree
    end
    
    
    function showhelp() --creates help form
    help=createForm(true)
    help.borderstyle=bsToolWindow
    help.height=400
    help.width=520
    help.caption="Help"
    help.title=createLabel(help)
    help.title.caption="TRMrecmrec"
    help.title.left=236
    help.title.top=15
    help.structbox=createGroupBox(help)
    help.structbox.height=350
    help.structbox.caption=""
    help.structbox.left=10
    help.structbox.top=40
    help.structbox.width=500
    help.structbox.speedtext=createLabel(help.structbox)
    help.structbox.speedtext.caption=[[Speedhack:
    This accellerates the game speed.
    Attacks seem faster, but damage is dealt on the server side, so no extra damage is done.
    You can set 2 speeds to toggle between them.
    Lower speeds are harder to detect by other players.
    This feature can also be controlled with hotkeys 5 (on/off) and 3 (toggle speed)]]
    help.structbox.speedtext.left=15
    help.structbox.speedtext.top=215
    help.structbox.jumptext=createLabel(help.structbox)
    help.structbox.jumptext.caption=[[Superjump:
    Superjump gives your jump more umpf.
    With superjump you can also hold the space key and it allows you to fly up.]]
    help.structbox.jumptext.left=15
    help.structbox.jumptext.top=155
    help.structbox.energytext=createLabel(help.structbox)
    help.structbox.energytext.caption=[[Energy Lock:
    This freezes the client side value for the energy.
    This feature is only useful for back rolling with the Neon Ninja.]]
    help.structbox.energytext.left=15
    help.structbox.energytext.top=95
    help.structbox.skiptext=createLabel(help.structbox)
    help.structbox.skiptext.caption=[[Skipping:
    To skip (teleport) press 3.
    The skip distance is the distance you will travel when you skip.
    Setting a skip distance too low will not teleport you far enough to pass through a wall.
    Setting a skip distance too high will get corrected with the server value.]]
    help.structbox.skiptext.left=15
    help.structbox.skiptext.top=5
    help.centerScreen()
    help.OnClose = hidehelp
    end
    
    function hidehelp() --closes help form
    help.destroy()
    end
    
    
    
    main=createForm(true)
    main.borderstyle=bsToolWindow
    main.height=205
    main.width=142
    main.caption="TRM"
    main.top=115
    main.left=342
    main.skiptext=createLabel(main)
    main.skiptext.caption="Skip Distance"
    main.skiptext.left=16
    main.skiptext.top=10
    main.skipdist=createEdit(main)
    main.skipdist.text="3"
    main.skipdist.left=103
    main.skipdist.top=8
    main.skipdist.width=24
    main.speedtext=createLabel(main)
    main.speedtext.caption="Speedhack"
    main.speedtext.left=29
    main.speedtext.top=100
    main.speedenable=createCheckBox(main)
    main.speedenable.caption=nil
    main.speedenable.checked=false
    main.speedenable.left=108
    main.speedenable.top=100
    main.speedenable.OnChange=speedenableChange
    main.elocktext=createLabel(main)
    main.elocktext.caption="Energy Lock"
    main.elocktext.left=22
    main.elocktext.top=40
    main.elock=createCheckBox(main)
    main.elock.caption=nil
    main.elock.checked=false
    main.elock.left=108
    main.elock.top=40
    main.elock.OnChange=elockChange
    main.jumptext=createLabel(main)
    main.jumptext.caption="Superjump"
    main.jumptext.left=28
    main.jumptext.top=70
    main.superjump=createCheckBox(main)
    main.superjump.caption=nil
    main.superjump.checked=false
    main.superjump.left=108
    main.superjump.top=70
    main.stogs=createTRadioButton(main)
    main.stogs.caption=nil
    main.stogs.checked=false
    main.stogs.left=20
    main.stogs.top=130
    main.stogs.OnChange=speedenableChange
    main.stogf=createTRadioButton(main)
    main.stogf.caption=nil
    main.stogf.checked=false
    main.stogf.left=80
    main.stogf.top=130
    main.stogf.OnChange=speedenableChange
    main.speedf=createEdit(main)
    main.speedf.text="2"
    main.speedf.left=95
    main.speedf.top=128
    main.speedf.width=28
    main.speeds=createEdit(main)
    main.speeds.text="1.5"
    main.speeds.left=35
    main.speeds.top=128
    main.speeds.width=28
    main.helpbutton=createButton(main)
    main.helpbutton.caption="Help"
    main.helpbutton.top=170
    main.helpbutton.left=53
    main.helpbutton.height=24
    main.helpbutton.width=40
    main.helpbutton.OnClick=showhelp
    main.OnClose = close
    --TRAINERGENERATORSTART--
    --This is autogenerated code. Changing code in this block will
    --get erased and rewritten if you regenerate the trainer code
    
    --Uncomment the following line if this is a Cheat Table format trainer and you don't want CE to show (Tip, save as .CETRAINER alternatively)
    --hideAllCEWindows()
    
    RequiredCEVersion=6.83
    if (getCEVersion==nil) or (getCEVersion()&lt;RequiredCEVersion) then
      messageDialog('Please install Cheat Engine '..RequiredCEVersion, mtError, mbOK)
      closeCE()
    end
    addresslist=getAddressList()
    memrec0=addresslist.getMemoryRecordByID(0)
    memrec1=addresslist.getMemoryRecordByID(1)
    memrec8=addresslist.getMemoryRecordByID(8)
    memrec2=addresslist.getMemoryRecordByID(2)
    memrec7=addresslist.getMemoryRecordByID(7)
    memrec54=addresslist.getMemoryRecordByID(54)
    memrec56=addresslist.getMemoryRecordByID(56)
    
    memrec56_hotkey0=memrec56.getHotkeyByID(0)
    memrec0_hotkey0=memrec0.getHotkeyByID(0)
    memrec0_hotkey1=memrec0.getHotkeyByID(1)
    memrec54_hotkey0=memrec54.getHotkeyByID(0)
    memrec54_hotkey1=memrec54.getHotkeyByID(1)
    memrec1_hotkey0=memrec1.getHotkeyByID(0)
    memrec1_hotkey1=memrec1.getHotkeyByID(1)
    memrec8_hotkey0=memrec8.getHotkeyByID(0)
    memrec2_hotkey0=memrec2.getHotkeyByID(0)
    memrec7_hotkey0=memrec7.getHotkeyByID(0)
    memrec7_hotkey1=memrec7.getHotkeyByID(1)
    
    function onPostHotkey0(Hotkey)
      --Executed after the "toggle*" cheat got executed
      local memrec=Hotkey.Owner
      local isActive=memrec.Active --get the state after the hotkey got triggered
      CETrainer.CHEAT0.setActive(isActive) --gui update, nothing else
      if gPlaySoundOnAction then
        if isActive then
          playSound(gActivateSound)
        else
          playSound(gDeactivateSound)
        end
      end
    end
    
    memrec56_hotkey0.onPostHotkey=onPostHotkey0
    
    function onHotkey1(Hotkey)
      --Executed before the hotkey is handled
      CETrainer.CHEAT1.setActive(true, 1500)
      if gPlaySoundOnAction then
        playSound(gActivateSound)
      end
    end
    
    memrec0_hotkey0.onHotkey=onHotkey1
    function onHotkey2(Hotkey)
      --Executed before the hotkey is handled
      CETrainer.CHEAT2.setActive(true, 1500)
      if gPlaySoundOnAction then
        playSound(gDeactivateSound)
      end
    end
    
    memrec0_hotkey1.onHotkey=onHotkey2
    function onHotkey3(Hotkey)
      --Executed before the hotkey is handled
      CETrainer.CHEAT3.setActive(true, 1500)
      if gPlaySoundOnAction then
        playSound(gActivateSound)
      end
    end
    
    memrec54_hotkey0.onHotkey=onHotkey3
    function onHotkey4(Hotkey)
      --Executed before the hotkey is handled
      CETrainer.CHEAT4.setActive(true, 1500)
      if gPlaySoundOnAction then
        playSound(gActivateSound)
      end
    end
    
    memrec54_hotkey1.onHotkey=onHotkey4
    function onHotkey5(Hotkey)
      --Executed before the hotkey is handled
      CETrainer.CHEAT5.setActive(true, 1500)
      if gPlaySoundOnAction then
        playSound(gActivateSound)
      end
    end
    
    memrec1_hotkey0.onHotkey=onHotkey5
    function onHotkey6(Hotkey)
      --Executed before the hotkey is handled
      CETrainer.CHEAT6.setActive(true, 1500)
      if gPlaySoundOnAction then
        playSound(gDeactivateSound)
      end
    end
    
    memrec1_hotkey1.onHotkey=onHotkey6
    function onPostHotkey7(Hotkey)
      --Executed after the "toggle*" cheat got executed
      local memrec=Hotkey.Owner
      local isActive=memrec.Active --get the state after the hotkey got triggered
      CETrainer.CHEAT7.setActive(isActive) --gui update, nothing else
      if gPlaySoundOnAction then
        if isActive then
          playSound(gActivateSound)
        else
          playSound(gDeactivateSound)
        end
      end
    end
    
    memrec8_hotkey0.onPostHotkey=onPostHotkey7
    
    function onHotkey8(Hotkey)
      --Executed before the hotkey is handled
      CETrainer.CHEAT8.setActive(true, 1500)
      if gPlaySoundOnAction then
        playSound(gActivateSound)
      end
    end
    
    memrec2_hotkey0.onHotkey=onHotkey8
    function onPostHotkey9(Hotkey)
      --Executed after the "toggle*" cheat got executed
      local memrec=Hotkey.Owner
      local isActive=memrec.Active --get the state after the hotkey got triggered
      CETrainer.CHEAT9.setActive(isActive) --gui update, nothing else
      if gPlaySoundOnAction then
        if isActive then
          playSound(gActivateSound)
        else
          playSound(gDeactivateSound)
        end
      end
    end
    
    memrec7_hotkey0.onPostHotkey=onPostHotkey9
    
    function onHotkey10(Hotkey)
      --Executed before the hotkey is handled
      CETrainer.CHEAT10.setActive(true, 1500)
      if gPlaySoundOnAction then
        playSound(gActivateSound)
      end
    end
    
    memrec7_hotkey1.onHotkey=onHotkey10
    CETrainer.SEPERATOR.Visible=false
    
    getAutoAttachList().add("Trove.exe")
    gPlaySoundOnAction=false
    CETrainer.show()
    function AboutClick()
      showMessage(gAboutText)
    end
    gAboutText=[[This trainer was made using Cheat 
    Engine
    
    By Hax4lifebb]]
    
    function CloseClick()
      --called by the close button onClick event, and when closing the form
      closeCE()
      return caFree --onClick doesn't care, but onClose would like a result
    end
    
    --TRAINERGENERATORSTOP--
    </LuaScript>
      <DisassemblerComments>
        <DisassemblerComment>
          <Address>26BA7D0C</Address>
          <Comment>lembrar
    </Comment>
        </DisassemblerComment>
      </DisassemblerComments>
    </CheatTable>

  3. The Following User Says Thank You to hax4lifebb For This Useful Post:

    douky70 (05-25-2019)

  4. #18
    Prostak1's Avatar
    Join Date
    Oct 2015
    Gender
    male
    Location
    Belarus, Minsk
    Posts
    8
    Reputation
    10
    Thanks
    0
    My Mood
    Amazed
    https://prntscr.com/nt7i0v ?????????????

    - - - Updated - - -

    Quote Originally Posted by hax4lifebb View Post
    Sorry, i forget to add the trove.exe as process name so here the ct table:


    (Save it as ct)

    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <CheatTable CheatEngineTableVersion="28">
      <Forms>
        <CETrainer Class="TTrainerForm" Encoding="Ascii85">(6mxN,cp%1X)[h.)wQKeAe,GGqDZrv^7$lqENfyT=#QqhG_i5duE*g4qC=R$NuD9-Tl6+Z0s+?1YxEIHOB!1mGXb:TyD{,{m+,c2+Ot2n2.uR])M@mwp)+ea#ut_7m$Mrqm/fH-=hJsQ(4vDFOUG:fTdnr+G!{FHWy_o$Qc#w5,L+HoxalPnQn6X=6!XpMAoUWKfnnz#??8}yj#*/6C5)e53nLDYdU6YJ/Y3PamkAYeVuk,LpSU:f/eIc*U6O[hMOqsnQ+IlR6cXEiizn^bJ?rS$CiIO;%eI?*v)*I2WWCPr!38A4R2pDd)}A,i1P+a:HCTz-*$ajoOB0i6z,;QA3t3WDZzTjv9k(.{!M!(a2d9NFtrVu,(Hc=vf3;6)W_E{G/kp4ht@@C_C$P50yHmCjxwFzu![KFLvzyaV.mUA9(Y)T}(3*z9(),?-hG?Iz7Cc5MIEZL(p^l;$z._*Q-/8@5^VTd(?4L@+SF{}G/.RW46cT3..Me^iBe!;To[%H8VSb!ls^du/O:rNwIec],gv.t4OBgrNw(Jb6A9_DF7!QNfO4)Rl[TILvKbt]$u9d9;=2UrZuLk[O9]NES.A6v0qdDW5W0LbCVx-Er:$cK(mF{r#,;r=Z5uH4jBc)[8%Sir4hPPgODmPjfK8R;dVOUYphZ$KV!t!G)E[0D[X:BGqR{0]Y;K-_L$RbV*b/T-w,E38MbOCm.G_AiTu)B$?@3HN2K]*4a+gPzU?=LRvJ4z/9(B8gmEQ)n6fMjbKJ?(zL/X9=;(Zly64fUZC*!jvHHAj6_L.dMWfA:jXANK/LND2FH7glQy]:_yhiOAk?A1iUQU0l66=(Es4!(LtIkZg_,?*H%T^u%Ak-e@wyq*yw1ebYWw)+C8OZ8xWVTBE)Q;DysCqbZexK8w%x!}IOj^YAmuY0mwu#)lTa!v6#EV/q]N3UZ?4]EiZ;cDMwHyZ7.(X5AU)nfP?t$j[C=_0/Bp:E%:$$Ok2I2oX!.^ouY).%?#hRB*}4xG)D8VB3WG52rPX7Z2r2mj1H;+KUscK$-3dTX8Y{VY}=a2L</CETrainer>
      </Forms>
      <CheatEntries>
        <CheatEntry>
          <ID>0</ID>
          <Description>"Xray"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]
    aobscanmodule(INJECT,trove.exe, B8 03 02 00 00 c3)
    label(return)
    INJECT:
      db B8 07 02 00 00
    return:
    registersymbol(INJECT)
    [DISABLE]
    INJECT:
      db B8 03 02 00 00
    unregistersymbol(INJECT)
    </AssemblerScript>
          <Hotkeys>
            <Hotkey>
              <Action>Activate</Action>
              <Keys>
                <Key>97</Key>
              </Keys>
              <Description>Activate Xray</Description>
              <ID>0</ID>
            </Hotkey>
            <Hotkey>
              <Action>Deactivate</Action>
              <Keys>
                <Key>98</Key>
              </Keys>
              <Description>Deactivate Xray</Description>
              <ID>1</ID>
            </Hotkey>
          </Hotkeys>
        </CheatEntry>
        <CheatEntry>
          <ID>1</ID>
          <Description>"Dodge"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]
    
    aobscanmodule(DODGE,trove.exe,DF F1 DD D8 73 12 56) // should be unique
    alloc(newmem,$1000)
    
    label(code)
    label(return)
    
    newmem:
    
    code:
    fcomip st(0),st(1)
    fstp st(0)
    jae trove.exe+56E4C9
    jmp return
    
    DODGE:
    fcomip st(0),st(0)
    return:
    registersymbol(DODGE)
    
    [DISABLE]
    
    DODGE:
    db DF F1 DD D8 73 12
    
    unregistersymbol(DODGE)
    dealloc(newmem)
    
    {
    // ORIGINAL CODE - INJECTION POINT: "trove.exe"+56E4B1
    
    "trove.exe"+56E494: DD 5A 18 - fstp qword ptr [edx+18]
    "trove.exe"+56E497: 52 - push edx
    "trove.exe"+56E498: 8B 01 - mov eax,[ecx]
    "trove.exe"+56E49A: FF 50 04 - call dword ptr [eax+04]
    "trove.exe"+56E49D: D9 EE - fldz
    "trove.exe"+56E49F: DD 83 E0 00 00 00 - fld qword ptr [ebx+000000E0]
    "trove.exe"+56E4A5: DF F1 - fcomip st(0),st(1)
    "trove.exe"+56E4A7: 76 1E - jna trove.exe+56E4C7
    "trove.exe"+56E4A9: DD 83 E0 00 00 00 - fld qword ptr [ebx+000000E0]
    "trove.exe"+56E4AF: D9 C9 - fxch st(1)
    // ---------- INJECTING HERE ----------
    "trove.exe"+56E4B1: DF F1 - fcomip st(0),st(1)
    "trove.exe"+56E4B3: DD D8 - fstp st(0)
    "trove.exe"+56E4B5: 73 12 - jae trove.exe+56E4C9
    // ---------- DONE INJECTING ----------
    "trove.exe"+56E4B7: 56 - push esi
    "trove.exe"+56E4B8: E8 C3 58 F7 FF - call trove.exe+4E3D80
    "trove.exe"+56E4BD: 83 C4 04 - add esp,04
    "trove.exe"+56E4C0: 8B F0 - mov esi,eax
    "trove.exe"+56E4C2: E9 F3 00 00 00 - jmp trove.exe+56E5BA
    "trove.exe"+56E4C7: DD D8 - fstp st(0)
    "trove.exe"+56E4C9: 8B CF - mov ecx,edi
    "trove.exe"+56E4CB: E8 F0 24 0F 00 - call trove.exe+6609C0
    "trove.exe"+56E4D0: 84 C0 - test al,al
    "trove.exe"+56E4D2: 0F 84 8E 00 00 00 - je trove.exe+56E566
    }
    </AssemblerScript>
          <Hotkeys>
            <Hotkey>
              <Action>Activate</Action>
              <Keys>
                <Key>101</Key>
              </Keys>
              <Description>Activate Infinite Dodge</Description>
              <ID>0</ID>
            </Hotkey>
            <Hotkey>
              <Action>Deactivate</Action>
              <Keys>
                <Key>102</Key>
              </Keys>
              <Description>Deactivate Infinite Dodge</Description>
              <ID>1</ID>
            </Hotkey>
          </Hotkeys>
        </CheatEntry>
        <CheatEntry>
          <ID>8</ID>
          <Description>"Speed"</Description>
          <Options moHideChildren="1" moActivateChildrenAsWell="1" moDeactivateChildrenAsWell="1"/>
          <LastState Value="" RealAddress="00000000"/>
          <GroupHeader>1</GroupHeader>
          <Hotkeys>
            <Hotkey>
              <Action>Toggle Activation</Action>
              <Keys>
                <Key>103</Key>
              </Keys>
              <Description>Speed (This first)</Description>
              <ID>0</ID>
            </Hotkey>
          </Hotkeys>
          <CheatEntries>
            <CheatEntry>
              <ID>2</ID>
              <Description>"Speed"</Description>
              <LastState Value="12" RealAddress="3CE406CE"/>
              <VariableType>Byte</VariableType>
              <Address>"trove.exe"+00ECEEF0</Address>
              <Offsets>
                <Offset>F2</Offset>
                <Offset>10</Offset>
                <Offset>24</Offset>
                <Offset>8</Offset>
                <Offset>68</Offset>
                <Offset>90</Offset>
                <Offset>190</Offset>
                <Offset>58</Offset>
              </Offsets>
              <Hotkeys>
                <Hotkey>
                  <Action>Set Value</Action>
                  <Keys>
                    <Key>104</Key>
                  </Keys>
                  <Value>12</Value>
                  <Description>Speed (Second)</Description>
                  <ID>0</ID>
                </Hotkey>
              </Hotkeys>
            </CheatEntry>
            <CheatEntry>
              <ID>7</ID>
              <Description>"Speed when shooting"</Description>
              <LastState Value="217" RealAddress="3CE406CF"/>
              <VariableType>Byte</VariableType>
              <Address>"trove.exe"+00ECEEF0</Address>
              <Offsets>
                <Offset>F3</Offset>
                <Offset>10</Offset>
                <Offset>24</Offset>
                <Offset>8</Offset>
                <Offset>68</Offset>
                <Offset>90</Offset>
                <Offset>190</Offset>
                <Offset>58</Offset>
              </Offsets>
              <Hotkeys>
                <Hotkey>
                  <Action>Toggle Activation</Action>
                  <Keys>
                    <Key>105</Key>
                  </Keys>
                  <Description>Speed (Third)</Description>
                  <ID>0</ID>
                </Hotkey>
                <Hotkey>
                  <Action>Set Value</Action>
                  <Keys>
                    <Key>106</Key>
                  </Keys>
                  <Value>217</Value>
                  <Description>Speed (Fourth)</Description>
                  <ID>1</ID>
                </Hotkey>
              </Hotkeys>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>54</ID>
          <Description>"Time"</Description>
          <LastState Value="7.33209361147692" RealAddress="2EE0F778"/>
          <VariableType>Double</VariableType>
          <Address>"trove.exe"+00ECEE60</Address>
          <Offsets>
            <Offset>178</Offset>
            <Offset>14</Offset>
            <Offset>0</Offset>
            <Offset>14</Offset>
            <Offset>0</Offset>
            <Offset>12C</Offset>
          </Offsets>
          <Hotkeys>
            <Hotkey>
              <Action>Increase Value</Action>
              <Keys>
                <Key>99</Key>
              </Keys>
              <Value>1</Value>
              <Description>Increase Time</Description>
              <ID>0</ID>
            </Hotkey>
            <Hotkey>
              <Action>Decrease Value</Action>
              <Keys>
                <Key>100</Key>
              </Keys>
              <Value>1</Value>
              <Description>Decrease Time</Description>
              <ID>1</ID>
            </Hotkey>
          </Hotkeys>
        </CheatEntry>
        <CheatEntry>
          <ID>56</ID>
          <Description>"Freeze time"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>{ Game   : trove.exe
      Version: 
      Date   : 2019-05-18
      Author : zViinin_
    
      This script does blah blah blah
    }
    
    [ENABLE]
    
    aobscanmodule(More,trove.exe,DD 5E 18 56 8B 01 FF 50 04 DD) // should be unique
    alloc(newmem,$1000)
    
    label(code)
    label(return)
    
    newmem:
    
    code:
      fstp qword ptr [esi-18] //fstp qword ptr [esi+18]
      push esi
      mov eax,[ecx]
      jmp return
    
    More:
      jmp newmem
      nop
    return:
    registersymbol(More)
    
    [DISABLE]
    
    More:
      db DD 5E 18 56 8B 01
    
    unregistersymbol(More)
    dealloc(newmem)
    
    {
    // ORIGINAL CODE - INJECTION POINT: "trove.exe"+C6C97
    
    "trove.exe"+C6C7F: D9 C9              -  fxch st(1)
    "trove.exe"+C6C81: DC 77 60           -  fdiv qword ptr [edi+60]
    "trove.exe"+C6C84: DC 46 18           -  fadd qword ptr [esi+18]
    "trove.exe"+C6C87: DD 46 18           -  fld qword ptr [esi+18]
    "trove.exe"+C6C8A: DF E9              -  fucomip st(0),st(1)
    "trove.exe"+C6C8C: 9F                 -  lahf 
    "trove.exe"+C6C8D: F6 C4 44           -  test ah,44
    "trove.exe"+C6C90: 7B 16              -  jnp trove.exe+C6CA8
    "trove.exe"+C6C92: 8B 4E 10           -  mov ecx,[esi+10]
    "trove.exe"+C6C95: DD D9              -  fstp st(1)
    // ---------- INJECTING HERE ----------
    "trove.exe"+C6C97: DD 5E 18           -  fstp qword ptr [esi+18]
    "trove.exe"+C6C9A: 56                 -  push esi
    "trove.exe"+C6C9B: 8B 01              -  mov eax,[ecx]
    // ---------- DONE INJECTING  ----------
    "trove.exe"+C6C9D: FF 50 04           -  call dword ptr [eax+04]
    "trove.exe"+C6CA0: DD 05 C8 02 D8 00  -  fld qword ptr [trove.exe+C102C8]
    "trove.exe"+C6CA6: EB 02              -  jmp trove.exe+C6CAA
    "trove.exe"+C6CA8: DD D8              -  fstp st(0)
    "trove.exe"+C6CAA: DD 87 A0 00 00 00  -  fld qword ptr [edi+000000A0]
    "trove.exe"+C6CB0: DF F1              -  fcomip st(0),st(1)
    "trove.exe"+C6CB2: 72 40              -  jb trove.exe+C6CF4
    "trove.exe"+C6CB4: DC 6E 18           -  fsubr qword ptr [esi+18]
    "trove.exe"+C6CB7: DD 46 18           -  fld qword ptr [esi+18]
    "trove.exe"+C6CBA: DF E9              -  fucomip st(0),st(1)
    }
    </AssemblerScript>
          <Hotkeys>
            <Hotkey>
              <Action>Toggle Activation</Action>
              <Keys>
                <Key>96</Key>
              </Keys>
              <Description>Freeze Time</Description>
              <ID>0</ID>
            </Hotkey>
          </Hotkeys>
        </CheatEntry>
      </CheatEntries>
      <CheatCodes>
        <CodeEntry>
          <Description>Change of mov [esi+00000308],eax</Description>
          <AddressString>trove.exe+8CAD6D</AddressString>
          <Before>
            <Byte>5F</Byte>
            <Byte>B3</Byte>
            <Byte>FF</Byte>
            <Byte>8B</Byte>
            <Byte>CE</Byte>
          </Before>
          <Actual>
            <Byte>89</Byte>
            <Byte>86</Byte>
            <Byte>08</Byte>
            <Byte>03</Byte>
            <Byte>00</Byte>
            <Byte>00</Byte>
          </Actual>
          <After>
            <Byte>E8</Byte>
            <Byte>C8</Byte>
            <Byte>11</Byte>
            <Byte>DD</Byte>
            <Byte>FF</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[esi+54]</Description>
          <AddressString>trove.exe+3B071A</AddressString>
          <Before>
            <Byte>84</Byte>
            <Byte>5C</Byte>
            <Byte>01</Byte>
            <Byte>00</Byte>
            <Byte>00</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>46</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of cvttss2si eax,[ecx+54]</Description>
          <AddressString>trove.exe+400D60</AddressString>
          <Before>
            <Byte>CC</Byte>
            <Byte>CC</Byte>
            <Byte>CC</Byte>
            <Byte>CC</Byte>
            <Byte>CC</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>2C</Byte>
            <Byte>41</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>C3</Byte>
            <Byte>CC</Byte>
            <Byte>CC</Byte>
            <Byte>CC</Byte>
            <Byte>CC</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[ebx+54]</Description>
          <AddressString>trove.exe+79C56F</AddressString>
          <Before>
            <Byte>46</Byte>
            <Byte>44</Byte>
            <Byte>02</Byte>
            <Byte>74</Byte>
            <Byte>2A</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>43</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[eax+54]</Description>
          <AddressString>trove.exe+6B2CD0</AddressString>
          <Before>
            <Byte>FF</Byte>
            <Byte>85</Byte>
            <Byte>C0</Byte>
            <Byte>74</Byte>
            <Byte>69</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>40</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[esi+54]</Description>
          <AddressString>trove.exe+10D270</AddressString>
          <Before>
            <Byte>D5</Byte>
            <Byte>58</Byte>
            <Byte>00</Byte>
            <Byte>8B</Byte>
            <Byte>D8</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>46</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[esi+54]</Description>
          <AddressString>trove.exe+8CAD88</AddressString>
          <Before>
            <Byte>3B</Byte>
            <Byte>D0</Byte>
            <Byte>0F</Byte>
            <Byte>4F</Byte>
            <Byte>D0</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>46</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>83</Byte>
            <Byte>C6</Byte>
            <Byte>3C</Byte>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss [esi+18],xmm1</Description>
          <AddressString>trove.exe+8CADA0</AddressString>
          <Before>
            <Byte>7B</Byte>
            <Byte>0E</Byte>
            <Byte>8B</Byte>
            <Byte>4E</Byte>
            <Byte>10</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>11</Byte>
            <Byte>4E</Byte>
            <Byte>18</Byte>
          </Actual>
          <After>
            <Byte>56</Byte>
            <Byte>8B</Byte>
            <Byte>01</Byte>
            <Byte>FF</Byte>
            <Byte>50</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[edx+18]</Description>
          <AddressString>trove.exe+56575A</AddressString>
          <Before>
            <Byte>4D</Byte>
            <Byte>FC</Byte>
            <Byte>8B</Byte>
            <Byte>51</Byte>
            <Byte>08</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>42</Byte>
            <Byte>18</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2E</Byte>
            <Byte>C1</Byte>
            <Byte>9F</Byte>
            <Byte>F6</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of fadd dword ptr [esi+54]</Description>
          <AddressString>trove.exe+3B07D3</AddressString>
          <Before>
            <Byte>DC</Byte>
            <Byte>4D</Byte>
            <Byte>F0</Byte>
            <Byte>8B</Byte>
            <Byte>CE</Byte>
          </Before>
          <Actual>
            <Byte>D8</Byte>
            <Byte>46</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>DD</Byte>
            <Byte>55</Byte>
            <Byte>E8</Byte>
            <Byte>D9</Byte>
            <Byte>5D</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[edx+18]</Description>
          <AddressString>trove.exe+3B0856</AddressString>
          <Before>
            <Byte>C3</Byte>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>5F</Byte>
            <Byte>D0</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>42</Byte>
            <Byte>18</Byte>
          </Actual>
          <After>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>5D</Byte>
            <Byte>D1</Byte>
            <Byte>0F</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of cvttss2si ecx,[esi+54]</Description>
          <AddressString>trove.exe+69B8D9</AddressString>
          <Before>
            <Byte>02</Byte>
            <Byte>3B</Byte>
            <Byte>F8</Byte>
            <Byte>72</Byte>
            <Byte>D7</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>2C</Byte>
            <Byte>4E</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>8B</Byte>
            <Byte>46</Byte>
            <Byte>30</Byte>
            <Byte>89</Byte>
            <Byte>4D</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[esi+54]</Description>
          <AddressString>trove.exe+69B968</AddressString>
          <Before>
            <Byte>E8</Byte>
            <Byte>18</Byte>
            <Byte>FC</Byte>
            <Byte>FF</Byte>
            <Byte>FF</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>46</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[ebx+54]</Description>
          <AddressString>trove.exe+8CA78A</AddressString>
          <Before>
            <Byte>85</Byte>
            <Byte>27</Byte>
            <Byte>01</Byte>
            <Byte>00</Byte>
            <Byte>00</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>43</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>C1</Byte>
            <Byte>0F</Byte>
            <Byte>86</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[esi+54]</Description>
          <AddressString>trove.exe+69BDE2</AddressString>
          <Before>
            <Byte>E8</Byte>
            <Byte>6E</Byte>
            <Byte>C7</Byte>
            <Byte>FB</Byte>
            <Byte>FF</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>46</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[edi+54]</Description>
          <AddressString>trove.exe+8CAAAC</AddressString>
          <Before>
            <Byte>82</Byte>
            <Byte>B4</Byte>
            <Byte>00</Byte>
            <Byte>00</Byte>
            <Byte>00</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>47</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss [edx+18],xmm2</Description>
          <AddressString>trove.exe+3B086B</AddressString>
          <Before>
            <Byte>7B</Byte>
            <Byte>0E</Byte>
            <Byte>8B</Byte>
            <Byte>4A</Byte>
            <Byte>10</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>11</Byte>
            <Byte>52</Byte>
            <Byte>18</Byte>
          </Actual>
          <After>
            <Byte>52</Byte>
            <Byte>8B</Byte>
            <Byte>01</Byte>
            <Byte>FF</Byte>
            <Byte>50</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss [edx+18],xmm1</Description>
          <AddressString>trove.exe+56576F</AddressString>
          <Before>
            <Byte>00</Byte>
            <Byte>00</Byte>
            <Byte>8B</Byte>
            <Byte>4A</Byte>
            <Byte>10</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>11</Byte>
            <Byte>4A</Byte>
            <Byte>18</Byte>
          </Actual>
          <After>
            <Byte>52</Byte>
            <Byte>8B</Byte>
            <Byte>01</Byte>
            <Byte>FF</Byte>
            <Byte>50</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[eax+54]</Description>
          <AddressString>trove.exe+506AC1</AddressString>
          <Before>
            <Byte>00</Byte>
            <Byte>85</Byte>
            <Byte>C0</Byte>
            <Byte>74</Byte>
            <Byte>0E</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>40</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[eax+54]</Description>
          <AddressString>trove.exe+9FA14</AddressString>
          <Before>
            <Byte>E8</Byte>
            <Byte>EC</Byte>
            <Byte>AD</Byte>
            <Byte>5F</Byte>
            <Byte>00</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>40</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
      </CheatCodes>
      <UserdefinedSymbols/>
      <LuaScript>getAutoAttachList().add("trove.exe") --attach to trove
    
    function createTRadioButton(Parent)
    local box = createComponentClass('TRadioButton', Parent)
    box.Parent = Parent
    return box
    end
    
    function skip() --performs the skip
      local xcoord=readFloat("[[[[[trove.exe+00ECEEF0]+0]+28]+C4]+4]+60") --Loading in the current xyz coords
      local ycoord=readFloat("[[[[[trove.exe+00ECEEF0]+0]+28]+C4]+4]+64")
      local zcoord=readFloat("[[[[[trove.exe+00ECEEF0]+0]+28]+C4]+4]+68")
      local xper=readFloat("[[[[[trove.exe+00ECEEF0]+4]+24]+84]+0]+100")
      local yper=readFloat("[[[[[trove.exe+00ECEEF0]+4]+24]+84]+0]+104")
      local zper=readFloat("[[[[[trove.exe+00ECEEF0]+4]+24]+84]+0]+108")
      local xadd=xper*main.skipdist.text
      local yadd=yper*main.skipdist.text
      local zadd=zper*main.skipdist.text
      local xdest=xcoord+xadd --calculating the new xyz coords
      local ydest=ycoord+yadd
      local zdest=zcoord+zadd
      writeFloat("[[[[[trove.exe+00ECEEF0]+0]+28]+C4]+4]+60",xdest) --Writes speed values
      writeFloat("[[[[[trove.exe+00ECEEF0]+0]+28]+C4]+4]+64",ydest)
      writeFloat("[[[[[trove.exe+00ECEEF0]+0]+28]+C4]+4]+68",zdest)
    end
    
    function speedenableChange() --turns on and off speedhack
      if main.speedenable.checked==true then
         if main.stogs.checked==true then
           speedhack_setSpeed(main.speeds.text)
         else
           speedhack_setSpeed(main.speedf.text)
         end
      else
        speedhack_setSpeed'1'
      end
    end
    
    function togglespeed() --speedhack toggle for hotkey
      if main.speedenable.checked==true then
        main.speedenable.checked=false
      else
        main.speedenable.checked=true
      end
    end
    
    function jump() --boosts jumps for superjump
      if main.superjump.checked==true then
        writeFloat("[[[[[trove.exe+00FFB014]+0]+28]+C4]+4]+94",15)
      end
    end
    
    function switchspeed() --toggles between speeds for speedhack
    if main.stogs.checked==true then
      main.stogs.checked=false
      main.stogf.checked=true
    else
      main.stogs.checked=true
      main.stogf.checked=false
    end
    speedenableChange()
    end
    
    function elockChange() --turns on and off energy lock script
    if main.elock.checked==false then
      etimer.Enabled = false
    else
        efreezeval = readFloat("[[[[[trove.exe+00E61A2C]+0]+28]+18C]+610]+70")
        etimers()
    end
    end
    
    function etimers() --energy lock timer
    etimer = createTimer(getMainForm(),true)
    timer_setInterval(etimer,100)
    timer_onTimer(etimer, setener)
    end
    
    function setener(sender) --sets energy value when energy lock timer ticks
    writeFloat("[[[[[trove.exe+00EB7D78]+0]+28]+C4]+170]+70",efreezeval)
    end
    
    jumpkey = createHotkey("jump",VK_SPACE) --superjump hotkey
    speedokey = createHotkey("togglespeed",VK_5) --speedhack on/off hotkey
    speedtkey = createHotkey("switchspeed",VK_4) --speedhack toggle hotkey
    skipkey = createHotkey("skip",VK_3) --skip hotkey
    
    function close() --on close for form
    if etimer ~= nil then
      etimer.destroy()
    end
    closeCE()
    return caFree
    end
    
    
    function showhelp() --creates help form
    help=createForm(true)
    help.borderstyle=bsToolWindow
    help.height=400
    help.width=520
    help.caption="Help"
    help.title=createLabel(help)
    help.title.caption="TRMrecmrec"
    help.title.left=236
    help.title.top=15
    help.structbox=createGroupBox(help)
    help.structbox.height=350
    help.structbox.caption=""
    help.structbox.left=10
    help.structbox.top=40
    help.structbox.width=500
    help.structbox.speedtext=createLabel(help.structbox)
    help.structbox.speedtext.caption=[[Speedhack:
    This accellerates the game speed.
    Attacks seem faster, but damage is dealt on the server side, so no extra damage is done.
    You can set 2 speeds to toggle between them.
    Lower speeds are harder to detect by other players.
    This feature can also be controlled with hotkeys 5 (on/off) and 3 (toggle speed)]]
    help.structbox.speedtext.left=15
    help.structbox.speedtext.top=215
    help.structbox.jumptext=createLabel(help.structbox)
    help.structbox.jumptext.caption=[[Superjump:
    Superjump gives your jump more umpf.
    With superjump you can also hold the space key and it allows you to fly up.]]
    help.structbox.jumptext.left=15
    help.structbox.jumptext.top=155
    help.structbox.energytext=createLabel(help.structbox)
    help.structbox.energytext.caption=[[Energy Lock:
    This freezes the client side value for the energy.
    This feature is only useful for back rolling with the Neon Ninja.]]
    help.structbox.energytext.left=15
    help.structbox.energytext.top=95
    help.structbox.skiptext=createLabel(help.structbox)
    help.structbox.skiptext.caption=[[Skipping:
    To skip (teleport) press 3.
    The skip distance is the distance you will travel when you skip.
    Setting a skip distance too low will not teleport you far enough to pass through a wall.
    Setting a skip distance too high will get corrected with the server value.]]
    help.structbox.skiptext.left=15
    help.structbox.skiptext.top=5
    help.centerScreen()
    help.OnClose = hidehelp
    end
    
    function hidehelp() --closes help form
    help.destroy()
    end
    
    
    
    main=createForm(true)
    main.borderstyle=bsToolWindow
    main.height=205
    main.width=142
    main.caption="TRM"
    main.top=115
    main.left=342
    main.skiptext=createLabel(main)
    main.skiptext.caption="Skip Distance"
    main.skiptext.left=16
    main.skiptext.top=10
    main.skipdist=createEdit(main)
    main.skipdist.text="3"
    main.skipdist.left=103
    main.skipdist.top=8
    main.skipdist.width=24
    main.speedtext=createLabel(main)
    main.speedtext.caption="Speedhack"
    main.speedtext.left=29
    main.speedtext.top=100
    main.speedenable=createCheckBox(main)
    main.speedenable.caption=nil
    main.speedenable.checked=false
    main.speedenable.left=108
    main.speedenable.top=100
    main.speedenable.OnChange=speedenableChange
    main.elocktext=createLabel(main)
    main.elocktext.caption="Energy Lock"
    main.elocktext.left=22
    main.elocktext.top=40
    main.elock=createCheckBox(main)
    main.elock.caption=nil
    main.elock.checked=false
    main.elock.left=108
    main.elock.top=40
    main.elock.OnChange=elockChange
    main.jumptext=createLabel(main)
    main.jumptext.caption="Superjump"
    main.jumptext.left=28
    main.jumptext.top=70
    main.superjump=createCheckBox(main)
    main.superjump.caption=nil
    main.superjump.checked=false
    main.superjump.left=108
    main.superjump.top=70
    main.stogs=createTRadioButton(main)
    main.stogs.caption=nil
    main.stogs.checked=false
    main.stogs.left=20
    main.stogs.top=130
    main.stogs.OnChange=speedenableChange
    main.stogf=createTRadioButton(main)
    main.stogf.caption=nil
    main.stogf.checked=false
    main.stogf.left=80
    main.stogf.top=130
    main.stogf.OnChange=speedenableChange
    main.speedf=createEdit(main)
    main.speedf.text="2"
    main.speedf.left=95
    main.speedf.top=128
    main.speedf.width=28
    main.speeds=createEdit(main)
    main.speeds.text="1.5"
    main.speeds.left=35
    main.speeds.top=128
    main.speeds.width=28
    main.helpbutton=createButton(main)
    main.helpbutton.caption="Help"
    main.helpbutton.top=170
    main.helpbutton.left=53
    main.helpbutton.height=24
    main.helpbutton.width=40
    main.helpbutton.OnClick=showhelp
    main.OnClose = close
    --TRAINERGENERATORSTART--
    --This is autogenerated code. Changing code in this block will
    --get erased and rewritten if you regenerate the trainer code
    
    --Uncomment the following line if this is a Cheat Table format trainer and you don't want CE to show (Tip, save as .CETRAINER alternatively)
    --hideAllCEWindows()
    
    RequiredCEVersion=6.83
    if (getCEVersion==nil) or (getCEVersion()<RequiredCEVersion) then
      messageDialog('Please install Cheat Engine '..RequiredCEVersion, mtError, mbOK)
      closeCE()
    end
    addresslist=getAddressList()
    memrec0=addresslist.getMemoryRecordByID(0)
    memrec1=addresslist.getMemoryRecordByID(1)
    memrec8=addresslist.getMemoryRecordByID(8)
    memrec2=addresslist.getMemoryRecordByID(2)
    memrec7=addresslist.getMemoryRecordByID(7)
    memrec54=addresslist.getMemoryRecordByID(54)
    memrec56=addresslist.getMemoryRecordByID(56)
    
    memrec56_hotkey0=memrec56.getHotkeyByID(0)
    memrec0_hotkey0=memrec0.getHotkeyByID(0)
    memrec0_hotkey1=memrec0.getHotkeyByID(1)
    memrec54_hotkey0=memrec54.getHotkeyByID(0)
    memrec54_hotkey1=memrec54.getHotkeyByID(1)
    memrec1_hotkey0=memrec1.getHotkeyByID(0)
    memrec1_hotkey1=memrec1.getHotkeyByID(1)
    memrec8_hotkey0=memrec8.getHotkeyByID(0)
    memrec2_hotkey0=memrec2.getHotkeyByID(0)
    memrec7_hotkey0=memrec7.getHotkeyByID(0)
    memrec7_hotkey1=memrec7.getHotkeyByID(1)
    
    function onPostHotkey0(Hotkey)
      --Executed after the "toggle*" cheat got executed
      local memrec=Hotkey.Owner
      local isActive=memrec.Active --get the state after the hotkey got triggered
      CETrainer.CHEAT0.setActive(isActive) --gui update, nothing else
      if gPlaySoundOnAction then
        if isActive then
          playSound(gActivateSound)
        else
          playSound(gDeactivateSound)
        end
      end
    end
    
    memrec56_hotkey0.onPostHotkey=onPostHotkey0
    
    function onHotkey1(Hotkey)
      --Executed before the hotkey is handled
      CETrainer.CHEAT1.setActive(true, 1500)
      if gPlaySoundOnAction then
        playSound(gActivateSound)
      end
    end
    
    memrec0_hotkey0.onHotkey=onHotkey1
    function onHotkey2(Hotkey)
      --Executed before the hotkey is handled
      CETrainer.CHEAT2.setActive(true, 1500)
      if gPlaySoundOnAction then
        playSound(gDeactivateSound)
      end
    end
    
    memrec0_hotkey1.onHotkey=onHotkey2
    function onHotkey3(Hotkey)
      --Executed before the hotkey is handled
      CETrainer.CHEAT3.setActive(true, 1500)
      if gPlaySoundOnAction then
        playSound(gActivateSound)
      end
    end
    
    memrec54_hotkey0.onHotkey=onHotkey3
    function onHotkey4(Hotkey)
      --Executed before the hotkey is handled
      CETrainer.CHEAT4.setActive(true, 1500)
      if gPlaySoundOnAction then
        playSound(gActivateSound)
      end
    end
    
    memrec54_hotkey1.onHotkey=onHotkey4
    function onHotkey5(Hotkey)
      --Executed before the hotkey is handled
      CETrainer.CHEAT5.setActive(true, 1500)
      if gPlaySoundOnAction then
        playSound(gActivateSound)
      end
    end
    
    memrec1_hotkey0.onHotkey=onHotkey5
    function onHotkey6(Hotkey)
      --Executed before the hotkey is handled
      CETrainer.CHEAT6.setActive(true, 1500)
      if gPlaySoundOnAction then
        playSound(gDeactivateSound)
      end
    end
    
    memrec1_hotkey1.onHotkey=onHotkey6
    function onPostHotkey7(Hotkey)
      --Executed after the "toggle*" cheat got executed
      local memrec=Hotkey.Owner
      local isActive=memrec.Active --get the state after the hotkey got triggered
      CETrainer.CHEAT7.setActive(isActive) --gui update, nothing else
      if gPlaySoundOnAction then
        if isActive then
          playSound(gActivateSound)
        else
          playSound(gDeactivateSound)
        end
      end
    end
    
    memrec8_hotkey0.onPostHotkey=onPostHotkey7
    
    function onHotkey8(Hotkey)
      --Executed before the hotkey is handled
      CETrainer.CHEAT8.setActive(true, 1500)
      if gPlaySoundOnAction then
        playSound(gActivateSound)
      end
    end
    
    memrec2_hotkey0.onHotkey=onHotkey8
    function onPostHotkey9(Hotkey)
      --Executed after the "toggle*" cheat got executed
      local memrec=Hotkey.Owner
      local isActive=memrec.Active --get the state after the hotkey got triggered
      CETrainer.CHEAT9.setActive(isActive) --gui update, nothing else
      if gPlaySoundOnAction then
        if isActive then
          playSound(gActivateSound)
        else
          playSound(gDeactivateSound)
        end
      end
    end
    
    memrec7_hotkey0.onPostHotkey=onPostHotkey9
    
    function onHotkey10(Hotkey)
      --Executed before the hotkey is handled
      CETrainer.CHEAT10.setActive(true, 1500)
      if gPlaySoundOnAction then
        playSound(gActivateSound)
      end
    end
    
    memrec7_hotkey1.onHotkey=onHotkey10
    CETrainer.SEPERATOR.Visible=false
    
    getAutoAttachList().add("Trove.exe")
    gPlaySoundOnAction=false
    CETrainer.show()
    function AboutClick()
      showMessage(gAboutText)
    end
    gAboutText=[[This trainer was made using Cheat 
    Engine
    
    By Hax4lifebb]]
    
    function CloseClick()
      --called by the close button onClick event, and when closing the form
      closeCE()
      return caFree --onClick doesn't care, but onClose would like a result
    end
    
    --TRAINERGENERATORSTOP--
    </LuaScript>
      <DisassemblerComments>
        <DisassemblerComment>
          <Address>26BA7D0C</Address>
          <Comment>lembrar
    </Comment>
        </DisassemblerComment>
      </DisassemblerComments>
    </CheatTable>

    https://prntscr.com/nt7i0v ?????????????
    Last edited by Prostak1; 05-25-2019 at 08:33 AM.

  5. #19
    douky70's Avatar
    Join Date
    Aug 2012
    Gender
    male
    Posts
    6
    Reputation
    10
    Thanks
    0
    Quote Originally Posted by hax4lifebb View Post
    Sorry, i forget to add the trove.exe as process name so here the ct table:


    (Save it as ct)

    Code:
    <?xml version="1.0" encoding="utf-8"?>
    <CheatTable CheatEngineTableVersion="28">
      <Forms>
        <CETrainer Class="TTrainerForm" Encoding="Ascii85">(6mxN,cp%1X)[h.)wQKeAe,GGqDZrv^7$lqENfyT=#QqhG_i5duE*g4qC=R$NuD9-Tl6+Z0s+?1YxEIHOB!1mGXb:TyD{,{m+,c2+Ot2n2.uR])M@mwp)+ea#ut_7m$Mrqm/fH-=hJsQ(4vDFOUG:fTdnr+G!{FHWy_o$Qc#w5,L+HoxalPnQn6X=6!XpMAoUWKfnnz#??8}yj#*/6C5)e53nLDYdU6YJ/Y3PamkAYeVuk,LpSU:f/eIc*U6O[hMOqsnQ+IlR6cXEiizn^bJ?rS$CiIO;%eI?*v)*I2WWCPr!38A4R2pDd)}A,i1P+a:HCTz-*$ajoOB0i6z,;QA3t3WDZzTjv9k(.{!M!(a2d9NFtrVu,(Hc=vf3;6)W_E{G/kp4ht@@C_C$P50yHmCjxwFzu![KFLvzyaV.mUA9(Y)T}(3*z9(),?-hG?Iz7Cc5MIEZL(p^l;$z._*Q-/8@5^VTd(?4L@+SF{}G/.RW46cT3..Me^iBe!;To[%H8VSb!ls^du/O:rNwIec],gv.t4OBgrNw(Jb6A9_DF7!QNfO4)Rl[TILvKbt]$u9d9;=2UrZuLk[O9]NES.A6v0qdDW5W0LbCVx-Er:$cK(mF{r#,;r=Z5uH4jBc)[8%Sir4hPPgODmPjfK8R;dVOUYphZ$KV!t!G)E[0D[X:BGqR{0]Y;K-_L$RbV*b/T-w,E38MbOCm.G_AiTu)B$?@3HN2K]*4a+gPzU?=LRvJ4z/9(B8gmEQ)n6fMjbKJ?(zL/X9=;(Zly64fUZC*!jvHHAj6_L.dMWfA:jXANK/LND2FH7glQy]:_yhiOAk?A1iUQU0l66=(Es4!(LtIkZg_,?*H%T^u%Ak-e@wyq*yw1ebYWw)+C8OZ8xWVTBE)Q;DysCqbZexK8w%x!}IOj^YAmuY0mwu#)lTa!v6#EV/q]N3UZ?4]EiZ;cDMwHyZ7.(X5AU)nfP?t$j[C=_0/Bp:E%:$$Ok2I2oX!.^ouY).%?#hRB*}4xG)D8VB3WG52rPX7Z2r2mj1H;+KUscK$-3dTX8Y{VY}=a2L</CETrainer>
      </Forms>
      <CheatEntries>
        <CheatEntry>
          <ID>0</ID>
          <Description>"Xray"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]
    aobscanmodule(INJECT,trove.exe, B8 03 02 00 00 c3)
    label(return)
    INJECT:
      db B8 07 02 00 00
    return:
    registersymbol(INJECT)
    [DISABLE]
    INJECT:
      db B8 03 02 00 00
    unregistersymbol(INJECT)
    </AssemblerScript>
          <Hotkeys>
            <Hotkey>
              <Action>Activate</Action>
              <Keys>
                <Key>97</Key>
              </Keys>
              <Description>Activate Xray</Description>
              <ID>0</ID>
            </Hotkey>
            <Hotkey>
              <Action>Deactivate</Action>
              <Keys>
                <Key>98</Key>
              </Keys>
              <Description>Deactivate Xray</Description>
              <ID>1</ID>
            </Hotkey>
          </Hotkeys>
        </CheatEntry>
        <CheatEntry>
          <ID>1</ID>
          <Description>"Dodge"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]
    
    aobscanmodule(DODGE,trove.exe,DF F1 DD D8 73 12 56) // should be unique
    alloc(newmem,$1000)
    
    label(code)
    label(return)
    
    newmem:
    
    code:
    fcomip st(0),st(1)
    fstp st(0)
    jae trove.exe+56E4C9
    jmp return
    
    DODGE:
    fcomip st(0),st(0)
    return:
    registersymbol(DODGE)
    
    [DISABLE]
    
    DODGE:
    db DF F1 DD D8 73 12
    
    unregistersymbol(DODGE)
    dealloc(newmem)
    
    {
    // ORIGINAL CODE - INJECTION POINT: "trove.exe"+56E4B1
    
    "trove.exe"+56E494: DD 5A 18 - fstp qword ptr [edx+18]
    "trove.exe"+56E497: 52 - push edx
    "trove.exe"+56E498: 8B 01 - mov eax,[ecx]
    "trove.exe"+56E49A: FF 50 04 - call dword ptr [eax+04]
    "trove.exe"+56E49D: D9 EE - fldz
    "trove.exe"+56E49F: DD 83 E0 00 00 00 - fld qword ptr [ebx+000000E0]
    "trove.exe"+56E4A5: DF F1 - fcomip st(0),st(1)
    "trove.exe"+56E4A7: 76 1E - jna trove.exe+56E4C7
    "trove.exe"+56E4A9: DD 83 E0 00 00 00 - fld qword ptr [ebx+000000E0]
    "trove.exe"+56E4AF: D9 C9 - fxch st(1)
    // ---------- INJECTING HERE ----------
    "trove.exe"+56E4B1: DF F1 - fcomip st(0),st(1)
    "trove.exe"+56E4B3: DD D8 - fstp st(0)
    "trove.exe"+56E4B5: 73 12 - jae trove.exe+56E4C9
    // ---------- DONE INJECTING ----------
    "trove.exe"+56E4B7: 56 - push esi
    "trove.exe"+56E4B8: E8 C3 58 F7 FF - call trove.exe+4E3D80
    "trove.exe"+56E4BD: 83 C4 04 - add esp,04
    "trove.exe"+56E4C0: 8B F0 - mov esi,eax
    "trove.exe"+56E4C2: E9 F3 00 00 00 - jmp trove.exe+56E5BA
    "trove.exe"+56E4C7: DD D8 - fstp st(0)
    "trove.exe"+56E4C9: 8B CF - mov ecx,edi
    "trove.exe"+56E4CB: E8 F0 24 0F 00 - call trove.exe+6609C0
    "trove.exe"+56E4D0: 84 C0 - test al,al
    "trove.exe"+56E4D2: 0F 84 8E 00 00 00 - je trove.exe+56E566
    }
    </AssemblerScript>
          <Hotkeys>
            <Hotkey>
              <Action>Activate</Action>
              <Keys>
                <Key>101</Key>
              </Keys>
              <Description>Activate Infinite Dodge</Description>
              <ID>0</ID>
            </Hotkey>
            <Hotkey>
              <Action>Deactivate</Action>
              <Keys>
                <Key>102</Key>
              </Keys>
              <Description>Deactivate Infinite Dodge</Description>
              <ID>1</ID>
            </Hotkey>
          </Hotkeys>
        </CheatEntry>
        <CheatEntry>
          <ID>8</ID>
          <Description>"Speed"</Description>
          <Options moHideChildren="1" moActivateChildrenAsWell="1" moDeactivateChildrenAsWell="1"/>
          <LastState Value="" RealAddress="00000000"/>
          <GroupHeader>1</GroupHeader>
          <Hotkeys>
            <Hotkey>
              <Action>Toggle Activation</Action>
              <Keys>
                <Key>103</Key>
              </Keys>
              <Description>Speed (This first)</Description>
              <ID>0</ID>
            </Hotkey>
          </Hotkeys>
          <CheatEntries>
            <CheatEntry>
              <ID>2</ID>
              <Description>"Speed"</Description>
              <LastState Value="12" RealAddress="3CE406CE"/>
              <VariableType>Byte</VariableType>
              <Address>"trove.exe"+00ECEEF0</Address>
              <Offsets>
                <Offset>F2</Offset>
                <Offset>10</Offset>
                <Offset>24</Offset>
                <Offset>8</Offset>
                <Offset>68</Offset>
                <Offset>90</Offset>
                <Offset>190</Offset>
                <Offset>58</Offset>
              </Offsets>
              <Hotkeys>
                <Hotkey>
                  <Action>Set Value</Action>
                  <Keys>
                    <Key>104</Key>
                  </Keys>
                  <Value>12</Value>
                  <Description>Speed (Second)</Description>
                  <ID>0</ID>
                </Hotkey>
              </Hotkeys>
            </CheatEntry>
            <CheatEntry>
              <ID>7</ID>
              <Description>"Speed when shooting"</Description>
              <LastState Value="217" RealAddress="3CE406CF"/>
              <VariableType>Byte</VariableType>
              <Address>"trove.exe"+00ECEEF0</Address>
              <Offsets>
                <Offset>F3</Offset>
                <Offset>10</Offset>
                <Offset>24</Offset>
                <Offset>8</Offset>
                <Offset>68</Offset>
                <Offset>90</Offset>
                <Offset>190</Offset>
                <Offset>58</Offset>
              </Offsets>
              <Hotkeys>
                <Hotkey>
                  <Action>Toggle Activation</Action>
                  <Keys>
                    <Key>105</Key>
                  </Keys>
                  <Description>Speed (Third)</Description>
                  <ID>0</ID>
                </Hotkey>
                <Hotkey>
                  <Action>Set Value</Action>
                  <Keys>
                    <Key>106</Key>
                  </Keys>
                  <Value>217</Value>
                  <Description>Speed (Fourth)</Description>
                  <ID>1</ID>
                </Hotkey>
              </Hotkeys>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>54</ID>
          <Description>"Time"</Description>
          <LastState Value="7.33209361147692" RealAddress="2EE0F778"/>
          <VariableType>Double</VariableType>
          <Address>"trove.exe"+00ECEE60</Address>
          <Offsets>
            <Offset>178</Offset>
            <Offset>14</Offset>
            <Offset>0</Offset>
            <Offset>14</Offset>
            <Offset>0</Offset>
            <Offset>12C</Offset>
          </Offsets>
          <Hotkeys>
            <Hotkey>
              <Action>Increase Value</Action>
              <Keys>
                <Key>99</Key>
              </Keys>
              <Value>1</Value>
              <Description>Increase Time</Description>
              <ID>0</ID>
            </Hotkey>
            <Hotkey>
              <Action>Decrease Value</Action>
              <Keys>
                <Key>100</Key>
              </Keys>
              <Value>1</Value>
              <Description>Decrease Time</Description>
              <ID>1</ID>
            </Hotkey>
          </Hotkeys>
        </CheatEntry>
        <CheatEntry>
          <ID>56</ID>
          <Description>"Freeze time"</Description>
          <LastState/>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>{ Game   : trove.exe
      Version: 
      Date   : 2019-05-18
      Author : zViinin_
    
      This script does blah blah blah
    }
    
    [ENABLE]
    
    aobscanmodule(More,trove.exe,DD 5E 18 56 8B 01 FF 50 04 DD) // should be unique
    alloc(newmem,$1000)
    
    label(code)
    label(return)
    
    newmem:
    
    code:
      fstp qword ptr [esi-18] //fstp qword ptr [esi+18]
      push esi
      mov eax,[ecx]
      jmp return
    
    More:
      jmp newmem
      nop
    return:
    registersymbol(More)
    
    [DISABLE]
    
    More:
      db DD 5E 18 56 8B 01
    
    unregistersymbol(More)
    dealloc(newmem)
    
    {
    // ORIGINAL CODE - INJECTION POINT: "trove.exe"+C6C97
    
    "trove.exe"+C6C7F: D9 C9              -  fxch st(1)
    "trove.exe"+C6C81: DC 77 60           -  fdiv qword ptr [edi+60]
    "trove.exe"+C6C84: DC 46 18           -  fadd qword ptr [esi+18]
    "trove.exe"+C6C87: DD 46 18           -  fld qword ptr [esi+18]
    "trove.exe"+C6C8A: DF E9              -  fucomip st(0),st(1)
    "trove.exe"+C6C8C: 9F                 -  lahf 
    "trove.exe"+C6C8D: F6 C4 44           -  test ah,44
    "trove.exe"+C6C90: 7B 16              -  jnp trove.exe+C6CA8
    "trove.exe"+C6C92: 8B 4E 10           -  mov ecx,[esi+10]
    "trove.exe"+C6C95: DD D9              -  fstp st(1)
    // ---------- INJECTING HERE ----------
    "trove.exe"+C6C97: DD 5E 18           -  fstp qword ptr [esi+18]
    "trove.exe"+C6C9A: 56                 -  push esi
    "trove.exe"+C6C9B: 8B 01              -  mov eax,[ecx]
    // ---------- DONE INJECTING  ----------
    "trove.exe"+C6C9D: FF 50 04           -  call dword ptr [eax+04]
    "trove.exe"+C6CA0: DD 05 C8 02 D8 00  -  fld qword ptr [trove.exe+C102C8]
    "trove.exe"+C6CA6: EB 02              -  jmp trove.exe+C6CAA
    "trove.exe"+C6CA8: DD D8              -  fstp st(0)
    "trove.exe"+C6CAA: DD 87 A0 00 00 00  -  fld qword ptr [edi+000000A0]
    "trove.exe"+C6CB0: DF F1              -  fcomip st(0),st(1)
    "trove.exe"+C6CB2: 72 40              -  jb trove.exe+C6CF4
    "trove.exe"+C6CB4: DC 6E 18           -  fsubr qword ptr [esi+18]
    "trove.exe"+C6CB7: DD 46 18           -  fld qword ptr [esi+18]
    "trove.exe"+C6CBA: DF E9              -  fucomip st(0),st(1)
    }
    </AssemblerScript>
          <Hotkeys>
            <Hotkey>
              <Action>Toggle Activation</Action>
              <Keys>
                <Key>96</Key>
              </Keys>
              <Description>Freeze Time</Description>
              <ID>0</ID>
            </Hotkey>
          </Hotkeys>
        </CheatEntry>
      </CheatEntries>
      <CheatCodes>
        <CodeEntry>
          <Description>Change of mov [esi+00000308],eax</Description>
          <AddressString>trove.exe+8CAD6D</AddressString>
          <Before>
            <Byte>5F</Byte>
            <Byte>B3</Byte>
            <Byte>FF</Byte>
            <Byte>8B</Byte>
            <Byte>CE</Byte>
          </Before>
          <Actual>
            <Byte>89</Byte>
            <Byte>86</Byte>
            <Byte>08</Byte>
            <Byte>03</Byte>
            <Byte>00</Byte>
            <Byte>00</Byte>
          </Actual>
          <After>
            <Byte>E8</Byte>
            <Byte>C8</Byte>
            <Byte>11</Byte>
            <Byte>DD</Byte>
            <Byte>FF</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[esi+54]</Description>
          <AddressString>trove.exe+3B071A</AddressString>
          <Before>
            <Byte>84</Byte>
            <Byte>5C</Byte>
            <Byte>01</Byte>
            <Byte>00</Byte>
            <Byte>00</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>46</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of cvttss2si eax,[ecx+54]</Description>
          <AddressString>trove.exe+400D60</AddressString>
          <Before>
            <Byte>CC</Byte>
            <Byte>CC</Byte>
            <Byte>CC</Byte>
            <Byte>CC</Byte>
            <Byte>CC</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>2C</Byte>
            <Byte>41</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>C3</Byte>
            <Byte>CC</Byte>
            <Byte>CC</Byte>
            <Byte>CC</Byte>
            <Byte>CC</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[ebx+54]</Description>
          <AddressString>trove.exe+79C56F</AddressString>
          <Before>
            <Byte>46</Byte>
            <Byte>44</Byte>
            <Byte>02</Byte>
            <Byte>74</Byte>
            <Byte>2A</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>43</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[eax+54]</Description>
          <AddressString>trove.exe+6B2CD0</AddressString>
          <Before>
            <Byte>FF</Byte>
            <Byte>85</Byte>
            <Byte>C0</Byte>
            <Byte>74</Byte>
            <Byte>69</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>40</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[esi+54]</Description>
          <AddressString>trove.exe+10D270</AddressString>
          <Before>
            <Byte>D5</Byte>
            <Byte>58</Byte>
            <Byte>00</Byte>
            <Byte>8B</Byte>
            <Byte>D8</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>46</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[esi+54]</Description>
          <AddressString>trove.exe+8CAD88</AddressString>
          <Before>
            <Byte>3B</Byte>
            <Byte>D0</Byte>
            <Byte>0F</Byte>
            <Byte>4F</Byte>
            <Byte>D0</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>46</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>83</Byte>
            <Byte>C6</Byte>
            <Byte>3C</Byte>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss [esi+18],xmm1</Description>
          <AddressString>trove.exe+8CADA0</AddressString>
          <Before>
            <Byte>7B</Byte>
            <Byte>0E</Byte>
            <Byte>8B</Byte>
            <Byte>4E</Byte>
            <Byte>10</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>11</Byte>
            <Byte>4E</Byte>
            <Byte>18</Byte>
          </Actual>
          <After>
            <Byte>56</Byte>
            <Byte>8B</Byte>
            <Byte>01</Byte>
            <Byte>FF</Byte>
            <Byte>50</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[edx+18]</Description>
          <AddressString>trove.exe+56575A</AddressString>
          <Before>
            <Byte>4D</Byte>
            <Byte>FC</Byte>
            <Byte>8B</Byte>
            <Byte>51</Byte>
            <Byte>08</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>42</Byte>
            <Byte>18</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2E</Byte>
            <Byte>C1</Byte>
            <Byte>9F</Byte>
            <Byte>F6</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of fadd dword ptr [esi+54]</Description>
          <AddressString>trove.exe+3B07D3</AddressString>
          <Before>
            <Byte>DC</Byte>
            <Byte>4D</Byte>
            <Byte>F0</Byte>
            <Byte>8B</Byte>
            <Byte>CE</Byte>
          </Before>
          <Actual>
            <Byte>D8</Byte>
            <Byte>46</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>DD</Byte>
            <Byte>55</Byte>
            <Byte>E8</Byte>
            <Byte>D9</Byte>
            <Byte>5D</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[edx+18]</Description>
          <AddressString>trove.exe+3B0856</AddressString>
          <Before>
            <Byte>C3</Byte>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>5F</Byte>
            <Byte>D0</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>42</Byte>
            <Byte>18</Byte>
          </Actual>
          <After>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>5D</Byte>
            <Byte>D1</Byte>
            <Byte>0F</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of cvttss2si ecx,[esi+54]</Description>
          <AddressString>trove.exe+69B8D9</AddressString>
          <Before>
            <Byte>02</Byte>
            <Byte>3B</Byte>
            <Byte>F8</Byte>
            <Byte>72</Byte>
            <Byte>D7</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>2C</Byte>
            <Byte>4E</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>8B</Byte>
            <Byte>46</Byte>
            <Byte>30</Byte>
            <Byte>89</Byte>
            <Byte>4D</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[esi+54]</Description>
          <AddressString>trove.exe+69B968</AddressString>
          <Before>
            <Byte>E8</Byte>
            <Byte>18</Byte>
            <Byte>FC</Byte>
            <Byte>FF</Byte>
            <Byte>FF</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>46</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[ebx+54]</Description>
          <AddressString>trove.exe+8CA78A</AddressString>
          <Before>
            <Byte>85</Byte>
            <Byte>27</Byte>
            <Byte>01</Byte>
            <Byte>00</Byte>
            <Byte>00</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>43</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>C1</Byte>
            <Byte>0F</Byte>
            <Byte>86</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[esi+54]</Description>
          <AddressString>trove.exe+69BDE2</AddressString>
          <Before>
            <Byte>E8</Byte>
            <Byte>6E</Byte>
            <Byte>C7</Byte>
            <Byte>FB</Byte>
            <Byte>FF</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>46</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[edi+54]</Description>
          <AddressString>trove.exe+8CAAAC</AddressString>
          <Before>
            <Byte>82</Byte>
            <Byte>B4</Byte>
            <Byte>00</Byte>
            <Byte>00</Byte>
            <Byte>00</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>47</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss [edx+18],xmm2</Description>
          <AddressString>trove.exe+3B086B</AddressString>
          <Before>
            <Byte>7B</Byte>
            <Byte>0E</Byte>
            <Byte>8B</Byte>
            <Byte>4A</Byte>
            <Byte>10</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>11</Byte>
            <Byte>52</Byte>
            <Byte>18</Byte>
          </Actual>
          <After>
            <Byte>52</Byte>
            <Byte>8B</Byte>
            <Byte>01</Byte>
            <Byte>FF</Byte>
            <Byte>50</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss [edx+18],xmm1</Description>
          <AddressString>trove.exe+56576F</AddressString>
          <Before>
            <Byte>00</Byte>
            <Byte>00</Byte>
            <Byte>8B</Byte>
            <Byte>4A</Byte>
            <Byte>10</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>11</Byte>
            <Byte>4A</Byte>
            <Byte>18</Byte>
          </Actual>
          <After>
            <Byte>52</Byte>
            <Byte>8B</Byte>
            <Byte>01</Byte>
            <Byte>FF</Byte>
            <Byte>50</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[eax+54]</Description>
          <AddressString>trove.exe+506AC1</AddressString>
          <Before>
            <Byte>00</Byte>
            <Byte>85</Byte>
            <Byte>C0</Byte>
            <Byte>74</Byte>
            <Byte>0E</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>40</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
        <CodeEntry>
          <Description>Change of movss xmm0,[eax+54]</Description>
          <AddressString>trove.exe+9FA14</AddressString>
          <Before>
            <Byte>E8</Byte>
            <Byte>EC</Byte>
            <Byte>AD</Byte>
            <Byte>5F</Byte>
            <Byte>00</Byte>
          </Before>
          <Actual>
            <Byte>F3</Byte>
            <Byte>0F</Byte>
            <Byte>10</Byte>
            <Byte>40</Byte>
            <Byte>54</Byte>
          </Actual>
          <After>
            <Byte>0F</Byte>
            <Byte>2F</Byte>
            <Byte>05</Byte>
            <Byte>78</Byte>
            <Byte>B3</Byte>
          </After>
        </CodeEntry>
      </CheatCodes>
      <UserdefinedSymbols/>
      <LuaScript>getAutoAttachList().add("trove.exe") --attach to trove
    
    function createTRadioButton(Parent)
    local box = createComponentClass('TRadioButton', Parent)
    box.Parent = Parent
    return box
    end
    
    function skip() --performs the skip
      local xcoord=readFloat("[[[[[trove.exe+00ECEEF0]+0]+28]+C4]+4]+60") --Loading in the current xyz coords
      local ycoord=readFloat("[[[[[trove.exe+00ECEEF0]+0]+28]+C4]+4]+64")
      local zcoord=readFloat("[[[[[trove.exe+00ECEEF0]+0]+28]+C4]+4]+68")
      local xper=readFloat("[[[[[trove.exe+00ECEEF0]+4]+24]+84]+0]+100")
      local yper=readFloat("[[[[[trove.exe+00ECEEF0]+4]+24]+84]+0]+104")
      local zper=readFloat("[[[[[trove.exe+00ECEEF0]+4]+24]+84]+0]+108")
      local xadd=xper*main.skipdist.text
      local yadd=yper*main.skipdist.text
      local zadd=zper*main.skipdist.text
      local xdest=xcoord+xadd --calculating the new xyz coords
      local ydest=ycoord+yadd
      local zdest=zcoord+zadd
      writeFloat("[[[[[trove.exe+00ECEEF0]+0]+28]+C4]+4]+60",xdest) --Writes speed values
      writeFloat("[[[[[trove.exe+00ECEEF0]+0]+28]+C4]+4]+64",ydest)
      writeFloat("[[[[[trove.exe+00ECEEF0]+0]+28]+C4]+4]+68",zdest)
    end
    
    function speedenableChange() --turns on and off speedhack
      if main.speedenable.checked==true then
         if main.stogs.checked==true then
           speedhack_setSpeed(main.speeds.text)
         else
           speedhack_setSpeed(main.speedf.text)
         end
      else
        speedhack_setSpeed'1'
      end
    end
    
    function togglespeed() --speedhack toggle for hotkey
      if main.speedenable.checked==true then
        main.speedenable.checked=false
      else
        main.speedenable.checked=true
      end
    end
    
    function jump() --boosts jumps for superjump
      if main.superjump.checked==true then
        writeFloat("[[[[[trove.exe+00FFB014]+0]+28]+C4]+4]+94",15)
      end
    end
    
    function switchspeed() --toggles between speeds for speedhack
    if main.stogs.checked==true then
      main.stogs.checked=false
      main.stogf.checked=true
    else
      main.stogs.checked=true
      main.stogf.checked=false
    end
    speedenableChange()
    end
    
    function elockChange() --turns on and off energy lock script
    if main.elock.checked==false then
      etimer.Enabled = false
    else
        efreezeval = readFloat("[[[[[trove.exe+00E61A2C]+0]+28]+18C]+610]+70")
        etimers()
    end
    end
    
    function etimers() --energy lock timer
    etimer = createTimer(getMainForm(),true)
    timer_setInterval(etimer,100)
    timer_onTimer(etimer, setener)
    end
    
    function setener(sender) --sets energy value when energy lock timer ticks
    writeFloat("[[[[[trove.exe+00EB7D78]+0]+28]+C4]+170]+70",efreezeval)
    end
    
    jumpkey = createHotkey("jump",VK_SPACE) --superjump hotkey
    speedokey = createHotkey("togglespeed",VK_5) --speedhack on/off hotkey
    speedtkey = createHotkey("switchspeed",VK_4) --speedhack toggle hotkey
    skipkey = createHotkey("skip",VK_3) --skip hotkey
    
    function close() --on close for form
    if etimer ~= nil then
      etimer.destroy()
    end
    closeCE()
    return caFree
    end
    
    
    function showhelp() --creates help form
    help=createForm(true)
    help.borderstyle=bsToolWindow
    help.height=400
    help.width=520
    help.caption="Help"
    help.title=createLabel(help)
    help.title.caption="TRMrecmrec"
    help.title.left=236
    help.title.top=15
    help.structbox=createGroupBox(help)
    help.structbox.height=350
    help.structbox.caption=""
    help.structbox.left=10
    help.structbox.top=40
    help.structbox.width=500
    help.structbox.speedtext=createLabel(help.structbox)
    help.structbox.speedtext.caption=[[Speedhack:
    This accellerates the game speed.
    Attacks seem faster, but damage is dealt on the server side, so no extra damage is done.
    You can set 2 speeds to toggle between them.
    Lower speeds are harder to detect by other players.
    This feature can also be controlled with hotkeys 5 (on/off) and 3 (toggle speed)]]
    help.structbox.speedtext.left=15
    help.structbox.speedtext.top=215
    help.structbox.jumptext=createLabel(help.structbox)
    help.structbox.jumptext.caption=[[Superjump:
    Superjump gives your jump more umpf.
    With superjump you can also hold the space key and it allows you to fly up.]]
    help.structbox.jumptext.left=15
    help.structbox.jumptext.top=155
    help.structbox.energytext=createLabel(help.structbox)
    help.structbox.energytext.caption=[[Energy Lock:
    This freezes the client side value for the energy.
    This feature is only useful for back rolling with the Neon Ninja.]]
    help.structbox.energytext.left=15
    help.structbox.energytext.top=95
    help.structbox.skiptext=createLabel(help.structbox)
    help.structbox.skiptext.caption=[[Skipping:
    To skip (teleport) press 3.
    The skip distance is the distance you will travel when you skip.
    Setting a skip distance too low will not teleport you far enough to pass through a wall.
    Setting a skip distance too high will get corrected with the server value.]]
    help.structbox.skiptext.left=15
    help.structbox.skiptext.top=5
    help.centerScreen()
    help.OnClose = hidehelp
    end
    
    function hidehelp() --closes help form
    help.destroy()
    end
    
    
    
    main=createForm(true)
    main.borderstyle=bsToolWindow
    main.height=205
    main.width=142
    main.caption="TRM"
    main.top=115
    main.left=342
    main.skiptext=createLabel(main)
    main.skiptext.caption="Skip Distance"
    main.skiptext.left=16
    main.skiptext.top=10
    main.skipdist=createEdit(main)
    main.skipdist.text="3"
    main.skipdist.left=103
    main.skipdist.top=8
    main.skipdist.width=24
    main.speedtext=createLabel(main)
    main.speedtext.caption="Speedhack"
    main.speedtext.left=29
    main.speedtext.top=100
    main.speedenable=createCheckBox(main)
    main.speedenable.caption=nil
    main.speedenable.checked=false
    main.speedenable.left=108
    main.speedenable.top=100
    main.speedenable.OnChange=speedenableChange
    main.elocktext=createLabel(main)
    main.elocktext.caption="Energy Lock"
    main.elocktext.left=22
    main.elocktext.top=40
    main.elock=createCheckBox(main)
    main.elock.caption=nil
    main.elock.checked=false
    main.elock.left=108
    main.elock.top=40
    main.elock.OnChange=elockChange
    main.jumptext=createLabel(main)
    main.jumptext.caption="Superjump"
    main.jumptext.left=28
    main.jumptext.top=70
    main.superjump=createCheckBox(main)
    main.superjump.caption=nil
    main.superjump.checked=false
    main.superjump.left=108
    main.superjump.top=70
    main.stogs=createTRadioButton(main)
    main.stogs.caption=nil
    main.stogs.checked=false
    main.stogs.left=20
    main.stogs.top=130
    main.stogs.OnChange=speedenableChange
    main.stogf=createTRadioButton(main)
    main.stogf.caption=nil
    main.stogf.checked=false
    main.stogf.left=80
    main.stogf.top=130
    main.stogf.OnChange=speedenableChange
    main.speedf=createEdit(main)
    main.speedf.text="2"
    main.speedf.left=95
    main.speedf.top=128
    main.speedf.width=28
    main.speeds=createEdit(main)
    main.speeds.text="1.5"
    main.speeds.left=35
    main.speeds.top=128
    main.speeds.width=28
    main.helpbutton=createButton(main)
    main.helpbutton.caption="Help"
    main.helpbutton.top=170
    main.helpbutton.left=53
    main.helpbutton.height=24
    main.helpbutton.width=40
    main.helpbutton.OnClick=showhelp
    main.OnClose = close
    --TRAINERGENERATORSTART--
    --This is autogenerated code. Changing code in this block will
    --get erased and rewritten if you regenerate the trainer code
    
    --Uncomment the following line if this is a Cheat Table format trainer and you don't want CE to show (Tip, save as .CETRAINER alternatively)
    --hideAllCEWindows()
    
    RequiredCEVersion=6.83
    if (getCEVersion==nil) or (getCEVersion()<RequiredCEVersion) then
      messageDialog('Please install Cheat Engine '..RequiredCEVersion, mtError, mbOK)
      closeCE()
    end
    addresslist=getAddressList()
    memrec0=addresslist.getMemoryRecordByID(0)
    memrec1=addresslist.getMemoryRecordByID(1)
    memrec8=addresslist.getMemoryRecordByID(8)
    memrec2=addresslist.getMemoryRecordByID(2)
    memrec7=addresslist.getMemoryRecordByID(7)
    memrec54=addresslist.getMemoryRecordByID(54)
    memrec56=addresslist.getMemoryRecordByID(56)
    
    memrec56_hotkey0=memrec56.getHotkeyByID(0)
    memrec0_hotkey0=memrec0.getHotkeyByID(0)
    memrec0_hotkey1=memrec0.getHotkeyByID(1)
    memrec54_hotkey0=memrec54.getHotkeyByID(0)
    memrec54_hotkey1=memrec54.getHotkeyByID(1)
    memrec1_hotkey0=memrec1.getHotkeyByID(0)
    memrec1_hotkey1=memrec1.getHotkeyByID(1)
    memrec8_hotkey0=memrec8.getHotkeyByID(0)
    memrec2_hotkey0=memrec2.getHotkeyByID(0)
    memrec7_hotkey0=memrec7.getHotkeyByID(0)
    memrec7_hotkey1=memrec7.getHotkeyByID(1)
    
    function onPostHotkey0(Hotkey)
      --Executed after the "toggle*" cheat got executed
      local memrec=Hotkey.Owner
      local isActive=memrec.Active --get the state after the hotkey got triggered
      CETrainer.CHEAT0.setActive(isActive) --gui update, nothing else
      if gPlaySoundOnAction then
        if isActive then
          playSound(gActivateSound)
        else
          playSound(gDeactivateSound)
        end
      end
    end
    
    memrec56_hotkey0.onPostHotkey=onPostHotkey0
    
    function onHotkey1(Hotkey)
      --Executed before the hotkey is handled
      CETrainer.CHEAT1.setActive(true, 1500)
      if gPlaySoundOnAction then
        playSound(gActivateSound)
      end
    end
    
    memrec0_hotkey0.onHotkey=onHotkey1
    function onHotkey2(Hotkey)
      --Executed before the hotkey is handled
      CETrainer.CHEAT2.setActive(true, 1500)
      if gPlaySoundOnAction then
        playSound(gDeactivateSound)
      end
    end
    
    memrec0_hotkey1.onHotkey=onHotkey2
    function onHotkey3(Hotkey)
      --Executed before the hotkey is handled
      CETrainer.CHEAT3.setActive(true, 1500)
      if gPlaySoundOnAction then
        playSound(gActivateSound)
      end
    end
    
    memrec54_hotkey0.onHotkey=onHotkey3
    function onHotkey4(Hotkey)
      --Executed before the hotkey is handled
      CETrainer.CHEAT4.setActive(true, 1500)
      if gPlaySoundOnAction then
        playSound(gActivateSound)
      end
    end
    
    memrec54_hotkey1.onHotkey=onHotkey4
    function onHotkey5(Hotkey)
      --Executed before the hotkey is handled
      CETrainer.CHEAT5.setActive(true, 1500)
      if gPlaySoundOnAction then
        playSound(gActivateSound)
      end
    end
    
    memrec1_hotkey0.onHotkey=onHotkey5
    function onHotkey6(Hotkey)
      --Executed before the hotkey is handled
      CETrainer.CHEAT6.setActive(true, 1500)
      if gPlaySoundOnAction then
        playSound(gDeactivateSound)
      end
    end
    
    memrec1_hotkey1.onHotkey=onHotkey6
    function onPostHotkey7(Hotkey)
      --Executed after the "toggle*" cheat got executed
      local memrec=Hotkey.Owner
      local isActive=memrec.Active --get the state after the hotkey got triggered
      CETrainer.CHEAT7.setActive(isActive) --gui update, nothing else
      if gPlaySoundOnAction then
        if isActive then
          playSound(gActivateSound)
        else
          playSound(gDeactivateSound)
        end
      end
    end
    
    memrec8_hotkey0.onPostHotkey=onPostHotkey7
    
    function onHotkey8(Hotkey)
      --Executed before the hotkey is handled
      CETrainer.CHEAT8.setActive(true, 1500)
      if gPlaySoundOnAction then
        playSound(gActivateSound)
      end
    end
    
    memrec2_hotkey0.onHotkey=onHotkey8
    function onPostHotkey9(Hotkey)
      --Executed after the "toggle*" cheat got executed
      local memrec=Hotkey.Owner
      local isActive=memrec.Active --get the state after the hotkey got triggered
      CETrainer.CHEAT9.setActive(isActive) --gui update, nothing else
      if gPlaySoundOnAction then
        if isActive then
          playSound(gActivateSound)
        else
          playSound(gDeactivateSound)
        end
      end
    end
    
    memrec7_hotkey0.onPostHotkey=onPostHotkey9
    
    function onHotkey10(Hotkey)
      --Executed before the hotkey is handled
      CETrainer.CHEAT10.setActive(true, 1500)
      if gPlaySoundOnAction then
        playSound(gActivateSound)
      end
    end
    
    memrec7_hotkey1.onHotkey=onHotkey10
    CETrainer.SEPERATOR.Visible=false
    
    getAutoAttachList().add("Trove.exe")
    gPlaySoundOnAction=false
    CETrainer.show()
    function AboutClick()
      showMessage(gAboutText)
    end
    gAboutText=[[This trainer was made using Cheat 
    Engine
    
    By Hax4lifebb]]
    
    function CloseClick()
      --called by the close button onClick event, and when closing the form
      closeCE()
      return caFree --onClick doesn't care, but onClose would like a result
    end
    
    --TRAINERGENERATORSTOP--
    </LuaScript>
      <DisassemblerComments>
        <DisassemblerComment>
          <Address>26BA7D0C</Address>
          <Comment>lembrar
    </Comment>
        </DisassemblerComment>
      </DisassemblerComments>
    </CheatTable>
    Thx, that work fine ^ o ^

  6. #20
    MrJonGamers's Avatar
    Join Date
    Jul 2014
    Gender
    male
    Posts
    6
    Reputation
    10
    Thanks
    0
    Та же фигня, решил как-нибудь?

  7. #21
    Prostak1's Avatar
    Join Date
    Oct 2015
    Gender
    male
    Location
    Belarus, Minsk
    Posts
    8
    Reputation
    10
    Thanks
    0
    My Mood
    Amazed
    Quote Originally Posted by douky70 View Post
    Thx, that work fine ^ o ^
    no it doesn't work

  8. #22
    iKumae's Avatar
    Join Date
    Jan 2018
    Gender
    male
    Posts
    8
    Reputation
    10
    Thanks
    0
    My Mood
    Pensive
    Need an updated plz :c

  9. #23
    Prankarov's Avatar
    Join Date
    Jun 2019
    Gender
    male
    Posts
    5
    Reputation
    10
    Thanks
    3
    My Mood
    Doh
    Update please

  10. #24
    ProXXProxy's Avatar
    Join Date
    Jul 2019
    Gender
    male
    Posts
    1
    Reputation
    10
    Thanks
    0
    Need Update

Page 2 of 2 FirstFirst 12

Similar Threads

  1. [Patched] 08/25/2015 Patched trove.exe ( without anti-cheat )
    By darkm125 in forum Trove Hacks & Cheats
    Replies: 15
    Last Post: 08-26-2015, 08:56 AM
  2. [Patched] 08/20/2015 Patched trove.exe for bypass the new bypass
    By darkm125 in forum Trove Hacks & Cheats
    Replies: 53
    Last Post: 08-25-2015, 11:19 AM
  3. [Patched] Patched trove.exe for blocking cheatengine detection / debugger / or other cheat
    By darkm125 in forum Trove Hacks & Cheats
    Replies: 11
    Last Post: 08-20-2015, 08:32 AM
  4. [Solved] CrossFire error files its changed (CROSSFIRE.EXE)(HGWC)
    By william huard in forum CrossFire Help
    Replies: 0
    Last Post: 03-24-2012, 03:25 AM
  5. Making A very nice GUIDE.EXE (will see what it is when its done)
    By obsedianpk in forum WarRock - International Hacks
    Replies: 5
    Last Post: 10-23-2007, 05:49 PM