Code Vein

Upload your cheat tables here (No requests)
Post Reply
User avatar
pox911
Slob
Slob
Posts: 128
Joined: Mon Mar 20, 2017 1:41 am
Reputation: 182

Re: Code Vein

Post by pox911 »

Yeah, the stats save because it's an actual in game item that you normally cant get. Without the string parser its harder to do and even with it it is hard to tell what item is which. They come out with names like this

Code: Select all

DA_WeaponArticle_Halberd_I 
DA_WeaponArticle_Hammer_A_Col2 
DA_WeaponArticle_Halberd_G 
DA_WeaponArticle_Halberd_J 
DA_WeaponArticle_Halberd_K 
DA_WeaponArticle_Hammer_E 
DA_WeaponArticle_CheatWeapon 
DA_WeaponArticle_LargeSword_A 
DA_WeaponArticle_Hammer_B 
DA_WeaponArticle_Hammer_D 
DA_WeaponArticle_Hammer_C 
DA_WeaponArticle_LargeSword_B 
DA_WeaponArticle_Hammer_G 
I havent figured out a way to reliably use the towel but i did find a way to change gender. I'll be posting that code shortly after i test it some more.

How to use this cheat table?
  1. Install Cheat Engine
  2. Double-click the .CT file in order to open it.
  3. Click the PC icon in Cheat Engine in order to select the game process.
  4. Keep the list.
  5. Activate the trainer options by checking boxes or setting values from 0 to 1

RaxeIe
Expert Cheater
Expert Cheater
Posts: 97
Joined: Sun Sep 22, 2019 10:19 pm
Reputation: 14

Re: Code Vein

Post by RaxeIe »

ill share my part so share yours please. i need fionn, scathach, harbringer, queen
If berserker is 0A 93 15
then warrior is 0B 93 15
Scout 0C 93 15
survivor 0D 93 15
Darkseeker 0E 93 15
hunter 0F 93 15
If ribcage is 07 93 15
then queenslayer is 08 93 15
ishtar 09 93 15
breath 06 93 15
claw 05 93 15
throat 04 93 15
so yeah probably most people would have ribcage or berserker? when you log in and out of the game the numbers will change a bit but you just have to increase or decrease the second number by 1... something like that. so yeah fionn, scathach, harbringer, queen, find something near it that everyone probably has? good luck finding the awakening item numbers though

User avatar
pox911
Slob
Slob
Posts: 128
Joined: Mon Mar 20, 2017 1:41 am
Reputation: 182

Re: Code Vein

Post by pox911 »

honestly i have no idea what those numbers are and they dont match up with anything i have. Weapon, items, and armor all used pointers so i would assume bloodcodes are the same. I'm working on a minor tutorial via the console dumper on how to swap items. Not sure about adding new ones though

edit: Here is the code that will let you change your character that you already have started.

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>1215</ID>
      <Description>"Bypass Customziation Reset"</Description>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]

aobscanmodule(CustBypassAOB,CodeVein-Win64-Shipping.exe,41 0F B6 D6 48 89 F1 E8 88) // should be unique
alloc(newmem,$1000,"CodeVein-Win64-Shipping.exe"+5F7FE2C)

label(code)
label(return)

newmem:

code:
  movzx edx,r14l
  mov rcx,rsi
  jmp return

CustBypassAOB:
  jmp newmem
  nop
  nop
CustBypassAOB+c:
return:
registersymbol(CustBypassAOB)

[DISABLE]

CustBypassAOB:
  db 41 0F B6 D6 48 89 F1

unregistersymbol(CustBypassAOB)
dealloc(newmem)
</AssemblerScript>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
What this code does is it disabled your character being reset after previewing a customization. So basically you start a new game, make the character you want, save the customization, back out, load your main save, enable the code, go to the customization, highlight it, and then back out. You will notice that your character didnt revert back. Then you can just exit the customization screen and your character will be saved via that preset.

Edit2:

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>1223</ID>
      <Description>"Current Highlighted Weapon"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : CodeVein-Win64-Shipping.exe
  Version: 
  Date   : 2019-09-30
  Author : Turk

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(CurWeapAOB,CodeVein-Win64-Shipping.exe,4D 8B 40 08 88 44 24 20) // should be unique
alloc(newmem,$1000,"CodeVein-Win64-Shipping.exe"+6651F68)

label(code)
label(return)
label(WeaponData)
registersymbol(WeaponData)

newmem:

code:
  mov [WeaponData],r8
  mov r8,[r8+08]
  mov [rsp+20],al
  jmp return
  WeaponData:

CurWeapAOB:
  jmp newmem
  nop
  nop
  nop
return:
registersymbol(CurWeapAOB)

[DISABLE]

CurWeapAOB:
  db 4D 8B 40 08 88 44 24 20

unregistersymbol(CurWeapAOB)
unregistersymbol(WeaponData)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: "CodeVein-Win64-Shipping.exe"+6651F68

"CodeVein-Win64-Shipping.exe"+6651F49: 48 89 D8                 -  mov rax,rbx
"CodeVein-Win64-Shipping.exe"+6651F4C: 48 8B 5C 24 40           -  mov rbx,[rsp+40]
"CodeVein-Win64-Shipping.exe"+6651F51: 48 83 C4 30              -  add rsp,30
"CodeVein-Win64-Shipping.exe"+6651F55: 5F                       -  pop rdi
"CodeVein-Win64-Shipping.exe"+6651F56: C3                       -  ret 
"CodeVein-Win64-Shipping.exe"+6651F57: 0F B6 40 18              -  movzx eax,byte ptr [rax+18]
"CodeVein-Win64-Shipping.exe"+6651F5B: 48 89 DA                 -  mov rdx,rbx
"CodeVein-Win64-Shipping.exe"+6651F5E: 45 8B 48 14              -  mov r9d,[r8+14]
"CodeVein-Win64-Shipping.exe"+6651F62: 48 89 F9                 -  mov rcx,rdi
"CodeVein-Win64-Shipping.exe"+6651F65: 4C 8B 17                 -  mov r10,[rdi]
// ---------- INJECTING HERE ----------
"CodeVein-Win64-Shipping.exe"+6651F68: 4D 8B 40 08              -  mov r8,[r8+08]
"CodeVein-Win64-Shipping.exe"+6651F6C: 88 44 24 20              -  mov [rsp+20],al
// ---------- DONE INJECTING  ----------
"CodeVein-Win64-Shipping.exe"+6651F70: 41 FF 92 98 00 00 00     -  call qword ptr [r10+00000098]
"CodeVein-Win64-Shipping.exe"+6651F77: 48 89 D8                 -  mov rax,rbx
"CodeVein-Win64-Shipping.exe"+6651F7A: 48 8B 5C 24 40           -  mov rbx,[rsp+40]
"CodeVein-Win64-Shipping.exe"+6651F7F: 48 83 C4 30              -  add rsp,30
"CodeVein-Win64-Shipping.exe"+6651F83: 5F                       -  pop rdi
"CodeVein-Win64-Shipping.exe"+6651F84: C3                       -  ret 
"CodeVein-Win64-Shipping.exe"+6651F85: CC                       -  int 3 
"CodeVein-Win64-Shipping.exe"+6651F86: 41 53                    -  push r11
"CodeVein-Win64-Shipping.exe"+6651F88: 49 F7 D3                 -  not r11
"CodeVein-Win64-Shipping.exe"+6651F8B: 4C 21 1C 24              -  and [rsp],r11
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>1226</ID>
          <Description>"Weapon Pointer"</Description>
          <ShowAsHex>1</ShowAsHex>
          <VariableType>8 Bytes</VariableType>
          <Address>WeaponData</Address>
          <Offsets>
            <Offset>8</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1225</ID>
          <Description>"Quantity"</Description>
          <VariableType>4 Bytes</VariableType>
          <Address>WeaponData</Address>
          <Offsets>
            <Offset>1c</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1227</ID>
          <Description>"Quality"</Description>
          <VariableType>4 Bytes</VariableType>
          <Address>WeaponData</Address>
          <Offsets>
            <Offset>14</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1228</ID>
          <Description>"Transformation"</Description>
          <DropDownList DisplayValueAsItem="1">0:None
1:Alleviation
2:Fortification
3:Intensification
4:Gifts
5:Devour
6:Fire
7:Ice
8:Lightning
9:Venom
10:Stun
11:Inhibit
12:Slow
</DropDownList>
          <VariableType>Byte</VariableType>
          <Address>WeaponData</Address>
          <Offsets>
            <Offset>18</Offset>
          </Offsets>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>1229</ID>
      <Description>"Current Highlighted Blood Veil"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : CodeVein-Win64-Shipping.exe
  Version: 
  Date   : 2019-09-30
  Author : Turk

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(CurVeilAOB,CodeVein-Win64-Shipping.exe,4C 8B 40 08 4D 85 C0 74 E1) // should be unique
alloc(newmem,$1000,"CodeVein-Win64-Shipping.exe"+64B3337)

