Jul 30, 2011 at 3:42 AM
Professional Whatever
"Life begins and ends with Nu."
Join Date: Jan 13, 2011
Location: Lasagna
Posts: 4481
Immediately changes back to original mychar.
 
Jul 30, 2011 at 7:01 AM
Junior Member
"Fresh from the Bakery"
Join Date: Apr 24, 2011
Location:
Posts: 13
jed37 said:
In a mod I'm (very slowly) making, I've hacked the blade to be a melee weapon that you swing over your head instead of throw. It's pretty fun to use, and I could send you the sprites and the code to patch over, Gamefreak, if you don't mind using an assembly-hacker.

Yeah! Can you PM them to me? That would be awesome :momo:
 
Jul 30, 2011 at 6:08 PM
Professional Whatever
"Life begins and ends with Nu."
Join Date: Jan 13, 2011
Location: Lasagna
Posts: 4481
Lace said:
Hmmmm.
Posting just to say I've noticed. Imma go figure out what's wrong nao.

Edit:
I want you to use [4bba00] instead of [49E184].
Don't use curly ai and this won't save, but tell me if it fixes your problem.
(this is just troubleshooting, no guarantees)

What if instead of using RAM you used flags?
Maybe add 4000 (converted to hex) to the first parameter of MIM and then set that flag, then check the flags in the other part. You would need to use JMPs though, and it would be harder to implement.

EDIT: You could also just do the MyChar check with flags, and then make the modder set and unset flags to get the right MyChar sprites.
 
Jul 30, 2011 at 6:21 PM
Been here way too long...
"Life begins and ends with Nu."
Join Date: Jan 4, 2008
Location: Lingerie, but also, like, fancy curtains
Posts: 3054
The original ram offset is flag data. That's why it reset those flags when you used it. It originally showed up invisible when the game started because since some of those flags were set, it was trying to draw a blit from coordinates that don't exist. What you're suggesting will only make this more difficult to implement, and won't help the end problem at all.

The real problem is that bit of ram resetting to 0 every room, and I do not know why that happens.
 
Jul 30, 2011 at 6:37 PM
Professional Whatever
"Life begins and ends with Nu."
Join Date: Jan 13, 2011
Location: Lasagna
Posts: 4481
It fools with the curly ai, correct? Perhaps there is a hint in curly's NPC code. Maybe it is reset to 0, but set to 1 if curly exists.
 
Jul 30, 2011 at 7:17 PM
Been here way too long...
"Life begins and ends with Nu."
Join Date: Jan 4, 2008
Location: Lingerie, but also, like, fancy curtains
Posts: 3054
No, because it was resetting even while using flagdata.
Also that's not what that offset does at all.
 
Jul 30, 2011 at 7:39 PM
Professional Whatever
"Life begins and ends with Nu."
Join Date: Jan 13, 2011
Location: Lasagna
Posts: 4481
Yeah, I had no idea. I'm not a pro at ASM.
 
Jul 30, 2011 at 7:58 PM
Been here way too long...
"Life begins and ends with Nu."
Join Date: Jan 4, 2008
Location: Lingerie, but also, like, fancy curtains
Posts: 3054
Yeah, 'sall good.
The curly-communicator offsets have x and y target values in them is all. Anyways, this isn't one of them, it's just an offset that seemed spare. Evidently it is not. I'd suggest plugging in other offsets. ie

