Changes and additions, in order of appearance:

* Revised character status summary, also now able to display status effects
* Status effects show up on status menu top area
* Consumable item use and context-sensitive character selection
* Equip from inventory menu
* Resistance indicators in status menu (and that the logic works)
* Paging through equipment information
* Tossing items and attempting to toss items you can't part with



Todo:

* Get equipping logic so you can't do things like equip four swords
* Make magic functional
* Probably improve equipping starting from Equip rather than inventory.
* Start planning a cutscene script system
* Maybe think about the battle system
Cross post from Omnimaga courtesy of Zera.

It just now occurred to me that I should take the opportunity to outline some of the game's mechanics, for those who may be curious. (Although all of these details will be covered in the manual, as well)


Character growth

Characters don't gain experience levels like in conventional RPGs, rather their abilities increase at specific intervals based on the number and rank (challenge level) of enemies defeated.

How much power characters will gain depends on the type of equipment you train them with. For instance, having a character wield a sword will result in their physical attacks becoming stronger over time, and wearing heavy armor will make the character's defense power and hit points rise more rapidly.

With this in mind, the player has free reign over how characters are developed. Although Maya begins the game with extensive training in sorcery, the player could for example deck her out with a sword and a suit of armor. Over time, Maya's hit points, strength and physical defense would skyrocket, but at the expense of neglecting her ability to use magic.

Once a character reaches a certain degree of power, they can no longer benefit from fighting weaker monsters. The player will have no choice but to venture into more challenging areas to continue developing their party. Fighting boss enemies always results in the party being powered up, regardless of the boss enemy's challenge level.

Equipment and inventory system

The party has a shared inventory of up to 32 items max, and each character has four equipment slots: A weapon slot, a shield slot, an armor slot and a slot for armlets / accessories

There are no restrictions on which characters can use which types of equipment, but there are logical penalties involved in using heavier equipment. For instance, heavy armor will allow a character to absorb a lot of damage, but it hampers their reaction speed and limits their ability to invoke magic effectively.

Other rules and restrictions apply to weapon and shield usage. A character can actually drop their shield and grip a weapon with both hands, resulting in stronger attacks; or a character can wield two weapons at once, granted they have enough agility to perform such a feat.

Magic

Any character can learn any magic spell, provided they have enough MP to invoke the spell. Spells are purchased from magic shops scattered throughout the world. A character may memorize up to a maximum of 12 unique spells.

Unlike physical attacks, spells will always hit their targets), assuming the target doesn't have some kind of special resistance to that particular spell.

Character-specific skills and "trigger state"

Aside from magic, there are two other subsets of skills used by characters. First, every character possesses their own unique combat ability. For example, Maya has the ability to "chant" a random spell, but the result is usually marginal. Edmund can "rouse" the party to boost morale, resulting in all characters becoming physically stronger.

Characters additionally have last-ditch attacks that they will unleash when they're brought to critical health. This is referred to as "trigger state," as it triggers a powerful retaliatory attack the moment the character nears death.
It's close to an alpha/early beta release. Over the past month or so, quite a few additions were made:

EDIT: For clarification purposes, some of the equipment/magic is not available in the actual storyline. The screenshots were made using a special save file crafted for debugging purposes. This includes any spell that has 0 cost and the "Circuit" series items.

* Magic menu fully functional and descriptive, including the "Teleport" spell (where applicable).


* Shops now have prices.
* Inns now supported. They can't remove status effects nor revive people, but those who are still alive will benefit.


* Vehicular travel fully supported.


Not shown:
* Equip logic in place, so there's limits to what you can equip where.
* Enemy bitmaps and stat data in place.
* The world of Escheron is fully interconnected. It is possible to explore most of the world now.
* The world of Escheron is fully stocked on treasures.
* Tons and tons of tweaks to collision and maps.

