News: 11 March 2016 - Forum Rules, Mobile Version
Current Moderators - DarkSol, KingMike, MathOnNapkins, Azkadellia

Author Topic: DSVania Editor (v1.6)  (Read 17579 times)

Esco

  • Full Member
  • ***
  • Posts: 119
  • Esco.... nuff said!
    • View Profile
Re: DSVania Editor
« Reply #20 on: March 01, 2017, 02:42:33 am »
Well, it's not often that I say this but: I'm impressed. VERY impressed. This is an amazing piece of work.  :thumbsup: You have perfect timing with it too: I am about to start setting up the animations/hitboxes for a LOT of the enemies in my Castlevania: SOTN engine. This will actually make it a lot faster to do for the SOTN enemies that appear in any of the 3 DS-vanias.

I do have one question, though: when I try to use the sprite editor for Portrait of ruin the app freezes and in the dos box for the exe I see this:
Error: NoMethodError: undefined method 'lines' for nil:NilClass

This is followed by a bunch more lines after (I have included a screenshot with this post). The app itself is frozen but if I hit enter in the dos box it closes them both. However, the sprite editors works fine for both OOE or DOS. Is this still WIP and currently broken with POR or is there currently a fix for it? I am using windows 7 64 bit edition

.
Esco.... the original, Nuyorican, Latin Lover! And Creator of the Castlevania: Symphony of the Night hack!

The blog on the Castlevania: SOTN HACKED project: http://sotnhacked.wordpress.com/

LagoLunatic

  • Jr. Member
  • **
  • Posts: 78
    • View Profile
Re: DSVania Editor
« Reply #21 on: March 01, 2017, 10:07:57 am »
Impressive utility!
Thank you for making this!

One thing I wanted to ask is if this tool has sprite editing support, and if so how deep into sprites does it go?
I ask because I have a project regarding both Dawn of Sorrow and Portrait of Ruin on the works:
http://www.romhacking.net/forum/index.php/topic,22445.0.html

I basically am editing all of the portraits in both games to give them a proper Kojima like art style instead of anime, and if your tool has support for editing the portraits and HUDs then it might make my life a lot easier haha.

Right now DSVEdit doesn't have anything that could help you. It can view most sprites in the game, but not those portraits (since they're just static images, not moving sprites). It can't edit any graphics. And I don't know where the portrait's palettes are specifically.

That said, those could change at some point. It might be possible for me to write a tool that exports graphics to png, then after they've been modified re-imports them in the format the game needs.

I do have one question, though: when I try to use the sprite editor for Portrait of ruin the app freezes and in the dos box for the exe I see this:
Error: NoMethodError: undefined method 'lines' for nil:NilClass

This is followed by a bunch more lines after (I have included a screenshot with this post). The app itself is frozen but if I hit enter in the dos box it closes them both. However, the sprite editors works fine for both OOE or DOS. Is this still WIP and currently broken with POR or is there currently a fix for it? I am using windows 7 64 bit edition

Oops. The sprite viewer worked fine in PoR, but I made a small tweak to object names in the sprite viewer and forgot to test it with PoR. Here's a patch:
https://github.com/LagoLunatic/DSVEdit/releases/tag/v1.2.2

ShadowOne333

  • Hero Member
  • *****
  • Posts: 774
    • View Profile
Re: DSVania Editor
« Reply #22 on: March 01, 2017, 11:50:15 am »
Right now DSVEdit doesn't have anything that could help you. It can view most sprites in the game, but not those portraits (since they're just static images, not moving sprites). It can't edit any graphics. And I don't know where the portrait's palettes are specifically.

That said, those could change at some point. It might be possible for me to write a tool that exports graphics to png, then after they've been modified re-imports them in the format the game needs.
The thread I linked in my post has most of the information you need.
Exact address of each portrait sprite, palette address, how to view them, what bpp they are, etc.
In case you need the info, it's there. :)
All of this for both DoS and PoR too, we didn't touch Order of Ecclesia because that one already had Kojima artstyle for the portraits.
DarkSamus was the one who did all that work.

Esco

  • Full Member
  • ***
  • Posts: 119
  • Esco.... nuff said!
    • View Profile
