Points of Required Attention™
Please chime in on a proposed restructuring of the ROM hacking sections.
Views: 88,442,296
Main | FAQ | Uploader | IRC chat | Radio | Memberlist | Active users | Latest posts | Calendar | Stats | Online users | Search 04-20-24 01:43 PM
Guest: Register | Login

0 users currently in Super Mario RPG Hacking | 1 guest

Main - Super Mario RPG Hacking - Lazy Shell Improvement Thread New thread | New reply

Pages: 1 2 3 4 5 6 7 8

GRUNK
Posted on 01-26-13 02:21 AM Link | Quote | ID: 153357


Goomba
Compromised account. Please contact staff for a password reset.
Level: 15

Posts: 26/33
EXP: 14564
Next: 1820

Since: 02-21-08
From: New york

Last post: 2781 days
Last view: 2781 days
Hate to ask but will the Japanese version ever be support?

____________________
not enough space for arguments

AlveinHero
Posted on 03-10-13 09:32 PM Link | Quote | ID: 153529


Red Goomba
Level: 17

Posts: 6/47
EXP: 20535
Next: 4208

Since: 03-07-13

Last post: 1033 days
Last view: 330 days
Posted by GRUNK
Hate to ask but will the Japanese version ever be support?

We'll see about that.

SMRPG HACKER
Posted on 05-15-13 02:51 AM Link | Quote | ID: 153897


Koopa
Level: 25

Posts: 82/107
EXP: 79262
Next: 10358

Since: 04-06-10
From: On mars

Last post: 3224 days
Last view: 3224 days
Any chance for import sheet option like say the width is 32 so you divide the width by 32 and that's how many molds you got
( 320/32 = 10 molds )

Darkkefka
Posted on 08-29-13 05:29 PM (rev. 3 of 08-29-13 05:31 PM) Link | Quote | ID: 154679


Red Koopa
Level: 26

Posts: 66/123
EXP: 94112
Next: 8163

Since: 04-09-11

Last post: 3117 days
Last view: 3284 days
I finally learned how to use the music editor, and I've finished my first custom song for the game. But it took me about 2 weeks to make it!!!!

I have 2 major issues...and I doubt they can be added in, but....


1: is there a slight possibility to add at least maybe 2 or 4 more channels?? Most of the custom songs I want to use require a full band. I literally have some channels playing 8 instruments and it gets me mixed up a lot..and of course some most play on the very same beat..forcing me to leave out some parts of the song since it seems impossible to have 2 different notes/instruments play on the very same beat in the same channel.

2: The music editor has a very bad habit of scrolling you back to the top of the score, and I lose my place on the editing a lot when that happens.

Oh..I tried to import a custom wave, and it said file wasn'r supported. What when wrong??


DS Piron
Posted on 08-29-13 05:41 PM Link | Quote | ID: 154680


Micro-Goomba
Level: 9

Posts: 6/12
EXP: 2637
Next: 525

Since: 04-13-13

Last post: 3484 days
Last view: 3648 days
...I don't think it's physically possible to add more channels, not without changing the sound chip in the SNES itself, and at that point, you'd be better off programming the game from scratch.

...But, perhaps I'm wrong...

giangurgolo
Posted on 08-29-13 06:27 PM Link | Quote | ID: 154682


Level: 34

Posts: 197/219
EXP: 249417
Next: 4234

Since: 02-01-08

Last post: 3241 days
Last view: 3241 days
Posted by Darkkefka
is there a slight possibility to add at least maybe 2 or 4 more channels??

No, only 8 channels are supported.


The music editor has a very bad habit of scrolling you back to the top of the score, and I lose my place on the editing a lot when that happens.

The new version 3.18.4 fixes this problem.


Oh..I tried to import a custom wave, and it said file wasn'r supported.

Follow the guidelines in the "IMPORTING CUSTOM WAVS" section in the readme.txt file.

Darkkefka
Posted on 09-12-13 07:38 PM Link | Quote | ID: 154763


Red Koopa
Level: 26

Posts: 70/123
EXP: 94112
Next: 8163

Since: 04-09-11

Last post: 3117 days
Last view: 3284 days
Would it be possible for an Undo option in the animation editing screen?

I make a lot of mistakes and I'm forced to close the screen and re-open it.


Oh..you seem to be the boss around here.
I think finally understand how the level cap thing is done, however, I need to know if it's okay to talk about that here on this site. I promised I'd explain how to do it if I ever learned it. It won't be for a few days though.

