Join us on Discord!
You can help CodeWalrus stay online by donating here.

First Fantasy II: Pokéwalrus (Pokémon-inspired game with 3 vs 3 battles)

Started by Dream of Omnimaga, September 05, 2016, 11:52:41 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Dream of Omnimaga

So this project is not official yet, but the recent release of  Ricsan's image to grosged Sprite lib data converter might eventually change this. The main challenge of a Pokéwalrus game was the conversion of the sprite sheet, because of how each walrus sprites have different sizes and are not aligned on a grid in the sprite sheet.

Anyway, for now, I have 96 sprites out of 150 converted (the next one to convert is the musical note walrus), but they are not scaled up because I have not decided which size they will be in the future (most likely 400%)


To avoid having to use a different palette for each walrus, I decided to lower the overall quality to 32 colors (my image editor won't let me convert exactly to 36), so the result is this, but it should do the job I guess:


I also cropped some even further because I want to keep each walruses 35x35 in battles.

Also unlike @Scipi (and most likely @c4ooo ) respective WalriiMon games, my game will probably not have anything to do with Pokémon, other than having to catch them all. Basically instead of controlling a trainer you would control :walrii:, who would recruit other walruses in his team to save the world (the rest of the story is undecided, but will involve some bad guy). The game would happen several years in the future, after a nuclear war where only undersea creatures survived, all of which mutated over the years as various walrus species, but I think some humans will remain on some island. Battles would be similar to Pokémon, but with the layout from Dragon Warrior for the NES.

Anyway so far I'm still in the process of converting the data, which will take a long while, but nowhere as long as without that tool. I will also need to get rid of the Rep+" that the software generates because it wastes RAM.

EDIT:



48 of them are in calc format for a total of 36 KB. Some are larger than the rest so I am curious if I can fit 75 in one sub-program...
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Dream of Omnimaga

Good news! I have finally converted all 150 sprites, as well as the title logo!



I also noticed there were 156 sprites in the sprite sheet above so I removed the last 6. The game will require the entire 150 KB of RAM to play I think (but again, FFMF wasn't super big).
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

p2

In the name of DJ Omnimaga I hereby poke all of you so you dont forget to post, too. DJ doesn't want to tripple-post...  :ninja:


By the way DJ when will you decide about the used sprites? As you mentioned some are gonna get added, some are gonna kicked out ^^ will you start a public discussion or evan a poll? or will you decide yourself? :)
  • Calculators owned: ti-83+, ti-84+, ti-84+, ti-84+se, ti-84+se(te), ti-nsphire, ti-nsphire CAS, ti-nsphire CX-CAS, ti-voyage, ti-voyage, Who reads this list anyways...?
Anyway war sucks. Just bring us your food instead of missiles  :P ~ DJ Omnimaga (11.10.2016 20:21:48)
if you cant get a jframe set up, draw stuff to it, and receive input, i can only imagine how horrible your game code is _._   ~ c4ooo (14.11.2016 22:44:07)
If they pull a Harambe on me tell my family I love them ~ u/Pwntear37d (AssangeWatch /r/)
make Walrii great again ~ DJ Omnimaga (28.11.2016 23:01:31)
God invented the pc, satan the smartphone I guess ~ p4nix (16.02.2017 22:51:49)

c4ooo

"48 of them are in calc format for a total of 36 KB. Some are larger than the rest so I am curious if I can fit 75 in one sub-program..."
Well as i said in IRC, a program can only hold 2^16 bytes, so i am afraid you are going to have to put them in subprograms if you want to fit all. ;)

Dream of Omnimaga

@c4ooo the first 48 walruses were mostly the larger sprites because I converted them in order of the Walrii fanart post. As I converted more, the program size increased less. But I also added title screen data to the 2nd data program so both sizes are kinda even now. And yeah a program cannot be larger than 65535 bytes IIRC, hence why I am already using sub-programs.

@p2 the decision has been made for a long while actually, back when this project was still being planned for the HP Prime. This game includes the 1st gen walruses. If somebody ever ports XCOPY to the TI-84 Plus CE then I will also include the 2nd generation sprites. However I removed 6 walruses from the game because I discovered that the first sprite sheet contained 156 instead of 150.

Also, I decided to split each set of Walrii data into smaller chunks, using If/Then/Else and Return commands, so that it takes less time to go through each program.

Regarding NPC's and events I think it might work like Dragon Warrior, where pressing the action button opens a menu with commands, such as TALK, BATTLE (so you can fight the NPC to recruit him and register him in your Walriidex), SEARCH (trigger other events) and PARTY (you will probably be able to carry 3 walruses with you for battle). Of course, wild walruses will also exist. Main game bosses will probably give stars or orbs that unlocks certain game areas, Mario 64 style.


I am aiming to keep the game as small as possible, so some mechanics will be simple, especially attack move animations. The walrus level will be the same for all walruses in the game, like in Mario RPG, walruses will not evolve and the types will most likely be Fire, Water, Bolt, Leaf, Mech, Undead, Tech, Psy, Normal, Flying, Angel, Poison and Special.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

c4ooo


Dream of Omnimaga

