[CF-Devel] A brief introduction, and some thoughts

Mark Wedel mwedel at sonic.net
Sat Sep 29 16:10:29 CDT 2001


Tim Rightnour wrote:

>
     
     
     >
     
      >  These are hard coded, which is the real problem.  Plus, the code has no idea
     
     >
     
      > if
     
     >
     
      > a weapon is a pointing tape or a bludgeon type, or whatever.
     
     >
     
     
     >
     
      Right.. and thats next on my list.  I've been looking at your old email about
     
     >
     
      object classification, and I think I want to implement that.  I've been
     
     >
     
      thinking along the lines of every object having a Class, Subclass, and
     
     >
     
      SubSubClass.. like:
     
     >
     
     
     >
     
      Class: non-consumable
     
     >
     
      Subclass: sword
     
     >
     
      SubSubclass: slash
     
     >
     
     
     >
     
      I know you had some ideas on this.. I'd really like to hear those.
     
     
 My object classification was really starting at the top level, eg:

monsters
players
items (everything that can be picked up)
background/terrain
spells/effects/skills

 monster and player are mostly seperated because the meanings of the various
stats is greatly different (con has different meaning for monsters than
players).

 Within items, you might then split it like:
equippables (swords, rings, armor, ...)
eatables
spell casting objects (rods, potions, scrolls, etc)
misc (money, gems)

 I'm sure I'm missing some things there.

 Within each class, all values in the subfields have the same meaning - know
longer would last_sp mean one thing for a sword but something different for
armor, and yet something else for other objects.

 At that point, the meaning of the sub sub type (ring, armor, sword) really only
has to do with where you put it on and how many a person can use.  It could be
useful to perhaps abstract that into a bitmask (so as a simple example, the
shield may have the mask 0000001, meaning left arm, while the sword would have
0000010, might right arm/hand, but a two handed sword would have 0000011,
meaning both).  Only tricky part is how do you deal with something that can go
on here or there (rings go on one of two places, but no specific requirement,
but could be made more interesting that some rings only go on the right hand for
example).   The need of the sub sub type really needs to be determined based on
what information is needed from that - if you went with a bitmask which said
where and item goes, then the only real need for the sub sub type is where the
character can use that.

 The problem with doing this is that it is a lot of work.  IMO, the easiest path
would be first to change the internal representation of objects to the norm
form, and have the object loader do the conversion (which really means
populating into the new fields), and write out in new form.  Then work can be
done to actually update all the arch files to the new form.

 In terms of slash/bash/poke, if you really wanted added reality, you could
actually make that different attack types - basically split phyiscal into those
three areas.  This then allows armors that protect better against some types vs
others.  Weapons (and monsters) could still have multiple attack types - a pole
axe could have both poke and slash (cleave), and that would work fine with the
normal code - it would use whatever attack form took more data - that could be
represented as the creature using it having some idea what works better.



>
     
      So.. thinking about this..  I've had a few ideas:
     
     >
     
     
     >
     
      We break the weapon skils out from under the physical category of skills, which
     
     >
     
      is an interesting problem in itself, as it would render that category
     
     >
     
      ~useless.. but whatever.  Anyhow.. we break the skills out into the different
     
     >
     
      weapon types, so you can learn slashing, crushing, piercing whatever as an
     
     >
     
      individual skill.
     
     >
     
     
     >
     
      By breaking each one out, away from the general physical category, you enable
     
     >
     
      two things:
     
     >
     
     
     >
     
      1) I can know slashing better than crushing, and if I use slashing more than
     
     >
     
      crushing, I excel at it.
     
     >
     
     
     >
     
      2) By making more skill experience categories, you start to whiddle down the
     
     >
     
      ability for a player to become a master of everything. So in essence, yes, a
     
     >
     
      priest *could* learn a slashing weapon, and thats not totally unreasonable, as
     
     >
     
      a priest of an evil god might prefer slashing, but if a player wishes to be
     
     >
     
      good at every skill, he can't max them all out.
     
     >
     
     
     >
     
      It's also more realistic.  I might be good with a dagger, but when I pick up a
     
     >
     
      warhammer, I'm unlikely to do well.
     
     
 True.  But unless there are advantages to certain attack types, I think the
likely scenario is people will just use swords starting from a very early time,
as I'm pretty sure most of the really good weapons out in the game are swords.

 It would be much cooler to mix this by also having effects of the different
attack types - piercings should no basically nothing to skeletons, so when that
person who is an expert at piercing weapons finally fights them, might realize
at that point that boy, it really would have been useful to learn bludgeon
weapons (piercing would not be completely useless, but skeletons may have
effectively 85 resistances to piercing for example)


>
     
      I agree that learning a skill should allways be possible.  I guess what I
     
     >
     
      really meant was that priests wouldn't default to starting with slashing, they
     
     >
     
      would start with crush/bludgeon.  They could opt to learn whatever, and perhaps
     
     >
     
      certain gods would grant different skills, like when you become a follower of
     
     >
     
      lythander, you would recieve the bow skill.
     
     
 That works.  It certainly wouldn't be bad to do - I'm just not positive if it
will have much in the long term effect other than priests trying to find the
scroll of slashing so they can use perhaps a better weapon.

 I know at least at low levels, your god will bless (improve) your weapon.  If
each god had an associated weapon and only improved weapons of that type, it
would start to have a lot more meaning to these skills - knowing to use your
gods weapon is now important.

>
     
      I think it adds alot to the game in the field of character development, and
     
     >
     
      attachment to one's persona, without taking away the action side of it.  You
     
     >
     
      still rampage through rooms and kill, it just allows you to create a character
     
     >
     
      that does it in the way you prefer.  Making this a slow, RPG would be silly..
     
     >
     
      the fast paced action is what makes it fun.  But I don't think having multiple
     
     >
     
      skills will slow it down.. what they allow you to do is really fine tune
     
     >
     
      yourself, you become good at what you do the most of.
     
     
 True, and since most of the skill stuff is automatic, you don't need to worry
about it.


Andreas Vogl wrote:

>
     
     
     >
     
      Yes, having some feedback on attacktypes/resistances is something
     
     >
     
      I've always felt was missing somehow. It would be good to not let the
     
     >
     
      attack messages get too long though, as this might slow the game
     
     >
     
      for online play.
     
     
 Presumably, the messages won't be any worse then is currently there.

If message length was really a problem, you could let the client do most of it,
ie, the server sends something like ATMSG 15 orc firebrand, and the client looks
up message 15 which is 'you singe the %s with your %s', and does the right
thing.  Aside from bandwidth savings, it also would let some of the localization
(if desired) get moved to the client, which probably makes more sense than
trying to have the server do localization.


>
     
      KO'ing monsters is very difficult to handle, as most maps are
     
     >
     
      designed in a way that getting past a monster means getting the
     
     >
     
      treasures. It should only happen to monsters of lower/equal level than
     
     >
     
      yours. (Monsters that you would be able to kill too)
     
     
 Yeah, I recall stealing and other skills had initial problems in that players
were able to avoid some really tough creatures.

 OTOH, I think it would be nice at some level to let skillful/clever people be
able to do that - a lot of the game right now is how well you can kill, because
that is needed for most quest all quests.  So really there is no point to ever
try and play a thief of sneaky type character, because in most cases, in the
end, you have to kill something.

>
     
     
     >
     
      I remember there was a suggestion long ago to completely redo
     
     >
     
      karate-like skills with special moves that consume health to
     
     >
     
      execute. This was one of the "cool-but-I-won't-code-it" things. :)
     
     
 There was actually a patch by Brian Thomas which extended combat to have many
new (and more complicating) features.  The problem once again is that crossfire
is fast paced - you generally don't have time to think about most things.  So in
terms of karate, you would basically have to have something like 'use the hp
sucking style', and then all attacks use that, and not having to press special
keys to do special things in the midst of combat.


>
     
      The critical point is not the additional damage but all the extra-
     
     >
     
      goodies you get from weapons (resistances, stats etc).
     
     >
     
      By allowing players to wear two weapons, all shields would become
     
     >
     
      totally useless suddenly. And this is not easy to balance out.
     
     
 Yep.  And making shields better is probably not the right approach here.  This
could be done by some trickery - for example, if we ever add the minimum_level
requirement to items, then you could use the combined total for the two weapons
being used as the limiting factor (so if your level 15, and you have a level 10
in your primary hand, you could only use a level 5 item or less in your off
hand) - if the min_level values are proper for the item power, this should still
keep things balanced. (if you have a level 15 item, it now means you can use
just a normal item in your off hand, which may not be as useful as say a level 5
shield, but too bad)

    
    


More information about the crossfire mailing list