label(code)
label(return)
label(VeilData)
registersymbol(VeilData)

newmem:

code:
  mov [VeilData],rax
  mov r8,[rax+08]
  test r8,r8
  jmp return
  VeilData:

CurVeilAOB:
  jmp newmem
  nop
  nop
return:
registersymbol(CurVeilAOB)

[DISABLE]

CurVeilAOB:
  db 4C 8B 40 08 4D 85 C0

unregistersymbol(CurVeilAOB)
unregistersymbol(VeilData)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: "CodeVein-Win64-Shipping.exe"+64B3337

"CodeVein-Win64-Shipping.exe"+64B3319: 48 89 C2                                   -  mov rdx,rax
"CodeVein-Win64-Shipping.exe"+64B331C: 48 85 C0                                   -  test rax,rax
"CodeVein-Win64-Shipping.exe"+64B331F: 75 16                                      -  jne CodeVein-Win64-Shipping.exe+64B3337
"CodeVein-Win64-Shipping.exe"+64B3321: 48 89 D9                                   -  mov rcx,rbx
"CodeVein-Win64-Shipping.exe"+64B3324: E8 A7 1C 6A FA                             -  call CodeVein-Win64-Shipping.exe+B54FD0
"CodeVein-Win64-Shipping.exe"+64B3329: 48 89 D8                                   -  mov rax,rbx
"CodeVein-Win64-Shipping.exe"+64B332C: 48 8B 5C 24 40                             -  mov rbx,[rsp+40]
"CodeVein-Win64-Shipping.exe"+64B3331: 48 83 C4 30                                -  add rsp,30
"CodeVein-Win64-Shipping.exe"+64B3335: 5F                                         -  pop rdi
"CodeVein-Win64-Shipping.exe"+64B3336: C3                                         -  ret 
// ---------- INJECTING HERE ----------
"CodeVein-Win64-Shipping.exe"+64B3337: 4C 8B 40 08                                -  mov r8,[rax+08]
"CodeVein-Win64-Shipping.exe"+64B333B: 4D 85 C0                                   -  test r8,r8
// ---------- DONE INJECTING  ----------
"CodeVein-Win64-Shipping.exe"+64B333E: 74 E1                                      -  je CodeVein-Win64-Shipping.exe+64B3321
"CodeVein-Win64-Shipping.exe"+64B3340: 0F B6 40 18                                -  movzx eax,byte ptr [rax+18]
"CodeVein-Win64-Shipping.exe"+64B3344: 48 89 F9                                   -  mov rcx,rdi
"CodeVein-Win64-Shipping.exe"+64B3347: 44 8B 4A 14                                -  mov r9d,[rdx+14]
"CodeVein-Win64-Shipping.exe"+64B334B: 48 89 DA                                   -  mov rdx,rbx
"CodeVein-Win64-Shipping.exe"+64B334E: 4C 8B 17                                   -  mov r10,[rdi]
"CodeVein-Win64-Shipping.exe"+64B3351: 88 44 24 20                                -  mov [rsp+20],al
"CodeVein-Win64-Shipping.exe"+64B3355: 41 FF 92 A0 00 00 00                       -  call qword ptr [r10+000000A0]
"CodeVein-Win64-Shipping.exe"+64B335C: 48 89 D8                                   -  mov rax,rbx
"CodeVein-Win64-Shipping.exe"+64B335F: 48 8B 5C 24 40                             -  mov rbx,[rsp+40]
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>1231</ID>
          <Description>"Veil Pointer"</Description>
          <ShowAsHex>1</ShowAsHex>
          <VariableType>8 Bytes</VariableType>
          <Address>VeilData</Address>
          <Offsets>
            <Offset>8</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1232</ID>
          <Description>"Quantity"</Description>
          <VariableType>4 Bytes</VariableType>
          <Address>VeilData</Address>
          <Offsets>
            <Offset>1c</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1233</ID>
          <Description>"Quality"</Description>
          <VariableType>4 Bytes</VariableType>
          <Address>VeilData</Address>
          <Offsets>
            <Offset>14</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1234</ID>
          <Description>"Transformation"</Description>
          <DropDownList DisplayValueAsItem="1">0:None
1:Alleviation
2:Fortification
3:Intensification
4:Gifts
5:Devour
6:Fire
7:Ice
8:Lightning
9:Venom
10:Stun
11:Inhibit
12:Slow
</DropDownList>
          <VariableType>Byte</VariableType>
          <Address>VeilData</Address>
          <Offsets>
            <Offset>18</Offset>
          </Offsets>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>1235</ID>
      <Description>"Current Highlighted Item"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : CodeVein-Win64-Shipping.exe
  Version: 
  Date   : 2019-09-30
  Author : Turk

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(CurItemAOB,CodeVein-Win64-Shipping.exe,1A 0F 10 00 0F 10 48 10) // should be unique
alloc(newmem,$1000,"CodeVein-Win64-Shipping.exe"+612A86F)

label(code)
label(return)
label(ItemData)
registersymbol(ItemData)

newmem:

code:
  mov [ItemData],rax
  movups xmm0,[rax]
  movups xmm1,[rax+10]
  jmp return
  ItemData:

CurItemAOB+01:
  jmp newmem
  nop
  nop
return:
registersymbol(CurItemAOB)

[DISABLE]

CurItemAOB+01:
  db 0F 10 00 0F 10 48 10

unregistersymbol(CurItemAOB)
unregistersymbol(ItemData)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: "CodeVein-Win64-Shipping.exe"+612A86F

"CodeVein-Win64-Shipping.exe"+612A842: 48 89 44 24 30                 -  mov [rsp+30],rax
"CodeVein-Win64-Shipping.exe"+612A847: E8 44 62 91 FA                 -  call CodeVein-Win64-Shipping.exe+A40A90
"CodeVein-Win64-Shipping.exe"+612A84C: 48 89 C2                       -  mov rdx,rax
"CodeVein-Win64-Shipping.exe"+612A84F: 4C 8D 4C 24 30                 -  lea r9,[rsp+30]
"CodeVein-Win64-Shipping.exe"+612A854: 41 B8 2B 00 00 00              -  mov r8d,0000002B
"CodeVein-Win64-Shipping.exe"+612A85A: 48 89 F9                       -  mov rcx,rdi
"CodeVein-Win64-Shipping.exe"+612A85D: E8 2E 11 82 FA                 -  call CodeVein-Win64-Shipping.exe+94B990
"CodeVein-Win64-Shipping.exe"+612A862: 48 8B 84 24 A8 00 00 00        -  mov rax,[rsp+000000A8]
"CodeVein-Win64-Shipping.exe"+612A86A: 48 85 C0                       -  test rax,rax
"CodeVein-Win64-Shipping.exe"+612A86D: 74 1A                          -  je CodeVein-Win64-Shipping.exe+612A889
// ---------- INJECTING HERE ----------
"CodeVein-Win64-Shipping.exe"+612A86F: 0F 10 00                       -  movups xmm0,[rax]
"CodeVein-Win64-Shipping.exe"+612A872: 0F 10 48 10                    -  movups xmm1,[rax+10]
// ---------- DONE INJECTING  ----------
"CodeVein-Win64-Shipping.exe"+612A876: 0F 11 03                       -  movups [rbx],xmm0
"CodeVein-Win64-Shipping.exe"+612A879: F2 0F 10 40 20                 -  movsd xmm0,[rax+20]
"CodeVein-Win64-Shipping.exe"+612A87E: 0F 11 4B 10                    -  movups [rbx+10],xmm1
"CodeVein-Win64-Shipping.exe"+612A882: F2 0F 11 43 20                 -  movsd [rbx+20],xmm0
"CodeVein-Win64-Shipping.exe"+612A887: EB 29                          -  jmp CodeVein-Win64-Shipping.exe+612A8B2
"CodeVein-Win64-Shipping.exe"+612A889: 48 89 43 10                    -  mov [rbx+10],rax
"CodeVein-Win64-Shipping.exe"+612A88D: 48 89 43 18                    -  mov [rbx+18],rax
"CodeVein-Win64-Shipping.exe"+612A891: 48 89 43 20                    -  mov [rbx+20],rax
"CodeVein-Win64-Shipping.exe"+612A895: 48 89 33                       -  mov [rbx],rsi
"CodeVein-Win64-Shipping.exe"+612A898: 48 89 73 08                    -  mov [rbx+08],rsi
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>1238</ID>
          <Description>"Item Pointer"</Description>
          <ShowAsHex>1</ShowAsHex>
          <VariableType>8 Bytes</VariableType>
          <Address>ItemData</Address>
          <Offsets>
            <Offset>0</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1239</ID>
          <Description>"Item Function?"</Description>
          <ShowAsHex>1</ShowAsHex>
          <VariableType>8 Bytes</VariableType>
          <Address>ItemData</Address>
          <Offsets>
            <Offset>8</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1237</ID>
          <Description>"Quantity Held"</Description>
          <VariableType>4 Bytes</VariableType>
          <Address>ItemData</Address>
          <Offsets>
            <Offset>14</Offset>
          </Offsets>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
