• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.
C
Reaction score
57

Profile posts Latest activity Postings About

  • I tried to PM you, but your box was full also. Like I said on the thread, I would love to join the stream, and I could join from the very start, which is 8pm my time, which is absolutely perfect. I might not talk much, but I will do my best to talk as much as possible. My skype is in my profile. :)
    I was going to PM you, but your PM box was full.
    Just so you know, I just donated $15, but I used my families email account, because my parents were the one who set up my bank account way back when.
    The email used was [email protected], and I would love for you to play my un-released hack Pokemon Light, but just to warn you there are a lot of empty houses, and useless NPC, and probably a lot of bugs, grammar, and spelling mistakes. xD

    PS. Please do not email me with that email, I don't need my mom asking me questions. :P
    I just wanted to say I saw your thread about TRIP and man, I wish I had gotten in on that Kickstarter. It looks incredible and I really dig what you guys went for. I think you might have reawoken my game designing urges. Thank you for inspiring me.
    Hello Coolboyman! I want to thank you for taking a look at my thread at Skeetendo and giving me some much needed encouragement! :) So I will definitely not give up on this until I successfully write a new routine for loading the backsprites, but I don't think I can attempt this until I have a better understanding of what I'm doing.
    So this new routine, that is replacing the routine at 0x3F103, should first load the bank of the backsprite into register a. But the bank is already in register a because RAM 0xD0D3 is the last byte of the current Pokemon's base stats and contains the byte of the sprite. And that was the last thing loaded into register a, right?
    Then it needs to uncompress the image found by the pointer that is the 14th and 15th bytes of that Pokemon id's base stats by calling routine 0x24FD, and the uncompressed image is then stored at 0xA188.
    Then the length of the uncompressed image (in bytes) needs to be loaded to register pair BC. And that number of bytes needs to be copied from the address in register HL (0xA188?) to the address in register pair DE (0x9310?) by calling routine 0x009D, right?

    So I think I understand the gist of the process using words, but what would this look like in asm code? And are there any key details that I'm missing that are needed to make this possible?
    Also, how do I determine the value to load to register pair BC when each sprite is a different size?
    And how should I end the routine? (calling another routine perhaps?)
    I would really really greatly appreciate your help with this problem. I'm so much closer than I was when I first messaged you. I feel like I'm so close. But I still need some more assistance until I'll be able to fully understand. Thank you so much for considering my request.

    ~Danny-E 33
    Hello.
    I was told that you know how to repair pokemon evolutions that become broken as a result of using Tile Molester in Fire Red.
    Can you tell me how to do this?
    I just felt like dropping by and saying "Thank you." You've made two of the greatest rom hacks ever, heck you're even in the wikipedia (okay, so what if anyone could have put a pic from brown there? It's been there forever.) main page for rom hacking right under Luner Magic. I know it must have taken a huge amount of your time, and I wouldn't feel right if I didn't thank you for all the work you've done.
    Hello Coolboyman!

    I've made a ton of progress since we last talked, and I've solved most of my problems with putting GSC sprites into Red. I feel dumb for asking some of the questions that I did.. But I still have two problems. I know you're busy, but I could really use your help! :)

    I ended up compressing the sprites with RBY compression, and frontsprites are all right about the same size and they all work great, which I'm very pleased with. But back sprites are originaly 4 tiles x 4 tiles, and GSC backsprites are 6x6. When I insert a new backsprite ontop of the old one, the image does not look like what it should even though the first byte of the image is 66 instead of 44 originally. I'm assuming this is because there is no byte describing the size in the Pokemon's base stats (starting at 383DE) because there is no need to state the size if every sprite is 4x4, unlike the frontsprite which has a byte (55, 66, 77) right before the pointer which matches the first byte of the sprite image data itself. Is there a way for the game to know it's decompressing a 6x6 sprite rather than a 4x4 sprite? There obviously is a way, since you have 6x6 backsprites in Brown, but I can't seem to figure this one out on my own...

    My other issue is one I mentioned before. Since I'm replacing every sprite, and they are compressed, the frontsprites take up about just as much space as they did originally. But since the backsprites were 4x4 images and now they're 6x6 images they take up alot more room. Once I replace enough of the sprites of a certain bank, and the data has been shifted down, I'm sure I will run out of room for the 50+ sprites per bank because of the extra needed room for the backsprites. So my problem is that once I move a sprite to a new bank, there is no byte in the base stats immediately by the pointers to the sprites to determine which bank the sprites are in. I have a very good understanding of pointers now, but I am unsure how to modify which bank is loaded to $4000-$7FFF of RAM memory to fit the new sprites location.
    *EDIT: Alright, this second problem has been cleared up, but I would still like your advice with my first problem on how to stop the game from zooming the 3.5x3.5 used tiles of a 4x4 tile image and displaying it as a 7x7 tile image so that unzoomed 6x6 images will display appropriately. Thanks for reading(: *

    I would love your help right now, as there is no one with a better understanding of RBY and GSC sprites than you, or any subject of rom hacking for that matter. I appreciate all the help you have to offer! :)

    ~Danny-E 33
    hello dude would you please help me i'm making a hack for pokemon ruby and i wanted to make a script using PKSV to allow the pokemon picture to appear while talking to the person like in the hack which is called : Pokemon Ruby Destiny-Life of Guardian i think so and i did every thing right but when i talk to him the pokemon colors appears to different like this : http://imageshack.us/photo/my-images/72/imageerror.png/
    Ill be really happy if you helped and sorry if it was a long message :)
    Coolboyman,

    Thank you for your response! I already increased the ROM size to 2MB a long time ago, so that's taken care of. So, knowing you did option 3 leaves me with a couple questions, if you don't mind.

    Once I locate the front or back sprite of a Pokemon in Gold -which I trust that I won't have too hard of a time doing that on my own- the code I see is the image compressed using GSC compression. I don't know if this is a stupid question, but how am I supposed to obtain the code of the image in its uncompressed form?

    Also, once I have the uncompressed code of the image and I've inserted it into blank space and I've changed the pointers from the 12th-15th byte of the Pokemon's data, I'm confused as to how the game knows which bank to go to. To my understanding, 2 byte pointers are used for offsets that are in the same bank, and if the offset is in a different bank, then a 3 byte pointer has to be used. But the Pokemon image data is spread across several different banks, right? So how does each pointer work correctly if a bank is not specified in the pointers to the images to begin with? And how would I modify it to make sure it points to a new bank if I only have the 2 byte pointers to work with?

    Lastly, if I have the uncompressed data inserted and the pointers are repointed correctly, is there anything I have to change about the decompression routine, or will it recognize that it is an uncompressed image and read it directly on its own without me doing anything to it? I know I have a lot of questions, and it took me a long time to fully explain them, but I would greatly appreciate all the advice you have. Thank you!

    Danny-E 33
    It seems that rijonAdventures' popularity may be stemming a lot from your reputation, hm?

    I see with Hexecute. So everyone uses Hex Workshop actually… interesting.

    I have conquered one of the first milestones in ROM hacking: Successfully inserting music with that damned Sappy.

    The first towering obstacle was obtaining Mid2Agb, which I had to create a 4shared account to download the only working link in the first 10 pages of any Google search for it. Then I had to recreate the XML file removing the accented Es in it as well as properly capitalizing the ROM name, not to mention the hours spent modifying the MIDI for compatibility with the GBA.
    In short, a lot of work, but I find myself lucky to get the crap output to play at all on the game, lol.
    What's your hex editor of choice?

    Hexecute 3 is my personal favorite, because of the word color alternation, and it can load 32MB ROMs, but Page Large Files has to be turned off or it crashes, IDK why :/.
    hey i have rijon adventures 2009 on my android mobile phone i use the emulator gameboid and when the game stars it shows an error code ( 0001) and says the game cannot be completed how can i fix this
    Sometimes I wish your games were legitly available on a physical cartridge so I could play them in my machine. I enjoy the old games a lot better on a physical console and get bored easily in VBA, so if I can sustain boredom so well with your hacks on VBA, imagine how fun they'd be IRL, huh?
    Hello again Coolboyman,

    I've made alot of progress with rom hacking since I last spoke to you, but I still have plenty of questions, if you are willing to take the time to read this. For the purpose of the hack im making of Pokemon Red, I want to replace every front and back sprite with sprites from a mix of Gold/Silver/Crystal spites. From what I've learned since I last talked to you, the compression in GSC is different than RBY. So my question is: What is the best way you suggest to simply replace every red sprite (front and back) with GSC sprites?

    1) Should the GSC sprites be located in the GSC rom and then decompressed from the GSC type of compression and then recompressed with the RBY type of compression and then be inserted in the red rom so that the RBY decompression routine can accurately read the image?
    2) Or should the RBY decompression routine be modified so that it decompresses the same way as GSC so that all sprites can be inserted as they are compressed in the GSC roms?
    3) Or do you think the best way is to remove/bypass the decompression routine and insert all GSC spites in blank space (in a rom with double the size for plenty of room) as uncompressed images?

    I'm not sure which of these solutions is most logical and perhaps you have an even better idea. I would like your opinion on what to do and I would appreciate all the advice you are willing to provide on whatever you think is best, because whatever you suggest, I'm sure I wouln't know how to do it entirely on my own, or where to learn. It's so hard to find new sources of information because 1st generation hackers are hard to come by now. I'm so glad you're still around and I hope you can help me with my hack and help me learn as much as I can. I have one year left in high school and then I'm off to college for computer science. Learning all I can about programing is my passion, and I hope you would like to help me gain all the knowledge I can.

    Sincerely,
    Danny-E 33
  • Loading…
  • Loading…
  • Loading…
Back
Top