**New Release** REALMS OF QUEST 3 (available for order!)

Discussion, Reviews & High-scores

Moderator: Moderators

User avatar
Mayhem
High Bidder
Posts: 3031
Joined: Mon May 24, 2004 7:03 am
Website: http://www.mayhem64.co.uk
Location: London

Post by Mayhem »

Perhaps not on the unbalanced side of things, although maybe tone it down a little. Consider it a "reward" for developing an under-powered character early on that might become more powerful as the levels progress. A similar aspect applied to Hunter class, where they could do "critical" hits and instantly kill an opponent, although once certain fighters were sufficiently powered up, they would do enough damage to kill in one blow anyhows.

Personally I say give each class an incentive for the player to use them, instead of sticking to the tried and trusted.

How will levelling up be handled? Will it be automatic when a character passes the threshold, or perhaps adjourn to a Review Board a la Bard's Tale? If a character's statistics increase per level gained, will they be automatically assigned, or will you let the player choose where to add?

I'm certainly looking forward to the game, haven't been on a good old-fashioned dungeon crawler in a while. Would also be interested in play testing when all is finished ;)
Lie with passion and be forever damned...
User avatar
Ghislain
Realms of Quest
Posts: 1282
Joined: Sun Aug 08, 2004 12:54 am

Post by Ghislain »

Mayhem wrote:Perhaps not on the unbalanced side of things, although maybe tone it down a little. Consider it a "reward" for developing an under-powered character early on that might become more powerful as the levels progress. A similar aspect applied to Hunter class, where they could do "critical" hits and instantly kill an opponent, although once certain fighters were sufficiently powered up, they would do enough damage to kill in one blow anyhows.

Personally I say give each class an incentive for the player to use them, instead of sticking to the tried and trusted.
I do this. I posted the following way earlier in the thread (several weeks ago):
FIGHTER: has d12 hit points per level, no weapon or armor restrictions (save for race restrictions on such weapons)

WIZARD: has d4 hit points per level, very limited weapon and armor. Can cast wizard spells.

PRIEST: has d8 hit points per level, same armor as fighter but cannot use sharp weapons. Can cast priest spells.

THIEF: has d6 hit points per level, can use some weapons and armor. Can disarm traps, better at finding secret doors, etc. Backstab.

RANGER: has d10 hit points per level. Same weapon/armor as fighter. Has some thieving skills. Can cast wizard spells starting at level 4 (maximum 2 spell levels).

PALADIN: has d10 hit points per level. Same weapon/armor as fighter. Can cast priest spells starting at level 3 (maximum 3 spell levels).

MONK: has d6 hit points per level. Limited to cleric's weapon choices and the thief's armor choices. Backstab. No magic, but can use magic items restricted to fighters, priests and wizards.

NECROMANCER: has d4 hit points per level. Same armor and weapon choices as the wizard. Can cast both wizard AND priest spells starting at level 2 (no spell level limit). Can use magic items restricted to both wizards and priests.
Some of these details might change -- as I'm thinking of changing the magic system. As well, necromancers don't get as many spell points as wizards and priests, but more than paladins and rangers.

But as you can see, each class has distinct advantages over the others (such as the fighter with d12 instead of d10 for the paladin/ranger)
How will levelling up be handled? Will it be automatic when a character passes the threshold, or perhaps adjourn to a Review Board a la Bard's Tale? If a character's statistics increase per level gained, will they be automatically assigned, or will you let the player choose where to add?
Right now, the demo will allow a character to advance in a level when they reach 2000 experience points and then the XP requirement doubles every level after that. Eventually, you have to get millions of experience points to advance a single level.

I might revise the 2000 xp requirement down to 200 because killing a kobold only gives you 4 exp points.

You can gain more experience points by 'cashing in your gold' at the castle and gain a level there. You can even gain levels by reaching an XP threshold in the middle of combat :) Which I think makes it cool...
I'm certainly looking forward to the game, haven't been on a good old-fashioned dungeon crawler in a while. Would also be interested in play testing when all is finished ;)
Thanks! Once the full beta is finished and released here in this thread, I'll probably be getting emails regarding many bugs this game will have :)
"A slave is one who waits for someone to come and free him." -- Ezra Pound
User avatar
Ghislain
Realms of Quest
Posts: 1282
Joined: Sun Aug 08, 2004 12:54 am

Post by Ghislain »

*** YET ANOTHER UPDATED DEMO ***

Get it here: http://www.usaupload.net/d/emk01jg3yd9

To run it:

LOAD"RQ4.PRG",8,1 (return)
NEW (return)
LOAD"RQ3.PRG",8 (return)
RUN (return)

Make sure that you have 32K of RAM expansion or activate BLK 1/2/3/5 in your VICE emulator

Reasons for uploading a new demo: I decided to lower the XP requirements for level 2 from 2000 to 200. Should make it easier to gain levels at the start--but keep in mind that XP requirements double with every level.

Other changes since the last demo:

- IJKL now works for movement (cost about 70 bytes of precious memory but it's worth it). Cursor key controls have been preserved to make the game "emulator-friendly"
-You can press "down" while on the map or in the dunjon. Pressing the "down" key in the dunjon will also make your party turn around.
-Monks can now do bare hands damage. Damage is calculated at 1 to LEVEL * 2. Yeah it will make the game a bit unbalanced, but that's the fun of CRPGs (to quote adamantyr's blog)
-Penalty for backstab has been increased. The character who attempts this will suffer 20 points to their armor class (in the d127 combat system).
-Monsters can ambush your party. A dexterity check is made against the active (highlighted character in the party list) to see if the ambush is successful.

Now you can create your characters and see them advance in levels because of the lower XP requirement. I'm not into making this game too overly difficult--just a good old fashioned dungeon crawler (which also happens to have an Ultima-style map).
"A slave is one who waits for someone to come and free him." -- Ezra Pound
User avatar
Ghislain
Realms of Quest
Posts: 1282
Joined: Sun Aug 08, 2004 12:54 am

Post by Ghislain »

I think I'm going through another phase where I'm starting to hate this game again (happened to me a few weeks ago)... I'll probably take a break for a week or so. By then, I should feel refreshed.

And besides, I've done quite a bit of progress in the last while...
"A slave is one who waits for someone to come and free him." -- Ezra Pound
6502dude
megacart
Posts: 1581
Joined: Wed Dec 01, 2004 9:53 am

Post by 6502dude »

Ghislain wrote:...I'll probably take a break for a week or so. By then, I should feel refreshed.

And besides, I've done quite a bit of progress in the last while...
I'm really amazed at this game.

A break away once in a while from any project is a good thing.
Afterall, it's spring and weather is getting better.
Image Mega-Cart: the ultimate cartridge for your Commodore Vic-20
adamantyr
Vic 20 Newbie
Posts: 18
Joined: Fri Mar 27, 2009 10:00 am

Realms Progress

Post by adamantyr »

Looking good! I haven't had a chance yet to load up your latest demo, but it's looking really awesome.

One thing you should start doing... which is what I did... is start prioritizing features. Because you will probably run into that 32k wall before you're done, and then you'll have to agonizingly start cutting features. :cry:

I know, it sucks big time. I had to lose portraits (for shops and things) from my design because I realized that they were just too low priority. I had to go back to classes because a user-defined character system took too much utility code for controls.

The nice thing is after you're done, if you have space to spare, you can go back and put things back in. I'm hoping that's the case with portraits... yours look very nice indeed.

Adamantyr
User avatar
Ghislain
Realms of Quest
Posts: 1282
Joined: Sun Aug 08, 2004 12:54 am

Post by Ghislain »

6502dude wrote:I'm really amazed at this game.

A break away once in a while from any project is a good thing.
Afterall, it's spring and weather is getting better.
Thanks! However, my sabbatical didn't last very long much to my detriment (but to everyone else's benefit).

I guess I'm the equivalent of an addict... the drug's name is Realms of Quest.