giangurgolo
Posted on 09-13-13 02:04 AM Link | Quote | ID: 154764


Level: 34

Posts: 198/219
EXP: 249417
Next: 4234

Since: 02-01-08

Last post: 3241 days
Last view: 3241 days
Are you referring to the sequences and frames in bottom portion of the sprites window or the animation scripts?

Darkkefka
Posted on 09-13-13 06:06 AM Link | Quote | ID: 154766


Red Koopa
Level: 26

Posts: 71/123
EXP: 94112
Next: 8163

Since: 04-09-11

Last post: 3117 days
Last view: 3284 days
the animation scripts, for like making custom attacks and such.

giangurgolo
Posted on 09-13-13 06:04 PM Link | Quote | ID: 154770


Level: 34

Posts: 199/219
EXP: 249417
Next: 4234

Since: 02-01-08

Last post: 3241 days
Last view: 3241 days
That already has undo/redo. The buttons are at the bottom, or just use Ctrl+Z or Ctrl+Y.

SMRPG HACKER
Posted on 10-29-13 12:39 AM Link | Quote | ID: 154969


Koopa
Level: 25

Posts: 94/107
EXP: 79262
Next: 10358

Since: 04-06-10
From: On mars

Last post: 3224 days
Last view: 3224 days
Does lazy shell read pointers? if not can it be made to for expansions.

Elementalpowerstar
Posted on 12-01-13 08:05 AM (rev. 2 of 12-03-13 02:56 AM) Link | Quote | ID: 155195


Paratroopa
Level: 29

Posts: 153/155
EXP: 144296
Next: 3589

Since: 12-29-08
From: ---

Last post: 3791 days
Last view: 3684 days
So, I noticed something with custom music in Super Mario World, where a large portion of the music in certain channel(s), at the end will be blocked out with Rest commands, often "[r]100". Super Mario World seems to have this logic where the song starts to loop back to the beginning of Infinite Looping when the first channel to terminate it's script is.

Say, channel 0 was 10 notes long, and it began to repeat infinitely at the beginning of those notes.
Channel 1 was 8 notes long, and it also began infinitely at the beginning of those notes.
The game would stop at 8 notes for both channels, and loop back around.

For a downloadable example I wrote quickly, "A TEST SONG.txt" (Contains 2 files.) contains a song without a large amount of rests in a loop, will continually play over and over, when a Begin Infinite Repeat command is placed when the notes start. "A TEST SONG with long rest loop.txt" plays normally in AM4 Player, which assumedly copies SMW's sound system, and this plays and loops perfectly.

Is it possible to get this feature implemented? Or perhaps a line in the Staff Viewer of the Audio Editor (An amazing feature, by the way. Good on you for putting that in.) that would show where the end of the channel would be, so it can match up? It would likely need to match up at the appropiate length with the Begin Infinite Repeat command to go accurately. This would greatly help converting favored SMW .MMLs to SMRPG.

Try importing those .txts in the Audio Editor and in AM4 Player and see how things goes. They'll both need the Begin Infinite Repeat command added at the beginning of the notes, because appraently the editor decided not to pick up on them for some reason. It did with other .MMLs, but not that one. Strange.

Sorry in advance, and thanks.

I'm sure someone else might be better suited to fill you in on specifics, but I hope this will be enough to start, if at all.

EDIT (12/2)
If you are planning to implement that line, try to make it at the end of the last note's duration, like this image, where the rests are. I'm starting to use this as a guideline for where the song ends, so there may be no need to even do it. Assuming this works, of course.

____________________
Introduction to The Lazy Shell Editor (youtube)
Super Modify RPG's Youtube Channel.

R. Solaris
Posted on 12-16-13 03:51 AM Link | Quote | ID: 155249


Goomba
Level: 13

Posts: 22/25
EXP: 8942
Next: 1325

Since: 04-16-10
From: Murrells Inlet SC

Last post: 3480 days
Last view: 3112 days
While on the topic of Music, Most SPC files are the same as the VSTi I use manages to grab the samples from any and all SPC files. [C700]. Can it be made that LAzy Shell too can get any Instrument sample from the SPC file, With the proper loop already in place? It would make it easier than using C700 to dump to bnk and then trying to figure out the loop point manually. Also I do second the notion for Lazy Shell to read and adapt pointers to allow for more space rather than being dependant on what free space is left in said sector of the data. Atleast then it would make it so much easier for us to insert custom things.