Re: DSVania Editor
« Reply #23 on: March 01, 2017, 11:19:43 pm »
Oops. The sprite viewer worked fine in PoR, but I made a small tweak to object names in the sprite viewer and forgot to test it with PoR. Here's a patch:
https://github.com/LagoLunatic/DSVEdit/releases/tag/v1.2.2

Thanks it works fine now. Are you planning on eventually enabling skeletons in POR & DOS like you did in OOE? I have to say that I'm AMAZED you were actually able to get the keyframes to show up along with the actual bones for even one of the games. The code for it gets pretty damn messy in SOTN, so I can only imagine what the code is like in these games. That's seriously impressive.
Esco.... the original, Nuyorican, Latin Lover! And Creator of the Castlevania: Symphony of the Night hack!

The blog on the Castlevania: SOTN HACKED project: http://sotnhacked.wordpress.com/

LagoLunatic

  • Jr. Member
  • **
  • Posts: 78
    • View Profile
Re: DSVania Editor
« Reply #24 on: March 02, 2017, 12:23:25 pm »
Thanks it works fine now. Are you planning on eventually enabling skeletons in POR & DOS like you did in OOE? I have to say that I'm AMAZED you were actually able to get the keyframes to show up along with the actual bones for even one of the games. The code for it gets pretty damn messy in SOTN, so I can only imagine what the code is like in these games. That's seriously impressive.

Thanks! Yeah, it was hard figuring out the skeleton format, the code is so complicated I just opted to change things at random and see what it affected in game, only reading the code for certain things. If you're curious about it here are my notes on the skeleton format:
https://github.com/LagoLunatic/DSVEdit/blob/master/docs/formats/Skeleton%20File%20Format.txt

For DoS and PoR the skeletons were compiled differently I think, so rather than them having their own files they're all hardcoded into overlay files for each enemy. It might just be impossible to parse these depending on how hardcoded it is. But it's too soon to say for sure, some of the sprite files are hardcoded and I found a way to display those.

The thread I linked in my post has most of the information you need.
Exact address of each portrait sprite, palette address, how to view them, what bpp they are, etc.
In case you need the info, it's there. :)
All of this for both DoS and PoR too, we didn't touch Order of Ecclesia because that one already had Kojima artstyle for the portraits.
DarkSamus was the one who did all that work.

Well good news, I managed to get a gfx editor working!



It's not done yet but it should be in the next version.

You need to know the filename and palette pointer to export it, and then you can edit the gfx and palette separately and reimport them. Note that my program needs RAM palette pointers to work, but thanks to the ROM pointers DarkSamus posted I managed to find the game's list of palettes for each portrait.

By the way, in your thread you said you were interested in removing the magic seals from bosses? I've got a patch that makes it act like julius mode (ends instantly without needing the touchscreen) if you want, though I've barely tested it at all.

ShadowOne333

  • Hero Member
  • *****
  • Posts: 774
    • View Profile
Re: DSVania Editor
« Reply #25 on: March 02, 2017, 12:51:23 pm »
Well good news, I managed to get a gfx editor working!



It's not done yet but it should be in the next version.

You need to know the filename and palette pointer to export it, and then you can edit the gfx and palette separately and reimport them. Note that my program needs RAM palette pointers to work, but thanks to the ROM pointers DarkSamus posted I managed to find the game's list of palettes for each portrait.

By the way, in your thread you said you were interested in removing the magic seals from bosses? I've got a patch that makes it act like julius mode (ends instantly without needing the touchscreen) if you want, though I've barely tested it at all.

Oh wow, that's wonderful!
Is it me or did you manage to increase the size of the portraits a bit?
I don't remember them being that big :P

I would be interested in giving it a try once it is finished, hopefully that will make importing the portraits easier for the project. :D

Oh and yeah, the idea did come out to hopefully have a patch available which makes the main game act as Julius Mode, in which you do not even have to touch the screen to make it draw the seal and beat the boss.
It'd be awesome if you managed to achieve that!

JohannGralog

  • Jr. Member
  • **
  • Posts: 74
    • View Profile
