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

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

Esco

  • Full Member
  • ***
  • Posts: 119
  • Esco.... nuff said!
    • View Profile
Re: DSVania Editor (v1.4)
« Reply #100 on: April 15, 2017, 08:06:19 pm »
From the Dungeon, dude  ;)

Also, thank you (and Lago) for explaining what sprites are supported. I was kinda lost there trying to figure it out.

Oh yeah.... you are that Scumbag Mario Santos. Thanks for the reminder.  :o

..... lol. Just kidding about that scumbag bit man.  8) How have you been?
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/

Vanya

  • Hero Member
  • *****
  • Posts: 1161
    • View Profile
Re: DSVania Editor (v1.4)
« Reply #101 on: April 16, 2017, 12:27:29 am »
Geez. The gang's all hear. :P
This is Inccubus, BTW.

ShadowOne333

  • Hero Member
  • *****
  • Posts: 774
    • View Profile
Re: DSVania Editor (v1.4)
« Reply #102 on: April 16, 2017, 02:24:29 am »
Hey LagoLunatic,I wanted to drop by and mention this:
http://www.romhacking.net/reviews/2804/#review

The bug explained in the Review for the No Forced Touchscreen hack of DoS also happens to me.
I experienced it with the first Long Sword you get.
When you stumble upon the very first Ice block room and attempt to attack without the soul to shatter them, the game soft locks in place.

LagoLunatic

  • Jr. Member
  • **
  • Posts: 78
    • View Profile
Re: DSVania Editor (v1.4)
« Reply #103 on: April 16, 2017, 11:24:16 am »
I finaly got a chance to try out your editor and it's as great as everyone says it is! :thumbsup:
One thing though, I tried to change the map layout, added new rooms in map editor and got nowhere.
The new rooms won't open, which makes sense since they haven't been "defined"(I don't know how else to explain it, though I'm probably wrong). Is it possible to "define" rooms within the editor?

I noticed a week ago that there are a couple bugs with the map editor where if you placed new tiles they wouldn't show up in game sometimes.
I fixed the bug for DoS. But for PoR/OoE it's going to be more complicated to fix, and fixing it is going to add a new requirement that you can't change the height of maps in PoR/OoE, in addition to not changing the number of tiles in each.

By "define" rooms, are you talking about adding entirely new rooms? Or moving where an existing one is on the map?
Adding new rooms to a sector isn't currently a feature, but at some point in the future it might be.
You can move an existing room's position on the map by opening it in Tiled, and in the room's "custom properties" you'll see map_x and map_y. Eventually I will make an actual GUI within DSVEdit to reposition a room on the map though.

Hey LagoLunatic,I wanted to drop by and mention this:
http://www.romhacking.net/reviews/2804/#review

The bug explained in the Review for the No Forced Touchscreen hack of DoS also happens to me.
I experienced it with the first Long Sword you get.
When you stumble upon the very first Ice block room and attempt to attack without the soul to shatter them, the game soft locks in place.

Thanks for letting me know. But even knowing the exact weapon and room now, I can't reproduce this crash.

What are you playing on? Exact emulator & version, or a real NDS, etc?

PachaWillWatchYa

  • Jr. Member
  • **
  • Posts: 51
    • View Profile
Re: DSVania Editor (v1.4)
« Reply #104 on: April 16, 2017, 11:54:36 am »
I meant adding new rooms but moving existing ones to new places is enough for time being.
But when I moved the room, to select it I needed to select it's original map tile.
Is this one of the bugs you fixed?

ShadowOne333

  • Hero Member
  • *****
  • Posts: 774
    • View Profile
Re: DSVania Editor (v1.4)
« Reply #105 on: April 16, 2017, 12:07:41 pm »
Thanks for letting me know. But even knowing the exact weapon and room now, I can't reproduce this crash.

What are you playing on? Exact emulator & version, or a real NDS, etc?
Thanks for the reply.
This is the exact room Im talking about:


In that image the game is already locked upp in place.

This is what I did:
Started a new file, defeated the first boss and then went straight ahead to Wizardry Lab.

Upon getting there, I simply walk around and right when I am about to attack the ice blocks, the game locks.

I am doing this in a New 3DS through a Blue Gateway Card (R4 clone)
I even redownloaded a new rom and repatched it to be sure.

All of this was done WITHOUT the Balore soul yet, so maybe thats something worth noting since I notice you turn it on/off, while I still havent even got the soul yet from a fresh file. (It takes like 10 or so mins to get there right from the start)

Let me know if you need more details.

LagoLunatic

  • Jr. Member
  • **
  • Posts: 78
    • View Profile
Re: DSVania Editor (v1.4)
« Reply #106 on: April 16, 2017, 03:41:10 pm »
I meant adding new rooms but moving existing ones to new places is enough for time being.
But when I moved the room, to select it I needed to select it's original map tile.
Is this one of the bugs you fixed?

Right, DSVEdit 1.4 can't correctly add new map tiles. You can replace existing ones but any new ones you add don't show up in game. You'll have to wait for 1.5 to add new ones.

Thanks for the reply.
This is the exact room Im talking about:

In that image the game is already locked upp in place.

This is what I did:
Started a new file, defeated the first boss and then went straight ahead to Wizardry Lab.

Upon getting there, I simply walk around and right when I am about to attack the ice blocks, the game locks.

I am doing this in a New 3DS through a Blue Gateway Card (R4 clone)
I even redownloaded a new rom and repatched it to be sure.

All of this was done WITHOUT the Balore soul yet, so maybe thats something worth noting since I notice you turn it on/off, while I still havent even got the soul yet from a fresh file. (It takes like 10 or so mins to get there right from the start)

Let me know if you need more details.

I see, maybe it's something with the 3DS...? The only real hardware I've tested it on is an old DS phat.

I don't think it could be affected by you not owning the Balore soul yet, my patch doesn't check that. It only checks whether it's equipped or not.

Well, I can't really test this since I don't own a 3DS (only a DS phat and DS lite). And I have no solid idea why this bug would occur either.

But I tried some stuff and made a couple test patches:
Patch A: https://www.dropbox.com/s/nfvor8ovbs3ng5x/patch_a.ips?dl=0
Patch B: https://www.dropbox.com/s/5fi91cxznjp2vo6/patch_b.xdelta?dl=0
Patch A has most of the features removed, it just breaks balore blocks when you hit them with a melee weapon, but it doesn't care if you have balore's soul, it doesn't fix the hitboxes, etc.
Patch B has all the features of the completed patch, but it uses the free space overlay feature from DSVEdit 1.5.

Could you please test these and tell me if either one works for you? If the second one does then I can use that as the fixed patch.

ShadowOne333

  • Hero Member
  • *****
  • Posts: 774
    • View Profile
Re: DSVania Editor (v1.4)
« Reply #107 on: April 16, 2017, 06:40:18 pm »
I see, maybe it's something with the 3DS...? The only real hardware I've tested it on is an old DS phat.

I don't think it could be affected by you not owning the Balore soul yet, my patch doesn't check that. It only checks whether it's equipped or not.

Well, I can't really test this since I don't own a 3DS (only a DS phat and DS lite). And I have no solid idea why this bug would occur either.

But I tried some stuff and made a couple test patches:
Patch A: https://www.dropbox.com/s/nfvor8ovbs3ng5x/patch_a.ips?dl=0
Patch B: https://www.dropbox.com/s/5fi91cxznjp2vo6/patch_b.xdelta?dl=0
Patch A has most of the features removed, it just breaks balore blocks when you hit them with a melee weapon, but it doesn't care if you have balore's soul, it doesn't fix the hitboxes, etc.
Patch B has all the features of the completed patch, but it uses the free space overlay feature from DSVEdit 1.5.

Could you please test these and tell me if either one works for you? If the second one does then I can use that as the fixed patch.
I doubt the 3DS has something to do with it, since all 3DSs supposedly have the same hardware as a normal DS to be able to run DS games natively.

As for your patches, I decided to take a new clean ROM once again, but this time I didn't trim any of them, since I remembered I trimmed the previous ROM and I wanted to test if trimming it changed something with the patch.
With that said, here are the results:

  • Original patch (Untrimmed): The game froze at the same spot, so at least we now know trimming the ROM doesn't have any downsides in terms of the patch
  • Patch B: The game froze at the same spot with this one sadly.
  • Patch A: This one worked. I was able to attack and brake the ice blocks blocking down the first room in the Wizardry Lab, even though I don't have Balore's soul but that's normal according to your post.

So Patch A should be the one to go for to narrow down the bug regarding the game lockup when attempting to attack without the Balore soul in a room with ice blocks.
Another thing worth mentioning, is that it doesn't matter what kind of weapon you use, the result is the same.
I tried using the Knife, Claymore and the Sword in the same room but they all froze the game up, so at least we can discard weapon variety as something that could affect the patch.

