logo
 drop

Main

Community

Submissions

Help

71442311 visitors

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Lenophis

Pages: [1] 2 3 4 5 6 ... 14
1
Gaming Discussion / Re: Ouya emulation quality?
« on: April 20, 2014, 11:53:50 am »
-PSX
-N64
These two systems aren't even emulated that well on desktops yet (and at this point in time, there's no reason to expect they ever will be, sadly), and they've had the most time put into them. I seriously doubt you'll find a halfways-decent emulator for these two consoles on any other platform.

2
Personal Projects / Re: Standard map Pointers
« on: April 18, 2014, 11:06:14 am »
Having OCD about something as unimportant as this seems rather silly, especially if you're doing it all manually.

If something isn't working, you probably didn't do it correctly. Double check your math, double check that you're tweaking the correct pointers, double check everything.

3
General Discussion / Re: Gaming while married
« on: April 09, 2014, 03:08:32 pm »
As time has passed, I find myself playing games far less often than I used to. If she wanted to spend time with me, I wouldn't have any problem turning it off. She's ok with me playing, but if she said to get rid of them, I wouldn't do it.

I am not married, but that is pretty much the situation.

4
Personal Projects / Re: Paper Mario 64 - General Hacking Tool
« on: April 06, 2014, 12:26:19 am »
Without being a total creeper, the only thing I can say is I love you. :o Love Paper Mario.

5
At one point some years ago, we used assassin's expanded icons patch, and moved the icons to bank C0 like you see with this code. However, about a year ago we moved the icons back to bank C3 since we dumped the whole bank ourselves. The icons still have the C0 labels, but the data is C3. Once C3 became organized, it made sense to keep C3 stuff in C3.

As for F6, that is the new location of the item data and names for a hack we were working on. You can change that label back to D85000 or wherever the item data originally is.

6
Front Page News / Re: Utilities: FF7Tools 1.0 Released
« on: April 01, 2014, 11:10:46 am »
Nah, I don't think kids nowadays have the patience to type everything out for an editor. It'll probably just be about 953 low quality FF7 hacks per month. :laugh:

7
One particular piece of code in bank C3 could get an incredible speed boost, if you haven't implemented it yet:
Code: [Select]
Move inventory to backup ram for now
C3/26B8: 7B      TDC (Put 0 in A)
C3/26B9: AA      TAX (Transfer A = 0 to X)
C3/26BA: BD6918  LDA $1869,X (Load inventory item at position X)
C3/26BD: 9F8DAA7E STA $7EAA8D,X (Store in RAM location)
C3/26C1: A9FF    LDA #$FF (Load an "empty" value)
C3/26C3: 9D6918  STA $1869,X (Put it in inventory location X)
C3/26C6: E8      INX (Increment X)
C3/26C7: E00001  CPX #$0100 (Is X over 256?)
C3/26CA: D0EE    BNE $26BA (If not, branch -> Load inventory item X)
C3/26CC: 7B      TDC (Otherwise, put a 0 in A)
C3/26CD: AA      TAX (Transfer A = 0 to X)
C3/26CE: BD6919  LDA $1969,X (Get quantity of item X)
C3/26D1: 9F8DAB7E STA $7EAB8D,X (Store the quantity in a RAM location)
C3/26D5: 7B      TDC (Put 0 in A)
C3/26D6: 9D6919  STA $1969,X (Put it in for quantity of item X)
C3/26D9: E8      INX (Increment X)
C3/26DA: E00001  CPX #$0100 (Is X 256 yet?)
C3/26DD: D0EF    BNE $26CE (If not, branch -> Get quantity of item X)
C3/26DF: 60      RTS (Exit)

C3/26E0: 7B      TDC
C3/26E1: A8      TAY
C3/26E2: AA      TAX
C3/26E3: BFF526C3 LDA $C326F5,X   (get current icon)
C3/26E7: DA      PHX            (save position in icon list)
C3/26E8: 85E0    STA $E0         (save current icon)
C3/26EA: 200627  JSR $2706       (output any items whose icon matches the one
                                                  in $E0 to our new item list.)