Darkkefka
Posted on 01-14-14 10:06 AM Link | Quote | ID: 155446


Red Koopa
Level: 26

Posts: 94/123
EXP: 94112
Next: 8163

Since: 04-09-11

Last post: 3117 days
Last view: 3284 days
A rather...silly, but maybe helpful suggestion.

You see, many people know how to use Lazy Shell by now.

Is there any way, or maybe can you create a way to LOCK the game after you've completed it?? Or Lock it with a password??

Like say, make an option to prevent any and all further modifications to the game to prevent people from hacking into your game after downloading it and stealing your stuff or making it easier for them to beat? And make the program warn you that you should make a backup, or have it automatically make you a backup so you don't mess it up incase you need to edit it some more...and the game you lock would be the one you release to the public??

You see, during beta testing of my game, one of the testers told me he downloaded Lazy shell and hacked in a few things to get by it easier...

giangurgolo
Posted on 01-14-14 09:33 PM Link | Quote | ID: 155451


Level: 34

Posts: 212/219
EXP: 249417
Next: 4234

Since: 02-01-08

Last post: 3241 days
Last view: 3241 days
I could do this for future releases, but users could simply use older versions that have no such restrictions to modify hacks. Also, the program is open source and the user could modify the code to remove any password protection features. So ultimately there's not much point to adding such a feature, sorry.

Darkkefka
Posted on 03-12-14 02:05 PM (rev. 3 of 03-12-14 02:27 PM) Link | Quote | ID: 156078


Red Koopa
Level: 26

Posts: 98/123
EXP: 94112
Next: 8163

Since: 04-09-11

Last post: 3117 days
Last view: 3284 days
I see. Bummer. Just an idea since some people REALLY work hard on their hacks.

Would it be possible to name our events and search for them this way? It would be faster than opening the Levels and finding the event number...that way in case you want to change it later.

I notice some of them have names, so I can't search them unless I'm doing it wrong.


Also, unrelated to the thread...that patch you made with the ability to display over 1000 HP on your characters without bugging up. Do you still have it?

http://www.youtube.com/watch?v=hv9ASrrinOE


Also, these might be hardcoded, but would it be possible to make a function that controls those currently "uncontrollable"things.......

Examples:

When all 3 allies are knock out...what controls the fuction that slows down the music and displays the "Game over message" THEN sends you back to the last save point?
What controls how long the invincible power star last? What controls how much EXP the party gains when you add more allies to the group. What controls the DOUBLE EXP from the EXP Booster....
What controls how long the effects of Red Essence, mute, mushroom, sleep, scarecrow last?

You edit attacks in the "attacks" Like I can make spritz Bomb turn you into a mushroom, but what actually tells the game to change that character's sprite to a mushroom? What if I wanted to do something silly, like turn them into a ghost or a doll.

Stuff like that...

SMRPG HACKER
Posted on 03-14-14 01:43 AM Link | Quote | ID: 156090


Koopa
Level: 25

Posts: 96/107
EXP: 79262
Next: 10358

Since: 04-06-10
From: On mars

Last post: 3224 days
Last view: 3224 days
http://home.comcast.net/~giangurgolo/smrpg/ has Gian's previous stuff, his docs and his function demo which incorporates his muscle patch.
C2/DD03 AD 32 08    LDA $0832  [$00:0832]   A:0000 X:0000 Y:0000 ;load XP won
C2/DD06 85 7A STA $7A [$00:007A] A:0004 X:0000 Y:0000
C2/DD08 BF 0E F8 7F LDA $7FF80E,x[$7F:F80E] A:0004 X:0000 Y:0000 ;load accessory
C2/DD0C 29 FF 00 AND #$00FF A:00FF X:0000 Y:0000
C2/DD0F C9 50 00 CMP #$0050 A:00FF X:0000 Y:0000 ;check if Exp.Booster
C2/DD12 D0 02 BNE $02 [$DD16] A:00FF X:0000 Y:0000 ;branch if not

C2/DD14 06 7A ASL $7A [$00:007A] A:0000 X:0000 Y:0000 ;double XP

