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

Author Topic: DSVania Editor (v1.8.1)  (Read 101310 times)

PRG

  • Jr. Member
  • **
  • Posts: 7
    • View Profile
    • Youtube
Re: DSVania Editor (v1.8.1)
« Reply #420 on: August 19, 2019, 07:45:46 pm »
A year and a half ago I did look into making a new editor for SotN (adding support for it into DSVania Editor isn't realistic because the formats are 100% different, so making a new project was easier).

I got it as far as being able to view most rooms, as well as entity properties (no editing). But once I realized those entity limitations you mentioned I wasn't sure if I wanted to continue working on it, since what you could do with a SotN editor would be pretty limited. Also, pretty much everything is SotN is coded weird and hacky compared to the DS games, so it's way more work to do anything. Never managed to get entity sprites displaying correctly, for example. So I just stopped working on it, didn't seem worth the effort.

Would it be possible to do a text editor for SOTN? Would be handy for translations, retranslations, or consistency with later games in the series.

LagoLunatic

  • Full Member
  • ***
  • Posts: 157
    • View Profile
Re: DSVania Editor (v1.8.1)
« Reply #421 on: August 19, 2019, 07:57:42 pm »
Would it be possible to do a text editor for SOTN? Would be handy for translations, retranslations, or consistency with later games in the series.

I assume it's possible. I never looked into anything related to text editing specifically but I don't imagine there would be anything to make it entirely impossible like putting entities in zones they didn't originally appear in is. I'm not interested in making a SotN text editor either though.

tavs7

  • Newbie
  • *
  • Posts: 3
    • View Profile
Re: DSVania Editor (v1.8.1)
« Reply #422 on: August 25, 2019, 02:57:51 pm »


Adding new rooms is possible in theory but I haven't implemented that feature into DSVEdit's UI yet.



Thanks for answering!!!

feels

  • Jr. Member
  • **
  • Posts: 15
    • View Profile
Re: DSVania Editor (v1.8.1)
« Reply #423 on: August 30, 2019, 02:04:53 pm »
The method Esco mentioned with negative hexadecimal numbers does work. For example, set an item's Strength field to FB and it will give -5 strength.

However, this only works for signed values. Unsigned values are always positive, so if you try to set an unsigned value to FB, it will instead give +251 to that attribute for example.
At the bottom of the item editor is a big text field with documentation on each value. Only the ones that say (signed) next to them are signed. Strength, constitution, intelligence, mind, and luck are signed, but attack and defense are unsigned. So I assume you tried to make attack or defense negative and that's why it didn't work for you. You should instead make strength or constitution negative and those will have the side effect of also decreasing attack or defense.

Also, while Esco's method works you don't actually need to do it that way. Just type in -5 and DSVEdit will understand that you want FB.

Thanks! It works perfectly! I didn't even notice the values were already labeled as signed/unsigned.

On another note, would it be possible to add more area transition rooms to DoS? Either by adding them once the room adding feature is implemented or by converting other rooms into transition rooms?

LagoLunatic

  • Full Member
  • ***
  • Posts: 157
    • View Profile
Re: DSVania Editor (v1.8.1)
« Reply #424 on: August 30, 2019, 07:51:42 pm »
On another note, would it be possible to add more area transition rooms to DoS? Either by adding them once the room adding feature is implemented or by converting other rooms into transition rooms?

Tried it out, turns out it's possible:



Not as simple as PoR/OoE where you just edit the room on the map of course, I've got to add the room pointer to the list of transition rooms, relocate that list to free space, and update the hardcoded pointers to that list to point to the new location instead. But it seems that nothing else is necessary thankfully, so I should be able to add this to DSVEdit. Gonna need to figure out where it would best fit in the UI, probably in the room properties editor or something.

feels

  • Jr. Member
  • **
  • Posts: 15
    • View Profile
Re: DSVania Editor (v1.8.1)
« Reply #425 on: August 30, 2019, 09:10:56 pm »

Not as simple as PoR/OoE where you just edit the room on the map of course, I've got to add the room pointer to the list of transition rooms, relocate that list to free space, and update the hardcoded pointers to that list to point to the new location instead. But it seems that nothing else is necessary thankfully, so I should be able to add this to DSVEdit. Gonna need to figure out where it would best fit in the UI, probably in the room properties editor or something.

Fantastic! All the areas in my mod are super interconnected and I didn’t realize I was already running out of transition rooms.

Does each area of the game have its own free space? I’ll try adding something to one area or changing the tileset for a room of that area and the editor will crash but I’ll try the same thing in a different area and it works perfectly.

LagoLunatic

  • Full Member
  • ***
  • Posts: 157
    • View Profile
Re: DSVania Editor (v1.8.1)
« Reply #426 on: August 30, 2019, 09:38:34 pm »
Fantastic! All the areas in my mod are super interconnected and I didn’t realize I was already running out of transition rooms.

Does each area of the game have its own free space? I’ll try adding something to one area or changing the tileset for a room of that area and the editor will crash but I’ll try the same thing in a different area and it works perfectly.

Each sector does have its own overlay file, which is only loaded when in that sector so it can't be used by other sectors. Each sector has wildly different amounts of space available in its overlay (Demon Guest House has none at all for example).
But if you added a brand new free space overlay with DSVEdit and marked it as free space, then that overlay can be used by all sectors, allowing you to add stuff to even sectors like Demon Guest House. It can also be used for things that aren't sector-specific (like the relocated list of transition rooms I mentioned in my last post for instance, that wouldn't have anywhere to go if you don't add a new overlay).

But the editor shouldn't be crashing even if there's no free space available, it should give you an error message about there being no free space and tell you how to add it. Can you give me more information about the crash? Exactly what rooms does it crash in? If the crash doesn't happen in vanilla DoS you could PM me your project so I can check it out.

feels

  • Jr. Member
  • **
  • Posts: 15
    • View Profile
Re: DSVania Editor (v1.8.1)
« Reply #427 on: August 31, 2019, 12:26:32 am »
Each sector does have its own overlay file, which is only loaded when in that sector so it can't be used by other sectors. Each sector has wildly different amounts of space available in its overlay (Demon Guest House has none at all for example).
But if you added a brand new free space overlay with DSVEdit and marked it as free space, then that overlay can be used by all sectors, allowing you to add stuff to even sectors like Demon Guest House. It can also be used for things that aren't sector-specific (like the relocated list of transition rooms I mentioned in my last post for instance, that wouldn't have anywhere to go if you don't add a new overlay).

But the editor shouldn't be crashing even if there's no free space available, it should give you an error message about there being no free space and tell you how to add it. Can you give me more information about the crash? Exactly what rooms does it crash in? If the crash doesn't happen in vanilla DoS you could PM me your project so I can check it out.

Alright. I will send you it tomorrow(not home rn). Another error it throws is when I try to view a specific room, the room with the canon you need Zephyr to get through, it won’t crash but will give an error message and it will not display the tiles. This didn’t occur until I made changes to the room but I didn’t do anything I haven’t done with other rooms

tavs7

  • Newbie
  • *
  • Posts: 3
    • View Profile
Re: DSVania Editor (v1.8.1)
« Reply #428 on: August 31, 2019, 10:20:41 am »
It's possible to add a new warp room in Aria Of Sorrow? I tried to put the warp entity to a rom but it doens't work. I tried to edit the warp points in the map too, but I could only move them to another point in the map.

LagoLunatic

  • Full Member
  • ***
  • Posts: 157
    • View Profile
Re: DSVania Editor (v1.8.1)
« Reply #429 on: September 01, 2019, 08:17:01 pm »
It's possible to add a new warp room in Aria Of Sorrow? I tried to put the warp entity to a rom but it doens't work. I tried to edit the warp points in the map too, but I could only move them to another point in the map.

Not possible in the current version, but I can implement the ability to add and remove warp rooms to AoS for the next version.

ShadowOne333

  • Hero Member
  • *****
  • Posts: 1203
    • View Profile
Re: DSVania Editor (v1.8.1)
« Reply #430 on: September 01, 2019, 10:56:44 pm »
Hey LagoLunatic.
I've been wroking on a couple projects to modify the artwork style of both Dawn of Sorrow and Portrait of Ruin to something more in-line to Kojima's gothic style for the character portraits:
http://www.romhacking.net/forum/index.php?topic=22445.340

DoS is already done and released, and I'm currently working on PoR.
Most portraits for PoR are already ripped and ready, and I used your Editor to rip a couple menu portraits I missed, but for some reason I couldn't find sprite rips on your Editor for the main character portraits, which I have already ripped manually with Tile Molestor.

Are those able to be dumped with your Editor?
Or have those ones not been implemented yet?
If not implemented, do let me know to provide the required data for those for your app.

LagoLunatic

  • Full Member
  • ***
  • Posts: 157
    • View Profile
Re: DSVania Editor (v1.8.1)
« Reply #431 on: September 01, 2019, 11:43:24 pm »
Hey LagoLunatic.
I've been wroking on a couple projects to modify the artwork style of both Dawn of Sorrow and Portrait of Ruin to something more in-line to Kojima's gothic style for the character portraits:
http://www.romhacking.net/forum/index.php?topic=22445.340

DoS is already done and released, and I'm currently working on PoR.
Most portraits for PoR are already ripped and ready, and I used your Editor to rip a couple menu portraits I missed, but for some reason I couldn't find sprite rips on your Editor for the main character portraits, which I have already ripped manually with Tile Molestor.

Are those able to be dumped with your Editor?
Or have those ones not been implemented yet?
If not implemented, do let me know to provide the required data for those for your app.

I assume you're referring to the large character portraits used in cutscenes. The reason those aren't listed in the sprite editor is because they're not actually sprites. The game's cutscene engine renders those images to the screen independently from the normal sprite and animation rendering engine. (Presumably they do this so that fancy "blinds closing" fading in and out animation works, which I don't believe would be possible for the normal sprite and animation rendering engine.) As such, it's impossible for them to be listed in DSVEdit's sprite editor, since it's designed to display sprites and animations of the format used by said sprite and animation rendering system only.

You can view, edit, and export those big portraits in the GFX editor though, since that supports basically all images. But you need to know the GFX filename and palette pointer yourself and put them in, since DSVEdit doesn't list those anywhere.



It's kind of inconvenient, but the only way around it I can see would be to make another tool separate from the sprite and GFX editors that lists the portraits and lets you then open them in the GFX editor. I don't feel like making that though.

I should probably at least list the filenames and palette pointers in the readme at some point.

MaverickZero

  • Jr. Member
  • **
  • Posts: 79
    • View Profile
Re: DSVania Editor (v1.8.1)
« Reply #432 on: September 02, 2019, 10:30:46 am »
Hey LagoLunatic,
i've been wondering if you know if the sub weapon quickslots from maria and richter are hardcoded.
I've been trying to find a simple enable/desable in the player editor, but no bitfield affected it at all.
Neither could i find an enable/disable in the ram map of por.
Also a big thanks for the latest updates they're great!  :beer:

LagoLunatic

  • Full Member
  • ***
  • Posts: 157
    • View Profile
Re: DSVania Editor (v1.8.1)
« Reply #433 on: September 02, 2019, 10:56:21 am »
Hey LagoLunatic,
i've been wondering if you know if the sub weapon quickslots from maria and richter are hardcoded.
I've been trying to find a simple enable/desable in the player editor, but no bitfield affected it at all.
Neither could i find an enable/disable in the ram map of por.
Also a big thanks for the latest updates they're great!  :beer:

Yep, that's hardcoded. I forget if it's hardcoded based off the current gamemode or the current player character index but it's something along those lines.

ShadowOne333

  • Hero Member
  • *****
  • Posts: 1203
    • View Profile
Re: DSVania Editor (v1.8.1)
« Reply #434 on: September 02, 2019, 11:21:53 am »
I assume you're referring to the large character portraits used in cutscenes. The reason those aren't listed in the sprite editor is because they're not actually sprites. The game's cutscene engine renders those images to the screen independently from the normal sprite and animation rendering engine. (Presumably they do this so that fancy "blinds closing" fading in and out animation works, which I don't believe would be possible for the normal sprite and animation rendering engine.) As such, it's impossible for them to be listed in DSVEdit's sprite editor, since it's designed to display sprites and animations of the format used by said sprite and animation rendering system only.

You can view, edit, and export those big portraits in the GFX editor though, since that supports basically all images. But you need to know the GFX filename and palette pointer yourself and put them in, since DSVEdit doesn't list those anywhere.



It's kind of inconvenient, but the only way around it I can see would be to make another tool separate from the sprite and GFX editors that lists the portraits and lets you then open them in the GFX editor. I don't feel like making that though.

I should probably at least list the filenames and palette pointers in the readme at some point.
Ah I see, I just thought it was odd that those were not found in the sprites list not anywhere in the Editor itself, but I do see and understand your point.
Your idea sounds good! A simple list for the portrait files and their palettes for all the games shall be enough.
Will look forward to it. :)

Another side question:
For the character specific sprites used for the Info Screen, Pause menu and the Mini-portraits in the upper right portion of the screen. Do those use indexed palettes? Or what is exactly the colour limitation for those ones?
To be more clear, I'm talking about the ones I dumped using DSVania here:
http://www.romhacking.net/forum/index.php?topic=22445.msg380926#msg380926

LagoLunatic

  • Full Member
  • ***
  • Posts: 157
    • View Profile
Re: DSVania Editor (v1.8.1)
« Reply #435 on: September 02, 2019, 12:01:06 pm »
Another side question:
For the character specific sprites used for the Info Screen, Pause menu and the Mini-portraits in the upper right portion of the screen. Do those use indexed palettes? Or what is exactly the colour limitation for those ones?
To be more clear, I'm talking about the ones I dumped using DSVania here:
http://www.romhacking.net/forum/index.php?topic=22445.msg380926#msg380926

They use 16-color palettes. (Everything I'm aware of in the DSVanias uses either 16- or 256-color palettes.)
For the info screen and pause menu ones, you should be able to modify the palettes for those portraits as much as you like, as long as you stay within the correct number of colors.

For the mini-portraits, it's a bit more complicated - Jonathan and Charlotte's faces both use palette 1F, Old Axe Armor's face uses palette 14 which is shared with the square thing around the subweapon quick select icon from Richter/Old Axe Armor modes, Stella and Loretta's faces both use palette 12, and Richter and Maria's faces both use palette 13. So you can't edit them completely freely, and will need share colors between these pairs of icons.

Though you could try switching what palette the mini-portraits use to a palette in the common sprite that seems to be unused, then edit those previously unused palettes so that all of them can have unique palettes. The common sprite only appears to use palettes 00-20, leaving 21-3E theoretically free to use. Though I can't guarantee that they're definitely unused - some entity in the game could use them programmatically, which would be pretty much impossible to find unless you actually modify the palette, then play through the entire game looking for anything that looks off. So it's debatable whether it'll be worth it to bother switching the palettes for these or it would be better to just deal with having to share colors like the original devs did.

Aceearly1993

  • Jr. Member
  • **
  • Posts: 32
    • View Profile
    • 1993P Doubleguy at Youtube
Re: DSVania Editor (v1.8.1)
« Reply #436 on: September 08, 2019, 08:06:21 pm »
Hi LagoLunatic.
Is it possible to disable the "gaining attribute points via glyph absorbing" feature in OoE? Is such feature Hardcoded or the amount of attribute points gaining via glyph absorbing able to be adjusted in the future?
« Last Edit: September 08, 2019, 08:22:19 pm by Aceearly1993 »
Quote
"Did you know when one's most desperation time is? It's when he was beaten up by someone critically...
And he can't find who caused this."

LagoLunatic

  • Full Member
  • ***
  • Posts: 157
    • View Profile
Re: DSVania Editor (v1.8.1)
« Reply #437 on: September 08, 2019, 09:12:24 pm »
Hi LagoLunatic.
Is it possible to disable the "gaining attribute points via glyph absorbing" feature in OoE? Is such feature Hardcoded or the amount of attribute points gaining via glyph absorbing able to be adjusted in the future?

It's hardcoded, the byte for the number of AP gained per absorb is at address 0206D994, 01 by default. You can change it with an asm patch or hex editing if you want. I don't plan on adding it as a feature to the GUI.

ikusatatsu_ushiromiya

  • Jr. Member
  • **
  • Posts: 23
    • View Profile
Re: DSVania Editor (v1.8.1)
« Reply #438 on: September 10, 2019, 05:25:23 am »
I have a question: how to get more free space in DoS?
I want to enlarge the rooms of DoS, but it shows "can't find any free space."
Than I use the "Add overlay", and open _dsvedit_freespace and add "030a5700  0001f600 /ftc/overlay9_41" in the end.
But it still "can't find any free space."
030a5700 is a address, and after this address there are all 00. I think it's a good site to put free space.

LagoLunatic

  • Full Member
  • ***
  • Posts: 157
    • View Profile
Re: DSVania Editor (v1.8.1)
« Reply #439 on: September 10, 2019, 01:19:25 pm »
I have a question: how to get more free space in DoS?
I want to enlarge the rooms of DoS, but it shows "can't find any free space."
Than I use the "Add overlay", and open _dsvedit_freespace and add "030a5700  0001f600 /ftc/overlay9_41" in the end.
But it still "can't find any free space."
030a5700 is a address, and after this address there are all 00. I think it's a good site to put free space.

First of all, I don't know where you got the address 030a5700 from, but it's definitely not an address in main RAM. I looked it up and apparently addresses in the 03000000 range are in "Shared WRAM" - I don't know what that is but you can't use it for free space.

Second of all, the first number you put in _dsvedit_freespace is not supposed to be an address, it's supposed to be an offset within the file (/ftc/overlay9_41). For example, 00000000 if you want the free space to start at the start of the file. 00000100 if you want the free space to start 0x100 bytes into the file. If you want more details about how this works you can read the "Adding a free space overlay" section of the readme: https://github.com/LagoLunatic/DSVEdit#adding-a-free-space-overlay

If you want the entirety of overlay 41 in the USA version of DoS to be considered free space, you should put this in _dsvedit_freespace:
00000000 00016000 /ftc/overlay9_41
If you're using the JP version of DoS it would be:
00000000 00010000 /ftc/overlay9_41

But be careful, if you do that you can never apply any ASM patches that use free space, because the ASM patch would overwrite the other data that DSVEdit put there and corrupt things. (For examples out of the asm patches I've written, "dos_magical_ticket.asm", "dos_add_hole_to_map_doors.asm", "dos_prevent_multiple_cutscenes_in_first_room.asm", etc.)
In case you ever decide to use an ASM patch that uses free space, you may want to set aside some space at the start for that, like this (USA version of DoS):
00001000 00015000 /ftc/overlay9_41
In this example, I didn't mark the first 0x1000 bytes inside overlay 41 as free space. That means you have 0x1000 bytes for any ASM patches you might want to use. The amount of free space you can use for other things besides ASM (such as entities and layers) is 0x15000 bytes here, whereas it was 0x16000 bytes in the first example.