Re: DSVania Editor
« Reply #26 on: March 02, 2017, 04:07:24 pm »
Kojima artstyle for the portraits.
Not quite, but at least less jarring than the anime-style portraits.
By the way, in your thread you said you were interested in removing the magic seals from bosses? I've got a patch that makes it act like julius mode (ends instantly without needing the touchscreen) if you want, though I've barely tested it at all.
That would really improve Dawn of Sorrow a lot.
I would be interested in giving it a try once it is finished, hopefully that will make importing the portraits easier for the project. :D
If the palette editing is straight-forward, some portraits could benefit from that as well. Yoko, Celia, perhaps Julius too.

DarkPrinceAlucard

  • Jr. Member
  • **
  • Posts: 48
    • View Profile
Re: DSVania Editor
« Reply #27 on: March 02, 2017, 05:30:00 pm »
Hello I have another question, is there a chance in the future that we will see this tool expanded to including music hacking as well? I really only want to switch some of the tracks around such as adding Bloody Tears to the maingame of DOS since it only appears in Julius Mode.

LagoLunatic

  • Jr. Member
  • **
  • Posts: 78
    • View Profile
Re: DSVania Editor
« Reply #28 on: March 02, 2017, 07:15:17 pm »
Hello I have another question, is there a chance in the future that we will see this tool expanded to including music hacking as well? I really only want to switch some of the tracks around such as adding Bloody Tears to the maingame of DOS since it only appears in Julius Mode.

Yes I'm going to add a way to edit the song that plays in each area. I know where that data is in OoE and PoR but still need to find it for DoS.

Eternal248

  • Jr. Member
  • **
  • Posts: 50
  • Forever in a reverie...
    • View Profile
    • FFHacktics
Re: DSVania Editor
« Reply #29 on: March 02, 2017, 10:36:43 pm »
A few questions- is it yet known how to edit an enemy's attack speed? I think increasing the movement/attack speed of certain bosses could lead to some fun, frantic boss fights. Also, more of a general community question, has anyone figured out which Unknown spell/soul Attack Power is yet? I haven't messed with them yet and didn't know if anyone's tinkered with them yet.
I know something of cages.

MathUser2929

  • Hero Member
  • *****
  • Posts: 1519
    • View Profile
Re: DSVania Editor
« Reply #30 on: March 02, 2017, 10:45:58 pm »
Thanks! Yeah, it was hard figuring out the skeleton format, the code is so complicated I just opted to change things at random and see what it affected in game, only reading the code for certain things. If you're curious about it here are my notes on the skeleton format:
https://github.com/LagoLunatic/DSVEdit/blob/master/docs/formats/Skeleton%20File%20Format.txt

For DoS and PoR the skeletons were compiled differently I think, so rather than them having their own files they're all hardcoded into overlay files for each enemy. It might just be impossible to parse these depending on how hardcoded it is. But it's too soon to say for sure, some of the sprite files are hardcoded and I found a way to display those.

Well good news, I managed to get a gfx editor working!



It's not done yet but it should be in the next version.

You need to know the filename and palette pointer to export it, and then you can edit the gfx and palette separately and reimport them. Note that my program needs RAM palette pointers to work, but thanks to the ROM pointers DarkSamus posted I managed to find the game's list of palettes for each portrait.

By the way, in your thread you said you were interested in removing the magic seals from bosses? I've got a patch that makes it act like julius mode (ends instantly without needing the touchscreen) if you want, though I've barely tested it at all.

I'd like that patch. Who is it by? What regions are supported?

LagoLunatic

  • Jr. Member
  • **
  • Posts: 78
    • View Profile
Re: DSVania Editor
« Reply #31 on: March 02, 2017, 11:18:27 pm »
A few questions- is it yet known how to edit an enemy's attack speed? I think increasing the movement/attack speed of certain bosses could lead to some fun, frantic boss fights. Also, more of a general community question, has anyone figured out which Unknown spell/soul Attack Power is yet? I haven't messed with them yet and didn't know if anyone's tinkered with them yet.

One thing you could do to make enemies attack faster is reduce the the enemy sprite's attack animation frame delays. e.g. Half delay -> attacks twice as fast.
But the sprite viewer can't save any changes yet so the only way to do that right now is using a hex editor. And there tend to be a lot of frame delays so it could get tedious.

