ROM Hack [NTR Cheats Plugin] Ported from Gateshark

iDropOut

Member
Newcomer
Joined
Oct 11, 2016
Messages
23
Trophies
0
Age
30
XP
77
Country
Indonesia
Here's an ntr plugin (and source) for mhxx that should work online (tested it myself) and works with o3ds on ntr mode3 together with the translation patch (using it myself).

Credits goes to nanquitas for the libs, rydog for the blankcheatmenu, darkflare69 for the actual source file being used (because of online cheating), and of course ymyn for the glorious mhxx cheats.

For removing background image, fill_img certain entry from the config.h (inside Sources/helpers folder) will omit the images on compile.

In case somebody wondering, the armor slots extender cheats were indeed based on ymyn's (refer fort42) but instead of handling the patch codes like how a respectable c coder would, i convert them manually to memwrites. thus, the longass codes for it.
is this plugin need display.plg? because i can't find the displa.plg in the folder..
 

xelrix

Well-Known Member
Member
Joined
Feb 13, 2017
Messages
144
Trophies
0
XP
149
Country
Malaysia
:rofl:
Damn it's hard to please anyone here.
The plugin was meant to be for my personal use anyway (thus the bundled cheats).
I only share it here because you guys have been whining about lack of online cheats and some even have problem with removing images from a plugin to reduce the size to make it compatible with o3ds.
The plugin and source Ive shared solves both of that. Ive even mentioned roughly how to do it.
Now you just need to delve into porting gateshark to C yourself and I believe this source would have been of help because you already have working ported codes to mess around with gateshark porting.
Not my problem if youre too lazy to learn a little bit of C (Very little i dare say).
Yes. I'm too lazy to spoonfeed you guys. Have fun with no online plugin! Sad that you missed all the fun messing with the Japanese players.


Having a hard time editing the file since everything is jumbled together at the end (the multipliers).

To those who found it too jumbled up, use notepad++. It will color code and separate between the actual codes and the comments.
For multipliers, the line with something like:
// Hunter Attack Multiplier 0xE3A040XX
are the line that you need to edit to get to what multipliers you want.
If you cant trust that, you can refer to fort42 since the gateshark comes from there.
The speed multipliers are actually commented out because i dont intend on using them myself but converted and put there just for convenience. To use them, just remove the "//" at the beginning or each line. Just the beginning "//" though. The one at the end are just description of what it does.

Also, heres a good read:
http://gbatemp.net/threads/guide-how-to-create-gateway-cheat-codes.410926/


is this plugin need display.plg? because i can't find the displa.plg in the folder..

No you dont need the display.plg. It works as is. Press Select to bring up the menu.
 
Last edited by xelrix,

Suiseiseki

Well-Known Member
Member
Joined
May 20, 2008
Messages
230
Trophies
1
XP
667
Country
Well I'm confused on the code layout right now since there's alot of if statements on the prowler effects. I need to sort them out to easily reset the multipliers to modified back to normal and vice versa.
 

x06xpower

Well-Known Member
Member
Joined
Jul 20, 2016
Messages
201
Trophies
0
XP
486
Country
United States
:rofl:
Damn it's hard to please anyone here.
The plugin was meant to be for my personal use anyway (thus the bundled cheats).
I only share it here because you guys have been whining about lack of online cheats and some even have problem with removing images from a plugin to reduce the size to make it compatible with o3ds.
The plugin and source Ive shared solves both of that. Ive even mentioned roughly how to do it.
Now you just need to delve into porting gateshark to C yourself and I believe this source would have been of help because you already have working ported codes to mess around with gateshark porting.
Not my problem if youre too lazy to learn a little bit of C (Very little i dare say).
Yes. I'm too lazy to spoonfeed you guys. Have fun with no online plugin! Sad that you missed all the fun messing with the Japanese players.




To those who found it too jumbled up, use notepad++. It will color code and separate between the actual codes and the comments.
For multipliers, the line with something like:
// Hunter Attack Multiplier 0xE3A040XX
are the line that you need to edit to get to what multipliers you want.
If you cant trust that, you can refer to fort42 since the gateshark comes from there.
The speed multipliers are actually commented out because i dont intend on using them myself but converted and put there just for convenience. To use them, just remove the "//" at the beginning or each line. Just the beginning "//" though. The one at the end are just description of what it does.

Also, heres a good read:
http://gbatemp.net/threads/guide-how-to-create-gateway-cheat-codes.410926/




No you dont need the display.plg. It works as is. Press Select to bring up the menu.
if i change the trigger button or add another one to activate the cheat , like x +up and x+ down what would the c code be?
 

Suiseiseki

Well-Known Member
Member
Joined
May 20, 2008
Messages
230
Trophies
1
XP
667
Country
I was able to separate all codes so far and add a few more ones. Currently working on being able to turn them off (thanks for the disable values!) and add the rest of the codes from gateshark. I did ran into freezing errors when i tried turning on the max zenny and max wycademy point codes.

