Welcome, Guest
You have to register before you can post on our site.

Username
  

Password
  





Search Forums

(Advanced Search)

Forum Statistics
» Members: 648
» Latest member: TASsy_js
» Forum threads: 1,817
» Forum posts: 14,013

Full Statistics

Online Users
There are currently 106 online users.
» 1 Member(s) | 103 Guest(s)
Bing, Google, _Ro

Latest Threads
Make it to 10,000
Forum: General Discussion
Last Post: Vega
2 hours ago
» Replies: 7,347
» Views: 5,678,783
Request for memory addres...
Forum: Code Support / Help / Requests
Last Post: TASsy_js
Today, 03:24 AM
» Replies: 0
» Views: 6
Textures/texture packs in...
Forum: Coding & Hacking General Discussion
Last Post: Vega
Yesterday, 09:37 PM
» Replies: 1
» Views: 36
MKW Coder/Developer of th...
Forum: Coding & Hacking General Discussion
Last Post: Fifty
Yesterday, 05:06 AM
» Replies: 11
» Views: 13,928
Allow Pausing Before Race...
Forum: Offline Non-Item
Last Post: Vega
01-11-2025, 07:47 PM
» Replies: 0
» Views: 45
Top 10 Most Influential C...
Forum: Coding & Hacking General Discussion
Last Post: Vega
01-11-2025, 03:27 PM
» Replies: 2
» Views: 7,368
Show Ice Cube on Online P...
Forum: Online Non-Item
Last Post: _Ro
01-11-2025, 08:23 AM
» Replies: 0
» Views: 53
CPU Control Cycler [Ro]
Forum: Offline Non-Item
Last Post: _Ro
01-11-2025, 07:56 AM
» Replies: 7
» Views: 1,041
Thunder Cloud Effect Modi...
Forum: Offline; Item
Last Post: JerryHatrick
01-10-2025, 11:13 PM
» Replies: 11
» Views: 1,152
Miniturbos and Inside Dri...
Forum: Coding & Hacking General Discussion
Last Post: JerryHatrick
01-10-2025, 09:54 AM
» Replies: 1
» Views: 866

 
  Minimap Size Modifier [Diamond]
Posted by: Diamond - 08-14-2020, 05:59 PM - Forum: Visual & Sound Effects - No Replies

Minimap Size Modifier [Diamond]

Resizes minimap based on floating point multiplier specified. Note that this is only limited to the position of the view region, so multiplying the minimap size by large values will cause parts of the minimap to not show.

NTSC-U
C2073428 00000016
3D608140 898B0008
2C0C00D0 4182009C
80880000 3D804D44
618C4C30 7C0C2000
40A20088 8088FF80
3D806272 618C6573
7C0C2000 40A20074
7D004378 3B600000
39800000 3B7B0004
7C080378 7D08DA14
80680000 2C0300D0
4082FFEC 398C0001
2C0C0001 41A2FFE0
C1A80038 3C80XXXX
6084YYYY 90880000
C1880000 ED6D6024
D1680038 C1A80040
ED6D6024 D1680040
388000D0 90880000
988B0008 2C0C0003
4082FFA4 7C080378
80080070 00000000


PAL
C20734C8 00000016
3D608140 898B0008
2C0C00D0 4182009C
80880000 3D804D44
618C4C30 7C0C2000
40A20088 8088FF80
3D806272 618C6573
7C0C2000 40A20074
7D004378 3B600000
39800000 3B7B0004
7C080378 7D08DA14
80680000 2C0300D0
4082FFEC 398C0001
2C0C0001 41A2FFE0
C1A80038 3C80XXXX
6084YYYY 90880000
C1880000 ED6D6024
D1680038 C1A80040
ED6D6024 D1680040
388000D0 90880000
988B0008 2C0C0003
4082FFA4 7C080378
80080070 00000000