C2/DD16 BF 0A F8 7F LDA $7FF80A,x[$7F:F80A] A:00FF X:0000 Y:0000 ;load current XP
C2/DD1A C9 0F 27 CMP #$270F A:270F X:0000 Y:0000 ;check if maxed out
C2/DD1D 30 03 BMI $03 [$DD22] A:270F X:0000 Y:0000 ;branch if less than 9999
C2/DD1F 4C 72 DD JMP $DD72 [$00:DD72] A:270F X:0000 Y:0000

C2/DD22 18 CLC A:0101 X:0000 Y:0000
C2/DD23 65 7A ADC $7A [$00:007A] A:0101 X:0000 Y:0000 ;add XP won to current XP
C2/DD25 85 72 STA $72 [$00:0072] A:0105 X:0000 Y:0000 ;store XP sum
C2/DD27 C9 0F 27 CMP #$270F A:0105 X:0000 Y:0000 ;check if overflow
C2/DD2A 30 05 BMI $05 [$DD31] A:0105 X:0000 Y:0000 ;branch if less than 9999

C2/DD31 BF 00 F8 7F LDA $7FF800,x[$7F:F800] A:0105 X:0000 Y:0000 ;load Level
C2/DD35 29 FF 00 AND #$00FF A:D11E X:0000 Y:0000
C2/DD38 3A DEC A A:001E X:0000 Y:0000
C2/DD39 0A ASL A A:001D X:0000 Y:0000
C2/DD3A A8 TAY A:003A X:0000 Y:0000
C2/DD3B B7 80 LDA [$80],y[$FA:1B39] A:003A X:0000 Y:003A ;load XP needed for level up
C2/DD3D C5 72 CMP $72 [$00:0072] A:3205 X:0000 Y:003A ;compare to XP sum
C2/DD3F F0 05 BEQ $05 [$DD46] A:3205 X:0000 Y:003A ;branch if
C2/DD41 30 03 BMI $03 [$DD46] A:3205 X:0000 Y:003A ;branch if needed XP less than sum
C2/DD43 4C 6C DD JMP $DD6C [$00:DD6C] A:3205 X:0000 Y:003A

that is the assembly qouted from Giangurgolo's docs
it contains the level up bytes that are documented and I was able to make the game have a xp cap of 32,500 instead of 9999. hope it helps.

Darkkefka
Posted on 03-15-14 03:52 PM (rev. 4 of 03-15-14 04:26 PM) Link | Quote | ID: 156101


Red Koopa
Level: 26

Posts: 99/123
EXP: 94112
Next: 8163

Since: 04-09-11

Last post: 3117 days
Last view: 3284 days
Posted by SMRPG HACKER
http://home.comcast.net/~giangurgolo/smrpg/ has Gian's previous stuff, his docs and his function demo which incorporates his muscle patch.
C2/DD03 AD 32 08    LDA $0832  [$00:0832]   A:0000 X:0000 Y:0000 ;load XP won
C2/DD06 85 7A STA $7A [$00:007A] A:0004 X:0000 Y:0000
C2/DD08 BF 0E F8 7F LDA $7FF80E,x[$7F:F80E] A:0004 X:0000 Y:0000 ;load accessory
C2/DD0C 29 FF 00 AND #$00FF A:00FF X:0000 Y:0000
C2/DD0F C9 50 00 CMP #$0050 A:00FF X:0000 Y:0000 ;check if Exp.Booster
C2/DD12 D0 02 BNE $02 [$DD16] A:00FF X:0000 Y:0000 ;branch if not

C2/DD14 06 7A ASL $7A [$00:007A] A:0000 X:0000 Y:0000 ;double XP

C2/DD16 BF 0A F8 7F LDA $7FF80A,x[$7F:F80A] A:00FF X:0000 Y:0000 ;load current XP
C2/DD1A C9 0F 27 CMP #$270F A:270F X:0000 Y:0000 ;check if maxed out
C2/DD1D 30 03 BMI $03 [$DD22] A:270F X:0000 Y:0000 ;branch if less than 9999
C2/DD1F 4C 72 DD JMP $DD72 [$00:DD72] A:270F X:0000 Y:0000

C2/DD22 18 CLC A:0101 X:0000 Y:0000
C2/DD23 65 7A ADC $7A [$00:007A] A:0101 X:0000 Y:0000 ;add XP won to current XP
C2/DD25 85 72 STA $72 [$00:0072] A:0105 X:0000 Y:0000 ;store XP sum
C2/DD27 C9 0F 27 CMP #$270F A:0105 X:0000 Y:0000 ;check if overflow
C2/DD2A 30 05 BMI $05 [$DD31] A:0105 X:0000 Y:0000 ;branch if less than 9999

