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

Author Topic: Megaman 1 hacking topic  (Read 2881 times)

Timaeus

  • Jr. Member
  • **
  • Posts: 75
  • Noel <3
    • View Profile
Megaman 1 hacking topic
« on: February 26, 2020, 01:33:10 pm »
  I decided to create this topic for my questions about Megaman 1 hacking to avoid spamming every question in different topics.

  I decided to change the musics for the future, and focusing on weapon hacking and enemies hacking, however I am having problems at making the Super Arm fire the block debris without needing to pick a block. I am still using hex editor and fceux by the way. Any hints about how to do that?

redmagejoe

  • Full Member
  • ***
  • Posts: 218
    • View Profile
Re: Megaman 1 hacking topic
« Reply #1 on: February 26, 2020, 03:16:15 pm »
I would imagine you'd need to chase down routines to find the moment that a thrown block impacts something, and set a breakpoint there, then chase around code to find out specifically what's responsible for spawning and moving those projectiles.

Vanya

  • Hero Member
  • *****
  • Posts: 1560
    • View Profile
Re: Megaman 1 hacking topic
« Reply #2 on: February 27, 2020, 01:41:36 am »
Judging from the normal behaviour of the Super Arm, there is likely a routine somewhere that toggles a flag that changes Megaman's graphics to holding the big block and another that creates the debris blocks as redmagejoe suggested.

If I'm right, then you'd have to remove the check for this flag so that it always assumes you are already holding a big block.

This *could* cause Megaman to always be carrying a stone block while using the Super Arm.
If so, you may want to find the code that makes this happen and remove it too.

At that point, it should do what you want it to... I *think*.
« Last Edit: March 01, 2020, 11:27:14 pm by Vanya »

Timaeus

  • Jr. Member
  • **
  • Posts: 75
  • Noel <3
    • View Profile
Re: Megaman 1 hacking topic
« Reply #3 on: March 01, 2020, 05:43:35 pm »
  With the hints, I made it work just like Rockman Claw's (making Megaman being able to create a rock without any rocks nearby, but with a different debris angle). Thanks guys. As for my next task, I wanna make the weapons shot more than one time at the same time. I tried, but the max I could do is to make the weapon's gauge waste properly after every fire button being pressed, but I could not think of how to make it actually shot while the other projectile is on the screen. So far I am only using hex editor and fceux.
  Any hints?
« Last Edit: March 01, 2020, 11:41:54 pm by Timaeus »

Vanya

  • Hero Member
  • *****
  • Posts: 1560
    • View Profile
Re: Megaman 1 hacking topic
« Reply #4 on: March 01, 2020, 11:33:15 pm »
Glad it's working out.
To change the fire rate I think you're going to have to look at the code that runs when the fire button is pressed.
There should be some RAM flags for which button is being pressed.
That should lead to whatever code it is that controls what happens when you fire a shot.
Probably it'll check if you are firing and what weapon you have equipped then branch to whatever code is needed.

Timaeus

  • Jr. Member
  • **
  • Posts: 75
  • Noel <3
    • View Profile
Re: Megaman 1 hacking topic
« Reply #5 on: March 17, 2020, 12:53:06 pm »
  I am having problems with a music loop. I edit the musics by hex, and before the loop, the breaks work just fine, but when the loop command triggers, the breaks become shorter, messing with the sync. The only thing I changed before the looping was the channel's pitch (the pitch changes were on the part that does not loop).
 
  Any suggestion on how to fix this?

Cyneprepou4uk

  • Sr. Member
  • ****
  • Posts: 334
  • I am the baldest romhacker
    • View Profile
Re: Megaman 1 hacking topic
« Reply #6 on: March 17, 2020, 07:36:43 pm »
Probably the loop pointer should be changed as well if you have shifted channel data
iromhacker.ru - NES ROM hacking tutorials for beginners. Please use Google Translate browser extension

Timaeus

  • Jr. Member
  • **
  • Posts: 75
  • Noel <3
    • View Profile
Re: Megaman 1 hacking topic
« Reply #7 on: March 17, 2020, 08:10:33 pm »
  I do not think that may be the case, since the looping part starts with a note before the breaks, and that first note plays correctly. Also, one specific note does not play correctly for some reason (it repeats itself without me writing it to). I changed the channels tempo and pitch before the loop, if that can be it. I will try to change the pointer again tomorrow and take a pic of what I have done when I can.

  EDIT: I managed to fix the breaks after the loop, and the loop pointer is set correctly, but the first note does not play. It does not affect things so badly so I do not think it is a big issue. Thank you.
« Last Edit: March 18, 2020, 05:16:54 pm by Timaeus »