The other thing is other codes have no disable values available (Infinite Gathering can prevent monsters from respawning which might be a problem for multi-monster quests). Anyway, going to put everything and see which works 100% and which freezes (aside from above mention).
 
Last edited by Suiseiseki,

xelrix

Well-Known Member
Member
Joined
Feb 13, 2017
Messages
144
Trophies
0
XP
149
Country
Malaysia
Taken from fort42, credit to ymyn for the codes
[(Y+Up)Prowler Mode Attck multiplier (Y+Down)x1 v1.0]

This part is in one of the if statement. Its there to setup the whole cheats.
If the value in address 0x008EE194 equals to value 0xE3A01010, we execute this whole block. In gateshark format, a block of codes usually ends with D0000000 00000000.

508EE194 E3A01010
00BE5840 E92D400C
00BE5844 E3A03001
00BE5848 E1D520BE
00BE584C E0020392
00BE5850 E3520C7D
00BE5854 A3A02C7D
00BE5858 E1C520BE
00BE585C E1D522B6
00BE5860 E0020392
00BE5864 E3520C7D
00BE5868 A3A02C7D
00BE586C E1C522B6
00BE5870 E3A01010
00BE5874 E8BD800C
008EE194 EB0BDDA9
D0000000 00000000


This is the one that changes the multipliers. Which i put it together in the "Enable multpliers" section in my cheat.c.
For this example though;

DD000000 00000840 This line means if Y+Up pressed, execute this block of codes.
00BE5844 E3A030XX <- XX = 02:x2, 05:x5, 0A:x10, 64:x100 This is the one that determines the multiplier. The one you want to edit.
00BE5878 00000005
0035D72C EA000002
D0000000 00000000

This one is the one that disable the cheat when Y+Down are pressed. Essentially, it just set the value youve changed above back to 1, making the multipler x1. Thus, disabling the codes. Youll fine this one in my cheat.c under "Disable multipliers". No need to change these.
DD000000 00000880
00BE5844 E3A03001
00BE5878 00000005
0035D72C EA000002
D0000000 00000000

These 2 blocks of codes are what i assume to prevent hangs/freeze/stuck in menu.
60BE5878 00000000
D9000000 00BE5878
D4000000 FFFFFFFF
D6000000 00BE5878
D0000000 00000000

D3000000 00000000
50BE5878 00000001
0035D72C 0A000002
D0000000 00000000

Basically, you just need to change the ones in "Enable multipliers" section.
To know which you need to change;
WRITEU32(0x00BE5740, 0xE92D4018);// Hunter Attack Multiplier
WRITEU32(0x00BE5744, 0xE3A04005);// Hunter Attack Multiplier 0xE3A040XX You just need to change the last 2 value/byte of the value in these line
WRITEU32(0x00BE5748, 0xE1D130BE);// Hunter Attack Multiplier 02 x2 to the value corresponding to the multipliers you want
WRITEU32(0x00BE574C, 0xE0030493);// Hunter Attack Multiplier 05 x5
WRITEU32(0x00BE5750, 0xE3530C7D);// Hunter Attack Multiplier 0A x10
WRITEU32(0x00BE5754, 0xA3A03C7D);// Hunter Attack Multiplier 64 x100
WRITEU32(0x00BE5758, 0xE1C130BE);// Hunter Attack Multiplier
WRITEU32(0x00BE575C, 0xE3A01000);// Hunter Attack Multiplier
WRITEU32(0x00BE5760, 0xE8BD8018);// Hunter Attack Multiplier
WRITEU32(0x008EB5EC, 0xEB0BE853);// Hunter Attack Multiplier
WRITEU32(0x00BE5780, 0xE92D4004);// Hunter Defense Multiplier
WRITEU32(0x00BE5784, 0xE3A02005);// Hunter Defense Multiplier 0xE3A020XX This
WRITEU32(0x00BE5788, 0xE0000290);// Hunter Defense Multiplier
WRITEU32(0x00BE578C, 0xE3500C7D);// Hunter Defense Multiplier
WRITEU32(0x00BE5790, 0xA3A00C7D);// Hunter Defense Multiplier
WRITEU32(0x00BE5794, 0xE18100B5);// Hunter Defense Multiplier
WRITEU32(0x00BE5798, 0xE8BD8004);// Hunter Defense Multiplier
WRITEU32(0x008EC774, 0xEB0BE401);// Hunter Defense Multiplier
WRITEU32(0x00BE5844, 0xE3A03005);// Prowler Attack Multiplier 0xE3A030XX This
WRITEU32(0x00BE5878, 0x00000005);// Prowler Attack Multiplier
WRITEU32(0x0035D72C, 0xEA000002);// Prowler Attack Multiplier
WRITEU32(0x00BE5884, 0xE3A02005);// Prowler Defense Multiplier 0xE3A020XX And this
WRITEU32(0x00BE589C, 0x00000005);// Prowler Defense Multiplier
WRITEU32(0x0035D72C, 0xEA000002);// Prowler Defense Multiplier
 
Last edited by xelrix,

Suiseiseki

