Omnimaga

Calculator Community => Major Community Projects => Pokémon Purple => Topic started by: tifreak on February 13, 2013, 06:19:57 pm

Title: Pokemon Purple
Post by: tifreak on February 13, 2013, 06:19:57 pm
Just posting up here that I'm still chipping away at things. I know Omnimaga has focused more on the Nspire, not really sure how many people still look forward to BASIC 84+ games anymore.

Anyways, pokeball catching is nearly ready to be tested. Everything is written except for the actual catch.
Title: Re: Pokemon Purple
Post by: DJ Omnimaga on February 13, 2013, 06:27:08 pm
Heya and nice to see you around again :)

In fact the TI-84 Plus is still dominating hardcore here, although more Axe and less ASM. The Nspire is still popular but it was way more popular when Lua and Ndless were still new. Nowadays the only Nspire project that still seems regularly active is Linucx. I guess TI is to blame, though, because when they constantly tried to block downgrades and Ndless software it pretty much alienated all the causal programmers.

Anyway glad to hear that the game is still progressing. :)
Title: Re: Pokemon Purple
Post by: Sorunome on February 13, 2013, 06:42:00 pm
since how long are you making it now O.O
but glad to hear it isn't dead! :D
Title: Re: Pokemon Purple
Post by: tifreak on February 13, 2013, 06:57:01 pm
Sorunome, I think the project is 8 years old now? Though I do keep getting distracted by life and not working on it for a couple of months at a time.
Title: Re: Pokemon Purple
Post by: TIfanx1999 on February 13, 2013, 07:39:55 pm
Yea, Z80's are still really popular here, I'd say more so than Nspires. Good to see you around and still working tifreak. :)
Title: Re: Pokemon Purple
Post by: Hayleia on February 14, 2013, 01:13:02 am
Just posting up here that I'm still chipping away at things. I know Omnimaga has focused more on the Nspire, not really sure how many people still look forward to BASIC 84+ games anymore.
??? Where did you see that ? Omnimaga is not anti-Nspire but it is not pro-Nspire either, it is just that people have projects and present them, whether they are in 84+ Basic or in Axe or in Lua or in ASM or in C. And in the new posts, I only see two Nspire projects from Omnimaga: Linux and DD2X. The other things (like Ndless+ or the custom bootscreen) are crossposted news from TI Planet.
Title: Re: Pokemon Purple
Post by: Radical Pi on February 14, 2013, 12:50:09 pm
I'm glad to see this project is still alive! I'm still looking forward to it, regardless of how long it's been (wow, 8 years already?) or how much longer it will take.
Title: Re: Pokemon Purple
Post by: DJ Omnimaga on February 14, 2013, 04:16:51 pm
If I remember, Omnimaga had a Pokémon Purple sub-forum since September 2005. It started a while before, though.
Title: Re: Pokemon Purple
Post by: Sorunome on February 14, 2013, 07:03:43 pm
That is pretty impressive, I don't think I'd be able to work so long on the same project.
Title: Re: Pokemon Purple
Post by: TIfanx1999 on February 14, 2013, 07:04:06 pm
Radical Pi? Wow, I haven't seen you in... /me checks last post date...
 over a year. Wow, how are you? You going to start stopping by annually now? :P
Title: Re: Pokemon Purple
Post by: tifreak on March 04, 2013, 07:15:33 am
Thanks for all the encouragements :) I've taken a slight pause on this to work on something else in preparation for the release of the 84+C. It's nothing huge, and shouldn't take long to have completed and ported across all the calcs. You can read about that one here: http://ourl.ca/18460/340560;topicseen#new

