[CF-Devel] skill musings.

pstolarc at theperlguru.com pstolarc at theperlguru.com
Sat Nov 16 16:50:39 CST 2002


Pardon the length of this post.  Rough outline is intro, code changes, map
design for char creation.

On Sat, 16 Nov 2002, Tim Rightnour <
     
     root at garbled.net
     
     >  wrote:

(quoted text trimmed in areas with "...")
>
     
     But I was brainstorming with some fellows again on IRC yesterday, and came up
     
     >
     
     with something else..  One thing I would like to say though.. is lets not be
     
     >
     
     too hasty about fiddling around here.  This is a really complex subject, and we
     
     >
     
     do it no justice by solving it too quickly.
     
     >
     
     
     >
     
     Anyhow.. I had the idea of implementing a system where you build your character
     
     >
     
     from scratch. ... break melee into multiple weapon diciplines.  ...
     
     >
     
     break magic into it's component disciplines.
     
     >
     
     
     >
     
     Finally, each skill can be learned in either minimum, medium, or maximum
     
     >
     
     "attunement".  As an example, minimum might mean that you gain exp in that
     
     >
     
     skill at 33% of the normal rate, and your maximum level caps out around 35 or
     
     >
     
     so in that skill.  medium == 66%, maximum == 100%.
     
     ...
>
     
     Anyhow.. it's just one of many ideas..  and it needs refinement obviously.. but
     
     >
     
     any comments?
     
     
After the conversation, I put quite a bit more thought into this.  (All
numbers are made up and will probably need tuning.)

This system could be implemented with not that many code changes.  I think
all it needs is some changes to creators, to the skill objects, and to the
experience gain system.

HallOfSelection remains where it is, just as it is now, but we add a
special "advanced character creation" room.  To enter the room, the player
needs to read a sign, and say a word from the sign.  If they say the word,
a gate opens, and they step forward on to a player creator.  The player
creator changes their image to that of a child, gives them their gems, and
sends them to the character creation room.  

****

Now for the interesting bit.  The changes that would be required to
implement this thing.  

Firstly, creators.  Add a flag to the creator object that will place the
item created in a character's inventory (if the character is standing on
top of the creator.)  This change is necessary in order to add invisible
items into a player's inventory.  (I can think of other uses for this, but
they are beyond the scope.)  

My second change to creators isn't quite required, but it would be really
nice from a mapmaker's point of view.  If a creator has "other_arch none",
the item in the creator's inventory (if it exists) is used rather than
other_arch.  The item would be duplicated, not just dropped, to allow
"lifesave 1" to work logically.  I think the alternate uses for this change
are quite obvious.  

OK, the other areas I would change code are intermingled in their effect.
Skill objects and the experience system.  

By default, a player can't learn any skills.  (The spell type fuckery is
treated the same way as a skill.  ie the "cast fire-spell skill".)  If a
player has a certain skill object, and that object is "identified 0", then
the player is allowed to learn that skill, (but does not have the skill.)
Some skills (ie. literacy) every character starts out being able to learn.

Then we add a new concept called skill attunement.  A player can be attuned
to a certain skill, representing a natural talent, or the lack thereof for
a skill.  If they get this attunement, they might get 110% experience in
that skill.  Or they may only get 75% experience.  This information is
stored in the skill object, and handled in the experience gaining code.

Finally, we add experience caps to the skill objects.  Each skill object
contains the maximum possible experience for that skill.  (similar to hp
and maxhp).  When the player reaches this cap, they no longer gain
experience in that skill.  (These caps should be at level boundaries.)

****

And now for my take on how the character class creation room would look.

The player steps into the room.  They are a child.  They can choose to
entire garbled's school of weaponry, mwedel's school of hard knocks, etc.
Once they enter a school, it's a small map with altars.  Each altar is
connected to a creator that's underneath it.  The creators insert various
things into the character's inventory.  The altars are labeled with their
cost, and what they give.  If the character drops gems on the altar, the
other altars for that skill become blocked, and the creator inserts a skill
object into the char's inventory.  There would be three altars per skill.
One is low, 30% of max level, and only 75% experience gained.  One is
medium, 70% of max level, and 100% experience gained.  The third is
maximum, 100% of max level, and 110% experience gained.

Or the character can press the "sacrifice dex point" button, and two
"insert object" creators are triggered.  One inserts a force object that
has dex -1, and the other inserts a skill gem.  Minor cold vulnerability
(-10%) for a skill gem?  sure!  Major cold vulnerability (-50%) for two
skill gems?  No problem.  Crippled, and can only use one arm?  Why, that's
good for a skill gem or two!

OK, that's it.  Thanks for taking the time to read this.

-Philip

    
    


More information about the crossfire mailing list