Well-Known Member
Member
Joined
May 20, 2008
Messages
230
Trophies
1
XP
667
Country
I actually put together all of the multiplier codes to make a "Reset stats" code for an easier time. Other additions is to make different values for spirit gauge and charge gauge since they are linked together.
 

xelrix

Well-Known Member
Member
Joined
Feb 13, 2017
Messages
144
Trophies
0
XP
149
Country
Malaysia
if i change the trigger button or add another one to activate the cheat , like x +up and x+ down what would the c code be?

Code:
void   yourcheats(void)
{
   if (is_pressed(ST + DU))                         // Your trigger here. Notice the ST and DU
   {
       //your codes here
   }
   if (is_pressed(ST + DD))                         // Your trigger here. Notice the ST and DDD
   {
       //your codes here
   }
}

This is taken from file configs.h in "/Includes" folder
Code:
#ifndef A
#   define A BUTTON_A
#endif
#ifndef B
#   define B BUTTON_B
#endif
#ifndef X
#   define X BUTTON_X
#endif
#ifndef Y
#   define Y BUTTON_Y
#endif
#ifndef L
#   define L BUTTON_L
#endif
#ifndef R
#   define R BUTTON_R
#endif
#ifndef ZL
#   define ZL BUTTON_ZL
#endif
#ifndef ZR
#   define ZR BUTTON_ZR
#endif
#ifndef ST                                   //Start
#   define ST BUTTON_ST
#endif
#ifndef SE                                   //Select
#   define SE BUTTON_SE
#endif
#ifndef DU                                   //Dpad UP
#   define DU BUTTON_DU
#endif
#ifndef DD
#   define DD BUTTON_DD
#endif
#ifndef DL
#   define DL BUTTON_DL
#endif
#ifndef DR
#   define DR BUTTON_DR
#endif
#ifndef CU                                   //Cstick UP (though dont bother with these. I never had this working as triggers)
#   define CU BUTTON_CU
#endif
#ifndef CL
#   define CL BUTTON_CL
#endif
#ifndef CR
#   define CR BUTTON_CR
#endif
#ifndef CD
#   define CD BUTTON_CD
#endif
 
Last edited by xelrix,
  • Like
Reactions: x06xpower

xelrix

Well-Known Member
Member
Joined
Feb 13, 2017
Messages
144
Trophies
0
XP
149
Country
Malaysia
Are there disable values for the rest of the codes on gateshark?
I would suggest that you use this;
https://github.com/imthe666st/NTRClient/releases

Untitled.png
 

Nanquitas

Well-Known Member
Member
Joined
Sep 29, 2015
Messages
2,345
Trophies
0
Age
30
Location
South of France :)
XP
3,336
Country
France
Code:
void   yourcheats(void)
{
   if (is_pressed(ST + DU))                         // Your trigger here. Notice the ST and DU
   {
       //your codes here
   }
   if (is_pressed(ST + DD))                         // Your trigger here. Notice the ST and DDD
   {
       //your codes here
   }
}

This is taken from file configs.h in "/Includes" folder
Code:
#ifndef A
#   define A BUTTON_A
#endif
#ifndef B
#   define B BUTTON_B
#endif
#ifndef X
#   define X BUTTON_X
#endif
#ifndef Y
#   define Y BUTTON_Y
#endif
#ifndef L
#   define L BUTTON_L
#endif
#ifndef R
#   define R BUTTON_R
#endif
#ifndef ZL
#   define ZL BUTTON_ZL
#endif
#ifndef ZR
#   define ZR BUTTON_ZR
#endif
#ifndef ST                                   //Start
#   define ST BUTTON_ST
#endif
#ifndef SE                                   //Select
#   define SE BUTTON_SE
#endif
#ifndef DU                                   //Dpad UP
#   define DU BUTTON_DU
#endif
#ifndef DD
#   define DD BUTTON_DD
#endif
#ifndef DL
#   define DL BUTTON_DL
#endif
#ifndef DR
#   define DR BUTTON_DR
#endif
#ifndef CU                                   //Cstick UP (though dont bother with these. I never had this working as triggers)
#   define CU BUTTON_CU
#endif
#ifndef CL
#   define CL BUTTON_CL
#endif
#ifndef CR
#   define CR BUTTON_CR
#endif
#ifndef CD
#   define CD BUTTON_CD
#endif
To be able to use Stick and TouchScreen with libShark2NTR you have to give to the lib the hid shared memory address for it to hook on it.
Example
 
  • Like
Reactions: xelrix

Felipne87r

Well-Known Member
Newcomer
Joined
Jun 10, 2016
Messages
60
Trophies
0
XP
114
Country
Chile
Please can make a plugin for this game?:
Title name: Shovel Knight
Title ID: 0004000000119A00
Region: USA
Codes: only v.2.2. cheats or if can separate codes from v.1.0, v.1.1, v2.0 and v2.2
Specified codes: can be a list of all? if not, only 07
 
Last edited by Felipne87r,

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
    I @ idonthave: :)