[Request] Symphony of War: The Nephilim Saga

Ask about cheats/tables for single player games here
Kay
Novice Cheater
Novice Cheater
Posts: 18
Joined: Fri Mar 31, 2017 10:52 pm
Reputation: 1

Re: [Request] Symphony of War: The Nephilim Saga

Post by Kay »

absorbbone wrote:
Sat Jun 11, 2022 6:52 pm
I see. Got the 2x+1 4 bytes search to work for non-gold resources except tech tree. One interesting thing i saw is if you hover over your different saves when trying to load a game all the resources change value except the tech tree scrolls. I'm suspecting the display value to be a derivative of your current faction level and thus searching for it does nothing
Hmm interesting. On that note, trying to gain faction level doesnt really work, it feels like exp/cp is coded obtusely in a deliberate manner.

In other news, you can change item numbers, you have items that boost certain stats, exp, cp, etc. The downside is you do have to have these items in the first place to perform search. Maybe someone can do a table on these values later. This in addition with resource search leave tech upgrade the only value we can't modify....for now.

toydefenser
Expert Cheater
Expert Cheater
Posts: 174
Joined: Wed Oct 23, 2019 12:30 pm
Reputation: 23

Re: [Request] Symphony of War: The Nephilim Saga

Post by toydefenser »

+1

nos4r2
Expert Cheater
Expert Cheater
Posts: 243
Joined: Sun Oct 29, 2017 3:58 am
Reputation: 46

Re: [Request] Symphony of War: The Nephilim Saga

Post by nos4r2 »

I think you can use this to add rpgm game value type so you can search directly for rpgm game no need to do calculation anymore

