Oh, that's good news!!
What kind of tools do I need?
For now I have only used Tile Layer Pro in editing letters.
And hexadecimal editors for the codes.
How could I correct the palette to avoid black shadow?
What you will need?
1) A debugger: any emulator with debug function, such as Mesen
2) A text editor such as Notepad++
3) An assembler such as xkas
4) Knowledge about the SFC hardware and its language.
5) That's all. No need for a hex editor
What do you have to do?
1) Track that where does player value in Rom written to (which Ram address)
2) Keep playing until you do the shot, then check the color Ram, then find its mirror in the Work Ram.
CT 3 uses $7E2000 as a mirror to color Ram.
3) Tracing where does value 0000 (black) written to the Work Ram that shows the player's color.
4) Modify the index value to get proper color.
You can have any player color as you want by modify the value at $7E0424 and $7E0428.
Below is the routine that write color index value to $7E0424.
03F37A JSR $F3BA [$03F3BA] A:F803 X:0000 Y:0001 S:1E18 D:0F00 DB:03 P:nvMXdIzc V:74 H:222
03F3BA PHP A:F803 X:0000 Y:0001 S:1E16 D:0F00 DB:03 P:nvMXdIzc V:74 H:234
03F3BB SEP #$20 A:F803 X:0000 Y:0001 S:1E15 D:0F00 DB:03 P:nvMXdIzc V:74 H:239
03F3BD LDA #$00 A:F803 X:0000 Y:0001 S:1E15 D:0F00 DB:03 P:nvMXdIzc V:74 H:245
03F3BF XBA A:F800 X:0000 Y:0001 S:1E15 D:0F00 DB:03 P:nvMXdIZc V:74 H:249
03F3C0 LDY #$00 A:00F8 X:0000 Y:0001 S:1E15 D:0F00 DB:03 P:NvMXdIzc V:74 H:254
03F3C2 LDA [$06],Y [$03F84E] = $00 A:00F8 X:0000 Y:0000 S:1E15 D:0F00 DB:03 P:nvMXdIZc V:74 H:258
03F3C4 CMP #$FF A:0000 X:0000 Y:0000 S:1E15 D:0F00 DB:03 P:nvMXdIZc V:74 H:270
03F3C6 BEQ $03F3D4 A:0000 X:0000 Y:0000 S:1E15 D:0F00 DB:03 P:nvMXdIzc V:74 H:274
03F3C8 INY A:0000 X:0000 Y:0000 S:1E15 D:0F00 DB:03 P:nvMXdIzc V:74 H:294
03F3C9 CMP $12 [$000F12] = $00 A:0000 X:0000 Y:0001 S:1E15 D:0F00 DB:03 P:nvMXdIzc V:74 H:297
03F3CB PHP A:0000 X:0000 Y:0001 S:1E15 D:0F00 DB:03 P:nvMXdIZC V:74 H:303
03F3CC LDA [$06],Y [$03F84F] = $90 A:0000 X:0000 Y:0001 S:1E14 D:0F00 DB:03 P:nvMXdIZC V:74 H:309
03F3CE PLP A:0090 X:0000 Y:0001 S:1E14 D:0F00 DB:03 P:NvMXdIzC V:74 H:321
03F3CF BEQ $03F3D9 A:0090 X:0000 Y:0001 S:1E15 D:0F00 DB:03 P:nvMXdIZC V:74 H:327
03F3D9 PLP A:0090 X:0000 Y:0001 S:1E15 D:0F00 DB:03 P:nvMXdIZC V:74 H:332
03F3DA RTS A:0090 X:0000 Y:0001 S:1E16 D:0F00 DB:03 P:nvMXdIzc V:74 H:339
03F37D REP #$20 A:0090 X:0000 Y:0001 S:1E18 D:0F00 DB:03 P:nvMXdIzc V:75 H:10
03F37F AND #$00FF A:0090 X:0000 Y:0001 S:1E18 D:0F00 DB:03 P:nvmXdIzc V:75 H:15
03F382 PHA A:0090 X:0000 Y:0001 S:1E18 D:0F00 DB:03 P:nvmXdIzc V:75 H:21
03F383 SEP #$30 A:0090 X:0000 Y:0001 S:1E16 D:0F00 DB:03 P:nvmXdIzc V:75 H:29
03F385 LDY #$04 A:0090 X:0000 Y:0001 S:1E16 D:0F00 DB:03 P:nvMXdIzc V:75 H:34
03F387 LDA [$14],Y [$18E0D5] = $06 A:0090 X:0000 Y:0004 S:1E16 D:0F00 DB:03 P:nvMXdIzc V:75 H:38
03F389 DEC A:0006 X:0000 Y:0004 S:1E16 D:0F00 DB:03 P:nvMXdIzc V:75 H:50
03F38A ASL A:0005 X:0000 Y:0004 S:1E16 D:0F00 DB:03 P:nvMXdIzc V:75 H:54
03F38B TAX A:000A X:0000 Y:0004 S:1E16 D:0F00 DB:03 P:nvMXdIzc V:75 H:57
03F38C REP #$20 A:000A X:000A Y:0004 S:1E16 D:0F00 DB:03 P:nvMXdIzc V:75 H:61
03F38E PLA A:000A X:000A Y:0004 S:1E16 D:0F00 DB:03 P:nvmXdIzc V:75 H:66
03F38F STA $041A,X [$030424] = $00DA A:0090 X:000A Y:0004 S:1E18 D:0F00 DB:03 P:nvmXdIzc V:75 H:75
03F392 RTS A:0090 X:000A Y:0004 S:1E18 D:0F00 DB:03 P:nvmXdIzc V:75 H:87