TODO:
* Figure out if the cutscene script system is actually usable.
* Airship-as-NPCs for overworld atmospheric effect and cutscenes.
* Battle system.
* Maybe an actual title screen? I dunno.
Looks great! I can't wait to try this out on my calcs!
Fantastic work Iambian! Looking great.

Quote:
* Maybe an actual title screen? I dunno.


Um, probably Smile
How do you manage the stats and which treasure chests are opened?
Calc_Knight wrote:
How do you manage the stats and which treasure chests are opened?

Short answer: Magic. Lots of it.

Longer answer: Stats are managed with data tables and treasure chests are handled (just like any other event in any RPG) with flags.

Specifically with E:ToR, stats are composed of named offsets into tables (which are, themselves, named offsets into other tables) which are accessed through routines to hide (where possible) all the math needed to access the data.

Treasure chests are tied into the hotspot system, and are defined by location. Treasure chest-type hotspots are automatically assigned ID's and are used to track which flag belongs to which treasure chest.

-------------------
With respect to progress since my last post, I've populated more of Escheron, crafted a number of events that go along with it, and fixed a few bugs that would've otherwise prevented me from doing these events. Along with Geekboy's work on cutscenes, what we hope to have in the end is a fully-scripted world where the player can, from start to finish, be able to enjoy the entire story, even without a battle system. It will be at this point we'll consider a beta release.

Speaking of a battle system... at the moment, it's just a dialog that shows a data dump of information relevant to random/forced encounters. I plan on tackling this beast along with Geekboy after the game is basically playable.

Then after that, a title screen, polish, and maybe some extra content, then that's it. We're done. The end is in sight, hallelujah!
How do you make the tables that contain the stats? Is there a function to get the program to read it because I've been using lists for a game I'm making and at the point I'm at (about 5% done) they've already become sort of difficult to manage and have been taking up a lot of space.

By the way, that female character in one of the gifs looks a lot like Rydia from Final Fantasy 4▫
Calc_Knight wrote:
How do you make the tables that contain the stats?

Tables. this is an example of the table used for equipment stats. Reading this may be necessary to understanding some of the constants used in that file.
Quote:
Is there a function to get the program to read it because I've been using lists for a game I'm making and at the point I'm at (about 5% done) they've already become sort of difficult to manage and have been taking up a lot of space.

An example routine that uses said table. You're not provided with functions; you have to create your own.

I'm thinking absolutely none of this is helpful since it looks like you're coding in BASIC and this entire project is written in z80 Assembler.
Quote:
By the way, that female character in one of the gifs looks a lot like Rydia from Final Fantasy 4▫

We get that a lot.
Thanks for answering my question. Will this game be ported onto the TI-84 CSE or is it only going to be for the TI-84?
Calc_Knight wrote:
Thanks for answering my question. Will this game be ported onto the TI-84 CSE or is it only going to be for the TI-84?


It's unlikely that this will be ported to the CSE (although I can't say for sure because I'm not the one making it) because of how much the game leverages the b/w display. Updating to the CSE would not only require a lot of code changes, but redoing all of the art, which would be a huge undertaking.
The art isn't really much to change. I created the art for my game within an hour and am nearly ready to start programming through the whole thing. I'm at the point in creating the game where I am still planning the majority but am still programming the minority of it. The creator of this game could easily change the sprites from Gameboy quality to SNES quality within an hour or two if they wanted to. I'm not gonna lie, but it is pretty easy if you have something to base your design off of. For example, I'm designing all of my sprites like Final Fantasy IV and everything is going great.
The vehicle travel system looks really neat Smile.
Calc_Knight wrote:
The art isn't really much to change. I created the art for my game within an hour and am nearly ready to start programming through the whole thing. I'm at the point in creating the game where I am still planning the majority but am still programming the minority of it. The creator of this game could easily change the sprites from Gameboy quality to SNES quality within an hour or two if they wanted to. I'm not gonna lie, but it is pretty easy if you have something to base your design off of. For example, I'm designing all of my sprites like Final Fantasy IV and everything is going great.