NTSC-J
C20733E8 00000016
3D608140 898B0008
2C0C00D0 4182009C
80880000 3D804D44
618C4C30 7C0C2000
40A20088 8088FF80
3D806272 618C6573
7C0C2000 40A20074
7D004378 3B600000
39800000 3B7B0004
7C080378 7D08DA14
80680000 2C0300D0
4082FFEC 398C0001
2C0C0001 41A2FFE0
C1A80038 3C80XXXX
6084YYYY 90880000
C1880000 ED6D6024
D1680038 C1A80040
ED6D6024 D1680040
388000D0 90880000
988B0008 2C0C0003
4082FFA4 7C080378
80080070 00000000


NTSC-K
C2073528 00000016
3D608140 898B0008
2C0C00D0 4182009C
80880000 3D804D44
618C4C30 7C0C2000
40A20088 8088FF80
3D806272 618C6573
7C0C2000 40A20074
7D004378 3B600000
39800000 3B7B0004
7C080378 7D08DA14
80680000 2C0300D0
4082FFEC 398C0001
2C0C0001 41A2FFE0
C1A80038 3C80XXXX
6084YYYY 90880000
C1880000 ED6D6024
D1680038 C1A80040
ED6D6024 D1680040
388000D0 90880000
988B0008 2C0C0003
4082FFA4 7C080378
80080070 00000000


XXXX = Upper half of 32 bit floating point size multiplier
YYYY = Lower half of 32 bit floating point size multiplier

Code creator: Diamond

Print this item

  Coin magnet code
Posted by: Espion17 - 08-12-2020, 06:49 PM - Forum: Code Support / Help / Requests - Replies (4)

Does anyone know where I can find this code? It’s the one where at the start of of the battle, instead of the coins being spread out; the user has all the coins.

Print this item

  Code Request - Registering your other licenses as friends
Posted by: mapnov - 08-11-2020, 02:52 AM - Forum: Code Support / Help / Requests - Replies (4)

Greetings!

Normally, when you try to add a FC that is from one of your licenses, the game won't allow you to do so, resulting in a message saying ''This is (name)'s friend code. It can't be registered.'' You would need to erase the license that contains that FC first to be able to add it.

I'm looking for a code that makes you able to do this, so you could add all of your FCs to your friend rooster. This would be very useful for me as I use a Wii and two instances of Dolphin with the same save file, and so my brother and me won't need to erase our licenses from the Wii or dolphin to be able to add eachother as friends (Thus, keeping all the licenses intact on both Wii and Dolphin).

Print this item

  Hidden Missions in Ultimate Battle; Dragon Ball Z Budokai Tenkaichi 3
Posted by: Vega - 08-10-2020, 01:32 PM - Forum: General Discussion - No Replies

Hidden Missions (Incorrect Entries) in Ultimate Battle (Mission 100) Dragon Ball Z Budokai Tenkaichi 3

Recently I have been making some ASM cheat codes for DBZ BT3 plus doing some de-compilation of the data save. Last night, I stumbled across this...



There's an extra 7 pages of Hidden Missions. That's 35 extra Missions if you count the blank title Mission on the very final page (page 27).

Some of these Missions are playable while others will cause the game to crash if selected. Part of the location within the Data Save where your best records for Survival Mode are kept is also utilized by Missions #101 thru #103. So setting records on those Missions will automatically edit your Survival Mode records and vice versa.

This is because these Missions are most likely Trash Data or Incorrect Entries. ViveTheModder has a great explanation at the following link - https://pastebin.com/xduVJhPV

You cannot access these Missions without some sort of cheats/hacks. So here's a small gecko cheat code I wrote up that will unlock these Hidden Missions...

The following codebox below is for NTSC-U Launch Version only. If you are using "Rev1" of NTSC-U, go to the next codebox.

Code:
DBZ BT3 Unlock Hidden Missions in Ultimate Battle [Vega]

NTSC-U -temp unlock only-
040FBFE8 3800001B

NTSC-U -perma unlock- (go to options and save your data, you now have the missions unlocked permanently)
C20FBFE8 00000002
3800001B 9004020C
60000000 00000000

