580ffb5b6a
* First pass to allow bulding different build artifact types (libraries, exes, web apps, etc) from the same tree. Each project is seperated physically and can have a local obj and bin directory wehen building. We assemble a release using dotnet publish. This still needs a few changes and updates for compilation. I want to get the structural changes made however and committed locally at least. * Rename some Assembly attribute files to Addin.cs and strip them down to just plugin info so we can use generated Assembly information. A few additions to csproj dependencies to get things to compile. * Cleanup Directory.build.props. Make it reflect using the standard directories for output and publish to assemble a release. * Restructure Projects so they are no longer nested (no need to remove files from compilation) and there can be project types in the solution that use a different SDK. We need the last bit in order to do ASP.NET in the same solution tree. Goal is to be able to dotnet publish and get useable output. * Move OpenSim.sln to OpenSim.Server.RegionServer so the Server instances have similar naming (MoneyServer and RobustServer). * Added a Data directory for each of the *.Server.* packages and put Server specific configuration here. Added a rule to csproj to install the configuration into the bin directory on a build. There are now OpenSim.Server.{RegionServer|RobustServer|MoneyServer} executables and if publish is used a platform specific binary will be built. Next step from this is Docker files to run each of the server components. * More changes to get libs to resolve cleanly while we are in transition from mono addins. * Move projects under Source in solution tree. * Update nuget packages to address a vulnerability and pick up updates. * Add metadata to create NuGet Package for EF Core Data Models. * Include dlls we just carry in bin in the output directory when building. * Bump version. Some changes to not publish test components. |
||
---|---|---|
.github | ||
bin | ||
Docs | ||
Helpers | ||
Source | ||
Tests | ||
ThirdParty/SmartThreadPool | ||
ThirdPartyLicenses | ||
tools | ||
.dockerignore | ||
.gitattributes | ||
.gitignore | ||
Directory.Build.props | ||
docker-compose.debug.yml | ||
docker-compose.yml | ||
LICENSE.txt | ||
OpenSim.sln | ||
README.md |
Welcome to OpenSimulator (OpenSim for short)!
Overview
OpenSim is a BSD Licensed Open Source project to develop a functioning virtual worlds server platform capable of supporting multiple clients and servers in a heterogeneous grid structure. OpenSim is written in C#, and can run under Mono or the Microsoft .NET runtimes.
This is considered an alpha release. Some stuff works, a lot doesn't. If it breaks, you get to keep both pieces.
Compiling OpenSim
Please see BUILDING.md
Running OpenSim on Windows
You will need dotnet 8.0 runtime (https://dotnet.microsoft.com/en-us/download/dotnet/8.0)
To run OpenSim from a command prompt
- cd to the bin/ directory where you unpacked OpenSim
- review and change configuration files (.ini) for your needs. see the "Configuring OpenSim" section
- run OpenSim.exe
Running OpenSim on Linux/Mac
You will need
- dotnet 8.0 Runtime
- libgdiplus
if you have mono 6.x complete, you already have libgdiplus, otherwise you need to install it using a package manager for your operating system, like apt, brew, macports, etc for example on debian:
apt-get update && apt-get install -y apt-utils libgdiplus libc6-dev
To run OpenSim, from the unpacked distribution type:
- cd bin
- review and change configuration files (.ini) for your needs. see the "Configuring OpenSim" section
- run ./opensim.sh
Configuring OpenSim
When OpenSim starts for the first time, you will be prompted with a series of questions that look something like:
[09-17 03:54:40] DEFAULT REGION CONFIG: Simulator Name [OpenSim Test]:
For all the options except simulator name, you can safely hit enter to accept the default if you want to connect using a client on the same machine or over your local network.
You will then be asked "Do you wish to join an existing estate?". If you're starting OpenSim for the first time then answer no (which is the default) and provide an estate name.
Shortly afterwards, you will then be asked to enter an estate owner first name, last name, password and e-mail (which can be left blank). Do not forget these details, since initially only this account will be able to manage your region in-world. You can also use these details to perform your first login.
Once you are presented with a prompt that looks like:
Region (My region name) #
You have successfully started OpenSim.
If you want to create another user account to login rather than the estate account, then type "create user" on the OpenSim console and follow the prompts.
Helpful resources:
Connecting to your OpenSim
By default your sim will be available for login on port 9000. You can login by adding -loginuri http://127.0.0.1:9000 to the command that starts Second Life (e.g. in the Target: box of the client icon properties on Windows). You can also login using the network IP address of the machine running OpenSim (e.g. http://192.168.1.2:9000)
To login, use the avatar details that you gave for your estate ownership or the one you set up using the "create user" command.
Bug reports
In the very likely event of bugs biting you (err, your OpenSim) we encourage you to see whether the problem has already been reported on the OpenSim mantis system.
If your bug has already been reported, you might want to add to the bug description and supply additional information.
If your bug has not been reported yet, file a bug report ("opening a mantis"). Useful information to include:
- description of what went wrong
- stack trace
- OpenSim.log (attach as file)
- OpenSim.ini (attach as file)
More Information on OpenSim
More extensive information on building, running, and configuring OpenSim, as well as how to report bugs, and participate in the OpenSim project can always be found at http://opensimulator.org.
Thanks for trying OpenSim, we hope it is a pleasant experience.