[CF-Devel] Equipment musings
Mark Wedel
mwedel at sonic.net
Sun Jul 7 18:21:13 CDT 2002
I'm currently implementing the ideas I sent to the list about a month ago -
the item_power and the body location.
In very quick summary, the body location is to give each race a set of
locations on his body to equip stuff. Thus, a human has a torso, and armor uses
the torso slot. However, a dragon doesn't have a torso, and thus can't wear
armor (or at least human armor).
This works out nicely - you can now more finely restricts what races can not
can not wear (compared to the blanked can use armor flag). The one odd spot is
bows/weapons/shields. You can also do things like give a fireborn 4 fingers so
it can wear four rings.
The way the code is you have 2 'arms' for the above mentioned item. A sword
would use one, and a shield another. A bow uses both, requiring that you
unequip your weapon and shield (as per discussions on the mailing list).
Similarly, you can make 2 handed weapons that also require the removal of shield.
This all works fine until you examine some of the strange interactions. A
character that is prohibited from using weapons is really prohibited from melee
weapons - it can still use bows. Thus, the dragon, monk, etc can fire that bow.
For some races, this doesn't make too much sense - if the dragon can't use a
weapon or shield because of his strange physiology, it doesn't make much sense
that he can use a bow. My solution in that case is to just give him 0 'arm's,
so he can't use bows, shields, or weapons. I think that is the right approach,
but this obviously weakens him some.
I think the can use weapon flag will still be needed for things like monks
and/or worshippers of gaea. In my original thinking, the idea would be that you
would just have the force object use up some of these locations. But a
worshipper of gaea still needs to be allowed to use shields. So the can use
weapon will be as it is now - a prohibition on melee weapons, but not range
weapons. IMO, that isn't much a problem.
The can_use_armor is more problematic. This is a case IMO where the force
object should use up those body locations. This provides much finer grain of
control (should a prohibition on armor really effect things like girdles?
However, the problem with shields comes up again - you just can't reduce the
body location, as the player could still choose to use a shield but without a
weapon.
The more I think about this, the more the idea of splitting the two arms apart
makes more sense, eg, instead of having 'body_arms 2' for humanoids, have a
'body_weapon_arm 1' and 'body_shield_arm 1'. Things like bows or two handed
weapons would then just use both of those locations.
One reason this wasn't done was because of the idea of characters with two
weapons (under current code, this won't be allowed because of the many problems
it would cause).
The alternative is to add a no_shield_flag to the various things that prohibit
armor. I guess that isn't that hard. IT sort of gets away from the original
idea in which item_type wouldn't be very important, eg, all items of all types
have basically the same effects, and the body location information would just
limit where the different things could get applied. I think that is probably
what I will do for now.
ITEM POWER: As part of these changes, I've decided to implement the item
power idea I had. Basic summary was that each object would have an item_power
rating, determined basically by how good it was, and your total equipment would
have to be less than some value which is based on your overall level. Thus,
first level characters wouldn't be able to use really great stuff, and even high
level characters that have all the best artifacts would have to make choices on
which to wear, as it won't be possible to wear all the best ones at the same
time. This will make things harder, and from what I've seen, people generally
think the high level stuff is too easy.
The coding on this is actually pretty straightfoward. The hard part will be
balancing. And more precisely, objects that have been created before this code
goes into effect - for those objects, the computer calcuates the item_power
(just as it would do for randomly created objects). The problem is that the
calculation isn't very good right now when it comes to protections.
In any case, my idea is to provide this information (examining an object will
tell you its power rating, and the skills command will show you the total you
have equipped. However, there won't be any prohibition enforced - you can still
equip way more stuff than you should perhaps be allowed to. This will let us
see how things are and tune them appropriately. Then some time in the future,
the actual enforcement of these can be activated.
--
I think both of these changes will make the game much more interesting -
different races can really be much more different now, and many more ways to
balance the races and classes. Hopefully, I'll have something to commit within
a week.
More information about the crossfire
mailing list