Go Back   The PokéCommunity Forums > ROM Hacking > Tools, Tutorials & Resources
Reload this Page [Tutorial] Transparent Textboxes [FR]

Notices
For all updates, view the main page.

Tools, Tutorials & Resources Various tools to help you develop your hacks can be found here.
New threads in this forum are to be approved by a moderator before they are displayed.



Reply
 
Thread Tools
  #1    
Old March 14th, 2014 (09:33 AM). Edited May 9th, 2014 by Kenny1.
Kenny1's Avatar
Kenny1 Kenny1 is offline
On a break from Rom hacking, to improve other skills.
 
Join Date: Nov 2013
Gender: Male
Posts: 85
Hello! Today I am going to show you how to insert transparent textboxes for Pokemon fire red.

What you'll need:
-Lunar IPS,
-XSE,
-Pokemon Fire Red Rom,
-Advance Map
-The patch included at the end of this tutorial,
-VBA (To test if it works)
-Ape(optional)
-Hex Editor (only if you have started hacking already.)

Let us begin:

Step #1
Spoiler:
Download all the necessary files.


Step #2
Spoiler:
Apply the patch, if you have already started hacking your rom, patch a clean rom, open it in a hex editor, go to offset 750000, copy the data and paste it in your rom somewhere with enough free space.(Write down the offset.)



Step #3
Spoiler:
Open XSE and make a script like this:

#dynamic 0x800000

#org @start
callasm 0x750021 (Or the offset where you inserted it + 21)
msgbox @text 0x2
callasm 0x750135 (Or the deactivation offset see picture below. Starts with B5*)
end

#org @text
= This is a test.

Compile that to your rom
Copy the offset.



Step #4
Spoiler:
Open Advance Map, go to any map, find a NPC go there where it says script offset, there select all the numbers, right click, and click "paste".


Step #5 (Extra)
Spoiler:
This is for if you want to edit the textbox and text palette,
-Open APE.
-Load you're rom.
-In offset[Hex] type "750000"(or your new offset) without quotation marks.
-Export the palette.
-Import the palette.(at the bottom.)
-Change the palette.
-I will give you 1 hint:

is the text color
-click replace


Step #6 Test it.
Spoiler:
-Open you're rom in VBA
- Talk to the NPC that you gave the script to.



Hope you guys can figure this out! :D
Patch:
http://www.mediafire.com/download/0py276pbgw6a0bn/Pok%C3%A9mon+Fire+Red+Transparent+Textboxes.ips

Credits:
Ep!c-For the routine.
Me for following the tut and releasing this patch.

Here's the original tut:
www.pokecommunity.com/showthread.php?t=312702

Edit: I made a video tut:http://www.dailymotion.com/video/x1j0xys_pokemon-fire-red-transparent-textboxes_videogames

For those who have already started hacking:

hex values:
Spoiler:
2E 53 00 00 FF 7F 00 00 FF 7F 00 00 FF 7F 00 00 FF 7F 00 00 00 00 00 00 00 00 00 00 00 00 00 00 1F B5 80 23 41 4C 23 70 10 22 41 49 41 48 0B DF 40 23 23 70 40 49 3F 48 0B DF 24 48 3F 21 01 70 23 48 1F 21 01 70 23 48 41 21 01 70 22 48 3F 21 01 70 22 48 0F 21 01 70 21 48 0A 21 01 70 21 48 FF 21 01 70 20 48 FF 21 01 70 20 48 00 21 01 70 1F 48 00 21 01 70 1F 48 00 21 01 70 1E 48 00 21 01 70 1E 48 00 21 01 70 1D 48 00 21 01 70 1D 48 00 21 01 70 1C 48 00 21 01 70 1C 48 00 21 01 70 1B 48 00 21 01 70 1B 48 00 21 01 70 1A 48 00 21 01 70 1A 48 00 21 01 70 19 48 00 21 01 70 19 48 00 21 01 70 18 48 00 21 01 70 1F BD 48 00 00 04 49 00 00 04 50 00 00 04 51 00 00 04 52 00 00 04 53 00 00 04 DC 77 03 02 DD 77 03 02 DA 77 03 02 DB 77 03 02 DE 77 03 02 DF 77 03 02 EC 77 03 02 ED 77 03 02 EE 77 03 02 EF 77 03 02 F0 77 03 02 F1 77 03 02 F2 77 03 02 F3 77 03 02 F4 77 03 02 F5 77 03 02 F6 77 03 02 F7 77 03 02 C0 7A 03 02 E0 01 00 05 00 00 75 08 C0 01 00 05 1F B5 26 48 1F 21 01 70 25 48 1F 21 01 70 25 48 40 21 01 70 24 48 1E 21 01 70 24 48 10 21 01 70 23 48 00 21 01 70 23 48 29 21 01 70 22 48 25 21 01 70 22 48 5A 21 01 70 21 48 67 21 01 70 21 48 1F 21 01 70 20 48 00 21 01 70 20 48 9C 21 01 70 1F 48 77 21 01 70 1F 48 FF 21 01 70 1E 48 7E 21 01 70 1E 48 33 21 01 70 1D 48 7F 21 01 70 1D 48 EF 21 01 70 1C 48 72 21 01 70 1C 48 FF 21 01 70 1B 48 7F 21 01 70 1B 48 0E 21 01 70 1A 48 53 21 01 70 1A 4C 40 23 23 70 1F BD C0 46 48 00 00 04 49 00 00 04 50 00 00 04 51 00 00 04 52 00 00 04 53 00 00 04 DC 77 03 02 DD 77 03 02 DA 77 03 02 DB 77 03 02 DE 77 03 02 DF 77 03 02 EC 77 03 02 ED 77 03 02 EE 77 03 02 EF 77 03 02 F0 77 03 02 F1 77 03 02 F2 77 03 02 F3 77 03 02 F4 77 03 02 F5 77 03 02 F6 77 03 02 F7 77

i THINK those are the hex values,
i quote:
"callasm 0x750021 (Or the offset where you inserted it + 21)"
__________________
Currently working on ASM. Thank you to Almarto, for teaching me the basics of ASM, and everyone else who posts ASM routines and tutorials.
Reply With Quote
  #2    
Old March 15th, 2014 (12:42 PM).
Near~'s Avatar
Near~ Near~ is offline
The End is Near...
 
Join Date: Dec 2013
Location: Berlín, Alemania
Age: 17
Gender: Male
Nature: Adamant
Posts: 339
Send a message via Skype™ to Near~
WOOOOWWW I will use this for sure!
One question if you open NSE and edit the text box could you make the transparent textbox into a different style? Like just edit the edges and stuff?
Reply With Quote
  #3    
Old March 15th, 2014 (05:00 PM).
Sniper's Avatar
Sniper Sniper is offline
ふゆかい
 
Join Date: Nov 2013
Location: Philippines
Gender: Male
Nature: Quiet
Posts: 1,415
It kinda gives me a awfully looking color when I use showpokepic command with it.
__________________
Reply With Quote
  #4    
Old March 15th, 2014 (05:35 PM).
Near~'s Avatar
Near~ Near~ is offline
The End is Near...
 
Join Date: Dec 2013
Location: Berlín, Alemania
Age: 17
Gender: Male
Nature: Adamant
Posts: 339
Send a message via Skype™ to Near~
Would andres tool to make 2 pokepics appear work? thus replacing no need for ASM to show mugshots XD?
Reply With Quote
  #5    
Old March 20th, 2014 (08:29 AM). Edited March 22nd, 2014 by Kenny1.
Kenny1's Avatar
Kenny1 Kenny1 is offline
On a break from Rom hacking, to improve other skills.
 
Join Date: Nov 2013
Gender: Male
Posts: 85
Quote originally posted by SynBit:
WOOOOWWW I will use this for sure!
One question if you open NSE and edit the text box could you make the transparent textbox into a different style? Like just edit the edges and stuff?
I don't know, sorry, guess you could try...?

Quote originally posted by V.V:
It kinda gives me a awfully looking color when I use showpokepic command with it.
I think its loading the textboxes palette to the picture, i dont know how to fix this, ill take a look at it, but I cant guarantee I will be able to fix it.

Quote originally posted by SynBit:
Would andres tool to make 2 pokepics appear work? thus replacing no need for ASM to show mugshots XD?
Sorry don't know either, it'll probably work, not sure.

EDIT: I did some research, with the help of Gal, yes editing the textbox in Nse wil modify what it looks like
__________________
Currently working on ASM. Thank you to Almarto, for teaching me the basics of ASM, and everyone else who posts ASM routines and tutorials.
Reply With Quote
  #6    
Old March 24th, 2014 (04:16 AM).
Kakarot1212's Avatar
Kakarot1212 Kakarot1212 is offline
Resident Programmer
 
Join Date: Oct 2013
Location: Phillipines
Gender: Male
Nature: Naughty
Posts: 530
In this script, where should we place the "callasm" things?
Code:
'---------------
#org 0x168C09
lock
faceplayer
checkflag 0x258
if 0x1 goto 0x8168C4A
checkgender
compare LASTRESULT 0x0
if 0x1 call 0x8168C38
compare LASTRESULT 0x1
if 0x1 call 0x8168C41
closeonkeypress
applymovement 0x1 0x81A75E5
waitmovement 0x0
release
end

'---------------
#org 0x168C4A
msgbox 0x818D3D1 MSG_KEEPOPEN '"Mom: [player]!\nYou should take a ..."
closeonkeypress
call 0x81A6C26
msgbox 0x818D3F8 MSG_KEEPOPEN '"Mom: Oh, good! You and your\nPokém..."
release
end

'---------------
#org 0x168C38
msgbox 0x818D2F0 MSG_KEEPOPEN '"Mom: [.]Right.\nAll boys leave hom..."
return

'---------------
#org 0x168C41
msgbox 0x818D360 MSG_KEEPOPEN '"Mom: [.]Right.\nAll girls dream of..."
return

'---------------
#org 0x1A6C26
fadescreen 0x1
fanfare 0x100
waitfanfare
special 0x0
fadescreen 0x0
return


'---------
' Strings
'---------
#org 0x18D3D1
= Mom: [player]!\nYou should take a quick rest.

#org 0x18D3F8
= Mom: Oh, good! You and your\nPokémon are looking great.\lTake care now!

#org 0x18D2F0
= Mom: [.]Right.\nAll boys leave home someday.\lIt said so on TV.\pOh, yes. Prof. Oak, next door, was\nlooking for you.

#org 0x18D360
= Mom: [.]Right.\nAll girls dream of traveling.\lIt said so on TV.\pOh, yes. Prof. Oak, next door, was\nlooking for you.


'-----------
' Movements
'-----------
#org 0x1A75E5
#raw 0x5A 'mov5A
#raw 0xFE 'End of Movements
It is your moms script btw.
__________________
Reply With Quote
  #7    
Old March 25th, 2014 (06:12 AM). Edited March 28th, 2014 by Kenny1.
Kenny1's Avatar
Kenny1 Kenny1 is offline
On a break from Rom hacking, to improve other skills.
 
Join Date: Nov 2013
Gender: Male
Posts: 85
You would put it before and after the msgbox command, ill explain:

Spoiler:
'---------------
#org 0x168C09
lock
faceplayer
checkflag 0x258
if 0x1 goto 0x8168C4A
checkgender
compare LASTRESULT 0x0
if 0x1 call 0x8168C38
compare LASTRESULT 0x1
if 0x1 call 0x8168C41
closeonkeypress
applymovement 0x1 0x81A75E5
waitmovement 0x0
release
end