Here are the current highlighted scripts recreated since zach's AOBs didnt work for me. Will also be the basis of the item swap tutorial

User avatar
NumberXer0
Expert Cheater
Expert Cheater
Posts: 1028
Joined: Sun Mar 12, 2017 2:17 pm
Reputation: 92

Re: Code Vein

Post by NumberXer0 »

Pox, you are on FIRE. So many awesome things so far. Thank you so so much. Between the accessory code and the customization one..this game became so much better =)

zarroc407
Noobzor
Noobzor
Posts: 11
Joined: Thu Nov 09, 2017 5:26 pm
Reputation: 1

Re: Code Vein

Post by zarroc407 »

Has anyone found a way to make inheriting skill faster or the item ids for the later game awake items and a way to swap them in?

User avatar
NumberXer0
Expert Cheater
Expert Cheater
Posts: 1028
Joined: Sun Mar 12, 2017 2:17 pm
Reputation: 92

Re: Code Vein

Post by NumberXer0 »

zarroc407 wrote:
Mon Sep 30, 2019 9:35 pm
Has anyone found a way to make inheriting skill faster or the item ids for the later game awake items and a way to swap them in?
There is no proficiency code yet and no item swap. But Pox is working on the item stuff, give it some time.

zarroc407
Noobzor
Noobzor
Posts: 11
Joined: Thu Nov 09, 2017 5:26 pm
Reputation: 1

Re: Code Vein

Post by zarroc407 »

NumberXer0 wrote:
Mon Sep 30, 2019 9:38 pm
zarroc407 wrote:
Mon Sep 30, 2019 9:35 pm
Has anyone found a way to make inheriting skill faster or the item ids for the later game awake items and a way to swap them in?
There is no proficiency code yet and no item swap. But Pox is working on the item stuff, give it some time.
Thanks for letting me know :)

User avatar
NumberXer0
Expert Cheater
Expert Cheater
Posts: 1028
Joined: Sun Mar 12, 2017 2:17 pm
Reputation: 92

Re: Code Vein

Post by NumberXer0 »

zarroc407 wrote:
Mon Sep 30, 2019 9:41 pm
NumberXer0 wrote:
Mon Sep 30, 2019 9:38 pm
zarroc407 wrote:
Mon Sep 30, 2019 9:35 pm
Has anyone found a way to make inheriting skill faster or the item ids for the later game awake items and a way to swap them in?
There is no proficiency code yet and no item swap. But Pox is working on the item stuff, give it some time.
Thanks for letting me know :)
If you want to inherit things now, you can use the item pointer to give you more of the mastery items. Unfortunately its only for the ones you have already, so no endgame skills, but once you get one you can learn everything =)

ryonapls
Noobzor
Noobzor
Posts: 5
Joined: Sat Sep 28, 2019 7:34 pm
Reputation: 0

Re: Code Vein

Post by ryonapls »

pox911 wrote:
Mon Sep 30, 2019 6:12 pm
So far i only managed it via manually editing the clothing string index. Luckily the clothing indexes always seem to load right next to each other so it was just incrementing the value till i saw it. Still saddens me you cant force certain colors on things. I wanted to use the glow metal for my hair but the game had other ideas. Also the physique value in memory is just a -1 to 1. Setting it to extreme values gets some interesting results
I'm really curious on what these interesting results is lol.

RaxeIe
Expert Cheater
Expert Cheater
Posts: 97
Joined: Sun Sep 22, 2019 10:19 pm
Reputation: 14

Re: Code Vein

Post by RaxeIe »

pox911 wrote:
Mon Sep 30, 2019 8:35 pm
honestly i have no idea what those numbers are and they dont match up with anything i have. Weapon, items, and armor all used pointers so i would assume bloodcodes are the same. I'm working on a minor tutorial via the console dumper on how to swap items. Not sure about adding new ones though

edit: Here is the code that will let you change your character that you already have started.

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>1215</ID>
      <Description>"Bypass Customziation Reset"</Description>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]

aobscanmodule(CustBypassAOB,CodeVein-Win64-Shipping.exe,41 0F B6 D6 48 89 F1 E8 88) // should be unique
alloc(newmem,$1000,"CodeVein-Win64-Shipping.exe"+5F7FE2C)

label(code)
label(return)

newmem:

code:
  movzx edx,r14l
  mov rcx,rsi
  jmp return

CustBypassAOB:
  jmp newmem
  nop
  nop
CustBypassAOB+c:
return:
registersymbol(CustBypassAOB)

[DISABLE]

CustBypassAOB:
  db 41 0F B6 D6 48 89 F1

unregistersymbol(CustBypassAOB)
dealloc(newmem)
</AssemblerScript>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
What this code does is it disabled your character being reset after previewing a customization. So basically you start a new game, make the character you want, save the customization, back out, load your main save, enable the code, go to the customization, highlight it, and then back out. You will notice that your character didnt revert back. Then you can just exit the customization screen and your character will be saved via that preset.

Edit2:

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>1223</ID>
      <Description>"Current Highlighted Weapon"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : CodeVein-Win64-Shipping.exe
  Version: 
  Date   : 2019-09-30
  Author : Turk

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(CurWeapAOB,CodeVein-Win64-Shipping.exe,4D 8B 40 08 88 44 24 20) // should be unique
alloc(newmem,$1000,"CodeVein-Win64-Shipping.exe"+6651F68)

label(code)
label(return)
label(WeaponData)
registersymbol(WeaponData)

newmem:

code:
  mov [WeaponData],r8
  mov r8,[r8+08]
  mov [rsp+20],al
  jmp return
  WeaponData:

CurWeapAOB:
  jmp newmem
  nop
  nop
  nop
return:
registersymbol(CurWeapAOB)

[DISABLE]

CurWeapAOB:
  db 4D 8B 40 08 88 44 24 20

unregistersymbol(CurWeapAOB)
unregistersymbol(WeaponData)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: "CodeVein-Win64-Shipping.exe"+6651F68

"CodeVein-Win64-Shipping.exe"+6651F49: 48 89 D8                 -  mov rax,rbx
"CodeVein-Win64-Shipping.exe"+6651F4C: 48 8B 5C 24 40           -  mov rbx,[rsp+40]
"CodeVein-Win64-Shipping.exe"+6651F51: 48 83 C4 30              -  add rsp,30
"CodeVein-Win64-Shipping.exe"+6651F55: 5F                       -  pop rdi
"CodeVein-Win64-Shipping.exe"+6651F56: C3                       -  ret 
"CodeVein-Win64-Shipping.exe"+6651F57: 0F B6 40 18              -  movzx eax,byte ptr [rax+18]
"CodeVein-Win64-Shipping.exe"+6651F5B: 48 89 DA                 -  mov rdx,rbx
"CodeVein-Win64-Shipping.exe"+6651F5E: 45 8B 48 14              -  mov r9d,[r8+14]
"CodeVein-Win64-Shipping.exe"+6651F62: 48 89 F9                 -  mov rcx,rdi
"CodeVein-Win64-Shipping.exe"+6651F65: 4C 8B 17                 -  mov r10,[rdi]
// ---------- INJECTING HERE ----------
"CodeVein-Win64-Shipping.exe"+6651F68: 4D 8B 40 08              -  mov r8,[r8+08]
"CodeVein-Win64-Shipping.exe"+6651F6C: 88 44 24 20              -  mov [rsp+20],al
// ---------- DONE INJECTING  ----------
"CodeVein-Win64-Shipping.exe"+6651F70: 41 FF 92 98 00 00 00     -  call qword ptr [r10+00000098]
"CodeVein-Win64-Shipping.exe"+6651F77: 48 89 D8                 -  mov rax,rbx
"CodeVein-Win64-Shipping.exe"+6651F7A: 48 8B 5C 24 40           -  mov rbx,[rsp+40]
"CodeVein-Win64-Shipping.exe"+6651F7F: 48 83 C4 30              -  add rsp,30
"CodeVein-Win64-Shipping.exe"+6651F83: 5F                       -  pop rdi
"CodeVein-Win64-Shipping.exe"+6651F84: C3                       -  ret 
"CodeVein-Win64-Shipping.exe"+6651F85: CC                       -  int 3 
"CodeVein-Win64-Shipping.exe"+6651F86: 41 53                    -  push r11
"CodeVein-Win64-Shipping.exe"+6651F88: 49 F7 D3                 -  not r11
"CodeVein-Win64-Shipping.exe"+6651F8B: 4C 21 1C 24              -  and [rsp],r11
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>1226</ID>
          <Description>"Weapon Pointer"</Description>
          <ShowAsHex>1</ShowAsHex>
          <VariableType>8 Bytes</VariableType>
          <Address>WeaponData</Address>
          <Offsets>
            <Offset>8</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1225</ID>
          <Description>"Quantity"</Description>
          <VariableType>4 Bytes</VariableType>
          <Address>WeaponData</Address>
          <Offsets>
            <Offset>1c</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1227</ID>
          <Description>"Quality"</Description>
          <VariableType>4 Bytes</VariableType>
          <Address>WeaponData</Address>
          <Offsets>
            <Offset>14</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1228</ID>
          <Description>"Transformation"</Description>
          <DropDownList DisplayValueAsItem="1">0:None
