From OpenSimulator
Technical Reference -> Terms -> Developer Documentation
Contents |
Source Code Repository Access
OpenSimulator uses git as its source code repository. Checkout
git clone git://opensimulator.org/git/opensim
See Source Code Repository for more details.
See Using_Git for more Details on installing and using GIT with OpenSimulator.org
You can also browse the source code for OpenSim using a web browser.
Submitting Patches
Please review Submitting_code_to_OpenSim
Developer Documentation
Please be aware that some of this documentation may be out of date.
General
- Development Team — OpenSim is brought to you by...
- OpenSim: Introduction and Definitions — A work in progress describing the high level components of OpenSim
- OpenSim: Technical Reference — A technical description of the simulator operation.
- Grid Architecture Diagram
- The OpenSim API
Development
- Release Cycle — How to create an OpenSimulator release.
- Automated Release Building
- On revisions, tags and branches
- Hacking OpenSim for fun and profit — A starters guide for programming OpenSim.
- Coding standards — Coding conventions for developers.
- Automated Testing — How to write tests for OpenSim.
- Debugging Unit Tests — How to debug the automated tests.
- Branches — An overview of the repository branches and what they are for.
- Monodevelop — How to use the monodevelop IDE for editing C# solutions.
- Creating New Solution — How to create new solution according to OpenSim conventions.
- Performance — Information about performance in OpenSim, including studies on where the bottlenecks are.
Services
- Mantis Bug Tracking — Mantis is the issue tracking tool of OpenSimulator.
- Panda Building — Panda builds the source base continuously and runs unit tests.
- OpenSimulator GForge — Project hosting for OpenSimulator related projects.
Client Stacks
- Sim Throttles — Information on how OpenSim handles throttling of packets to the client.
Database
- Database Documentation — A map of grid and region instances used in OpenSim
- Database_Schema — Information on the database schemas used in OpenSim
- MonoSqlite — How the database model currently works.
- LSL:PrimitiveParams — Notes on converting SL Edit GUI values and LSL PrimitiveParams to OpenSim PrimitiveBaseShape fields
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 — How to mashup with the web.
- RemoteAdmin — How to use the remote admin plug-in.
- RestConsole - Description how to use the REST remote console
- REST — Information about the REST interface to assets, inventory, etc.
- Known Web Interfaces within OpenSim — The set of CAPS, XMLRPC, or REST entry points in the project.
Modules
- RegionModules — 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) — Permissions system as implemented on the region server.
- OpenSim: Permissions — Notes on how object permissions are handled on the client.
Physics
- PhysicsEngines — Options for physics engines in OpenSim.
- Physics Engine Interface — what methods and such exist in a Physics module
Protocols
- Metaverse Exchange Protocol — 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 — 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 — How threading is implemented and handled.
Scripting
- Scripting_Documentation — How to use scripts and what limitations apply.
- LSL Implemented — A list of LSL-functions that are available in OpenSim.
- OSSL — Some information about the OpenSimulator Scripting Language, and how to implement an OSSL function
- OpenSim.Region.ScriptEngine — 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 — Writing Automated tests for OpenSim.
- Debugging Unit Tests — Debugging unit tests.
- OpenSim: Debugging - profiler dumps — Dumps of OpenSim profiles to aid in tracking memory leaks.
- Prim_Linking_Testing — 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
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 in summer time and 2000UTC in winter. 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
Recent Git Commits
- be more restrict when sending object contents asset ids, like when ower also should not see (UbitUmarov) (Tue, 19 Nov 2024 17:51:12 -0800)
- be more restrict when sending object contents asset ids, like when ower also should not see UbitUmarov <ajlduarte at sapo dot pt> .../Framework/Scenes/SceneObjectPartInventory.cs
- change UI god cancelation on arrival decision code a bit (UbitUmarov) (Tue, 19 Nov 2024 15:13:50 -0800)
- change UI god cancelation on arrival decision code a bit UbitUmarov <ajlduarte at sapo dot pt> OpenSim/Region/Framework/Scenes/GodController.cs
- do tell viewers about UI god cancelation on arrival (UbitUmarov) (Tue, 19 Nov 2024 15:05:59 -0800)
- do tell viewers about UI god cancelation on arrival UbitUmarov <ajlduarte at sapo dot pt> .../Avatar/UserProfiles/UserProfileModule.cs
- cosmetics (UbitUmarov) (Mon, 18 Nov 2024 20:25:32 -0800)
- cosmetics UbitUmarov <ajlduarte at sapo dot pt> OpenSim/Data/MySQL/MySQLGroupsData.cs
- cosmetics (UbitUmarov) (Sun, 17 Nov 2024 19:00:26 -0800)
- cosmetics UbitUmarov <ajlduarte at sapo dot pt> .../ScriptEngine/YEngine/MMRScriptCodeGen.cs
UNIQ3fa0417a78c6b9d0-cleanpage-00000001-QINU