Developer Documentation

Technical Reference -> Terms ->  Developer Documentation

General

 * Development Team &mdash; OpenSim is brought to you by...
 * OpenSim: Introduction and Definitions &mdash; A work in progress describing the high level components of OpenSim
 * OpenSim: Technical Reference &mdash; A technical description of the simulator operation.
 * Grid Architecture Diagram
 * The OpenSim API

Development

 * Source Code Repository
 * Release Cycle
 * Automated Release Building
 * On revisions, tags and branches
 * Hacking OpenSim for fun and profit &mdash; A starters guide for programming OpenSim.
 * Coding standards &mdash; Coding conventions for developers.
 * Automated Testing &mdash; How to write tests for OpenSim.
 * Debugging Unit Tests &mdash; How to debug the automated tests.
 * Branches &mdash; An overview of the repository branches and what they are for.
 * Monodevelop &mdash; How to use the monodevelop IDE for editing C# solutions.
 * Creating New Solution &mdash; How to create new solution according to OpenSim conventions.
 * Improving Performance &mdash; Efforts to increase OpenSim's performance.

Services

 * Mantis Bug Tracking &mdash; Mantis is the issue tracking tool of OpenSimulator.
 * Panda Building &mdash; Panda builds the source base continuously and runs unit tests.
 * OpenSimulator GForge &mdash; Project hosting for OpenSimulator related projects.

Client Stacks

 * Sim Throttles &mdash; Information on how OpenSim handles throttling of packets to the client.

Database

 * Database Documentation &mdash; A map of grid and region instances used in OpenSim
 * MonoSqlite &mdash; How the database model currently works.
 * LSL:PrimitiveParams &mdash; Notes on converting SL Edit GUI values and LSL PrimitiveParams to OpenSim PrimitiveBaseShape fields
 * NHibernate Performance Testing &mdash; SQLite and MySQL performance tests with NHibernate.

File formats

 * Technical_Reference/OpenSim_Archive_Region_Format - Opensim Region Archive (OAR) file format.
 * Inventory_Archives - OpenSim Inventory Archive (IAR) file format

Grid

 * Asset Server problems - list of known problems with the asset server
 * Teleports - some diagrams about OGP and Hypergrid teleport sequences
 * Agent Domain / Service - Details about the GridForge hosted Agent Domain/Service code

Web Integration

 * Webinterface &mdash; How to mashup with the web.
 * RemoteAdmin &mdash; How to use the remote admin plug-in.
 * RestConsole - Description how to use the REST remote console
 * REST &mdash; Information about the REST interface to assets, inventory, etc.
 * Known Web Interfaces within OpenSim &mdash; The set of CAPS, XMLRPC, or REST entry points in the project.

Modules

 * RegionModules &mdash; The various modules that are used in the RegionServer and how to write new ones.
 * How to create a dynamic plugin - A tutorial for using PluginLoader
 * Getting Started with Region Modules - This brief tutorial is intended to get people started with developing applications with/for opensim using region modules and the opensim API.
 * Web Statistics Module - The web statistics module documentation and counter wish list.

Permissions

 * OpenSim:Permissions(Server)  &mdash; Permissions system as implemented on the region server.
 * OpenSim: Permissions &mdash; Notes on how object permissions are handled on the client.

Physics

 * PhysicsEngines  &mdash; Options for physics engines in OpenSim.
 * Physics Engine Interface &mdash; what methods and such exist in a Physics module

Protocols

 * Metaverse Exchange Protocol &mdash; MXP is alternative protocol for secondlife protocol.

Regions

 * Overview of How Regions Work - notes from ter_afk to rknop in #opensim-dev, cleaned up a bit
 * OpenSim: Permissions &mdash; Notes on object permissions & definition of the ObjectFlags variable.
 * OpenSim Load Balancing and Region Splitting - Instructions for using load balancing and region splitting features.

Threading

 * OpenSim: Threading strategy &mdash; How threading is implemented and handled.

Scripting

 * Scripting_Documentation &mdash; How to use scripts and what limitations apply.
 * LSL Implemented  &mdash; A list of LSL-functions that are available in OpenSim.
 * OSSL &mdash; Some information about the OpenSimulator Scripting Language, and how to implement an OSSL function
 * OpenSim.Region.ScriptEngine &mdash; How the ScriptEngine looks internally.

Search

 * OpenSim.Region.DataSnapshot - Shiny new data gathering/search system
 * ImageService - Shiny new region module for serving search-related images

Testing

 * Automated_Testing &mdash; Writing Automated tests for OpenSim.
 * Debugging Unit Tests &mdash; Debugging unit tests.
 * OpenSim: Debugging - profiler dumps &mdash; Dumps of OpenSim profiles to aid in tracking memory leaks.
 * Prim_Linking_Testing &mdash; Test cases for in world link/unlinking of prims.

Proposals

 * Opensim: 0.5 Release Target Discussion
 * Opensim: 0.6 Release Target Discussion
 * Opensim: Future Release Discussion


 * A better SimCrossing - A work in progress about implementing a smooth simcrossing
 * OpenID - Proposal for using OpenID in OpenSim
 * AssetServerProposal - Proposal for a distributed asset server
 * Creating profiles not used for login - RFC for alternative ways of creating profiles that will never be used for login
 * OpenSim_Services_and_Service_Connectors - new infrastructure for connecting region simulators to backend services
 * OpenSim Profile Anchors - a mechanism for retaining creator information for offline item transfers
 * Explicit Object Serialization - a proposal to explicitly serialize scene objects rather than using automatic .NET XML serialization

Proposed projects

 * OpenWiredux: Taking the next step
 * Using SNMP in OpenSim

Communication
A good first point of contact is the OpenSim IRC, on irc.freenode.net channels #opensim / #opensim-dev. The OpenSim developers hold office hours once a week in-world on Tuesdays at "Wright Plaza" on OSGrid. There is a "Test Hour" on Saturdays, also generally on "Wright Plaza". Both these weekly events are held at 1900UTC. Check on the #opensim IRC channel on Freenode just before each of these events if there is any confusion.

There is also a mailman email distribution list available at https://lists.berlios.de/mailman/listinfo/opensim-dev

Git Access
You can browse the source code for OpenSim using a web browser or via git. git clone ssh://USERNAME@opensimulator.org/var/git/opensim
 * Anonymous Checkout - see Download
 * Developer Checkout

Submitting Patches
Please review Submitting_code_to_OpenSim

Recent Git Commits
http://opensimulator.org/viewgit?a=rss-log&p=opensim|max=5|title=none

