Open Thingee
by Amy Alexander/VJ Übergeek/deprogramming.us
deprogramming !#at#! deprogramming.us

Open Thingee is a project that uses the Olly (Open Lingo Something Something) system.

Olly allows software written using Lingo (Macromedia Director's scripting language)
to be used by people who don't have a copy of Director.

Olly premise: 
Despite being distributed by a corporation and being a bit old, Lingo is useful. 
Although it's not especially well-known for this, it makes it relatively easy for people 
who aren't low-level programmers to program "outside the box" - i.e. to do things
other than moving objects around a box on the screen. In other words, it makes accessible the
ability to fiddle around with the operating system, external devices, programs, files, the internet, etc. - 
more or less just like card-carrying software developers do! Because responding to software 
culture and responding to culture through software often involve fighting software with 
software, software-fiddling by fools like us is very important to us deprogrammers... 

Open source software is useful too - it makes communal software-fiddling possible. 
However, since the Director development environment is itself proprietary software, it's 
been quite difficult to make Lingo projects open source - users would have to have access 
to a copy of Director (not cheap) in order to modify your source and run it. This is 
where Olly comes in handy. Olly allows Lingo code to be written and edited as normal 
text files, using just a text editor. So you can be a not-so-techy programmer, and write
and modify open source software. Lingo to the People! Open source to the people too!

Olly How-To:
The Olly "engine" is the executable file, in this case, "openthingee.exe".
The scripts are in the folder, "source". You can edit them or create new script files 
in that folder, and the engine will automatically read them next time it runs.
Your new script filenames must end with ".txt" in order to be read by the engine.

Need some reference material?
Lingo manual:
http://www.macromedia.com/support/documentation/en/director/
(Note, the open thingee engine is written in Director 8.5. The reference is a later version. So a few commands listed in the manual will not work.)

Thingee also uses the following 3rd party libraries (Director Xtras):
Buddy API: http://www.mods.com.au/budapi/
GetSoundInLevelXtra: http://physicalbits.com/
You can find documentation on the websites.

Notes to programmers:
All scripts are global ("Movie Scripts") by default. If you want to write some new class scripts 
("Parent Scripts"), or "Behavior Scripts" you'll need to put "parent"  or "behavior" in the filename. For parent scripts, in the "new" constructor 
call the script by the basename of the filename. This will cause the engine to 
make that script a Parent Script or Behavior Script as needed. See "alerthookparent" for an example.

The file "openthingee.ini" is included to make error messages more informative if your 
code revisions cause compiler errors. It needs to have the same basename as the engine.
Openthingee.dir is the original Director file.

Other projects related to Lingo && Open Source:
The OpenLingo project: http://groups.yahoo.com/group/openLingo/