It copies archived programs into a temporary RAM program, kinda like xLIB and xLIBC's program copy functions, except that it's standalone. It also features options to delete one of the temporary XTEMP00x program or all of them at once.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

c4ooo

That should be easy to do in asm. I guess I could write it for you, just probably tomorrow.

Dream of Omnimaga

Well it depends. It seemed like Mateo seemed interested too, so try to be careful to not write a duplicate lol.

Anyway if you do this you should maybe put it on ticalc.org, in a  separate CW topic, TI-Planet and Cemetech archives or let TI-Planet staff put it in their archives, because that might be handy for a few people, not just for BASIC coders. For example if some person has a lot of large math/science programs and prefers running most of them without having to manually unarchive them all the time.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Unicorn

Woah, this looks quite awesome! That speed with the sprites is quite impressive; a Pokemon game does not really need much speed anyways, right?
  • Calculators owned: I own all of them: PICKACHUP TI 84+ CSE TI 83+ SE TI something something ??? ??? ??? ??? ???
  • Consoles, mobile devices and vintage computers owned: PICKACHUP ??? ??? ??? ??? ???



??? ??? ??? ??? ???

Dream of Omnimaga

Thanks. The speed is actually a bit slow because when loading a walrus sprite I need to provide its ID and the calc has to go through an endless string of If commands with large string data before finally finding the right data and exiting that program. It might not seem like something that is normally slow, but said program is over 55 KB large, so that's a crapload of code to go through. I allievated the problem by grouping walruses into packs of 25 with three nested If/then/else blocks, so the speed is much greater than it originally was (although as a result, the speed at which walruses load varies depending of which one you try to load):

Walrus 1 to 25 and 76 to 100: Faster
Walrus 26 to 50 and 101 to 125: Medium
Walrus 51 to 75 and 126 to 150: Slower

And that's because I only want to load one at a time since they wouldn't fit at once in memory, unless one day grosged implemented real-time sprite scaling.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

c4ooo

Quote from: DJ Omnimaga on September 08, 2016, 01:21:05 AM
Thanks. The speed is actually a bit slow because when loading a walrus sprite I need to provide its ID and the calc has to go through an endless string of If commands with large string data before finally finding the right data and exiting that program. It might not seem like something that is normally slow, but said program is over 55 KB large, so that's a crapload of code to go through. I allievated the problem by grouping walruses into packs of 25 with three nested If/then/else blocks, so the speed is much greater than it originally was (although as a result, the speed at which walruses load varies depending of which one you try to load):

Walrus 1 to 25 and 76 to 100: Faster
Walrus 26 to 50 and 101 to 125: Medium
Walrus 51 to 75 and 126 to 150: Slower

And that's because I only want to load one at a time since they wouldn't fit at once in memory, unless one day grosged implemented real-time sprite scaling.
Lol. I had the same problem with levels in the original tibasic version of lazer. All 50 levels where just a bunch of if-then statements :P

Dream of Omnimaga

Reuben Quest series also had similar issues. IIRC I added a few extra Return commands at the end of some If blocks but it was not enough to stop the massive lag when you tried to walk around and hit a wall. I can't imagine how bad it would have been in Pokéwalrus if the CE had a 15 MHz z80.
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

p2

uh right u already saw reuben3? :D it's awesome  :thumbsup: (sadly it's not released yet but he's working on it) ^^
(I'm helping soru finding bugs in it) ^^
Here it is: https://ourl.ca/21881
  • Calculators owned: ti-83+, ti-84+, ti-84+, ti-84+se, ti-84+se(te), ti-nsphire, ti-nsphire CAS, ti-nsphire CX-CAS, ti-voyage, ti-voyage, Who reads this list anyways...?
Anyway war sucks. Just bring us your food instead of missiles  :P ~ DJ Omnimaga (11.10.2016 20:21:48)
if you cant get a jframe set up, draw stuff to it, and receive input, i can only imagine how horrible your game code is _._   ~ c4ooo (14.11.2016 22:44:07)
If they pull a Harambe on me tell my family I love them ~ u/Pwntear37d (AssangeWatch /r/)
make Walrii great again ~ DJ Omnimaga (28.11.2016 23:01:31)
God invented the pc, satan the smartphone I guess ~ p4nix (16.02.2017 22:51:49)

Dream of Omnimaga

Yeah I replied to the Cemetech topic about Reuben 3. I liked the improvements on the map, although it was a bit weird to see sand replaced with grass below the first dungeon :P, but I guess if the game happens some time after Reuben 2 then maybe a big monsoon happened in the meantime lol.


Also did you know that Soru remade Reuben 1 in Axe and Reuben 2 in ASM in 2014?
  • Calculators owned: TI-82 Advanced Edition Python TI-84+ TI-84+CSE TI-84+CE TI-84+CEP TI-86 TI-89T cfx-9940GT fx-7400G+ fx 1.0+ fx-9750G+ fx-9860G fx-CG10 HP 49g+ HP 39g+ HP 39gs (bricked) HP 39gII HP Prime G1 HP Prime G2 Sharp EL-9600C
  • Consoles, mobile devices and vintage computers owned: Huawei P30 Lite, Moto G 5G, Nintendo 64 (broken), Playstation, Wii U

Powered by EzPortal