1:Alleviation
2:Fortification
3:Intensification
4:Gifts
5:Devour
6:Fire
7:Ice
8:Lightning
9:Venom
10:Stun
11:Inhibit
12:Slow
</DropDownList>
          <VariableType>Byte</VariableType>
          <Address>WeaponData</Address>
          <Offsets>
            <Offset>18</Offset>
          </Offsets>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>1229</ID>
      <Description>"Current Highlighted Blood Veil"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : CodeVein-Win64-Shipping.exe
  Version: 
  Date   : 2019-09-30
  Author : Turk

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(CurVeilAOB,CodeVein-Win64-Shipping.exe,4C 8B 40 08 4D 85 C0 74 E1) // should be unique
alloc(newmem,$1000,"CodeVein-Win64-Shipping.exe"+64B3337)

label(code)
label(return)
label(VeilData)
registersymbol(VeilData)

newmem:

code:
  mov [VeilData],rax
  mov r8,[rax+08]
  test r8,r8
  jmp return
  VeilData:

CurVeilAOB:
  jmp newmem
  nop
  nop
return:
registersymbol(CurVeilAOB)

[DISABLE]

CurVeilAOB:
  db 4C 8B 40 08 4D 85 C0

unregistersymbol(CurVeilAOB)
unregistersymbol(VeilData)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: "CodeVein-Win64-Shipping.exe"+64B3337

"CodeVein-Win64-Shipping.exe"+64B3319: 48 89 C2                                   -  mov rdx,rax
"CodeVein-Win64-Shipping.exe"+64B331C: 48 85 C0                                   -  test rax,rax
"CodeVein-Win64-Shipping.exe"+64B331F: 75 16                                      -  jne CodeVein-Win64-Shipping.exe+64B3337
"CodeVein-Win64-Shipping.exe"+64B3321: 48 89 D9                                   -  mov rcx,rbx
"CodeVein-Win64-Shipping.exe"+64B3324: E8 A7 1C 6A FA                             -  call CodeVein-Win64-Shipping.exe+B54FD0
"CodeVein-Win64-Shipping.exe"+64B3329: 48 89 D8                                   -  mov rax,rbx
"CodeVein-Win64-Shipping.exe"+64B332C: 48 8B 5C 24 40                             -  mov rbx,[rsp+40]
"CodeVein-Win64-Shipping.exe"+64B3331: 48 83 C4 30                                -  add rsp,30
"CodeVein-Win64-Shipping.exe"+64B3335: 5F                                         -  pop rdi
"CodeVein-Win64-Shipping.exe"+64B3336: C3                                         -  ret 
// ---------- INJECTING HERE ----------
"CodeVein-Win64-Shipping.exe"+64B3337: 4C 8B 40 08                                -  mov r8,[rax+08]
"CodeVein-Win64-Shipping.exe"+64B333B: 4D 85 C0                                   -  test r8,r8
// ---------- DONE INJECTING  ----------
"CodeVein-Win64-Shipping.exe"+64B333E: 74 E1                                      -  je CodeVein-Win64-Shipping.exe+64B3321
"CodeVein-Win64-Shipping.exe"+64B3340: 0F B6 40 18                                -  movzx eax,byte ptr [rax+18]
"CodeVein-Win64-Shipping.exe"+64B3344: 48 89 F9                                   -  mov rcx,rdi
"CodeVein-Win64-Shipping.exe"+64B3347: 44 8B 4A 14                                -  mov r9d,[rdx+14]
"CodeVein-Win64-Shipping.exe"+64B334B: 48 89 DA                                   -  mov rdx,rbx
"CodeVein-Win64-Shipping.exe"+64B334E: 4C 8B 17                                   -  mov r10,[rdi]
"CodeVein-Win64-Shipping.exe"+64B3351: 88 44 24 20                                -  mov [rsp+20],al
"CodeVein-Win64-Shipping.exe"+64B3355: 41 FF 92 A0 00 00 00                       -  call qword ptr [r10+000000A0]
"CodeVein-Win64-Shipping.exe"+64B335C: 48 89 D8                                   -  mov rax,rbx
"CodeVein-Win64-Shipping.exe"+64B335F: 48 8B 5C 24 40                             -  mov rbx,[rsp+40]
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>1231</ID>
          <Description>"Veil Pointer"</Description>
          <ShowAsHex>1</ShowAsHex>
          <VariableType>8 Bytes</VariableType>
          <Address>VeilData</Address>
          <Offsets>
            <Offset>8</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1232</ID>
          <Description>"Quantity"</Description>
          <VariableType>4 Bytes</VariableType>
          <Address>VeilData</Address>
          <Offsets>
            <Offset>1c</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1233</ID>
          <Description>"Quality"</Description>
          <VariableType>4 Bytes</VariableType>
          <Address>VeilData</Address>
          <Offsets>
            <Offset>14</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1234</ID>
          <Description>"Transformation"</Description>
          <DropDownList DisplayValueAsItem="1">0:None
1:Alleviation
2:Fortification
3:Intensification
4:Gifts
5:Devour
6:Fire
7:Ice
8:Lightning
9:Venom
10:Stun
11:Inhibit
12:Slow
</DropDownList>
          <VariableType>Byte</VariableType>
          <Address>VeilData</Address>
          <Offsets>
            <Offset>18</Offset>
          </Offsets>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>1235</ID>
      <Description>"Current Highlighted Item"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : CodeVein-Win64-Shipping.exe
  Version: 
  Date   : 2019-09-30
  Author : Turk

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(CurItemAOB,CodeVein-Win64-Shipping.exe,1A 0F 10 00 0F 10 48 10) // should be unique
alloc(newmem,$1000,"CodeVein-Win64-Shipping.exe"+612A86F)

label(code)
label(return)
label(ItemData)
registersymbol(ItemData)

newmem:

code:
  mov [ItemData],rax
  movups xmm0,[rax]
  movups xmm1,[rax+10]
  jmp return
  ItemData:

CurItemAOB+01:
  jmp newmem
  nop
  nop
return:
registersymbol(CurItemAOB)

[DISABLE]

CurItemAOB+01:
  db 0F 10 00 0F 10 48 10

unregistersymbol(CurItemAOB)
unregistersymbol(ItemData)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: "CodeVein-Win64-Shipping.exe"+612A86F

"CodeVein-Win64-Shipping.exe"+612A842: 48 89 44 24 30                 -  mov [rsp+30],rax
"CodeVein-Win64-Shipping.exe"+612A847: E8 44 62 91 FA                 -  call CodeVein-Win64-Shipping.exe+A40A90
"CodeVein-Win64-Shipping.exe"+612A84C: 48 89 C2                       -  mov rdx,rax
"CodeVein-Win64-Shipping.exe"+612A84F: 4C 8D 4C 24 30                 -  lea r9,[rsp+30]
"CodeVein-Win64-Shipping.exe"+612A854: 41 B8 2B 00 00 00              -  mov r8d,0000002B
"CodeVein-Win64-Shipping.exe"+612A85A: 48 89 F9                       -  mov rcx,rdi
"CodeVein-Win64-Shipping.exe"+612A85D: E8 2E 11 82 FA                 -  call CodeVein-Win64-Shipping.exe+94B990
"CodeVein-Win64-Shipping.exe"+612A862: 48 8B 84 24 A8 00 00 00        -  mov rax,[rsp+000000A8]
"CodeVein-Win64-Shipping.exe"+612A86A: 48 85 C0                       -  test rax,rax
"CodeVein-Win64-Shipping.exe"+612A86D: 74 1A                          -  je CodeVein-Win64-Shipping.exe+612A889
// ---------- INJECTING HERE ----------
"CodeVein-Win64-Shipping.exe"+612A86F: 0F 10 00                       -  movups xmm0,[rax]
"CodeVein-Win64-Shipping.exe"+612A872: 0F 10 48 10                    -  movups xmm1,[rax+10]
// ---------- DONE INJECTING  ----------
"CodeVein-Win64-Shipping.exe"+612A876: 0F 11 03                       -  movups [rbx],xmm0
"CodeVein-Win64-Shipping.exe"+612A879: F2 0F 10 40 20                 -  movsd xmm0,[rax+20]
"CodeVein-Win64-Shipping.exe"+612A87E: 0F 11 4B 10                    -  movups [rbx+10],xmm1
"CodeVein-Win64-Shipping.exe"+612A882: F2 0F 11 43 20                 -  movsd [rbx+20],xmm0
"CodeVein-Win64-Shipping.exe"+612A887: EB 29                          -  jmp CodeVein-Win64-Shipping.exe+612A8B2
"CodeVein-Win64-Shipping.exe"+612A889: 48 89 43 10                    -  mov [rbx+10],rax
"CodeVein-Win64-Shipping.exe"+612A88D: 48 89 43 18                    -  mov [rbx+18],rax
"CodeVein-Win64-Shipping.exe"+612A891: 48 89 43 20                    -  mov [rbx+20],rax
"CodeVein-Win64-Shipping.exe"+612A895: 48 89 33                       -  mov [rbx],rsi
"CodeVein-Win64-Shipping.exe"+612A898: 48 89 73 08                    -  mov [rbx+08],rsi
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>1238</ID>
          <Description>"Item Pointer"</Description>
          <ShowAsHex>1</ShowAsHex>
          <VariableType>8 Bytes</VariableType>
          <Address>ItemData</Address>
          <Offsets>
            <Offset>0</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1239</ID>
          <Description>"Item Function?"</Description>
          <ShowAsHex>1</ShowAsHex>
          <VariableType>8 Bytes</VariableType>
          <Address>ItemData</Address>
          <Offsets>
            <Offset>8</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1237</ID>
          <Description>"Quantity Held"</Description>
          <VariableType>4 Bytes</VariableType>
          <Address>ItemData</Address>
          <Offsets>
            <Offset>14</Offset>
          </Offsets>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