Damn you, infernal game! Why can't I finish you sooner???
adamantyr wrote:Looking good! I haven't had a chance yet to load up your latest demo, but it's looking really awesome.

One thing you should start doing... which is what I did... is start prioritizing features. Because you will probably run into that 32k wall before you're done, and then you'll have to agonizingly start cutting features. :cry:

I know, it sucks big time. I had to lose portraits (for shops and things) from my design because I realized that they were just too low priority. I had to go back to classes because a user-defined character system took too much utility code for controls.

The nice thing is after you're done, if you have space to spare, you can go back and put things back in. I'm hoping that's the case with portraits... yours look very nice indeed.

Adamantyr
Thanks! I actually just shaved off 700 bytes of wasteful code this afternoon. The routine to draw the dunjons was just a lot of copy and paste: the routine to draw 'facing south' was basically carbon copy (save for a few pointer values) of "facing north". What I did was make a table of values and then pass these to a single routine and voila... now the routine is only 30% as big. And I was able to do it all at once without any debugging! Which kind of scared me, actually. But I kept my previous versions of the source code, so if I notice something wrong, I'll just take a look at it and then make the necessary corrections.

So I'd rather get rid of inefficient code instead of getting rid of features.

I really should make a demo archived with an emulator that you can just download to your PC and then run it right away--a simple batch file could really set this up more easily for you. I'll probably upload this later in the weekend.

As for getting rid of the portraits... to quote my favorite hammy actor of all time, they'll have to pry them from my cold, dead hands! :)
"A slave is one who waits for someone to come and free him." -- Ezra Pound
User avatar
Ghislain
Realms of Quest
Posts: 1282
Joined: Sun Aug 08, 2004 12:54 am

Post by Ghislain »

Another thing I worked on today...

Image

If you sit on a throne (occasionally encountered in the dunjons), 4 out of 5 times, you will get ZAPPED and suffer damage.

But... if you don't get zapped, you can receive something that helps you or something that hurts you. I won't say anything else in order to keep it a surprise :)
"A slave is one who waits for someone to come and free him." -- Ezra Pound
User avatar
Ghislain
Realms of Quest
Posts: 1282
Joined: Sun Aug 08, 2004 12:54 am

Post by Ghislain »

Today I programmed the monsters' eight special attacks:

Code: Select all

;1 poison (vs CON)
;2 steal (vs DEX)
;3 destroy armor (vs DEX)
;4 charm/paralysis (vs CHA)
;5 paralyze (vs WIS)
;6 gaze turns to stone (vs INT)
;7 breathe (vs DEX)
;8 energy drain (vs CON)
... basically, whenever a special attack is employed, a save VS an attribute is made (see above).

It took me about 350 bytes to program this, of which about 200 was used for energy drain. A lot of bytes just for a special attack, but I think this adds a certain dimension to the game which makes it interesting.

I now have 6800 bytes free and I think I have enough memory left over to fit the whole game in there. If I go by my progress report, this is where I am at so far:

1. Party, character and inventory management
No change since last time (90%). Things left to do: adding treasure to inventory, drinking potions and using magic items.

2. Graphics
I'll say 99% now. Anything that I add in the future is because I have extra memory left over. I drew an image of a pirate ship since last time.

3. World map + displaying the map
No change: 95% done.

4. Dunjons + displaying them in 3D using wireframe graphics
80% done. Very satisfied with how the 3D mazes look like. All of the mazes are generated by special code that I wrote. The other 20% is routines to allow the player to interact with the thrones and the water fountains.

5. Combat
75% done here. I've added XP, special attacks, surprise attack. Things left to do: spells during combat and collecting treasure at the end.

6. Spellcasting.
No change -- 25%

7. Background music + sound effects.
Not even started yet -- still 1%

8. Manual
15% done -- I've created a couple of tables and typed in some more instructions. I've a feeling this one will be 40+ pages long!
"A slave is one who waits for someone to come and free him." -- Ezra Pound
User avatar
Ghislain
Realms of Quest
Posts: 1282
Joined: Sun Aug 08, 2004 12:54 am

