Kodewerx https://www.kodewerx.org/forum/ |
|
[SNES]Mortal Kombat 2[U][1.0][PAR] https://www.kodewerx.org/forum/viewtopic.php?f=18&t=7243 |
Page 1 of 1 |
Author: | Abystus [ Mon Mar 29, 2010 8:22 pm ] |
Post subject: | [SNES]Mortal Kombat 2[U][1.0][PAR] |
Player 1 Takes All Damage 849D6EFC 849D6F2E 849D79FC 849D7A2E Player 2 Takes All Damage 849D5EAA 849D5F30 849D69AA 849D6A30 Rapid Fire Player 1 7E2D7A00 7E2D7B00 Player 2 7E2D7F00 7E2D7E00 Untouchable (Immune to Attacks except Throws/Kintaro Stomp) *Note* These will not work completely for Johnny Cage or Raiden. Player 1 7E2D4665 Player 2 7E2D483D Player 1 Fatality Modifier (Allows you to perform any characters fatality with the character your playing as) *Note* Fatality Completion based on what character you are playing as. 83F1F4AD 83F1F601 7E0110 xx 00 - Kung Lao 01 - Liu Kang 02 - Cage 03 - Baraka 04 - Kitana 05 - Mileena 06 - Shang Tsung 07 - Rayden 08 - Sub-Zero 09 - Reptile 0A - Scorpion 0B - Jax Computer won't Duck or Block incoming projectiles 80CB1480 Will cause all CPU opponents to Smoke (Rings of smoke like from the Character Smoke) 8490C8AD 8490CA01 7E01100E Character Moveset/Move Extractor (Player 1 & 2) *Note* Will allow you to take moves from another players moveset without actually giving you their moveset as a whole, this will allow you to assign moves to characters while still retaining the rest of their natural moveset. 81A94FA9 81A950 xx 81A95100 849818A9 849819 xx 84981A00 00 - Kung Lao 01 - Liu Kang 02 - Cage 03 - Baraka 04 - Kitana 05 - Mileena 06 - Shang Tsung 07 - Rayden 08 - Sub-Zero 09 - Reptile 0A - Scorpion 0B - Jax *Note* These codes are intended for 1 player mode only, if used in 2 player mode freezing may occur. Player 1 Play as Real Jade 81A94FA9 81A95004 81A95100 7E2EF810 849818A9 84981904 84981A00 85C463EA 85C464EA 85C465EA 85C46622 85C46780 85C468FF 85C4697F 7FFF80C9 7FFF8110 7FFF8200 7FFF83D0 7FFF8403 7FFF85A9 7FFF8604 7FFF8700 7FFF880A 7FFF890A 7FFF8AAA 7FFF8BBF 7FFF8CE2 7FFF8DC4 7FFF8E85 7FFF8F6B Play as Real Smoke 81A94FA9 81A9500A 81A95100 7E2EF80E 849818A9 8498190A 84981A00 Play as Real Noob Saibot 81A94FA9 81A9500A 81A95100 7E2EF80F 849818A9 8498190A 84981A00 Player 2 Play as Real Jade 81A94FA9 81A95004 81A95100 7E30A610 849818A9 84981904 84981A00 85C463EA 85C464EA 85C465EA 85C46622 85C46780 85C468FF 85C4697F 7FFF80C9 7FFF8110 7FFF8200 7FFF83D0 7FFF8403 7FFF85A9 7FFF8604 7FFF8700 7FFF880A 7FFF890A 7FFF8AAA 7FFF8BBF 7FFF8CE2 7FFF8DC4 7FFF8E85 7FFF8F6B Play as Real Smoke 81A94FA9 81A9500A 81A95100 7E30A60E 849818A9 8498190A 84981A00 Play as Real Noob Saibot 81A94FA9 81A9500A 81A95100 7E30A60F 849818A9 8498190A 84981A00 Remove Secret Characters from Goro's Lair (Will allow them to progress through stages like all the other characters) 83B2BCA2 83B2BD01 83B2BE00 Enable Finishing Moves to be performed with Secret Characters 83A674A0 83A67501 83A67600 |
Author: | Parasyte [ Tue Mar 30, 2010 7:53 pm ] |
Post subject: | Re: [SNES]Mortal Kombat 2[U][1.0][PAR] |
You can actually shorten some of those codes using the "DEADC0DE" code type: http://doc.kodewerx.org/hacking_snes.html#partypes I'm not sure if any emulators support it (probably not!) but the PAR v3 definitely does. I'd like to double-check the actual format, since I managed to find one instance of the code type on the internet: http://www.ultimate-cheatz.de/codebase/daten.php?system=snes&act=detail1&id=5683 ... and it's definitely not in the format I described on EnHacklopedia... Viper had a code book for SNES PAR with a code for StarFox that used that code type. Maybe I'll have him look that up again. |
Author: | Parasyte [ Tue Mar 30, 2010 8:12 pm ] |
Post subject: | Re: [SNES]Mortal Kombat 2[U][1.0][PAR] |
Got this from Viper just now: *This code is for STARFOX [J]! It is here only for illustrative purposes* JAP version - Infinite Energy and Nova Bombs DEADCODE 02FC6606 08E220A9 288D9603 A9058DAF 15286468 64695C6A FC020000 So the description on EnHacklopedia is a bit hard to decipher. Basically, the code type allows you to write a series of 32-bit words into a memory location. In this case, six words are written to address $02FC66 (notice the address doesn't have to be word-aligned) ... You can use this format to shorten your codes a great deal. |
Author: | Abystus [ Tue Mar 30, 2010 11:07 pm ] |
Post subject: | Re: [SNES]Mortal Kombat 2[U][1.0][PAR] |
Wow this is actually new to me as I have never heard of it. Also I checked google and there isn't a lot of information on the code type other than just some references to it and what it does. However I could not find a before and after comparison of how it was converted. There is code cave that is written with some of the addresses and I am wondering if it would create problems with the jsr, etc... If emulators may rarely support the DEADCODE then it may be hard to test if it actually works correct? Do you think you may be able to give an example with the following code so that I could see a before and after (Would probably be the most detailed information on the net!)? Code: Play as Jade P1 81A94FA9 < -- start move set code 81A95004 81A95100 7E2EF810 < -- player 1 modifier 849818A9 84981904 84981A00 < -- end move set code 85C463EA < -- start of making room for my jsr (guess I could have used a branch to my jsr here to save using 1 additional code) 85C464EA 85C465EA 85C46622 < -- start of jump to below routine 85C46780 85C468FF 85C4697F 7FFF80C9 < -- my routine for fixing fan lift/air fan throw. 7FFF8110 7FFF8200 7FFF83D0 7FFF8403 7FFF85A9 7FFF8604 7FFF8700 7FFF880A 7FFF890A 7FFF8AAA 7FFF8BBF 7FFF8CE2 7FFF8DC4 7FFF8E85 7FFF8F6B < -- rts I don't think I've ever seen such a handy code with such limited information... I do understand the concept, its just the conversion of this specific code (Since it does include jumps etc...) and from what I've read you can only have one of these active at a time. Any help is appreciated. |
Author: | Parasyte [ Wed Mar 31, 2010 4:39 pm ] |
Post subject: | Re: [SNES]Mortal Kombat 2[U][1.0][PAR] |
It's one of those things that I didn't even know about until Viper pointed out that code some years back. And the only references I can find through Google all come EnHacklopedia (which I wrote myself, so that's no help ...) I need to better document my sources. By that, I mean the disassembly/reverse engineering that I did on the code type stuff. If I had those pieces of information on EnHacklopedia, it would be even easier to re-research. Anyway, this is extremely easy to use. But there's a catch (of course!) I believe that only one DEADC0DE can be used at a time. So if you have several large ranges of data to write, you should only convert the largest one. There are other limitations as well, but I can't remember all of the details (more reasoning for documenting sources...) Taking your example code, here it in converted to a shorter format which should work great: Code: 81A94FA9 < -- start move set code 81A95004 81A95100 7E2EF810 < -- player 1 modifier 849818A9 84981904 84981A00 < -- end move set code 85C463EA < -- start of making room for my jsr (guess I could have used a branch to my jsr here to save using 1 additional code) 85C464EA 85C465EA 85C46622 < -- start of jump to below routine 85C46780 85C468FF 85C4697F DEADC0DE 7FFF8004 C91000D0 < -- my routine for fixing fan lift/air fan throw. 03A90400 0A0AAABF E2C4856B < -- rts This *should* be correct. I seem to remember this code type doing something strange when the address is in ROM (like the Starfox code). I believe in that case, it would issue a ROM patch at that address which inserts a JMP long instruction (4 bytes). The actual data sits in external (GameGenie-onboard) memory, and requires a JMP long at the end to go back to the original location + 4. But this is all coming from memory, and I could be wrong... |
Author: | Abystus [ Wed Mar 31, 2010 5:02 pm ] |
Post subject: | Re: [SNES]Mortal Kombat 2[U][1.0][PAR] |
Hey thats easier than I thought it would be, hopefully emulators support it as I don't have the actual hardware anymore. This needs to be updated in the wiki so if you get a chance drop it in there with my code as I don't mind if it is used for an example. As you have seen there isn't much documentation so this would be a great start . Thanks for the help para, hopefully things will pick up around here as it has been very slow. *Edit* I did have a chance to play with the new code, unfortunately it doesn't appear to be supported by Snes9x, or BSnes. I am wondering if there is any point in converting it as there aren't many people with the original hardware that wouldn't just use an emulator now a days. Since the support is low on this type of code it appears the longer version may be best to post as most users would have issues with the converted one. Anyways thanks for the explanation as Enhacklopedia left much to be desired in its description of use . |
Author: | Parasyte [ Wed Mar 31, 2010 6:31 pm ] |
Post subject: | Re: [SNES]Mortal Kombat 2[U][1.0][PAR] |
I have a PAR (version 1) but don't have Mortal Kombat II. Not sure if the code type is supported by v1, either. In any case, it's not much trouble to add support to either of those emulators, being open source and all. But some further research is necessary to make sure it's emulated properly. |
Page 1 of 1 | All times are UTC - 8 hours [ DST ] |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |