The PokéCommunity Forums  

Go Back   The PokéCommunity Forums > ROM Hacking > Research & Development
Sign Up Rules/FAQ Live Battle Blogs Mark Forums Read

Notices

Research & Development Got a well-founded knack with ROM hacking? Love reverse-engineering the Pokémon games? Or perhaps you love your assembly language. This is the spot for polling and gathering your ideas, and then implementing them! Share your hypothesis, get ideas from others, and collaborate to create!
Research & Development programs in this forum are subject to moderator approval before they are displayed.

Reply
 
Thread Tools
  #51    
Old October 23rd, 2013, 03:30 AM
chrunch's Avatar
chrunch
 
 
Join Date: Oct 2009
Gender: Male
Send a message via Windows Live Messenger to chrunch
Quote:
Originally Posted by thjenvuongxh View Post
(FIRE RED)
Today, I created a new asm routine, capable of reading one byte in the var 0x8009.

First, go at 0x8150400 and paste of thus:

A1 46 70 BC 01 BC 00 47 00 49 08 47 XX XX XX 08
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

(Use xx xx xx 08 +1 for the byte of the routine. Example: 0x800000 is 0x8000001 and 00 00 80 08 is 01 00 80 08)

At 0x8xxxxxx, paste it:
00 B5 00 06 00 0E 04 28 06 48 00 88 00 28 03 D0
05 49 06 49 06 49 07 49 07 49 08 49 08 49 09 49
09 49 00 00 CA 70 03 02 18 D8 80 00 01 49 40 18
00 68 87 46 XX XX XX 08

This new 0x8XXXXXX is your other free space that you paste it:
34 04 15 08 38 04 15 08 3C 04 15 08 40 04 15 08 44 04 15 08
BUT INSERT MORE BYTES WITH THIS, WHERE ITS COMPOSITION IS
THE TABLE WITH THIS:
10 20 00 E0 40 20 40 00 01 49 40 18 02 BC 08 47 EC 1D 47 08

Use a 10 20 E0 for the number of this table at:0x471DEC

But you can create a new collors and insering at var 0x8009 bytes with
0x0 0x1, 0x2, 0x3, 0x4, BUT THE 0x5 can' not except if you expand the table at 0x471DEC
I'm a bit confused by this explanation. Does this fix the text so that it makes it the correct color? I've done a bit of experimenting and I think I like the look of this:

I just want to make the text non-transparent. Do I apply that to fix it?
__________________
Reply With Quote
  #52    
Old October 23rd, 2013, 04:14 AM
karatekid552's Avatar
karatekid552
What happens if I push it?....
 
Join Date: Nov 2012
Location: Do you really want to know? Really?
Gender: Male
Nature: Bold
Send a message via AIM to karatekid552 Send a message via Windows Live Messenger to karatekid552 Send a message via Skype™ to karatekid552
Quote:
Originally Posted by chrunch View Post
I'm a bit confused by this explanation. Does this fix the text so that it makes it the correct color? I've done a bit of experimenting and I think I like the look of this:

I just want to make the text non-transparent. Do I apply that to fix it?
This took me a while to get:

All colors will be made transparent except White. This is what I have found and worked my text boxes around it accordingly. I have yet to find a way to change it.

Also, by screwing around with some of the values that are being written to the 0x400000 area, you can change the opacity of the transparent colors.
__________________

Paired with Simba
Reply With Quote
  #53    
Old October 23rd, 2013, 12:08 PM
BugMania's Avatar
BugMania
The Bug Master
 
Join Date: Jun 2013
Gender: Male
Nature: Quiet
Quote:
Originally Posted by karatekid552 View Post
This took me a while to get:

All colors will be made transparent except White. This is what I have found and worked my text boxes around it accordingly. I have yet to find a way to change it.

Also, by screwing around with some of the values that are being written to the 0x400000 area, you can change the opacity of the transparent colors.
you can use different colors according to the table of your liking. The color table would be selected when you set a number in the variable 0x8009.
__________________
Even the smallest of beings can achieve the greatest of obstacles!
Click in the spoiler, if you dare!
Spoiler:


L
et's dream bigger than our bodies can endure!
G
et to the extreme!

See my works here

Reply With Quote
  #54    
Old October 23rd, 2013, 01:40 PM
karatekid552's Avatar
karatekid552
What happens if I push it?....
 
Join Date: Nov 2012
Location: Do you really want to know? Really?
Gender: Male
Nature: Bold
Send a message via AIM to karatekid552 Send a message via Windows Live Messenger to karatekid552 Send a message via Skype™ to karatekid552
Quote:
Originally Posted by BugMania View Post
you can use different colors according to the table of your liking. The color table would be selected when you set a number in the variable 0x8009.
I honestly didn't use his routine, I wrote my own and hooked it directly into the msgbox command itself. That is probably why I didn't understand that part.
__________________

Paired with Simba
Reply With Quote
  #55    
Old October 24th, 2013, 04:48 AM
ep!c
Banned
 
Join Date: Mar 2013
Gender: Male
Send a message via Skype™ to ep!c
Lol guys, you discuss years for a simple code.

Its easy to understand: The more "black" the color has, the more transparent it is.
Black -> ~50% transparency ...... White -> 0% transparency
Then just make the code (only contains loading and writing in fact o.o) and make a built-in routine in the textbox. Afterwards, change text color to white and textbox color to full black and it results in this:



Also the menu is working fine, if you hack the color and graphics correctly:



The graphics box downsides has the offset 0x4566A8.
I could also give out my NSE-bookmarks, if you wish.
Many useful things in it
Reply With Quote
  #56    
Old October 24th, 2013, 05:03 AM
karatekid552's Avatar
karatekid552
What happens if I push it?....
 
Join Date: Nov 2012
Location: Do you really want to know? Really?
Gender: Male
Nature: Bold
Send a message via AIM to karatekid552 Send a message via Windows Live Messenger to karatekid552 Send a message via Skype™ to karatekid552
Quote:
Originally Posted by ep!c View Post
Lol guys, you discuss years for a simple code.

Its easy to understand: The more "black" the color has, the more transparent it is.
Black -> ~50% transparency ...... White -> 0% transparency
Then just make the code (only contains loading and writing in fact o.o) and make a built-in routine in the textbox. Afterwards, change text color to white and textbox color to full black and it results in this:



Also the menu is working fine, if you hack the color and graphics correctly:



The graphics box downsides has the offset 0x4566A8.
I could also give out my NSE-bookmarks, if you wish.
Many useful things in it
That is exactly what I did, however I changed the transparency level of the black and added some red.

http://www.romhack.me/photo/1582/dc/userid_2957/
__________________

Paired with Simba
Reply With Quote
  #57    
Old October 24th, 2013, 02:03 PM
BugMania's Avatar
BugMania
The Bug Master
 
Join Date: Jun 2013
Gender: Male
Nature: Quiet
Quote:
Originally Posted by karatekid552 View Post
I honestly didn't use his routine, I wrote my own and hooked it directly into the msgbox command itself. That is probably why I didn't understand that part.
My routine asm (as was I who posted by the thjenvuongxh) is interesting because it allows a color change. It has nothing to do with the permissions of a transparent text box, ok?


Again, sorry for my bad english.
__________________
Even the smallest of beings can achieve the greatest of obstacles!
Click in the spoiler, if you dare!
Spoiler:


L
et's dream bigger than our bodies can endure!
G
et to the extreme!

See my works here

Reply With Quote
  #58    
Old October 24th, 2013, 05:21 PM
karatekid552's Avatar
karatekid552
What happens if I push it?....
 
Join Date: Nov 2012
Location: Do you really want to know? Really?
Gender: Male
Nature: Bold
Send a message via AIM to karatekid552 Send a message via Windows Live Messenger to karatekid552 Send a message via Skype™ to karatekid552
Quote:
Originally Posted by BugMania View Post
My routine asm (as was I who posted by the thjenvuongxh) is interesting because it allows a color change. It has nothing to do with the permissions of a transparent text box, ok?


Again, sorry for my bad english.
I never said there was anything wrong with yours, I just made my own and I like the way it came out.

but thanks, now I understand.
__________________

Paired with Simba
Reply With Quote
  #59    
Old January 16th, 2014, 10:21 PM
KennyKid's Avatar
KennyKid
scipter
 
Join Date: Mar 2013
Location: Civiland (Cai Nhum,Vinh Long :D)
Gender: Male
Nature: Quiet
It's a long time since I first read this thread. I found out how to transperant textbox without asm code (writebytetooffset), just a simple code like ~Andrea. This usefull for someone not good at asm code.

First call 0x(offset) to make it transperant textbox
Spoiler:
writebytetooffset 0x3F 0x4000048
writebytetooffset 0x1F 0x4000049
writebytetooffset 0x41 0x4000050
writebytetooffset 0x3F 0x4000051
writebytetooffset 0xF 0x4000052
writebytetooffset 0xA 0x4000053
writebytetooffset 0xFF 0x202F0AA
writebytetooffset 0xFF 0x202F0AB
writebytetooffset 0x0 0x202F0B8
writebytetooffset 0x0 0x202F0B9
writebytetooffset 0x0 0x202F0AC
writebytetooffset 0x0 0x202F0AD
writebytetooffset 0x0 0x202F0BE
writebytetooffset 0x0 0x202F0BF
writebytetooffset 0x0 0x202F0C0
writebytetooffset 0x0 0x202F0C1
writebytetooffset 0x0 0x202F0C2
writebytetooffset 0x0 0x202F0C3
writebytetooffset 0x0 0x202F0C4
writebytetooffset 0x0 0x202F0C5
writebytetooffset 0x0 0x202F0C6
writebytetooffset 0x0 0x202F0C7
writebytetooffset 0x0 0x202F0C8
writebytetooffset 0x0 0x202F0C9



After you finish your script, call this code and the textbox and menu'll back to normal
Spoiler:
writebytetooffset 0x1F 0x4000048
writebytetooffset 0x1F 0x4000049
writebytetooffset 0x40 0x4000050
writebytetooffset 0x1E 0x4000051
writebytetooffset 0x10 0x4000052
writebytetooffset 0x0 0x4000053
writebytetooffset 0x29 0x202F0AA
writebytetooffset 0x25 0x202F0AB
writebytetooffset 0x5A 0x202F0B8
writebytetooffset 0x67 0x202F0B9
writebytetooffset 0x1F 0x202F0AC
writebytetooffset 0x0 0x202F0AD
writebytetooffset 0x9C 0x202F0BE
writebytetooffset 0x77 0x202F0BF
writebytetooffset 0xFF 0x202F0C0
writebytetooffset 0x7F 0x202F0C1
writebytetooffset 0x33 0x202F0C2
writebytetooffset 0x7F 0x202F0C3
writebytetooffset 0xEF 0x202F0C4
writebytetooffset 0x72 0x202F0C5
writebytetooffset 0xFF 0x202F0C6
writebytetooffset 0x7F 0x202F0C7
writebytetooffset 0xE 0x202F0C8
writebytetooffset 0x53 0x202F0C9



The writeback bytes are found by NarutoActor.
One more thing: You can adjust the bold of the textbox (the black transperant color) by adjust this code:
Quote:
writebytetooffset 0xF 0x4000052
writebytetooffset 0xA 0x4000053
writebytetooffset 0xFF 0x202F0AA
Change the value of 0xA, from the darkest to the lightest is 0x0, 0x1, ... , 0xA, 0xb,..., 0xe and finally 0xf
So if you want it a little darker, change 0xA to 0x8 or 0x7

These code can't change the text color.
__________________


Quick way to edit palettes, indexing sprites and insert tileset
Reply With Quote
  #60    
Old January 17th, 2014, 06:16 AM
~Andrea's Avatar
~Andrea
 
Join Date: Oct 2012
Gender: Male
why you don't use "windows" instead of making the textbox or BG0 semi-transparent? if you use it you will not have any bugs in the menu (and other tile load in BG0)...
__________________
Reply With Quote
  #61    
Old June 4th, 2014, 12:20 AM
kebbles's Avatar
kebbles
Rom Hacker.
 
Join Date: Jul 2007
Location: Victoria, Australia!
Gender: Male
Nature: Brave
yeah andrea is right, 'windows'
__________________
Pokémon Galaxy Elements
Alpha 0.5 Out Now!


When the world is in its final moments..
Where will you be?
Reply With Quote
  #62    
Old July 30th, 2014, 01:32 PM
Dark Sneasel's Avatar
Dark Sneasel
dem Verdanturf flowers are sexy
Community Supporter
 
Join Date: Jun 2013
Location: Miami, FL
Age: 14
Gender: Male
Nature: Hasty
Quote:
Originally Posted by itman View Post
This is amazing, but it takes up so much room to use in EVERY script.

So what everyone should do is make that a separate script, and then at the beginning of every script, call it, so this way you can save lots of room.

Example:

Script to be called:
Spoiler:

#org @begin
writebytetooffset 0x3F 0x4000048
writebytetooffset 0x1F 0x4000049
writebytetooffset 0x41 0x4000050
writebytetooffset 0x3F 0x4000051
writebytetooffset 0xF 0x4000052
writebytetooffset 0xA 0x4000053
writebytetooffset 0xFF 0x202F0AA
writebytetooffset 0xFF 0x202F0AB
writebytetooffset 0x0 0x202F0B8
writebytetooffset 0x0 0x202F0B9
writebytetooffset 0x0 0x202F0AC
writebytetooffset 0x0 0x202F0AD
writebytetooffset 0x0 0x202F0BE
writebytetooffset 0x0 0x202F0BF
writebytetooffset 0x0 0x202F0C0
writebytetooffset 0x0 0x202F0C1
writebytetooffset 0x0 0x202F0C2
writebytetooffset 0x0 0x202F0C3
writebytetooffset 0x0 0x202F0C4
writebytetooffset 0x0 0x202F0C5
writebytetooffset 0x0 0x202F0C6
writebytetooffset 0x0 0x202F0C7
writebytetooffset 0x0 0x202F0C8
writebytetooffset 0x0 0x202F0C9
return


Then if a script wants to use transparent text boxes, it would just call that one, and then it will automatically return to the script afterward due to the return command.

Spoiler:

#org @begin
call 0x(whateveroffsetit'sat!)
lock
faceplayer
msgbox @hi 0x6
release
end

#org @hi
= Hi.


Space saving ftw! I know this isn't a complex technique in anyway; I was just over explaning for newer hackers out there.
Instead of doing that, how about putting that (by "that" I mean what he said about @call) in a level script so every script in the map has it and you don't have to add it to NPCs? I haven't tested it, and won't since I don't hack FR or Ruby, but would that work?
__________________
Pokémon Fluorite Version (Beta 2 Released)


Join Poketch.com, a new ROM hacking community! Click on the image for more!
Reply With Quote
  #63    
Old July 30th, 2014, 10:49 PM
MrKongKillz's Avatar
MrKongKillz
 
Join Date: Jul 2014
Location: The Primous Region
Gender:
Nature: Calm
Quote:
Originally Posted by Dark Sneasel View Post
Instead of doing that, how about putting that (by "that" I mean what he said about @call) in a level script so every script in the map has it and you don't have to add it to NPCs? I haven't tested it, and won't since I don't hack FR or Ruby, but would that work?
Thank you now i can rom hacking with transparent textboxs :D

Last edited by MrKongKillz; July 30th, 2014 at 11:18 PM.
Reply With Quote
  #64    
Old September 2nd, 2014, 11:15 AM
Derlo's Avatar
Derlo
Braziliam Hacker!! De Mossoró
 
Join Date: Aug 2007
Send a message via Windows Live Messenger to Derlo
Works great to me, but I have a little problem.

After call all "writebytetooffset" to bring the textbox to normal, if I start a script with YES/NO textbox, the game crashes....

Someone knows how to fix that?

Edit:
Forget it!
The problem was in another routine that was using along with the transparency!
__________________



Pokémon
Essence of Light

Comming Soon...

Last edited by Derlo; September 2nd, 2014 at 02:15 PM. Reason: Solved!
Reply With Quote
Reply
Quick Reply

Sponsored Links
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
Minimum Characters Per Post: 25



All times are UTC -8. The time now is 01:14 PM.


Style by Nymphadora, artwork by Sa-Dui.
Like our Facebook Page Follow us on Twitter © 2002 - 2014 The PokéCommunity™, pokecommunity.com.
Pokémon characters and images belong to The Pokémon Company International and Nintendo. This website is in no way affiliated with or endorsed by Nintendo, Creatures, GAMEFREAK, The Pokémon Company or The Pokémon Company International. We just love Pokémon.
All forum styles, their images (unless noted otherwise) and site designs are © 2002 - 2014 The PokéCommunity / PokéCommunity.com.
PokéCommunity™ is a trademark of The PokéCommunity. All rights reserved. Sponsor advertisements do not imply our endorsement of that product or service. User generated content remains the property of its creator.