i want to give credit but i just can't remember who post it but i'm pretty sure i got it from this forum one of the mod? or admin post it here ( add mine age ago so can't really remember ) i edit mine and copy all of the code and repost here

Code: Select all

alloc(TypeName,256)
alloc(ByteSize,4)
alloc(PreferedAlignment, 4)
alloc(ConvertRoutine,1024)
alloc(ConvertBackRoutine,1024)

TypeName:
db 'RPG VX type',0

ByteSize:
dd 4

PreferedAlignment:
dd 1


//The convert routine should hold a routine that converts the data to an nteger (in eax)
//function declared as: stdcall int ConvertRoutine(unsigned char *input);

//Note: Keep in mind that this routine can be called by multiple threads at the same time.

ConvertRoutine:
[32-bit]
push ebp
mov ebp,esp
push ecx
mov ecx,[ebp+8]
[/32-bit]

//at this point ecx contains the address where the bytes are stored

//put the bytes into the eax register
mov eax,[ecx] //second fun fact, addressing with 32-bit registers doesn't work in 64-bit, it becomes a 64-bit automatically (most of the time)
shr eax,1 //shift right by 1 bit (divide by 2)

//and now exit the routine
[64-bit]
ret
[/64-bit]
[32-bit]
pop ecx
pop ebp
ret 4
[/32-bit]

//The convert back routine should hold a routine that converts the given integer back to a row of bytes (e.g when the user wats to write a new value)
//function declared as: stdcall void ConvertBackRoutine(int i, unsigned char *output);
ConvertBackRoutine:
[32-bit]
push ebp
mov ebp,esp
push edx //save the registers
push ecx
mov edx,[ebp+0c]
mov ecx,[ebp+08]
[/32-bit]

//at this point edx contains the address to write the value to
//and ecx contains the value

push eax
push edx


mov edx,[edx] //edx now contains the original value
and edx,1 //only save the first bit

mov eax,ecx //eax gets the user input value
shl eax,1 //shift left by 1 bit (multiply by 2)
or eax,edx //add the bits of the original value

pop edx
mov [edx],eax //write the new value into the old value
pop eax

[64-bit]
//everything is back to what it was, so exit
ret
[/64-bit]

[32-bit]
//cleanup first
pop ecx
pop edx
pop ebp
ret 8
[/32-bit]
Image

User avatar
Rienfleche
Expert Cheater
Expert Cheater
Posts: 147
Joined: Sun May 15, 2022 6:50 am
Reputation: 55

Re: [Request] Symphony of War: The Nephilim Saga

Post by Rienfleche »

Looking for:

Infinite Health for Troops
Infinite Resource (gold, iron, etc)
Quick XP and CP
Max Loyalty
Max Morale

Target Turns always 1 (missions track how many turns you take to win, so if you can lock that at 1, you'll always succeed with that challenge)

If possible "Always Move". Most units automatically end turn after attacking. But Cavalry get to move after an attack. If you could make all units able to move at any time, that would be awesome.

Also, being able to edit unit stats would be great if there's a way to do that.
[/quote]

add +Movement too

latios507
Noobzor
Noobzor
Posts: 6
Joined: Sat Feb 19, 2022 8:18 am
Reputation: 7

Re: [Request] Symphony of War: The Nephilim Saga

Post by latios507 »

nos4r2 wrote:
Sun Jun 12, 2022 4:37 am
I think you can use this to add rpgm game value type so you can search directly for rpgm game no need to do calculation anymore

i want to give credit but i just can't remember who post it but i'm pretty sure i got it from this forum one of the mod? or admin post it here ( add mine age ago so can't really remember ) i edit mine and copy all of the code and repost here

Code: Select all

alloc(TypeName,256)
alloc(ByteSize,4)
alloc(PreferedAlignment, 4)
alloc(ConvertRoutine,1024)
alloc(ConvertBackRoutine,1024)

TypeName:
db 'RPG VX type',0

ByteSize:
dd 4

PreferedAlignment:
dd 1


//The convert routine should hold a routine that converts the data to an nteger (in eax)
//function declared as: stdcall int ConvertRoutine(unsigned char *input);

//Note: Keep in mind that this routine can be called by multiple threads at the same time.

ConvertRoutine:
[32-bit]
push ebp
mov ebp,esp
push ecx
mov ecx,[ebp+8]
[/32-bit]

//at this point ecx contains the address where the bytes are stored

//put the bytes into the eax register
mov eax,[ecx] //second fun fact, addressing with 32-bit registers doesn't work in 64-bit, it becomes a 64-bit automatically (most of the time)
shr eax,1 //shift right by 1 bit (divide by 2)

//and now exit the routine
[64-bit]
ret
[/64-bit]
[32-bit]
pop ecx
pop ebp
ret 4
[/32-bit]

//The convert back routine should hold a routine that converts the given integer back to a row of bytes (e.g when the user wats to write a new value)
//function declared as: stdcall void ConvertBackRoutine(int i, unsigned char *output);
ConvertBackRoutine:
[32-bit]
push ebp
mov ebp,esp
push edx //save the registers
push ecx
mov edx,[ebp+0c]
mov ecx,[ebp+08]
[/32-bit]

//at this point edx contains the address to write the value to
//and ecx contains the value

push eax
push edx


mov edx,[edx] //edx now contains the original value
and edx,1 //only save the first bit

mov eax,ecx //eax gets the user input value
shl eax,1 //shift left by 1 bit (multiply by 2)
or eax,edx //add the bits of the original value

pop edx
mov [edx],eax //write the new value into the old value
pop eax

[64-bit]
//everything is back to what it was, so exit
ret
[/64-bit]

[32-bit]
//cleanup first
pop ecx
pop edx
pop ebp
ret 8
[/32-bit]
Image
I'm sorry but how do you add this code into CE? That is indeed helpful since we don't have to add the *2+1 to our values

Thanks for sharing!

Edited:

Oh nvm, I figured it out. For those who are curious/lost just like me:
1) Start Symphony of War & CE, then select the process
2) Right Click on the 'Value Type' on the Right side of CE (just below the Scan Type)
3) Select 'Define new custom type (Auto Assembler)'
4) Paste the code above
5) ???
6) Profit. The Value type will display 'RPG VX Type' if you have done it correctly.