Here are the current highlighted scripts recreated since zach's AOBs didnt work for me. Will also be the basis of the item swap tutorial
those numbers are from zachillios scripts highlighted item editor since blood codes are items. at least some of them are

zzz
Noobzor
Noobzor
Posts: 5
Joined: Fri May 25, 2018 6:45 pm
Reputation: 0

Re: Code Vein

Post by zzz »

pox911 wrote:
Mon Sep 30, 2019 8:35 pm
honestly i have no idea what those numbers are and they dont match up with anything i have. Weapon, items, and armor all used pointers so i would assume bloodcodes are the same. I'm working on a minor tutorial via the console dumper on how to swap items. Not sure about adding new ones though

edit: Here is the code that will let you change your character that you already have started.

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>1215</ID>
      <Description>"Bypass Customziation Reset"</Description>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]

aobscanmodule(CustBypassAOB,CodeVein-Win64-Shipping.exe,41 0F B6 D6 48 89 F1 E8 88) // should be unique
alloc(newmem,$1000,"CodeVein-Win64-Shipping.exe"+5F7FE2C)

label(code)
label(return)

newmem:

code:
  movzx edx,r14l
  mov rcx,rsi
  jmp return

CustBypassAOB:
  jmp newmem
  nop
  nop
CustBypassAOB+c:
return:
registersymbol(CustBypassAOB)

[DISABLE]

CustBypassAOB:
  db 41 0F B6 D6 48 89 F1

unregistersymbol(CustBypassAOB)
dealloc(newmem)
</AssemblerScript>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
What this code does is it disabled your character being reset after previewing a customization. So basically you start a new game, make the character you want, save the customization, back out, load your main save, enable the code, go to the customization, highlight it, and then back out. You will notice that your character didnt revert back. Then you can just exit the customization screen and your character will be saved via that preset.

Edit2:

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>1223</ID>
      <Description>"Current Highlighted Weapon"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : CodeVein-Win64-Shipping.exe
  Version: 
  Date   : 2019-09-30
  Author : Turk

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(CurWeapAOB,CodeVein-Win64-Shipping.exe,4D 8B 40 08 88 44 24 20) // should be unique
alloc(newmem,$1000,"CodeVein-Win64-Shipping.exe"+6651F68)

label(code)
label(return)
label(WeaponData)
registersymbol(WeaponData)

newmem:

code:
  mov [WeaponData],r8
  mov r8,[r8+08]
  mov [rsp+20],al
  jmp return
  WeaponData:

CurWeapAOB:
  jmp newmem
  nop
  nop
  nop
return:
registersymbol(CurWeapAOB)

[DISABLE]

CurWeapAOB:
  db 4D 8B 40 08 88 44 24 20

unregistersymbol(CurWeapAOB)
unregistersymbol(WeaponData)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: "CodeVein-Win64-Shipping.exe"+6651F68

"CodeVein-Win64-Shipping.exe"+6651F49: 48 89 D8                 -  mov rax,rbx
"CodeVein-Win64-Shipping.exe"+6651F4C: 48 8B 5C 24 40           -  mov rbx,[rsp+40]
"CodeVein-Win64-Shipping.exe"+6651F51: 48 83 C4 30              -  add rsp,30
"CodeVein-Win64-Shipping.exe"+6651F55: 5F                       -  pop rdi
"CodeVein-Win64-Shipping.exe"+6651F56: C3                       -  ret 
"CodeVein-Win64-Shipping.exe"+6651F57: 0F B6 40 18              -  movzx eax,byte ptr [rax+18]
"CodeVein-Win64-Shipping.exe"+6651F5B: 48 89 DA                 -  mov rdx,rbx
"CodeVein-Win64-Shipping.exe"+6651F5E: 45 8B 48 14              -  mov r9d,[r8+14]
"CodeVein-Win64-Shipping.exe"+6651F62: 48 89 F9                 -  mov rcx,rdi
"CodeVein-Win64-Shipping.exe"+6651F65: 4C 8B 17                 -  mov r10,[rdi]
// ---------- INJECTING HERE ----------
"CodeVein-Win64-Shipping.exe"+6651F68: 4D 8B 40 08              -  mov r8,[r8+08]
"CodeVein-Win64-Shipping.exe"+6651F6C: 88 44 24 20              -  mov [rsp+20],al
// ---------- DONE INJECTING  ----------
"CodeVein-Win64-Shipping.exe"+6651F70: 41 FF 92 98 00 00 00     -  call qword ptr [r10+00000098]
"CodeVein-Win64-Shipping.exe"+6651F77: 48 89 D8                 -  mov rax,rbx
"CodeVein-Win64-Shipping.exe"+6651F7A: 48 8B 5C 24 40           -  mov rbx,[rsp+40]
"CodeVein-Win64-Shipping.exe"+6651F7F: 48 83 C4 30              -  add rsp,30
"CodeVein-Win64-Shipping.exe"+6651F83: 5F                       -  pop rdi
"CodeVein-Win64-Shipping.exe"+6651F84: C3                       -  ret 
"CodeVein-Win64-Shipping.exe"+6651F85: CC                       -  int 3 
"CodeVein-Win64-Shipping.exe"+6651F86: 41 53                    -  push r11
"CodeVein-Win64-Shipping.exe"+6651F88: 49 F7 D3                 -  not r11
"CodeVein-Win64-Shipping.exe"+6651F8B: 4C 21 1C 24              -  and [rsp],r11
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>1226</ID>
          <Description>"Weapon Pointer"</Description>
          <ShowAsHex>1</ShowAsHex>
          <VariableType>8 Bytes</VariableType>
          <Address>WeaponData</Address>
          <Offsets>
            <Offset>8</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1225</ID>
          <Description>"Quantity"</Description>
          <VariableType>4 Bytes</VariableType>
          <Address>WeaponData</Address>
          <Offsets>
            <Offset>1c</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1227</ID>
          <Description>"Quality"</Description>
          <VariableType>4 Bytes</VariableType>
          <Address>WeaponData</Address>
          <Offsets>
            <Offset>14</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1228</ID>
          <Description>"Transformation"</Description>
          <DropDownList DisplayValueAsItem="1">0:None
1:Alleviation
2:Fortification
3:Intensification
4:Gifts
5:Devour
6:Fire
7:Ice
8:Lightning
9:Venom
10:Stun
11:Inhibit
12:Slow
</DropDownList>
          <VariableType>Byte</VariableType>
          <Address>WeaponData</Address>
          <Offsets>
            <Offset>18</Offset>
          </Offsets>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>1229</ID>
      <Description>"Current Highlighted Blood Veil"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : CodeVein-Win64-Shipping.exe
  Version: 
  Date   : 2019-09-30
  Author : Turk

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(CurVeilAOB,CodeVein-Win64-Shipping.exe,4C 8B 40 08 4D 85 C0 74 E1) // should be unique
alloc(newmem,$1000,"CodeVein-Win64-Shipping.exe"+64B3337)

label(code)
label(return)
label(VeilData)
registersymbol(VeilData)

newmem:

code:
  mov [VeilData],rax
  mov r8,[rax+08]
  test r8,r8
  jmp return
  VeilData:

CurVeilAOB:
  jmp newmem
  nop
  nop
return:
registersymbol(CurVeilAOB)

[DISABLE]

CurVeilAOB:
  db 4C 8B 40 08 4D 85 C0

