You can help CodeWalrus stay online by donating here. | New CodeWalrus | Old (dark mode) | Old (light) | Discord server
0
In May 2002, I released Mana Force for the TI-83+, my first RPG to use an actual tilemap engine. In 2013, it was translated in English and that version received bug fixes and other changes. And now, in 2015, it will finally be in color!



Screenshot thread: http://codewalr.us/index.php?topic=254.0

Although the original game worked on the 84+CSE (one of my only 83+ RPG that actually ran at all on that calculator), there were some display issues and the lack of any color made it a bit pointless to play on a color screen. Now it is receiving the Doors CSE 8.1 treatment, thanks to the built-in Celtic and xLIBC libraries.

Since this game code is a disaster (there's a Repeat instruction with 31 conditions and lots of spaghetti code), optimizing will probably come later, since the primary goal of this project is to really update the game so that it takes advantage of Celtic 2 color features. Nonetheless, here are the changes that have happened so far (newest additions in blue):

-First TI-OS menu replaced with custom one that appears directly in the title screen. Some options removed.
-Save slots reduced from 5 to 2 due to lower RAM (who needs that many on 1 calc, anyway?)
-Expanded the village to fill the entire home screen.
-Moved stuff around to take advantage of the larger screen
-Renamed Metamorphoses to Jobs
-Massive code cleanup (everything was in a single line of code since back then I coded on-calc and Goto took too long to reach errors otherwise)
-Removed many ClrHome commands and replaced them with a custom (sometimes temporary) screen erasing utility.
-Mana/Item prices decreased to accomodate the lower GP increase, but it takes longer to gain enough gold to buy them.
-Nut item renamed to walnut and Super mage class renamed to Wizard.
-Made intro text uppercase to save RAM
-Got rid of "Welcome to village of hope", as the intro text now mentions you must save that village instead of the kingdom of the same name.
-Decreased experience given per enemy to ensure next level requirement is never higher than 9999.
-Decreased gold given per enemy to 10 times lower its original amount.
-Battles
-Dungeon select screen
-Fix shop
-Replace entire map engine and make dungeons full screen
-Revamp in-game menu
-Replace every Disp command with Output
-Fix magic animations that used 3-bit color mode because the animations are not visible enough
-Remove all lbl and gotos from battle commands selection
-Add boss outro event or animation



Todo:

-Enemy balance (Dungeon 1 through 6, as well as enemies from dungeon 7 are done)
-Better ending
-Extra final boss maybe?

Regarding the TI-OS status bar being erased, I am using xLIBC to do that. To erase the busy indicator as well you must set the LCD to 160x240 mode then back to 320x240 without redrawing the status bar. This is why at the beginning the screen stretches up during a picosecond.

Anyway, enjoy!
Last Edit: April 02, 2015, 06:21:04 AM by DJ Omnimaga
Inicia sesión o crea una cuenta para dejar un comentario
u/Duke "Tape" Eiyeron February 11, 2015, 08:53:31 AM
Heh, 'looks nice at the moment! :p

Quick Edit : olol the filename!
u/Dream of Omnimaga February 11, 2015, 12:06:40 PM
Hehe thanks. As for the file name it's because back then I had the tendency to use the theta character in my file names. This caused problems around 2003-05 when TI started breaking compatibility with TI-Graph Link software. This version of the game will eventually ditch the theta character in all sub-program names.
u/Snektron February 11, 2015, 01:23:35 PM
Looks good! And i use a theta always to mark a program as source
u/Dream of Omnimaga February 12, 2015, 07:26:27 PM
Thanks. :)

One idea I had recently for that empty space at the top of the screen was using xLIBC text to fill it with an HUD. I could display the character level, HP, MP, Mana, experience needed for next level and gold pieces there. I could perhaps display the character class too. That would allow me to get rid of the in-game stats menu.

However, there is one problem: xLIBC number display routines only allows numbers from -9999 to 9999, so in order to display next level experience properly I need to either write a routine to split the number in half and to display it where it should or to edit the battle victory rewards and item costs so that you never need more than 9999 gold and 9999 experience. Changing experience requirements might prove to be problematic if they alter the game difficulty considerably.

That empty screen area would be very handy, though, because I can fit up to 76 characters there:

u/Snektron February 12, 2015, 09:35:54 PM
Or you could make gold/exp harder to get? also wouldnt it just be gold/9999 and gold % 9999 to display it?
u/Duke "Tape" Eiyeron February 12, 2015, 09:36:13 PM
Or just *10 all the things! :p
u/Dream of Omnimaga February 12, 2015, 10:40:36 PM
Yeah that's what I meant by changing experience requirements actually. Enemies  would give much less experience in thw process as well.
u/CKH4 February 12, 2015, 10:53:05 PM
Cool project. I'd divide every number that might go over by five or ten if I were you but I think that this is more of an opinion question.
u/Dream of Omnimaga February 13, 2015, 01:00:04 AM
The main issue is I need to ensure I still get gold and exp vs weak monsters. If I got enemies giving 1 exp and others 12 then if I add 1 to every enemy but divide by 10 one monster will give 1 exp and the other 2, which is where significant balance problems can arise.
u/Yuki February 13, 2015, 01:27:08 AM
You can always code a BigNum library and store your gold/XP in base 10000. And yeah that area would be handy for the HUD.
Last Edit: February 13, 2015, 01:38:24 AM by Juju
u/Dream of Omnimaga February 13, 2015, 05:19:50 AM
I will check how experience per level was calculated. If it was LV^3 like I think, then I'll just change requirements to LV^2.

For items, prices used to be like this without the Bargainer job equipped (items are 50% off with it):

Herb: 10 Gold
Nut: 100
Potion: 1000
Ether 10000

There was also no maximum of gold you could carry on you.

Now it will be the following:
Herb: 6
Nut: 50
Potion: 400
Ether: 2000

And the max amount of gold you can carry at a time will be 9999.

Mana will cost 3 GP to replenish instead of 10.


Also a minor update: I removed the Welcome to village of hope screen from the game and made the intro include mention of that village. I also made the entire intro uppercase because lowercase letters take twice more RAM. The 5th boss, which kept appearing at random locations on the screen, was also replaced and no longer moves. This was glitchy as hell and annoying anyway.


EDIT: Now instead of giving (EnemyLV*2)^2 experience points, enemies will give (EnemyLV*2)-1. Next level requirement is now CurrenLV^2 instead of CurrentLV^3. For gold, they will now give 5 times less the original amount.

EDIT2: Some speed improvements have occured, thanks to the custom screen clearing program now allowing partial clearing. Also, I am slowly moving most controls from (-)/ENTER/numpad  to 2nd/ALPHA/Fkeys, so that your fingers always remain at the top of the calc. Some cosmetic changes occured as well. You can see how the game looks like below and I also created a screenshot thread.

Last Edit: February 13, 2015, 07:42:22 AM by DJ Omnimaga
u/Ralph Worthington February 13, 2015, 01:26:21 PM
I can't seem to get this to work on my calculator. It makes the program name instead of thetathetathetathetaMANA, in DoorsCSE it makes it thetathetathetathetaMANAJ. Yeah, nine characters. I can't do anything with it!!! When I try to open it from the menu, it opens Frogger???
u/Dream of Omnimaga February 13, 2015, 03:15:01 PM
Seems very strange. Have you considered backing your data up then reseting your RAM? I havent heard of such issue before.
u/Dream of Omnimaga February 15, 2015, 07:05:39 AM
Update: Some work on the HUD has been done tonight. It was finally implemented in the village and shops and now shows actual values rather than just placeholder text. Also, the HP and MP now shows in red if they're too low:



It flickers, though, since text has to be stored in a string prior running the xLIBC text routine. tr1p1ea should probably change that in xLIBCE. >.< But it does the job well.
Start a Discussion

b/[Completed] First Fantasy Series (TI-84+CSE/84+CE/83PCE)

Dream of Omnimaga's TI-83 Plus BASIC RPG from 2002 called Mana Force has made it to the TI-84 Plus C Silver Edition ,TI-84 Plus CE and TI-83 Premium CE and a sequel titled First Fantasy II: Pokéwalrus was released in 2023!

17
Topics
Explore Board
Website statistics


MyCalcs | Ticalc.org | Cemetech | Omnimaga | TI-Basic Developer | MaxCoderz | TI-Story | Casiocalc.org | Casiopeia | The Museum of HP Calculators | HPCalc.org | CnCalc.org | Music 2000 Community | TI Education | Casio Education | HP Calcs | NumWorks | SwissMicros | Sharp Calculators
Powered by EzPortal