Post by Ghislain »

Well, I think my last demo is a bit out of date compared to what I've done since then. *** SO HERE IS ANOTHER DEMO ***

http://www.usaupload.net/d/bfpi817ptgz

As always, you load it by typing the following:

LOAD"RQ4.PRG",8,1 (return)
NEW (return)
LOAD"RQ3.PRG",8 (return)
RUN (return)

You'll need to enable 32K RAM expansion.
"A slave is one who waits for someone to come and free him." -- Ezra Pound
User avatar
Ghislain
Realms of Quest
Posts: 1282
Joined: Sun Aug 08, 2004 12:54 am

Post by Ghislain »

I'm very pleased at the progress I made on the game this weekend. So many little things I kept putting off because I waited for certain subroutines to be finished. Now the party can collect treasure when they defeat a party of monsters (though I have to program the treasure chest traps--which is the _raison d'etre_ of the thief and ranger classes--though the latter performs this function at a very diminished ability)..

Case in point the special magic items:

Code: Select all

	.byte "BOOTS OF ELVENKIND",0		; for haste
	.byte "CROWN OF MIGHT",0	;(F)	adds haste + save + strength bonus + armor protection
	.byte "GIRDLE GIANT STRENGTH",0	;(F)	adds attack bonus
	.byte "GAUNTLET OF THIEVING",0	;(T)	adds + 20 to thieving abilities
	.byte "RING OF PROTECTION",0		; magic armor bonus during combat
	.byte "RING OF REGENARATION",0		; cures 1 hp per round of movement
	.byte "RING OF WIZARDRY",0	;(W)	spells only cost 1 su each to cast
	.byte "ROD OF RESURRECT.",0	;(P)	resurrect spell
	.byte "WAND OF FIRE",0		;(W)	fireball spell
	.byte "WAND OF LIGHTNING",0	;(W)	lightning bolt spell
Magic weapons, armor and shields are easy enough program -- you know that the magical versions of these just adjust thaco and/or damage. But what to do with special magic items? But now that I've a lot of combat code in place it was easy enough to program BOOTS OF ELVENKIND (adds 1 attack per round), CROWN OF MIGHT (provides bonus to thaco, armor class and saving throw), GIRDLE OF GIANT STRENGTH (provides bonus for thaco and damage), RING OF PROTECTION (for AC bonus). As well, I programmed the RING OF REGENERATION (restore 1 HP of damage per every non-combat movement round).

I've only 5 more magic items to program -- the rest being that they will require to interact with parts of code that I haven't done yet (example: GAUNTLET OF THIEVING during the treasure chest detect/disarm phase, and the latter 4 relate to spellcasting of which I will borrow parts of some spellcasting subroutines).

Collecting treasure is the most fun part of any CRPG:

Image

The "Z" status represents a charmed/paralyzed character of which a spell can wake the character up, or a good night's rest at the inn will do.

6300 bytes free or so but I'm still fairly confident that everything will fit in the end.
"A slave is one who waits for someone to come and free him." -- Ezra Pound
User avatar
Ghislain
Realms of Quest
Posts: 1282
Joined: Sun Aug 08, 2004 12:54 am

Post by Ghislain »

Detect traps is done:

Image

Only thieves, rangers and monks can detect/disarm traps. Thieves are the strongest in this ability, rangers are average while monks have very limited skill.

This will force players to have more of these characters in their party. A lone thief is fine, but if you have him combined with a monk or ranger in the same party, then you can escape the majority of treasure traps.
"A slave is one who waits for someone to come and free him." -- Ezra Pound
User avatar
Ghislain
Realms of Quest
Posts: 1282
Joined: Sun Aug 08, 2004 12:54 am

Post by Ghislain »

After putting it off for almost the very end (yes, there is now light coming at the end of the tunnel), I am now working on spellcasting.

The reason for not seriously working on it until now is because I needed a fair amount of codebase in order to determine which spells can be programmed the most efficiently within the context of the algorithm I've devised for this game.