Source:
li r0, 0x1B #Set Ultimate Battle 100 pages to 27
stw r0, 0x020C (r4) #Write it to where Data Save contents reside in memory

#Default instruction of lwz r0, 0x020C (r4) is not needed

NTSC-U (Non-ASM) perma unlock; go to options and save data
42000000 90000000
00E5196F 0000001B
E0000000 80008000

'Source'
Set byte value 0x1B at address 0x90E5196F.

Code creator: Vega


NTSC-U "Rev1"

Code:
Unlock Hidden Missions in Ultimate Battle [Vega]

NTSC-U Rev1 -temp unlock only-
040FC398 3800001B

NTSC-U Rev1 -perma unlock- (go to options and save your data, you now have the missions unlocked permanently)
C20FC398 00000002
3800001B 9004020C
60000000 00000000

Source:
li r0, 0x1B #Set Ultimate Battle 100 pages to 27
stw r0, 0x020C (r4) #Write it to where Data Save contents reside in memory

#Default instruction of lwz r0, 0x020C (r4) is not needed

NTSC-U Rev1 (Non-ASM) perma unlock; go to options and save data
42000000 90000000
00E5796F 0000001B
E0000000 80008000

'Source'
Set byte value 0x1B at address 0x90E5796F.

Code creator: Vega

Thanks for reading!

Print this item

  Disconnect at Will [CLF78]
Posted by: CLF78 - 08-09-2020, 10:25 AM - Forum: Online Non-Item - Replies (3)

Since Bully's code doesn't work 100% everytime (at least for me), i created a variant using the Disable Online Six Minute Disconnection address. All regions tested successfully.

NTSC-U
04539F3C 4081000C
2834XXXX YYYYZZZZ
04539F3C 60000000
E0000000 80008000

PAL
0453F478 4081000C
2834XXXX YYYYZZZZ
0453F478 60000000
E0000000 80008000

NTSC-J
0453EDF8 4081000C
2834XXXX YYYYZZZZ
0453EDF8 60000000
E0000000 80008000

NTSC-K
0452D4D0 4081000C
2833XXXX YYYYZZZZ
0452D4D0 60000000
E0000000 80008000

Hint: Set the first line's value to 4800000C if you want to disable the six minute time limit Wink

Code creator: CLF78
Code credits: Ro (address founder)

Print this item

  Replace Text with Message IDs [MrBean]
Posted by: Diamond - 08-08-2020, 07:50 PM - Forum: Visual & Sound Effects - No Replies

Replace Text with Message IDs [MrBean]

A modified version of Bean's Mission Text ID Labels code to display message ids in place of text for all menu text and not just that which pertains to mission mode. Using this will cause text used in race to not display.

NTSC-U
C260C99C 00000003
9081001C 7C250B78
38A5001C 388013F1
3CC0808C 00000000

PAL
C263DDBC 00000003
9081001C 7C250B78
38A5001C 38800D7B
3CC0808C 00000000

NTSC-J
C263D428 00000003
9081001C 7C250B78
38A5001C 388013F1
3CC0808C 00000000

NTSC-K
C262C0D4 00000003
9081001C 7C250B78
38A5001C 388013F1
3CC0808C 00000000

Code creator: MrBean

Print this item

  Change Mii Names In Between Online Races [Vega]
Posted by: Vega - 08-08-2020, 01:56 AM - Forum: Online Non-Item - No Replies

Change Mii Names In Between Online Races [Vega]

This code will allow you to set two custom Mii Names and switch back & forth between the two whenever you want on a per-race basis. Everyone can see the effects.

Recommended times to activate your Mii names:
In Idle Room before HOST initates the 1st race/battle
At the VR or BR Screen in a public race/battle
At current point standings right after end of race/battle in a private room

Activating at other times may cause the code to not take effect til the after the next upcoming race.

