[CF-Devel] Has anyone had time to analyze the scripting patch submitted?

gros yann.chachkoff at mailandnews.com
Fri May 18 09:04:12 CDT 2001


>
     
     
     >
     
       I looked at the source/sample files (didn't actually install it.).  Given
     
     >
     
      that, these  are its shortcomings:
     
     >
     
     
     >
     
      1) scheme like syntax (may or may noot be a shortcoming depending on your
     
     >
     
      like of it)
     
     Nothing more to say here.

>
     
      2) improperly written scripts could crash the entire process.
     
     I am currently writing on that part of code. You may expect correct error 
handling in a couple of days. It took so long to implement error handling 
because it is the less documented feature of Guile so it took more time to 
find a correct solution.

>
     
      3) each npc action requires a seperate script file.  So one complex npc may
     
     >
     
      have half a dozen different
     
     >
     
         script files.
     
     Yes. I didn't see this as a problem, but I think you are right. I'll then 
implement a script...endscript tag to correct this (should not be a big 
problem because it would be very similar to the msg...endmsg structure).

>
     
      4) Require guile to be installed on system (ie, more software dependencies)
     
     >
     
     
     That's the price to pay if you don't want to rewrite a scripting language 
from scratch.

>
     
      good things:
     
     >
     
      1) Appears to have support for lots of different actions, so fairly
     
     >
     
      powerful 2) its real life code, vs something on the drawing board.
     
     >
     
     
     >
     
       my personal opinion is that as long as points 2 & 3 exist in the
     
     >
     
      shortcomings, its not useful.  #2 is a major one, but #3 just in terms of
     
     >
     
      maintainabilty - I would much rather have something line a msgscript ....
     
     >
     
      endscript in the object, and just have a big buffer in the object that
     
     >
     
      contains the script.  When something is done, it goes look at this buffer. 
     
     >
     
      This way, the script and object using the script stay connected.
     
     >
     
     
     >
     
       Note this is just from looking over the code and docs.  If I'm wrong on
     
     >
     
      any of this, I apologize to the author.
     
     >
     
     
     Do not apologize, you are 100% right. I put the patch on the list to get 
feedback like this to know what I should do next to improve it, so I thank 
your very much for giving your opinion.

Chachkoff Y.

    
    


More information about the crossfire mailing list