So, I've reduced a number of spells I had posted earlier here in the thread. Instead of 6 spell levels, there will now be 5. Here is the current (and most likely final) list of spells:

Code: Select all

WIZARD1:
	.byte "CHARM MONSTER",0
	.byte "DISPEL MAGIC",0
	.byte "ENCHANTED WEAPON",0
	.byte "MAGIC MISSILE",0
WIZARD2:
	.byte "CLOUD KILL",0
	.byte "HASTE",0
	.byte "LIGHTNING BOLT",0
	.byte "SLEEP",0
WIZARD3:
	.byte "DEATH SPELL",0
	.byte "DISPEL ALL MAGIC",0
	.byte "FIREBALL",0
	.byte "PHANTASMAL FORCE",0
WIZARD4:
	.byte "ENCHANTED ARMY",0
	.byte "FINGER OF DEATH",0
	.byte "POWER WORD STUN",0
	.byte "STONE TO FLESH",0
WIZARD5:
	.byte "DIMENSION DOOR",0
	.byte "METEOR SWARM",0
	.byte "POWER WORD KILL",0
	.byte "TIME DELAY",0

PRIEST1:
	.byte "BLESS",0
	.byte "CURE LIGHT WOUNDS",0
	.byte "PROTECTION/EVIL",0
	.byte "TURN THE UNDEAD",0
PRIEST2:
	.byte "CURE POISON",0
	.byte "CURE SERIOUS WOUNDS",0
	.byte "INVOCATION",0
	.byte "REPULSE THE UNDEAD",0
PRIEST3:
	.byte "EXORCISM",0
	.byte "PRAYER",0
	.byte "REBUKE THE UNDEAD",0
	.byte "SPIRITUAL SHIELD",0
PRIEST4:
	.byte "CURE ALL POISONS",0
	.byte "CURE ALL WOUNDS",0
	.byte "EXCOMMUNICATION",0
	.byte "EXILE THE UNDEAD",0
PRIEST5:
	.byte "HOLY SYMBOL",0
	.byte "RESTORATION",0
	.byte "RESURRECTION",0
	.byte "WORD OF RECALL",0
Each spell has 3 characteristics:

A. Type. There are 9 types of spells:

1=stun (basically taking out a monster without killing it--no XP will be given)
2=kill (killing a living creature, collect XP)
3=damage (inflict hit point damage)
4=combat bonus adjustment (for attack, armor, save and haste)
5=cure (to take a character out of a "non-good" state and bring it to a "good" state. for example, RESURRECTION for all intents and purposes, is a "cure death" spell)
6=teleport (only two of them in the game)
7=turn undead (basically a stun spell for priests to use against the undead monsters -- no XP collected)
8=holy spell (basically a kill spell for priests to be used against demonic creatures--XP will be collected)
9=heal hp (to cure hit points)

B. Area of effect (two values: one for individual and two for all. So a heal spell can cure hp for 1 character or all of them in the party at the same time or a kill spell can attempt to kill just one monster or all of the monsters in a single row)

C. Factor (used to determine the multiplier or a pointer, depending on the spell time).

Information for A+B+C above is stored into 8 bits below:

Code: Select all

	.byte 18     ; CHARM MONSTER
	.byte 84     ; DISPEL MAGIC
	.byte 66     ; ENCHANTED WEAPON
	.byte 50     ; MAGIC MISSILE

	.byte 34     ; CLOUD KILL
	.byte 69     ; HASTE
	.byte 57     ; LIGHTNING BOLT
	.byte 25     ; SLEEP

	.byte 41     ; DEATH SPELL
	.byte 92     ; DISPEL ALL MAGIC
	.byte 58     ; FIREBALL
	.byte 18     ; PHANTASMAL FORCE

	.byte 74     ; ENCHANTED ARMY
	.byte 34     ; FINGER OF DEATH
	.byte 26     ; POWER WORD STUN
	.byte 83     ; STONE TO FLESH

	.byte 105     ; DIMENSION DOOR
	.byte 59     ; METEOR SWARM
	.byte 42     ; POWER WORD KILL
	.byte 77     ; TIME DELAY
