Omnimaga

Calculator Community => Discontinued => Major Community Projects => Escheron: Shadow over Ragnoth => Topic started by: Zera on March 05, 2010, 08:25:15 pm

Title: Escheron: Presage of Darkness
Post by: Zera on March 05, 2010, 08:25:15 pm
Whence things have their origin,
Thence also their destruction happens,
According to necessity;
For they give to each other justice and recompense
For their injustice
In conformity with the ordinance of Time.


I have been working on some ideas for a prequel to Shadow over Ragnoth. The story takes place several centuries before the game's events, and details the War of Heaven, along with mankind's struggle to claim the gods' abandoned power for themselves. You assume the role of Anaximander: A knight in the historic kingdom of Osgoth. This is a solo adventure, only featuring one playable character. (akin to game's like Dragon's Quest) The battle sequences are done in a similar style as Shining Force, or Fire Emblem. You're tasked with exploring an area of map with a limited movement scheme, and engage in turn-based battle sequences with targets on the map. There will either be a primary objective, (such as defeating a boss) or you will face a random encounter where you must defeat all present enemies. (or escape)

(http://img690.imageshack.us/img690/4268/image2jn.png)

Anaximander's abilities aren't necessarily limited to that of a classical knight archetype. He'll gain spells throughout the course of the game, and be able to find equipment that will grant him passive abilities. (such as a random chance to counterattack when struck by an enemy)

Battles will feature short animations between character and enemy interactions. This might be a two-frame animation of Anaximander swinging his sword, for instance. There will also be some kind of spell animation, whether it consists of just a couple of frames, or some spell effects that simply flash on the screen. There won't be any need for masking, as the character and enemies will have their own reserved space; and any effects that are super-imposed on top of them would be large enough to cover most of the graphic, anyway. I don't want to do anything extremely fancy and technically-pressing. This is intended to be a fairly short and straightforward explanation of events prior to Shadow over Ragnoth, to set the stage for the game's history.

Status engine-wise, I wanted to go with something much more simple. There will only be a handful of basic statistics, and their ranges won't span very high. I haven't decided on character growth, but I may go with a traditional experience level system. There won't be things like elemental modifiers, per se. I wanted to do something where certain suits of armor would provide protection against specific spells, or allow enemies to have this protection as part of their natural defense. (likewise for the converse)

Platform-wise, I thought it might be interesting to give TI-86 a try. Bearing in mind its technical limitations, I thought a monochromatic game with just a handful of assets might be easier to fit into memory.
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on March 05, 2010, 09:38:03 pm
mhmm quite nice. Someone would have to find a text and sprite routine for the TI-86, though, for the following reasons:

1) TI-86 BASIC is by far much slower than TI-82, 83, 83+ and 85 BASIC. A 4 fps game on a 83+ would run at 2 on a 86. If sprites were displayed pixel by pixel or using lines(, it would take a long while. If no sprite routine for BASIC coders exists on the 86, we're screwed. In terms of TI-BASIC speed, the TI-86 is almost a Casio.

2) In any BASIC language, it is impossible to use custom font routines. We would have to resort to using an ASM routine for that. If none exists for the 86, we're screwed.

3) Code is much larger on the 86 than any other TI calc, even when tokenized. While 96 KB is a lot of RAM for a BASIC RPG, on the 86, memory may get filled up much faster than you expect. Splitting the game into chapters might still be necessary.

