[Request] Symphony of War: The Nephilim Saga

Ask about cheats/tables for single player games here
User avatar
Hentai-san
Cheater
Cheater
Posts: 34
Joined: Tue Mar 07, 2017 5:05 pm
Reputation: 50

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

Post by Hentai-san »

I've posted my scripts as a standalone in tables as well and will be updating if necessary there.
Original post here
Here's a big goody :D :

I've reworked aanpsx's item scripts to streamline the whole thing. One tiny script + id tables for the items/resources/artifacts I've obtained so far.

Note: You'll need a custom 'RPG VX type'.
If you don't have it follow these instructions ⟶
In the search area, right click drop down lists next to Value type and pick this one 'Define new custom type (Auto Assembler)' the auto assemble window will pop up, paste this script:

Code: Select all

alloc(ConvertRoutine,1024)
alloc(ConvertBackRoutine,1024)
alloc(TypeName,256)
alloc(ByteSize,4)
alloc(UsesFloat,1)
alloc(CallMethod,1)

TypeName:
db 'RPG VX type',0

ByteSize:
dd 4

UsesFloat:
db 0 //Change to 1 if this custom type should be treated as a float

CallMethod:
db 1 //Remove or change to 0 for legacy call mechanism

//The convert routine should hold a routine that converts the data to an integer (in eax)
//function declared as: cdecl int ConvertRoutine(unsigned char *input, PTR_UINT address);
//Note: Keep in mind that this routine can be called by multiple threads at the same time.
ConvertRoutine:
//jmp dllname.functionname
[64-bit]
//or manual:
//parameters: (64-bit)
//rcx=address of input
//rdx=address
mov eax,[rcx] //eax now contains the bytes 'input' pointed to
shr eax, 1

ret
[/64-bit]

[32-bit]
//jmp dllname.functionname
//or manual:
//parameters: (32-bit)
push ebp
mov ebp,esp
//[ebp+8]=address of input
//[ebp+c]=address
//example:
mov eax,[ebp+8] //place the address that contains the bytes into eax
mov eax,[eax] //place the bytes into eax so it's handled as a normal 4 byte value
shr eax, 1