The pokeball code is ready to be tested, I think. I just have to create a program that allows me to manipulate the lists and such like statuses and hp points, and of course to make sure that all the needed programs are there :p Though I might cheat and have a Return in a certain part so I don't have to worry too much about that.
Title: Re: Pokemon Purple
Post by: DJ Omnimaga on March 06, 2013, 03:37:10 am
Do you plan to make a TI-84+CSE version of Pokemon purple (without the scrolling)? :P
Title: Re: Pokemon Purple
Post by: tifreak on March 06, 2013, 04:31:29 am
As of now, no. Just want to get the normal version finished.
Title: Re: Pokemon Purple
Post by: DJ Omnimaga on March 06, 2013, 04:39:33 am
Ok I see but yeah i understand lol. Maybe afterward it would be nice, although I wouldn't mind if it was just to fix the screen size issues and remove the scrolling for speed reasons, without bothering about colors :P

Also for people who wondered how long it has been since this project was discussed on Omni, here is the original Pokémon Purple thread from October 2005: http://www.omnimaga.org/index.php?topic=-2016.0 (Mind the glitchy posts)
Title: Re: Pokemon Purple
Post by: tifreak on March 06, 2013, 05:00:48 am
Heh, yeah, that was a looooong time ago. I didn't realize what it was I was getting myself into :p It's undergone 2 complete rewrites since then.
Title: Re: Pokemon Purple
Post by: Adriweb on March 06, 2013, 07:35:48 am
Ah, I didn't rememebr it started such a long time ago :P
(Also yes, a color version would be quite cool lol (but slower ?)
Title: Re: Pokemon Purple
Post by: tifreak on March 06, 2013, 08:12:55 am
From what I've seen, slower is an understatement. :/
Title: Re: Pokemon Purple
Post by: Sorunome on March 06, 2013, 08:54:32 pm
I think he should first finish the normal version, but yeah, a color version would be kinda cool :D (or a sound version?)
Title: Re: Pokemon Purple
Post by: DJ Omnimaga on March 07, 2013, 03:57:32 am
I think he should first finish the normal version, but yeah, a color version would be kinda cool :D (or a sound version?)

Tifreak, I think he wants you to port Pokémon HeartGold & SoulSilver to calcs. O.O
Title: Re: Pokemon Purple
Post by: Roboman on September 05, 2013, 12:49:36 pm
Necro-post for my favorite thread  :ninja:
About the sprite drawing, iirc you kinda gave up and made the pokemon sprites drawn by asm because basic was too slow...
Why can't you use that text-sprite trick(the one with the for loop displaying characters).  Wouldn't that display the pixels fast enough to make drawing the pokemon fast enough to be viable in basic?
Title: Re: Re: Pokemon Purple
Post by: DJ Omnimaga on September 05, 2013, 04:57:10 pm
Text sprites would be an idea I guess, although I wonder if file size would skyrocket?
Title: Re: Pokemon Purple
Post by: meishe91 on September 05, 2013, 05:03:05 pm
The size may or may not be an issue. While hex data represents four pixels in every one "number" (he is using hex right?), text sprites would be five pixels (I believe) to every one character stored, but vertically instead of horizontally. So there is promise there. However, there is one, or two or something, combinations that are not possible with text sprites. (If I remember everything correctly...) But also, when you get to size, you may end up having a whole extra row of data because you have...16x16 (?)...sprites, which isn't divisible by 5 evenly...So that could be where you're wasting space.

(By the way, I am extremely tired...so if the above statement does not make sense, let me know and I'll try to rewrite it. I also didn't bother doing the math because I'm far too lazy for that as of right now.)

EDIT:
Okay, I did some math now. Since I'm fairly sure all his Pokemon are 16x16 the size wouldn't actually change at all. This is because with hex you are storing 4 characters for the columns (4 is the number of pixels per number, so 16 / 4 = 4) by 16 characters for rows (since you need a new character for each new row) while if you use text sprites you will have 16 column characters by 4 row characters (5 * 4 = 20; 20 > 16). If you used 3 row characters you'd be missing an entire row.

However, this changes if he were to use 32x32 sprites (which I think he is for the NPCs?). In which case you'd have 8x32 characters for hex (8 = 32 / 4), while you'd have 32x7 for text sprites (7 * 5 = 35; 35 > 32). So, you'd have 256 characters per every hex sprite, and 224 for every text sprite. Which turns out to be a 32 character difference.

I believe my math is correct, somebody correct me if I'm wrong.

Anywho, what I basically mean by this is that size isn't really an issue. The only issue, assuming what I said is correct, is that text sprites don't represent every combination of pixels. So if you had a Pokemon sprite that used specific combination of pixels you'd either have to go without those pixels, change the entire sprite so it doesn't use that combination, or write in a specific case in the display routine that will turn that pixel on (which...isn't a bad idea really...).
Title: Re: Pokemon Purple
Post by: Roboman on September 05, 2013, 08:25:13 pm
I thought of that.  But i'm pretty sure the unavailability of certain combinations does not take into account symbols you cannot type in normally(#,@...).
I'm glad this looks promising :D  I was a bit sad when he announced doing the pokemon sprites with asm.

EDIT:
Also, check this out   ;) http://tifreakware.net/tutorials/83p/b/misc/2dsprite.htm
It's on his site, idk if he forgot about it or had good reason to not use text sprites  XD
Title: Re: Pokemon Purple
Post by: meishe91 on September 05, 2013, 08:55:52 pm
Nah, I'm pretty sure even with the extended characters you can't. I remember making a text sprite maker a long time ago and making sure there wasn't any hidden character that fills them in. (I'm pretty sure you have to use some for the combinations...)

Oh, and he most certainly knows how to use them. I mean it's tifreak :P He just has his reasons, such as the none-usable combinations or speed or something.
Title: Re: Pokemon Purple
Post by: Roboman on September 05, 2013, 09:22:52 pm
Well, it looks like textsprites save a lot of speed and a nice amount of size.  Considering there are 151 pokemon sprites (+ backsprites?)  it would be well worth it to add a little bit of code and data to swap out the pixels of the sprite he cannot* make work with characters.

*cannot is not the same as will not
Title: Re: Pokemon Purple
Post by: meishe91 on September 05, 2013, 09:53:06 pm
But they don't save any size unless he converts the 32x32 sprites to them. And they don't necessarily save speed. It all depends on the algorithm you write. (Which, knowing him he'd optimize that crap out of it until it was as small/fast as possible.) I mean I'd be willing to bet the assembly version is much faster because, well, it's assembly. It's inherently much, much faster than TI-BASIC. Assembly will also give a very smooth animation as everything will display evenly, if not instantaneously, from the speed. Text sprites need to be drawn either straight left to right, with a five pixel skip interval vertically, slowing down slightly the further into the string you read.

But again, I'm assuming he has his reasons for using assembly instead of text sprites.
Title: Re: Pokemon Purple
Post by: Roboman on September 05, 2013, 09:59:17 pm
Yeah, but the point of pokemon purple is to push ti-BASIC to its limit, to make the best possible game with BASIC
Title: Re: Pokemon Purple
Post by: meishe91 on September 05, 2013, 10:03:07 pm
Yes, but the other point is that it's his game and he has his reasons. Which, he has them. Honestly, he's probably considered all of this before (or maybe not, I can't read his mind). For all we know, the assembly is smaller and better. Ultimately though, it's not our choice. It's his.
Title: Re: Pokemon Purple
Post by: DJ Omnimaga on September 05, 2013, 10:21:15 pm
One thing I wonder, though, is that since Tifreak has been doing TI-BASIC for 17 years and knew this trick for at least 7 years (if not longer), then there must be a reason why he's not using it. The project started in 2005, but back then it didn't even have sprites yet.

Btw, are every combination of pixels possible using text sprites? If they aren't, then it's possible that this might be why he isn't using that trick.
Title: Re: Pokemon Purple
Post by: meishe91 on September 05, 2013, 10:30:20 pm
Ya, that's what I was saying. He's well aware of the method, but there is some reason he isn't. Whether it's speed, size, or something else.

Also, no if I remember correctly. There are most combinations but not all. I can't remember how many though, I think it's like 2...but not entirely sure. Z, or somebody, would know :P And ya, that's what I was saying in my longer post. That he'd either have to go without that set and substitute something else in OR he'd have to write in a specific statement that says "if this is a combination that doesn't exist, use the closest combination and turn on the correct pixels manually".
Title: Re: Pokemon Purple
Post by: DJ Omnimaga on September 05, 2013, 10:35:27 pm
Yeah and since in BASIC, every bit of speed is important, maybe he can't afford to add extra conditionals for missing pixels. D:
Title: Re: Pokemon Purple
Post by: Roboman on September 05, 2013, 10:35:59 pm
The best way to know for sure is to ask him XD  when was the last time he was on?  Somebody should poke him
Title: Re: Pokemon Purple
Post by: DJ Omnimaga on September 05, 2013, 10:42:57 pm
He seems pretty busy lately because he's hardly on anymore. However, since he uses dial-up, he can't easily access Omni either.
Title: Re: Pokemon Purple
Post by: meishe91 on September 05, 2013, 11:13:10 pm
Dial-up is still a thing?
Title: Re: Pokemon Purple
Post by: TIfanx1999 on September 06, 2013, 08:24:21 am
Not gonna repeat what's been said already, but what it boils down to is any other method he tried did not have acceptable speed. I'm sure if he could have found a decent alternative he would have. He wanted to make it pure BASIC as much as possible.
Title: Re: Re: Re: Pokemon Purple
Post by: DJ Omnimaga on September 06, 2013, 12:09:45 pm
Dial-up is still a thing?
yes, some USA areas (mostly farms) only have dialup as available service. Xeda's parents have the same problem and they live in New York state.
Title: Re: Pokemon Purple
Post by: tifreak on September 06, 2013, 06:45:48 pm
Hi guys, wow, this thread got busy lol

To answer the question in regards to the sprites: I had taken the time to hand convert every sprite in the list, and I had a BASIC hex2sprite interpreter that was decently fast for what it is, however, people begged and poked to get it moved to asm, and benryves, the amazing programmer he is, managed to make it so it was in asm, using my compression method, and even gave it the ability to reverse the sprite direction. Recently (like, last year) we edited the code to xor the sprites, so now I can do animations with it. I promise I have not given up on this project, btw. The CSE has taken my eyes away from it for a bit so I can at least get a few games out before someone else does ;) lol I have looked at the code lately, just trying to figure out how best to test the pokeball catch routines that I wrote.

And before you go all 'well, you wanted mostly basic', This game is.. Around 120kb in size? It's massive. Just huge. I have maybe, MAYBE 2kb in asm, but I'm pretty sure it's less. That is like 2% of the game is asm, so I think that still qualifies as being mostly basic, right? :p

As to my internet, I'm no longer on dialup, I'm on radio internet, which gets me around 1Mbps download speed. Not the greatest, but oh so much faster than dialup. I can at least youtube fairly easily now.
Title: Re: Pokemon Purple
Post by: Roboman on September 06, 2013, 07:22:11 pm
WB! :D
Glad to see you have better internet.
And WOW, its huge!!!  The sprite drawing is so tiny in comparison XD
Title: Re: Pokemon Purple
Post by: DJ Omnimaga on September 07, 2013, 01:42:19 am
Glad you got better internet lol. Dial up is so ancient. Wasn't radio Internet really expensive, though? X.x (like $500 a month)

Also I understand about the work that was put into converting the sprites one by one. It would take ages to convert everything to hex string or even write a converter. The work that was put into this game so far is absolutely impressive and I'm happy it's not dead. :)
Title: Re: Pokemon Purple
Post by: gamzeeLover on October 19, 2013, 09:35:19 pm
hey how can i get this? i have the ti 83 plus but idk how to use it
Title: Re: Pokemon Purple
Post by: Roboman on October 20, 2013, 11:42:48 am
I don't think you can get a very recent version, the last demo was released quite a while ago.
Also, it is usually not the best idea to necro-post a thread just to ask for a download...
Title: Re: Re: Pokemon Purple
Post by: DJ Omnimaga on October 20, 2013, 12:22:40 pm
I think in this case it would be fine, since tifreak could have subscribed to the topic and might know where the most recent version is. It's likely that the ticalc.org version is still the latest, though, and it dates back from before most forum members started school.
Title: Re: Pokemon Purple
Post by: rw24 on March 05, 2014, 10:13:52 am
Could you port it to the CSE?
Title: Re: Pokemon Purple
Post by: DJ Omnimaga on March 07, 2014, 01:18:08 am
If he ever did this, he would have to get rid of map scrolling, else it would just be too slow. He could use xLIBC, but I think his goal was to use as less ASM as possible for this project to show how capable TI-BASIC can be.
Title: Re: Pokemon Purple
Post by: tifreak on June 30, 2014, 02:00:30 pm
Huh, totally missed this post, sorry about that.

There are plans for a CSE version to go all out, once I get more done with the non color version, which is waiting on me to get Calcopoly playable :p

So, yeah.
Title: Re: Pokemon Purple
Post by: Streetwalrus on June 30, 2014, 02:04:30 pm
Cool to hear you plan to finish it ! :D This is one of the projects I checked out back when I was a newb and necroposted Ash:Phoenix. Looking forward to it ! ;)
Title: Re: Pokemon Purple
Post by: DJ Omnimaga on June 30, 2014, 03:57:14 pm
If you make a CSE version, will it use home screen for scrolling or xLIB?
Title: Re: Pokemon Purple
Post by: tifreak on June 30, 2014, 04:13:58 pm
For the CSE version, I'll be going all out with xlibc sprites and the like. No sense in just going part way, will hopefully be able to use the non color as a basis for it.
Title: Re: Pokemon Purple
Post by: DJ Omnimaga on June 30, 2014, 04:15:56 pm
Ah ok  I was wondering since for the 84+SE version your goal was to make it as pure BASIC as possible like with Illusiat 13 and even today most of your CSE programs are still pretty much pure BASIC with minimal Celtic2CSE usage (for example, none of your programs are fullscreen).
Title: Re: Pokemon Purple
Post by: tifreak on June 30, 2014, 06:09:16 pm
Well, I dunno, LibHelper takes up tons of screen ;) lol