There will be no ports to the CSE unless it is done via the Mono2Color project. There's simply too much to change for a decent port. These changes would include:

* Art style
* Image collation and storage (which is much more significant than anyone would care to admit, and will not fit in user RAM as it would be)
* Text renderer, LCD updater, sprite and tilemapping routines for the wildly differing render methods
* Tile and sprite abstraction routines to handle the increased screen size
* The tilemaps themselves, which were designed with a 96x64 pixel screen size in mind.

Not only that, but I'd have to rework a pieces of what I might be able to call a toolchain. Python's great, but making new scripts will take time. The project itself depends on CalcGS being the tile and map editor, which would be completely unsuitable for color calc development (as it stands).

And yes, I know exactly what it takes to make a color game happen. This fun game took me about two and a half months to make, and I can safely say that even with a reference, it takes a much longer amount of time than "an hour or two" to craft what few sprites are in there.

A color version of E:ToR is not happening. No way, no how.
I thought it would be a cool idea to show some statistics regarding the the code in E:ToR.
So I had iambian whip some up seeing as he had a program for it.



The menu system contains the most lines of source code and is also the largest file. No surprise there. What is sorta surprising is that the support routines in _common.z80 for most of the menus comes up in 2nd place. The cutscene system comes in third and is still growing.

It must be said that none of the .inc files and none of the binary data are considered in this count, along with all the other non-text assets such as sprites, tilemaps, tilesets, and utilities (some of which I did not write).

Speaking of utilities, might as well show our statistics with regards to Python:

So lets have a minor(major) content update. Iambian has been working on the underdeep, an optional dungeon in E:ToR that is required to get some of the better equipment and loot in the game.

It is a psuedo-randomly generated dungeon each floor is randomly generated based off of a deterministic algorithm to ensure that all of our map requirements are met.

We were uncertain if the maps were being generated randomly enough. To verify this I wrote a small python script to extract some of the randomly generated maps. I exported 20 maps for you all to see Razz




More of them are in this album.
http://imgur.com/a/7Tgwj

The player is randomly placed on these floors. They have a moderate encounter rate, All of which will be with the strongest enemy formations in the game. The dungeon has 8 floors with a dungeon boss as the end. Each map will have an emergency exit and stairs to the next level. Dispersed randomly will also be treasure chests and pots.


For those of you interested in the python script. It is view-able here.

It reads out the raw tileset data and tilemap data from a wabbitemu instance then using the com object wabbitemu exposes. Then use Pillow mangle it into a PNG for your pleasure :p
Mmm, looks fancy! All of these updates are really ramping up the hype for the release, I can't wait!
This reminds of the Ancient Cave from those Lufia games. Lots of special equips and loot with a superboss at the end.
Two days ago, we were supposed to release E:ToR as a closed alpha, but then Zera had to ask a question that went along the lines of "Can we switch party members yet?" That led to delays when I attempted to implement that feature since doing so revealed some other bugs that absolutely had to be dealt with. What was added and fixed:

* Added party management and leader management by way of talking to various NPCs

* Fixed empty character slot handling across the whole menu system.
* Added actual guest NPC loading and support
* With that support, locked out the ability to change magic/equips for guest NPCs.
* Added an event, fixed various spritemap locations, and ... something else?

So, where are we now?

Aside from other things that I may have forgotten about, and aside from the battle engine / major cutscenes, we should be done for the alpha release. Geekboy should have more info on the whole release thing.
So got a little bored. Everyone likes color so we decided to slap mono2color support onto E:ToR. Mateo did a wonderful job with his software. The port to the CSE took less then an hour!



I choose the funny colors. I think it looks cool Razz

That aside it runs about 75% speed as of now. But is definitely still playable. Nothing like adding another piece of hardware you can play this game on Razz.

EDIT: No bad dad jokes allowed Ti-Freak Sad
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 3 of 5
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement