[crossfire] Archetype properties and multi-tile buildings, etc.

Mark Wedel mwedel at sonic.net
Wed Dec 19 23:17:35 CST 2007


Kevin R. Bulgrien wrote:
> Consider the following from server/doc/Developers/objects or note on 25012 at 
> http://wiki.metalforge.net/doku.php/dev:objects?s=type#client_types_client_type
> 
> 896 : 	mwedel 	3553 	25000-25999 Non-inventory items, stuff stuck to the 
> floor, that can be applied.
> 897 : 	  	  	25011 Town portal (66)
> 898 : 	  	  	25012 Exits, doors, buildings - much more mundane exits (66)
> 899 : 	  	  	Note to arch writers; only need to set the client_type on
> 900 : 	  	  	the head (this is the case for all other properties as
> 901 : 	  	  	well).
> 
> I'd like clarification on the "Note to arch writers" that appears here.
> 
> I wrote a new arch and copied an existing tower, but then read the above note
> and modified the arch as follows.  It appears to work just fine:

  That comment there should be correct.  It is intended that the head of the 
object controls most all aspects of the object, and all code should pretty much 
be of the nature 'if (op->head) op = op->head' type of thing so that all 
operations work on the had.

  That said, I can't see that everyplace in the code does that, but IMO it 
should, so if it doesn't, that would really be a bug.


> ---
> 
> Could we get some clarification.  The lighthouse has been lightly tested.
> No, I didn't test with magic map, but otherwise it seems to work fine.
> Are the other arches that duplicate data just bloated?

  Almost certainly the extra data is just bloated.  OTOH, other than a little 
extra disk space, it doesn't really cost much - those fields use the same amount 
of memory in the running server, whether or not they are actually set to 
anything, so setting more of those fields in the object doesn't cause extra ram 
to be used




More information about the crossfire mailing list