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

Discussion, Reviews & High-scores

Moderator: Moderators

DELETED

Post by DELETED »

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

Post by Ghislain »

MRaider wrote:Liking this a lot. One point I noticed (playing in VICE) is that the movement keys auto-repeat, so when I zoomed my party along a few spaces without paying attention, two of them ended-up dead because I didn't notice they'd been attacked (or whatever it was that killed them) until afterwards. Maybe you could have the game disallow movememt when a potentially-lethal event occurs until a separate key has been pressed to indicate that you really want to run away...?
Glad you like the demo. The next one will probably be released once I have combat done. Hopefully I can keep that under 4K or so (9950 bytes left and counting down!).

What happened in your case (as you probably already know) was that some of your characters lost HP when they got poisoned (walking through poisonous marshes) or lost HP while walking through molten lava. You should have seen messages notifying you of this in the middle of the screen.

But you're right -- I should disable movement when something like this occurs. Next time you're poisoned, just look at the character who is poisoned when you move -- you'll notice a small flash on the character name -- this will become more obvious in the final version (sound effect will probably be used in this case).

What does everyone think about giving the option to save to disk or tape? I might have to disallow the latter if I run out of memory and I have to make this a multi-loading game (as in separate program modules for combat, movement, etc). If I can fit it all under 35.5K, then I'll keep tape support -- it just feels more 'retro' that way (except that, 32K memory expansion was extremely rare back in the day).

What does everyone else think about using the cursor keys for movement? I know it's a bit weird that you should press SHIFT+CRSR DOWN (on the real hardware) to move up on the map (or 'forward' inside a dunjon) but most Commodore users are familiar with cursor key usage. As well, this makes it easier for the game to run on emulators with a PC keyboard. And if one doesn't like to use the cursor keys, I will be adding joystick support.
"A slave is one who waits for someone to come and free him." -- Ezra Pound
saehn
Vic 20 Devotee
Posts: 235
Joined: Wed Apr 01, 2009 12:22 pm

Post by saehn »

Ghislain wrote:What does everyone else think about using the cursor keys for movement? I know it's a bit weird that you should press SHIFT+CRSR DOWN (on the real hardware) to move up on the map (or 'forward' inside a dunjon) but most Commodore users are familiar with cursor key usage. As well, this makes it easier for the game to run on emulators with a PC keyboard. And if one doesn't like to use the cursor keys, I will be adding joystick support.
It's looking great, Ghislain!

What about IJKL for NWSE? Pretty standard, used in Wasteland, home-key orientation, would work for emulators too. Maybe you could allow for either IJKL or cursor keys to work?
User avatar
orion70
VICtalian
Posts: 4343
Joined: Thu Feb 02, 2006 4:45 am
Location: Piacenza, Italy
Occupation: Biologist

Post by orion70 »

saehn wrote:What about IJKL for NWSE? Pretty standard, used in Wasteland, home-key orientation, would work for emulators too. Maybe you could allow for either IJKL or cursor keys to work?
Agree. Cursors keys on the real VIC would be a pain in the a**. :wink:

BTW, the demo was stunning!
User avatar
Ghislain
Realms of Quest
Posts: 1282
Joined: Sun Aug 08, 2004 12:54 am

Post by Ghislain »

saehn wrote:It's looking great, Ghislain!

What about IJKL for NWSE? Pretty standard, used in Wasteland, home-key orientation, would work for emulators too. Maybe you could allow for either IJKL or cursor keys to work?
Thanks! As for IJKL (I would rather use @:;/ because of their proximity to the RETURN key), I could put that in there once the game is officially released in beta/production versions. But I have to think about it -- I specifically used the cursor keys for a reason so that the menu cannot be used while in movement mode.

You guys don't have to feel shy if you find something wrong with the demo--basically, you are the QA team :)
"A slave is one who waits for someone to come and free him." -- Ezra Pound
User avatar
Mike
Herr VC
Posts: 4901
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Post by Mike »

You might consider making the controls freely configurable.

That said, my favourite keyboard control is bi-handed: XC;/ + Return

Greetings,

Michael
saehn
Vic 20 Devotee
Posts: 235
Joined: Wed Apr 01, 2009 12:22 pm

Post by saehn »

Ghislain wrote:Thanks! As for IJKL (I would rather use @:;/ because of their proximity to the RETURN key), I could put that in there once the game is officially released in beta/production versions. But I have to think about it -- I specifically used the cursor keys for a reason so that the menu cannot be used while in movement mode.
That sounds good except for emulation... those keys don't map out exactly the same on a PC keyboard, so might be a bit confusing? Just a thought.
User avatar
Ghislain
Realms of Quest
Posts: 1282
Joined: Sun Aug 08, 2004 12:54 am

Post by Ghislain »

orion70 wrote:Agree. Cursors keys on the real VIC would be a pain in the a**. :wink:
Yeah, but they work great on an emulator! :) That is until I try this on the real hardware, I'll probably change my mind by then.

I'll probably allow IJKL + cursor keys + joystick for movement and cursor keys + joystick for menu navigation.

A + RETURN + firebutton for the 'action' button when you're in movement mode and RETURN + firebutton to select a menu item when you're in menu mode.
BTW, the demo was stunning!
Thanks! Were you able to easily create characters, buy items, equip the characters and buy a boat without any problems?

As well, were you guys able to get to a dunjon and explore the 3D mazes? That's pure line feed shift registers being expressed there... a pretty cool memory saving technique :)
"A slave is one who waits for someone to come and free him." -- Ezra Pound
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 »

IJKL works fine on the real thing, those were the keys for Bard's Tale for starters...
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 »

I did some more graphics work today. I figure that after a long hard day hunting for orcs, your party deserves to lay back at the inn and enjoy their fill of bread wine and then reminisce about all the other times that they've had their fill of bread and wine!

Image

Basically, you'll see this image every time your party rests for the night (at the castle or at a city).

The graphic was inspired by the D&D comic book advertisements from the early 1980s:

Image
"A slave is one who waits for someone to come and free him." -- Ezra Pound
User avatar
Kweepa
Vic 20 Scientist
Posts: 1316
Joined: Fri Jan 04, 2008 5:11 pm
Location: Austin, Texas
Occupation: Game maker

Post by Kweepa »

Looking more and more spectacular!
I hope you're keeping some surprises back for the final game though!
User avatar
ral-clan
plays wooden flutes
Posts: 3702
Joined: Thu Jan 26, 2006 2:01 pm
Location: Canada

Post by ral-clan »

That pub scene is fantastic! And to think you don't consider yourself an artist! You're making great pixel art!
User avatar
Ghislain
Realms of Quest
Posts: 1282
Joined: Sun Aug 08, 2004 12:54 am

Post by Ghislain »

Kweepa wrote:Looking more and more spectacular!
I hope you're keeping some surprises back for the final game though!
ral-clan wrote:That pub scene is fantastic! And to think you don't consider yourself an artist! You're making great pixel art!
Thanks guys! Adding the pub graphic just adds a little bit extra to the enjoyment of the game, and I've always wanted to put something like that in there.

I confess, I'm a bit of an open book when it comes to making this game. The final product will have music and this won't be shown until the final game, I think.

Today I worked on the healing temple menu option. I did program 3 options (cure poison, stone to flesh, resurrection) but I decided to go with 1 "heal everything" option that costs 500 GP:

Image

A bit of a shortcut, but this way I can save memory and it also makes it easier for the player to navigate this option.

I also streamlined a lot of code this morning which saved a couople of hundred bytes. With the pub graphic and the temple added, now I've about 9500 bytes free.
"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'm working on the assembly language equivalent of 2^lelvel * 1000 (to calculate the level advancement chart). This is the source code :)

Code: Select all

PRINTSTRING_K	= $CB1E
PRINTINT_XA	= $DDCD		; prints x/a integer to the screen
PRINTFAC_K	= $DDD7		; prints FAC to screen
GETIN_K		= $FFE4
PRINTCHAR_K	= $FFD2
RANDOM_K	= $E094
INT_YA2FAC	= $D391		; converts y/a integer to floating point and stores it in FAC
CMP_FAC2AY	= $DC5B		; compares FAC to memory location a/y
STA_FAC2XY	= $DBD4		; stores FAC to memory location x/y
STA_FAC2TEMP1	= $DBCA		; stores FAC in temporary location 1
STA_FAC2AFAC	= $DC0C
MEM_AY2FAC	= $DBA2		; transfers MFLPT in a/y to FAC
SUB_AY_FAC	= $D850		; FAC = memory at a/y - FAC
INT_FAC		= $DCCC		; perform INT on FAC
ADD_FAC_AY	= $D867		; add fac to MFLPT in a/y then store in FAC
POWER_AFAC_FAC	= $DF7D		; FAC = AFAC ^ FAC
MULTIPLY_FAC10	= $DAE2		; multiply FAC by 10



		LDY #2
		LDA #0
		JSR INT_YA2FAC		; convert integer 2 to FAC
		JSR STA_FAC2AFAC	; store FAC in AFAC
		LDY #2
		LDA (PCHARLO),Y		; get level of the character
		TAY
		LDA #0
		JSR INT_YA2FAC		; convert level to FAC
		JSR POWER_AFAC_FAC	; FAC = 2 ^ level
		JSR MULTIPLY_FAC10
		JSR MULTIPLY_FAC10
		JSR MULTIPLY_FAC10	; multiply by 1000
		JSR PRINTFAC_K
2^1*1000 = 2000 (the base experience requirement for level 2 for a fighter).

I might change the base experience for other classes (1500 for priest, 2500 for magic user, etc) if memory allows it.
"A slave is one who waits for someone to come and free him." -- Ezra Pound
User avatar
Mike
Herr VC
Posts: 4901
Joined: Wed Dec 01, 2004 1:57 pm
Location: Munich, Germany
Occupation: electrical engineer

Post by Mike »

This is, how CBM BASIC stores the value 1000 as float value in memory:

Code: Select all

$8A $7A $00 $00 $00
Which, in fact, is 2^10*0.9765625. The first byte contains the exponent in excess-128 notation, the other 4 bytes contain the mantissa.

That means, in your concrete application, you can produce the values 2000, 4000, etc., by replacing $8A with $8B, $8C, ...

Greetings,

Michael
Post Reply