Translator: LOTR Pinball - UA-ScriptEase/scriptease GitHub Wiki
Eomer. Take your Èored down the left flank. Gamling, follow the King's banner down the center. Grimbold, take your company right, after you pass the wall. Forth, and fear no darkness! Arise! Arise, Riders of Theoden! Spears shall be shaken, shields shall be splintered! A sword day... a red day... ere the sun rises!
-- King Theoden of Rohan, being totally epic
In 2010, we collaborated with Nathan Sturtevant and Adam "Gamblore" Metcalf on the Lord of the Rings Pinball project. They had Frankensteined a physical pinball machine to interface with a standard computer port. Nathan and Duane were having lunch one day, and the idea was floated that ScriptEase could make a translator for pinball. Duane told Nathan that all we'd need was an event-based scripting system. They didn't have one yet, so Nathan asked his collaborators in California to write one. They hemmed and hawed, claiming it wasn't worth the effort and that it was too difficult. So he wrote it in a day. Go Nathan. You da boss.
The translator was built and there was much rejoicing. It hasn't, however, been kept up to date - once that project was done, the translator had no users. It is likely horribly broken by now, so be warned.
For technical details, refer to the wiki for that project: http://idm-lab.org/wiki/pinball/index.php/Main/HomePage. Here are some highlights:
#Image-Mapping The input file maps game object types to an html-style image map (using the format: typeName=imageMap), each of which look like this:
<div style="text-align:center; width:768px; margin-left:auto; margin-right:auto;">
<img id="Image-Maps_8201008121140276" src="http://www.image-maps.com/uploaded_files/8201008121140276_LampMap.png"
usemap="#Image-Maps_8201008121140276" border="0" width="768" height="1052" alt="" />
<map id="_Image-Maps_8201008121140276" name="Image-Maps_8201008121140276">
<area shape="rect" coords="16,44,45,71" href="http://www.image-maps.com/" alt="POTD U.L." title="POTD U.L." />
<area shape="rect" coords="53,44,82,71" href="http://www.image-maps.com/" alt="POTD U.R." title="POTD U.R." />
<area shape="rect" coords="17,79,46,106" href="http://www.image-maps.com/" alt="POTD L.L." title="POTD L.L." />
#Output The output is a C++ (.cpp) file which conforms to the Event based pinball API (EPA). In order for the EPA to properly compile the output file, the file must be placed appropriately within the EPA directory.