C2/DD31 BF 00 F8 7F LDA $7FF800,x[$7F:F800] A:0105 X:0000 Y:0000 ;load Level
C2/DD35 29 FF 00 AND #$00FF A:D11E X:0000 Y:0000
C2/DD38 3A DEC A A:001E X:0000 Y:0000
C2/DD39 0A ASL A A:001D X:0000 Y:0000
C2/DD3A A8 TAY A:003A X:0000 Y:0000
C2/DD3B B7 80 LDA [$80],y[$FA:1B39] A:003A X:0000 Y:003A ;load XP needed for level up
C2/DD3D C5 72 CMP $72 [$00:0072] A:3205 X:0000 Y:003A ;compare to XP sum
C2/DD3F F0 05 BEQ $05 [$DD46] A:3205 X:0000 Y:003A ;branch if
C2/DD41 30 03 BMI $03 [$DD46] A:3205 X:0000 Y:003A ;branch if needed XP less than sum
C2/DD43 4C 6C DD JMP $DD6C [$00:DD6C] A:3205 X:0000 Y:003A

that is the assembly qouted from Giangurgolo's docs
it contains the level up bytes that are documented and I was able to make the game have a xp cap of 32,500 instead of 9999. hope it helps.


Interesting. I may have to hold off the final release of my game to learn this.

It's a little confusing. I know how to Hex edit now of course, but I'm a little lost here.

Example, this hold thing seem to be related to the EXP.

On the second group, where it says " Branch if les than 9999, if you change that value to 32,000, then the max EXP would be 32000?


You see...
C2/DD16 BF 0A F8 7F LDA $7FF80A,x[$7F:F80A] A:00FF X:0000 Y:0000 ;load current XP
C2/DD1A C9 0F 27 CMP #$270F A:270F X:0000 Y:0000 ;check if maxed out
C2/DD1D 30 03 BMI $03 [$DD22] A:270F X:0000 Y:0000 ;branch if less than 9999
C2/DD1F 4C 72 DD JMP $DD72 [$00: DD72] A:270F X:0000 Y:0000


So at the check if maxed out, it's seeing if they have 9999 HP, so I would need to change the 0f27 to the value I want? But what does the Branch is less do?? I know that of27 is 9999, but where does that C9 in front of it come in?

C2/DD1A C9 0F 27 ....what offset number is this? I can't find it on the hex editor.




What about the 5-Digit damage numbers and the 4-digit HP on your allies numbers? Is all this on the doc codes list as well??

As for coins, what's the offset for max coins? I raised it to 9999 my game, but when you see over 9999, it resets it to 999.

SMRPG HACKER
Posted on 03-15-14 09:12 PM (rev. 3 of 03-15-14 09:15 PM) Link | Quote | ID: 156103


Koopa
Level: 25

Posts: 97/107
EXP: 79262
Next: 10358

Since: 04-06-10
From: On mars

Last post: 3224 days
Last view: 3224 days
Gain's doc pack includes the hex codes he changed for the muscle demo
ill post them here

HEXADECIMAL TO DECIMAL CONVERSION FOR BATTLE HP NUMERALS

