Page 2 of 2

Re: Pokemon Purple

PostPosted: 30 September 2012, 18:07
by chickendude
Why is there so much flicker? I like the pokéball sprite/animation, though i'm not exactly where you're throwing it (it looks like you've got quite an arm!) and it seems to open in the air? What is the animation for? For catching a pokémon or sending a pokémon out to battle?

Re: Pokemon Purple

PostPosted: 30 September 2012, 18:43
by tifreak8x
This is for using a pokeball. I've got most of the items working, pokeballs are the next big thing I'm worrying about before I go working on attacks.

And sadly, the only way I can do this with BASIC while using the asm sprite program benryves made for me is to display the sprite and then display it again, which erases it without the need to recall pics and such. For being mostly basic, it doesn't look THAT bad, does it? D:

And sorry! I had forgotten to update with the pokemon on the screen :<

Image

Image

This is with the 'cloud' or 'explosion' animation for the pokeball opening. Thoughts?

Re: Pokemon Purple

PostPosted: 01 October 2012, 15:06
by chickendude
Ah it looks much more natural with the pokémon on the screen :) I just asked because it seemed like you were erasing the whole screen then drawing the next one. I guess you're just erasing it very quickly? It doesn't look bad, the flicker just surprised me since that part was coded in assembly.

Re: Pokemon Purple

PostPosted: 01 October 2012, 15:37
by tifreak8x
Ah. Yeah, the sprite display is in asm, just the data it receives in regards to location and sprite data is still coming from BASIC, so that will slow it down a bit.

The pokeball is actually getting displayed twice in each spot, so it appears and then is erased when the second display is done. :)

Re: Pokemon Purple

PostPosted: 01 October 2012, 16:22
by chickendude
I just made a little program and here's what i came up with:
Image

I also draw the ball twice, but i don't update the screen when i draw it again (to erase it), so it gets erased in the "buffer" but not on screen. That way there is always a ball on the screen, because the next time the routine is called it draws the new ball (the old one has been erased, but the screen hasn't been updated yet) and then redraws the screen. So it looks like the old ball has moved since there's always something onscreen. Do you use those pokéball sprites for anything else? You could just embed them into the program (like i've done) or load them the first time you run the program into a location in saferam to have quick access to them, but i don't think you need to worry about it being slow (mine has a huge delay every iteration, otherwise the pokéballs go/spin smoking fast).

EDIT: Here's the same program with the delay removed:
Image

EDIT2: And here's another version with the spinning ball gradually slowing down:
Image

Re: Pokemon Purple

PostPosted: 01 October 2012, 19:38
by NanoWar
Looks fantastic, also the cloud/explosion when the ball opens! And chickendude is very right about the screen update issue. :)

Re: Pokemon Purple

PostPosted: 01 October 2012, 20:50
by tifreak8x
Yeah, I kind of figured that with the way the sprite routine works, but I couldn't see a way to get around it without adding even more asm, and I'm trying really hard not to need more :p Did you write all of that out in asm, chickendude?

The pokeball sprites will be used everytime you go into battle, so it looks like you are throwing your pokemon out there, plus any time you use one of the 4 pokeballs available in the old games. That's about it. It was pretty much going to be imbedded into each instance it was called, don't need more sub programs running around to only do one tiny thing.

Re: Pokemon Purple

PostPosted: 01 October 2012, 23:36
by chickendude
Yeah, i wanted to see why it was flickering and ended up just playing with it for an hour or so :)

And what i meant was that those pokéball sprites are only used by that asm program, right? If you don't use those sprites outside of that routine it would probably just be more efficient to insert them into the sprite routine. Err... or are you just using your normal sprite routine to draw it?

Re: Pokemon Purple

PostPosted: 02 October 2012, 03:05
by tifreak8x
Actually, that sprite routine is used to display all the pokemon sprites for battle, because people complained about how slow my BASIC program was displaying them. benryves wrote that up, but he's been gone for over a month, so Kerm modified it to XOR instead of OR sprites on the screen. There are many other places where that sprite routine is used through out the game. :)

Re: Pokemon Purple

PostPosted: 02 October 2012, 12:23
by chickendude
Ah ok, i didn't know. At first i thought it was specific to the pokéball bit since you said Kerm/JamesV helped you put it together, then i saw it was just changing or to xor and didn't know if you were now using two versions of the same routine (one xor, one or) or just using xor routine for everything.

Btw, how much space do the pokeball sprites take up on calc?

Re: Pokemon Purple

PostPosted: 03 October 2012, 00:10
by tifreak8x
Ah, sorry I didn't make that overly clear :< It's just a specialized sprite displayer, since I needed one to recognize the hex value 'G' in the sprite data to help with 'compression'. lol

Re: Pokemon Purple

PostPosted: 09 October 2012, 02:15
by tifreak8x
Image

This is the animation that I think I'm going to stick with. Now to make it actually catch pokemon based on the things needed.

Re: Pokemon Purple

PostPosted: 09 October 2012, 05:11
by chickendude
That's awesome! Seriously! And that level 5 Bulbasaur totally kicked the crap out of your Psyduck (and put it to sleep no less!) ;)

Re: Pokemon Purple

PostPosted: 09 October 2012, 10:13
by tifreak8x
Haha, yeah, it's just temp data so I could test item usage and stuff. :p

Re: Pokemon Purple

PostPosted: 13 October 2012, 17:46
by Madskillz
ha looks cool, nice work tifreak. I love the little shake and the break free.

Re: Pokemon Purple

PostPosted: 13 October 2012, 19:34
by tifreak8x
Thanks! Weregoose and others on Cemetech helped get that perfected. Now I have to add in the equations to determine how many shakes it does if it isn't caught, and all that fun stuff.

Re: Pokemon Purple

PostPosted: 14 October 2012, 04:21
by chickendude
So... i've decided i'm finally going to get an 84+SE. When will i be able to play? :D

Re: Pokemon Purple

PostPosted: 14 October 2012, 15:28
by tifreak8x
lol

I'll try to get up something playable within the next few months :p Hopefully I don't get too many distractions to where I can actually work on things. Working on finalizing the pokeballs right now, actually.

Re: Pokemon Purple

PostPosted: 15 October 2012, 10:21
by NanoWar
Ahw chickendude, I just realized that I'll never be able to play this on my TI83+, right? :(
Checking eBay for TI-84+SE now... haha.