XXXX = Controller Address
ZZZZ = Button to activate first name
zzzz = Button to activate second name

Do NOT press/hold-down other buttons while pressing your activators.

STUV = Mii Name character for first Mii name. If full Mii name isn't used, fill in rest of values with 0000.
WXYZ = Mii Name character for second Mii name. If full Mii name isn't used, fill in rest of values with 0000.

NOTE: This code uses memory addresses 0x800007D0 thru 0x800007FF. Make sure no other codes in your GCT/Cheat-Manager are using those addresses.

NTSC-U
060007D8 00000028
STUVSTUV STUVSTUV
STUVSTUV STUVSTUV
STUVSTUV WXYZWXYZ
WXYZWXYZ WXYZWXYZ
WXYZWXYZ WXYZWXYZ
C2661094 00000002
3FC08000 93FE07D0
83E1001C 00000000
C25DA7B0 00000003
3C808000 38030068
900407D4 8003006C
60000000 00000000
C0000000 00000013
3D808000 818C07D0
2C0C0000 4D820020
7D8802A6 9421FF80
BC610008 3D808034
618CXXXX A18C0000
3CA08000 2C0CZZZZ
388007D8 41820010
2C0Czzzz 388007EC
40A20048 7C832B78
BB630000 806507D4
BF630000 806507D0
38630012 7F63A5AA
3863FFFE 7C7F1B78
3880004C 38000000
B003004A 3D80800C
618C7830 7D8803A6
4E800021 B07F004A
B8610008 38210080
7D8803A6 4E800020

PAL
060007D8 00000028
STUVSTUV STUVSTUV
STUVSTUV STUVSTUV
STUVSTUV WXYZWXYZ
WXYZWXYZ WXYZWXYZ
WXYZWXYZ WXYZWXYZ
C2663178 00000002
3FC08000 93FE07D0
83E1001C 00000000
C25FB094 00000003
3C808000 38030068
900407D4 8003006C
60000000 00000000
C0000000 00000013
3D808000 818C07D0
2C0C0000 4D820020
7D8802A6 9421FF80
BC610008 3D808034
618CXXXX A18C0000
3CA08000 2C0CZZZZ
388007D8 41820010
2C0Czzzz 388007EC
40A20048 7C832B78
BB630000 806507D4
BF630000 806507D0
38630012 7F63A5AA
3863FFFE 7C7F1B78
3880004C 38000000
B003004A 3D80800C
618C78D0 7D8803A6
4E800021 B07F004A
B8610008 38210080
7D8803A6 4E800020

NTSC-J
060007D8 00000028
STUVSTUV STUVSTUV
STUVSTUV STUVSTUV
STUVSTUV WXYZWXYZ
WXYZWXYZ WXYZWXYZ
WXYZWXYZ WXYZWXYZ
C26627E4 00000002
3FC08000 93FE07D0
83E1001C 00000000
C25FA970 00000003
3C808000 38030068
900407D4 8003006C
60000000 00000000
C0000000 00000013
3D808000 818C07D0
2C0C0000 4D820020
7D8802A6 9421FF80
BC610008 3D808034
618CXXXX A18C0000
3CA08000 2C0CZZZZ
388007D8 41820010
2C0Czzzz 388007EC
40A20048 7C832B78
BB630000 806507D4
BF630000 806507D0
38630012 7F63A5AA
3863FFFE 7C7F1B78
3880004C 38000000
B003004A 3D80800C
618C77F0 7D8803A6
4E800021 B07F004A
B8610008 38210080
7D8803A6 4E800020

