[crossfire] Server map redo: movement types
Nicolas Weeger
nicolas.weeger at laposte.net
Tue Aug 30 02:35:57 CDT 2005
>
All fields below use a bitmask to represent value, similar
to how the attacktype
>
works. These would be defined like:
>
>
MOVE_WALK 0x1
>
MOVE_FLY 0x2
>
MOVE_SWIM 0x4
>
etc
Sounds like a great proposal.
I'd tweak it slightly, having MOVE_FLY_LOW and MOVE_FLY_HIGH:
first is your regular levitation, flying over jungle and water
maybe, second is flying over high mountains.
Let's not forget also MOVE_CROUCH :)
>
Question: Do we want to print messages and/or add support
of messages that
>
give some clue as to possiblity to move but player lacks
ability. Eg, player
>
trys to walk into water and gets message 'you lack the
abilility to swim' or
>
something, and a player tht does have swimming but tries to
swim into deep water
>
maybe gets a message like 'you can't swim in the deep water
- it is too rough'
>
or something?
I'd say yes, we should warn player, directly or not (ie "you
hate water, don't want to drown" => hint hint: learn to swim!).
It could be nice to also either have the player automatically
fly over an obstacle (for instance), or get a message
(something like "the wall is too high to walk on" => hint
hint: try flying! :p). This way players won't need to always
fly or have to try all solutions to get over walls.
>
I'm mixed what to do for multiple move types. If a player
has both fly and
>
walk movement types, what should happen when he walks on a
trap door? Nothing
>
at all? Or activated? What about when he walks on a
teleporter/shop map - same
>
question?
I'd say handle as it is now. Player is assumed to walk, unless
using levitation spell/skill/item.
This then means dragons should be able to levitate (skill) and
cast spells, of course (not sure it's possible).
>
I'm thinking the logic should be like the block code above
- players generally
>
avoid the hazards. In the case of shop mats/teleporters,
players could manually
>
apply them. Perhaps keep the enforcement of 'can't be
flying to pick stuff up',
>
so players could always put those nifty items on top of
traps to try and lure
>
the players.
Agreed on the can't be flying requirement. Maybe add a new
skill 'pick with a fishing pole' to grab items while flying? :)
>
move_slow: Like move_block, bitmask that represents slower
movement of that
>
type. Walking though jungle should be pretty slow, and
flying over it shouldn't
>
slow one down much. right now, the actual penalty is same
for all movement
>
types, so not sure if there is a need desire to be able to
specify different
>
move penalties (10% if flying, 60% of walking, etc).
It could be interesting to do, but maybe too complex.
But it could be fun, imagine a big jungle and a small path you
can follow to go faster - alas, monsters lurk around!
>
However, for loading, I'm thinking of allowing more general
naming, so instead
>
of having to do:
>
move_on 7
>
>
You could do
>
walk_on 1
>
fly_on 1
>
swim_on 1
>
>
And the loader takes care of setting up the bitmask. I
mostly see this as a
>
convenience for archetype writers - using fill names is much
easier than having
>
to look up bitmask, convert, etc (ok, with just a few
values, not hard, but
>
still). I'm not concerned about saves, as the editor should
be able to nicify
>
this is necessary.
I'm thinking of tweaking the collect.pl script to accept names
instead of values for flags. So instead of having "attacktype
5940423" you'd have "attacktype fire cold poison". The
collect.pl changes that to correct numerical value.
This way the loader doesn't have to handle those gory details,
no performance hit :)
Ryo
Accédez au courrier électronique de La Poste : www.laposte.net ;
3615 LAPOSTENET (0,34/mn) ; tél : 08 92 68 13 50 (0,34/mn)
More information about the crossfire
mailing list