I found soul/skill attack power a couple days ago, if you're using the latest version it should show up.

I'd like that patch. Who is it by? What regions are supported?

It's by me, USA only. The armips patch is here:
https://github.com/LagoLunatic/DSVEdit/blob/master/asm/dos_skip_drawing_seals.asm
But after testing it for just a minute I noticed a bug where if you use the practice seals menu the game will softlock. So it still needs some work.

March 05, 2017, 01:47:14 pm - (Auto Merged - Double Posts are not allowed before 7 days.)
Just released v1.3, with a gfx editor and a music editor. Get it while it's hot!

@ShadowOne333
Here's the list of palette pointers you need to edit the portraits.
For dos:
Code: [Select]
/sc/f_fsoma0.dat 022C64D8
/sc/f_fsoma1.dat 022C64D8
/sc/f_fsoma2.dat 022C64D8
/sc/f_fsoma3.dat 022C64D8
/sc/f_fsoma4.dat 022C64FC
/sc/f_fsoma5.dat 022C64FC
/sc/f_fsoma6.dat 022C6520
/sc/f_fmina0.dat 022C6544
/sc/f_fmina1.dat 022C6544
/sc/f_fmina2.dat 022C6544
/sc/f_fmina3.dat 022C65B0
/sc/f_fmina4.dat 022C6568
/sc/f_fmina5.dat 022C658C
/sc/f_farik0.dat 022C65D4
/sc/f_farik1.dat 022C661C
/sc/f_farik2.dat 022C65F8
/sc/f_fyoko0.dat 022C6688
/sc/f_fyoko1.dat 022C6688
/sc/f_fyoko2.dat 022C6688
/sc/f_fyoko3.dat 022C6688
/sc/f_fyoko4.dat 022C6688
/sc/f_fjuli0.dat 022C6640
/sc/f_fjuli1.dat 022C6640
/sc/f_fjuli2.dat 022C6664
/sc/f_fhume0.dat 022C66AC
/sc/f_fhume1.dat 022C66AC
/sc/f_fhume2.dat 022C66AC
/sc/f_fseri0.dat 022C66D0
/sc/f_fseri1.dat 022C66D0
/sc/f_fseri2.dat 022C66D0
/sc/f_fseri3.dat 022C66D0
/sc/f_fdari0.dat 022C66F4
/sc/f_fdari1.dat 022C66F4
/sc/f_fdari2.dat 022C66F4
/sc/f_fdari3.dat 022C66F4
/sc/f_fdomi0.dat 022C6718
/sc/f_fdomi1.dat 022C6718
/sc/f_fdomi2.dat 022C6718
/sc/f_fdomi3.dat 022C673C
/sc/f_fsoma7.dat 022C64D8
/sc/f_fsoma8.dat 022C64D8

For por:
All of them use 022C5860
« Last Edit: March 05, 2017, 01:47:14 pm by LagoLunatic »

Robpt1

  • Jr. Member
  • **
  • Posts: 15
    • View Profile
Re: DSVania Editor (v1.3)
« Reply #32 on: March 05, 2017, 03:42:11 pm »
Wow amazing tool, are you planning to support the GBAvanias and SOTN sometime ?

LagoLunatic

  • Jr. Member
  • **
  • Posts: 78
    • View Profile
Re: DSVania Editor (v1.3)
« Reply #33 on: March 05, 2017, 06:30:52 pm »
Wow amazing tool, are you planning to support the GBAvanias and SOTN sometime ?

No, it seems like the dsvania and gbavania game engines are similar at their core but the difference in the consoles would make it hard to support them, and I'd need to find the locations of everything all over again for those games too.

Esco

  • Full Member
  • ***
  • Posts: 119
  • Esco.... nuff said!
    • View Profile
Re: DSVania Editor
« Reply #34 on: March 05, 2017, 10:58:46 pm »
Thanks! Yeah, it was hard figuring out the skeleton format, the code is so complicated I just opted to change things at random and see what it affected in game, only reading the code for certain things. If you're curious about it here are my notes on the skeleton format:
https://github.com/LagoLunatic/DSVEdit/blob/master/docs/formats/Skeleton%20File%20Format.txt

