ROM Hack Metroid Prime Hunters ROM hacks?

  • Thread starter Thread starter banjo2
  • Start date Start date
  • Views Views 15,178
  • Replies Replies 21

banjo2

gamer
Member
Joined
May 31, 2016
Messages
2,344
Solutions
1
Reaction score
6,662
Trophies
1
Location
society
Website
youtube.com
XP
5,196
Country
United States
Are there ROM hacks (or specific tools for creating such) of any kind, for [GAME=/game/metroid-prime-hunters.1110]Metroid Prime Hunters[/GAME]? I haven't been able to find any online aside from a model viewer, but it'd be cool to play on custom maps or something like that.

Any information as to why there are none (aside from lack of popularity) would be greatly appreciated too.

Thanks :)
 
Beyond the old DSGraph program you are likely talking about there* I have not seen any. For a moment there a few people were looking at the demo as things could be more easily discussed (with it coming with every DS then while not IP free it was still free enough) but that was less about making a better game as much as discussing it, and as most people were looking more at ripping games (most still only had GBA era carts which might well have been 32 megs -- Castlevania was the first game most people had a chance to play from a flash cart and it was 64 megs unless you ripped the intro film) than ROM hacking.

*others playing along at home then despite it being a Nintendo game they had presumably not figured out all the formats that we have since come to know so most of what you will find here you might recognise elements of but they are not the final 3d, 2d, archive and text formats we have since got all nice tools for.

After that then yeah the lack of popularity has seen it languish somewhat.
 
  • Like
Reactions: banjo2
Is there any way to replace the imp pickup with another weapon without going too deep into modding? Or delete it altogether? If you don't know what the imp is, it's a really broken weapon that all players just spam and it ruins the game.
 
Is there any way to replace the imp pickup with another weapon without going too deep into modding? Or delete it altogether? If you don't know what the imp is, it's a really broken weapon that all players just spam and it ruins the game.
In terms of modding for online play, another issue is constant health spawning, especially the 100 health orbs. They're very abusable if you just run around the map a lot while fighting, especially for Weavel players.
 
In terms of modding for online play, another issue is constant health spawning, especially the 100 health orbs. They're very abusable if you just run around the map a lot while fighting, especially for Weavel players.

I don't think that is an issue. A player constantly running away has no way to get any kills without the imp. The imp is the main problem that I would love to find a solution for. Whether it's a mod, patch or just an AR code would be great!
 
I don't think that is an issue. A player constantly running away has no way to get any kills without the imp. The imp is the main problem that I would love to find a solution for. Whether it's a mod, patch or just an AR code would be great!
Maybe it's just a few matches for me, huh.
 
While you could change the imp at map level or game level you could probably get it done with a basic weapons style cheat, but with a twist towards removing it instead.