[49E650] (this is the equip offset, so funky stuff may happen)
[49DDA0] (should be the first 32 flags. don't use them and hope for the best?)
[499C68] (will work until you open your inventory)
[499C6C] (same)
[49E1C4] (will make your screen flash black)


haha yeah. you really just want to try using different flags offsets. add x4 to the second offset provided until you get out of range of used flags.
 
Jul 30, 2011 at 8:39 PM
Professional Whatever
"Life begins and ends with Nu."
Join Date: Jan 13, 2011
Location: Lasagna
Posts: 4481
I'll test it out, thanks.
Um...what do you mean by x4? Do I multiply the MIM parameter by 4?
 
Jul 30, 2011 at 9:43 PM
Absentee Modder
"Ha! Ha! Ha! Mega Man is no match for my Mimiga Man!"
Join Date: Sep 7, 2010
Location: Outside your window. No no, don't check, it's okay
Posts: 272
Age: 29
I'm trying to find the bullet offsets. I found them listed in Noxid's assembly compendium, but it's in this format:

0x06BB0

Ollydbg doesn't seem to accept that as an address. Anyone have any info on that?
 
Jul 30, 2011 at 10:23 PM
Been here way too long...
"Life begins and ends with Nu."
Join Date: Jan 4, 2008
Location: Lingerie, but also, like, fancy curtains
Posts: 3054
LunarSoul said:
I'll test it out, thanks.
Um...what do you mean by x4? Do I multiply the MIM parameter by 4?
I meant 4 in hex. That's what prefacing a number with x or 0x means. Here' it was a bit superfluous, as 0x4 = 4, but I included it so that you wouldn't forget numbers that end in c or whatever.

jed37 said:
I'm trying to find the bullet offsets. I found them listed in Noxid's assembly compendium, but it's in this format:

0x06BB0

Ollydbg doesn't seem to accept that as an address. Anyone have any info on that?
do 0x406bb0
 
Jul 30, 2011 at 10:27 PM
Professional Whatever
"Life begins and ends with Nu."
Join Date: Jan 13, 2011
Location: Lasagna
Posts: 4481
Gotcha. I didn't know x was the same as 0x or $.
So I would try ram offsets 49DDA0, 49DDA4, 49DDA8, 49DDAB, etc?
 
Jul 30, 2011 at 10:34 PM
Been here way too long...
"Life begins and ends with Nu."
Join Date: Jan 4, 2008
Location: Lingerie, but also, like, fancy curtains
Posts: 3054
49ddac, but yes.
these each correspond to 32 flags, so really you just need to find 32 flags in a row you don't use and then use that data.

you could also change it to be a single byte, as 256 chars is still a lot, then that only takes up 8 flags.
 
Jul 30, 2011 at 10:48 PM
Professional Whatever
"Life begins and ends with Nu."
Join Date: Jan 13, 2011
Location: Lasagna
Posts: 4481
Okay.
So something along the lines of MOV BYTE [49DDAC]9
 
Jul 30, 2011 at 10:57 PM
Been here way too long...
"Life begins and ends with Nu."
Join Date: Jan 4, 2008
Location: Lingerie, but also, like, fancy curtains
Posts: 3054
sure, but you'll need to use the smaller registers, eg al cl and dl.
 
Jul 30, 2011 at 11:37 PM
Professional Whatever
"Life begins and ends with Nu."
Join Date: Jan 13, 2011
Location: Lasagna
Posts: 4481
Works perfectly.
One more question. Where is the key_pressed code for "W' stored? I want it to call an event, and I need to know where it is checked.
 
Aug 1, 2011 at 7:08 AM
Junior Member
"Fresh from the Bakery"
Join Date: Apr 24, 2011
Location:
Posts: 13
How can i edit PBM files easier like using MS Paint insted CS Editor? CS Editor spends a lot of time working on the sprites while MS Paint doesn't!
 
Aug 1, 2011 at 9:53 AM
Absentee Modder
"Ha! Ha! Ha! Mega Man is no match for my Mimiga Man!"
Join Date: Sep 7, 2010
Location: Outside your window. No no, don't check, it's okay
Posts: 272
Age: 29
Rename it so it's a bmp file instead of pbm. Then paint can open it. Or, you can change a setting in caveEditor to make it so the program uses bmps. Just make the file extension (in the game settings menu in caveEditor), and check the remove "(c)Pixel requirement" box.
 
Aug 1, 2011 at 11:58 AM
Professional Whatever
"Life begins and ends with Nu."
Join Date: Jan 13, 2011
Location: Lasagna
Posts: 4481
Make sure if you change it to bmp that you change it back to pbm after, or set the file extension setting in Game Settings to bmp. Also uncheck (C)Pixel requirement setting in the same window.
 
Top