NTSC-K
060007D8 00000028
STUVSTUV STUVSTUV
STUVSTUV STUVSTUV
STUVSTUV WXYZWXYZ
WXYZWXYZ WXYZWXYZ
WXYZWXYZ WXYZWXYZ
C2651490 00000002
3FC08000 93FE07D0
83E1001C 00000000
C25E94B4 00000003
3C808000 38030068
900407D4 8003006C
60000000 00000000
C0000000 00000013
3D808000 818C07D0
2C0C0000 4D820020
7D8802A6 9421FF80
BC610008 3D808033
618CXXXX A18C0000
3CA08000 2C0CZZZZ
388007D8 41820010
2C0Czzzz 388007EC
40A20048 7C832B78
BB630000 806507D4
BF630000 806507D0
38630012 7F63A5AA
3863FFFE 7C7F1B78
3880004C 38000000
B003004A 3D80800C
618C7930 7D8803A6
4E800021 B07F004A
B8610008 38210080
7D8803A6 4E800020



Code creator: Vega
Code credits: Star (Mii Name Pointer for self view), WhatIsLoaf (Provided CRC16 Function addresses)



#FIRST ASM

#Address Ports
#NTSC-U = 80661094
#PAL = 80663178
#NTSC-J = 806627E4
#NTSC-K = 80651490

#Store USER Packet Pointer to Exception Vector
lis r30, 0x8000 #r30 safe for use
stw r31, 0x07D0 (r30) #Store the pointer
lwz r31, 0x001C (sp) #Default Instruction

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

#SECOND ASM

#Address Ports
#NTSC-U = 805DA7B0
#PAL = 805FB094
#NTSC-J = 805FA970
#NTSC-K = 805E94B4

#Store self-Mii Name pointer to Exception Vector
lis r4, 0x8000 #r4 safe for use
addi r0, r3, 0x68 #Make r0 point right to start of name
stw r0, 0x07D4 (r4) #Store the pointer
lwz r0, 0x006C (r3) #Default Instruction

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

#THIRD ASM

#START ASSEMBLY (C0)

#Special Compilation Notes
#Obviously use C0 option on PyiiASMH, if you're not on PyiiASMH, you're on your own
#Once compiled

#Address Notes
#0x800007D0 = USER Packet Pointer
#0x800007D4 = self-Mii Name Pointer
#0x800007D8 thru 0x800007EB = First Mii Name
#0x800007EC thru 0x800007FF = Second Mii Name

#Compilation Region Setting, you MUST fill this in before compiling
.set region, '' #e p j or k

#Macros and Statements
.macro call_link address
lis r12, \address@h
ori r12, r12, \address@l
mtlr r12
blrl
.endm

.if (region == 'E' || region == 'e') # RMCE
.set CRC16, 0x800C7830
.set ControllerAddress1stHalf, 0x8034
.elseif (region == 'P' || region == 'p') # RMCP
.set CRC16, 0x800C78D0
.set ControllerAddress1stHalf, 0x8034
.elseif (region == 'J' || region == 'j') # RMCJ
.set CRC16, 0x800C77F0
.set ControllerAddress1stHalf, 0x8034
.elseif (region == 'K' || region == 'k') # RMCK
.set CRC16, 0x800C7930
.set ControllerAddress1stHalf, 0x8033
.else # Invalid Region
.err
.endif

#Start Code, if there's no USER Packet Pointer, don't allow execution of code
lis r12, 0x8000
lwz r12, 0x07D0 (r12)
cmpwi r12, 0
beqlr- #Make code handler return from C0 subroutine

#Backup LR, push Stack Frame
mflr r12
stwu sp, -0x80 (sp)
stmw r3, 0x8 (sp)

#Set Controller Address, load buttons-being-pressed value
lis r12, ControllerAddress1stHalf
ori r12, r12, 0x8200 #GCN PAL used so source can compile
lhz r12, 0 (r12)

#Setup r5 for Vector loading
lis r5, 0x8000

#Check if desired Buttons were pressed
cmpwi r12, 0x0880 #GCN Y button used so source can compile
li r4, 0x07D8 #Set Loading offset beforehand to save source length
beq- activate

cmpwi r12, 0x0480 #GCN X button used so source can compile
li r4, 0x07EC #Set Loading offset beforehand to save source length
bne+ the_end

#Code ACTIVATED. Complete the exception vector address that points to selected Mii name
activate:
or r3, r4, r5

#Load Mii Name into r27 thru r31
lmw r27, 0 (r3)

#Load self-Mii Data Pointer, store Mii Name to self Data
lwz r3, 0x07D4 (r5)
stmw r27, 0 (r3) #r3 is word aligned, safe to do

#Load USER Packet Pointer, write Mii name, adjust r3 for stswi instruction since it won't be word aligned
lwz r3, 0x07D0 (r5)
addi r3, r3, 0x12
stswi r27, r3, 20

#New Checksum must be writen now. Adjust r3 to point to start of entire Mii Data for upcoming CRC16 function call
addi r3, r3, -2

#Backup r3 into r31 for later use
mr r31, r3

#Second Argument for CRC16 function call (size of Mii Data)
li r4, 0x4C

#The game always clears the previous checksum before a new checksum is generated and appended to the Mii Data, so clear it
li r0, 0
sth r0, 0x4A (r3)

#Call CRC16 Function; r3 will return new checksum
call_link CRC16

#Write new checksum, end code
sth r3, 0x4A (r31)

#End Code, Pop Stack Frame, Restore LR
the_end:
lmw r3, 0x8 (sp)
addi sp, sp, 0x80
mtlr r12

#blr #Uncomment if NOT compiling with PyiiASMH via C0 option. ASM Coders will know how to adjust the compiled code to be a proper C0 code.

#END ASSEMBLY

Smile

Print this item

  30 Seconds Time Limit Modifier [CLF78]
Posted by: CLF78 - 08-07-2020, 02:49 PM - Forum: Online Non-Item - Replies (2)

This code lets you set a custom amount of time before the race ends due to the leader having finished the race.

NTSC-U
02539752 0000XXXX

PAL
0253EC8E 0000XXXX

NTSC-J
0253E60E 0000XXXX

NTSC-K
0252CCE6 0000XXXX

X Value:

  • Take the number of seconds (for example, 3 minutes = 180 seconds)
  • Multiply that by 60 (the game's framerate)
  • Convert to hex
Code creator: CLF78
Code credits: Bully (address founder)

Print this item

  Ghost Mii Data Modifier [Vega]
Posted by: Vega - 08-05-2020, 01:27 AM - Forum: Time Trials & Battle - No Replies

Ghost Mii Data Modifier [Vega]

A step up compared to my Ghost Mii Name Modifier. This code will allow you to edit/put in all the Mii Data of the TT ghost instead of just the Mii Name.

IMPORTANT README: To save code length, some useless parts of the Mii Data is not included. This is the Creator Name and the CRC. Normally Mii Data is 0x4C bytes in length, but without the creator name and CRC, it is just 0x36 bytes in length. Just be mindful of this when filling in the values for the Mii Data.

Another important note: You MUST run this with my Bypass Mii Data CRC Code -> https://mkwii.com/showthread.php?tid=1572

Since you are bypassing the CRC, you can freely edit the Mii Data however you want (as long as the Mii characteristics/inputs is still valid..)

Yet another note: If you watch the Ghost Replay then proceed directly to 'Start Race' to go against the Ghost immediately, some weird side effects could occur. To avoid this possible issue, simply choose to Race against the Ghost only during the Track Selection.

The Z values are the Mii Data that you will paste in (excluding the creator name and CRC). This code isn't for 'noobs'. Please have some knowledge of the Mii Data structure before asking questions if you are unsure what to do. Thank you for understanding.

NTSC-U
C2524F80 0000000B
BE41FFC8 4800003D
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZ0000
7D8802A6 BA4C0000
BE430000 BA41FFC8
7FE3FB78 00000000

PAL
C25293F4 0000000B
BE41FFC8 4800003D
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZ0000
7D8802A6 BA4C0000
BE430000 BA41FFC8
7FE3FB78 00000000

NTSC-J
C2528D74 0000000B
BE41FFC8 4800003D
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZ0000
7D8802A6 BA4C0000
BE430000 BA41FFC8
7FE3FB78 00000000

NTSC-K
C2517418 0000000B
BE41FFC8 4800003D
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZZZZZ
ZZZZZZZZ ZZZZ0000
7D8802A6 BA4C0000
BE430000 BA41FFC8
7FE3FB78 00000000



Code creator: Vega



Source:

#Address Ports
#NTSC-U = 80524F80
#PAL = 805293F4
#NTSC-J = 80528D74
#NTSC-K = 80517418

#r0, r3 thru r12, CTR, LR all safe
#r3 points to very start of Mii Data

#0x36 bytes of data

stmw r18, -0x38 (sp)

bl mii_data

#NOTE random garbage values used below for source to compile, don't use these values for testing (lol)

.llong 0x004F004F004F004F
.llong 0x004E004E004E004E
.llong 0x004E004E004E004E
.llong 0x004E004E004E004E
.llong 0x004E004E004E004E
.llong 0x004E004E004E004E
.llong 0x004E004E004E0000 #Halfword of null at end is meant to be there.

mii_data:
mflr r12

lmw r18, 0 (r12)
stmw r18, 0 (r3)

lmw r18, -0x38 (sp)

mr r3, r31 #Default instruction

Print this item

  Ghost Mii Name Modifier [Vega]
Posted by: Vega - 08-03-2020, 11:48 PM - Forum: Time Trials & Battle - No Replies

Ghost Mii Name Modifier [Vega]

NOTE: You MUST run this with my Bypass Mii Data CRC Code -> https://mkwii.com/showthread.php?tid=1572

Another NOTE: If you watch the Ghost Replay then proceed directly to 'Start Race' to go against the Ghost immediately, it will cause you to have the ghost's Mii and the ghost itself will have no Mii Data. To avoid this issue, simply choose to Race against the Ghost only during the Track Selection.

This code will allow you to fully edit the Mii Name that is used for the Time Trial ghost.

WXYZ = Mii Name Character, use 0000 for unfilled values

NTSC-U
C2524F80 00000006
48000019 WXYZWXYZ
WXYZWXYZ WXYZWXYZ
WXYZWXYZ WXYZWXYZ
7C8802A6 7D04A4AA
38630002 7D03A5AA
7FE3FB78 00000000

PAL
C25293F4 00000006
48000019 WXYZWXYZ
WXYZWXYZ WXYZWXYZ
WXYZWXYZ WXYZWXYZ
7C8802A6 7D04A4AA
38630002 7D03A5AA
7FE3FB78 00000000

NTSC-J
C2528D74 00000006
48000019 WXYZWXYZ
WXYZWXYZ WXYZWXYZ
WXYZWXYZ WXYZWXYZ
7C8802A6 7D04A4AA
38630002 7D03A5AA
7FE3FB78 00000000

NTSC-K
C2517418 00000006
48000019 WXYZWXYZ
WXYZWXYZ WXYZWXYZ
WXYZWXYZ WXYZWXYZ
7C8802A6 7D04A4AA
38630002 7D03A5AA
7FE3FB78 00000000



Code creator: Vega



Source:

#Address Ports
#NTSC-U = 80524F80
#PAL = 805293F4
#NTSC-J = 80528D74
#NTSC-K = 80517418

#r0, r3 thru r12, CTR, LR all safe
#r3 points to very start of Mii Data

bl mii_name

.llong 0x004F004F004F004F #Garbage values used so source can compile, fill in values accordingly
.llong 0x004E004E004E004E
.long 0x004D004D

mii_name:
mflr r4

lswi r8, r4, 20 #Load the 20 bytes starting at r4's location (all the mii name data from table) and place it into r8 thru r12
addi r3, r3, 2 #Adjust r3 to point to start of Mii Name
stswi r8, r3, 20 #Now store r8 thru r12's values consecutively to r3 (start of mii name), whole mii name now replaced

mr r3, r31 #Default instruction

Print this item