'---------------
#org 0x168C4A
callasm 0x75021
msgbox 0x818D3D1 MSG_KEEPOPEN '"Mom: [player]!\nYou should take a ..."
callasm 0x750135
closeonkeypress
call 0x81A6C26
callasm 0x75021
msgbox 0x818D3F8 MSG_KEEPOPEN '"Mom: Oh, good! You and your\nPokém..."
callasm 0x750135
release
end

'---------------
#org 0x168C38
callasm 0x75021
msgbox 0x818D2F0 MSG_KEEPOPEN '"Mom: [.]Right.\nAll boys leave hom..."
callasm 0x750135
return

'---------------
#org 0x168C41
callasm 0x75021
msgbox 0x818D360 MSG_KEEPOPEN '"Mom: [.]Right.\nAll girls dream of..."
callasm 0x750135
return

'---------------
#org 0x1A6C26
fadescreen 0x1
fanfare 0x100
waitfanfare
special 0x0
fadescreen 0x0
return


'---------
' Strings
'---------
#org 0x18D3D1
= Mom: [player]!\nYou should take a quick rest.

#org 0x18D3F8
= Mom: Oh, good! You and your\nPokémon are looking great.\lTake care now!

#org 0x18D2F0
= Mom: [.]Right.\nAll boys leave home someday.\lIt said so on TV.\pOh, yes. Prof. Oak, next door, was\nlooking for you.

#org 0x18D360
= Mom: [.]Right.\nAll girls dream of traveling.\lIt said so on TV.\pOh, yes. Prof. Oak, next door, was\nlooking for you.


'-----------
' Movements
'-----------
#org 0x1A75E5
#raw 0x5A 'mov5A
#raw 0xFE 'End of Movements
__________________
Currently working on ASM. Thank you to Almarto, for teaching me the basics of ASM, and everyone else who posts ASM routines and tutorials.
Reply With Quote
  #8    
Old March 28th, 2014 (11:53 AM).
avaramoon avaramoon is offline
Author Of Tales
 