unregistersymbol(CurVeilAOB)
unregistersymbol(VeilData)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: "CodeVein-Win64-Shipping.exe"+64B3337

"CodeVein-Win64-Shipping.exe"+64B3319: 48 89 C2                                   -  mov rdx,rax
"CodeVein-Win64-Shipping.exe"+64B331C: 48 85 C0                                   -  test rax,rax
"CodeVein-Win64-Shipping.exe"+64B331F: 75 16                                      -  jne CodeVein-Win64-Shipping.exe+64B3337
"CodeVein-Win64-Shipping.exe"+64B3321: 48 89 D9                                   -  mov rcx,rbx
"CodeVein-Win64-Shipping.exe"+64B3324: E8 A7 1C 6A FA                             -  call CodeVein-Win64-Shipping.exe+B54FD0
"CodeVein-Win64-Shipping.exe"+64B3329: 48 89 D8                                   -  mov rax,rbx
"CodeVein-Win64-Shipping.exe"+64B332C: 48 8B 5C 24 40                             -  mov rbx,[rsp+40]
"CodeVein-Win64-Shipping.exe"+64B3331: 48 83 C4 30                                -  add rsp,30
"CodeVein-Win64-Shipping.exe"+64B3335: 5F                                         -  pop rdi
"CodeVein-Win64-Shipping.exe"+64B3336: C3                                         -  ret 
// ---------- INJECTING HERE ----------
"CodeVein-Win64-Shipping.exe"+64B3337: 4C 8B 40 08                                -  mov r8,[rax+08]
"CodeVein-Win64-Shipping.exe"+64B333B: 4D 85 C0                                   -  test r8,r8
// ---------- DONE INJECTING  ----------
"CodeVein-Win64-Shipping.exe"+64B333E: 74 E1                                      -  je CodeVein-Win64-Shipping.exe+64B3321
"CodeVein-Win64-Shipping.exe"+64B3340: 0F B6 40 18                                -  movzx eax,byte ptr [rax+18]
"CodeVein-Win64-Shipping.exe"+64B3344: 48 89 F9                                   -  mov rcx,rdi
"CodeVein-Win64-Shipping.exe"+64B3347: 44 8B 4A 14                                -  mov r9d,[rdx+14]
"CodeVein-Win64-Shipping.exe"+64B334B: 48 89 DA                                   -  mov rdx,rbx
"CodeVein-Win64-Shipping.exe"+64B334E: 4C 8B 17                                   -  mov r10,[rdi]
"CodeVein-Win64-Shipping.exe"+64B3351: 88 44 24 20                                -  mov [rsp+20],al
"CodeVein-Win64-Shipping.exe"+64B3355: 41 FF 92 A0 00 00 00                       -  call qword ptr [r10+000000A0]
"CodeVein-Win64-Shipping.exe"+64B335C: 48 89 D8                                   -  mov rax,rbx
"CodeVein-Win64-Shipping.exe"+64B335F: 48 8B 5C 24 40                             -  mov rbx,[rsp+40]
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>1231</ID>
          <Description>"Veil Pointer"</Description>
          <ShowAsHex>1</ShowAsHex>
          <VariableType>8 Bytes</VariableType>
          <Address>VeilData</Address>
          <Offsets>
            <Offset>8</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1232</ID>
          <Description>"Quantity"</Description>
          <VariableType>4 Bytes</VariableType>
          <Address>VeilData</Address>
          <Offsets>
            <Offset>1c</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1233</ID>
          <Description>"Quality"</Description>
          <VariableType>4 Bytes</VariableType>
          <Address>VeilData</Address>
          <Offsets>
            <Offset>14</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1234</ID>
          <Description>"Transformation"</Description>
          <DropDownList DisplayValueAsItem="1">0:None
1:Alleviation
2:Fortification
3:Intensification
4:Gifts
5:Devour
6:Fire
7:Ice
8:Lightning
9:Venom
10:Stun
11:Inhibit
12:Slow
</DropDownList>
          <VariableType>Byte</VariableType>
          <Address>VeilData</Address>
          <Offsets>
            <Offset>18</Offset>
          </Offsets>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>1235</ID>
      <Description>"Current Highlighted Item"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : CodeVein-Win64-Shipping.exe
  Version: 
  Date   : 2019-09-30
  Author : Turk

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(CurItemAOB,CodeVein-Win64-Shipping.exe,1A 0F 10 00 0F 10 48 10) // should be unique
alloc(newmem,$1000,"CodeVein-Win64-Shipping.exe"+612A86F)

label(code)
label(return)
label(ItemData)
registersymbol(ItemData)

newmem:

code:
  mov [ItemData],rax
  movups xmm0,[rax]
  movups xmm1,[rax+10]
  jmp return
  ItemData:

CurItemAOB+01:
  jmp newmem
  nop
  nop
return:
registersymbol(CurItemAOB)

[DISABLE]

CurItemAOB+01:
  db 0F 10 00 0F 10 48 10

unregistersymbol(CurItemAOB)
unregistersymbol(ItemData)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: "CodeVein-Win64-Shipping.exe"+612A86F

"CodeVein-Win64-Shipping.exe"+612A842: 48 89 44 24 30                 -  mov [rsp+30],rax
"CodeVein-Win64-Shipping.exe"+612A847: E8 44 62 91 FA                 -  call CodeVein-Win64-Shipping.exe+A40A90
"CodeVein-Win64-Shipping.exe"+612A84C: 48 89 C2                       -  mov rdx,rax
"CodeVein-Win64-Shipping.exe"+612A84F: 4C 8D 4C 24 30                 -  lea r9,[rsp+30]
"CodeVein-Win64-Shipping.exe"+612A854: 41 B8 2B 00 00 00              -  mov r8d,0000002B
"CodeVein-Win64-Shipping.exe"+612A85A: 48 89 F9                       -  mov rcx,rdi
"CodeVein-Win64-Shipping.exe"+612A85D: E8 2E 11 82 FA                 -  call CodeVein-Win64-Shipping.exe+94B990
"CodeVein-Win64-Shipping.exe"+612A862: 48 8B 84 24 A8 00 00 00        -  mov rax,[rsp+000000A8]
"CodeVein-Win64-Shipping.exe"+612A86A: 48 85 C0                       -  test rax,rax
"CodeVein-Win64-Shipping.exe"+612A86D: 74 1A                          -  je CodeVein-Win64-Shipping.exe+612A889
// ---------- INJECTING HERE ----------
"CodeVein-Win64-Shipping.exe"+612A86F: 0F 10 00                       -  movups xmm0,[rax]
"CodeVein-Win64-Shipping.exe"+612A872: 0F 10 48 10                    -  movups xmm1,[rax+10]
// ---------- DONE INJECTING  ----------
"CodeVein-Win64-Shipping.exe"+612A876: 0F 11 03                       -  movups [rbx],xmm0
"CodeVein-Win64-Shipping.exe"+612A879: F2 0F 10 40 20                 -  movsd xmm0,[rax+20]
"CodeVein-Win64-Shipping.exe"+612A87E: 0F 11 4B 10                    -  movups [rbx+10],xmm1
"CodeVein-Win64-Shipping.exe"+612A882: F2 0F 11 43 20                 -  movsd [rbx+20],xmm0
"CodeVein-Win64-Shipping.exe"+612A887: EB 29                          -  jmp CodeVein-Win64-Shipping.exe+612A8B2
"CodeVein-Win64-Shipping.exe"+612A889: 48 89 43 10                    -  mov [rbx+10],rax
"CodeVein-Win64-Shipping.exe"+612A88D: 48 89 43 18                    -  mov [rbx+18],rax
"CodeVein-Win64-Shipping.exe"+612A891: 48 89 43 20                    -  mov [rbx+20],rax
"CodeVein-Win64-Shipping.exe"+612A895: 48 89 33                       -  mov [rbx],rsi
"CodeVein-Win64-Shipping.exe"+612A898: 48 89 73 08                    -  mov [rbx+08],rsi
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>1238</ID>
          <Description>"Item Pointer"</Description>
          <ShowAsHex>1</ShowAsHex>
          <VariableType>8 Bytes</VariableType>
          <Address>ItemData</Address>
          <Offsets>
            <Offset>0</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1239</ID>
          <Description>"Item Function?"</Description>
          <ShowAsHex>1</ShowAsHex>
          <VariableType>8 Bytes</VariableType>
          <Address>ItemData</Address>
          <Offsets>
            <Offset>8</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1237</ID>
          <Description>"Quantity Held"</Description>
          <VariableType>4 Bytes</VariableType>
          <Address>ItemData</Address>
          <Offsets>
            <Offset>14</Offset>
          </Offsets>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
Here are the current highlighted scripts recreated since zach's AOBs didnt work for me. Will also be the basis of the item swap tutorial
I think I might be stupid but I can't figure out how to do the customization thing. I saved the one I wanted on another save, loaded my main, turned on cheat engine, enabled the script but there is no customization showing (only blank boxes) and when I press the blank box nothing changes.