C2/FA00 A9 00 00 LDA #$0000
C2/FA03 85 D2 STA $D2 [$00:00D2]
C2/FA05 85 D4 STA $D4 [$00:00D4]
C2/FA07 85 D8 STA $D8 [$00:00D8]
C2/FA09 A9 01 00 LDA #$0001
C2/FA0C 8D 50 22 STA $2250 [$00:2250]
C2/FA0F A5 D0 LDA $D0 [$00:00D0]
C2/FA11 C9 10 27 CMP #$2710
C2/FA14 30 18 BMI $18 [$FA2E]
C2/FA16 8D 51 22 STA $2251 [$00:2251]
C2/FA19 A9 10 27 LDA #$2710
C2/FA1C 8D 53 22 STA $2253 [$00:2253]
C2/FA1F A9 05 00 LDA #$0005
C2/FA22 85 D8 STA $D8 [$00:00D8]
C2/FA24 AD 06 23 LDA $2306 [$00:2306]
C2/FA27 85 D3 STA $D3 [$00:00D3]
C2/FA29 AD 08 23 LDA $2308 [$00:2308]
C2/FA2C 85 D0 STA $D0 [$00:00D0]
C2/FA2E C9 E8 03 CMP #$03E8
C2/FA31 30 1C BMI $1C [$FA4F]
C2/FA33 8D 51 22 STA $2251 [$00:2251]
C2/FA36 A9 E8 03 LDA #$03E8
C2/FA39 8D 53 22 STA $2253 [$00:2253]
C2/FA3C A5 D8 LDA $D8 [$00:00D8]
C2/FA3E D0 05 BNE $05 [$FA45]
C2/FA40 A9 04 00 LDA #$0004
C2/FA43 85 D8 STA $D8 [$00:00D8]
C2/FA45 AD 06 23 LDA $2306 [$00:2306]
C2/FA48 85 D3 STA $D3 [$00:00D3]
C2/FA4A AD 08 23 LDA $2308 [$00:2308]
C2/FA4D 85 D0 STA $D0 [$00:00D0]
C2/FA4F C9 64 00 CMP #$0064
C2/FA52 30 1C BMI $1C [$FA70]
C2/FA54 8D 51 22 STA $2251 [$00:2251]
C2/FA57 A9 64 00 LDA #$0064
C2/FA5A 8D 53 22 STA $2253 [$00:2253]
C2/FA5D A5 D8 LDA $D8 [$00:00D8]
C2/FA5F D0 05 BNE $05 [$FA66]
C2/FA66 AD 06 23 LDA $2306 [$00:2306]
C2/FA69 85 D4 STA $D4 [$00:00D4]
C2/FA6B AD 08 23 LDA $2308 [$00:2308]
C2/FA6E 85 D0 STA $D0 [$00:00D0]
C2/FA70 C9 0A 00 CMP #$000A
C2/FA73 30 1C BMI $1C [$FA91]
C2/FA75 8D 51 22 STA $2251 [$00:2251]
C2/FA78 A9 0A 00 LDA #$000A
C2/FA7B 8D 53 22 STA $2253 [$00:2253]
C2/FA7E A5 D8 LDA $D8 [$00:00D8]
C2/FA80 D0 05 BNE $05 [$FA87]
C2/FA87 AD 06 23 LDA $2306 [$00:2306]
C2/FA8A 85 D5 STA $D5 [$00:00D5]
C2/FA8C AD 08 23 LDA $2308 [$00:2308]
C2/FA8F 85 D0 STA $D0 [$00:00D0]
C2/FA91 85 D6 STA $D6 [$00:00D6]
C2/FA93 A5 D8 LDA $D8 [$00:00D8]
C2/FA95 D0 05 BNE $05 [$FA9C]
C2/FA9C A9 05 00 LDA #$0005
C2/FA9F 38 SEC
C2/FAA0 E5 D8 SBC $D8 [$00:00D8]
C2/FAA2 F0 0B BEQ $0B [$FAAF]
C2/FAA4 3A DEC A
C2/FAA5 9B TXY
C2/FAA6 AA TAX
C2/FAA7 B5 D2 LDA $D2,x [$00:00D2]
C2/FAA9 09 FF 00 ORA #$00FF
C2/FAAC 95 D2 STA $D2,x [$00:00D2]
C2/FAAE BB TYX
C2/FAAF A9 01 00 LDA #$0001
C2/FAB2 8D 60 30 STA $3060 [$00:3060]
C2/FAB5 60 RTS

CALL DECIMALS FROM SA-1 MIRROR

C2/FAD0 AD D2 30 LDA $30D2 [$00:30D2]
C2/FAD3 95 00 STA $00,x [$00:00D2]
C2/FAD5 AD D4 30 LDA $30D4 [$00:30D4]
C2/FAD8 95 02 STA $02,x [$00:00D4]
C2/FADA AD D6 30 LDA $30D6 [$00:30D6]
C2/FADD 95 04 STA $04,x [$00:00D6]
C2/FADF AD D8 30 LDA $30D8 [$00:30D8]
C2/FAE2 95 06 STA $06,x [$00:00D8]
C2/FAE4 60 RTS

SET TILE INDEXES FROM DECIMALS

