[crossfire] Buildable Land Plots

Todd Mitchell temitchell at sympatico.ca
Wed Sep 21 22:40:46 CDT 2005


A long time ago I started working on something for buildings.
The synopsys is:

You would add a few new arches: a ZONE arch, a special EXIT arch and
BLUEPRINT arch.

Map makers would add zone arches (a subtype of altars) to the maps to
designate where homes could be built, players would go to a store and
buy a blueprint for a house (different house types naturally), and when
they stood on the zone and applied the bluprint, two things would happen
- first a special unique exit would be created which was not a
traditional unique exit, but a unique object that was an exit*  This
would mean that as a unique object, it would be saved on the map it was
placed on. This exit would point to a newly created map in
<cfserver>/var/crossfire/maps 
The second thing of course was that a map of the proper type would be
created in  <cfserver>/var/crossfire/maps.  These maps would be like
guild maps in that they would have unique areas but would be sharable
(you could invite other player in).  The player would have a deed to the
property which activated most of the gateways and inventory checkers
giving them access to all the rooms of the house, while guests would
only be allowed into the main rooms.  Variations on this theme would
allow new guilds to be built and even churches for the religious folk.

That's the basic gist of things - there was some idea of having
different zones allowing different buildings or having four joined zones
allowing bigger building to be created.

Here are examples of the arches:  


#define ALTAR_BUILDING		1 /*subtype of ALTAR*/

zone.arc:
Object zone
name lotforsale
type 18
subtype 1
face goldmat.111
color_fg brown
no_pick 1
editable 2
visibility 100
end

#define BUILDING_BLUEPRINT		129

bprint_house.arc:
Object bprint_house
name house blueprint
face bprint.111
race scrolls
nrof 1
type 129
material 0
value 34
weight 350
editable 128
magicmap white
name_pl blueprints
client_type 1041
end

#define EXIT_BUILDING		1 /*subtype of EXIT*/

b_house.arc:
Object b_house
type 66
subtype 1
face house_3.111
color_fg brown
no_pick 1
editable 2
unique 1
visibility 100
end


* I changed enter_exit in main.c so exit subtype 1 (EXIT_BUILDING) did
not automatically make an exit to a unique map, but was a unique object
which happened to be an exit.

else if (exit_ob->subtype != EXIT_BUILDING && QUERY_FLAG(exit_ob,
FLAG_UNIQUE)) {
	    enter_unique_map(op, exit_ob);


I didn't get very far with it but I have a few house templates and there
are probably a lot of over optimistic postings in the archives about it.



On Wed, 2005-21-09 at 18:31 -0600, Alex Schultz wrote:
>
     
      Nicolas Weeger wrote:
     
     >
     
     
     >
     
      >Hello.
     
     >
     
      >
     
     >
     
      >Your ideas about building on land sound fun, let's hope we can
     
     >
     
      >do something on that effect :)
     
     >
     
      >
     
     >
     
      >Just a note: if you intend to have land building be part of
     
     >
     
      >game, imo do it totally part of the server code, or do it
     
     >
     
      >totally through Python (or a separate plugin, for that
     
     >
     
      >matter). Remember Python is *optional*, we wouldn't want
     
     >
     
      >someone to have part of building (since in server core) but
     
     >
     
      >not some important part (in plugin) ^_-
     
     >
     
      >
     
     >
     
      >Ryo
     
     >
     
      >
     
     >
     
      True, but in any case though, I'll be starting on the changes that that 
     
     >
     
      are useful for things other than the plots first, and those will be 
     
     >
     
      written in C, and whether the plot-specific parts are written in python 
     
     >
     
      on not, they will depend on the nice general changes (i.e. 'global 
     
     >
     
      unique' maps). So in other words, it will probably a be a while till I 
     
     >
     
      get to that stage anyways.  Anyways, Now that I think about it, making 
     
     >
     
      the parts that are specific to the land plots as a separate plugin might 
     
     >
     
      be a good idea.
     
     >
     
     
     >
     
      Hmm.. really a even simpler way to think about 'global unique' maps then 
     
     >
     
      my original explanation is as (optionally permanent) maps created from 
     
     >
     
      templates. And when applying unique or 'global unique' maps to the 
     
     >
     
      random map generator, it just makes the random map generator the 
     
     >
     
      template for the unique/'global unique' map.
     
     >
     
     
     >
     
      Alex Schultz
     
     >
     
     
     >
     
      _______________________________________________
     
     >
     
      crossfire mailing list
     
     >
     
     
      crossfire at metalforge.org
      
      
     >
     
     
      http://mailman.metalforge.org/mailman/listinfo/crossfire
      
      
     -- 
Todd Mitchell <
     
     temitchell at sympatico.ca
     
     >


    
    


More information about the crossfire mailing list