pop ebp
ret
[/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: cdecl void ConvertBackRoutine(int i, PTR_UINT address, unsigned char *output);
ConvertBackRoutine:
//jmp dllname.functionname
//or manual:
[64-bit]
//parameters: (64-bit)
//ecx=input
//rdx=address
//r8=address of output
//example:
shl ecx, 1
inc ecx
mov [r8],ecx //place the integer at the 4 bytes pointed to by r8

ret
[/64-bit]

[32-bit]
//parameters: (32-bit)
push ebp
mov ebp,esp
//[ebp+8]=input
//[ebp+c]=address
//[ebp+10]=address of output
//example:
push eax
push ebx
mov eax,[ebp+8] //load the value into eax
mov ebx,[ebp+10] //load the output address into ebx
shl eax, 1
inc eax
mov [ebx],eax //write the value into the address
pop ebx
pop eax

pop ebp
ret
[/32-bit]
then click OK and the option 'RPG VX type' will be available.
V2 - Added support for artifacts and items. Has most ids for artifacts and items.

As I mentioned before, we're injecting into probably display code. That's also one of the reasons the item list was changing after going on any artifact listing screen. This means 4 things:
  1. If you want to update the item pointers, set Update when loading inventory? to Update items then open one of the item screens in-game like [Organize Army > Use Items] or [Organize Army > Squad Operations > Use Items] or to update arena tokens, head to [Arena].
  2. If you want to update the artifact pointers, set Update when loading inventory? to Update artifacts then open one of the artifact screens in-game like [Organize Army > Squad Operations > Artifacts] or [Marketplace > Sell Items].
  3. After updating one of the lists once, set Update when loading inventory? to Don't update to avoid overriding the lists just in case.
  4. You only need to update again if you gain new items or artifacts. Follow steps 1. or 2. again for that.
Also added a simple get by Id option, for when you don't want to go through the categories to find a single item. Just update the list you want first then set the item you want in Select By Id and then activate Load By Id and it will point to the correct item.

SymphonyOfWarJustItems.ct
V2 - Now can toggle between updating artifact pointers or item pointers.
(187.09 KiB) Downloaded 4438 times
SymphonyOfWarJustItems.ct
(105.28 KiB) Downloaded 1746 times
Last edited by Hentai-san on Sun Jun 26, 2022 12:12 am, edited 5 times in total.

Nilaru
Cheater
Cheater
Posts: 26
Joined: Sat Mar 04, 2017 4:13 am
Reputation: 5

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

Post by Nilaru »

Hentai-san wrote:
Wed Jun 22, 2022 6:28 am
Here's a big goody :D :

I've reworked the item scripts to streamline the whole thing. One tiny script + an id table for the items i have.

Should work much better and scale perfectly if more items need be added.

SymphonyOfWarJustItems.ct
Thank you! Working great, though not all of my purple trait books are coming in. Arcane Might isn't showing up.

Also, Is there some way you have found of duplicating an artifact?

User avatar
VeralX
Cheater
Cheater
Posts: 28
Joined: Sun Dec 20, 2020 2:18 pm
Reputation: 2

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

Post by VeralX »

Is there a way to actually ADD items, not change quantity of existing ones? For some games it seems do-able, some doesn't seems to be the case. How is it with SoW?

Enferno33
Expert Cheater
Expert Cheater
Posts: 154
Joined: Tue Dec 24, 2019 6:05 am
Reputation: 50

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

Post by Enferno33 »

Hentai-san wrote:
Wed Jun 22, 2022 6:28 am
Here's a big goody :D :

I've reworked the item scripts to streamline the whole thing. One tiny script + an id table for the items i have.

Should work much better and scale perfectly if more items need be added.

SymphonyOfWarJustItems.ct
Ok. It seems that some of the names are wrong. Sometimes whenever I change certain books (I'm still working on figuring out exactly which ones) it will also give me a MASSIVE amount of certain artifacts. I just had to go through and sell about 300+ (90+ of each one).

Also the Trait: Overpower isn't correct. I've had it for awhile and it's still ?? next to it. However, whenever I obtained a certain Artifact it showed "1" and whenever I changed it to 99, it gave me 99 Artifacts. (Sorry, still working out the exact ones).

Also, Trait: Smite is listed in the purple as ??? instead of in the blue.

EDIT: Ok, it seems that whenever you get certain Artifacts it messes up the entire table. I'll show a screenshot:

[Link]

As you can see in the screenshot that I have 99 Iron / Gems / etc , however the table shows I have 1 / 3 / 5 / etc. Also on the Codex Items, I have 99 of each in game, but it shows I only have a few here.

It worked perfectly until I got certain Artifacts and then whenever I'd put them at 99, it would give me the 99 Artifacts instead.

wiseblue1989
Expert Cheater
Expert Cheater
Posts: 63
Joined: Fri Apr 08, 2022 4:58 am
Reputation: 13

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

Post by wiseblue1989 »

Enferno33 wrote:
Thu Jun 23, 2022 3:25 am


Ok. It seems that some of the names are wrong. Sometimes whenever I change certain books (I'm still working on figuring out exactly which ones) it will also give me a MASSIVE amount of certain artifacts. I just had to go through and sell about 300+ (90+ of each one).


It worked perfectly until I got certain Artifacts and then whenever I'd put them at 99, it would give me the 99 Artifacts instead.
:D silly you, just edit the item number to 1 or 2 again

Northturtle11
What is cheating?
What is cheating?
Posts: 1
Joined: Thu Jun 23, 2022 3:54 am
Reputation: 0

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

Post by Northturtle11 »

renoraider wrote:
Tue Jun 21, 2022 9:42 am
VeralX wrote:
Thu Jun 16, 2022 10:43 am
toydefenser wrote:
Thu Jun 16, 2022 10:05 am
if your character doesn't marry abigayle then you will have the possibility to marry beatrix(big breasts):)
Do you know who else is romance option? Diana for example?

Also how do you build bonds? Same as FE by putting units next to each other?
It seems like you simply need to advance the story. Apparently chapter 26 unlocks romance with either Narima or Beatrix. Diana can have a romance with Stefan earlier than that I think, whichever chapter let’s you control your main character again. Also, Jules can romance Beatrix or Narima as well, depends on who you end pairing with who. Meanwhile a side chapter in 20 let’s you get Edelia, Diana’s sister by blood pact, who can get bonded to Lysander. Meanwhile Sybil can be bonded to Barnabas. And a side story can turn her into a paladin.
I'm at chapter 28 and don't see an option to romance beatrix but she is avaiable to jules. do I have to pair him off to someone else before 26 to get it or are only male characters able to romance beatrix.

Sword X
Expert Cheater
Expert Cheater
Posts: 73
Joined: Fri Jun 18, 2021 11:27 am
Reputation: 3

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

Post by Sword X »

Can you guys write a script for infinite turns?

Enferno33
Expert Cheater
Expert Cheater
Posts: 154
Joined: Tue Dec 24, 2019 6:05 am
Reputation: 50

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

Post by Enferno33 »

wiseblue1989 wrote:
Thu Jun 23, 2022 3:56 am
Enferno33 wrote:
Thu Jun 23, 2022 3:25 am


Ok. It seems that some of the names are wrong. Sometimes whenever I change certain books (I'm still working on figuring out exactly which ones) it will also give me a MASSIVE amount of certain artifacts. I just had to go through and sell about 300+ (90+ of each one).


It worked perfectly until I got certain Artifacts and then whenever I'd put them at 99, it would give me the 99 Artifacts instead.
:D silly you, just edit the item number to 1 or 2 again
** I guess I'll just have to change it from 99 using the traits / consumables and back to 1-2 for equipping Artifacts. I mean this isn't annoying at all, it's just me being "Silly!".

User avatar
VeralX
Cheater
Cheater
Posts: 28
Joined: Sun Dec 20, 2020 2:18 pm
Reputation: 2

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

Post by VeralX »

Enferno33 wrote:
Thu Jun 23, 2022 3:25 am
Hentai-san wrote:
Wed Jun 22, 2022 6:28 am
Here's a big goody :D :

I've reworked the item scripts to streamline the whole thing. One tiny script + an id table for the items i have.

Should work much better and scale perfectly if more items need be added.

SymphonyOfWarJustItems.ct
Ok. It seems that some of the names are wrong. Sometimes whenever I change certain books (I'm still working on figuring out exactly which ones) it will also give me a MASSIVE amount of certain artifacts. I just had to go through and sell about 300+ (90+ of each one).

Also the Trait: Overpower isn't correct. I've had it for awhile and it's still ?? next to it. However, whenever I obtained a certain Artifact it showed "1" and whenever I changed it to 99, it gave me 99 Artifacts. (Sorry, still working out the exact ones).

Also, Trait: Smite is listed in the purple as ??? instead of in the blue.

EDIT: Ok, it seems that whenever you get certain Artifacts it messes up the entire table. I'll show a screenshot:

[Link]

As you can see in the screenshot that I have 99 Iron / Gems / etc , however the table shows I have 1 / 3 / 5 / etc. Also on the Codex Items, I have 99 of each in game, but it shows I only have a few here.

It worked perfectly until I got certain Artifacts and then whenever I'd put them at 99, it would give me the 99 Artifacts instead.

Actually that's the good point. If you enter items it shows items, but you locked the value and entered Artifacts and that's why it gave you lot of artifacts. It's quite good cause if you know how to use it you can give yourself both items and artifacts.

nillmand2
Expert Cheater
Expert Cheater
Posts: 85
Joined: Sat Dec 08, 2018 12:44 pm
Reputation: 4

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

Post by nillmand2 »

Edit: nvm fiqured it out..

User avatar
Hentai-san
Cheater
Cheater
Posts: 34
Joined: Tue Mar 07, 2017 5:05 pm
Reputation: 50

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

Post by Hentai-san »

Enferno33 wrote:
Thu Jun 23, 2022 3:25 am
Hentai-san wrote:
Wed Jun 22, 2022 6:28 am
Here's a big goody :D :

I've reworked the item scripts to streamline the whole thing. One tiny script + an id table for the items i have.

Should work much better and scale perfectly if more items need be added.

SymphonyOfWarJustItems.ct
Ok. It seems that some of the names are wrong. Sometimes whenever I change certain books (I'm still working on figuring out exactly which ones) it will also give me a MASSIVE amount of certain artifacts. I just had to go through and sell about 300+ (90+ of each one).

Also the Trait: Overpower isn't correct. I've had it for awhile and it's still ?? next to it. However, whenever I obtained a certain Artifact it showed "1" and whenever I changed it to 99, it gave me 99 Artifacts. (Sorry, still working out the exact ones).

Also, Trait: Smite is listed in the purple as ??? instead of in the blue.

EDIT: Ok, it seems that whenever you get certain Artifacts it messes up the entire table. I'll show a screenshot:

[Link]

As you can see in the screenshot that I have 99 Iron / Gems / etc , however the table shows I have 1 / 3 / 5 / etc. Also on the Codex Items, I have 99 of each in game, but it shows I only have a few here.

It worked perfectly until I got certain Artifacts and then whenever I'd put them at 99, it would give me the 99 Artifacts instead.
I haven't got all the traits or artifacts and haven't add much time with the game recently so forgive that some traits may not be pointing to the correct spots. Some of it was just guessing to get a table out ASAP.

You inadvertently ran into one of the reasons that RPG Maker Games are very annoying.

So everything in this game is pretty much ultimately coded in Ruby. And so everything is mostly stored in associative arrays.

What this means is you've got everything stored as lists of keys pointing to lists of addresses. They're usually relatively close but they change. Sometimes lists get too big (like when you get new items) and the solution is to make a bigger list and copy everything to the new list.

Operating systems are smart so if there's space in the same spot adjacent they'll stick the new list in the same placeish but still copy things around. So if you freeze the addresses like you did, you'll point to the same spot in a new list. Suddenly that spot where a codex used to be is now where an artifact is.

I have to give big props to aanpsx because they actually found the code that indexes the item lists. How they had the patience is beyond me.

Unfortunately it's a weak solution (but it's the best so far) to find the items. This is because this particular list we inject into points only to the items we have. And worse; we don't know where the list is or ultimately how it's layed out in memory (at least I don't).

So what I ended up coding, based on aanpsx's solution is to simply store a list of Ids that I know and when the code that accesses the list runs look to the Id of the item and see if it matches any of the Ids I know and then store it if it does (this is pretty bad and quite slow but ultimately works out alright :? ).

At least this means if anyone compiles every Id for every item (I might do it eventually but will actually have to basically 100% the game inventory) we can get every item (including artifacts) but it would be way better if someone who actually knows how RPG Maker lays out shit in memory and can code some LUA found out where the game stores its tables.

I've seen some stuff like that around here for RPG Maker Games but it would be way better if some one got to cooking a better solution like DarkByte cooked up for Mono (and actually shared it with some docs but that is some serious unpaid labor :D ).

User avatar
VeralX
Cheater
Cheater
Posts: 28
Joined: Sun Dec 20, 2020 2:18 pm
Reputation: 2

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

Post by VeralX »

You still did great job, even with what we have it's very helpful.

yhawkz
Expert Cheater
Expert Cheater
Posts: 74
Joined: Fri Mar 03, 2017 7:54 am
Reputation: 7

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

Post by yhawkz »

Hentai-san wrote:
Wed Jun 22, 2022 6:28 am
Here's a big goody :D :

I've reworked the item scripts to streamline the whole thing. One tiny script + an id table for the items i have.

Should work much better and scale perfectly if more items need be added.

SymphonyOfWarJustItems.ct
Hi, I can use the aanpsx get item v2... how to change it so i can use your table? thanks

Edit : it's working.... i use it in chater 1-4.... it works now on ch 5 Thanks

User avatar
Supreme23
Cheater
Cheater
Posts: 27
Joined: Tue Mar 29, 2022 10:46 pm
Reputation: 2

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

Post by Supreme23 »

aanpsx wrote:
Thu Jun 16, 2022 2:58 pm
For now:
Image
--> you must have at least 1 item to make address pointer work (if 0 then show??)
--> Please use darkbyte's custom type (RPG VX Type)

Nilaru wrote:
Tue Jun 21, 2022 1:18 am
It does appear that the 1.0b update has broken the Faction XP option, just confirmed.
for update to 1.0b:
- edit ENABLE script then go to line 85
- change CMP R9,1F0D9 to CMP R9,1F2A1

Image
Arara wrote:
Wed Jun 22, 2022 2:03 am
btw can you post this on table section instead of request section? so that people can easily find it
no, Sorry :( ..
it would hard for me to maintain this table for the future update (because of shared opcodes like "gamemaker")
aaaand, maybe to make some people to "read more"?? :)
Best game I've played so far this year, and with your table made it so much more enjoyable, thanks :-D

User avatar
Khayman
Cheater
Cheater
Posts: 31
Joined: Sat Dec 22, 2018 11:47 am
Reputation: 69

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

Post by Khayman »

Faction xp for version 1.0b2
Replace line 85 in "Enable" script

Code: Select all

cmp r9,1F2B9
Found it by making a breakpoint i disassembler and running until r9 was someting like 1F***. I don't know if there is smarter way for getting 1F2B9 value. If someone can enlighten me I would be much obliged ;).

Post Reply

Who is online

Users browsing this forum: Baidu [Spider], coolman01241fg, Douzy, Redemption, Ziro99