[CF-Devel] Client side improvements

crossfire-devel at archives.real-time.com crossfire-devel at archives.real-time.com
Sun Nov 9 19:31:19 CST 2003


Preston Crow wrote:
>
     
      I have a working scripting interface for the client.  It's mostly in the
     
     >
     
      common code, and I put in the necessary hooks in the client-specific
     
     >
     
      code.
     
     >
     
     
     >
     
      It creates a new process for each script that you want to run, and sends
     
     >
     
      information to it on its stdin, and reads commands from its stdout.  The
     
     >
     
      script can send any command that you can manually send, it can request
     
     >
     
      information from the client (stored information, like map data), and it
     
     >
     
      can listen to commands that the client receives from the server (like hp
     
     >
     
      changes).
     
     >
     
     
     >
     
      I've written a few scripts in Bash, such as one that invokes word of
     
     >
     
      recall whenever my hp drop to less than 50%, as well as a very long one
     
     >
     
      that cleans up my apartment.
     
     >
     
     
     >
     
      When I last discussed this here, I didn't get a strong message as to
     
     >
     
      whether to check in my changes.  A scripting interface is clearly
     
     >
     
      something a number of players want, but it's also clearly something that
     
     >
     
      gives players an advantage.
     
     >
     
     
     >
     
      Should I check it in?
     
     
  That's a much better implementation, IMO, as now the scripting language is in 
whatever you want (I'd probably say that you then have to write a basic startup 
routine for each language that parses the data sent to it). Eg, your basic perl 
routine that parses all the data passed to it, or whatever.

  IT obviously gives some advantage.  OTOH, without it, it is basically making 
things more difficult through obscurity.  EG, right now, I could take the client 
source, and code in something that applies a healing potion if you hp are too low.



_______________________________________________
crossfire-devel mailing list
     
     crossfire-devel at lists.real-time.com
     
     
     https://mailman.real-time.com/mailman/listinfo/crossfire-devel
     
     
    


More information about the crossfire mailing list