zzz
Noobzor
Noobzor
Posts: 5
Joined: Fri May 25, 2018 6:45 pm
Reputation: 0

Re: Code Vein

Post by zzz »

zzz wrote:
Tue Oct 01, 2019 12:01 am
pox911 wrote:
Mon Sep 30, 2019 8:35 pm
honestly i have no idea what those numbers are and they dont match up with anything i have. Weapon, items, and armor all used pointers so i would assume bloodcodes are the same. I'm working on a minor tutorial via the console dumper on how to swap items. Not sure about adding new ones though

edit: Here is the code that will let you change your character that you already have started.

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>1215</ID>
      <Description>"Bypass Customziation Reset"</Description>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>[ENABLE]

aobscanmodule(CustBypassAOB,CodeVein-Win64-Shipping.exe,41 0F B6 D6 48 89 F1 E8 88) // should be unique
alloc(newmem,$1000,"CodeVein-Win64-Shipping.exe"+5F7FE2C)

label(code)
label(return)

newmem:

code:
  movzx edx,r14l
  mov rcx,rsi
  jmp return

CustBypassAOB:
  jmp newmem
  nop
  nop
CustBypassAOB+c:
return:
registersymbol(CustBypassAOB)

[DISABLE]

CustBypassAOB:
  db 41 0F B6 D6 48 89 F1

unregistersymbol(CustBypassAOB)
dealloc(newmem)
</AssemblerScript>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
What this code does is it disabled your character being reset after previewing a customization. So basically you start a new game, make the character you want, save the customization, back out, load your main save, enable the code, go to the customization, highlight it, and then back out. You will notice that your character didnt revert back. Then you can just exit the customization screen and your character will be saved via that preset.

Edit2:

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>1223</ID>
      <Description>"Current Highlighted Weapon"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : CodeVein-Win64-Shipping.exe
  Version: 
  Date   : 2019-09-30
  Author : Turk

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(CurWeapAOB,CodeVein-Win64-Shipping.exe,4D 8B 40 08 88 44 24 20) // should be unique
alloc(newmem,$1000,"CodeVein-Win64-Shipping.exe"+6651F68)

label(code)
label(return)
label(WeaponData)
registersymbol(WeaponData)

newmem:

code:
  mov [WeaponData],r8
  mov r8,[r8+08]
  mov [rsp+20],al
  jmp return
  WeaponData:

CurWeapAOB:
  jmp newmem
  nop
  nop
  nop
return:
registersymbol(CurWeapAOB)

[DISABLE]

CurWeapAOB:
  db 4D 8B 40 08 88 44 24 20

unregistersymbol(CurWeapAOB)
unregistersymbol(WeaponData)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: "CodeVein-Win64-Shipping.exe"+6651F68

"CodeVein-Win64-Shipping.exe"+6651F49: 48 89 D8                 -  mov rax,rbx
"CodeVein-Win64-Shipping.exe"+6651F4C: 48 8B 5C 24 40           -  mov rbx,[rsp+40]
"CodeVein-Win64-Shipping.exe"+6651F51: 48 83 C4 30              -  add rsp,30
"CodeVein-Win64-Shipping.exe"+6651F55: 5F                       -  pop rdi
"CodeVein-Win64-Shipping.exe"+6651F56: C3                       -  ret 
"CodeVein-Win64-Shipping.exe"+6651F57: 0F B6 40 18              -  movzx eax,byte ptr [rax+18]
"CodeVein-Win64-Shipping.exe"+6651F5B: 48 89 DA                 -  mov rdx,rbx
"CodeVein-Win64-Shipping.exe"+6651F5E: 45 8B 48 14              -  mov r9d,[r8+14]
"CodeVein-Win64-Shipping.exe"+6651F62: 48 89 F9                 -  mov rcx,rdi
"CodeVein-Win64-Shipping.exe"+6651F65: 4C 8B 17                 -  mov r10,[rdi]
// ---------- INJECTING HERE ----------
"CodeVein-Win64-Shipping.exe"+6651F68: 4D 8B 40 08              -  mov r8,[r8+08]
"CodeVein-Win64-Shipping.exe"+6651F6C: 88 44 24 20              -  mov [rsp+20],al
// ---------- DONE INJECTING  ----------
"CodeVein-Win64-Shipping.exe"+6651F70: 41 FF 92 98 00 00 00     -  call qword ptr [r10+00000098]
"CodeVein-Win64-Shipping.exe"+6651F77: 48 89 D8                 -  mov rax,rbx
"CodeVein-Win64-Shipping.exe"+6651F7A: 48 8B 5C 24 40           -  mov rbx,[rsp+40]
"CodeVein-Win64-Shipping.exe"+6651F7F: 48 83 C4 30              -  add rsp,30
"CodeVein-Win64-Shipping.exe"+6651F83: 5F                       -  pop rdi
"CodeVein-Win64-Shipping.exe"+6651F84: C3                       -  ret 
"CodeVein-Win64-Shipping.exe"+6651F85: CC                       -  int 3 
"CodeVein-Win64-Shipping.exe"+6651F86: 41 53                    -  push r11
"CodeVein-Win64-Shipping.exe"+6651F88: 49 F7 D3                 -  not r11
"CodeVein-Win64-Shipping.exe"+6651F8B: 4C 21 1C 24              -  and [rsp],r11
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>1226</ID>
          <Description>"Weapon Pointer"</Description>
          <ShowAsHex>1</ShowAsHex>
          <VariableType>8 Bytes</VariableType>
          <Address>WeaponData</Address>
          <Offsets>
            <Offset>8</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1225</ID>
          <Description>"Quantity"</Description>
          <VariableType>4 Bytes</VariableType>
          <Address>WeaponData</Address>
          <Offsets>
            <Offset>1c</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1227</ID>
          <Description>"Quality"</Description>
          <VariableType>4 Bytes</VariableType>
          <Address>WeaponData</Address>
          <Offsets>
            <Offset>14</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1228</ID>
          <Description>"Transformation"</Description>
          <DropDownList DisplayValueAsItem="1">0:None
1:Alleviation
2:Fortification
3:Intensification
4:Gifts
5:Devour
6:Fire
7:Ice
8:Lightning
9:Venom
10:Stun
11:Inhibit
12:Slow
</DropDownList>
          <VariableType>Byte</VariableType>
          <Address>WeaponData</Address>
          <Offsets>
            <Offset>18</Offset>
          </Offsets>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>1229</ID>
      <Description>"Current Highlighted Blood Veil"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : CodeVein-Win64-Shipping.exe
  Version: 
  Date   : 2019-09-30
  Author : Turk

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(CurVeilAOB,CodeVein-Win64-Shipping.exe,4C 8B 40 08 4D 85 C0 74 E1) // should be unique
alloc(newmem,$1000,"CodeVein-Win64-Shipping.exe"+64B3337)

label(code)
label(return)
label(VeilData)
registersymbol(VeilData)

newmem:

code:
  mov [VeilData],rax
  mov r8,[rax+08]
  test r8,r8
  jmp return
  VeilData:

CurVeilAOB:
  jmp newmem
  nop
  nop
return:
registersymbol(CurVeilAOB)

[DISABLE]

CurVeilAOB:
  db 4C 8B 40 08 4D 85 C0

unregistersymbol(CurVeilAOB)
unregistersymbol(VeilData)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: "CodeVein-Win64-Shipping.exe"+64B3337

