[CF-Devel] Future development & version 1.0.

Jan Echternach echter at informatik.uni-rostock.de
Wed Jan 3 06:59:52 CST 2001


On Tue, Jan 02, 2001 at 08:48:38PM -0800, Mark Wedel wrote:
>
     
       IF for example they are the same except for damage (ie, they are moving the
     
     >
     
      same direction, have the same distance to still move, and so on), merge them but
     
     >
     
      have the damage additive?  Would that work? (I guess the better question is -
     
     
There are other differences like stats.hp, but it might still help a
bit.

I just noticed that explosions are not CONE, but FBALL objects, handled
by explosion() in server/spell_util.c.  This function does a
remove_ob()/insert_ob_in_map() (almost) every time to keep the fire
object on top (which isn't working properly anyway).  Maybe removing
that would improve performance significantly.

>
     
       Otherwise, other than limiting amount of objects per space, I don't see an easy
     
     >
     
      solution to that (a harder one would be to have a seperate list/stacking on each
     
     >
     
      space that represents objects or livable creatures, which wouldn't get too large
     
     >
     
      by its nature, so performance wouldn't get as terrible).
     
     
I don't see any other solution than this, either.

>
     
       Another possible solution which may work would be to stop searching the space
     
     >
     
      (which goes from bottom up) once we find another arch of the same type.  This
     
     [...]

You'd end up with the same thing as above:  You need the objects to be
sorted some way, and you need extra pointers to do this efficiently.  I
think you might as well start with an explicit list for movable and
living objects.

-- 
Jan

    
    


More information about the crossfire mailing list