Conversation Between Blah and PokéMew
Showing Visitor Messages 1 to 15 of 19
-
March 5th, 2016 11:27 AMPokéMewWell I sure don't know how to do that lol, I guess hit me up whenever you've developed said code :P Thanks a bunch :D
-
March 5th, 2016 10:24 AMBlahso you need to make it display without using show poke pic. We're trying to dev some code to make it display 80x80 sprites :D
-
March 5th, 2016 8:44 AMPokéMewThanks! This should be a lot easier for me now.. So I found a sprite, I'll use this one:

Inserted, it looks like this:

-
March 5th, 2016 4:46 AMBlahLets go at it one step at a time. First step, you should try to display the OAM alone, through a person script, similar to the show poke-pic. It should be just 64x64. We'll work towards displaying the cut-off parts after that.
-
March 4th, 2016 7:58 PMPokéMewJeez this is confusing considering I'm still a noob at writing ASM :/
So, what I would have to include in the routine is loading the location of my image in the ROM I assume, uncompressing it in the external RAM using swi 0x11, calculating the position of the first window then adding 8 tiles in each direction, and finally loading each of those frames? Obviously I'd need specific functions in the routine other than that, but is this the basic layout of it? If it isn't I'll probably just step off of this until I know more XD -
March 4th, 2016 4:14 PMBlahYou have to use swi 0x11 in your ASM routine. I'd recommend doing something like this in C instead.
-
March 4th, 2016 2:15 PMPokéMewOh there is no doubt this is beyond my current ability, but it's much needed for my hack :/ Anyways, from what I understand I need to calculate the position of the first window, then add 8 tiles (64 pixels) to the coordinate depending on which window is next.. I'm stuck on the first part though, how do I uncompress my image into EWRAM.. (Bare with me lmao) Aside from that I really just dont know what specifically I am inserting. I dont think I'm editing anything because there are dozens of instances of object template in the game :/
-
March 4th, 2016 12:42 PMBlahHmm, this might be a little beyond your current abilities, no offense. Well, in FireRed, there's a function which is used that can spawn an OAM if you provide it with something called an object template. The function is called template_instanciate_forward_search in IDA.
The object template struct has a member called, "resource" which is basically formatted like this:
pointer graphics (4 bytes)
image size (2 bytes)
image tag (2 bytes)
What you want to do is first uncompress the 80x80 sprite into EWRAM, then while in EWRAM calculate the starting position of the tile for the first window, then second then third then fourth. These are tiled images, so the image should be in 8x8 tiles in memory. Once you do that it's simply:
template_instanciate_forward_search(template_1, x, y, 0);
template_instanciate_forward_search(template_2, x + 64, y, 0);
template_instanciate_forward_search(template_3, x, y + 64, 0);
template_instanciate_forward_search(template_4, x + 64, y + 64, 0);
The function here will work out assigning a tiletag and copying your image from EWRAM to VRAM.
It would be a good idea to "bind" the objects using an objcallback, but save that for later. First try getting what I described above to work -
March 4th, 2016 12:24 PMPokéMewThanks for the info in my thread earlier, and I hope it's fine that I bring this convo to VM's cause I think I'll have several more questions for this topic XD. At this point, lets say I've inserted the 80x80 image and want to display it on the pokemon menu for instance (that sounds simpler than battles for now). I guess the goal would be to get a 128x128 frame by calling 'the function' four times. My question is, which function is 'the function,' and how can I call it so that it knows to put 2 of them horizontally and 2 of them vertically? Thanks :P
-
June 8th, 2015 6:54 AMPokéMewOk, thanks! I'm sure I can change the required var in that case. One last thing if you don't mind.. Do you still do requests in the ASM resource thread? I can understand if you're too busy.
-
June 8th, 2015 6:06 AMBlahYou can set 0x8000 multiple times. If you're familiar with some basic ASM you can change the required variable to something else besides 0x8000
-
June 7th, 2015 7:26 AMPokéMewBy yes, you mean I can set 8000 multiple times, or yes I can set another variable besides 8000?
-
June 7th, 2015 6:07 AMBlahIt's a temporary variable, so yes you can. Most of those routines shouldn't conflict with eachother.
-
June 6th, 2015 9:12 AMPokéMewHey FBI, I have another question if you don't mind.. I've noticed 90% of your routines in the ASM Resource Thread require var#8000 to be set. I'm trying to figure out whether or not I can set that var multiple times for various routines (I want to use multiple routines in my hack from your resource thread) or if Im allowed to set other vars besides 8000. Thanks
-
June 4th, 2015 5:28 PMPokéMewAh alright, thanks :p

