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

First Fantasy II, a graphical TI-84+CE RPG using CE Textlib hax

Started by Dream of Omnimaga, March 18, 2016, 08:29:15 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Dream of Omnimaga

This is the new map layout for when all 4 paths are open:



Once loaded, the game will only update the 10 tiles near the entrances and erase the middle of the screen. I still need to find a way to do that in an efficient way, though (eg without too much code repetition). This might also look confusing to the player when all entrances suddenly opens up then closes back, though, so if that's the case then I might add a LOADING... message in the middle of the screen.

I tried to keep the entrances as small as possible to keep redrawing to a minimum.


All NPC dialogue will show up in the middle of the screen, erasing only the treasure chest, character or whatever's located there. That will ensure a faster-paced engine, since the map won't need to be redrawn over and over.

Also I think villages might be like Chrono Trigger, where you enter houses from the world map instead of warping in an actual town map. Otherwise I might just set a special flag so that the walking engine/warp engine behaves differently in them.
  • 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

Update:

This might not seem like much, but thanks to @JWinslow23 help, I improved my use of Lbl/goto-based sub-routines by using a trick he taught me, so now I can call the sprite display routine from anywhere in my code and it will return where I was at :D.

The following demonstrates it:



But the walking engine will not use a sprite like in the above GIF. I will draw the main character using three rectangles instead. I am just showing this slower sprite alternative as an example of what JWinslow23 trick let me do. Basically, I could probably make the entire game into 2 sub-program (including the ASM lib) if I can cram it under 64 KB by using this trick, unless I had so many sub-routines that the ones located too low in the code became too slow (since Goto is slow to reach low labels)

By the way, this is my first BASIC program to use Goto since June 2004. :P

EDIT: Here is a screenshot with the main character drawn using rectangles. It is being erased then moved in just 1 CE Textlib execution for speed, but the flicker is still a bit noticeable (it might be the emulator, though):

  • 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: Collision detection for walls and switching between maps is now implemented! Notice how I redraw maps when switching to save speed  :D


It was a major hassle to implement, because stuff kept being updated in the wrong direction >.<.  I still need to implement special rooms. Should I keep the Loading text in the middle or remove it?


In other news, here is a title screen idea from earlier (title is not final but I tried a papyrus effect):

The text is rendered from image data stored in a list, just like Wal-Rush! CE title screen, but this time I am using 1x4 and 4x4 blocks instead of 12x4, which is why there's a slanted effect. The color and the first row lenght of each character are dynamic. And yes, apparently 1x4 blocks are possible too :P

And no, sadly the title screen is not CSE-compatible (CSE textlib hacks don't work with rectangle horizontal position and width. Only vertical offset and height works):
https://img.ourl.ca/wabbitemu-11.png
  • 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

Dudeman313

Well, eventually, the loading text is going to get extremely annoying. But the game looks fast in comparison to the actual FF Mana for the CE. :)
The title screen's pretty cool, but have you noticed that the letters can look a bit warbled to the left?
  • Calculators owned: TI-84 PCE
  • Consoles, mobile devices and vintage computers owned: Android O Phone
Does this qualify as a signature? 
The answer is "Sure."


Dream of Omnimaga

  • 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

Dudeman313

So, Yam is really a yellow dude with a red shirt and jeans, but can use magic and swords and lives in a dungeon fantasy world? :P
  • Calculators owned: TI-84 PCE
  • Consoles, mobile devices and vintage computers owned: Android O Phone
Does this qualify as a signature? 
The answer is "Sure."


Dream of Omnimaga

Erm, Yam is only in the first First Fantasy game. Even in the Mana Force series on monochrome calcs he wasn't in the 2nd game (although in the 2nd game it was a similar character called Tornado (although you could change the name). If this CE Textlib RPG becomes an actual First Fantasy II game then it will use real humans or humanoid characters.
  • 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

Dudeman313