C3/26ED: FA      PLX            (restore position in icon list)
C3/26EE: E8      INX            (move to next icon)
C3/26EF: E01100  CPX #$0011      (loop for all 17 icons or item types)
C3/26F2: D0EF    BNE $26E3
C3/26F4: 60      RTS

I changed it to this:
Code: [Select]
; move entire inventory to backup ram for now
C326B8: TDC
C326B9: TAX
C326BA: LDA $1869,X  ; load this item
C326BD: STA $7EAA8D,X  ; move it
C326C1: LDA #$FF  ; no item
C326C3: STA $1869,X  ; save in this inventory slot
LDA $1969,X  ; load this quantity
STA $7EAB8D,X  ; move it
STZ $1969,X  ; zero current quantity
C326C6: INX
C326C7: CPX #$0100
C326CA: BNE C326BA

C326E0: TDC
C326E1: TAY
C326E2: TYX
C326E3: LDA C0DEA0,X  ; new location of the icons
C326E7: PHX
C326E8: STA $E0  ; save this icon for now
C326EA: ; JSR C32706
C32706: TDC
C32707: TAX
C32708: PHX
C32709: LDA $7EAA8D,X  ; get item in backup inventory
C3270D: CMP #$FF  ; no item?
C3270F: BEQ C32739  ; branch if so
C32711: STA $4202  ; save item ID
C32714: LDA #$10  ;  multiply by 16
C32716: STA $4203
C32719: NOP
C3271A: NOP
C3271B: NOP
C3271C:
C3271F: LDA $F63200,X
C32723: CMP $E0  ; do these icons match?
C32725: BNE C32739  ; branch if not
C32727: PLX
C32728: LDA $7EAA8D,X
C3272C: STA $1869,Y  ; save in this inventory slot
C3272F: LDA $7EAB8D,X
C32733: STA $1969,Y  ; save quantity
C32736: INY
C32737: BRA C3273A
C32739: PLX
C3273A: INX
C3273B: CPX #$0100  ; have we checked the entire inventory yet?
C3273E: BNE C32708  ; branch if not
C326ED: PLX
C326EE: INX
C326EF: CPX #$0023  ; have we checked all icons yet?
C326F2: BNE C326E3  ; branch if not
C326F4: RTS

With the first routine running into the second, you just need to remove the JSR to the second, which is originally at C3/2682.

This code is executed every time you use "Arrange" in the item menu. Optimizing just the loops speed it up by about 60%. :thumbsup:

8
Edit: You'll need to modify the first parameter byte of the 4D command, which is: formation number - 256 (meaning your boss formation must be between #256 and #512 if my memory is good...). What I find odd is that here the formation is $8B while the actual formation is 523... It doesn't match 523 - 256...
It loads the 2-pack formation, which for FF3usME is 512-256. $8B is 2-pack 139, which is number 395 in the "Packs" tab of the formations editor.

9
You know, when I was posting this, I was completely neglecting which free bit corresponds with which check box in the editor. I'm glad you figured that out quickly. :-[

$11D7:1 looks at the "?" check box with "Raise steal rate" and "Raise sketch rate" et al.
$11D8:7 looks at the "?" check box with "Randomly retort" and "Randomly evade" et al.
$11D9:5 and 6 looks at the "?" check boxes with "Shell on low HP" and "Safe on low HP" et al.

I'll just hide now. :laugh:

10
Luck is irrelevant, you are Disch. You will succeed.

11
Hooray, I'm helping! </Zoidberg!>

I would highly recommend you do not make this hard-coded to a specific item. There's enough hard-coded crap already in this game, and it would pretty bad to add to it. My personal recommendation is to claim an unused bit in one of the item property bytes (check boxes with "?" in FF3usME) and use that instead. Here's some handy code for you to help:

Code: [Select]
(Weapon "addition magic")

