Showing posts with label ole. Show all posts
Showing posts with label ole. Show all posts

Saturday, February 15, 2014

Connecting to the Creatures DDE interface from python

We've recently seen how easy it is to connect to the C1 and C2 DDE interfaces using VB.

This time we will show how easy it is to connect to those interfaces using python, which will prove useful in upcoming articles.



Connecting to a DDE server from inside python is can be a quick and easy process.
The hardest part is in acquiring the correct modules to do so, (which can be a real pain if you take it from the wrong side), there are also a couple specifics that make debugging the first DDE connections unreliable.
Fortunately I've sorted those perks out for you,and will show you the single quickest and easy way to connect to the Creatures 1 and 2 DDE interface from python.


Monday, February 3, 2014

Connecting to the Game: accessing the DDE interface with 3 lines of code. (Tutorial)




We've been studying a lot of stuff lately, most of it involving running CAOS commands against C1 and C2 games.
C3 has a convenient built-in CAOS console, and various third party tools also propose that feature for C1 and C2.

But how would you go about implementing this kind of connectivity inside your own programs?
The simplest way to connect to a running C1 or C2 game is through the DDE interface (Dynamic Data Exchange). Also it REALLY is simple even if you barely know anything about programming, so this might be worth checking out.If you never programmed anything and don't have any development tools handy, you could initiate a DDE connection even from inside an Excel macro using VBA.Also the C1 and C2 DDE interfaces being strictly identical, you'll be writing code only once, and be able to use it in both games right now, without any change.

By sending the game some basic CAOS commands and reading their results you can reproduce all of the game functionalities and then some more: reading a Norn's needs and chemicals levels in realtime, selecting Norns and Grendels, carrying them, monitoring their brains,etc...

This time I show you a very quick overview to get you started in pumping CAOS in and out the C1 and C2 games.More advanced use cases or details will come in futher posts.
 

Thursday, December 26, 2013

Recovering the lost "sys: cmnd" documentation

One of the aspects of the CAOS specification I got exited about when I first saw it mentioned in the C1 CAOS guide was the "sys: cmnd" command.
Quoting from the manual :

  
  SYS: menu commands 

CMND id# - issue an ID_XXX command message to the application. This
 allows macros to activate ANY menu command. Note that command
 will get executed LATER - fn doesn't wait before returning!
  id# is the decimal ID_XXX value - look these up in the resource
 file & list them for users

This sounds awesome ! The ability from our external application (or COBs) to execute any existing game command!
This will greatly help us, allowing us to add pause/play buttons to our custom applications, to run existing applets, export and import Norns...

All right, let's head to the mentioned "resource file" and try this command !
Err...yes...the ummm...resource file... Which one ?
Well...none it seems...