Or if you prefer then classic inventory style cheat being that somewhere in RAM will be a list of what you have, or possibly just what ammo you have (if you have ammo you have the weapon being a less than great but still easy to implement method of doing this sort of thing). So either make an inventory cheat or ammo cheat that sets the ammo to 0, have weapon to 0 (assuming that is don't have), or maybe if you want it to still do something then the DS cheat engines are usually pretty good so you could instead tell it to give you another weapon (though any icons or map indicators will still be the imp thing).
 
  • Like
Reactions: banjo2
If I was to create a cheat code somehow, would it be able to affect other players over wi-fi connection? So that when they pickup imp they get another weapon? Since this is why I want to do this at all.

I was thinking of using Every File Explorer to simply replace the files in the rom that indicate the imp with copied and pasted files of another weapon like magmaul or something. I already did it to replace samus model in character select to kanden which was kinda funny. It must be achievable if I could just find which files needed to be replaced? Since they are all named random things like c2Extmp7.arc and such.
 
I could see a few types of cheat code working somehow* but for a game that early on, a simple weapon selection/ammo code and a system like this I doubt even those will do anything here. To that end nope everybody would have to agree to have it. Same would also apply if you went the harder, but more elegant, path of modifying the maps or their item location lists (or the game's own code handling it) themselves.

*if you were the host and everybody reported in to the host then you could modify things there, likewise if weapon pickups were handled by a host you might be able to set things or set it picked up if there is a timeout. This is early stage DS code and given even Nintendo's flagship pokemon titles on the 3ds were making mistakes that would get a first year student failing out of a course I don't imagine you will have that robust a server architecture here.
 
I could see a few types of cheat code working somehow* but for a game that early on, a simple weapon selection/ammo code and a system like this I doubt even those will do anything here. To that end nope everybody would have to agree to have it. Same would also apply if you went the harder, but more elegant, path of modifying the maps or their item location lists (or the game's own code handling it) themselves.

*if you were the host and everybody reported in to the host then you could modify things there, likewise if weapon pickups were handled by a host you might be able to set things or set it picked up if there is a timeout. This is early stage DS code and given even Nintendo's flagship pokemon titles on the 3ds were making mistakes that would get a first year student failing out of a course I don't imagine you will have that robust a server architecture here.


I've been up for hours now trying to figure something out and the closest I have gotten is I replaced the model for the imp with the model for the volt driver but when you actually pick it up, it still gives you the imp... I'm so close now...
 

Attachments

  • electropckupwpn.png
    electropckupwpn.png
    62.2 KB · Views: 338
Model is just the model. Functionally it is no different than if you had replaced the sound or some text dealing with it.

You would need to either replace the map pickup (possibly in the map itself, possibly an extra separate to the map) or change the game so when it picks up that it gives you nothing or something else than what it is "supposed" to, though for the latter if you can replace the model then that might also solve some issues with appearance at least.
 
It would be amazing if there was an application that allows you to edit the maps of this game. They have one for Mario Kart DS but haven't developed one for MPH yet. The items and rules of the game are different so I can't imagine MK Track Editor working?
 
  • Like
Reactions: banjo2
I don't think I have ever seen a level editor work across games within the same franchise off the bat (even across regions is sometimes a bit of an ask), though I could at least see it. Across games, formats and time... nope. Sound, aspects of graphics and maybe even text then sure but levels do tend to be custom outside of game generators like RPG maker.
I would not be overly surprised to see Mario Kart working in a similar fashion, mainly as it is on the same system, from similar devs and there are only a few ways to make games like this (in mario kart's case you have a big model for the whole track, a file (see KCL) for the track data as the 3d model has no real way of determining what is road and what is not, and other models/formats to handle placements of certain things and animations, this 2 or 3 concept split also applies to many 2d levels as well but we will skip that one for now). You do also have the UI problem as 2d level editor is pretty easy (window, selection of things to drag and drop, maybe option for their behaviours, job done) where 3d level editor means full 3d modeller or something akin to it, or more likely converter from (and possibly to) common 3d format for use in another 3d modeller that someone else made and thus moving target and all that such things entail, to say nothing of the difficulty of 3d modelling (there is a reason it tends to be taught properly at university level where every kid at least gets to play with paint).

Mario Kart historically has a big hacking, speedrun and such scene as well. While Metroid is not lacking such a thing it is mostly more focused on the single player efforts rather than spinoffs like this.
 
  • Like
Reactions: banjo2
Since the game in question is a very simple and quite old NDS game from 13 years ago, developing the software should not be that hard of a task? I guess the main reason is just that nobody with the skills to do so has had enough interest in this game to get the job done. Bigger titles like Mario Kart won it.

I guess you could design a map model pretty easily in programmes like sketchup, but the collision detection, animations and objects (spawn points, weapon pickups, ammo etc.) would require specific software to view and edit. Asking nintendo for it is out of the question, although as I mentioned before it can't exactly be rocket science to program, considering the age of the game and how it is pretty much the most basic form of 3D level design.
 
  • Like
Reactions: banjo2
The DS was 2004 where the PS1 (also very much a 3d console) was 1994, the PC going 3d in a big way even earlier, and things had developed a lot during that time. While the DS might not have had the polygon budget, some of the crazy texture sizing and whatever else of some other things it had learned many lessons from that time, and not quite enough that its 3d hardware trivially maps to other concepts (the 3ds kind of had some version of mobile opengl but the DS was custom).
To that end don't bank on it being simple. It is an eminently doable project (see also the dsgraph program mentioned earlier being rather early on, possibly before nsbmdtool. I did also just notice https://github.com/McKay42/mph-arc-extractor is a thing so that might help some things.

If you want to change pickups then might be worth figuring out which file handles them (swap them around between levels if you want, if pickups are suddenly in new locations then now you know). Most such pickups will be a 3d coordinate and what they are (sometimes you might have more variables but expect at least three things, probably four, if 5 it will tend to be some kind of respawn time or extra detail for the pickup) so start playing with numbers or comparing one set to the next, if there are two pickups next to each other then that might tell you something. Worst case scenario you put the pickup outside the level where no player can get it.
 
I don't understand people who use hacks in games. You lose the whole point of the game, all its charm, when you have to build and then achieve the result and move on with the story. As a child, everything was different, when hacks were almost non-existent and everyone was equal. I can't imagine anyone playing my favorite Super Metroid game with the hack. Although now there is probably an opportunity for this, because it can now be played on the PC. At first I didn't believe it, but a couple of days ago I downloaded it and still play it every day, nostalgia...
 
Last edited by Flame,
I don't understand people who use hacks in games. You lose the whole point of the game, all its charm, when you have to build and then achieve the result and move on with the story. As a child, everything was different, when hacks were almost non-existent and everyone was equal. I can't imagine anyone playing my favorite Super Metroid game with the hack. Although now there is probably an opportunity for this, because it can now be played on the PC. At first I didn't believe it, but a couple of days ago I downloaded it and still play it every day, nostalgia...

i removed the link which contained warez you added it back. dumb move.
 
If you want to change pickups then might be worth figuring out which file handles them (swap them around between levels if you want, if pickups are suddenly in new locations then now you know).
That's not how it works. In Metroid Prime Hunters, all things that appear in levels are handled by the "entity" files. They contain multiple "layers" which define when a specific item/enemy/object/door/… is visible, and every entity has a position at which it should appear, potentially a scanlog ID, potentially rotation matrices, and so on. If you want to swap items, all you have to do is edit the entity file of the corresponding room and change the item ID in the pickup entity. That will change the item that appears in-game.

I was thinking of using Every File Explorer to simply replace the files in the rom that indicate the imp with copied and pasted files of another weapon like magmaul or something.
Again, that's not how it works. The game knows items by ID, and every item has hardcoded behavior in the game. You can change the item IDs e.g. for weapon pickup entities, then you'll get a different weapon there, but you cannot just "copy and paste files of another weapon", because as I said, the behavior is not defined by any data files.

Also, there are two newer projects besides that ancient dsgraph. The most complete one is probably "mph-viewer" and another one is called "MphRead" (sorry, can't post links for some reason). They are much better than all the previous attempts like dsgraph or McKay42's viewer. If you look at mph-viewer's code, you'll probably have all the information you need to modify item pickups in rooms.
 
  • Like
Reactions: atrueboss
Thanks for the new projects, missed them entirely in previous searches (given I had to use quotes in the case of the former then yeah). Metroid Prime Hunters is not my thing but I am pleased to see projects out there attempting to handle it.
https://github.com/hackyourlife?tab=repositories
https://github.com/NoneGiven with this one also forking the first.

Links wise the site had issues with spammers and banned members spamming so such things are not available. I think it is 10 posts before you can.
You can break them up a bit and get people to remove spaces or whatever.

That's not how it works. In Metroid Prime Hunters, all things that appear in levels are handled by the "entity" files. They contain multiple "layers" which define when a specific item/enemy/object/door/… is visible, and every entity has a position at which it should appear, potentially a scanlog ID, potentially rotation matrices, and so on. If you want to swap items, all you have to do is edit the entity file of the corresponding room and change the item ID in the pickup entity. That will change the item that appears in-game.

Again, that's not how it works. The game knows items by ID, and every item has hardcoded behavior in the game. You can change the item IDs e.g. for weapon pickup entities, then you'll get a different weapon there, but you cannot just "copy and paste files of another weapon", because as I said, the behavior is not defined by any data files.

Also, there are two newer projects besides that ancient dsgraph. The most complete one is probably "mph-viewer" and another one is called "MphRead" (sorry, can't post links for some reason). They are much better than all the previous attempts like dsgraph or McKay42's viewer. If you look at mph-viewer's code, you'll probably have all the information you need to modify item pickups in rooms.

For the first part I was talking more about finding the files handling coordinates in the first place (I was operating under the assumption it was an unknown and people would have to go from nothing other than the game in front of them and knowledge of the hardware). The game would be unplayable, though it might also have outright crashed, but it is an immediate visual difference to know to investigate those files or maybe sections within files -- this was following on from the previous post wherein we discussed much the same from Mario Kart (which uses KCL files to define things on top of a more conventional 3d model of the world).
 
That's not how it works. In Metroid Prime Hunters, all things that appear in levels are handled by the "entity" files. They contain multiple "layers" which define when a specific item/enemy/object/door/… is visible, and every entity has a position at which it should appear, potentially a scanlog ID, potentially rotation matrices, and so on. If you want to swap items, all you have to do is edit the entity file of the corresponding room and change the item ID in the pickup entity. That will change the item that appears in-game.

Again, that's not how it works. The game knows items by ID, and every item has hardcoded behavior in the game. You can change the item IDs e.g. for weapon pickup entities, then you'll get a different weapon there, but you cannot just "copy and paste files of another weapon", because as I said, the behavior is not defined by any data files.

Also, there are two newer projects besides that ancient dsgraph. The most complete one is probably "mph-viewer" and another one is called "MphRead" (sorry, can't post links for some reason). They are much better than all the previous attempts like dsgraph or McKay42's viewer. If you look at mph-viewer's code, you'll probably have all the information you need to modify item pickups in rooms.

Thanks for your feedback. I am currently modding this game entirely. I have already had success with music mods and balancing the weapons/hunters out. I just need to find out how to recompress the ARM9 after editing and balancing will be done. (if you inject it back in decompressed the game suffers memory problems when playing online and it crashs due to the ARM9 file being larger than expected) After I find a solution to this I will be back in an attempt to customise the maps and potentially make new ones where your input will be helpful.
 
  • Like
Reactions: banjo2

Site & Scene News

Popular threads in this forum