C2/FB00 A5 66 LDA $66 [$00:0066]
C2/FB02 9F 0C 00 40 STA $40000C,x[$40:320C]
C2/FB06 AA TAX
C2/FB07 A5 D2 LDA $D2 [$00:00D2]
C2/FB09 9F 46 00 40 STA $400046,x[$40:2446]
C2/FB0D A5 D4 LDA $D4 [$00:00D4]
C2/FB0F 9F 48 00 40 STA $400048,x[$40:2448]
C2/FB13 A5 D6 LDA $D6 [$00:00D6]
C2/FB15 9F 4A 00 40 STA $40004A,x[$40:244A]
C2/FB19 A5 D8 LDA $D8 [$00:00D8]
C2/FB1B 9F 4C 00 40 STA $40004C,x[$40:244C]
C2/FB1F BF 4F 00 40 LDA $40004F,x[$40:244F]
C2/FB23 29 FE FF AND #$FFFE
C2/FB26 9F 4F 00 40 STA $40004F,x[$40:244F]
C2/FB2A E6 60 INC $60 [$00:0060]
C2/FB2C 4C 4F 0C JMP $0C4F [$00:0C4F]

DAMAGE x17

C2/FE10 C2 20 REP #$20
C2/FE12 A5 C2 LDA $C2 [$00:00C2]
C2/FE14 F0 0C BEQ $0C [$FE22]
C2/FE16 38 SEC
C2/FE17 E5 C4 SBC $C4 [$00:00C4]
C2/FE19 F0 02 BEQ $02 [$FE1D]
C2/FE1B 10 03 BPL $03 [$FE20]
C2/FE1D A9 01 00 LDA #$0001
C2/FE20 85 C2 STA $C2 [$00:00C2]
C2/FE22 0A ASL A
C2/FE23 0A ASL A
C2/FE24 0A ASL A
C2/FE25 0A ASL A
C2/FE26 65 C2 ADC $C2 [$00:00C2]
C2/FE28 85 C2 STA $C2 [$00:00C2]
C2/FE2A E2 20 SEP #$20
C2/FE2C 4C 93 C2 JMP $C293 [$00:C293]

CLEAR 5th 'MISS' TILE

C2/FE50 A9 43 00 LDA #$0043
C2/FE53 85 D6 STA $D6 [$00:00D6]
C2/FE55 A9 10 00 LDA #$0010
C2/FE58 4C A2 30 JMP $30A2 [$00:30A2]

SET GREEN HEALING/BLUE PSYCHOPATH BIT FOR 5th TILE

C2/FE70 A9 10 10 LDA #$1010
C2/FE73 04 D2 TSB $D2 [$00:00D2]
C2/FE75 04 D4 TSB $D4 [$00:00D4]
C2/FE77 04 D6 TSB $D6 [$00:00D6]
C2/FE79 4C 6F 30 JMP $306F [$00:306F]

STORE 9999 to HP

C2/FE90 C2 20 REP #$20
C2/FE92 A9 0F 27 LDA #$270F
C2/FE95 8F 01 F8 7F STA $7FF801[$7F:F801]
C2/FE99 8F 03 F8 7F STA $7FF803[$7F:F803]
C2/FE9D 8F 15 F8 7F STA $7FF815[$7F:F815]
C2/FEA1 8F 17 F8 7F STA $7FF817[$7F:F817]
C2/FEA5 8F 29 F8 7F STA $7FF829[$7F:F829]
C2/FEA9 8F 2B F8 7F STA $7FF82B[$7F:F82B]
C2/FEAD 8F 3D F8 7F STA $7FF83D[$7F:F83D]
C2/FEB1 8F 3F F8 7F STA $7FF83F[$7F:F83F]
C2/FEB5 8F 51 F8 7F STA $7FF851[$7F:F851]
C2/FEB9 8F 53 F8 7F STA $7FF853[$7F:F853]
C2/FEBD 6B RTL

---------------------------------------------------------------------

HEXADECIMAL TO DECIMAL CONVERSION FOR OVERWORLD MENU HP NUMERALS