Join Date: Dec 2011
Location: Sogen Suburb, Avlar
Gender: Female
Nature: Brave
Posts: 511
WOW. I love this, shame my hack is so far in progress or Id have liked to use this =( thanks for sharing tho!
__________________
Reply With Quote
  #9    
Old March 28th, 2014 (07:39 PM). Edited May 10th, 2014 by hashtag.
Kenny1's Avatar
Kenny1 Kenny1 is offline
On a break from Rom hacking, to improve other skills.
 
Join Date: Nov 2013
Gender: Male
Posts: 85
@avara, you can still use this you just need a hex editor.

Btw just to let you guys know, to use show pokepic with it as well as a yes no box, you would need a different routine, Ep!c did post one in his thread, I'll post the hex bytes soon, for those who have already started with their hack.


Sorry about double post, on mobile and my mobile doesn't want me to edit posts for some reason.
__________________
Currently working on ASM. Thank you to Almarto, for teaching me the basics of ASM, and everyone else who posts ASM routines and tutorials.
Reply With Quote
  #10    
Old May 10th, 2014 (02:20 AM).
The Stalker's Avatar
The Stalker The Stalker is offline
 
Join Date: Feb 2014
Location: Among the Shadows
Gender: Female
Nature: Lonely
Posts: 16
I am not sure if anyone's asked this, but do we have to do this to every single script, or do we only have to do it once?
__________________
Reply With Quote
  #11    
Old May 10th, 2014 (05:51 AM).
avaramoon avaramoon is offline
Author Of Tales
 
Join Date: Dec 2011
Location: Sogen Suburb, Avlar
Gender: Female
Nature: Brave
Posts: 511
Quote originally posted by The Stalker:
I am not sure if anyone's asked this, but do we have to do this to every single script, or do we only have to do it once?
I'd like to know this too =) Also I notice you use a different callasm number after the msgbox as well as before; if we insert the hex bytes into an already-started hack, how do we get the second number, or is it just the number where the code ends?
__________________
Reply With Quote
  #12    
Old May 10th, 2014 (11:17 PM). Edited June 2nd, 2014 by Kenny1.
Kenny1's Avatar
Kenny1 Kenny1 is offline
On a break from Rom hacking, to improve other skills.
 
Join Date: Nov 2013
Gender: Male
Posts: 85
Quote originally posted by The Stalker:
I am not sure if anyone's asked this, but do we have to do this to every single script, or do we only have to do it once?
Yes you have to do it with every msgbox you want to be transparent.


Quote originally posted by avaramoon:
I'd like to know this too =) Also I notice you use a different callasm number after the msgbox as well as before; if we insert the hex bytes into an already-started hack, how do we get the second number, or is it just the number where the code ends?
i forgot, when you insert it with the hex bytes, the first one is the offset where you inserted it +21
the second is +139

So if you inserted it at 900000, the first offset is 900021, and the second one is 900139

for more info:
Ep!c's post
__________________
Currently working on ASM. Thank you to Almarto, for teaching me the basics of ASM, and everyone else who posts ASM routines and tutorials.
Reply With Quote
  #13    
Old May 11th, 2014 (04:51 AM).
dagid4 dagid4 is offline
 
Join Date: Apr 2012
Gender: Male
Posts: 7
Quote originally posted by Kenny1:
Yes you have to do it with every msgbox you want to be transparent.
It could be done only once. But you need to know and replace palette colors, which are stored in ROM, not in RAM. ( It will be applied to every msgbox in the game. )

I think the palette table for fonts (maybe it is also for gumps) is stored at 08471DEC, so you can try to overwrite it.
Reply With Quote
  #14    
Old May 11th, 2014 (05:14 AM).
Kenny1's Avatar
Kenny1 Kenny1 is offline
On a break from Rom hacking, to improve other skills.
 
Join Date: Nov 2013
Gender: Male
Posts: 85
It IS possible to never have to call it, but that involves more asm, that is why Ep!c made his tut, for people who dont know asm, i made the patch and the tut, and did some research.
__________________
Currently working on ASM. Thank you to Almarto, for teaching me the basics of ASM, and everyone else who posts ASM routines and tutorials.
Reply With Quote
  #15    
Old May 11th, 2014 (08:41 AM).
Sniper's Avatar
Sniper Sniper is offline
ふゆかい
 
Join Date: Nov 2013
Location: Philippines
Gender: Male
Nature: Quiet
Posts: 1,415
Quote originally posted by avaramoon:
I'd like to know this too =) Also I notice you use a different callasm number after the msgbox as well as before; if we insert the hex bytes into an already-started hack, how do we get the second number, or is it just the number where the code ends?
It won't be buggy, as Kenny1 said, you only need to go to a safe free space that your rom haven't taken over yet. But as much as possible, you better find out first if it this thing would cause a lot of bug in your game. Either way, yes, this tutorial is very helpful.

To Kenny1: Still don't know the solution to the bug on the showpokepic
__________________
Reply With Quote
  #16    
Old May 12th, 2014 (08:41 AM).
Kenny1's Avatar
Kenny1 Kenny1 is offline
On a break from Rom hacking, to improve other skills.
 
Join Date: Nov 2013
Gender: Male
Posts: 85
Quote originally posted by V.V:
It won't be buggy, as Kenny1 said, you only need to go to a safe free space that your rom haven't taken over yet. But as much as possible, you better find out first if it this thing would cause a lot of bug in your game. Either way, yes, this tutorial is very helpful.

To Kenny1: Still don't know the solution to the bug on the showpokepic
You should try the new code I posted, Ep!c made it to fix that problem.

See here
__________________
Currently working on ASM. Thank you to Almarto, for teaching me the basics of ASM, and everyone else who posts ASM routines and tutorials.
Reply With Quote
Reply
Quick Reply

Sponsored Links

You may also like.. (Beta)
Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are UTC -8. The time now is 08:54 PM.