[crossfire] server map code redo.

tchize tchize at myrealbox.com
Mon Aug 29 14:33:36 CDT 2005


Not commenting on how should do to prevent messing up thread :)
Le Lundi 29 Août 2005 05:47, Mark Wedel a écrit :
>
     
       This is a heads up that I plan to start work on a pretty significant map
     
     >
     
      code redo.  Below are the main areas I plan to tackle.  I may do these in
     
     >
     
      smaller pieces, but the are somewhat related in that I'll be changing the
     
     >
     
      map structure itself to some extent to make this all happen.
     
     >
     
     
     >
     
       I'll send out more detailed proposals on these points, but this is a brief
     
     >
     
     outline:
     
     >
     
     
     >
     
     1) Refine move/block types.  Right now, we have 2 move types (walking &
     
     >
     
      flying). There is only 1 block type, that blocks both flying and moving. 
     
     >
     
      Extend code to allow for more move types, as well as refined blocking
     
     >
     
      (blocks walking, not flying, etc).
     
     >
     
     
     
Great :)

>
     
     2) Change/improve lighting code.  Max light radius of 4 made sense when the
     
     >
     
      map max size was 11x11, doesn't make a lot of sense when it is now 25x25. 
     
     >
     
      Look at other line of sight improvements
     
     >
     
     
     
Nice :)

>
     
     3) Add more layers to display logic, also have it handle head information
     
     >
     
      better so that the client/socket side doesn't have to do this.
     
     >
     
     
     
Needing it :p

>
     
     4) Store more object attributes in the mapcell so we don't have to look
     
     >
     
      through the list objects to see if any have that set.  Also store number of
     
     >
     
      objects (likely pickable and flying as different values) so can implement
     
     >
     
      spill over logic, make sure number of spell objects is at some reasonable
     
     >
     
      level and bail out if it gets too high.
     
     >
     
     
     
Will speed up things


>
     
       Future/down the road:
     
     >
     
     
     >
     
     5) To convey some of these changes to the client, a new protocol command is
     
     >
     
     needed.  But no reason to write that until we have data to actually send to
     
     >
     
      it.
     
     >
     
     
     
I'll opt for a complete rework of whole client/server protocol in a branch. 
This way we can easily tweak new protocol for performance and not take 
care of old protocol compatibility. Backward compatibility could come 
afterwards when new protocol is mature enough.

>
     
     6) As per other discussion about threading - moving the maps objects to a
     
     >
     
      per map list makes threading much easier.  However, above changes are
     
     >
     
      really related to mapcell and related functions, so redoing pointers
     
     >
     
      doesn't really fit in here (doing it as part of the above just makes that
     
     >
     
      more complicated).
     
     >
     
     
     No Comment. Except thread safe code should be another work :)
>
     
     
     >
     
     
     >
     
     _______________________________________________
     
     >
     
     crossfire mailing list
     
     >
     
     
      crossfire at metalforge.org
      
      
     >
     
     
      http://mailman.metalforge.org/mailman/listinfo/crossfire
      
      
     
-- 
--
Tchize (David Delbecq)
     
     tchize at myrealbox.com
     
     
Public PGP KEY FINGERPRINT:
    F4BC EF69 54CC F2B5 4621  8DAF 1C71 8E6B 5436 C17C
Public PGP KEY location:
    
     
     http://wwwkeys.pgp.net/pgpnet/wwwkeys.html
     
     
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : 
     
     http://shadowknight.real-time.com/pipermail/crossfire/attachments/20050829/266e03ba/attachment.pgp
     
     
    


More information about the crossfire mailing list