Adventure game stuff

Started by Pinacolada, May 04, 2007, 07:40 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

hydrophilic

#25
I thought the program sounded good to start with but now that you tell us it was all in 4K, I am totally amazed!  Nice graphic too.  I was mainly interested in a series of tunnels / corridors but you've also got rooms of various sizes.  Any chance you'd try to write it again?  With BASIC 7 and over 100K of RAM it should be easy :)

I have lots of free time for half of my work day, so I've started building a list of skills / abilities / classes for an adventure game.  I haven't started any new code as I'm in the middle of two other non-128 coding projects at the moment (and a third I need to finish sometime soon).

Abilities & Classes
I'm thinking of stat + class based system, where stats grow based on level and you gain abilities/skills in each class.  You can change classes but your over-all level gets halfed if you do (result = big stat reduction).  To make up for this penalty a little (and encourage moderate class changes), I think most classes should have stat bonuses as an ability that can be learned.  Abilities / skills can be used in other classes by 'equiping' them.

I'm thinking you could equip a fixed number of skills/abilities for your current class and an equal number of 'foreign' ones from any other class.  And the number of equipable skills would also depend on your level (which remember gets halved on class change).  For example, a low/moderate THIEF could have 2 thief abilities plus 2 other abilities (which can not be thief abilities).  How's that sound?

Blah.  Should probably allow 2x abilities of your current class but anyway...

Some stat-boosting abilities by class would be like:
knight = defense + 20%
theif = speed + 20%
white mage = magic defense + 20%
black mage = magic offense + 20%
...I hope you get the idea.  Importantly, even at max level you wouldn't have enough 'slots' to equip all the stat boosts.  Also the stat-boosts would come in various powers; like Defense+10%, Defense+20%, etc. with progressively more expereince in a class needed to obtain them.  And you can 'buy' the abilities you want.  For example, you could get Defense+10% as soon as it was available or you could wait until Defense+20% was available and get that instead.

These stat-boosts are the only 'abilities' I've thought of so far.  Well, I've got some variations like Defense+10 (absolute value, not percentage).  And elemental abilities:  absorb fire, immune water, etc.  These should probably be character-based abilities and not class based, but anyway... a call for other 'abilities' folks!

Skills
I'm thinking skills are a lot like abilities in that they are learned in specific classes and can be optionaly be 'equiped' in other classes.  Unlike abilities, which are always in effect, skills can be used only in combat (or in special cases outside combat).  In other words they are commands that the player/character can execute.  Also unlike abilities, the player can use ALL skills of their current class and need not 'equip' them.

The idea is not new.  Examples include:
knight = equip armor, equip shield, parry
theif = steal, hide, lock-pick
white mage = cast heal, cure
black mage = cast fire, ice
time mage = cast slow, haste
ninja = throw (shurikan, sword, etc.)
monk = counter-attack

Some ideas I've never seen before:
thief = assess (scan target for items)
thief = pilfer (steal and use item in 1 turn)
ninja/monk = foot sweep (knock down enemy and delay their action)
monk = counter-toss (evade physical attack by tossing enemy)
ninja = evasion-jump (jump to evade foot-sweep or other low attack)
squire = duck (evade high-attack)
white mage = bestow (transfer own MP to another)
black mage = imbue (give elemental property to a character's weapon)
time mage = retro (reverse/undo previous 2 rounds of combat)
summoner = Enterprise (call the NCC-1701 for a barage of photon torpedoes)

I could go on and on.  Anyone have a favorite idea they've never seen in a game?

Classes
Some classes I've thought of besides the basic squire/knight/mage.  These would probably need to be character-specific since they wouldn't have many useful abilities in themselves... but anyway:
Bioligist = several varieties of scan.  carries/updates a bestiary that can view outside of combat
Chemist = ability to mix items; describe items before use (normally items would not have a description of effects until used once)
Physicist = disrupt scans; counter or nullify some magics
Blacksmith = forge more powerful weapons
Whitesmith = forge more powerful armor
Gunsmith = upgrade guns; forge ammo
Politician = bribe guards, haggle with shops
Stripper = reduce effectiveness of human enemies with sultry moves
Librarian / sage = bore humans to sleep with stories; vast knowledge of keywords (many actions are not possible until you've encountered a keyword in the game)

Now that I think about.  These are probably best for NPCs and player characters would be able to learn these abilities if they are in a related class and if they engage in one (or more) adventures with the NPC.  Other ideas?

Combat Graphics
Tradional console RPGs have a horizontal layout for battle.  Monsters on the left and characters on the right.  I'd like to use sprites for the characters, naturally.  But if I do that, I wouldn't have any sprites for the monsters.  One plan is to use char-based graphics for the monsters, but then the color would be extremely limited since it must also be shared with the background graphics.  Bitmap graphics could be used instead which would help with the color issue, although it could be tricky to avoid color clashes.  A bitmap seems like it would slow down things quite a bit... I guess it depends on how much animation is used for the monsters.

Another idea is to use a vertical layout.  The monsters at the top and the characters at the bottom.  This would allow sprite multiplexing and thus (with monsters made of sprites) all char colors could be devoted to background graphics.  I don't think you'd have enough room to have combat graphics (at the top) plus status/menu info (at the bottom).  So it seems you'd need the menu/info to the side.  Then the whole vertical range could be used for combat graphics.  The menu/info seems like it would need to squashed quite a bit to fit on the side in a vertical column.  Like this

*******char 1
*M*M*M*stats
**M*M**char 2
***M***stats
*******char 3
*C*C*C*stats

where the *'s are the battle field graphics, M's are monster sprites, and C's are character sprites.  Any thoughts on this or a better idea?

Adventure
From the above, it sounds like I'm thinking of an RPG.  These are RPG elements to be sure, but I want some more adventure stuff. I'd like to have several things to do besides combat and item retrieval.  I'm counting monster hunts / rescue missions as item retrieval here.  I guess a large part of any adventure is simple exploration and item retrieval.  *sigh*

Besides trading / smuggling (an idea 'borrowed' from Pirates!), I've only thought of 'commerce building'.  Basicaly, through talking (etc.) to shop owners / suppliers / politicians you can open or expand markets which would have effects like make items more potent, plentiful, cheaper etc.  Perhaps you could do the opposite to sabotage the enemie's commerce to make them have poorer quality equipment / health.  Any other ideas?

NPCs
I've mentioned previous post I'd like NPCs (at least some) to have their own goals (AI scripts).  Besides acting on their own another idea I have is 'affinities'.  This is loosely based on 'reputation' from Pirates! (again).  However this is much more individualized.  Some NPCs would gain/loose respect for you based on their personality and your actions when around them.  For example, a govenor/king might gain respect if you catch theives in/near their town which could result in optional quests.  Selling rare items or expanding commerce (see above) could gain respect with a shop owner allowing you to purchase rare items or get a discount.  That should be kind of obvious.  Then there would be characters who might gain affinity for you when you do things they like (which make others dislike you).  For example, an old pirate in a tavern who'd tell about some far-off treasure if you steal enough from the town residents which would anger the king not to mention the townspeople.  I've got a lot of ideas here, but let me know if you have any good ideas!

Whew... Airship is like a spark.

Pinacolada

Well, my friend Gene Buckle got a telnettable Apple BBS up and running with "The Land of Spur," the game I'm basing TADA off of. If you want to play, sign up and join RAILBENDER in-game. The command to do so from the main menu is "SPUR" (undocumented).

Address: telnet://aor.retroarchive.org

Sorry I haven't sent you the files, hydrophilic. I'll do it someday :)
C128 Programmer's Reference Guide FAIL:

1. Press 40/80 key DOWN.
2. Turn computer OFF, then ON.
3. Remove cartridge if present.

Pinacolada

Quote from: Pinacoloda
I would like to add a "skip carriage return" flag since getting a byte that happens to be #13 truncates the string, and I don't want that; each field in the character stats REL file is exactly 234 chars long, no more, no less. I'm a bit stymied about how to do so...

Well, I appreciate the ML, but I probably didn't explain myself well, as usual. The problem is this: Treating $0D as carriage returns is not what I *always* want to do, since any byte that happens to be $0D may need to be read in (e.g., a statistic of 13). Other times, the $0D may truncate a line of text, such as in a room description, and the program should then transfer that string to BASIC.

Here's my best description:

* If >0, CRFLAG would stop getting bytes at EOL (defined as $0D).

* If 0, disk input would continue until some byte count was reached (234 for statistic files, for example).

Quoting Hydrophilic:
Another scripting language.  I'll have to look that up.  I'm still trying to wrap my head around Inform and the Z-Machine...

I have PDFs of ACOS scripting now. I started an HTML guide but gave up. Too bad I can't select text from the PDF, since it's all typed using a dot-matrix printout.

Quoting Hydrophilic:
Honestly I never ran any of your code.  There were so many modules and the documention wasn't clear about what worked and what was broken.  I was impressed by the sheer volume.[...]

I will try to update that documentation. Over here, I've been cutting down the number of dsk images, and got rid of the /prg directory.

But as (I think I) stated elsewhere, it's really a port with a few extras thrown in (or will be thrown in someday)... :)

I've played Impossible Mission, never finished it, but it's pretty fun anyways.

3d game engine sounds good.
C128 Programmer's Reference Guide FAIL:

1. Press 40/80 key DOWN.
2. Turn computer OFF, then ON.
3. Remove cartridge if present.