Let me know if you need any more debugging from my part.

Esco

  • Full Member
  • ***
  • Posts: 119
  • Esco.... nuff said!
    • View Profile
Re: DSVania Editor (v1.4)
« Reply #108 on: April 19, 2017, 02:48:48 pm »
Geez. The gang's all hear. :P
This is Inccubus, BTW.

You must have missed this comment:  8)

Yes, I see you up there as well INCUBUS (Vanya). It's been a bit. How have you been?
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/

Vanya

  • Hero Member
  • *****
  • Posts: 1161
    • View Profile
Re: DSVania Editor (v1.4)
« Reply #109 on: April 19, 2017, 11:48:39 pm »
Yes, I did miss that.
Things are good. Still digging your work on SotN.
Working on a little Sudoku game for PC myself.
And a few things I'm helping other people with.

LagoLunatic

  • Jr. Member
  • **
  • Posts: 78
    • View Profile
Re: DSVania Editor (v1.4)
« Reply #110 on: April 20, 2017, 06:08:34 pm »
I doubt the 3DS has something to do with it, since all 3DSs supposedly have the same hardware as a normal DS to be able to run DS games natively.

As for your patches, I decided to take a new clean ROM once again, but this time I didn't trim any of them, since I remembered I trimmed the previous ROM and I wanted to test if trimming it changed something with the patch.
With that said, here are the results:

  • Original patch (Untrimmed): The game froze at the same spot, so at least we now know trimming the ROM doesn't have any downsides in terms of the patch
  • Patch B: The game froze at the same spot with this one sadly.
  • Patch A: This one worked. I was able to attack and brake the ice blocks blocking down the first room in the Wizardry Lab, even though I don't have Balore's soul but that's normal according to your post.

So Patch A should be the one to go for to narrow down the bug regarding the game lockup when attempting to attack without the Balore soul in a room with ice blocks.
Another thing worth mentioning, is that it doesn't matter what kind of weapon you use, the result is the same.
I tried using the Knife, Claymore and the Sword in the same room but they all froze the game up, so at least we can discard weapon variety as something that could affect the patch.

Let me know if you need any more debugging from my part.

Thanks. I'm surprised patch A was the one that worked, I figured that one would still crash when I gave it to you. But that really helps.

Alright, after testing more thoroughly on real hardware I was able to reproduce it. It seems to only occur for weapons that have two hitboxes, like axes, great swords, short sword, etc.

I'm pretty sure I figured out the bug. I made a mistake that overwrote a certain variable. This was fine in an earlier version of the patch before I fixed the hitboxes since the variable wasn't needed anymore in that case. But after making it check the second hitbox, this variable is needed in the code that checks the hitbox. Furthermore, this variable was a pointer, but was being overwritten with something that's not a pointer. I guess emulators don't care about non-pointers being treated like pointers, but real hardware crashes.

But I don't know why it crashed with the knife for you. Knife only has one hitbox and it worked fine for me.

Can you test this patch to see if it works for you?
https://www.dropbox.com/s/g6yzqvtcxpl5bca/dos_no_required_touch_screen_v1.1.ips?dl=0
I recommend testing multiple weapons to be sure, especially knife.

DoctorGoat

  • Jr. Member
  • **
  • Posts: 11
    • View Profile
Re: DSVania Editor (v1.4)
« Reply #111 on: April 21, 2017, 03:40:16 pm »
Hrm. As of right now, none of the ARMIPS-related stuff works for me, and the current git can't be built because dsvrandom stuff is currently in .gitignore.

I did install the VS++ 2015 redists like the error messages said, though.

Code: [Select]
E, [2017-04-21T15:39:56.024116 #16652] ERROR -- : wrong number of arguments (given 1, expected 2) (ArgumentError)
C:/games/nds/editor/dsvlib/sprite.rb:499:in `initialize'
C:/games/nds/editor/dsvedit/sprite_editor_dialog.rb:843:in `new'
C:/games/nds/editor/dsvedit/sprite_editor_dialog.rb:843:in `add_animation'
C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/qtbindings-4.8.6.3-x64-mingw32/lib/Qt/qtruby4.rb:479:in `qt_metacall'
C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/qtbindings-4.8.6.3-x64-mingw32/lib/Qt/qtruby4.rb:479:in `method_missing'
C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/qtbindings-4.8.6.3-x64-mingw32/lib/Qt/qtruby4.rb:479:in `exec'

Code: [Select]
E, [2017-04-21T15:40:26.068011 #9760] ERROR -- : Armips call failed (try installing the Visual C++ Redistributable for Visual Studio 2015) (RuntimeError)
C:/games/nds/editor/dsvlib/game.rb:403:in `apply_armips_patch'
C:/games/nds/editor/dsvlib/game.rb:445:in `add_new_overlay'
C:/games/nds/editor/dsvedit/main_window.rb:712:in `add_new_overlay'
C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/qtbindings-4.8.6.3-x64-mingw32/lib/Qt/qtruby4.rb:479:in `qt_metacall'
C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/qtbindings-4.8.6.3-x64-mingw32/lib/Qt/qtruby4.rb:479:in `method_missing'
C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/qtbindings-4.8.6.3-x64-mingw32/lib/Qt/qtruby4.rb:479:in `exec'

ShadowOne333

  • Hero Member
  • *****
  • Posts: 774
    • View Profile
Re: DSVania Editor (v1.4)
« Reply #112 on: April 21, 2017, 05:42:54 pm »
Thanks. I'm surprised patch A was the one that worked, I figured that one would still crash when I gave it to you. But that really helps.

Alright, after testing more thoroughly on real hardware I was able to reproduce it. It seems to only occur for weapons that have two hitboxes, like axes, great swords, short sword, etc.

I'm pretty sure I figured out the bug. I made a mistake that overwrote a certain variable. This was fine in an earlier version of the patch before I fixed the hitboxes since the variable wasn't needed anymore in that case. But after making it check the second hitbox, this variable is needed in the code that checks the hitbox. Furthermore, this variable was a pointer, but was being overwritten with something that's not a pointer. I guess emulators don't care about non-pointers being treated like pointers, but real hardware crashes.

But I don't know why it crashed with the knife for you. Knife only has one hitbox and it worked fine for me.

Can you test this patch to see if it works for you?
https://www.dropbox.com/s/g6yzqvtcxpl5bca/dos_no_required_touch_screen_v1.1.ips?dl=0
I recommend testing multiple weapons to be sure, especially knife.

I think I might have confused the Knife with the Short Sword, sorry.
Tried out the new patch, that one seems to work okay!

Just to be sure, I tried out a cheat code to enable all weapons and tested most of them in the same room, and they work as they should :)
No crashing this time, they just do nothing to the ice blocks as expected.
I think this one is it! I will continue with the game up to Balore and try it again just to be sure everything works just fine.

Thank you!

Esco

  • Full Member
  • ***
  • Posts: 119
  • Esco.... nuff said!
    • View Profile
Re: DSVania Editor (v1.4)
« Reply #113 on: April 21, 2017, 09:08:28 pm »
Yes, I did miss that.
Things are good. Still digging your work on SotN.
Working on a little Sudoku game for PC myself.
And a few things I'm helping other people with.

Glad to hear it and thanks. :) I'm actually working on finishing Alucard's grab then pushing/pulling of objects (similar to MOF) as we speak. I want to finish doing some more stuff for him in the next month or two and then release another demo vid on my blog.
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/

DoctorGoat

  • Jr. Member
  • **
  • Posts: 11
    • View Profile
Re: DSVania Editor (v1.4)
« Reply #114 on: April 22, 2017, 05:40:58 am »
You work fast, LagoLunatic! I wish I could stick to something like this.

So, right now to get build_ui to work I'm having to comment out line 7 and 33 of the Rakefile. That results in everything I need.

But in case it's of interest, for build_installers, I have to change line 45 to the following:
Code: [Select]
  system "ocra dsvedit.rb --output DSVEdit.exe --no-lzma --chdir-first --icon ./images/dsvedit_icon.ico"because I'm using ocra 1.3.8 and ocra seems to work best this way. The ISS doesn't compile with the following error message:
Code: [Select]
ERROR: InnoSetup installer creation failed: undefined method `encode' for #<Ocra::Pathname:0x000000040d58f0 @path="src/dsvedit.rb">
but... I hate installers anyway.
And... the EXE that results from it is 422MB. That seems wrong.
Line 46 has to be commented out because the dsvrandom files are still missing.

I haven't tested build_releases because all I'm after is the editor itself.

The armips crash was like this:
 [2017-04-22T05:45:24.135109 #20544] ERROR -- : No such file or directory - ./armips/armips.exe "asm/por_load_new_overlay.asm" (Errno::ENOENT)
which... is true, armips isn't included right now.

I'm having fun watching this project develop and playing with no$gba to try to figure out AI.

LagoLunatic

  • Jr. Member
  • **
  • Posts: 78
    • View Profile
Re: DSVania Editor (v1.4)
« Reply #115 on: April 22, 2017, 07:00:52 pm »
You work fast, LagoLunatic! I wish I could stick to something like this.

So, right now to get build_ui to work I'm having to comment out line 7 and 33 of the Rakefile. That results in everything I need.

But in case it's of interest, for build_installers, I have to change line 45 to the following:
Code: [Select]
  system "ocra dsvedit.rb --output DSVEdit.exe --no-lzma --chdir-first --icon ./images/dsvedit_icon.ico"because I'm using ocra 1.3.8 and ocra seems to work best this way. The ISS doesn't compile with the following error message:
Code: [Select]
ERROR: InnoSetup installer creation failed: undefined method `encode' for #<Ocra::Pathname:0x000000040d58f0 @path="src/dsvedit.rb">
but... I hate installers anyway.
And... the EXE that results from it is 422MB. That seems wrong.
Line 46 has to be commented out because the dsvrandom files are still missing.

I haven't tested build_releases because all I'm after is the editor itself.

Yeah, build_installers and build_releases might have issues for people besides me because of the specific setup I have going on, but those are just for me anyway, you don't need to build the executables to run it from source. I'll add a check to build_ui so it doesn't crash though.

As you've noticed the non-installer output of ocra is really bad. Not only is it 400MB but if you try to boot it up it takes more than 20 seconds to extract all the files zipped up inside the exe to a temporary folder before running it. Not just the first time, it takes 20+ seconds to boot up every single time. This is why I use the installer version, and then instead of distributing the installer I just install it myself, and zip the contents up and distribute the zip instead. Even then, the filesize winds up being large. Something tells me ruby wasn't really designed for being 'compiled' into an executable, but oh well.

The armips crash was like this:
 [2017-04-22T05:45:24.135109 #20544] ERROR -- : No such file or directory - ./armips/armips.exe "asm/por_load_new_overlay.asm" (Errno::ENOENT)
which... is true, armips isn't included right now.

I'm having fun watching this project develop and playing with no$gba to try to figure out AI.

Oh, that's a simpler problem than I thought. armips isn't included in the github source code, but it is actually in the release builds of DSVEdit. You can just copy the "armips" folder from DSVEdit 1.4 into your source directory and it should work. Of course you can also build armips yourself and put it in that folder and it will run.

MathUser2929

  • Hero Member
  • *****
  • Posts: 1519
    • View Profile
Re: DSVania Editor (v1.4)
« Reply #116 on: April 23, 2017, 09:35:40 am »
Wow, AOS support, I hope you keep going and get HOD and COTM. I know HOD should be straightened out so each castle looks unique. I always get the two confused. Never should have opened them both up at the same time.

DoctorGoat

  • Jr. Member
  • **
  • Posts: 11
    • View Profile
Re: DSVania Editor (v1.4)
« Reply #117 on: April 24, 2017, 04:35:04 pm »
Extremely optional feature request: Could you write something that'll dump item/AI/weapon/soul/etc offsets along with the name of what they're associated with? Like, example line for AoS:
Wood_Golem_Soul,0x080322E8

I'm messing with Ida again and it'd be really good if I could rig up a script to take that output and autotag functions. Here's what wood golem looks like with just that manually picked out: http://i.imgur.com/unEbgRG.png

GBA seems to be the only system where it correctly loads things, though. Messing with the DS games requires a running emulator. :(

theplottwist

  • Jr. Member
  • **
  • Posts: 5
    • View Profile
Re: DSVania Editor (v1.4)
« Reply #118 on: April 25, 2017, 03:20:05 am »
Oh yeah.... you are that Scumbag Mario Santos. Thanks for the reminder.  :o

..... lol. Just kidding about that scumbag bit man.  8) How have you been?

Doing fine. Working a lot to push some great stuff forwards :)

DoctorGoat

  • Jr. Member
  • **
  • Posts: 11
    • View Profile
Re: DSVania Editor (v1.4)
« Reply #119 on: April 25, 2017, 07:02:02 pm »
There's a definite off-by-one error in the blue souls for Aria of Sorrow.