<?xml version="1.0" encoding="UTF-8"?>
<!--Generated by Squarespace Site Server v5.11.81 (http://www.squarespace.com/) on Thu, 31 May 2012 06:34:40 GMT--><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><title>MiceOnABeam</title><link>http://www.miceonabeam.com/miceonabeam-blog/</link><description>Latest MiceOnABeam News</description><lastBuildDate>Thu, 12 Jan 2012 18:47:44 +0000</lastBuildDate><copyright></copyright><language>en-US</language><generator>Squarespace Site Server v5.11.81 (http://www.squarespace.com/)</generator><item><title>Accessing Event Arguments in MiceOnABeam v1.0.3</title><category>Choice Point</category><category>Event Arguments</category><category>v1.0.3</category><dc:creator>Antonius Frentis</dc:creator><pubDate>Thu, 12 Jan 2012 18:25:28 +0000</pubDate><link>http://www.miceonabeam.com/miceonabeam-blog/2012/1/12/accessing-event-arguments-in-miceonabeam-v103.html</link><guid isPermaLink="false">417049:4772989:14552808</guid><description><![CDATA[<p>Over the next while I want to illustrate some of the new features available in  MiceOnABeam v1.0.3.</p>
<p>In v1.0.3 event arguments can now be directly accessed from the outgoing  transitions of a Choice Point, instead of having to first save them in a state  variable within the action code of the transition incoming to the Choice Point.  This is true as long as there is only a single incoming transition and it has an  event assigned.</p>
<p>Applying this to the model developed in the MiceOnABeam Basics  video tutorial, we no longer have to save the <em>data </em>argument in the <em>Line </em>state variable in the <em>dataserver </em>transition. We can now access <em>data </em>directly in the <em>GetNextLine </em>and <em>Done </em>transitions.</p>
<p><span class="full-image-block ssNonEditable"><span><img src="http://content.screencast.com/users/MiceOnABeam/folders/MUG/media/75674bac-ff8d-4e56-8d61-77b31340fe8d/Choice%20Point%20Event%20Data.png?__SQUARESPACE_CACHEVERSION=1326393794690" alt="" /></span></span></p>
<p>Additionally as v1.0.3 now allows multiple bends within a transition, we  added an additional curved bend to the <em>Done </em>transition to pretty up the  diagram.</p>
<p><span class="full-image-block ssNonEditable"><span><img src="http://www.miceonabeam.com/picture/securedoorv103.png?pictureId=12820200&amp;asGalleryImage=true&amp;__SQUARESPACE_CACHEVERSION=1326393316447" alt="" /></span></span></p>
<p>You can download an updated version of the Secure Door model from the video tutorial <a href="http://www.miceonabeam.com/storage/model-library/v103/video-models/SecureDoorV103.dat">here</a>.</p>]]></description><wfw:commentRss>http://www.miceonabeam.com/miceonabeam-blog/rss-comments-entry-14552808.xml</wfw:commentRss></item><item><title>MiceOnABeam Release v1.0.3</title><dc:creator>Antonius Frentis</dc:creator><pubDate>Thu, 29 Dec 2011 14:38:24 +0000</pubDate><link>http://www.miceonabeam.com/miceonabeam-blog/2011/12/29/miceonabeam-release-v103.html</link><guid isPermaLink="false">417049:4772989:14368134</guid><description><![CDATA[<p>I'm proud to have (finally!) released version 1.0.3 of the MiceOnABeam Visual  Scripting Tool, for the Second Life&reg; World!. All users should <a style="color: #800000; font-weight: normal; text-decoration: underline;" href="http://www.miceonabeam.com/downloads/">download</a> this latest release. It's chock-full of improvements including some new features  that I'm sure you'll love.<br /><br />An overview of what's new is provided below.  For full details please see the <a style="color: #800000; font-weight: normal; text-decoration: underline;" href="https://miceonabeam.fogbugz.com/default.asp?W122">Release  Notes</a> and the <a style="color: #800000; font-weight: normal; text-decoration: underline;" href="https://miceonabeam.fogbugz.com/default.asp?W1">Product  Documentation</a>.<br /><br />If you're an existing user you can just download the  new release and run the installer over the existing installation. For those of  you who have purchased the Professional version (thanks!), your existing license  file will continue to work with the new release.<br /><br />(<strong>NOTE</strong>:  For those of you who participated in the beta of v1.0.3, you must first manually  uninstall the beta release via Add/Remove programs or equivalent, before running  the installer for v1.0.3)<br /><br /><strong>New Error List Window for Code  Generation Errors</strong><br />A new error reporting system has been put in place  that makes it easier to find and correct LSL syntax and variable/function  declaration errors directly from within MiceOnABeam and before exporting the  generated code to your virtual world.<br /><br />While LSL errors continue to be  flagged inline whenever a Properties Editor is saved, the entire model is now  re-checked upon generating the LSL code and a summary of outstanding LSL errors  are listed in a new <span class="uvb"><em>Code Generation Errors</em></span><em> </em>window.<br /><br /></p>
<div style="text-align: center;"><span class="full-image-block ssNonEditable"><span><img src="http://gallery.mailchimp.com/047765c27d148bf4086285af8/files/CodeGenErrors1C.png?__SQUARESPACE_CACHEVERSION=1325170331824" alt="" /></span></span></div>
<div style="text-align: center;"></div>
<p>From here you can select an error and go to the  modeling component of interest. As well you can open up the corresponding  Properties Editor which will display the error message right at the point in the  LSL code where the error was found. You can then fix the error and quickly  regenerate the code by selecting the <em>Refresh </em>button on the Code  Generation Errors window to update the error list.<br /><br /></p>
<div style="text-align: center;"><img style="border: 0pt solid;" src="http://gallery.mailchimp.com/047765c27d148bf4086285af8/files/CodeGenErrors2B.png" border="0" alt="Code Editor" width="575" height="260" /></div>
<p><br /><strong>Undeclared LSL Variables &amp; Functions  are now flagged</strong><br />References to <span class="undefined">undeclared LSL  variables and functions </span>are now detected and flagged as errors both when  the Properties Editor is saved and again upon generation of the LSL code for the  model (in conjunction with the new <em>Code Generation Errors window </em>as  shown above).<br /><br />Local variables that are multiply declared within the same  local scope of an LSL code segment will also be flagged as  errors.<br /><br /><strong>Multi-Segment Straight or Curved Transitions with  Auto-Align</strong><br />You are now able to create <span class="undefined">multiple  straight or curved segments </span>for a transition! In previous releases there  was only a single Selection Handle for a transition which you could then click  and drag to create a curved bend in the transition.<br /><br />To create an  additional Selection Handle press and hold the <em>Control </em>key and click on  the desired location on a selected transition. Then click and drag the new  Selection Handle to create the new bend. To delete a Selection Handle, just  <em>Control</em>-click it.<br /><br />In addition if you would prefer straight line  segments instead of curves for a particular transition, de-select <em>Smooth  Transition </em>from it's context menu.<br /><br />To align a particular line or  curved segment of a transition to either a horizontal or vertical position, just  hold down the <em>Shift </em>key when clicking and dragging a Selection Handle  to the nearest horizontal or vertical plane. Note that alignment is always done  one segment at a time, from the selected Selection Handle to the adjacent handle  (towards the starting point of the transition).<br /><br />Finally you can move the  display of the transition's label to another Selection Handle by holding down  both the <em>Control </em>&amp; <em>Shift </em>keys and then clicking on the  desired Selection Handle.<br /><br />Those graphic designers among you can now  really let your artistic side flourish! Me- not so much :-(<br /><br /></p>
<div style="text-align: center;"><img style="width: 581px; height: 526px; border: 0px solid;" src="http://gallery.mailchimp.com/047765c27d148bf4086285af8/files/MultiSegment1.png" alt="Multi-Segment Transitions" width="581" height="526" /></div>
<p><br /><strong>New State Explorer</strong><img style="width: 325px; float: right; height: 387px; border: 0px solid;" src="http://gallery.mailchimp.com/047765c27d148bf4086285af8/files/StateExplorer1.png" alt="State Explorer" width="325" height="387" align="right" /><br />In a more complex model consisting of several Composite  States, it can be tedious to traverse the nested state hierarchy to get to the  particular state of interest.<br /><br />The new <span class="uvb">State  Explorer</span> feature addresses this by providing a tree-like view of the  model's state hierarchy so that you can easily zero-in on the exact part of your  model that you wish to examine.<br /><br />Aside from just viewing the state  hierarchy, you can also open up a State, Properties, Comment or State  Variable/Functions editor from the context menu for a selected state in the  State Explorer.<br /><br /><br /><br /><br /><strong>New Junction Point Modeling  Component</strong><br />A new toolbar component <img src="https://miceonabeam.fogbugz.com/default.asp?pg=pgDownload&amp;pgType=pgWikiAttachment&amp;ixAttachment=534&amp;sFileName=JunctionPseudostate.bmp" border="0" alt="" />called  a&nbsp;<em><span class="uvb">Junction Point</span></em><em> </em>is now available to  help build your script models.<br /><br />Similarly to an Entry/Exit Point the  Junction Point can be used to merge several input transitions into a single  output transition.&nbsp; However a Junction Point is not limited to a state's border  and can be created anywhere within a State Editor. It can really help de-clutter  model diagrams by reducing the extent of transition lines.<br /><br /></p>
<div style="text-align: center;"><img style="width: 510px; height: 369px; border: 0px solid;" src="http://gallery.mailchimp.com/047765c27d148bf4086285af8/files/JunctionPoint1C.png" alt="Junction Point" width="510" height="369" /></div>
<p><br /><span class="subTitle" style="font-style: normal; font-family: Georgia; color: #000000; font-size: 14px; font-weight: bold;">And More...</span><br />Release v1.0.3 has lots more,  including:</p>
<ul>
<li>New Icon Displayed for State with State Variables or State Functions </li>
<li>State Variables &amp; Functions Can Now be Moved or Copied Between States </li>
<li>Direct Access to Event Arguments Now Provided in Choice Point Outgoing  Transitions </li>
<li>Wildcard characters Now Accepted Within Search Strings </li>
<li>Larger Area Now Provided for State Variables in editor </li>
<li>UI enhancements. </li>
</ul>
<p><br /><span class="subTitle" style="font-style: normal; font-family: Georgia; color: #000000; font-size: 14px; font-weight: bold;">Upcoming</span><br />Next up I'll be focusing on enhancing the  built-in library of LSL Actions and re-usable MiceOnABeam model components to  help people get started. I'll also be developing a training class for new users  and additional How-To videos to illustrate the use of specific  features.<br /><br />As a reminder of support options, for starters there's the <a style="color: #800000; font-weight: normal; text-decoration: underline;" href="http://world.secondlife.com/group/70ed1e15-0f77-f756-9675-5f2d047592d2">MiceOnABeam</a> group in Second Life. I encourage you all to use it for Q&amp;A with other group  members as well as myself. For more detailed Q&amp;A you can always post in the  <a style="color: #800000; font-weight: normal; text-decoration: underline;" rel="nofollow" href="http://www.miceonabeam.com/forums/">forums</a> on the MiceOnABeam website or contact <a style="color: #800000; font-weight: normal; text-decoration: underline;" rel="nofollow" href="http://www.miceonabeam.com/support/">MiceOnABeam Support</a>. To report a product-related problem,  please send an email to <a style="color: #800000; font-weight: normal; text-decoration: underline;" href="mailto:support@miceonabeam.com?subject=Help%21">support@miceonabeam.com</a>,  or click <a style="color: #800000; font-weight: normal; text-decoration: underline;" href="http://www.miceonabeam.com/send-problem-report/">Send  Problem Report</a> for a convenient form.<br /><br />Merry Xmas!<br /><br />Antonius</p>]]></description><wfw:commentRss>http://www.miceonabeam.com/miceonabeam-blog/rss-comments-entry-14368134.xml</wfw:commentRss></item><item><title>MiceOnABeam v1.0.3 Beta Anyone?</title><dc:creator>Antonius Frentis</dc:creator><pubDate>Tue, 01 Nov 2011 21:54:26 +0000</pubDate><link>http://www.miceonabeam.com/miceonabeam-blog/2011/11/1/miceonabeam-v103-beta-anyone.html</link><guid isPermaLink="false">417049:4772989:13556555</guid><description><![CDATA[<p>MiceOnABeam v1.0.3 has just started integration testing and is ready for a short beta trial. I'm looking for a few existing users who are interested in trying out the latest and greatest features.<br /><br />If you are a regular user or plan to use the program over the next two weeks, please send an email to support@miceonabeam.com and I'll send you the info to access the beta. No need to do anything special for the beta; just use it as you would normally and report any issues via email.<br /><br />Full details on the release are available here: <a class="offsite-link-inline" href="http://bit.ly/vhtC42" target="_blank">http://bit.ly/vhtC42</a><br /><br />If all goes well, I expect to run the beta for two weeks or so, ending with the official release of v1.0.3.<br /><br />Thanks for helping out!<br /><br />Antonius</p>]]></description><wfw:commentRss>http://www.miceonabeam.com/miceonabeam-blog/rss-comments-entry-13556555.xml</wfw:commentRss></item><item><title>Sneak Peek Part II for MOAB v1.0.3</title><dc:creator>Antonius Frentis</dc:creator><pubDate>Mon, 26 Sep 2011 18:12:16 +0000</pubDate><link>http://www.miceonabeam.com/miceonabeam-blog/2011/9/26/sneak-peek-part-ii-for-moab-v103.html</link><guid isPermaLink="false">417049:4772989:12988046</guid><description><![CDATA[<p>Feature development for the upcoming v1.0.3 has finally finished! I was a bit slower getting things done with the hot summer (@Pilot: Yes I know 30C is cold to you! :-), but I'm really happy with the results.</p>
<p>As promised with the earlier <a href="http://www.miceonabeam.com/miceonabeam-blog/2011/8/9/sneak-peek-at-some-moab-v103-features.html">Sneek Peek for v1.0.3.</a> here's a quick review of the latest features to have been completed.</p>
<p><strong>Flagging of Undeclared LSL Variables/Functions</strong></p>
<p>Long-awaited by most MOAB users I'm sure, v1.0.3<strong>. </strong>will now flag all undeclared LSL variables and functions as errors. This will reduce the occurence of generating the LSL from MOAB and then going into SL only to get a syntax error reported in the code editor there. See: <a class="offsite-link-inline" href="http://screencast.com/t/qnJ8Y15vg" target="_blank">http://screencast.com/t/qnJ8Y15vg</a>.</p>
<p><strong>Junction Point</strong></p>
<p>The Junction Point is a new modeling feature that allows you to merge multiple incoming transitions into a single outgoing one. It will be great to help declutter model diagrams. See: <a class="offsite-link-inline" href="http://screencast.com/t/3FanYhnmFxGh" target="_blank">http://screencast.com/t/3FanYhnmFxGh</a>.</p>
<p><strong>State Variables/Functions Icon</strong></p>
<p>With this new feature a special icon will show on those states which have State Variables or State Functions defined. Now you can quickly look over a model and see where your variables and functions are defined. Further the icon will display at the bottom of a State Editor that is opened on a Composite State if that state has state variables/functions defined. See: <a class="offsite-link-inline" href="http://screencast.com/t/2X5gg0ef2t" target="_blank">http://screencast.com/t/2X5gg0ef2t</a>.</p>
<p><strong>Extended Comments</strong></p>
<p><a class="offsite-link-inline" href="http://screencast.com/t/2X5gg0ef2t" target="_blank">http://screencast.com/t/2X5gg0ef2t</a> also shows how modeling component comments can be extended to display additional design information for states and transitions. By using the Show Comments toolbar button <span class="full-image-inline ssNonEditable"><span><img style="width: 20px;" src="http://www.miceonabeam.com/storage/Info36.bmp?__SQUARESPACE_CACHEVERSION=1317073586720" alt="" /></span></span>, you'll be able to see a list of handled events, state variables &amp; functions, simply by moving the mouse over the component of interest.</p>
<p>This will also work for the State Variables/Functions Icon shown at the bottom of the State Editor for composite states as shown in <a class="offsite-link-inline" href="http://screencast.com/t/ssoYPBBRHB" target="_blank">http://screencast.com/t/ssoYPBBRHB</a>.</p>
<p><strong>Multi-Segment Transitions</strong></p>
<p>In previous releases, there was only a single Selection Handle for a transition which you could then click and drag to create a curved bend in the transition. Now you'll be able to create multiple straight or curved segments for a transition!<br /><br />In addition if you would prefer straight line segments instead of curves you can select that option from the transition's menu.<br /><br />Additional new capabilities include being able to align a particular line or curved segment of a transition to either a horizontal or vertical position, and to move the display of the transition's label to a different point on the transition.&nbsp;&nbsp;</p>
<p>See: <a class="offsite-link-inline" href="http://screencast.com/t/8fi2XxhSX " target="_blank">http://screencast.com/t/8fi2XxhSX</a>&nbsp; for examples of these. You can even let your artistic side flourish when drawing your models. See: <a class="offsite-link-inline" href="http://screencast.com/t/4bBSIPtiy6N" target="_blank">http://screencast.com/t/4bBSIPtiy6N</a>.</p>
<p>Still a fair bit of cleanup and testing to be done. I anticipate a release early November.&nbsp; If anyone is interested in beta-trialling the new release, please drop me a note at support@miceonabeam.com and let's chat.</p>
<p>Antonius</p>]]></description><wfw:commentRss>http://www.miceonabeam.com/miceonabeam-blog/rss-comments-entry-12988046.xml</wfw:commentRss></item><item><title>Sneak peek at some MOAB v1.0.3 features</title><category>new release</category><category>v1.0.3</category><dc:creator>Antonius Frentis</dc:creator><pubDate>Tue, 09 Aug 2011 16:46:30 +0000</pubDate><link>http://www.miceonabeam.com/miceonabeam-blog/2011/8/9/sneak-peek-at-some-moab-v103-features.html</link><guid isPermaLink="false">417049:4772989:12463316</guid><description><![CDATA[<p>I've posted a few graphics of some of the new features that I've been working on for the upcoming v1.0.3. Take a look.</p>
<h4><strong>State Explorer</strong></h4>
<p>Here's the new State Explorer: <a class="offsite-link-inline" href="http://screencast.com/t/ldGOojlyDQ" target="_blank">http://screencast.com/t/ldGOojlyDQ</a></p>
<p>You will be able to open a <em>State Explorer </em>on any State Editor and it will show a tree of all the nested states. You can hide/display each level and open up a menu for each item. See: <a class="offsite-link-inline" href="http://screencast.com/t/cUtMS7sN" target="_blank">http://screencast.com/t/cUtMS7sN</a></p>
<p>From there you can open up various editors relating to the State.</p>
<h4><strong>Error Reporting</strong></h4>
<p>For the next feature I put in a new error reporting system for the code generation which will now check all LSL code in the model at code generation time for syntax errors, undeclared variables (new!) and validate LSL Actions. See: <a class="offsite-link-inline" href="http://screencast.com/t/0IN2Uc8hVuy" target="_blank">http://screencast.com/t/0IN2Uc8hVuy</a></p>
<p>This should save being surprised in SL with a syntax error after copying the generated code. From the error dialog you can open up the containing State Editor for the component as well as the actual properties editor.</p>
<p>This shows the modified code windows and how errors will be shown after being selected from the error list dialog. See: <a class="offsite-link-inline" href="http://screencast.com/t/gx7PN2OSQy" target="_blank">http://screencast.com/t/gx7PN2OSQy</a></p>
<p>Note that code lines are now numbered!</p>
<h4><strong>Direct Access to Event Arguments</strong></h4>
<p>Lastly (for now) is the feature that will allow you to directly access event arguments from the transitions leaving a Choice Point (if that Choice Point only has a single transition into it). See: <a class="offsite-link-inline" href="http://screencast.com/t/mKtcPk4iN4c5" target="_blank">http://screencast.com/t/mKtcPk4iN4c5</a></p>
<p>The graphic is from the door script from one of the tutorial videos. Note that in the <em>Done </em>transition you can now directly reference the data argument of the <em>dataserver </em>event of the transition leading into the Choice Point. I think that will remove alot of confusion for new users to MOAB who would naturally expect to access the arguments in this situation directly.</p>
<p>I'll post more info on additional features as they continue to be developed for v1.0.3.</p>
<p>Antonius</p>
<p>&nbsp;</p>]]></description><wfw:commentRss>http://www.miceonabeam.com/miceonabeam-blog/rss-comments-entry-12463316.xml</wfw:commentRss></item><item><title>New Video Tutorials! "MiceOnABeam Basics"</title><dc:creator>Antonius Frentis</dc:creator><pubDate>Mon, 13 Jun 2011 00:32:39 +0000</pubDate><link>http://www.miceonabeam.com/miceonabeam-blog/2011/6/12/new-video-tutorials-miceonabeam-basics.html</link><guid isPermaLink="false">417049:4772989:11776303</guid><description><![CDATA[<p>I've just completed a three-part video tutorial which covers the  basic modeling concepts of MiceOnABeam through the construction of a  model for a secure door script.</p>
<p>Using just the three modeling components of States, Transitions and  Choice Points, you can build the model along with the tutorial and  create a useful script for yourself in Second Life.</p>
<p>Check it out <a href="http://www.miceonabeam.com/video-tutorials/">here</a>.</p>]]></description><wfw:commentRss>http://www.miceonabeam.com/miceonabeam-blog/rss-comments-entry-11776303.xml</wfw:commentRss></item><item><title>New MiceOnABeam Demo Video</title><category>demo</category><category>video</category><dc:creator>Antonius Frentis</dc:creator><pubDate>Fri, 15 Apr 2011 01:56:34 +0000</pubDate><link>http://www.miceonabeam.com/miceonabeam-blog/2011/4/14/new-miceonabeam-demo-video.html</link><guid isPermaLink="false">417049:4772989:11162065</guid><description><![CDATA[<p>Check out the <a href="http://www.miceonabeam.com/demo-video-high-quality/">new video </a>on MiceOnABeam, which provides a basic introduction and demo.<br /><br />A lower quality version is available on <a href="http://www.youtube.com/watch?v=LBA8wvoA9EI">YouTube</a>.<br /><br />Video star I'm not!&nbsp; LOL.&nbsp; But hopefully you'll all enjoy it and find it useful.<br /><br />- Antonius</p>]]></description><wfw:commentRss>http://www.miceonabeam.com/miceonabeam-blog/rss-comments-entry-11162065.xml</wfw:commentRss></item><item><title>10 Steps to Creating Your First MiceOnABeam Script</title><category>development process</category><dc:creator>Antonius Frentis</dc:creator><pubDate>Mon, 28 Mar 2011 19:55:40 +0000</pubDate><link>http://www.miceonabeam.com/miceonabeam-blog/2011/3/28/10-steps-to-creating-your-first-miceonabeam-script.html</link><guid isPermaLink="false">417049:4772989:10975089</guid><description><![CDATA[<p>I recently completed a section in the online documentation on a simplified development process for creating a script using MiceOnABeam. I thought I'd reproduce a version of it here for readers of the blog.</p>
<h3><strong style="font-size: 120%;">Step 1: Learn the basics</strong></h3>
<p>While MiceOnABeam significantly  simplifies your use of LSL and generates much of the scripting code, you should  still become familiar with the basic concepts of LSL such as variables,  datatypes, functions, flow control statements and events.</p>
<p>If you're not familiar with these please check out <a rel="nofollow" href="http://wiki.secondlife.com/wiki/Help:Getting_started_with_LSL">wiki.secondlife.com/wiki/Help:Getting_started_with_LSL</a> or  review the other introductory tutorials at the LSL Portal (<a rel="nofollow" href="http://wiki.secondlife.com/wiki/LSL_Portal">wiki.secondlife.com/wiki/LSL_Portal</a>) or LSL Wiki (<a rel="nofollow" href="http://www.lslwiki.net/lslwiki/wakka.php?wakka=HomePage">www.lslwiki.net/lslwiki/wakka.php?wakka=HomePage</a>).</p>
<p>In addition there are three key MiceOnABeam modeling features that you must become familiar with, namely the <em>State</em>, the <em>Transition </em>and the <em>Choice Point</em>. In many cases these modeling components will be all you need to create your script. Check out <a href="https://miceonabeam.fogbugz.com/default.asp?W74">Modeling Overview</a> to get up to speed here.</p>
<h3><strong style="font-size: 120%;">Step 2: Create a new script model</strong></h3>
<p>From MiceOnABeam's <em>File </em>menu, select <em>New.... </em>Then  enter a name for your new script and click on the <em>OK </em>button. This will  create a new State Editor window in which you will design your script model.</p>
<h3><strong style="font-size: 120%;">Step 3: Design the states for your script</strong></h3>
<p>The first step in the design is to break down your script's logic  into one or more <em>states</em>.&nbsp; States represent the major modes of your  script. Each state represents a point in time where your script is waiting for a  <strong>specific </strong>set of things to happen, calle<a class="uvb" rel="nofollow" href="default.asp?W32"><em></em></a>d <a href="https://miceonabeam.fogbugz.com/default.asp?W32">events</a>, in your virtual world.  Each event type can be handled in a different way depending on which state your  script is in when the event is received. More help on using states and events is  provided in the <a class="uvb" rel="nofollow" href="https://miceonabeam.fogbugz.com/default.asp?W74">Modeling  Overview</a>.</p>
<p>To create a new state select the State icon&nbsp;&nbsp;<span class="full-image-inline ssNonEditable"><img src="https://miceonabeam.fogbugz.com/default.asp?pg=pgDownload&amp;pgType=pgWikiAttachment&amp;ixAttachment=224&amp;sFileName=State2.gif&amp;__SQUARESPACE_CACHEVERSION=1301343930100" alt="" width="39" height="39" /></span> in the tool palette and then click within the State Editor at the location where  you want the new state to appear. You can then rename, resize and move the state  as desired.</p>
<h3><strong style="font-size: 120%;">Step 4: Specify the events that your script will respond to</strong></h3>
<p>To specify an in-world event that your script will respond to, you  use a <em>transition</em> which is represented by an arrow line. To create a new  transition select the Transition icon <span class="full-image-inline ssNonEditable"><span><img src="https://miceonabeam.fogbugz.com/default.asp?pg=pgDownload&amp;pgType=pgWikiAttachment&amp;ixAttachment=225&amp;sFileName=TransitionIcon.gif&amp;__SQUARESPACE_CACHEVERSION=1301344438834" alt="" /></span></span> in the tool palette and then click and hold the mouse button within the State  Editor on the state in which the event will occur. Then drag the mouse over to  the state that you want your script to be in after processing the event (which  can be the same or different state).</p>
<p style="text-align: center;"><span class="full-image-block ssNonEditable"><img src="https://miceonabeam.fogbugz.com/default.asp?pg=pgDownload&amp;pgType=pgWikiAttachment&amp;ixAttachment=516&amp;sFileName=StateMachineDefn.gif&amp;__SQUARESPACE_CACHEVERSION=1301342913164" alt="" /></span></p>
<p>To assign an event to the transition, you must open the Properties  Editor for the transition by right-clicking over it and selecting <em>Edit  Properties</em> from the menu. Then choose the desired event from the drop-down  list.&nbsp; You can also optionally set a <em>Guard Condition</em> (which must be an  LSL expression that returns TRUE or FALSE) to enable or disable the handling of  the event.</p>
<p>Don't forget to create an Initial Transition from the Initial  Point <span class="full-image-inline ssNonEditable"><img src="https://miceonabeam.fogbugz.com/default.asp?pg=pgDownload&amp;pgType=pgWikiAttachment&amp;ixAttachment=226&amp;sFileName=InitialPseudostateIcon.gif&amp;__SQUARESPACE_CACHEVERSION=1301343034237" alt="" /></span> to the starting state for your script, otherwise your script won't know which  state to start up in, and will simply terminate when run.</p>
<h3><strong style="font-size: 120%;">Step 5: Specify what should happen when an event occurs</strong></h3>
<p>Once an event occurs you will naturally want your script to  perform one or more actions to effect changes within your virtual world before  moving to the next state and waiting for another event. These actions can be  specified in several places in your MiceOnABeam model, such as within the  transition itself (Transition Action) or within a state (Entry and Exit  Actions).</p>
<p>All action code is entered within the Properties Editor of the  corresponding state or transition (right-click over the component to open it's  Property Editor). Code can also be entered in global or scoped <a class="uvb" rel="nofollow" href="https://miceonabeam.fogbugz.com/default.asp?W19">functions</a> that can be defined.</p>
<p>To enter in action code you have two options:</p>
<ul>
<li>
<p>Use the <a class="uvb" rel="nofollow" href="https://miceonabeam.fogbugz.com/default.asp?W109">LSL Actions</a> feature to select one of the built-in actions provided in MiceOnABeam, or</p>
</li>
<li>
<p>Insert your own LSL code directly.</p>
</li>
</ul>
<p>After entering in your action code in the Properties Editor select  the <em>OK </em>button to close and save your changes.</p>
<p>Note that you can also document your script model by entering in a  textual comment for each modeling component. To create a comment right-click  over a modeling component and select <em>Edit Comment </em>from the menu. To  easily view your comments select the <em>Show Comment </em>icon&nbsp;<span class="full-image-inline ssNonEditable"><img src="https://miceonabeam.fogbugz.com/default.asp?pg=pgDownload&amp;pgType=pgWikiAttachment&amp;ixAttachment=439&amp;sFileName=ShowComment.gif&amp;__SQUARESPACE_CACHEVERSION=1301343080011" alt="" /></span> in the State Editor's toolbar and then move the mouse cursor over to the  components of interest.</p>
<h3><strong style="font-size: 120%;">Step 6: Save your script model</strong></h3>
<p>From MiceOnABeam's <em>File </em>menu, select <span style="font-style: italic;">Save</span><em>. </em>Then enter a name for the model  file and click on the <em>OK </em>button. This will save your model within the  <em>MiceOnABeam\Scripts</em> folder of your documents folder.</p>
<h3><strong style="font-size: 120%;">Step 7: Set your debugging options</strong></h3>
<p>Once you've created the first draft of your script model, you'll  want to test it out within your virtual world. To help you here MiceOnABeam  provides special <a class="uvb" rel="nofollow" href="https://miceonabeam.fogbugz.com/default.asp?W46">debugging  features</a> to help you.&nbsp; From MiceOnABeam's <em>Tools </em>menu, select <span style="font-style: italic;">Options, </span>and then click on <em>Code  Generation</em>. Select one or more of the built-in execution tracing options  and then select the <em>OK </em>button.</p>
<h3><strong style="font-size: 120%;">Step 8: Generate the LSL Script</strong></h3>
<p>You then generate the LSL code corresponding to the model by  selecting <em>Generate LSL... </em>from the <em>Script </em>menu. A window will open  up containing the generated code. You simply select the <em>Copy </em>button to  copy the code and then paste it directly into your virtual world's scripting  editor.</p>
<p>If you're using Second Life, ensure that the <em>Mono </em>checkbox  is selected at the bottom of the SL editor, and then click the <em>Save </em>button. Ensure the <em>Running </em>checkbox is selected, and your MiceOnABeam  generated script should now be running.</p>
<h3><strong style="font-size: 120%;">Step 9: Test &amp; Iterate</strong></h3>
<p>Test your script in your virtual world, running through all  possible events and situations that your script may encounter. When you need to  make a change back in your MiceOnABeam model, make the change and simply press  <em>CTRL-g</em> to generate the LSL script and automatically copy it to the  system clipboard so that it's ready for pasting into your virtual world's  scripting editor.</p>
<p>Note that the latest software development strategies advise that  you add functionality to your script in small increments, testing at each  iteration. In this way you will always have a working version of your script and  can more easily back out a change that hasn't worked out.</p>
<h3><strong style="font-size: 120%;">Step 10: Optimize &amp; deploy the generated code</strong></h3>
<p>After all your testing is completed and you are ready to deploy  your new script, select <em>Generate LSL (Optimized)... </em>from the <em>Script </em>menu. This will generate a script for the model without any system-generated  comments and as well perform several optimizations in the code. You can also  select the Code Generation option to exclude comments that you have entered in  the code for a more compact script.</p>]]></description><wfw:commentRss>http://www.miceonabeam.com/miceonabeam-blog/rss-comments-entry-10975089.xml</wfw:commentRss></item><item><title>MiceOnABeam Release v1.0.2</title><category>Release</category><category>v1.0.2</category><dc:creator>Antonius Frentis</dc:creator><pubDate>Fri, 11 Mar 2011 20:25:08 +0000</pubDate><link>http://www.miceonabeam.com/miceonabeam-blog/2011/3/11/miceonabeam-release-v102.html</link><guid isPermaLink="false">417049:4772989:10753690</guid><description><![CDATA[<p>The latest version of the MiceOnABeam Visual Scripting Tool has been released  and is available for <a style="color: #800000; font-weight: normal; text-decoration: underline;" href="http://www.miceonabeam.com/downloads/">downloading</a>.  There's lots of great new things here particularly if you're new to scripting or  you've been struggling with the complexities of LSL. For example <strong>the new  <em>LSL Action Wizard</em> provides easy form-based access to many LSL  functions</strong> and shows the generated code too. Great for learning  LSL!<br /><br />An overview of what's new is provided below. For full details please  see the <a style="color: #800000; font-weight: normal; text-decoration: underline;" href="https://miceonabeam.fogbugz.com/default.asp?W104">Release  Notes</a> and the <a style="color: #800000; font-weight: normal; text-decoration: underline;" href="https://miceonabeam.fogbugz.com/default.asp?W1">Product  Documentation</a>.<br /><br />If you're an existing user you can just download the  new release and run the installer over the existing installation. For those of  you who have the Professional version, your existing license file will continue  to work with the new version.<br /><br /><span class="subTitle" style="font-style: normal; font-family: Georgia; color: #000000; font-size: 14px; font-weight: bold;">Auto-Code with the LSL Action Wizard</span><br />One of the  benefits in using MiceOnABeam is that by graphically drawing out much of the  logic of your script you don't have to figure out and enter in as much LSL code.  This is particularly important if you're new to LSL scripting and aren't very  familiar with programming.<br /><br />However you still have to make things happen  within your virtual world in response to events that happen there. You do that  by calling one or more functions from the large LSL function library.<br /><br />But  for new scripters these often idiosyncratic functions can be confusing as to  when to use them and how to configure their many parameters. <span class="vb">The  new LSL Action</span> Wizard feature addresses this and further reduces the  amount of LSL code that you must manually write.<br /><br />An LSL Action represents  an operation that can be performed in your virtual world. It can be as simple as  setting the color of an object or as complex as performing a set of rotation  calculations and calling the required LSL functions to move and rotate an object  or it's parts. A comprehensive set of these are built in to MiceOnABeam, with  more to come in future releases.</p>
<p>Within MiceOnABeam's code editor you can simply select the desired LSL Action  from a menu.</p>
<p style="text-align: center;"><span class="full-image-block ssNonEditable"><span><img src="http://www.miceonabeam.com/storage/ActionMenu.png?__SQUARESPACE_CACHEVERSION=1299875419476" alt="" /></span></span></p>
<p><br />Once an LSL Action is selected, it is customized through the Wizard which  displays a form that you simply fill in. The action is then automatically mapped  to a set of LSL coding statements and function calls when the script is  generated for the model.</p>
<p style="text-align: center;"><span class="full-image-block ssNonEditable"><span><img src="http://www.miceonabeam.com/storage/LSLActions3.png?__SQUARESPACE_CACHEVERSION=1299875463678" alt="" /></span></span></p>
<p><span class="full-image-float-right ssNonEditable"><span><img src="http://www.miceonabeam.com/storage/LSLActions4.png?__SQUARESPACE_CACHEVERSION=1299875509782" alt="" /></span></span><br />Where there are multiple choices for the value for a  property, a pop-up list is displayed to pick from.<br /><br /><br /><br /><br />What's  particularly nice is that you can easily view the LSL code that will be  generated for the configured action. This can be a great help in learning  LSL!</p>
<p style="text-align: center;"><span class="full-image-block ssNonEditable"><span><img src="http://www.miceonabeam.com/storage/LSLActions9B.png?__SQUARESPACE_CACHEVERSION=1299875586655" alt="" /></span></span></p>
<p><br />In the Professional version of MiceOnABeam you can also <strong>create  and edit </strong><strong>your own custom LSL Actions</strong> and import them  into MiceOnABeam creating a library of custom code snippets to speed up your  script development.<br /><br /><span class="subTitle" style="font-style: normal; font-family: Georgia; color: #000000; font-size: 14px; font-weight: bold;">Reusable Components</span><br />A key part of any software  development environment is the capability to reuse existing designs to leverage  past development. MiceOnABeam provides two mechanisms for this.</p>
<p>At the coding level, the <span class="vb">LSL Action Wizard</span> feature  described above provides a set of configurable actions that can be inserted  directly into the code sections of your model.&nbsp; At a higher-level of reuse, it's  also useful to be able to save parts of models as <em>reusable components </em>that can be easily browsed, imported into a model and configured if  required.</p>
<p>The enhanced <em><span class="vb">Component Library Browser</span></em><span class="wikiNew"> provides a sortable folder view of your own MiceOnABeam model  files that you wish to access as reusable components. You can simply drag a  component from the browser into your model to reuse it.</span></p>
<p style="text-align: center;"><span class="wikiNew"><span class="full-image-block ssNonEditable"><span><img src="http://www.miceonabeam.com/storage/ComponentLibraryBrowser.png?__SQUARESPACE_CACHEVERSION=1299875621186" alt="" /></span></span></span></p>
<p><br /><span class="wikiNew">As most components need to be customized when reused  in a particular application, you can setup a state to be configurable and then  call upon the </span><span class="wikiNew"><em>Component Configuration Wizard</em> to provide a form that you simply fill in. (Yes- I reused the same internal  framework used for LSL Actions! :-)</span></p>
<p style="text-align: center;"><span class="wikiNew"><span class="full-image-block ssNonEditable"><span><img src="http://www.miceonabeam.com/storage/ConfigurableComponents7.png?__SQUARESPACE_CACHEVERSION=1299875651712" alt="" /></span></span></span></p>
<p><br />Finally, a small number of built-in reusable components are currently  provided with MiceOnABeam- with more to come! You can insert one for use in your  model via a simple menu selection.<br /><br /><span class="subTitle" style="font-style: normal; font-family: Georgia; color: #000000; font-size: 14px; font-weight: bold;">And More...</span><br />Release v1.0.2 has lots more, including  additional code generation optimizations, pop-up help tips for editors and menus  (you can of course turn them off!), state variable and function overrides and  several UI enhancements.<br /><br /><span class="subTitle" style="font-style: normal; font-family: Georgia; color: #000000; font-size: 14px; font-weight: bold;">Upcoming</span><br />Next up I'll be focusing on improving the  online documentation to make it more accessible to new scripters while not  losing of course the extensive reference material there. I'll also be developing  How-To videos to help people get started and to illustrate the use of specific  features.<br /><br />As a reminder of support options, for starters there's the <a style="color: #800000; font-weight: normal; text-decoration: underline;" href="http://world.secondlife.com/group/70ed1e15-0f77-f756-9675-5f2d047592d2">MiceOnABeam</a> group in Second Life. I encourage you all to use it for Q&amp;A with other group  members as well as myself. For more detailed Q&amp;A you can always post in the  <a style="color: #800000; font-weight: normal; text-decoration: underline;" rel="nofollow" href="http://www.miceonabeam.com/forums/">forums</a> on the MiceOnABeam website or contact <a style="color: #800000; font-weight: normal; text-decoration: underline;" rel="nofollow" href="http://www.miceonabeam.com/support/">MiceOnABeam Support</a>. To report a product-related problem,  please send an email to <a style="color: #800000; font-weight: normal; text-decoration: underline;" rel="nofollow" href="http://www.miceonabeam.com/support/">MiceOnABeam Support</a>, or click <a style="color: #800000; font-weight: normal; text-decoration: underline;" href="http://www.miceonabeam.com/send-problem-report/">Send  Problem Report</a> for a convenient form.<br /><br />Over the next while I'll also  be outfitting the MiceOnABeam headquarters in-world so that office hour  meet-ups, classes etc., will all be possible!<br /><br />As always it's great  hearing from you with any questions or comments.  Ciao!<br /><br />Antonius</p>
<div style="text-align: center;"><img src="http://gallery.mailchimp.com/047765c27d148bf4086285af8/images/oneMouseBlueSmall.1.gif" border="0" alt="Mighty" width="38" height="28" /></div>
<p>﻿</p>]]></description><wfw:commentRss>http://www.miceonabeam.com/miceonabeam-blog/rss-comments-entry-10753690.xml</wfw:commentRss></item><item><title>MiceOnABeam Group Chat</title><category>Support</category><category>User Group</category><category>Weekly Chat</category><dc:creator>Antonius Frentis</dc:creator><pubDate>Fri, 15 Oct 2010 15:42:20 +0000</pubDate><link>http://www.miceonabeam.com/miceonabeam-blog/2010/10/15/miceonabeam-group-chat.html</link><guid isPermaLink="false">417049:4772989:9193949</guid><description><![CDATA[<p>The feedback is in (thanks to those who provided input) and the first in-world chat for members of the MiceOnABeam User Group is set for Monday Oct. 18th at 1700 SLT (Pacific Time).</p>
<p>To join the user group existing  users of Second Life can click <a href="secondlife:///app/group/70ed1e15-0f77-f756-9675-5f2d047592d2/about">Join  Group</a>, otherwise click <a href="http://world.secondlife.com/group/70ed1e15-0f77-f756-9675-5f2d047592d2">MiceOnABeam  User Group Profile</a> and first become a member of Second Life.</p>
<p>I realize that this time will not be ideal for everyone, but I will post a transcript of the chat on this website. Also the MiceOnABeam group is available 24/7 so I encourage you all to use it for Q&amp;A with other group members as well as myself. For more detailed Q&amp;A you can always post in the <a href="http://www.miceonabeam.com/forums/">forums</a> on the MiceOnABeam <a href="http://www.miceonabeam.com">website</a> or contact <a href="mailto:support@miceonabeam.com">MiceOnABeam Support</a>.</p>
<p>Note that this will be a group chat only, not a meet-up, strictly informal and open to any group member to  ask questions or initiate discussions.&nbsp; If there are any specific topics you'd like to hear about just let me know.</p>
<p>I'm currently scouting out locations for the MiceOnABeam headquarters so that meet-ups, tutorials etc., will all be possible in the future.</p>
<p>I hope to chat with you on Monday.</p>
<p>Ciao!</p>
<p>Antonius</p>]]></description><wfw:commentRss>http://www.miceonabeam.com/miceonabeam-blog/rss-comments-entry-9193949.xml</wfw:commentRss></item></channel></rss>
