Fwd: Re: [CF-Devel] Crossfire Scripting language

gros gros at magellan.fpms.ac.be
Mon Apr 23 15:12:58 CDT 2001


Le Lundi 23 Avril 2001 09:43, vous avez écrit :
>
     
      Actually, this is a very good argument for writing our own script
     
     >
     
      interpreter. This way, we can actually "multithread" scripts -- so a
     
     >
     
      script that takes a long time can actually be broken up across several
     
     >
     
      server ticks. Doing it that way might also make it possible to write
     
     >
     
      scripts that an NPC continually executes (eg. an NPC elf can be
     
     >
     
      continually practising his archery skills by shooting arrows at a target).
     
     
Agree, even if your example is wrong. If you want the Elf to shoot arrows at 
a target, you only need to assign the script used to fire an arrow to an 
event called each time he gets the occasion to move (what I called a "time" 
event). 

>
     
      The problem with this is, if we use Guile or Python or whatever else, it's
     
     >
     
      very difficult (if not impossible) to determine the script's execution
     
     >
     
      time. Given a script of sufficient complexity, it may be very difficult
     
     >
     
      even for human examination; auto-verification is out the window.
     
     >
     
     
     
100% true. 

>
     
      This sounds plausible, although synchronization might become quite a big
     
     >
     
      issue -- for example, you might get very different results if the server
     
     >
     
      machine for some reason runs the CF server more often than the script
     
     >
     
      server -- the scripts could then get out of sync with the server. And it
     
     >
     
      might produce very different outcomes depending on which machine/OS you
     
     >
     
      run it on, esp. if scripts rely on timing.
     
     >
     
     
     
Again, 100% true. This would be more or less like programming player bots 
(through they could get more control over the game).

>
     
      One thing I like about writing our own scripting language is that the
     
     >
     
      scripts can be run in lockstep with the server, so that timing is always
     
     >
     
      100% accurate.
     
     >
     
     
     
And true again. The problem with writing our own scripting language is 
development time (as I said before). But if you are ready to write one, I'm 
ready to help you.

Commander Gros
Ad Dwarvam Aeternam !

    
    


More information about the crossfire mailing list