Mono/Beta FAQ

From Second Life Wiki
Jump to navigation Jump to search

This page is now deprecated. Mono is no longer in beta, having gone live on the Main Grid in August, 2008.

Here you will find information on the Mono beta program. If you have questions on the Mono beta that are not answered here, please ask them on the discussion tab for this page. Please limit your questions to the Mono beta. If your questions concern the Second Life Mono implementation or the future plans for Mono, please ask them on the general Mono page. You can also attend the beta office hour sessions: Wednesday 8am, Friday 3pm, SLT, on the preview grid (Sandbox Goguen MONO).

Basic Information

The Mono beta runs on Aditi, Linden Lab's preview grid. This grid is not part of the Main Grid, and you will use a special viewer to connect to it. This viewer also has the necessary user interface elements to start using Mono for your LSL scripts. Inventory and Linden$ transactions will not affect your Main Grid account. Items created on the preview grid will not appear in your main grid inventory.

  • Beta start date: 29 January 2008
  • Location: Preview grid (Aditi)
  • Regions:
    • Sandbox Cordova MONO
    • Sandbox Goguen MONO
    • Sandbox Newcomb MONO
    • Sandbox Wanderton MONO
    • Note: all other regions on the preview grid (most of the grid, in fact) are running simulators for the Havok4 physics beta, occurring at the same time as the Mono beta.
    • Make sure you go to one of these Mono-enabled regions to test Mono.
  • Download viewers: beta viewers
  • The Mono UI is really simple, a single checkbox on the script edit window will select compilation to Mono.
    • Note: the checkbox is a compile target switch, so it is only available when you can compile. This means that the script must be in the contents of a rezzed object. A script window opened from inventory does not allow compilation, and hence lacks the Mono checkbox.
    • You can also select several inworld objects at once, and use the Tools menu, Recompile Scripts in Selection, Mono to recompile all the scripts in many objects at once.
  • JIRA meta issue: SVC-1276
    • If you find a bug, first check the issues in the meta issue to see if it's already been reported
    • If not, create a new issue, make sure "Mono beta" is in the subject line, and link it to the meta issue.
    • Try to give a minimal repro for your bug. A code snippet which the bug breaks is best.
  • We have now set up a group, Mono Beta. It is free to join, so if you have a free group slot please consider joining. We will use the group to message our status, let you know what we're working on, announce office hours, etc. We will still use the main Linden blog for major announcements such as when we update the beta simulators.

FAQ

If you have a question about the Mono beta, and it is not answered here, please add it to the discussion tab.

What is this "Mono" I've heard about?
Mono is a technology for making LSL scripts run much faster. You can read more about it on the Mono wiki page.
What is the purpose of this Mono beta?
Simply put, we want to find bugs. Before Mono is ready to go out on the Main Grid we want confidence that LSL scripts run the same under Mono as they do now (they'll just run much faster). Mono has been in QA at Linden Lab for several months, but even that isn't enough to give us the assurance we need.
How do I sign up for the beta?
You don't! Just come on over. You will need to download a special viewer to connect to the preview grid. The link is above, in the Basic Information section. For step by step instructions try the Mono Beta How To page.
What happens if I compile one of my scripts to Mono, and then take it to a non-Mono region on the preview grid?
Since we are sharing the preview grid with the Havok4 team this is a likely possibility. Scripts compiled to Mono will not run in the Havok4 regions. You will get an "Unrecognized bytecode" error when you rez the object and the sim determines it cannot run the script. You can either take the object back into inventory and go to a Mono region, or you can recompile the script(s) in the object back to LSL2 (uncheck the "compile to Mono" option).
I got on the preview grid, but there is no "Mono checkbox" which allows me to compile a script to Mono.
The checkbox is on the LSL script editor dialog. You should see it at the bottom of the window. If there is no checkbox, then you likely aren't using the Mono viewer. Download the Mono viewer from the links section at the top of this page. Also remember that you can only compile scripts that are contained in objects rezzed inworld. You cannot compile scripts from inventory.
Ok, I downloaded the Mono viewer, and I see the checkbox, but I can't select it to compile to Mono.
Most likely you aren't in a Mono region -- we are sharing the preview grid with Havok4. Teleport to a Mono-enabled region (list at the top of this page).
These sandboxes are ok, but I need to test scripts under special parcel rules like damage enabled?
We have added a few special parcels, specified below. Note that because this is a beta we have to restore simstates rather frequently. These parcels may at times not be available, or need to be recreated.
  • Water region for testing water vehicles (would like to test water region crossing).
    • Pond at eastern edge of Cordova
    • Water parcel spanning Goguen-Cordova border
  • Damage/push enabled for testing weapons
    • Plateau at northern end of Newcomb
  • No-script area for testing attachments while crossing parcel line into no-script
    • Northwest part of Newcomb has an elevated parcel that is no scripts.
  • Teen Grid Region
    • Once havok4 is done with the preview grid we will add a host for tg regions.
  • No autoreturn parcel for testing long-lived scripts
    • All of Cordova is no autoreturn.
  • Parcel for testing LSL media calls
    • The "No Scripts" parcel at the Northwestern part of Newcomb is assigned to the Mono beta group. If you join that group you will have rights on this land and should be able to set the media stream.

Office hour transcripts