For DoS and PoR the skeletons were compiled differently I think, so rather than them having their own files they're all hardcoded into overlay files for each enemy. It might just be impossible to parse these depending on how hardcoded it is. But it's too soon to say for sure, some of the sprite files are hardcoded and I found a way to display those.

Good god, looking at that file just gave me flashbacks! I swear I think I have some SERIOUS PTSD going from my time hacking Symphony of the Night for the PSX! Lol.

That's pretty much how I learned about SOTN: a lot of data corrupting, changing values for pointers in RAM, and a lot of liquor and praying.  :banghead:
Esco.... the original, Nuyorican, Latin Lover! And Creator of the Castlevania: Symphony of the Night hack!

The blog on the Castlevania: SOTN HACKED project: http://sotnhacked.wordpress.com/

acediez

  • Jr. Member
  • **
  • Posts: 83
    • View Profile
Re: DSVania Editor
« Reply #35 on: March 07, 2017, 05:50:34 pm »


By the way, we're done with the portraits hack, ShadowOne333 just submitted it to the site.

Now I'm very looking forward to what other hacks you guys can come up with. I heard there's a chance you can completely remove the seals at the end of boss battles? If so, I'll be saving my playthrough with the new portraits until that's done!  ;D

DarkPrinceAlucard

  • Jr. Member
  • **
  • Posts: 48
    • View Profile
Re: DSVania Editor (v1.3)
« Reply #36 on: March 07, 2017, 10:12:56 pm »
Hey LagLunatic I have 1 more question, is there a method to use this tool to get the palette address for the main character sprites?

The method I used to get palettes for other games for some reason does not work with the DS vanias since even when I get all 16 colors for the palette it for some reason does not find it within HxD, its very weird and I wanted to know if there was a for sure way of getting those palettes so I can do sprite hacks for OOE,DOS,or POR.

LagoLunatic

  • Jr. Member
  • **
  • Posts: 78
    • View Profile
Re: DSVania Editor (v1.3)
« Reply #37 on: March 07, 2017, 10:32:30 pm »
Hey LagLunatic I have 1 more question, is there a method to use this tool to get the palette address for the main character sprites?

The method I used to get palettes for other games for some reason does not work with the DS vanias since even when I get all 16 colors for the palette it for some reason does not find it within HxD, its very weird and I wanted to know if there was a for sure way of getting those palettes so I can do sprite hacks for OOE,DOS,or POR.

The sprite editor knows where the player palettes are. Open it up, go to the "Other" tab and find the player, then in the upper right corner of the sprite editor it shows the palette RAM pointer. And then the GFX editor can help you edit the palette if you give it that pointer.

DarkPrinceAlucard

  • Jr. Member
  • **
  • Posts: 48
    • View Profile
Re: DSVania Editor (v1.3)
« Reply #38 on: March 08, 2017, 12:50:22 am »
The sprite editor knows where the player palettes are. Open it up, go to the "Other" tab and find the player, then in the upper right corner of the sprite editor it shows the palette RAM pointer. And then the GFX editor can help you edit the palette if you give it that pointer.

Ok maybe I'm doing something wrong, everytime I copy and paste the palette pointer address within the gfx editor and click view it says  "couldn't find file path", I even pasted the pointer for the GFXs and everytime I paste the address within their respective fields I still get the can't find file path error.

EDIT, nevermind, I found that you have to paste the actual file destination within the GFX box and not the gfx pointer numbers, its working now. ;D

EDIT 2

Yep just tested it and now I'm able to import sprites!

This tool really has opened the door for DSvania hacking for me, I'm definitely moving on the those once I finish up my Aria of Sorrow hack, look who just appeared within Order of Ecclessia. :happy:

« Last Edit: March 08, 2017, 01:36:09 am by DarkPrinceAlucard »

Robpt1

  • Jr. Member
  • **
  • Posts: 15
    • View Profile
Re: DSVania Editor (v1.3)
« Reply #39 on: March 08, 2017, 11:45:26 am »
In your DSvania editor folder there are some asm files, how do i patch them into the game ?