C3/E300 A9 64 LDA #$64
C3/E302 20 50 E3 JSR $E350 [$C3:E350]
C3/E305 8A TXA
C3/E306 5A PHY
C3/E307 A4 62 LDY $62 [$00:0062]
C3/E309 20 6A 79 JSR $796A [$C3:796A]
C3/E30C FA PLX
C3/E30D A9 64 LDA #$64
C3/E30F 20 F7 04 JSR $04F7 [$C3:04F7]
C3/E312 8A TXA
C3/E313 5A PHY
C3/E314 A4 62 LDY $62 [$00:0062]
C3/E316 20 6A 79 JSR $796A [$C3:796A]
C3/E319 FA PLX
C3/E31A A9 0A LDA #$0A
C3/E31C 20 F7 04 JSR $04F7 [$C3:04F7]
C3/E31F 8A TXA
C3/E320 5A PHY
C3/E321 A4 62 LDY $62 [$00:0062]
C3/E323 20 6A 79 JSR $796A [$C3:796A]
C3/E326 7B TDC
C3/E327 FA PLX
C3/E328 8A TXA
C3/E329 E6 7A INC $7A [$00:007A]
C3/E32B 20 6A 79 JSR $796A [$C3:796A]
C3/E32E 28 PLP
C3/E32F 60 RTS

C3/E350 08 PHP
C3/E351 C2 20 REP #$20
C3/E353 48 PHA
C3/E354 8A TXA
C3/E355 8F 04 42 00 STA $004204[$00:4204]
C3/E359 68 PLA
C3/E35A E2 20 SEP #$20
C3/E35C 8F 06 42 00 STA $004206[$00:4206]
C3/E360 EA NOP
C3/E361 EA NOP
C3/E362 EA NOP
C3/E363 EA NOP
C3/E364 EA NOP
C3/E365 EA NOP
C3/E366 EA NOP
C3/E367 C2 20 REP #$20
C3/E369 AF 14 42 00 LDA $004214[$00:4214]
C3/E36D 8F 04 42 00 STA $004204[$00:4204]
C3/E371 A9 0A 00 LDA #$000A
C3/E374 8F 06 42 00 STA $004206[$00:4206]
C3/E378 EA NOP
C3/E379 EA NOP
C3/E37A EA NOP
C3/E37B EA NOP
C3/E37C EA NOP
C3/E37D EA NOP
C3/E37E EA NOP
C3/E37F AF 14 42 00 LDA $004214[$00:4214]
C3/E383 AA TAX
C3/E384 20 90 E3 JSR $E390 [$C3:E390]
C3/E387 A8 TAY
C3/E388 28 PLP
C3/E389 60 RTS

C3/E390 A5 70 LDA $70 [$00:0070]
C3/E392 C9 E8 03 CMP #$03E8
C3/E395 30 2F BMI $2F [$E3C6]
C3/E3C6 60 RTS

that's the HP AND Damage code from function demo.
yes, I set max Exp. to 32,500 although it does do the same thing my coin patch does and can't display the new number place so it displays crap for the last spot.
and it can't go higher than 65535 divided by 2, due to overflow.

2DD27-C9 0F 27 is one
2DD1A-C9 0F 27 is the other critical offset for the Code

there is one near there that says A9 0F 27 or set to 9999 which prevents the game from getting more than 9999 change that too otherwise you would hit your new cap of Exp. and it would set your Exp. to 9999, which might be interesting.

C9 is Compare to 9999 than if less than, if so it jumps to a offset
in the Exp. Case, jumps over A9 which is like.
Var = 100

in a modern language.
that code makes sure you never get over 9999 xp those three codes in tandem makes the limit, and in my experience it makes up most of the caps in the game.

http://home.comcast.net/~giangurgolo/smrpg/smrpg_docs.zip is where the zip of Gain's docs are(where im getting this code from), this is the wrong thread for this discussion so next time post in the HOW DO I thread

SuperMarioRPGHacker
Posted on 04-18-14 06:57 PM Link | Quote | ID: 156396


Octorok
Level: 11

Posts: 9/21
EXP: 5818
Next: 167

Since: 04-18-14

Last post: 3653 days
Last view: 3652 days

can make a option where you can make your dialogue without go to the event scripts? and when are without event scripts to display say a dialogue saying why are without event scripts enough?

____________________
FINAL FANTASY MARIO BLOG: http://finalfantasymario.blogspot.com.br
Some SMRPG Hacking questions? Ask me here: http://finalfantasymario.blogspot.com.br/2014/04/smrpg-hacking-questions.html
Pages: 1 2 3 4 5 6 7 8


Main - Super Mario RPG Hacking - Lazy Shell Improvement Thread New thread | New reply

Acmlmboard 2.1+4δ (2023-01-15)
© 2005-2023 Acmlm, blackhole89, Xkeeper et al.

Page rendered in 0.031 seconds. (350KB of memory used)
MySQL - queries: 112, rows: 151/152, time: 0.020 seconds.