Quote from: DJ Omnimaga on March 26, 2016, 01:41:59 AM
Erm, Yam is only in the first First Fantasy game. Even in the Mana Force series on monochrome calcs he wasn't in the 2nd game (although in the 2nd game it was a similar character called Tornado (although you could change the name). If this CE Textlib RPG becomes an actual First Fantasy II game then it will use real humans or humanoid characters.
Oh. I didn't know that.
You will give them cool names, though, if a CE TextLib FF II becomes a thing, right?
Online name generators don't always do the trick, but I'm an ever-flowing fountain of ideas and inspiration.
  • Calculators owned: TI-84 PCE
  • Consoles, mobile devices and vintage computers owned: Android O Phone
Does this qualify as a signature? 
The answer is "Sure."


Dream of Omnimaga

I don't know yet about FFII. It's possible that the hero might just be referred to as you or the master, depending of the storyline.

Also I am working on the story right now, as well as designing text boxes. No code was written yet, but basically the story is set after the world caught fire and Evil Dust caused chaos. Magic was born from said dust, then survivors used that magic power to seal their villages from it. But the magic barrier is weakening and threatening survivors from being exposed to the Evil Dust (being exposed too long causes death unless you're like some warrior or something). I think the main character will be another type of god-like character like Yam, sent to save the world. Later in the game you also learn a hint about what the big fire and dust originated from and eventually why the barrier is weakening and how to fix it.

I think the world map will be laid out to have the main village surrounded by forest and rocky valleys, some of which must be unlocked. THere might be a village later as well, but I'm unsure.

The magic system will most likely be very simple, relying of course on CE Textlib to do the animations. Whether the battle screen will be like the NES Dragon Warrior or switch to an entire different scenery has yet to be deciced.

By the way, dialog boxes will be 16x4 characters:
  • 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

Dudeman313

Oh, cool.
I can help with enemy sprites if you need them. How big might they end up being?
And how might a battle screen look like?
  • Calculators owned: TI-84 PCE
  • Consoles, mobile devices and vintage computers owned: Android O Phone
Does this qualify as a signature? 
The answer is "Sure."


Dream of Omnimaga

I think I might be fine actually, but I'll keep that in mind :) I don,t know yet.

EDIT: Here's a mockup of what battles could look like:

  • 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

Dudeman313

Quote from: DJ Omnimaga on March 27, 2016, 01:53:50 AM
I think I might be fine actually, but I'll keep that in mind :) I don,t know yet.

EDIT: Here's a mockup of what battles could look like:


Cool. :)
What kind of monster is that? :P
Will there be some sort of hurt animation as well?
  • Calculators owned: TI-84 PCE
  • Consoles, mobile devices and vintage computers owned: Android O Phone
Does this qualify as a signature? 
The answer is "Sure."


Dream of Omnimaga

This is some sort of dude with 6 arms, but each level are different colors. I'll have an hard time making good sprites of this size :P And technically, the sprite above is actually 4 sprites stuck together. As for animations I was mainly contemplating some CE Textlib animations, but probably not big flashes to avoid having to redraw the entire map. For magic casted on you the animation will most likely involve your stats bar flashing.

That's of course if I keep this battle layout, though. The game will most likely be less elaborate than First Fantasy I in the way that there would not  be character classes, but I'm still looking for some character customization. Perhaps I could add bonus stats after level up like in Uvutu but still have other stats increase.
  • 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

Dudeman313

Quote from: DJ Omnimaga on March 27, 2016, 02:00:36 PM
This is some sort of dude with 6 arms, but each level are different colors. I'll have an hard time making good sprites of this size :P And technically, the sprite above is actually 4 sprites stuck together. As for animations I was mainly contemplating some CE Textlib animations, but probably not big flashes to avoid having to redraw the entire map. For magic casted on you the animation will most likely involve your stats bar flashing.

That's of course if I keep this battle layout, though. The game will most likely be less elaborate than First Fantasy I in the way that there would not  be character classes, but I'm still looking for some character customization. Perhaps I could add bonus stats after level up like in Uvutu but still have other stats increase.
Oh, okay, but I was referring to its...hat?

That's okay. Maybe for character customization, there could be armor or the ability to change character colours?
And there's always the classic skill tree.
  • Calculators owned: TI-84 PCE
  • Consoles, mobile devices and vintage computers owned: Android O Phone
Does this qualify as a signature? 
The answer is "Sure."


Dream of Omnimaga

What about the hat? :P And yeah, color changes might be an idea, but it will have to be colors that are not the same color as the floor.
  • 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