"CodeVein-Win64-Shipping.exe"+64B3319: 48 89 C2                                   -  mov rdx,rax
"CodeVein-Win64-Shipping.exe"+64B331C: 48 85 C0                                   -  test rax,rax
"CodeVein-Win64-Shipping.exe"+64B331F: 75 16                                      -  jne CodeVein-Win64-Shipping.exe+64B3337
"CodeVein-Win64-Shipping.exe"+64B3321: 48 89 D9                                   -  mov rcx,rbx
"CodeVein-Win64-Shipping.exe"+64B3324: E8 A7 1C 6A FA                             -  call CodeVein-Win64-Shipping.exe+B54FD0
"CodeVein-Win64-Shipping.exe"+64B3329: 48 89 D8                                   -  mov rax,rbx
"CodeVein-Win64-Shipping.exe"+64B332C: 48 8B 5C 24 40                             -  mov rbx,[rsp+40]
"CodeVein-Win64-Shipping.exe"+64B3331: 48 83 C4 30                                -  add rsp,30
"CodeVein-Win64-Shipping.exe"+64B3335: 5F                                         -  pop rdi
"CodeVein-Win64-Shipping.exe"+64B3336: C3                                         -  ret 
// ---------- INJECTING HERE ----------
"CodeVein-Win64-Shipping.exe"+64B3337: 4C 8B 40 08                                -  mov r8,[rax+08]
"CodeVein-Win64-Shipping.exe"+64B333B: 4D 85 C0                                   -  test r8,r8
// ---------- DONE INJECTING  ----------
"CodeVein-Win64-Shipping.exe"+64B333E: 74 E1                                      -  je CodeVein-Win64-Shipping.exe+64B3321
"CodeVein-Win64-Shipping.exe"+64B3340: 0F B6 40 18                                -  movzx eax,byte ptr [rax+18]
"CodeVein-Win64-Shipping.exe"+64B3344: 48 89 F9                                   -  mov rcx,rdi
"CodeVein-Win64-Shipping.exe"+64B3347: 44 8B 4A 14                                -  mov r9d,[rdx+14]
"CodeVein-Win64-Shipping.exe"+64B334B: 48 89 DA                                   -  mov rdx,rbx
"CodeVein-Win64-Shipping.exe"+64B334E: 4C 8B 17                                   -  mov r10,[rdi]
"CodeVein-Win64-Shipping.exe"+64B3351: 88 44 24 20                                -  mov [rsp+20],al
"CodeVein-Win64-Shipping.exe"+64B3355: 41 FF 92 A0 00 00 00                       -  call qword ptr [r10+000000A0]
"CodeVein-Win64-Shipping.exe"+64B335C: 48 89 D8                                   -  mov rax,rbx
"CodeVein-Win64-Shipping.exe"+64B335F: 48 8B 5C 24 40                             -  mov rbx,[rsp+40]
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>1231</ID>
          <Description>"Veil Pointer"</Description>
          <ShowAsHex>1</ShowAsHex>
          <VariableType>8 Bytes</VariableType>
          <Address>VeilData</Address>
          <Offsets>
            <Offset>8</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1232</ID>
          <Description>"Quantity"</Description>
          <VariableType>4 Bytes</VariableType>
          <Address>VeilData</Address>
          <Offsets>
            <Offset>1c</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1233</ID>
          <Description>"Quality"</Description>
          <VariableType>4 Bytes</VariableType>
          <Address>VeilData</Address>
          <Offsets>
            <Offset>14</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1234</ID>
          <Description>"Transformation"</Description>
          <DropDownList DisplayValueAsItem="1">0:None
1:Alleviation
2:Fortification
3:Intensification
4:Gifts
5:Devour
6:Fire
7:Ice
8:Lightning
9:Venom
10:Stun
11:Inhibit
12:Slow
</DropDownList>
          <VariableType>Byte</VariableType>
          <Address>VeilData</Address>
          <Offsets>
            <Offset>18</Offset>
          </Offsets>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
    <CheatEntry>
      <ID>1235</ID>
      <Description>"Current Highlighted Item"</Description>
      <Options moHideChildren="1"/>
      <LastState/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : CodeVein-Win64-Shipping.exe
  Version: 
  Date   : 2019-09-30
  Author : Turk

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(CurItemAOB,CodeVein-Win64-Shipping.exe,1A 0F 10 00 0F 10 48 10) // should be unique
alloc(newmem,$1000,"CodeVein-Win64-Shipping.exe"+612A86F)

label(code)
label(return)
label(ItemData)
registersymbol(ItemData)

newmem:

code:
  mov [ItemData],rax
  movups xmm0,[rax]
  movups xmm1,[rax+10]
  jmp return
  ItemData:

CurItemAOB+01:
  jmp newmem
  nop
  nop
return:
registersymbol(CurItemAOB)

[DISABLE]

CurItemAOB+01:
  db 0F 10 00 0F 10 48 10

unregistersymbol(CurItemAOB)
unregistersymbol(ItemData)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: "CodeVein-Win64-Shipping.exe"+612A86F

"CodeVein-Win64-Shipping.exe"+612A842: 48 89 44 24 30                 -  mov [rsp+30],rax
"CodeVein-Win64-Shipping.exe"+612A847: E8 44 62 91 FA                 -  call CodeVein-Win64-Shipping.exe+A40A90
"CodeVein-Win64-Shipping.exe"+612A84C: 48 89 C2                       -  mov rdx,rax
"CodeVein-Win64-Shipping.exe"+612A84F: 4C 8D 4C 24 30                 -  lea r9,[rsp+30]
"CodeVein-Win64-Shipping.exe"+612A854: 41 B8 2B 00 00 00              -  mov r8d,0000002B
"CodeVein-Win64-Shipping.exe"+612A85A: 48 89 F9                       -  mov rcx,rdi
"CodeVein-Win64-Shipping.exe"+612A85D: E8 2E 11 82 FA                 -  call CodeVein-Win64-Shipping.exe+94B990
"CodeVein-Win64-Shipping.exe"+612A862: 48 8B 84 24 A8 00 00 00        -  mov rax,[rsp+000000A8]
"CodeVein-Win64-Shipping.exe"+612A86A: 48 85 C0                       -  test rax,rax
"CodeVein-Win64-Shipping.exe"+612A86D: 74 1A                          -  je CodeVein-Win64-Shipping.exe+612A889
// ---------- INJECTING HERE ----------
"CodeVein-Win64-Shipping.exe"+612A86F: 0F 10 00                       -  movups xmm0,[rax]
"CodeVein-Win64-Shipping.exe"+612A872: 0F 10 48 10                    -  movups xmm1,[rax+10]
// ---------- DONE INJECTING  ----------
"CodeVein-Win64-Shipping.exe"+612A876: 0F 11 03                       -  movups [rbx],xmm0
"CodeVein-Win64-Shipping.exe"+612A879: F2 0F 10 40 20                 -  movsd xmm0,[rax+20]
"CodeVein-Win64-Shipping.exe"+612A87E: 0F 11 4B 10                    -  movups [rbx+10],xmm1
"CodeVein-Win64-Shipping.exe"+612A882: F2 0F 11 43 20                 -  movsd [rbx+20],xmm0
"CodeVein-Win64-Shipping.exe"+612A887: EB 29                          -  jmp CodeVein-Win64-Shipping.exe+612A8B2
"CodeVein-Win64-Shipping.exe"+612A889: 48 89 43 10                    -  mov [rbx+10],rax
"CodeVein-Win64-Shipping.exe"+612A88D: 48 89 43 18                    -  mov [rbx+18],rax
"CodeVein-Win64-Shipping.exe"+612A891: 48 89 43 20                    -  mov [rbx+20],rax
"CodeVein-Win64-Shipping.exe"+612A895: 48 89 33                       -  mov [rbx],rsi
"CodeVein-Win64-Shipping.exe"+612A898: 48 89 73 08                    -  mov [rbx+08],rsi
}
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>1238</ID>
          <Description>"Item Pointer"</Description>
          <ShowAsHex>1</ShowAsHex>
          <VariableType>8 Bytes</VariableType>
          <Address>ItemData</Address>
          <Offsets>
            <Offset>0</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1239</ID>
          <Description>"Item Function?"</Description>
          <ShowAsHex>1</ShowAsHex>
          <VariableType>8 Bytes</VariableType>
          <Address>ItemData</Address>
          <Offsets>
            <Offset>8</Offset>
          </Offsets>
        </CheatEntry>
        <CheatEntry>
          <ID>1237</ID>
          <Description>"Quantity Held"</Description>
          <VariableType>4 Bytes</VariableType>
          <Address>ItemData</Address>
          <Offsets>
            <Offset>14</Offset>
          </Offsets>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
Here are the current highlighted scripts recreated since zach's AOBs didnt work for me. Will also be the basis of the item swap tutorial
I think I might be stupid but I can't figure out how to do the customization thing. I saved the one I wanted on another save, loaded my main, turned on cheat engine, enabled the script but there is no customization showing (only blank boxes) and when I press the blank box nothing changes.
I figured it out right after I posted lmao

RaxeIe
Expert Cheater
Expert Cheater
Posts: 97
Joined: Sun Sep 22, 2019 10:19 pm
Reputation: 14

Re: Code Vein

Post by RaxeIe »

zachillios, pox911, Zanzer if any of you see this can you figure out how to add something onto the cheat table which unlocks all codes and vestiges?

pxctd
Noobzor
Noobzor
Posts: 14
Joined: Wed Dec 05, 2018 12:53 am
Reputation: 0

Re: Code Vein

Post by pxctd »

Hey zachillios, looks like the latest update broke your weapon and blood veil editors.

RaxeIe
Expert Cheater
Expert Cheater
Posts: 97
Joined: Sun Sep 22, 2019 10:19 pm
Reputation: 14

Re: Code Vein

Post by RaxeIe »

pxctd wrote:
Tue Oct 01, 2019 1:47 am
Hey zachillios, looks like the latest update broke your weapon and blood veil editors.
oof yup i cant use the thing which speeds up skill animations anymore

Post Reply

Who is online

Users browsing this forum: 711wasaparttimejob, alex185, Bing [Bot], BLEXBot, crispymcd, Google [Bot], plmanith17, psbeer, Triton_, YandexBot