Python

Transmogrifier OLE Automation Documentation

This is the documentation for the OLE Automation Interface to Transmogrifier (version 2.1.2 and greater).

Transmogrifier's OLE Automation interface enables it to be used "behind the scenes" by scripts, web servers and other programs like RugOMatic, to create and modify Sims objects. It can also export previews of Sims objects. This OLE Automation interface makes it possible to develop other tools and web services that use Transmogrifier, with scripting languages like JavaScript and Python.

Sims Content Catalog in Laszlo and Python

This is a large project I'm developing in OpenLaszlo: creating a rich web application for browsing, searching, exploring, collecting, personalizing, shopping and downloading Sims content.

I'm working with SimFreaks to put their entire catalog of thousands of Sims objects and characters into this database driven catalog. I'm using Transmogrifier to automatically export pictures of all the Sims objects.

Besides simply searching the catalog for interesting objects, you can navigate and explore collections of objects, and even interactivally compose your own scenes.

It's like a cross between colorforms playsets, hypercard and graphical adventures, with Sims room backgrounds, objects and characters, including interlinked image maps and text annotations.

The front-end is implemented in OpenLaszlo, and the back-end is implemented in Python, using SQLObject.

It also includes an administrative database interface for browsing and editing the SQL database that is used to model the site, and keep track of the users, objects, collections, pictures, etc. It's extensible by plugging in customizable Laszlo widgets for displaying and editing special data types, like pictures, checkboxes, color selectors, date pickers, pie menus, OPML editors, etc.

Laszlo Database Interface

I'm developing a reusable Laszlo component for browsing and editing SQL databases.

Currently it's up and running, built into the Sims Content Catalog Laszlo application, and it talks to a Python/SQLObject/MySQL back-end. But I'm factoring it out and redesigning it to work on its own, and support multiple back-ends.

Laszlo is ideal for implementing specialized user interface components for editing custom data types, like checkboxes, pie menus, color selectors, date pickers, OPML editors, picture viewers, map browsers, etc.

Python Stuff

This is stuff about Python.

Software Development Magazine: Inside the Stupid Fun Club

Riding around in a remote-controlled car seat while being shot by ping-pong balls. Software Development Magazine wrote an article called "Inside the Stupid Fun Club" (registration required).

The author, Alexandra Weber Morales, unexpectedly encountered the Sad Robot, broken down and crying for help on the streets of Oakland.

We were shooting a couple of hidden camera reality TV "One Minute Movies" for NBC: one of a Sad Robot torn apart into pieces and pleading for help from passers by, and the other of a Robot Waiter taking orders, serving food and bantering for a tip in a barbecue restaurant.

I (Don Hopkins) developed the custom "robot brain" software for Will Wright's Stupid Fun Club, mostly in Python. It involved writing lots of high level Python code and XML data, and integrating all kinds of different software components together with SWIG, C++, ActiveX, Java, IRC, HTTP and WiFi. The robot features 3D facial animation, speech synthesis and recognition, conversational scripting, artificial intelligence, personality simulation, telerobotic remote control via wireless networking, with an interactive web interface for controling its behavior in real time.

For another Stupid Fun Club project, I also used Python to develop expressive synthetic speech authoring tools (audio speech "phonoscoping", like visual animation "rotoscoping"), and talking toy simulations.

Python is ideally suited for brainstorming and prototyping new product ideas, as well as developing custom real-time robotic software for supporting creative Stupid Fun Club projects like reality TV production.

ShowNTell ActiveX Plug-In for Previewing Sims Objects

I'm developing another Transmogrifier based tool called "ShowNTell", which is an ActiveX control for displaying a live preview of a Sims object file on a web page (or wherever you can plug in an ActiveX control). You can drag-and-drop iff files into the window to view them, change the rotation and zoom, and read the name, price and description. It also gives you control over the background color and grid, to match your web page and objects.

"What is ShowNTell for?", you might ask. I want to make it easy for people to distribute and download Sims objects over the web, as well as view and manage their own objects offline. Players should be able to quickly look at objects before installing them and restarting The Sims. ShowNTell displays a live interactive preview of a Sims object, right on the web page!

Syndicate content