Example (from my Director-Project)

Task:

I had to develop a lightweight copy-protection for an educational game shipped on CD. Since this game is also addressed to children of pre-school age and parental guidance is to be avoided, a simple password-query was not possible -- for children yet unable to read this would have been quite difficult...

The game had to be protected out of the box -- no install, no product-code etc.

After digging into the specs of internet-offered Xtras I did not see any possibility to realize the task with lingo and/or specialized Xtras, so I tried with Python, and succeeded.

 

Solution:

As a matter of fact I do not want to unveil the complete design of the python-scripts I used. I can but give some indications where I employed Python:

Later I switched to unit-testing my script: the initial design showed some flaws, and testing with Director was rather time-consuming. I set up some unit tests which of course are not as rigid as they should be (due to the fact that I developed them rather late in the development process), but nevertheless spared me a huge amount of time. Changes to the script were always a bit risky before I started to use CVS and WinCVS. Now I cannot imagine how I ever could work without this versioning tool.

 

Results:

If I ever have to program a Director-Movie again with such complexity, I surely will think of integrating Python from start. Passing lists from and to Director or Python is fast, and Python has excellent capabilites for any task one can think of. Unit-Testing will be included from start as well. Probably there should be some versioning or group management set-up (which was a problem for a certain period). Updating products is easy (by way of importing modules from the internet ;-) -- I had to change the script a bit to detect Windows XP, 2000 and ME (these were only wishful thinking of Micro$oft managers at the time of designing the script in the first place, yet it was no problem to upgrade).

 

Date: Feb 25, 2002 , jbekesi@meta-ware.a