Kay
Novice Cheater
Novice Cheater
Posts: 18
Joined: Fri Mar 31, 2017 10:52 pm
Reputation: 1

Re: [Request] Symphony of War: The Nephilim Saga

Post by Kay »

nos4r2 wrote:
Sun Jun 12, 2022 4:37 am
I think you can use this to add rpgm game value type so you can search directly for rpgm game no need to do calculation anymore

i want to give credit but i just can't remember who post it but i'm pretty sure i got it from this forum one of the mod? or admin post it here ( add mine age ago so can't really remember ) i edit mine and copy all of the code and repost here
A quick google search will show that this code is likely from Dark Byte himself (the maker of Cheat Engine). In the same post on the original CE forum, you can also find the instructions on how to add the type in, as someone posted above

joeyamine
Expert Cheater
Expert Cheater
Posts: 114
Joined: Fri Mar 16, 2018 10:09 pm
Reputation: 8

Re: [Request] Symphony of War: The Nephilim Saga

Post by joeyamine »

Nothing yet, huh? Another +1 from me.

CopMuaDong
Noobzor
Noobzor
Posts: 6
Joined: Sun Jun 12, 2022 2:36 pm
Reputation: 0

Re: [Request] Symphony of War: The Nephilim Saga

Post by CopMuaDong »

+1 from me T_T waiting...

Grakon
What is cheating?
What is cheating?
Posts: 2
Joined: Fri Jun 18, 2021 1:29 am
Reputation: 0

Re: [Request] Symphony of War: The Nephilim Saga

Post by Grakon »

+1

Really I would just like unlimited arena tokens and gold so I can cycle and grind generic units.

rinnioveraci
Novice Cheater
Novice Cheater
Posts: 22
Joined: Sat Feb 16, 2019 6:23 am
Reputation: 6

Re: [Request] Symphony of War: The Nephilim Saga

Post by rinnioveraci »

absorbbone wrote:
Sat Jun 11, 2022 10:43 am
That's interesting. Any one knows why do they store values in these formulas (is it for better performance or its the game engine?). I'm a starting data engineer so I'm not familiar with game development and i cant imagine why game values are obfuscated
It's not obfuscated. It's just how binary works. In fact, instead of doing value*2+1, you can also switch CheatEngine to "Binary" and search for the value (without doing the multiplication and adding 1). note how alignment converts to "1" below. RPG Maker doesn't actually store it in a fixed 1/2/4 bytes space.
Ferril wrote:
Sat Jun 11, 2022 3:58 pm
I tried just about every save editor I could find that is supposed to work with rvdata2 files for the saves and couldn't get any of 'em to work... So, If ya find one that actually works right shoot us a link!

Also for anyone curious, saves are in Users\Name\AppData\Roaming\Nephilim, at least for me.
To be able to use save editors or save edit online, you need to un-gzip the rvdata2 file first. It's gzipped. (not zip, gzip). You can use 7zip to do that. Then, add in the .rvdata2 extension to the raw file and you have the save file ready for editors. The raw file should be about 1 Mb in size while the gzipped is about 100-200 kB only.

Deed
Cheater
Cheater
Posts: 43
Joined: Tue Mar 12, 2019 8:23 pm
Reputation: 2

Re: [Request] Symphony of War: The Nephilim Saga

Post by Deed »

rinnioveraci wrote:
Sun Jun 12, 2022 4:10 pm
To be able to use save editors or save edit online, you need to un-gzip the rvdata2 file first. It's gzipped. (not zip, gzip). You can use 7zip to do that. Then, add in the .rvdata2 extension to the raw file and you have the save file ready for editors. The raw file should be about 1 Mb in size while the gzipped is about 100-200 kB only.
Excellent tip! Indeed the gzip does the trick, though no editor seems to be able to read anything useful from the file.

astro0323
Noobzor
Noobzor
Posts: 11
Joined: Tue Oct 20, 2020 12:04 pm
Reputation: 3

Re: [Request] Symphony of War: The Nephilim Saga

Post by astro0323 »

rinnioveraci wrote:
Sun Jun 12, 2022 4:10 pm
absorbbone wrote:
Sat Jun 11, 2022 10:43 am
That's interesting. Any one knows why do they store values in these formulas (is it for better performance or its the game engine?). I'm a starting data engineer so I'm not familiar with game development and i cant imagine why game values are obfuscated
It's not obfuscated. It's just how binary works. In fact, instead of doing value*2+1, you can also switch CheatEngine to "Binary" and search for the value (without doing the multiplication and adding 1). note how alignment converts to "1" below. RPG Maker doesn't actually store it in a fixed 1/2/4 bytes space.
Ferril wrote:
Sat Jun 11, 2022 3:58 pm
I tried just about every save editor I could find that is supposed to work with rvdata2 files for the saves and couldn't get any of 'em to work... So, If ya find one that actually works right shoot us a link!

Also for anyone curious, saves are in Users\Name\AppData\Roaming\Nephilim, at least for me.
To be able to use save editors or save edit online, you need to un-gzip the rvdata2 file first. It's gzipped. (not zip, gzip). You can use 7zip to do that. Then, add in the .rvdata2 extension to the raw file and you have the save file ready for editors. The raw file should be about 1 Mb in size while the gzipped is about 100-200 kB only.
After following your steps, I managed to edit the raw file using [Link]. However, I'm unable to load the save file. Do I need to gzip it again and convert back into rvdata2. I tried doing that with 7zip but it just ends up being a .gz file.

Deed
Cheater
Cheater
Posts: 43
Joined: Tue Mar 12, 2019 8:23 pm
Reputation: 2

Re: [Request] Symphony of War: The Nephilim Saga

Post by Deed »

astro0323 wrote:
Sun Jun 12, 2022 4:25 pm
After following your steps, I managed to edit the raw file using [Link]. However, I'm unable to load the save file. Do I need to gzip it again and convert back into rvdata2. I tried doing that with 7zip but it just ends up being a .gz file.
Did it give you anything useful beyond just a few unknown variables?

rinnioveraci
Novice Cheater
Novice Cheater
Posts: 22
Joined: Sat Feb 16, 2019 6:23 am
Reputation: 6

Re: [Request] Symphony of War: The Nephilim Saga

Post by rinnioveraci »

Deed wrote:
Sun Jun 12, 2022 4:25 pm
Excellent tip! Indeed the gzip does the trick, though no editor seems to be able to read anything useful from the file.
You need to use this: [Link]

Coupled with extracting some of the rvdata2 from the Game.rgss3a file in the game directory with the help of this tool: [Link] (items.rvdata2, weapons.rvdata2, etc ...)

It's a bit more effort from there to actually understand how they store the data (based on using hex editor to see how the save editor changed what value and then finding out the real value in there), I'm still fiddling around.

Yes you need to remove the extension, gzip it back, and change the .gz extension to rvdata2

It's best if you just use hexeditor to find for the values. Do two identical save. change value you want to change in one. then look at the difference between the two saves.

User avatar
Tadeoka
Noobzor
Noobzor
Posts: 6
Joined: Tue Sep 21, 2021 7:46 pm
Reputation: 0

Re: [Request] Symphony of War: The Nephilim Saga

Post by Tadeoka »

I'm not sure what I'm doing wrong. I can find gold by doing <value> x2 +1 under a 4byte search, and by exact value as a binary search. The problem is if I try to change the value under the 4byte search, the game crashes. When I change the value under binary, gold changes to a random value (I.E. changing gold to 9999 in CE changes gold to 1807 in-game no matter what value it's at). I'm not a programmer and have basic knowledge of CE. If someone can explain to me in the simplest of terms how to change gold correctly, I would greatly appreciate it.

Post Reply

Who is online

Users browsing this forum: No registered users