Bits 4-7 store A. Spell Type
Bit 3 stores B. Area of effect (0=one, 1=all)
Bits 0-2 stores C. Multiplier or Pointer
"A slave is one who waits for someone to come and free him." -- Ezra Pound
User avatar
darkatx
Vic 20 Afficionado
Posts: 473
Joined: Wed Feb 04, 2009 2:17 pm
Location: Canada

Post by darkatx »

Loved your demo man - it was really challenging and my humble party was wiped out by a nasty group of Orcs! :)

The animation was great - it really added to the atmosphere of the game.
Moving around was straightforward enough and creating a party was easy.

Only notes worth mentioning was that when I first attempted creating a character - one of them ended up having 260 HP?!!! :shock:

Is there going to be a swap or trade objects among party members option in the game?

Do you plan to have dead party members automatically drop down into last/6th position? I think you addressed that issue earlier on this thread but I can't recall?

Are there plans to add an auto-repeat option like hitting just <enter> in fight mode to do a default attack or parry according to the character's attributes (like in wizardry)?

I know its a demo but it plays real smooth and it's already better than most released stuff out there in this genre for the Vic (and even the 64) - the hard work really shows.

:D
Bravo!
Learning all the time... :)
User avatar
Ghislain
Realms of Quest
Posts: 1282
Joined: Sun Aug 08, 2004 12:54 am

Post by Ghislain »

darkatx wrote:Loved your demo man - it was really challenging and my humble party was wiped out by a nasty group of Orcs! :)
Thanks! Too bad about getting wiped out, though...
The animation was great - it really added to the atmosphere of the game.
Moving around was straightforward enough and creating a party was easy.

Only notes worth mentioning was that when I first attempted creating a character - one of them ended up having 260 HP?!!! :shock:
I've never seen this happen in all my hours of testing but I'll definitely go over my code and see how this might happen. Might just be a stray high byte of some sort, if you can find a way to consistently reproduce this, that would be great of course :) (easier said that done, I know--you might never ever see this again).

(what I might do is just make sure that the high byte for hit points is completely clear when a character is created -- just as a failsafe)

Just out of curiosity, do you recall what the character's CONSTITUTION was and what you chose as the race/class?
Is there going to be a swap or trade objects among party members option in the game?
It's already there -- but it must be done obliquely. Say you want A to give his long sword to B. What you have to do is VIEW A (when not in combat mode), select the long sword with the cursor keys, press RETURN-->this drops the item to the INVENTORY.

Then you select character B, go to INVENTORY, use the cursor keys to select the recently dropped long sword and press return--voila, that's how you trade items. Of course, you have to make sure that the weapon slot is empty in char B for this to work.
Do you plan to have dead party members automatically drop down into last/6th position? I think you addressed that issue earlier on this thread but I can't recall?
That's not really necessary to implement anymore-- if character 1 is dead, then the monsters just ignore him and for practical purposes, character 2 then becomes the priority "attackee" when it is the monsters' turn to attack.
Are there plans to add an auto-repeat option like hitting just <enter> in fight mode to do a default attack or parry according to the character's attributes (like in wizardry)?
That's an interesting idea, and there are advantages to this, of course. I could offer an "AUTO-ATTACK" option at the FIGHT RUN GREET screen but then the computer would just choose all attacks for the party. The disadvantage would be that under certain circumstances, a PARRY or BACKSTAB is more appropriate. Unlike Wizardry, rows 4-6 are allowed to ATTACK in my game :)
I know its a demo but it plays real smooth and it's already better than most released stuff out there in this genre for the Vic (and even the 64) - the hard work really shows.

:D
Bravo!
Wasn't my intent to have highlighted menu options--it just kind of worked out that way--thanks! Hopefully, I'll be finished soon.

I've also programmed about 16 out of the 40 spells in this game, so the end is definitely coming closer.
"A slave is one who waits for someone to come and free him." -- Ezra Pound
Post Reply