C2/363E: A5 B5        LDA $B5
C2/3640: C9 16        CMP #$16   (is Command Jump?)
C2/3642: D0 05        BNE $3649  (if not, branch)
C2/3644: AD 70 3A     LDA $3A70  (are there more attacks to do from Offering /
                                  Quadra Slam / Dragon Horn / etc?)
C2/3647: D0 1C        BNE $3665  (if so, exit function)
C2/3649: AD 89 3A     LDA $3A89
C2/364C: 89 40        BIT #$40   (is "cast randomly with fight" bit set in the
                                  weapon spellcast byte?)
C2/364E: F0 15        BEQ $3665  (if not, Exit function)
C2/3650: EB           XBA
C2/3651: 20 xx xx     JSR $xxxx  (JSR to new routine elsewhere with free space in C2)
C2/3654: EA           NOP
C2/3655: EA           NOP
C2/3656: B0 0D        BCS $3665  (branch if spell proc is unsuccessful, either due to no buff or no good RNG roll)
C2/3658: EB           XBA
C2/3659: 29 3F        AND #$3F   (isolate spell # of weapon in bottom 6 bits)
C2/365B: 8D 00 34     STA $3400  (save it)
C2/365E: A9 10        LDA #$10
C2/3660: 14 B2        TRB $B2    (prevent followup spell from hitting random target;
                                  it can only hit the one whacked by the weapon.)
C2/3662: EE 70 3A     INC $3A70  (increment # of attacks remaining.  since the calling
                                  code will soon decrement this, the addition magic
                                  should be cast with the same # of attacks remaining
                                  as the weapon strike preceding it was)
C2/3665: 60           RTS

Some new location in bank C2!

First you should determine which free bit you wish to use. There's technically 4 free bits, but one of them, $11D7:1 is used as scratch for the Earrings. You could use this if you wanted, but you would also get a damage boost for magical attacks. Otherwise you can use $11D8:7, $11D9:5, or $11D9:6.
You could also use the party-wide bit the Sprint Shoes currently use, but then the effect would apply to everyone in the party.

