[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