Otherwise, this would be very feasible on a 83+ with the help of xLIB or Celtic III (preferably the later since OS 2.53 MP won't run xLIB). The game would just need to be adapted for the smaller screen

I like the layout, though. Also if done on 83+, overworld can be 3 level grayscale if we desire, as long as there is no scrolling and that the floor doesn't contain any single pixel of gray. 4 level could be possible too, but then the game would have to be SE-only

Otherwise, for 83+, there's axe parser, but I am not sure if it allows the making of massive games.

For the font routine, it could be possible on the 86 to have a custom routine to display letters, but it would be like this:

Quote
{8,5,12,12,15,0,26,5,18,1,27->L1
For(Z,1,dim(L1
If Z=1
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=2
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=3
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=4
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=5
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=6
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=7
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=8
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=9
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=10
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=11
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=12
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=13
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=14
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=15
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=16
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=17
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=18
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=19
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=20
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=21
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=22
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=23
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=24
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=25
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=26
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=27
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=28
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=29
Then
<code to display the corresponding char pixel by pixel or line by line>
End
If Z=30
Then
<code to display the corresponding char pixel by pixel or line by line>
End
End
Where <code to display the corresponding char pixel by pixel or line by line> would display the corresponding list character at the corresponding location. I never coded for the 86 but it,s just to give an idea. Unless someone have a different smaller way, it might be extremly large x.x
Title: Re: Escheron: Presage of Darkness
Post by: Zera on March 05, 2010, 09:43:37 pm
As far as custom font routines are concerned, would that be feasible with Celtic or xLib?
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on March 05, 2010, 09:49:45 pm
it would. In fact it would be faster. However, Celtic III and xLIB are not avaliable on the TI-86. The code on the 83+, if I guessed correctly, would be smaller, but yeah it would probably still be much slower than using the default TI fonts.

Another thing: the TI-86 is barely used anymore in the TI community. It was discontinued somewhere around 2001-2003 and never was as popular as the TI-83 and 89 series before. A game for it would probably have a much poorer audience.

EDIT: Now that I think about it: if Axe Parser gets support for external TI-BASIC variables such as being able to read from Str1 inside Axe, the font routine could be done in Axe.
Title: Re: Escheron: Presage of Darkness
Post by: Zera on March 05, 2010, 09:58:27 pm
I see your point. I was looking at the technical specs and thought it was kind of interesting as a platform, but I didn't realize how unpopular it also is. On the other hand, everything I've been working on so far is easily adaptable to a 96x64 resolution:

(http://img651.imageshack.us/img651/3787/image2d.png)

I want to go ahead and post a bit more info about the setting and storyline, to set things up:

Chapter 1: The Hand of Fate

Anaximander begins training in Osgoth's Lyceum with other knights from his brigade. During this time, the player is given a tutorial as to how to function in combat.

Night falls, and Anaximander is approached in his quarters by his comrade and best friend, Heraclitus, who informs him that Lord Democritus has requested an audience with his most trusted men. By Heraclitus' recommendation alone, Lord Democritus has agreed to include Anaximander as part of a secret order. This order is tasked with the eradication of an underground faction said to be plotting a coup against the royal family.

Hoping to earn the Lord's trust and further his rank, Anaximander accompanies Heraclitus' brigade to the remote region of Wynn. A gathering of mages, and their families, are spotted in a small encampment within the forests. The males are put to slaughter, believed to be insurgents; but Anaximander begins to question his orders when Heraclitus calls for the murder of both women and children. Heraclitus demonstrates the slaughter of a young girl, claiming the seeds of their people should be wiped from the earth. Anaximander, in indignation, relinquishes his rank, and stands his ground against Heraclitus and the remaining forces of the brigade. Anaximander is inevitably overpowered and left for dead...

Dispassioned over the actions of his former comrade, Anaximander sets out on his journey to uncover the truth behind this new order, and the underlying intentions of Lord Democritus.
Title: Re: Escheron: Presage of Darkness
Post by: Iambian on March 05, 2010, 10:00:27 pm
I think Zera wanted that project done in ASM, since he asked me about the project before I went ahead in started playing PvZ. (I still am, but I get some nice time in between the endless sea of zombies)

I wasn't sure about how ASM is accomplished on the 86 models, but I did mention to Zera that the audience for the TI-86 is rather poor. I suggested the Nspire since I ventured to say that more people have those calcs, but a monocrhomatic game wouldn't sit very well with that calc's superior specs.

EDIT: Dang. This thread's going FAST! (lol)
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on March 05, 2010, 10:19:33 pm
Aaah ok, I guess if someone did it in ASM it would solve every problems :P

Btw, in ASM it would be cool in the way that it could be like a very small E:SoR related game for the people who prefer smaller files. I think it has been a decade since the last time a ASM RPG under 20 KB came out for the 83+ series.

Also Iambian if you think this thread is going fast then you missed the TI Helper thread earlier today. There were 9 new posts within 15 minutes :P
Title: Re: Escheron: Presage of Darkness
Post by: ztrumpet on March 05, 2010, 10:23:38 pm
This is awesome!

I'd recommend sticking with the 83/84.  They have the largest audience, and it is what E:SoR is for.  (Note how I'm now typing 'E:SoR' not 'ESOR'. ;D )

Amazing storyline!  (And Elmgon gets your talent?  Wow!  Thanks again!)

Edit: Wow, DJ beat me to a post! ^-^

I like the little Asm RPG idea.  It sounds really cool! :)
Title: Re: Escheron: Presage of Darkness
Post by: Zera on March 06, 2010, 12:00:06 am
Figured I would throw another mock-up out there...

(http://img534.imageshack.us/img534/1167/image62.png) (http://img40.imageshack.us/img40/1355/image682.png)
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on March 06, 2010, 12:03:21 am
OOooh nice!!!

Btw with Celtic it would also be possible to allow the user to choose between different text windows styles, if you wanted this to be added.
Title: Re: Escheron: Presage of Darkness
Post by: Zera on March 06, 2010, 01:04:41 am
I'm not sure about that. In order to maintain spacing in the font, there is actually a separate font that blends in with the window border. I may need to redo this, as it seems like too much extra technical work.

Also -- penises and nipples. :P

(http://img202.imageshack.us/img202/5074/image654.png)
Title: Re: Escheron: Presage of Darkness
Post by: trevmeister66 on March 06, 2010, 01:17:54 am
^

;D lol
Title: Re: Escheron: Presage of Darkness
Post by: Eeems on March 06, 2010, 01:31:03 am
XD
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on March 06, 2010, 02:55:55 am
LOL
Title: Re: Escheron: Presage of Darkness
Post by: Hot_Dog on March 06, 2010, 03:47:21 am
Dude, those are sweet
Title: Re: Escheron: Presage of Darkness
Post by: ztrumpet on March 06, 2010, 10:25:55 am
Nice screenies!  ;D

All battles are 1vs1, right? :)
Title: Re: Escheron: Presage of Darkness
Post by: Zera on March 06, 2010, 10:53:29 am
Nice screenies!  ;D

All battles are 1vs1, right? :)

Sort of. You fight multiple targets, but only one at a time. Each action you take brings you to the combat screen, where there's a short animation and details about the attack you use; then it returns you to the map screen where each target moves around and plans their actions.
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on March 06, 2010, 01:03:20 pm
by moving around do you mean like Zelda II: Adventure Of Link? You would have to only display about 2-3 at once and if it's 2 or higher, have enemies be able to go through walls. Maybe have them look like some spirits or ghosts outside battle, like evil forces pursuing you (or almost), else, if you have more than one enemy moving at once on the map where you walk around in a screen, good luck getting a framerate higher than 1.5 frames per seconds
Title: Re: Escheron: Presage of Darkness
Post by: Eeems on March 06, 2010, 01:08:41 pm
Unless of course he uses axe or pure asm.
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on March 06, 2010, 01:14:28 pm
yeah, but for the former Axe would have to add support for external BASIC variables reading, so the Axe program knows where your character is gonna be located on the map upon entering execution and for collision detection (unless sprites are done in a way that pxl-test( detection is possible)
Title: Re: Escheron: Presage of Darkness
Post by: Zera on March 06, 2010, 04:13:39 pm
by moving around do you mean like Zelda II: Adventure Of Link? You would have to only display about 2-3 at once and if it's 2 or higher, have enemies be able to go through walls. Maybe have them look like some spirits or ghosts outside battle, like evil forces pursuing you (or almost), else, if you have more than one enemy moving at once on the map where you walk around in a screen, good luck getting a framerate higher than 1.5 frames per seconds

It's more like Shining Force, or Fire Emblem; or Final Fantasy Tactics. You, and several enemy units, appear on a battle map. You each take turns moving around the map. Entirely turn-based movement. When you are near an enemy, you can choose to attack them upon your turn. This transfers you to an action scene (in the mock-ups) where you view a short animation of your attack, and whatever text corresponds to the resulting effect. (how much damage was inflicted, whether or not you gained a level, etc.) After your attack is completed, you're transfered back to the battle map. It's not a one-on-one constant battle -- you only transition to the action screen when you register an attack command against an enemy unit. Example (http://www.youtube.com/watch?v=E1MCLMRKklQ).

I finished defining some rules for the status progression system. The main difference from other RPGs is that experience is not a large pool that constantly accumulates. You will be given a small requirement for reaching the next level, which resets upon leveling-up, or slightly increases the required value for the next level.

I'm still working on a statistic to define turn initiative and movement range; and critical rate.

The character's primary statistics are HP, MP, ATT, DEF and base evasion. The accuracy of physical attacks merely check the evasion of the target being attacked. Each target has its own base chance of evading an attack. The player character may slightly improve his evasion by equipping shields.

ATT and DEF represent damage and damage reduction, respectively. Each represents a formula where the damage is slightly dynamic:

DEF/4..total DEF (round up) - generate a random number between these values to determine damage reduction from a single enemy attack

ATT/2..total ATT (round up) - generate a random number between these values - subtract damage reduction to determine damage output against a single enemy

If 0, credit 1 point. If critical, multiply by 1.5. If targetting weakness, ignore target DEF.

Enemies give small amounts of exp., ranging from 1-10 points. Bosses automatically increase the player level by 1. Each level gives a small HP and MP bonus, and very rarely, a natural improvement in ATT and DEF or combative skills.

 ------------------------------------------------------------------------------
| LV | HP | MP | Evade | Other                                            | EX.|
|----+----+----+-------+--------------------------------------------------+----|
| 01 | 12 | 08 |  n/a  |  ...                                             | 20 |
| 02 | 14 | 09 |  n/a  | ATT +1                                           | 30 |
| 03 | 16 | 10 |  n/a  |  ...                                             | 30 |
| 04 | 18 | 11 | 01/48 |                                                  | 30 |
| 05 | 20 | 13 | 01/48 | ATT +1; DEF +1; 01/60 chance to counterattack    | 40 |
| 06 | 22 | 14 | 01/48 |  ...                                             | 40 |
| 07 | 24 | 15 | 01/48 |                                                  | 40 |
| 08 | 26 | 16 | 01/48 | ocassionally resist poison (1/2)                 | 40 |
| 09 | 28 | 17 | 01/48 |  ...                                             | 50 |
| 10 | 30 | 19 | 01/48 | DEF +1; 01/40 chance to attack twice             | 50 |
| 11 | 32 | 20 | 01/48 |  ...                                             | 50 |
| 12 | 34 | 21 | 01/40 |  ...                                             | 50 |
| 13 | 36 | 22 | 01/40 |  ...                                             | 50 |
| 14 | 38 | 23 | 01/40 |                                                  | 60 |
| 15 | 40 | 25 | 01/40 | ATT +1; 01/40 chance to counterattack            | 60 |
| 16 | 42 | 26 | 01/40 | ocassionally resist paralysis (1/2)              | 60 |
| 17 | 44 | 27 | 01/40 |  ...                                             | 60 |
| 18 | 48 | 28 | 01/40 |  ...                                             | 60 |
| 19 | 50 | 29 | 01/40 |  ...                                             | 60 |
| 20 | 52 | 32 | 01/32 | ATT +1; DEF +1; 01/20 chance to attack twice     | 70 |
| 21 | 56 | 34 | 01/32 |  ...                                             | 70 |
| 22 | 60 | 36 | 01/32 |  ...                                             | 70 |
| 23 | 64 | 38 | 01/32 |  ...                                             | 70 |
| 24 | 68 | 40 | 01/32 |  ...                                             | 70 |
| 25 | 72 | 43 | 01/32 | DEF +1; 01/20 chance to counterattack            | 70 |
| 26 | 76 | 45 | 01/32 |  ...                                             | 70 |
| 27 | 80 | 47 | 01/32 |  ...                                             | 80 |
| 28 | 84 | 49 | 01/24 |  ...                                             | 80 |
| 29 | 88 | 51 | 01/24 |  ...                                             | 80 |
| 30 | 92 | 54 | 01/24 | ATT +1; DEF +1                                   | 80 |
| 30+| +1 | +1 | 01/24 |  ...                                             | 99 |
 ------------------------------------------------------------------------------
 
 The player may progress as high as level 30. After that, a dagger appears next to the level, and exp. required is set to 99. Further levels are not indicated, and only increase HP and MP by 1. (essentially, the player may level-up indefinitely)
 
 Although not displayed beyond 99, HP and MP can be raised as high as 255.
 
 If counterattack or double-attack feats are gained, these are reported as "combat skills improved."
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on March 06, 2010, 05:06:36 pm
I wanted my char to have 9999999999 HP D:

j/k

Nice and interesting. I like the increases and abilities learned at some levels
Title: Re: Escheron: Presage of Darkness
Post by: ztrumpet on March 06, 2010, 05:41:45 pm
Nice! 
What level will you finish the game at?
Title: Re: Escheron: Presage of Darkness
Post by: Zera on March 06, 2010, 05:56:29 pm
Nice! 
What level will you finish the game at?

Not determined yet. It's still in its infant stages.

I pieced together a short animation demonstrating battle animation:

(http://img20.imageshack.us/img20/2870/animation1eo.gif)
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on March 06, 2010, 06:39:19 pm
darn awesome!

I think when he opens his mouth, it should only take half a second before fire appears, though
Title: Re: Escheron: Presage of Darkness
Post by: Zera on March 06, 2010, 08:17:46 pm
darn awesome!

I think when he opens his mouth, it should only take half a second before fire appears, though

This isn't technically accurate of what might appear in the game, by the way. I had to piece this together in Animation Shop. It was kind of tedious to measure all the timing, since I was throwing things together frame-by-frame. :P

(I'm hoping the animations can be more robust in the actual game, though.)

I've been working on some ideas for player spells, and I wanted to create something more fun; and less restrictive than what I used in Shadow over Ragnoth. Here are some of the spells I've decided on so far: (names are subject to change)

Augury - Reveals the current / max HP of the target enemy, as well as its weakness. (if applicable) Use of this spell does not conclude the player's turn.

Neutralise Poison - Removes poisons from the player. This spell does not conclude the player's turn.

Sanctuary - Lifts the player from the field of battle, returning them to the safe harbour of a nearby village.

Lesser Restoration - Restores 12..24 HP to the player.

Blight - Smites an undead creature, instantly destroying it without any chance of failure.

Inferno - Renders a volcanic fount beneath the target enemy, inflicting {cvlv/2} damage. (fire damage)

Chain Lightning - Strikes a target enemy with a bolt of lightning that inflicts {clvl/3} damage, has a 50% chance of striking twice. (lightning damage)

Valour - Bolsters the courage of the player, increasing ATT by 4..8 points. (up to 4 rounds)

Firebrand - Enchants the player's weapon with the essence of fire, allowing it to unleash an inferno each time an attack is dealt. (up to 4 rounds)

Silver Fleece - Enshrouds the player in a silver mesh, increasing DEF by 2..6 points. (up to 4 rounds)

Alacrity - The player's initiative becomes critical, and their movement range is increased by 1 sq. (up to 4 rounds)

Palisade's Fire - Unleashes an inferno that burns a target enemy, then leaves a continuing blaze in the map area. Any creature that crosses this area (including the player) is damaged by the blaze. (up to 12 rounds)

Greater Restoration - Restores the player to full HP.

Meteor Shower - Summons a swarm of meteors to crush and incinerate a target enemy. (fire damage) Each swarm generates 3..6 meteorites, which inflict {clvl/4} damage.

Renascence - Breathes life back into the player, (with 1 HP) should they fall in combat; however, all remaining MP is drained.

Whisper Wind - Restores 6..12 HP to the player at the end of each round. (up to 12 rounds)

Dragon's Bane - Negates damage from dragon's breath attacks. (up to 4 rounds)

Cloak of Shadows - Renders the player invisible to enemy sight. (up to 4 rounds)

Griffon's Flight - Allows the player to move over any terrain that would normally obstruct their path, but renders them weak against lightning attacks.

Apportation - Allows the player to jump, instantaneously, to any location on the map; but the player sacrifices their next turn.
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on March 06, 2010, 08:22:51 pm
the animations needs to not be extremly fast either, though. The calculator LCD blurs a lot so if too fast, they might be hard to see.

I like these spells btw, i love how they don't just do damage or restore HP and also do other stuff.

Question about the two last spells, though: do they work outside battles? Because if it's the case, maybe they might be abused so much that someone could reach parts of the games that were not supposed to at that time and it might cause lot of exploits x.x
Title: Re: Escheron: Presage of Darkness
Post by: Zera on March 06, 2010, 08:35:27 pm
Question about the two last spells, though: do they work outside battles? Because if it's the case, maybe they might be abused so much that someone could reach parts of the games that were not supposed to at that time and it might cause lot of exploits x.x

Oh, no. I should have elaborated on that. These only function on battle maps. There are two modes of exploration:

Town / dungeon / wilderness maps - Where you explore, talk with NPCs, try to navigate labyrinths, etc. This mode is free of combat, and you may freely roam wherever you want to.

Battle maps - A restricted area where you, and a number of enemies, take turns moving around and unleashing attacks. All movement here is turn-based. You can't move until your turn comes up, and your range of movement is limited.

When you explore wilderness and dungeons, there will be random encounters. These transition you into battle maps, where you must vanquish enemies. (or flee the battle map and return to exploration mode)
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on March 06, 2010, 08:37:06 pm
ooh ok you can move inside battles, I assume the movement would be quite limited, though, right? (seeing how large are the sprites)
Title: Re: Escheron: Presage of Darkness
Post by: Zera on March 06, 2010, 09:11:39 pm
ooh ok you can move inside battles, I assume the movement would be quite limited, though, right? (seeing how large are the sprites)

Those aren't your map sprites. Those only appear in action sequences. (when you actually attack) Map sprites are 16x16 sprites. Your movement range depends mostly on your character level, and what you have equipped. Your base movement range (around 3-5 tiles, on average) will be hindered by wearing heavy armor, or boosted by wearing equipment that's especially lightweight, or magically-enchanted to increase agility.

Map sprites and maps are the same size as they are in Shadow over Ragnoth: 16x16 tiles. The mock-ups in this thread only show special action sequences that take place when you use an ability, or attack an enemy.
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on March 06, 2010, 09:48:18 pm
Oooohok, so basically battles has two different screens. Nice concept :)
Title: Re: Escheron: Presage of Darkness
Post by: trevmeister66 on March 06, 2010, 10:14:08 pm
Wow Zera, you continue to amaze me. Great animation, and I can only imagine what the actual game play will look like.

Also, I love all the spells/abilities.
Title: Re: Escheron: Presage of Darkness
Post by: Zera on March 06, 2010, 10:57:10 pm
I made a sample of what the normal / battle maps look like:

(http://img22.imageshack.us/img22/2981/image19gs.png)

Haven't made any mock-ups of actually exploring these areas yet, though.
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on March 06, 2010, 11:36:14 pm
wow nice. Would it be possible to take the treasure before all enemies dies, tho? That might slow things down a bit for collision detection, altough that could be tweaked a little

Else, to cheat purposely to speed things up, maybe the last enemy to die would give the key which opens the chest?

Very cool graphics btw. Did you made all of them yourself?
Title: Re: Escheron: Presage of Darkness
Post by: trevmeister66 on March 06, 2010, 11:44:37 pm
Nice stuff. About how many unique or different maps will there be? Also, will there be any bonuses for terrain (like +1 Def if on a mountain?)
Title: Re: Escheron: Presage of Darkness
Post by: Zera on March 06, 2010, 11:59:27 pm
wow nice. Would it be possible to take the treasure before all enemies dies, tho? That might slow things down a bit for collision detection, altough that could be tweaked a little

If you don't grab the treasure before clearing the objective of the battle, then you won't be able to claim it. You just move over top of a treasure chest and "Check" it to grab the contents.

Quote
Else, to cheat purposely to speed things up, maybe the last enemy to die would give the key which opens the chest?

I didn't plan to lock them. Chests containing rare items will either be hidden out of sight, or those items will automatically be dropped by enemies. (such as bosses) The player can also find items by checking suspicious spots on the ground. (those will be fairly obviously marked, but probably still hidden out of sight)

Quote
Very cool graphics btw. Did you made all of them yourself?

Modified sprite-rips. I think I made a few of them. I borrowed a few from (very) old assets from Lost Legends, and modified them. :P

Nice stuff. About how many unique or different maps will there be? Also, will there be any bonuses for terrain (like +1 Def if on a mountain?)

I'm not sure how many unique maps there will be. Probably a lot, since you go into battle fairly often. There will be some generic maps that are recycled for random encounters.

There won't be terrain bonuses, but terrain affects your movement. You can't normally move over mountains, trees, walls, rivers, or anything else that obstructs your path. Flying enemies have the advantage of ignoring terrain types altogether. There aren't really any types that would merit any kind of bonuses to your abilities. Dry land is basically just dry land. It's all you can really walk on. Your movement might obviously be hindered in small quarters, though. If you were battling inside a castle, a set of ruins, a cave or a village, it would be difficult to navigate in and out of buildings. (or through hallways and passages)

I have been working on arranging the status screen, but it's not entirely complete:

(http://img171.imageshack.us/img171/7446/image2yi.png)

Changing equipment would be done in another screen. This just displays what you're currently holding, and what your statistics are.
Title: Re: Escheron: Presage of Darkness
Post by: trevmeister66 on March 07, 2010, 12:07:58 am
Very nice. I really like that status screen. It's simple yet dynamic, and it has everything you need to know.
Title: Re: Escheron: Presage of Darkness
Post by: ztrumpet on March 07, 2010, 12:17:39 am
Great job Zera!  It all looks and sounds excellent! ;D
Title: Re: Escheron: Presage of Darkness
Post by: Zera on March 07, 2010, 12:54:17 am
(http://img148.imageshack.us/img148/9379/mockup2.png)

Getting into the map planning... slowly.

Not sure what all data will be displayed here. It's just name, portrait and movement range for the time being.
Title: Re: Escheron: Presage of Darkness
Post by: trevmeister66 on March 07, 2010, 01:00:24 am
Is this screenshot a picture of when you hover over the enemy or select them during your turn or something?
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on March 07, 2010, 01:57:28 am
great design!
Title: Re: Escheron: Presage of Darkness
Post by: Zera on March 07, 2010, 01:36:56 pm
Is this screenshot a picture of when you hover over the enemy or select them during your turn or something?

This would probably appear both when the enemy takes its turn, and when you hover over the enemy tile during your turn.

There is one thing I could use help with... I am debating on how display a character or enemy's actual movement range. (i.e., some kind of flashing tiles imposed on areas they can move to) There won't be any masking in the game, so I can't impose symbols on top of land squares without fully covering them. I thought maybe I could impose flashing, black semi-squares. (they would just pop-in over each tile, disappear, rinse and repeat)

----------

I also wanted to share more details about enemies. I wanted to base them even more on elements of D&D this time, so I've borrowed some of the more vicious qualities from the Monster Manuals.

Some enemies will be able to destroy your equipped weapon or armor. Any generic equipment type (anything that can be purchased) is destructible, while rarer equipment is not. An example of this mechanic is with the Ochre Jelly enemies. Their constitution is highly acidic. If you're successfully attacked by one, your (destructible) armor will instantly dissolve. if you successfully hit one with a destructible sword, then your sword will dissolve.

Next, we have undead enemies. When an undead creature successfully scores an attack against you, you lose one experience level. This removes any HP, MP, ATT / DEF bonuses or skills you learned by advancing to that level, and resets your current experience. This effect is not cumulative. It's considered a negative status that can be reversed by casting Greater Restoration. (however, your current experience cannot be restored) While this effect is in play, the character will not gain any experience at all.

Lastly, we have the mighty dragon. Dragons are incredibly rare, and are a bane upon both enemies and allies in the field of battle. When a dragon appears, it ravages everything in sight without any prejudice. Dragons are so substantially powerful that a player will likely never confront and defeat one throughout the course of the game, unless by extreme luck. Enemies will automatically attempt to steer-clear of any dragon encounters on the map. In some way, it can be considered a mixed-blessing, as the dragon might vanquish most (or all) of your enemies for you.

There are two types of dragons so far: Original, fire-breathing Dragon, and Zombie Dragon. The fire-breathing dragon continuously unleashes an incindiery breath upon anything in its range of sight. This breath attack can target any creature within 6 tiles, making it difficult to escape. The Zombie Dragon has a vitriolic breath, which inflicts similar damage, but also destroys the target's armor, causes poison status, and results in instant death in 1/3 cases where the target would normally survive.
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on March 07, 2010, 02:19:33 pm
Nice, I like the idea especially about destructible weapons/armors
Title: Re: Escheron: Presage of Darkness
Post by: trevmeister66 on March 07, 2010, 06:11:42 pm
For your enemy movement, I was thinking maybe you could just do a border around all possible spaces. This way you can still see the terrain, but it should make identifying the enemies movement capabilities easier to see.
Title: Re: Escheron: Presage of Darkness
Post by: Raylin on March 07, 2010, 07:11:28 pm
Is it possible to share your formulas for level experience caps and stats for level?
I'm making an RPG of my own and would love to know.
Title: Re: Escheron: Presage of Darkness
Post by: Zera on March 07, 2010, 07:35:56 pm
Is it possible to share your formulas for level experience caps and stats for level?
I'm making an RPG of my own and would love to know.

If you think the experience system I designed would work in one of your games, you're welcome to use it. I wouldn't mind helping you design something else, for that matter. Here's what I've come up with so far:

The character's primary statistics are HP, MP, ATT, DEF and base evasion. The accuracy of physical attacks merely check the evasion of the target being attacked. Each target has its own base chance of evading an attack. The player character may slightly improve his evasion by equipping shields.

ATT and DEF represent damage and damage reduction, respectively. Each represents a formula where the damage is slightly dynamic:

DEF/4..total DEF (round up) - generate a random number between these values to determine damage reduction from a single enemy attack

ATT/2..total ATT (round up) - generate a random number between these values - subtract damage reduction to determine damage output against a single enemy

If 0, credit 1 point. If critical, multiply by 1.5. If targetting weakness, ignore target DEF.

Critical chance is tied directly into weapons. Character initiative and movement range are defined by level:

LV 01-05 - Range 3 - Initiative 2
LV 06-10 - Range 4 - Initiative 2
LV 11-15 - Range 5 - Initiative 4
LV 16-20 - Range 6 - Initiative 4
LV 21-25 - Range 7 - Initiative 6
LV 25+   - Range 8 - Initiative 6

Initiative represents turn rate. The system should check for the highest initiative on a target, and allow that target to move first, then the second-highest, and so forth. Targets with equal initiative are randomly selected.

Specific kinds of armor will increase the character weight, and reduce movement range by one or two points; likewise for initiative. Some equipment will also increase this value. The maximum of either value is 16.

Enemies give small amounts of exp., ranging from 1-10 points. Bosses automatically increase the player level by 1. Each level gives a small HP and MP bonus, and very rarely, a natural improvement in ATT and DEF or combative skills.

 ------------------------------------------------------------------------------
| LV | HP | MP | Evade | Other                                            | EX.|
|----+----+----+-------+--------------------------------------------------+----|
| 01 | 12 | 08 |  n/a  |  ...                                             | 20 |
| 02 | 14 | 09 |  n/a  | ATT +1                                           | 30 |
| 03 | 16 | 10 |  n/a  |  ...                                             | 30 |
| 04 | 18 | 11 | 01/48 |                                                  | 30 |
| 05 | 20 | 13 | 01/48 | ATT +1; DEF +1; 01/60 chance to counterattack    | 40 |
| 06 | 22 | 14 | 01/48 |  ...                                             | 40 |
| 07 | 24 | 15 | 01/48 |                                                  | 40 |
| 08 | 26 | 16 | 01/48 | ocassionally resist poison (1/2)                 | 40 |
| 09 | 28 | 17 | 01/48 |  ...                                             | 50 |
| 10 | 30 | 19 | 01/48 | DEF +1; 01/40 chance to attack twice             | 50 |
| 11 | 32 | 20 | 01/48 |  ...                                             | 50 |
| 12 | 34 | 21 | 01/40 |  ...                                             | 50 |
| 13 | 36 | 22 | 01/40 |  ...                                             | 50 |
| 14 | 38 | 23 | 01/40 |                                                  | 60 |
| 15 | 40 | 25 | 01/40 | ATT +1; 01/40 chance to counterattack            | 60 |
| 16 | 42 | 26 | 01/40 | ocassionally resist paralysis (1/2)              | 60 |
| 17 | 44 | 27 | 01/40 |  ...                                             | 60 |
| 18 | 48 | 28 | 01/40 |  ...                                             | 60 |
| 19 | 50 | 29 | 01/40 |  ...                                             | 60 |
| 20 | 52 | 32 | 01/32 | ATT +1; DEF +1; 01/20 chance to attack twice     | 70 |
| 21 | 56 | 34 | 01/32 |  ...                                             | 70 |
| 22 | 60 | 36 | 01/32 |  ...                                             | 70 |
| 23 | 64 | 38 | 01/32 |  ...                                             | 70 |
| 24 | 68 | 40 | 01/32 |  ...                                             | 70 |
| 25 | 72 | 43 | 01/32 | DEF +1; 01/20 chance to counterattack            | 70 |
| 26 | 76 | 45 | 01/32 |  ...                                             | 70 |
| 27 | 80 | 47 | 01/32 |  ...                                             | 80 |
| 28 | 84 | 49 | 01/24 |  ...                                             | 80 |
| 29 | 88 | 51 | 01/24 |  ...                                             | 80 |
| 30 | 92 | 54 | 01/24 | ATT +1; DEF +1                                   | 80 |
| 30+| +1 | +1 | 01/24 |  ...                                             | 99 |
 ------------------------------------------------------------------------------
 
The player may progress as high as level 30. After that, a dagger appears next to the level, and exp. required is set to 99. Further levels are not indicated, and only increase HP and MP by 1. (essentially, the player may level-up indefinitely)
 
Although not displayed beyond 99, HP and MP can be raised as high as 255.
 
If counterattack or double-attack feats are gained, these are reported as "combat skills improved."

ATT and DEF base can be raised as high as 8. (through the use of stat-boosting items)
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on March 07, 2010, 08:19:43 pm
Interesting :)

For smaller games, it's good sometimes to have lower level cap.

In Illusiat series, I always wanted to be able to get to 99, but it was unnecessary finally. The result in the early games is a level up almost every battle, sometimes even 2 or 3. In the TI-81 remake of Illusiat, the level cap is 30 and if I take on the Illusiat 2012 project I talked about a while ago on IRC, which would be a remake of Illusiat 1 and 2 again, the first part would end around LV 10 or 15.

In my last RPGs that were not remakes, Reuben series, the hours of gameplay are much lower. I believe it's 15 or 20.
Title: Re: Escheron: Presage of Darkness
Post by: Zera on March 07, 2010, 10:08:12 pm
Interesting :)

For smaller games, it's good sometimes to have lower level cap.

In Illusiat series, I always wanted to be able to get to 99, but it was unnecessary finally. The result in the early games is a level up almost every battle, sometimes even 2 or 3. In the TI-81 remake of Illusiat, the level cap is 30 and if I take on the Illusiat 2012 project I talked about a while ago on IRC, which would be a remake of Illusiat 1 and 2 again, the first part would end around LV 10 or 15.

In my last RPGs that were not remakes, Reuben series, the hours of gameplay are much lower. I believe it's 15 or 20.

This is one reason I sometimes disregard experience levels in favor of another system. It doesn't make the whole system look too trivial by having only a handful of possible levels, and it gets the job done. Plus, I enjoy conceiving them. :P
Title: Re: Escheron: Presage of Darkness
Post by: Zera on March 10, 2010, 03:16:33 am
Working on the tileset some more.

(http://img13.imageshack.us/img13/7640/image1dm.png)

I've been tweaking some tiles to be slightly smaller, to seem more to-scale with the size of actual characters on the map. For instance: It might look odd if a treasure chest or a piece of pottery is larger than a character sprite. I also added some variation with multiple types of mountains, and a selection of dirt, rocks, grass, flowers, etc.

All maps are going to be 16x16. I think this is a reasonable resolution. I don't intend for battlefields to be huge and chock-full of enemies. Your only fighting force is Anaximander, and the ocassional guest character. For that matter, dungeons and towns will be the same size; but these maps are going to have stairwells leading to other levels and rooms.

There won't be a world map you can freely explore, but rather a printed map with location names. New location names would appear on the map as you progress through each chapter, allowing you to freely select previous locations you want to revisit. (i.e., similar to Final Fantasy Tactics)

Towns will feature shops and NPCs. You can buy and sell equipment, or donate gold to magic guilds in order to learn spells. There won't be inns, as the player's status will automatically recover after batles. Curative items and spells will only be used in combat.
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on March 10, 2010, 03:22:22 am
This really looks awesome, you're putting so much awesome work in this :)
Title: Re: Escheron: Presage of Darkness
Post by: Zera on March 10, 2010, 11:03:54 am
One thing I'm a bit hung-up on is tile animation. I haven't figured out how that might work in BASIC + xLib, or Celtic. I wanted to be able to animate the water in some way, but I'm not sure how yet. In Escheron, there actually aren't multiple tiles in the tileset just for animations; instead, the water is animated by having it scroll pixel-by-pixel. I don't think a similar effect could be done here, although it would be nice.

Just to elaborate, I don't think there will be any smooth-scrolling. I never planned for the game to be very robust in the first place. I thought unit movements on the maps would be restricted to "jumping" from tile to tile. (while walking in place at all times) Maybe this isn't as taxing as having actual scrolling, but I also wonder how it affects the potential to animate tiles like water.

I've also been working on equipment:

- [Ev] represents how total evasion chance is derived. These values are
 negative because they lower the denominator. For instance: If Anaximander's
 normal evasion is 1/56, and a piece of equipment lowers it by -4, then evasion
 becomes 1/52. (meaning he evades approx. 1 out of 56 attacks directed at him)

 Remember that base evasion is defined by Anaximander's level. Adding equipment
 often has a cumulative effect on this value.

 - [Crit] defines Anaximander's chance of scoring a critical hit. This value is
 exclusive to weapons, and can't be changed by other equipment or conditions.

 - "Destructible" armour will be destroyed when Anaximander is attacked by
 enemies that destroy target armour; destructible weapons will be destroyed when
 Anaximander attacks an enemy that is acidic. Shields and helmets are not
 affected.

 - Celibrax is immune to all weapons and spells until Anaximander attacks him
 with the Clarent blade. This breaks his defence, making him vulnerable to
 everything else.

 - "M.DMG" represents how much damage is reduced from a magickal attack.
 (cumulative) Normally, there is no defence against magick.

--------------------------------------------------------------------------------
Swords   | AT | DF | Ev | Crit | Special
---------+----+----+----+------+------------------------------------------------
BRONZE   | +1 | .. | .. | 1/56 | destructible
SILVER   | +2 | .. | .. | 1/48 | destructible
DRACHEN  | +4 | .. | .. | 1/48 | destructible; +4 damage vs. dragons
CHTHONIC | +1 | .. | .. | 1/48 | destructible; +4 damage vs. undead
ADAMANT  | +5 | .. | .. | 1/32 |  ...
SCATHING | +1 | .. | .. | 1/48 | fire-elemental; cast INFERNO (1/8)
GALVANIC | +1 | .. | .. | 1/32 | lightning-elemental; cast SHOCKING GRASP (1/8)
MEPHITIC | +1 | .. | .. | 1/56 | cast BLOOD MIASMA (1/8)
BINDING  | +1 | .. | .. | 1/56 | incur paralysis (1/8)
OLEANDER | -1 | .. | .. | 1/96 | incur instant death (1/8)
SANGUINE | -1 | .. | .. | 1/96 | restore own HP equal to 1/2 damage dealt
CRITICAL | +2 | .. | -1 | 1/16 | +1 initiative; if target mHP <40, reduce to 1
AVENGING | +3 | +1 | .. | 1/48 | always counterattack
CLARENT  | +6 | .. | .. | 1/28 | break Celibrax defence; cast BLIGHT (1/8)
ETHEREAL | .. | .. | -2 | 1/96 | ignore target DEF
METEORIC | +2 | .. | .. | 1/56 | cast METEOR SWARM (1/8)
EXALTED  | +8 | .. | .. | 1/08 | always attack twice
CURSED   | -8 | .. | .. | 1/96 | cannot be removed *
---------+----+----+----+------+------------------------------------------------
Shields  | AT | DF | Ev | Crit | Special
---------+----+----+----+------+------------------------------------------------
BRONZE   | .. | .. | -1 |  ..  |  ...
SILVER   | .. | +1 | -2 |  ..  |  ...
DRACHEN  | .. | +1 | -2 |  ..  | resist fire; M.DMG -1
CHTHONIC | .. | .. | -2 |  ..  | resist paralysis
ADAMANT  | .. | +2 | -4 |  ..  |  ...
HERALDIC | .. | +2 | -4 |  ..  | M.DMG -4
AEGIS    | .. | +2 | -8 |  ..  | resist instant death; M.DMG -1
CURSED   | .. | -2 | +8 |  ..  | cannot be removed *
---------+----+----+----+------+------------------------------------------------
Helmets  | AT | DF | Ev | Crit | Special
---------+----+----+----+------+------------------------------------------------
BRONZE   | .. | +1 | .. |  ..  |  ...
SILVER   | .. | +2 | .. |  ..  |  ...
DRACHEN  | .. | +2 | .. |  ..  | resist fire; M.DMG -1
CHTHONIC | .. | +1 | .. |  ..  | resist osmosis
ADAMANT  | .. | +3 | .. |  ..  |  ...
COLOSSUS | +2 | +1 | .. |  ..  |  ...
SERAPHIC | .. | .. | .. |  ..  | regenerate 1 HP/MP each turn; M.DMG -1
OPHIDIAN | .. | .. | .. |  ..  | halve MP cost of all spells; M.DMG -2
VALKYRIE | .. | +1 | -2 |  ..  | auto-set flight status; +1 move
CURSED   | .. | -4 | .. |  ..  | cannot be removed *
---------+----+----+----+------+------------------------------------------------
Armour   | AT | DF | Ev | Crit | Special
---------+----+----+----+------+------------------------------------------------
BRONZE   | .. | +1 | .. |  ..  | destructible
SILVER   | .. | +2 | .. |  ..  | destructible
DRACHEN  | .. | +3 | .. |  ..  | destructible; resist fire; M.DMG -1
CHTHONIC | .. | +2 | .. |  ..  | destructible; resist energy-drain
DIAMOND  | .. | +4 | +2 |  ..  | resist lightning; M.DMG -1; -1 move
ADAMANT  | .. | +5 | +2 |  ..  | M.DMG -2; -1 move
COLOSSUS | +4 | +2 | +2 |  ..  | -1 move
MIRAGE   | .. | +1 | -4 |  ..  | auto-set invisibility status
PHOENIX  | .. | +2 | .. |  ..  | auto-set renancence status
ETHEREAL | .. | .. | -8 |  ..  | M.DMG -4; +1 move
CURSED   | .. | -8 | +4 |  ..  | cast SANCTUARY at turn; (1/8) cannot be removed


Anaximander can equip a selection of swords, shields, helmets and body armor. Some will have passive abilities, or allow him to resist various elements and status effects. The player will have an inventory appropriately sized to hold every piece of equipment, but won't be allowed to stack redundant items. I'm thinking that, when the player encounters a redundant item, they are given the option to exchange it for gold then and there. (i.e., an enemy drops a sword Anaximander already has, so Anaximander gets the equivalent of gold instead)

I haven't created usable items yet, but these will function in a similar manner. As opposed to stacking redundant items, things like potions would have multiple uses until they were empty.
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on March 10, 2010, 02:38:18 pm
in xLIB/Celtic, to have tilemaps animation, you simply switch back and forth from a tileset to another every two frame (or every frame if the game runs at 2 fps). It just takes a considerable amount of memory if the game has like 120 tiles. However, this can be worked around by making sure to disable animation in specific maps where those tiles won't be used, and have these tiles all on the same picture. That way you don't need to copy duplicate tiles in two pics too much, just the ones used in maps containing animated ones.

and I love the equipment and their properties :O
Title: Re: Escheron: Presage of Darkness
Post by: ztrumpet on March 10, 2010, 04:35:52 pm
That's awesome!  If I read that correctly, than you can only have one of any object.  That's neat.  It looks great so far! ;D
Title: Re: Escheron: Presage of Darkness
Post by: Zera on March 10, 2010, 04:41:32 pm
Time for some spoilers. I've written most of the story synopsis, and am working on bits of the script. I wanted to go with something more Shakespearean this time, so I'm brushing-up on my syntax. Below is a small exerpt of script from the game: (highlight the text to read it, as it contains spoilers)

Heraclitus: Thou speaketh of betrayal, but to whom didst My Lord come to for succour in his time of need? It was I. I hadst no choice but to share my lord's anguish and surrender myself to his every waking desire. I hath even bore the shame of sharing my lord's bed. Democritus' lust for power and carnality was legendary; but 'tis not my meagre lot in this life to offer myself in servitude of others. My destiny is much greater than thou canst imagine, Anaximander. Upon the Throne of God himself, I shalt govern all of Escheron; and 'tis in this governance that I shalt deliver Escheron from complete ruin.

Anaximander: And how many wilt suffer for your ascendancy, Heraclitus? Just as thou hast suffered at the whim of Democritus, thou still seek the bane of power. Dost thou still not understand? Power is the ruin of good men.

Heraclitus: Thou wilt be compelled by the Sovereign Grace of the Abyss, just as well. All must become clear in the passing of time, Anaximander. There canst be no other way.

If you would be interested in a general synopsis of the story, details follow: (highlight)

Following Lord Democritus' campaign against the Arcanians of Wynn, Anaximander learns of the existence of the Abyss: A force of chaos born of the war of Heaven. Ages ago, the gods that governed Escheron engaged in a great war, reducing Heaven to ruin. Their powers lived on without any order to maintain them, and gradually spiraled into chaos. This chaos began to find its way into the hearts and minds of mortal men -- often monarchs and great political leaders. Using this influence, it attempted to create a gravity between itself and the mortal world, with the ultimate goal of drawing Escheron into its event horizon. It becomes apparent that Democritus' conquest is the result of this influence.

Democritus eventually procures the Stygian Phalanx: A relic that allows him to transcend to a state of immorality. In this state, he cannot be harmed by mortal weapons, and Anaximander remains powerless to defeat him. Democritus proceeds toward the Throne of God, with the intention of ascending into the Abyss itself. Heraclitus -- Democritus' most loyal right-hand man -- has secretly coveted Democritus' power for some time, and seizes the opportunity to push Democritus away and ascend the throne himself. In doing so, he becomes all-powerful, and destroys Democritus' immortal form. The newly ascendant Heraclitus is called upon by the Abyss to travel to the Altar of Darkness and invoke the powers of the fallen god Celibrax, with the promise that he will be given Escheron to do as he pleases with. Invoking the power of Celibrax, Heraclitus' soul is destroyed, and Celibrax seizes control of his body. Anaximander must find a way to destroy the incipient Celibrax before he can return to full power, and draw Escheron into the Abyss.

There is a moral to the story: Power corrupts. :P
Title: Re: Escheron: Presage of Darkness
Post by: ztrumpet on March 10, 2010, 04:48:39 pm
That's awesome!  You're an awesome writer!

Thoust is also awesome whenith you speakith in a Shakespearean dialect. :)

That is an amazing storyline. :D
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on March 10, 2010, 11:00:58 pm
Wow nice!

Title: Re: Escheron: Presage of Darkness
Post by: Zera on March 19, 2010, 12:31:41 pm
(http://img511.imageshack.us/img511/2229/mockup4.png)

Working on arranging the status screen. Had to omit max HP / MP display to extend the right window for additional details. The icons next to the portrait represent poison and energy-drain status inflicted on the character. Other effects would not need to be indicated on this screen. (paralysis, in fact, would prevent the player from even checking status) The heart and decanter icons represent HP and MP, respectively. This allows me an extra 8x8 px of space, as opposed to using actual HP / MP text strings. MOVE and ACT represent the character's movement range during his turn in battle, and his initiative. (at what priority he gets to take a turn)

Working on my Shakespeare, as well. :P
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on March 19, 2010, 01:47:58 pm
pretty nice :), I like how you have HP/MP with icons. Will there be a way to see max/min HP somewhere in menu, tho? Else it might be hard to know when you're cured to maximum
Title: Re: Escheron: Presage of Darkness
Post by: Zera on March 19, 2010, 03:20:01 pm
I will probably have to add it back to the status screen, somehow. I'm trying to figure out how to get more space.
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on March 19, 2010, 03:27:39 pm
cramming many stuff into small screen is one hard challenge, altough for some reasons, I really like it sometimes. One biggest challenge I had was making Reuben Quest The Lost Mirror entire menu fit in one single screen to save as much memory as I could. In Illusiat 13, I had to find a way to cram the 4 equipments (rings), elemental protection level, atk/def/mag/spd, gold, experience, lv, hp/max hp, next lv experience and stuff in one status screen and I used the home screen, which is 16x8 characters.

EDIT: I have no screenshot of Reuben 2 menu handy but this video thumbnail shows how it looks like

Title: Re: Escheron: Presage of Darkness
Post by: Gale on March 19, 2010, 04:05:37 pm
you made that game? (the video thumbnail)
what's the title? that's pretty high quality for BASIC!!
Title: Re: Escheron: Presage of Darkness
Post by: Zera on March 19, 2010, 04:07:03 pm
There was so much detail in Shadow over Ragnoth that I actually had to use multiple menu pages just to cover character status. I even left mHP and mana out of the menus because: 1.) Not enough room without bumping essential statistics off the screen; and 2.) This is displayed in the character selection menu just prior to entering the status menu. That worked out fine in the end, though.

There isn't a whole lot of detail in PoD, but there's just enough that it couldn't merit having multiple pages. There would be nothing else to put in the empty space; so I have to cram what detail there actually is on a single page. I added a view of currently-equipped items to actually fill some of the empty space that was originally there. The window borders remain an awkward element because of how I decided to draw them. Basically, the main font is in 4x4 px blocks. In order to maintain spacing between rows, (so the pixels don't connect) It was necessary to draw them in a manner that's more like 4x8 blocks. This was also necessary to render enough space for icons. (which are more like 8x8 blocks) To have the font space properly with the window border intact, I had to create a duplicate font and blend the top part of the border. A consequence of this is the spacing and alignment outside of window borders. Any text I place outside of them is going to have an extra gap just between it and any neighboring windows. (i.e., the gap below "ANAXIMANDER" in the current status screen) This means I have to waste that space, since I can't reasonably cram any text there.

(http://img87.imageshack.us/img87/178/screenshot1lc.png)

(the red lines represent a 4x4 grid)

On an off-topic note: I was surprised to find out that some people actually use MSPaint to render their tiles. I'm not sure how robust newer versions are, but I don't recall it having any grid or snap-to-grid features. I use Paint Shop Pro 9, which does have this feature. It's easy to define a grid for specific tile sizes, and snap them when dragging and dropping.

Quote
you made that game? (the video thumbnail)
what's the title? that's pretty high quality for BASIC!!

I couldn't code my way out of a paper-bag. :(

It's still a design in progress. I just enjoy putting ideas on paper, though I don't necessarily have the technical skills to program and fully produce them.
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on March 19, 2010, 04:15:38 pm
@Gale yeah I did, altough unfortunately, xLIB APP didn't exist back then. had I used it the game would have been much smaller and faster D:. Thanks, though ^^

@Zera I love these fonts. I really hope someone can find a good way to write a custom font displaying routine in BASIC  or an ASM one. If the fonts are displayed with xLIB, though, each letters will require to be placed at 8 pixels intervals horizontally, because xLIB/Celtic sprites width are multiples of 8
Title: Re: Escheron: Presage of Darkness
Post by: Zera on March 19, 2010, 04:27:10 pm
Oops. I thought Gale was talking to me. Didn't even notice the video in DJ's post.

So much for Internet context. :P

Nice video, by the way. That's certainly a lot of detail for one screen.
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on March 19, 2010, 05:40:36 pm
Well one thing is that some topics here goes so fast now so it can be easy to miss posts (altough fortunately the red warning about new replies while posting helps missing as less as possible)

Thanks btw. This game used the ancestor of xLIB APP: xLIB v0.1a, a 8xp program that just did tilemaps and was slow, plus Omnicalc for the grayscale. I wish xLIB APP came out before I started this game because it would have ran 2x faster and be much smaller in size
Title: Re: Escheron: Presage of Darkness
Post by: ztrumpet on March 19, 2010, 08:23:10 pm
Nice as always Zera! ;D
Title: Re: Escheron: Presage of Darkness
Post by: Zera on April 06, 2010, 02:35:50 pm
I'm curious about some possibilities with the data structure. I was working on ways to handle enemy data, and I created a proposal using fractions for attack probabilities, and flags to handle various other properties:

--------------------------------------------------------------------------------
Name (bitmap)

{Spell / special ability}

HP 255  |- Physical attack toggle  [ ]  Undead type        [ ]
AT 255  |- Counterattack           [ ]  Dragon type        [ ]
DF 255  |- Cause poison            [ ]  Explode upon kill  [ ]
Mov 16  |- Hold target             [ ]  Weak to fire       [ ]
Act 16  |- Cause death             [ ]  Weak to lightning  [ ]
        |- Drain HP                [ ]  Resist fire        [ ]
Crit.   |- Destroy equipment       [ ]  Resist lightning   [ ]
01/08   |- 25% chance of 2x hit    [ ]  Resist poison      [ ]
        |- 50% chance of 2x hit    [ ]  Resist hold        [ ]
Evade                                   Resist death       [ ]
01/08                                   Flying             [ ]
                                        Can see invisible  [ ]
 GP: 255 / Spoils: -------- [01/01]     Celibrax defence   [ ]
--------------------------------------------------------------------------------


Each enemy has a single spell or special ability it can use. The A.I. would simply choose (in some random fashion) whether the enemy unleashes a standard attack, (if the attack toggle is active) or it unleashes its spell / ability.

To the left are the basic statistics of the enemy. Critical hit and evasion probabilities are simple fractions. There is no hit probability that has to be compared to evasion in order to determine the total accuracy of an attack - there's merely evasion by itself.

The first column of flags (starting with "Physical attack toggle") describes flags that are directly linked to physical attacks. Anything checked in this column will occur when the enemy unleashes a standard attack. The second column describes all other (attack-independent) properties.

At the bottom, we have the amount of GP awarded for defeating the enemy, and the item (if any) with its probability of being dropped.
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on April 06, 2010, 02:53:07 pm
I generally store them into list format. Let me grab Illusiat 13 enemy data (well, parts of it. There are over 70 monsters and I didn't want to post too many spoilers :P):

Quote
:If R=69:Then:"/[yhat]O→Str4
:"CERBERUZ→Str2
:{13050,1000,10,3000,145,0,1,1,0,1,2300,4681,1,9,0,0,8,0,13050:End
:If R=70:Then:"φK→Str4
:"TRIMAG→Str2
:{16000,1300,10,4000,280,1,2,.5,0,2,2750,6250,1,9,9,9,9,0,16000:End
:If R=71:Then:"Ω→Str4
:"MIME→Str2
:{L3(3),500+L3(13),5+int(L3(14)/20),3000+3L3(15),L3(16),2-.5L3(17),2-.5L3(18),2-.5L3(19),2-.5L3(20),0,1500+5L3(1),4500+10L3(1),1,int(L3(7)),int(L3(8)),int(L3(9)),int(L3(10)),0,L3(3:End



:If R=40:Then:"φK┼→Str4
:"PSY→Str2
:{20000,1,4000,200,100,999,0,0,0,0,2750,2750,3,0,6,6,0,1,20000
:End
:If R=39:Then:"φKo→Str4
:"HOLY→Str2
:{18000,1,10,400,50,1,1,1,1,1,5000,4000,0,8,0,0,9,1,18000:End
:If R=28:Then:"/X-→Str4
:"WARLOCK→Str2
:{20000,666,4,33333,1000,1,1,0,1,1,5000,0,1,1,1,2,1,1,20000:End
:If R=38:Then:"φK[[LastToken]]→Str4
:"BLITZ→Str2
:{16000,120,10,115,80,1,2,0,1,1,2700,2000,1,2,2,7,3,1,16000:End
:If R=37:Then:"φK∟→Str4
:"ICE→Str2
:{15000,115,12,130,30,3,0,1,0,1,2500,1750,1,0,5,2,0,1,15000:End
:If R=36:Then:"φKw→Str4
:"PYRO→Str2
:{10000,90,7,110,25,0,4,1,0,3,2000,1500,1,5,0,2,3,1,10000:End
:If R=31:Then:"T→Str4
:"IMP MAGI→Str2
:{3000,1,3,100,70,0,0,0,0,0,400,355,0,5,5,5,5,0,3000:End
:If R=30:Then:"Ò→Str4
:"EVIL BOMB→Str2
:{1200,105,5,105,55,2,1,2,0,0,300,325,1,9,0,0,0,0,1200:End
:If R=29:Then:"Ʃ=→Str4
:"HUNTER→Str2
:{1000,140,10,1,65,0,1,2,1,0,350,350,1,0,0,0,0,0,1000:End
:If R=50:Then:"^>→Str4
:"WYVERN→Str2
:{2000,150,6,150,75,0,1,1,1,1,450,403,1,6,4,0,0,0,2000:End
:If R=51:Then:"^X^→Str4
:"GARGOYLE→Str2
:{2500,200,5,1,100,2,2,2,2,2,500,352,1,0,0,0,0,0,2500:End
:If R=52:Then:"r→Str4
:"ALERT→Str2
:{1500,115,20,100,90,1,2,4,1,0,480,305,1,0,0,8,0,0,1500:End
:If R=53:Then:"ΔK*Δ→Str4
:"WALL MAGE→Str2
:{10000,250,20,250,50,0,0,0,0,0,2500,2500,1,9,6,8,7,0,10000:End


:If R=24:Then:"><→Str4
:"METALUX→Str2
:{800,80,8,80,40,1,1,3,1,1,300,350,1,2,2,2,2,0,800:End
:If R=23:Then:"θ→Str4
:"FAKE ORB→Str2
:{528,53,6,25,27,1,1,1,1,1,120,152,1,0,0,0,0,0,528:End
:If R=22:Then:"[M]→Str4
:"ICE MAGE→Str2
:{600,1,10,55,30,2,0,1,1,0,135,200,0,0,2,0,0,0,600:End
:If R=21:Then:"000→Str4
:"ICE WALL→Str2
:{200,55,99,55,30,30,0,5,0,5,200,259,1,0,2,0,0,0,200:End
:If R=20:Then:"Q→Str4
:"ICE MAN→Str2
:{900,75,13,1,25,2,0,1,1,1,200,400,1,0,0,0,0,0,900:End


:If R=5:Then:"}→Str4
:"MIRAGE→Str2
:{70,9,3,7,10,0,1,1,1,1,20,11,1,1,0,0,0,0,70:End
:If R=4:Then:"Q→Str4
:"BRUTE→Str2
:{30,5,1,1,4,1,2,1,1,1,13,5,1,0,0,0,0,0,30:End
:If R=3:Then:"T→Str4
:"IMP→Str2
:{20,4,1,1,6,1,1,1,1,1,11,3,1,0,0,0,0,0,20:End
:If R=2:Then:"X→Str4
:"ZOMBIE→Str2
:{8000,590,8,1,110,2,0,1,2,0,1392,1320,1,0,0,0,0,0,8000:End
:If R=1:Then:"*→Str4
:"SPIRIT→Str2
:{4325,220,9,888,104,2,0,1,0,1,1065,1230,1,5,0,0,0,0,4325
:End
:Ans→L4
:If .1=L3(29:1→L4(18

{Current HP,Attack,Defense,Magic,Speed,Fire protection,Ice protection,Bolt protection,Holy protection,Dark protection,Experience,Gold,Can use regular attacks?,Can use fire and at which LV?,Can use ice and at which LV?,Can use blitz and at which LV?,Can use aura and at which LV?,Is escaping possible?,Max HP

Each var didn't really have minimum and maximums, except that atk, def and mag had to be positive and not equal to zero. If speed was in the 2500s, the enemy did not even have any delay between attacks. The attack flag had no level, except if it was 3 instead of 1, it caused the boss to change elemental weakness that turn (only used during two or three super high defense boss fights). For magic at 0 the enemy wouldn't be able to use that magic, and from 1 to 9 he casted the spell at that level. If escape flag was 0, you could escape with 50% chance. At 1, escaping was impossible (boss fights). Max HP did not have much use, except for enemies with protection against one-hit-kills (hard-coded in the battle code, but no enemy had this yet). one-hit-kill is when you deal more damage against a monster than his max HP. It caused OVERKILL to show up over him. If an enemy had anti-overkill protection, if his HP was at maximum, the attack will leave him with 1 HP. Experience could range from 0 to 99999 and gold 0 to 999999.

EDIT: For Illusiat 12 random encounter stats looked like this:

Quote
If R≤9:Then:Repeat L5(R+1)=1:randInt(0,9)→R:End:End
If R=0:Then:"^X^"→Str1:{10+O2,2,3O,1,1,1,.5O2,.3O2+20,1,1,0,0,1,0,0,0,0,0,1→L4:End
If R=1:Then:"Q"→Str1:{15+2O2,3,2O,.5,.5,.5,.7O2,.2O2+20,1,0,0,0,0,0,1,0,0,0,2→L4:End
If R=2:Then:"K>"→Str1:{3O2+5,3,2O,.5,1,2,.3O2,.8O2+15,1,0,1,1,0,0,1,0,0,1,3→L4:End
If R=3:Then:"β"→Str1:{10+int(.5O2),1,9O,.5,4,.5,.2O2,O2,0,1,1,1,0,0,0,1,1,1,5→L4:End
If R=4:Then:"Ç"→Str1:{5O2,1,O,4,4,4,.9O2,2O2,0,1,1,1,0,0,0,0,0,0,7→L4:End
If R=5:Then:"w3"→Str1:{10+2O2,3,O,3,.5,1,.6O2,.2O2+10,0,1,0,0,1,0,0,1,0,0,6→L4:End
If R=6:Then:"δ"→Str1:{O2+20,2,2O,2,1,2,.4O2,.3O2+25,1,1,1,0,1,0,1,0,0,0,0→L4:End
If R=7:Then:"0"→Str1:{12+(2O)2,1,9O,.2,5,2,O2+1,O2+15,1,0,1,0,0,0,0,0,0,0,4→L4:End
If R=8:Then:"V"→Str1:{17+4O2,2,2O,2,2,2,O2,O2+17,1,0,1,1,0,1,1,0,1,0,0→L4:End
If R=9:Then:"."→Str1:{O2,1,O,3,3,3,.5O2,.3O2+20,1,0,0,1,0,1,0,1,0,0,1→L4:End

Where O was the current area enemy LV.
Title: Re: Escheron: Presage of Darkness
Post by: Zera on April 06, 2010, 03:26:12 pm
I have a ton of more flags in mine, but it's a whole different kind of engine. (tactical RPG) There also has to be flags that define the type of movement enemies have. (such as whether or not they can move across objects that obstruct the paths of normal units) Battle sequences are just short action scenes where one or two attacks are exchanged, and the units are brought back to the map screen.

I thought it was kind of curious how your enemies have such a limit amount of abilities, unless there's something I overlooked. Do any bosses have any kind of special attacks? In PoD, enemies can be given a single spell (from a list of standard spells the player can learn) or a special enemy ability, which - of course - is something that only enemies have access to. (i.e., a dragon's breath attack)
Title: Re: Escheron: Presage of Darkness
Post by: jsj795 on April 06, 2010, 03:32:04 pm
Wow, Zera. I was planning to do the exact same battle as you for TLM -_-;; I got inspired from some of the games that I played long time ago, but don't remember their names.
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on April 06, 2010, 03:41:33 pm
I have a ton of more flags in mine, but it's a whole different kind of engine. (tactical RPG) There also has to be flags that define the type of movement enemies have. (such as whether or not they can move across objects that obstruct the paths of normal units) Battle sequences are just short action scenes where one or two attacks are exchanged, and the units are brought back to the map screen.

I thought it was kind of curious how your enemies have such a limit amount of abilities, unless there's something I overlooked. Do any bosses have any kind of special attacks? In PoD, enemies can be given a single spell (from a list of standard spells the player can learn) or a special enemy ability, which - of course - is something that only enemies have access to. (i.e., a dragon's breath attack)
That was mostly because the game had a massive overworld/amount of dungeons to explore, very complex storyline compared to any other RPG I made (about 800 maps and 30000-40000 characters of NPC convos), so I tried to keep the battle system as small as possible. Certain bosses in particular got special abilities, though, and some requires different strategy to be killed. The worst one gotta be the enemy that requires that ring equipment that protects against OVERKILL's and spam Psy magic on him (which absorbs enemy HP) and have 3 regen rings equipped (restoring HP every turn) because the anti overkill ring is hard to get near the end of the game
Title: Re: Escheron: Presage of Darkness
Post by: Zera on April 06, 2010, 04:08:14 pm
Ah. PoD has a much smaller world. The maximum map size is only 16x16 tiles. (both battle maps, and exploration maps) The overworld is just a ubiquitous map that lists the various regions and locations you can select. Although that limits the potential for ships and other transportation, there might be battle maps that place you on a ship during events where you're traveling across a sea to reach a distant region.

Quote
Wow, Zera. I was planning to do the exact same battle as you for TLM -_-;; I got inspired from some of the games that I played long time ago, but don't remember their names.

Feel free to borrow any ideas from PoD. I have some of the statistical information listed a page or so back.
Title: Re: Escheron: Presage of Darkness
Post by: Iambian on April 06, 2010, 06:32:37 pm
I have a ton of more flags in mine, but it's a whole different kind of engine. (tactical RPG) There also has to be flags that define the type of movement enemies have. (such as whether or not they can move across objects that obstruct the paths of normal units) Battle sequences are just short action scenes where one or two attacks are exchanged, and the units are brought back to the map screen.

[...]
That kinda reminds me of this old SNES game that I've played a while back. "Bahamut Lagoon" I'm thinking of. I think other games did it that way, too. Except you could choose to either directly engage the enemy or throw attacks on the map itself. It would be interesting if E:PoD supported this feature if, say, there was some dragon on the field and you didn't want to go face-to-face with it at that very moment and bombard it with whatever you've got from afar. Of course, enemies could do the exact same stunt and I guess it wouldn't work over very well if there was a zillion enemies on the field and ...

Nevermind. That kind of thing would work better with parties where you could do things like healing while still being able to attack or something.

Just throwing something out.
Title: Re: Escheron: Presage of Darkness
Post by: Zera on April 06, 2010, 06:40:14 pm
I'm not quite sure what you mean. Target a square on the map, and if anything incidentally moves into that square, it's hit by the attack? FFTactics handles targeting this way. Archers and Dragoons had to "charge" an attack. If the targeted unit moved away from that square while the attack was still charging, then they wouldn't be hit by the time it got executed.

PoD only handles direct targeting of units that are within your range. Some abilities will target a square on the map, however. For instance: Palisade's Fire creates a trap on a designated map square. When an enemy unit touches the trap, they suffer fire damage. Many other spells are ranged, but you must be able to target something in order to cast them.
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on April 06, 2010, 10:45:02 pm
If the game is really FFT-style, my suggestion would be that you make sure that battles are much more fast-paced than FFT, because i looked at someone playing it before and just seeing how each battle lasted over 10 minutes made me not want to play FFT series. More fast-paced tactic battles would be nice. I guess if the menus aren't too hard/long to navigate it should fix it, though.
Title: Re: Escheron: Presage of Darkness
Post by: Zera on April 07, 2010, 03:47:07 pm
By the way - I wanted to elaborate on the bit of intro text I used. This was a quote from Anaximander. (the philosopher, whom I incidentally named my protagonist after)

Whence things have their origin,
Thence also their destruction happens,
According to necessity;
For they give to each other justice and recompense
For their injustice
In conformity with the ordinance of Time.


This can be applied many ways. I think Anaximander intended it to mean, "All things are driven by mutual checks and balances." You could also interpret it as something more specific; like, "By necessity, all things that begin must end. By the very nature of their existence, life and death grant balance and restitution to one another."

It's kind of a fitting sentiment, because of the nature of the game's protagonist. Spoiler: The Abyss wants nothing more than to compress all life back into its origin, which would draw all currently-living things into destruction.
Title: Re: Escheron: Presage of Darkness
Post by: DJ Omnimaga on April 07, 2010, 04:41:27 pm
Mhmm for some reasons that reminds me a bit Star Ocean 4 style, nice. In SO4 though, though, the final foe wanted to create a brand new world supposedly free of mankind wars but it would involve the destruction of the entire world as it is now, so people do not want that to happen. In ROL2, a RPG I made 7 years ago for the 83+, there was a similar story too, altough it didn't involve total extinction and the world destruction was not the main goal of the main foe. The story in my old games didn't make much sense, though and was not really developed as much