[crossfire] Building materials
Mitch Obrian
mikeeusaaa at yahoo.com
Wed Mar 23 11:42:30 CST 2005
I suggest just making more archtypes. Python sometimes
breaks depending on verison. C and text isn't as
finicky. I rather like the shop way it is now and have
added a material store to MLAB CityDeClouds awhile ago
along with buildable plots.
--- Nicolas Weeger <
nicolas.weeger at laposte.net
> wrote:
>
Hello.
>
>
A few months ago I committed my building code, which
>
lets a player build a map at will.
>
>
To correctly be used, the player needs 'Raw
>
materials', like 'Raw floor material', one per
>
square to be used.
>
>
Currently, there is only one floor type, and one
>
wall type, as well as the ability to remove walls.
>
>
I was thinking of adding more things to build, and
>
wondering the best way to do that.
>
>
Right now, my code uses special archetypes,
>
hardcoded with the built item in the 'slaying' field
>
of the archetype.
>
>
The idea I had is to make a python plugin to let
>
users request materials. So the player could go to a
>
shop, and ask for 'wood floor', or 'marble floor',
>
or 'fountain', and so on.
>
>
How I was thinking of implementing that was:
>
* when the player asks for material, create a dummy
>
material object.
>
* set its slaying field with the archetype name
>
(need a 'human name to archetype' conversion so
>
players can say 'wood floor' instead of 'woodfloor'
>
or whatever the archetype is)
>
* if required, change the material type to 'wall',
>
'floor', 'item'.
>
>
Those last 3 types are the 3 types of items my code
>
currently handles: wall will be built on a floor,
>
and try to connect to other floors around. Floor
>
will destroy a wall on the square, and/or replace
>
existing floor. Finally item is checked for
>
'connected' (door, lever, ...) type, connected if
>
required (through the use of a marking rune), and
>
inserted.
>
>
The main point I have currently is that letting a
>
player request material may lead to abuse. You could
>
ask for 'dragon mail', then build one, if code isn't
>
correctly done.
>
>
To prevent that, I see 3 solutions:
>
* build a 'safe list' of archetypes players can
>
build, fill it with everything they should be
>
allowed to create
>
* build a 'safe list' of item types allowed. Thus
>
you can disable 'armor' but enable 'wall'.
>
* don't do any plugin, and make archetypes for all
>
buildable items :)
>
>
The 1st is more messy, because when you add a new
>
floor/wall/... you need to update the list, but lets
>
you have more control over what you can or cannot
>
build.
>
The 2nd may be easier to do (only let players build
>
floor, wall, doors/level/..., and items with no
>
type), but gives less freedom.
>
3rd is the current one, but will take time to make
>
archetypes for everything you can build - and kind
>
of duplicate many things.
>
>
So, what does everyone think of that?
>
>
Nicolas
>
>
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)
>
>
>
>
>
_______________________________________________
>
crossfire mailing list
>
crossfire at metalforge.org
>
http://mailman.metalforge.org/mailman/listinfo/crossfire
>
__________________________________________________
Do You Yahoo!?
Tired of spam? Yahoo! Mail has the best spam protection around
http://mail.yahoo.com
More information about the crossfire
mailing list