Trust me, I have plans for the CSE, and xlib usage. I would like to bring Age of Darkness Revenge to life like it never could have been on the older calcs (or it could have been had I taken time to work with xlib then)

I have a hundred ideas, and not enough time to implement them all. :< Eventually, Pokemon Purple will be pretty on the CSE screen, and all shall celebrate \o/
Title: Re: Pokemon Purple
Post by: neuronix on July 06, 2016, 05:30:56 am
Pokemon Purple have been abandoned?
Title: Re: Pokemon Purple
Post by: Runer112 on July 06, 2016, 09:54:19 am
Pokemon Purple have been abandoned?

I can't definitively say anything about the state of this project, but it would definitely be nice if it's still in progress. In the meantime, if you're looking for a finished Pokemon game for the 83+/84+, I would recommend Pokemon Topaz (http://www.ticalc.org/archives/files/fileinfo/453/45353.html). To avoid hijacking this thread, though, any further discussion about Pokemon Topaz should happen in its thread (https://www.omnimaga.org/ti-z80-calculator-projects/pokemon-topaze-(axe)/).
Title: Re: Pokemon Purple
Post by: Eeems on July 06, 2016, 01:06:02 pm
From what I can see on Cemetech it isn't https://www.cemetech.net/forum/viewtopic.php?t=8704&start=20