Code: [Select]
If you use $11D8:7...
CLC  (this is our indicator that it is equipped, but if it's not equipped then carry will be changed with the RNG call)
LDA $11D8
BMI equipped (the highest bit holds our effect, and this branch will take if it's equipped)
JSR $4B5A  (our RNG, rolls 0-255)
CMP #$40
equipped:
RTS

If you use $11D9:5 or 6
CLC
LDA $11D9
BIT #$20 or BIT #$40 (depending on above)
BNE equipped
JSR $4B5A  (our RNG, rolls 0-255)
CMP #$40
equipped:
RTS

I didn't test it, but this should work unless I got my branch logic mixed up.

12
Gaming Discussion / Re: Good games with reluctant heroes
« on: March 12, 2014, 10:02:57 am »
Jack from Radiata Stories.

X and Zero from the Megaman X series (X even moreso in X7 because they made him a total pacifist). Neither fights because they want to, and Zero wonders what he is fighting for in X4.

Garnet/Dagger/Sarah in FF9.

13
ROM Hacking Discussion / Re: Help with Lunar IPS
« on: February 28, 2014, 10:34:12 pm »
This sounds like a header issue. Either the patch requires a header, and your rom doesn't have one, or the patch requires no header, and your rom does have one. You'll need to determine which is true, then try again with.a clean rom.

14
ROM Hacking Discussion / Re: Expanding Fixed Length Text?
« on: February 27, 2014, 02:41:18 am »
Oh, if I had a nickel for every time I've had to grab these routines...
Code: [Select]
Display spell name

C1/6019: EB      XBA (from only C1/5FBF)
C1/601A: A907    LDA #$07 (7 = spell name length)
C1/601C: 8510    STA $10
C1/601E: 8D6D61  STA $616D
C1/6021: 20CA18  JSR $18CA (half multiplier)
C1/6024: C220    REP #$20
C1/6026: AF164200 LDA $004216
C1/602A: AA      TAX
C1/602B: 7B      TDC
C1/602C: E220    SEP #$20
C1/602E: CE6D61  DEC $616D
C1/6031: BF68F5E6 LDA $E6F568,X (Load Spell name X)
C1/6035: C9FF    CMP #$FF
C1/6037: F009    BEQ $6042
C1/6039: 201161  JSR $6111
C1/603C: E8      INX
C1/603D: CE6D61  DEC $616D
C1/6040: D0EF    BNE $6031
C1/6042: 60      RTS
 
C1/6043: 20EC66  JSR $66EC (from C1/5E51, X = E)
C1/6046: A748    LDA [$48]
C1/6048: C9FF    CMP #$FF
C1/604A: D005    BNE $6051
C1/604C: A90D    LDA #$0D
C1/604E: 4CA85F  JMP $5FA8
Code: [Select]
C1/65E8: A907    LDA #$07 (from C1/65AA)(7 = spell name length)
C1/65EA: 852E    STA $2E
C1/65EC: 8540    STA $40
C1/65EE: 20B018  JSR $18B0
C1/65F1: A630    LDX $30
C1/65F3: BF67F5E6 LDA $E6F567,X (Load Spell name X)
C1/65F7: 20FE63  JSR $63FE
C1/65FA: E8      INX
C1/65FB: C640    DEC $40
C1/65FD: D0F4    BNE $65F3
C1/65FF: 60      RTS
Code: [Select]
C1/6B1C: EB      XBA (from C1/6AD2)
C1/6B1D: A907    LDA #$07
C1/6B1F: 8510    STA $10
C1/6B21: 20CA18  JSR $18CA (half multiplier)
C1/6B24: C220    REP #$20
C1/6B26: AF164200 LDA $004216 (load product)
C1/6B2A: AA      TAX
C1/6B2B: 7B      TDC
C1/6B2C: E220    SEP #$20
C1/6B2E: BF67F5E6 LDA $E6F567,X (Load spell name X)
C1/6B32: 20F366  JSR $66F3
C1/6B35: E8      INX
C1/6B36: C610    DEC $10
C1/6B38: D0F4    BNE $6B2E
C1/6B3A: 60      RTS

That's just for battle. This next one is for the menu.
Code: [Select]
C3/4FB5: A00700  LDY #$0007    (spell letter length)
C3/4FB8: 84EB    STY $EB
C3/4FBA: A067F5  LDY #$F567    (spell name address)
C3/4FBD: 84EF    STY $EF
C3/4FBF: A9E6    LDA #$E6      (spell name bank)
C3/4FC1: 85F1    STA $F1
C3/4FC3: 60      RTS
 
Draw a column of spells
C3/4FC4: A5E6    LDA $E6
C3/4FC6: 1A      INC A
C3/4FC7: 209F80  JSR $809F
C3/4FCA: C220    REP #$20      (16 bit memory/accum.)
C3/4FCC: 8A      TXA
C3/4FCD: 8F899E7E STA $7E9E89
C3/4FD1: E220    SEP #$20      (8 bit memory/accum.)
C3/4FD3: A59E    LDA $9E
C3/4FD5: F067    BEQ $503E
C3/4FD7: 20EC50  JSR $50EC      (get the current spell to check)
C3/4FDA: 204D51  JSR $514D      (determine if spells are useable?)
C3/4FDD: 20EC50  JSR $50EC      (get the current spell to check)
C3/4FE0: C9FF    CMP #$FF
C3/4FE2: F036    BEQ $501A      (branch if no spell to draw)
C3/4FE4: 20A250  JSR $50A2      (get spells learned amount)
C3/4FE7: C9FF    CMP #$FF
C3/4FE9: D02F    BNE $501A      (branch if spell is already learned?)
C3/4FEB: 20EC50  JSR $50EC      (get the current spell to check)
C3/4FEE: 206784  JSR $8467      (draw the current spell name)
C3/4FF1: A2929E  LDX #$9E92     (position of MP cost)
C3/4FF4: 8E8121  STX $2181
C3/4FF7: A9FF    LDA #$FF
C3/4FF9: 8D8021  STA $2180      (insert a space)
C3/4FFC: 20EC50  JSR $50EC      (get the current spell to check)
C3/4FFF: 200D51  JSR $510D      (get spell's MP cost)
C3/5002: 20E004  JSR $04E0      (turn MP cost into digits)
C3/5005: A5F8    LDA $F8
C3/5007: 8D8021  STA $2180      (draw tens digit of MP cost)
C3/500A: A5F9    LDA $F9
C3/500C: 8D8021  STA $2180      (draw ones digit of MP cost)
C3/500F: A9FF    LDA #$FF
C3/5011: 8D8021  STA $2180      (insert a space)
C3/5014: 9C8021  STZ $2180      (end this string)
C3/5017: 4CD97F  JMP $7FD9      (draw MP cost)

Blank out the current spell (MP cost and spell learn rate too)
C3/501A: 7B      TDC
C3/501B: A5E5    LDA $E5
C3/501D: AA      TAX
C3/501E: A9FF    LDA #$FF
C3/5020: 9F899D7E STA $7E9D89,X
C3/5024: 20B951  JSR $51B9      (set's the text color to gray among other things)
C3/5027: A00B00  LDY #$000B
C3/502A: A28B9E  LDX #$9E8B     (position of where it is to be blanked)
C3/502D: 8E8121  STX $2181
C3/5030: A9FF    LDA #$FF
C3/5032: 8D8021  STA $2180      (insert a space)
C3/5035: 88      DEY
C3/5036: D0FA    BNE $5032      (do 11 times?)
C3/5038: 9C8021  STZ $2180      (end this string)
C3/503B: 4CD97F  JMP $7FD9      (display the blanked name)

15
Script Help and Language Discussion / Re: Help Replacing Dejare Phrases
« on: February 19, 2014, 06:38:30 pm »
Walleye have no idea.

16
Site Talk / Re: Anti-Piracy Circumvention Measures
« on: February 17, 2014, 10:23:30 am »
A checksum cannot be a means to say "this is a good rom," since many roms, NES, SNES, GB, GBA, etc have stuff added or tweaked to them before being thrown "out there." I'm looking at you, trainers, DiskDude!, and annoying monkey!

So while a checksum can be a good reference, it is by no means the end-all.

17
Newcomer's Board / Re: Problem With Super Mario World IPS Patching
« on: February 17, 2014, 10:20:57 am »
I'm using Lunar IPS, and it tells me the file was patched successfully
It will always tell you it patched successfully unless it cannot open the rom. IPS has no standard to check against, so there will never be a "failure" in that regards. Pretty much every SMW rom needs a header present for a patch to be successful, because Lunar Magic requires one to be present for hacking to work.

18
Newcomer's Board / Re: SNES emulator for MAC?
« on: February 15, 2014, 10:05:19 am »
I assume this is a modern Intel mac running osx rather than dual boot or something.
"Assumption is the mother of all..." Well, you get the idea. ;)

I wanted to know what is the best SNES emulator to use for a MAC.
Since not all MACs are created equal, more info could be used. What version of OSX, CPU speed, chipset if you know, etc.

19
ROM Hacking Discussion / Re: Final Fantasy VI - Uncensored Graphics Patch
« on: February 15, 2014, 09:59:24 am »
You know, you could take about 3 minutes to open up yy-CHR, Tile Molestor, Tile Layer Pro, or whatever tile editing program you choose to use, use the one sign that is fixed, and copy it to the other signs. Or hey, you could use the Japanese rom, copy the tiles from that directly to each sign in the US rom. Either would work. I certainly hope you aren't expecting one of us to do it for you, since all you've done so far with your arrival is demand stuff to your level of perfection.

20
Site Talk / Re: My News Articles not listed on my Profile
« on: February 12, 2014, 08:35:09 pm »
These accursed language barriers shall be the DOOM OF US ALL. :'(

Pages: [1] 2 3 4 5 6 ... 14