[crossfire] Items that evolve all the time

tchize at myrealbox.com tchize at myrealbox.com
Tue Apr 26 07:41:15 CDT 2005


Le Mardi 26 Avril 2005 13:47, Nicolas Weeger a écrit :
>
     
      > Was awaiting a growing world for long :)
     
     >
     
     
     >
     
      That'll add, imo, much fun to the game, and many opportunities to do other
     
     >
     
      things than monster-bashing :) (which *is* fun, but sometimes you need some
     
     >
     
      rest from that)
     
     >
     
     
     
Indeed, time to open some fish & chips at scorn square central

>
     
      > So to conclude:
     
     >
     
      > - no need for an extra storing tag for the last time it got a turn. There
     
     >
     
      > is already logic for that (the tag is named lastxxx don't have code here)
     
     >
     
     
     >
     
      Didn't know that tag, will look for it.
     
     
This tag is increased by the object speed at each server tick. When it reach a 
fixed amount, that fixed amount is substracted and the object plays on turn. 
(simply one call to move(ob) i think)

>
     
     
     >
     
      > - no need for such things as an overlay map
     
     >
     
     
     >
     
      I'll disagree here. Imagine a beehive generating honey, at approx 1 volume
     
     >
     
      per 10 minutes (random thoughts), holding max 10 volumes. When first time
     
     >
     
      map is loaded, you'll have nothing - wait 10 minutes, 1 volume. Map gets
     
     >
     
      swapped out, you need to remember that 1 volume, even if you happen to run
     
     


no need to remember them in an overlay map. and remembering the tree has one 
apple is as simple as putting an apple in the tree inventory. sure you need a 
may to configure your bee hive as having a max of 15 volumes of honey, but 
that need to be set in the object not in an overlay map. It would be like 
creating an overlay map to say a chest has content xy and has a max weight of 
5000. Hey wait, i found out where to state your growable can produce a max of 
ten volumes.

>
     
      all turns. Oh, I forgot to say that: the idea is that growth is randomized
     
     >
     
      (ie for instance need 500 food for 1 volume, growth rate 5 to 10 food units
     
     >
     
      per turn). So you can't just fastforward from the initial settings, you
     
     >
     
      need to remember a few values.
     
     
I never said the opposite. Let's say each turn an apple tree has a probability 
of one to ten of producing an apple and the tree gets a turn every 3 minutes. 
Statistically, the tree would produce one apple about every 15 minutes but it 
could produce three apples in 9 minutes like it could produce no apple for 30 
minutes.

Concerning the fast forward, i probably wasn't clear.
The idea was, at map loading time, you make a quick calculation on every 
'alwaysactive' to count the number of turn it should have 'moved'. Let's say 
the map was swapped out for 30 minutes and there is my tree in it. Player 
enter map, server calculate, for the tree and using the informations in the 
map structure used for reset, a gap of 10 turns (or it add the number of 
missed 'server ticks' to the lastxxxx i don't remember the name), and so the 
object will get, immediatly, from the main server loop, 10 executions of the 
move(ob) functions. This is just a matter of executing n times in a row a 
function which would have have been executed n times but not in a row if map 
was still active instead of being swapped out. The result would be the same.
What i *never* meaned to say was 'ok tree was out for 30 minutes, so give it 2 
apples'. Indeed i had randomizing in head too :)

>
     
     
     >
     
      > Now concercing weather interaction. This is abvious values like humidity
     
     >
     
      > and temperature, when available, should influence the growing process :)
     
     >
     
      > And the type of ground too!
     
     >
     
     
     >
     
      I'm not that far in the thinking yet :)
     
     >
     
      That could be done, but I'll first do a basic thing, then we'll think about
     
     >
     
      new more behaviours (*gets ready to make a 'plant' file in lib <grin>*)
     
     >
     
     
     
Yes, one step at a time, but i fear to see player planting tree seeds in the 
scorn square :)

>
     
      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)
     
     >
     
     
     >
     
     
     >
     
     
     >
     
     
     >
     
      _______________________________________________
     
     >
     
      crossfire mailing list
     
     >
     
     
      crossfire at metalforge.org
      
      
     >
     
     
      http://mailman.metalforge.org/mailman/listinfo/crossfire
      
      
     
Ok, need to do real work
-- 
David Delbecq
Royal Meteorological Institute of Belgium

    
    


More information about the crossfire mailing list