Change font size
It is currently Thu Mar 23, 2017 3:14 pm

Forum rules


Image
. please keep questions related to an OpenSimulator and OSgrid nature.



Post a new topicPost a reply Page 1 of 2   [ 20 posts ]
Go to page 1, 2  Next
Author Message
 Post subject: OSGrid on Pi - Teleporting out of region and BulletPhysics.
PostPosted: Tue Apr 07, 2015 9:59 pm 
User avatar

Joined: Tue Apr 07, 2015 9:09 pm
Posts: 18
Location: Milwaukee, WI
Hello!

This is my first posting to OSGrid and aftering reading the FAQ on how to post a problem. I hope I can get this right here. I have originally ran OpenSIM in stand alone and after figuring out a lot of errors there as well as waiting for pre-compiled version of Mono to finally end up in the apt-get selection of the Rasbian OS. I understand that OpenSim and OSGrid is beta enough and adding ARM processors to the mix only makes the situation worse. So I just wanted to publish my findings for all to see. I shall get the questions out of the way in accordance to your FAQ: viewtopic.php?f=14&t=819

1. Running OSgrid OpenSimulator 0.8.2.dev.83e58eb my client is FireStorm viewer version 4.6.9.42974
2. Home server architecture is a Banana Pi which is a dual-core ARM7 processor with 1gig of DDR3 ram running the Raspbian OS (all apt-get update and upgrades complete) Between the Pi and the outside WAN is a netgear WNDR3700v2 running DD-WRT with ports for OSGrid opened for 9110 for login and 9111 for region data. Opensim.ini modified to move ports to those addresses so I can still access my standalone OpenSim grid at the same time if I choose.

passing the mono --version command returns the following:
Code:
Mono JIT compiler version 3.2.8 (Debian 3.2.8+dfsg-4+rpi1)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
        TLS:           __thread
        SIGSEGV:       normal
        Notifications: epoll
        Architecture:  armel,vfp+hard
        Disabled:      none
        Misc:          softdebug
        LLVM:          supported, not enabled.
        GC:            sgen


My OSGrid Region is running on MySQL as recommended by OpenSimulator.org

3. My setup is a simple one region system named "Furry Isles" at grid coordinates 9967 x 9995 connected to the OSGrid service.
For questions 4 and 5. OpenSim.ini and regions.xml (I cannot find XML.. so I shall post the regions.ini file, if someone wants to tell me where the xml file is i'll be happy to post it) will be posted below all of this.
6. the binaries were downloaded right off of osgrid.org . mono was installed as a pre-compiled binary on the apt-get service of raspbian


7a. First errors I'm getting in OSGrid - Teleporting out of my region.

I decided to move from being a stand-alone server to having my banana Pi connected to OSGrid.

Everything went very smoothly. Until I tried to teleport back to Wright Plaza. Which my client gives a vauge message stating this:

Code:
Teleport failed. internal error


Looking at the console of my region it reveals these errors.

Code:
03:44:41 - [ENTITY TRANSFER MODULE]: Exception on teleport of Riot Ornitz from <100.2133, 121.9292, 29.9861>@Furry Isles to <128, 128, 1.5>@Wright Plaza: SIGILL  at OpenSim.Region.CoreModules.Framework.EntityTransfer.EntityTransferModule.DoTeleportInternal (OpenSim.Region.Framework.Scenes.ScenePresence sp, OpenSim.Services.Interfaces.GridRegion reg, OpenSim.Services.Interfaces.GridRegion finalDestination, Vector3 position, Vector3 lookAt, UInt32 teleportFlags) [0x00000] in <filename unknown>:0
  at OpenSim.Region.CoreModules.Framework.EntityTransfer.EntityTransferModule.TeleportAgentToDifferentRegion (OpenSim.Region.Framework.Scenes.ScenePresence sp, UInt64 regionHandle, Vector3 position, Vector3 lookAt, UInt32 teleportFlags, OpenSim.Services.Interfaces.GridRegion& finalDestination) [0x00000] in <filename unknown>:0
  at OpenSim.Region.CoreModules.Framework.EntityTransfer.EntityTransferModule.Teleport (OpenSim.Region.Framework.Scenes.ScenePresence sp, UInt64 regionHandle, Vector3 position, Vector3 lookAt, UInt32 teleportFlags) [0x00000] in <filename unknown>:0


I tried rolling back to 0.8.1 but I still get the same errors. Initially I dismissed it as a possible LAN/WAN issue. but looking at my opensim.log file I noticed others having the same exact problem.

7b. BulletPhysics crashing hard!

As of OpenSim 0.8.x ODE is being phased out for Bullet. So I was trying to keep up with the times on my Pi but running into a wall.

You can use XNA Bullet managed as described in opensim.ini at a penalty of processor power and accuracy. But like how I compiled ODE physics to work on the Pi described in my blog on how I got it all working in the first place http://www.s-config.com/opensimraspberr ... oat-works/ - having a native unmanaged library of libbulletsim.so would be far more efficient then going through mono for all of the regions calculations.

There is no libbulletphysics.so library for the ARM processor. This I know. However, after recompiling bullet as described in the opensim-libs/trunk/unmanaged/BulltSim/BUILD.TXT which to get this requires the usage of the "git -clone" command as described here http://opensimulator.org/wiki/Opensim-l ... repository

Then you have to go into your /bin/Physics/OpenSim.Region.Physics.BulletSPlugin.dll.config and change it to the following

Code:
<configuration>
  <dllmap dll="BulletSim" target="lib/libBulletSim.so" />
</configuration>


This in return forces the issue to ignore everything in the Physics folder and access the library I just compiled for it.

The end result after I modify my opensim.ini to use bullet unmanaged crashes spectacularly:

Code:
03:33:23 - [LLUDPSERVER]: Average Environment.TickCount resolution: 1ms
03:33:23 - [SCENE]: Region necropolis, WORLD MAP refresh time set to 0 seconds
03:33:23 - [SCENE]: Using the BestAvatarResponsiveness prioritization scheme
03:33:24 - [HEIGHTMAP TERRAIN DATA]: HeightmapTerrainData create from legacy serialization. Size=<256,256>
03:33:24 - [PHYSICS]: Added meshing engine: ZeroMesher
03:33:24 - [PHYSICS]: Added physics engine: basicphysics
03:33:24 - [PHYSICS]: Added physics engine: BulletSim
03:33:24 - [PHYSICS]: Added meshing engine: Meshmerizer
03:33:24 - [PHYSICS]: Added physics engine: OpenDynamicsEngine
03:33:24 - [PHYSICS]: Added physics engine: POS
03:33:24 - [PHYSICS]: creating meshing engine Meshmerizer
03:33:24 - [PHYSICS]: creating BulletSim
03:33:24 - [BULLETS SCENE]: Selected bullet engine bulletunmanaged -> BulletUnmanaged/
Stacktrace:

at <unknown> <0xffffffff>
at (wrapper managed-to-native) OpenSim.Region.Physics.BulletSPlugin.BSAPIUnman/BSAPICPP.Initialize2 (OpenMetaverse.Vector3,intptr,int,intptr,int,intptr,OpenSim.Region.Physics.BulletSPlugin.BSAPIUnman/BSAPICPP/DebugLogCallback) <0xffffffff>
at OpenSim.Region.Physics.BulletSPlugin.BSAPIUnman.Initialize (OpenMetaverse.Vector3,OpenSim.Region.Physics.BulletSPlugin.ConfigurationParameters,int,OpenSim.Region.Physics.BulletSPlugin.CollisionDesc[]&,int,OpenSim.Region.Physics.BulletSPlugin.EntityProperties[]&) <0x00353>
at OpenSim.Region.Physics.BulletSPlugin.BSScene.Initialise (OpenSim.Region.Physics.Manager.IMesher,Nini.Config.IConfigSource,OpenMetaverse.Vector3) <0x005cb>
at OpenSim.Region.Physics.Manager.PhysicsPluginManager.GetPhysicsScene (string,string,Nini.Config.IConfigSource,string,OpenMetaverse.Vector3) <0x00283>
at OpenSim.Region.ClientStack.RegionApplicationBase.GetPhysicsScene (string,string,Nini.Config.IConfigSource,string,OpenMetaverse.Vector3) <0x000af>
at OpenSim.OpenSimBase.GetPhysicsScene (string,OpenMetaverse.Vector3) <0x0006f>
at OpenSim.OpenSimBase.SetupScene (OpenSim.Framework.RegionInfo,int,Nini.Config.IConfigSource,System.Collections.Generic.List`1<OpenSim.Region.ClientStack.IClientNetworkServer>&) <0x00303>
at OpenSim.OpenSimBase.CreateRegion (OpenSim.Framework.RegionInfo,bool,bool,OpenSim.Framework.IScene&) <0x0034f>
at OpenSim.OpenSimBase.CreateRegion (OpenSim.Framework.RegionInfo,bool,OpenSim.Framework.IScene&) <0x00037>
at OpenSim.ApplicationPlugins.LoadRegions.LoadRegionsPlugin.PostInitialise () <0x0041f>
at OpenSim.OpenSimBase.StartupSpecific () <0x003db>
at OpenSim.OpenSim.StartupSpecific () <0x00273>
at OpenSim.Framework.Servers.BaseOpenSimServer.Startup () <0x0002f>
at OpenSim.Application.Main (string[]) <0x009eb>
at (wrapper runtime-invoke) <Module>.runtime_invoke_void_object (object,intptr,intptr,intptr) <0xffffffff>

Native stacktrace:

Debug info from gdb:

[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/arm-linux-gnueabihf/libthread_db.so.1".
[New Thread 0xb35e3430 (LWP 19475)]
[New Thread 0xb36e3430 (LWP 19474)]
[New Thread 0xb37e3430 (LWP 19473)]
[New Thread 0xb38e3430 (LWP 19472)]
[New Thread 0xb3b77430 (LWP 19471)]
[New Thread 0xb3c7d430 (LWP 19470)]
[New Thread 0xb3d2a430 (LWP 19468)]
[New Thread 0xb3d4a430 (LWP 19467)]
[New Thread 0xb3fff430 (LWP 19466)]
[New Thread 0xb51bd430 (LWP 19465)]
[New Thread 0xb40ff430 (LWP 19464)]
[New Thread 0xb41ff430 (LWP 19463)]
[New Thread 0xb42ff430 (LWP 19462)]
[New Thread 0xb43ff430 (LWP 19461)]
[New Thread 0xb44ff430 (LWP 19460)]
[New Thread 0xb45ff430 (LWP 19459)]
[New Thread 0xb46ff430 (LWP 19458)]
[New Thread 0xb47ff430 (LWP 19457)]
[New Thread 0xb48ff430 (LWP 19456)]
[New Thread 0xb49ff430 (LWP 19455)]
[New Thread 0xb4aff430 (LWP 19454)]
[New Thread 0xb4cff430 (LWP 19453)]
[New Thread 0xb4dff430 (LWP 19452)]
[New Thread 0xb4eff430 (LWP 19451)]
[New Thread 0xb4fff430 (LWP 19450)]
[New Thread 0xb52ce430 (LWP 19449)]
[New Thread 0xb5b73430 (LWP 19448)]
0xb6eaeaac in waitpid () from /lib/arm-linux-gnueabihf/libpthread.so.0
Id Target Id Frame
28 Thread 0xb5b73430 (LWP 19448) "mono" 0xb6eac770 in sem_wait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
27 Thread 0xb52ce430 (LWP 19449) "mono" 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
26 Thread 0xb4fff430 (LWP 19450) "mono" 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
25 Thread 0xb4eff430 (LWP 19451) "mono" 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
24 Thread 0xb4dff430 (LWP 19452) "mono" 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
23 Thread 0xb4cff430 (LWP 19453) "mono" 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
22 Thread 0xb4aff430 (LWP 19454) "mono" 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
21 Thread 0xb49ff430 (LWP 19455) "mono" 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
20 Thread 0xb48ff430 (LWP 19456) "mono" 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
19 Thread 0xb47ff430 (LWP 19457) "mono" 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
18 Thread 0xb46ff430 (LWP 19458) "mono" 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
17 Thread 0xb45ff430 (LWP 19459) "mono" 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
16 Thread 0xb44ff430 (LWP 19460) "mono" 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
15 Thread 0xb43ff430 (LWP 19461) "mono" 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
14 Thread 0xb42ff430 (LWP 19462) "mono" 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
13 Thread 0xb41ff430 (LWP 19463) "mono" 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
12 Thread 0xb40ff430 (LWP 19464) "mono" 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
11 Thread 0xb51bd430 (LWP 19465) "mono" 0xb6eae2c4 in nanosleep () from /lib/arm-linux-gnueabihf/libpthread.so.0
10 Thread 0xb3fff430 (LWP 19466) "mono" 0xb6eac9c8 in sem_timedwait () from /lib/arm-linux-gnueabihf/libpthread.so.0
9 Thread 0xb3d4a430 (LWP 19467) "mono" 0xb6e12e54 in epoll_wait () from /lib/arm-linux-gnueabihf/libc.so.6
8 Thread 0xb3d2a430 (LWP 19468) "mono" 0xb6eac9c8 in sem_timedwait () from /lib/arm-linux-gnueabihf/libpthread.so.0
7 Thread 0xb3c7d430 (LWP 19470) "mono" 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
6 Thread 0xb3b77430 (LWP 19471) "mono" 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
5 Thread 0xb38e3430 (LWP 19472) "mono" 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
4 Thread 0xb37e3430 (LWP 19473) "mono" 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
3 Thread 0xb36e3430 (LWP 19474) "mono" 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
2 Thread 0xb35e3430 (LWP 19475) "mono" 0xb6eae2c4 in nanosleep () from /lib/arm-linux-gnueabihf/libpthread.so.0
* 1 Thread 0xb6f84000 (LWP 19447) "mono" 0xb6eaeaac in waitpid () from /lib/arm-linux-gnueabihf/libpthread.so.0

Thread 28 (Thread 0xb5b73430 (LWP 19448)):
#0 0xb6eac770 in sem_wait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001fff10 in mono_sem_wait (sem=0x2f523c, alertable=1) at mono-semaphore.c:119
#2 0x0017db28 in finalizer_thread (unused=<optimized out>) at gc.c:1073
#3 0x001625b4 in start_wrapper_internal (data=0x413b18) at threads.c:643
#4 start_wrapper (data=0x413b18) at threads.c:688
#5 0x001f5c30 in thread_start_routine (args=0x3ce728) at wthreads.c:294
#6 0x00204268 in inner_start_thread (arg=0x3ce71c) at mono-threads-posix.c:49
#7 0xb6ea5c00 in start_thread () from /lib/arm-linux-gnueabihf/libpthread.so.0
#8 0xb6e12728 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
#9 0xb6e12728 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 27 (Thread 0xb52ce430 (LWP 19449)):
#0 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001df938 in _wapi_handle_timedwait_signal_handle (handle=0x400, timeout=0xb52cd690, alertable=1, poll=<optimized out>) at handles.c:1586
#2 0x001f33a4 in WaitForMultipleObjectsEx (numobjects=3039614620, handles=0x2, waitall=3076096, timeout=3039614728, alertable=1) at wait.c:670
#3 0x001602e4 in mono_wait_uninterrupted (thread=0xb5bec170, multiple=-1234346920, numhandles=2, handles=0xb52cd708, waitall=0, ms=2000, alertable=1) at threads.c:1453
#4 0x00161fa8 in ves_icall_System_Threading_WaitHandle_WaitAny_internal (mono_handles=0xb6597758, ms=2000, exitContext=<optimized out>) at threads.c:1551
#5 0xb52de99c in ?? ()
#6 0xb52de99c in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 26 (Thread 0xb4fff430 (LWP 19450)):
#0 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001df938 in _wapi_handle_timedwait_signal_handle (handle=0x400, timeout=0xb4ffe690, alertable=1, poll=<optimized out>) at handles.c:1586
#2 0x001f33a4 in WaitForMultipleObjectsEx (numobjects=3036669596, handles=0x2, waitall=3076096, timeout=3036669704, alertable=1) at wait.c:670
#3 0x001602e4 in mono_wait_uninterrupted (thread=0xb5bec220, multiple=-1234346920, numhandles=2, handles=0xb4ffe708, waitall=0, ms=2000, alertable=1) at threads.c:1453
#4 0x00161fa8 in ves_icall_System_Threading_WaitHandle_WaitAny_internal (mono_handles=0xb6596758, ms=2000, exitContext=<optimized out>) at threads.c:1551
#5 0xb52de99c in ?? ()
#6 0xb52de99c in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 25 (Thread 0xb4eff430 (LWP 19451)):
#0 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001df938 in _wapi_handle_timedwait_signal_handle (handle=0x400, timeout=0xb4efe690, alertable=1, poll=<optimized out>) at handles.c:1586
#2 0x001f33a4 in WaitForMultipleObjectsEx (numobjects=3035621020, handles=0x2, waitall=3076096, timeout=3035621128, alertable=1) at wait.c:670
#3 0x001602e4 in mono_wait_uninterrupted (thread=0xb5bec2d0, multiple=-1234346920, numhandles=2, handles=0xb4efe708, waitall=0, ms=2000, alertable=1) at threads.c:1453
#4 0x00161fa8 in ves_icall_System_Threading_WaitHandle_WaitAny_internal (mono_handles=0xb6591758, ms=2000, exitContext=<optimized out>) at threads.c:1551
#5 0xb52de99c in ?? ()
#6 0xb52de99c in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 24 (Thread 0xb4dff430 (LWP 19452)):
#0 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001df938 in _wapi_handle_timedwait_signal_handle (handle=0x400, timeout=0xb4dfe690, alertable=1, poll=<optimized out>) at handles.c:1586
#2 0x001f33a4 in WaitForMultipleObjectsEx (numobjects=3034572444, handles=0x2, waitall=3076096, timeout=3034572552, alertable=1) at wait.c:670
#3 0x001602e4 in mono_wait_uninterrupted (thread=0xb5bec380, multiple=-1234346920, numhandles=2, handles=0xb4dfe708, waitall=0, ms=2000, alertable=1) at threads.c:1453
#4 0x00161fa8 in ves_icall_System_Threading_WaitHandle_WaitAny_internal (mono_handles=0xb659b868, ms=2000, exitContext=<optimized out>) at threads.c:1551
#5 0xb52de99c in ?? ()
#6 0xb52de99c in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 23 (Thread 0xb4cff430 (LWP 19453)):
#0 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001df938 in _wapi_handle_timedwait_signal_handle (handle=0x400, timeout=0xb4cfe690, alertable=1, poll=<optimized out>) at handles.c:1586
#2 0x001f33a4 in WaitForMultipleObjectsEx (numobjects=3033523868, handles=0x2, waitall=3076096, timeout=3033523976, alertable=1) at wait.c:670
#3 0x001602e4 in mono_wait_uninterrupted (thread=0xb5bec430, multiple=-1234346920, numhandles=2, handles=0xb4cfe708, waitall=0, ms=2000, alertable=1) at threads.c:1453
#4 0x00161fa8 in ves_icall_System_Threading_WaitHandle_WaitAny_internal (mono_handles=0xb6599758, ms=2000, exitContext=<optimized out>) at threads.c:1551
#5 0xb52de99c in ?? ()
#6 0xb52de99c in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 22 (Thread 0xb4aff430 (LWP 19454)):
#0 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001df938 in _wapi_handle_timedwait_signal_handle (handle=0x400, timeout=0xb4afe690, alertable=1, poll=<optimized out>) at handles.c:1586
#2 0x001f33a4 in WaitForMultipleObjectsEx (numobjects=3031426716, handles=0x2, waitall=3076096, timeout=3031426824, alertable=1) at wait.c:670
#3 0x001602e4 in mono_wait_uninterrupted (thread=0xb5bec4e0, multiple=-1234346920, numhandles=2, handles=0xb4afe708, waitall=0, ms=2000, alertable=1) at threads.c:1453
#4 0x00161fa8 in ves_icall_System_Threading_WaitHandle_WaitAny_internal (mono_handles=0xb659c868, ms=2000, exitContext=<optimized out>) at threads.c:1551
#5 0xb52de99c in ?? ()
#6 0xb52de99c in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 21 (Thread 0xb49ff430 (LWP 19455)):
#0 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001df938 in _wapi_handle_timedwait_signal_handle (handle=0x400, timeout=0xb49fe690, alertable=1, poll=<optimized out>) at handles.c:1586
#2 0x001f33a4 in WaitForMultipleObjectsEx (numobjects=3030378140, handles=0x2, waitall=3076096, timeout=3030378248, alertable=1) at wait.c:670
#3 0x001602e4 in mono_wait_uninterrupted (thread=0xb5bec590, multiple=-1234346920, numhandles=2, handles=0xb49fe708, waitall=0, ms=2000, alertable=1) at threads.c:1453
#4 0x00161fa8 in ves_icall_System_Threading_WaitHandle_WaitAny_internal (mono_handles=0xb6594758, ms=2000, exitContext=<optimized out>) at threads.c:1551
#5 0xb52de99c in ?? ()
#6 0xb52de99c in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 20 (Thread 0xb48ff430 (LWP 19456)):
#0 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001df938 in _wapi_handle_timedwait_signal_handle (handle=0x400, timeout=0xb48fe690, alertable=1, poll=<optimized out>) at handles.c:1586
#2 0x001f33a4 in WaitForMultipleObjectsEx (numobjects=3029329564, handles=0x2, waitall=3076096, timeout=3029329672, alertable=1) at wait.c:670
#3 0x001602e4 in mono_wait_uninterrupted (thread=0xb5bec640, multiple=-1234346920, numhandles=2, handles=0xb48fe708, waitall=0, ms=2000, alertable=1) at threads.c:1453
#4 0x00161fa8 in ves_icall_System_Threading_WaitHandle_WaitAny_internal (mono_handles=0xb6595758, ms=2000, exitContext=<optimized out>) at threads.c:1551
#5 0xb52de99c in ?? ()
#6 0xb52de99c in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 19 (Thread 0xb47ff430 (LWP 19457)):
#0 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001df938 in _wapi_handle_timedwait_signal_handle (handle=0x400, timeout=0xb47fe690, alertable=1, poll=<optimized out>) at handles.c:1586
#2 0x001f33a4 in WaitForMultipleObjectsEx (numobjects=3028280988, handles=0x2, waitall=3076096, timeout=3028281096, alertable=1) at wait.c:670
#3 0x001602e4 in mono_wait_uninterrupted (thread=0xb5bec6f0, multiple=-1234346920, numhandles=2, handles=0xb47fe708, waitall=0, ms=2000, alertable=1) at threads.c:1453
#4 0x00161fa8 in ves_icall_System_Threading_WaitHandle_WaitAny_internal (mono_handles=0xb6593758, ms=2000, exitContext=<optimized out>) at threads.c:1551
#5 0xb52de99c in ?? ()
#6 0xb52de99c in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 18 (Thread 0xb46ff430 (LWP 19458)):
#0 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001df938 in _wapi_handle_timedwait_signal_handle (handle=0x400, timeout=0xb46fe690, alertable=1, poll=<optimized out>) at handles.c:1586
#2 0x001f33a4 in WaitForMultipleObjectsEx (numobjects=3027232412, handles=0x2, waitall=3076096, timeout=3027232520, alertable=1) at wait.c:670
#3 0x001602e4 in mono_wait_uninterrupted (thread=0xb5bec7a0, multiple=-1234346920, numhandles=2, handles=0xb46fe708, waitall=0, ms=2000, alertable=1) at threads.c:1453
#4 0x00161fa8 in ves_icall_System_Threading_WaitHandle_WaitAny_internal (mono_handles=0xb6598758, ms=2000, exitContext=<optimized out>) at threads.c:1551
#5 0xb52de99c in ?? ()
#6 0xb52de99c in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 17 (Thread 0xb45ff430 (LWP 19459)):
#0 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001df938 in _wapi_handle_timedwait_signal_handle (handle=0x400, timeout=0xb45fe690, alertable=1, poll=<optimized out>) at handles.c:1586
#2 0x001f33a4 in WaitForMultipleObjectsEx (numobjects=3026183836, handles=0x2, waitall=3076096, timeout=3026183944, alertable=1) at wait.c:670
#3 0x001602e4 in mono_wait_uninterrupted (thread=0xb5bec850, multiple=-1234346920, numhandles=2, handles=0xb45fe708, waitall=0, ms=2000, alertable=1) at threads.c:1453
#4 0x00161fa8 in ves_icall_System_Threading_WaitHandle_WaitAny_internal (mono_handles=0xb6592758, ms=2000, exitContext=<optimized out>) at threads.c:1551
#5 0xb52de99c in ?? ()
#6 0xb52de99c in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 16 (Thread 0xb44ff430 (LWP 19460)):
#0 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001df938 in _wapi_handle_timedwait_signal_handle (handle=0x400, timeout=0xb44fe690, alertable=1, poll=<optimized out>) at handles.c:1586
#2 0x001f33a4 in WaitForMultipleObjectsEx (numobjects=3025135260, handles=0x2, waitall=3076096, timeout=3025135368, alertable=1) at wait.c:670
#3 0x001602e4 in mono_wait_uninterrupted (thread=0xb5bec900, multiple=-1234346920, numhandles=2, handles=0xb44fe708, waitall=0, ms=2000, alertable=1) at threads.c:1453
#4 0x00161fa8 in ves_icall_System_Threading_WaitHandle_WaitAny_internal (mono_handles=0xb6590758, ms=2000, exitContext=<optimized out>) at threads.c:1551
#5 0xb52de99c in ?? ()
#6 0xb52de99c in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 15 (Thread 0xb43ff430 (LWP 19461)):
#0 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001df938 in _wapi_handle_timedwait_signal_handle (handle=0x400, timeout=0xb43fe690, alertable=1, poll=<optimized out>) at handles.c:1586
#2 0x001f33a4 in WaitForMultipleObjectsEx (numobjects=3024086684, handles=0x2, waitall=3076096, timeout=3024086792, alertable=1) at wait.c:670
#3 0x001602e4 in mono_wait_uninterrupted (thread=0xb5bec9b0, multiple=-1234346920, numhandles=2, handles=0xb43fe708, waitall=0, ms=2000, alertable=1) at threads.c:1453
#4 0x00161fa8 in ves_icall_System_Threading_WaitHandle_WaitAny_internal (mono_handles=0xb658f758, ms=2000, exitContext=<optimized out>) at threads.c:1551
#5 0xb52de99c in ?? ()
#6 0xb52de99c in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 14 (Thread 0xb42ff430 (LWP 19462)):
#0 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001df938 in _wapi_handle_timedwait_signal_handle (handle=0x400, timeout=0xb42fe690, alertable=1, poll=<optimized out>) at handles.c:1586
#2 0x001f33a4 in WaitForMultipleObjectsEx (numobjects=3023038108, handles=0x2, waitall=3076096, timeout=3023038216, alertable=1) at wait.c:670
#3 0x001602e4 in mono_wait_uninterrupted (thread=0xb5beca60, multiple=-1234346920, numhandles=2, handles=0xb42fe708, waitall=0, ms=2000, alertable=1) at threads.c:1453
#4 0x00161fa8 in ves_icall_System_Threading_WaitHandle_WaitAny_internal (mono_handles=0xb659d868, ms=2000, exitContext=<optimized out>) at threads.c:1551
#5 0xb52de99c in ?? ()
#6 0xb52de99c in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 13 (Thread 0xb41ff430 (LWP 19463)):
#0 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001df938 in _wapi_handle_timedwait_signal_handle (handle=0x400, timeout=0xb41fe690, alertable=1, poll=<optimized out>) at handles.c:1586
#2 0x001f33a4 in WaitForMultipleObjectsEx (numobjects=3021989532, handles=0x2, waitall=3076096, timeout=3021989640, alertable=1) at wait.c:670
#3 0x001602e4 in mono_wait_uninterrupted (thread=0xb5becb10, multiple=-1234346920, numhandles=2, handles=0xb41fe708, waitall=0, ms=2000, alertable=1) at threads.c:1453
#4 0x00161fa8 in ves_icall_System_Threading_WaitHandle_WaitAny_internal (mono_handles=0xb659a758, ms=2000, exitContext=<optimized out>) at threads.c:1551
#5 0xb52de99c in ?? ()
#6 0xb52de99c in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 12 (Thread 0xb40ff430 (LWP 19464)):
#0 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001df938 in _wapi_handle_timedwait_signal_handle (handle=0x47c, timeout=0xb40fe7b8, alertable=1, poll=<optimized out>) at handles.c:1586
#2 0x001f2a70 in WaitForSingleObjectEx (handle=0x1f2a70, timeout=3076096, alertable=1148) at wait.c:198
#3 0x00160344 in mono_wait_uninterrupted (thread=0xb5becbc0, multiple=-1233679480, numhandles=1, handles=0xb40fe81c, waitall=0, ms=234, alertable=1) at threads.c:1455
#4 0x00161ed4 in ves_icall_System_Threading_WaitHandle_WaitOne_internal (this=<optimized out>, handle=0xe0b556ac, ms=234, exitContext=<optimized out>) at threads.c:1587
#5 0xb51c3158 in ?? ()
#6 0xb51c3158 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 11 (Thread 0xb51bd430 (LWP 19465)):
#0 0xb6eae2c4 in nanosleep () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001f4e10 in SleepEx (ms=<optimized out>, alertable=1) at wthreads.c:842
#2 0x0016425c in monitor_thread (unused=<optimized out>) at threadpool.c:779
#3 0x001625b4 in start_wrapper_internal (data=0x642378) at threads.c:643
#4 start_wrapper (data=0x642378) at threads.c:688
#5 0x001f5c30 in thread_start_routine (args=0x3d3318) at wthreads.c:294
#6 0x00204268 in inner_start_thread (arg=0x3d330c) at mono-threads-posix.c:49
#7 0xb6ea5c00 in start_thread () from /lib/arm-linux-gnueabihf/libpthread.so.0
#8 0xb6e12728 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
#9 0xb6e12728 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 10 (Thread 0xb3fff430 (LWP 19466)):
#0 0xb6eac9c8 in sem_timedwait () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001ffff0 in mono_sem_timedwait (sem=0x2f4f7c, timeout_ms=<optimized out>, alertable=1) at mono-semaphore.c:82
#2 0x00166c20 in async_invoke_thread (data=0x0) at threadpool.c:1565
#3 0x001625b4 in start_wrapper_internal (data=0x67ad98) at threads.c:643
#4 start_wrapper (data=0x67ad98) at threads.c:688
#5 0x001f5c30 in thread_start_routine (args=0x3d3438) at wthreads.c:294
#6 0x00204268 in inner_start_thread (arg=0x3d342c) at mono-threads-posix.c:49
#7 0xb6ea5c00 in start_thread () from /lib/arm-linux-gnueabihf/libpthread.so.0
#8 0xb6e12728 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
#9 0xb6e12728 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 9 (Thread 0xb3d4a430 (LWP 19467)):
#0 0xb6e12e54 in epoll_wait () from /lib/arm-linux-gnueabihf/libc.so.6
#1 0x00164be0 in tp_epoll_wait (p=0x2f5084) at ../../mono/metadata/tpool-epoll.c:118
#2 0x001625b4 in start_wrapper_internal (data=0x6a7ec0) at threads.c:643
#3 start_wrapper (data=0x6a7ec0) at threads.c:688
#4 0x001f5c30 in thread_start_routine (args=0x3d35e8) at wthreads.c:294
#5 0x00204268 in inner_start_thread (arg=0x3d35dc) at mono-threads-posix.c:49
#6 0xb6ea5c00 in start_thread () from /lib/arm-linux-gnueabihf/libpthread.so.0
#7 0xb6e12728 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
#8 0xb6e12728 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 8 (Thread 0xb3d2a430 (LWP 19468)):
#0 0xb6eac9c8 in sem_timedwait () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001ffff0 in mono_sem_timedwait (sem=0x2f5004, timeout_ms=<optimized out>, alertable=1) at mono-semaphore.c:82
#2 0x00166c20 in async_invoke_thread (data=0xb6db9e5c) at threadpool.c:1565
#3 0x001625b4 in start_wrapper_internal (data=0x6b36d8) at threads.c:643
#4 start_wrapper (data=0x6b36d8) at threads.c:688
#5 0x001f5c30 in thread_start_routine (args=0x3d3708) at wthreads.c:294
#6 0x00204268 in inner_start_thread (arg=0x3d36fc) at mono-threads-posix.c:49
#7 0xb6ea5c00 in start_thread () from /lib/arm-linux-gnueabihf/libpthread.so.0
#8 0xb6e12728 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
#9 0xb6e12728 in ?? () from /lib/arm-linux-gnueabihf/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 7 (Thread 0xb3c7d430 (LWP 19470)):
#0 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001df938 in _wapi_handle_timedwait_signal_handle (handle=0x400, timeout=0xb3c7c690, alertable=1, poll=<optimized out>) at handles.c:1586
#2 0x001f33a4 in WaitForMultipleObjectsEx (numobjects=3016214172, handles=0x2, waitall=3076096, timeout=3016214280, alertable=1) at wait.c:670
#3 0x001602e4 in mono_wait_uninterrupted (thread=0xb5becf30, multiple=-1233133536, numhandles=2, handles=0xb3c7c708, waitall=0, ms=20000, alertable=1) at threads.c:1453
#4 0x00161fa8 in ves_icall_System_Threading_WaitHandle_WaitAny_internal (mono_handles=0xb67fe6c0, ms=20000, exitContext=<optimized out>) at threads.c:1551
#5 0xb52de99c in ?? ()
#6 0xb52de99c in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 6 (Thread 0xb3b77430 (LWP 19471)):
#0 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001df938 in _wapi_handle_timedwait_signal_handle (handle=0x400, timeout=0xb3b76690, alertable=1, poll=<optimized out>) at handles.c:1586
#2 0x001f33a4 in WaitForMultipleObjectsEx (numobjects=3015141020, handles=0x2, waitall=3076096, timeout=3015141128, alertable=1) at wait.c:670
#3 0x001602e4 in mono_wait_uninterrupted (thread=0xb5becfe0, multiple=-1233133536, numhandles=2, handles=0xb3b76708, waitall=0, ms=20000, alertable=1) at threads.c:1453
#4 0x00161fa8 in ves_icall_System_Threading_WaitHandle_WaitAny_internal (mono_handles=0xb67ff6c0, ms=20000, exitContext=<optimized out>) at threads.c:1551
#5 0xb52de99c in ?? ()
#6 0xb52de99c in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 5 (Thread 0xb38e3430 (LWP 19472)):
#0 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001df938 in _wapi_handle_timedwait_signal_handle (handle=0x4cc, timeout=0xb38e28d8, alertable=1, poll=<optimized out>) at handles.c:1586
#2 0x001f2a70 in WaitForSingleObjectEx (handle=0x1f2a70, timeout=3076096, alertable=1228) at wait.c:198
#3 0x001808e4 in ves_icall_System_Threading_Monitor_Monitor_wait (obj=0xb67fdcf0, ms=5000) at monitor.c:1485
#4 0xb3c89674 in ?? ()
#5 0xb3c89674 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 4 (Thread 0xb37e3430 (LWP 19473)):
#0 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001df938 in _wapi_handle_timedwait_signal_handle (handle=0x4cd, timeout=0xb37e28d8, alertable=1, poll=<optimized out>) at handles.c:1586
#2 0x001f2a70 in WaitForSingleObjectEx (handle=0x1f2a70, timeout=3076096, alertable=1229) at wait.c:198
#3 0x001808e4 in ves_icall_System_Threading_Monitor_Monitor_wait (obj=0xb67fdcf0, ms=5000) at monitor.c:1485
#4 0xb3c89674 in ?? ()
#5 0xb3c89674 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 3 (Thread 0xb36e3430 (LWP 19474)):
#0 0xb6eaa8bc in pthread_cond_timedwait@@GLIBC_2.4 () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001df938 in _wapi_handle_timedwait_signal_handle (handle=0x4ce, timeout=0xb36e28d8, alertable=1, poll=<optimized out>) at handles.c:1586
#2 0x001f2a70 in WaitForSingleObjectEx (handle=0x1f2a70, timeout=3076096, alertable=1230) at wait.c:198
#3 0x001808e4 in ves_icall_System_Threading_Monitor_Monitor_wait (obj=0xb67fdcf0, ms=5000) at monitor.c:1485
#4 0xb3c89674 in ?? ()
#5 0xb3c89674 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 2 (Thread 0xb35e3430 (LWP 19475)):
#0 0xb6eae2c4 in nanosleep () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x001f4e10 in SleepEx (ms=<optimized out>, alertable=1) at wthreads.c:842
#2 0x001622d8 in ves_icall_System_Threading_Thread_Sleep_internal (ms=500) at threads.c:1224
#3 0xb3c89dfc in ?? ()
#4 0xb3c89dfc in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 1 (Thread 0xb6f84000 (LWP 19447)):
#0 0xb6eaeaac in waitpid () from /lib/arm-linux-gnueabihf/libpthread.so.0
#1 0x000b2148 in mono_handle_native_sigsegv (signal=<optimized out>, ctx=<optimized out>) at mini-exceptions.c:2299
#2 0x00027af8 in mono_sigsegv_signal_handler (_dummy=11, info=0xbea87758, context=0xbea877d8) at mini.c:6777
#3 <signal handler called>
#4 0xb20d2a64 in BulletSim::initPhysics2 (this=0xcb1020, parms=0x43800000, maxCollisions=1132462080, collisionArray=0x45800000, maxUpdates=-1235505168, updateArray=0x800) at BulletSim.cpp:144
#5 0xb20bc694 in Initialize2 (maxPosition=..., parms=0x43800000, maxCollisions=1132462080, collisionArray=0x45800000, maxUpdates=-1235505168, updateArray=0x800, debugLog=0xb55e3020) at API2.cpp:125
#6 0xb2190c88 in ?? ()
Cannot access memory at address 0x7f8

=================================================================
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries
used by your application.
=================================================================

Aborted


I've tried compiling with -fPiC and without. I tried to use the latest version of Bullet3 libraries as well as the original bullet 2 libraries that libbulletsim.so was compiled with.

This problem may be more of a bug issue for the OpenSim Guys if anything.


Last edited by Riot Ornitz on Tue Apr 07, 2015 10:30 pm, edited 2 times in total.

Top
 Profile  
 
 Post subject: Re: OSGrid on Pi - Teleporting out of region and BulletPhysics.
PostPosted: Tue Apr 07, 2015 10:01 pm 
User avatar

Joined: Tue Apr 07, 2015 9:09 pm
Posts: 18
Location: Milwaukee, WI
Continuing on with posting my regions.ini as stated in question 4

4a. Opensim.ini

Code:
;; This is the main configuration file for OpenSimulator.
;; If it's named OpenSim.ini then it will be loaded by OpenSimulator.
;; If it's named OpenSim.ini.example then you will need to copy it to
;; OpenSim.ini first (if that file does not already exist)
;;
;; If you are copying, then once you have copied OpenSim.ini.example to
;; OpenSim.ini you will need to pick an architecture in the [Architecture]
;; section at the end of this file.
;;
;; The settings in this file are in the form "<key> = <value>".  For example,
;; save_crashes = false in the [Startup] section below.
;;
;; All settings are initially commented out and the default value used, as
;; found in OpenSimDefaults.ini.  To change a setting, first uncomment it by
;; deleting the initial semicolon (;) and then change the value.  This will
;; override the value in OpenSimDefaults.ini
;;
;; If you want to find out what configuration OpenSimulator has finished with
;; once all the configuration files are loaded then type "config show" on the
;; region console command line.
;;
;;
;; NOTES FOR DEVELOPERS REGARDING THE FORMAT OF THIS FILE
;;
;; All leading white space is ignored, but preserved.
;;
;; Double semicolons denote a text comment
;;
;; ;# denotes a configuration directive description
;;    formatted as:
;;    {option} {depends on} {question to ask} {choices} default value
;;    Any text comments following the declaration, up to the next blank line.
;;    will be copied to the generated file (NOTE: generation is not yet
;;    implemented)
;;
;;    A * in the choices list will allow an empty entry.
;;    An empty question will set the default if the dependencies are
;;    satisfied.
;;
;; ;  denotes a commented out option.
;;    Any options added to OpenSim.ini.example should be initially commented
;;    out.


[Startup]
    ;# {ConsolePrompt} {} {ConsolePrompt} {} "Region (\R) "
    ;; Console prompt
    ;; Certain special characters can be used to customize the prompt
    ;; Currently, these are
    ;; \R - substitute region name
    ;; \\ - substitute \
    ; ConsolePrompt = "Region (\R) "

    ;# {save_crashes} {} {Save crashes to disk?} {true false} false
    ;; Set this to true if you want to log crashes to disk
    ;; this can be useful when submitting bug reports.
    ;; However, this will only log crashes within OpenSimulator that cause the
    ;; entire program to exit
    ;; It will not log crashes caused by virtual machine failures, which
    ;; includes mono and ODE failures.
    ;; You will need to capture these native stack traces by recording the
    ;; session log itself.
    ; save_crashes = false

    ;# {crash_dir} {save_crashes:true} {Directory to save crashes to?} {} crashes
    ;; Directory to save crashes to if above is enabled
    ;; (default is /opensimdir/crashes/*.txt or C:\opensim\crashes\*.txt)
    ; crash_dir = "crashes"

    ;# {PIDFile} {} {Path to PID file?} {}
    ;; Place to create a PID file
    ; PIDFile = "/tmp/my.pid"
   
   ; ##
    ; ## SYSTEM
    ; ##

    ; Sets the method that OpenSim will use to fire asynchronous
    ; events. Valid values are UnsafeQueueUserWorkItem,
    ; QueueUserWorkItem, BeginInvoke, SmartThreadPool, and Thread.
    ; SmartThreadPool is reported to work well on Mono/Linux, but
    ; UnsafeQueueUserWorkItem has been benchmarked with better
    ; performance on .NET/Windows
    async_call_method = SmartThreadPool


    ; Max threads to allocate on the FireAndForget thread pool
    ; when running with the SmartThreadPool option above
    MaxPoolThreads = 300         
    MinPoolThreads = 128

    ;# {region_info_source} {} {Where to load region from?} {filesystem web} filesystem
    ;; Determine where OpenSimulator looks for the files which tell it
    ;; which regions to server
    ;; Default is "filesystem"
    ; region_info_source = "filesystem"
    ; region_info_source = "web"
   
    ;# {regionload_regionsdir} {region_info_source} {Location of file?} {} Regions
    ;; Determines where the region XML files are stored if you are loading
    ;; these from the filesystem.
    ;; Defaults to bin/Regions in your OpenSimulator installation directory
    ; regionload_regionsdir="C:\somewhere\xmlfiles\"

    ;# {regionload_webserver_url} {region_info_source} {URL to load region from?} {}
    ;; Determines the page from which regions xml is retrieved if you are
    ;; loading these from the web.
    ;; The XML here has the same format as it does on the filesystem
    ;; (including the <Root> tag), except that everything is also enclosed
    ;; in a <Regions> tag.
    ; regionload_webserver_url = "http://example.com/regions.xml";

    ;# {allow_regionless} {} {Allow simulator to start up with no regions configured.} {true false} false
    ;; Allow the simulator to start up if there are no region configuration available
    ;; from the selected region_info_source.
    ; allow_regionless = false

    ;# {MaxPrimUndos} {} {Maximum number of undos avialable for position, rotation and scale changes of each prim} {} 20
    ;; Increasing the number of undos available number will increase memory usage.
    MaxPrimUndos = 20

    ;# {NonPhysicalPrimMin} {} {Minimum size of nonphysical prims?} {} 0.001
    ;; Minimum size for non-physical prims.  Affects resizing of existing
    ;; prims.  This can be overriden in the region config file (as
    ;; NonPhysicalPrimMin!).
    ; NonPhysicalPrimMin = 0.001

    ;# {NonPhysicalPrimMax} {} {Maximum size of nonphysical prims?} {} 256
    ;; Maximum size for non-physical prims.  Affects resizing of existing
    ;; prims. This can be overriden in the region config file (as
    ;; NonPhysicalPrimMax!).
    ; NonPhysicalPrimMax = 256

    ;# {PhysicalPrimMin} {} {Minimum size of physical prims?} {} 10
    ;; Maximum size where a prim can be physical.  Affects resizing of
    ;; existing prims.  This can be overriden in the region config file.
    ; PhysicalPrimMin = 0.01

    ;# {PhysicalPrimMax} {} {Maximum size of physical prims?} {} 10
    ;; Maximum size where a prim can be physical.  Affects resizing of
    ;; existing prims.  This can be overriden in the region config file.
    ; PhysicalPrimMax = 10

    ;# {ClampPrimSize} {} {Clamp viewer rezzed prims to max sizes?} {true false} false
    ;; If a viewer attempts to rez a prim larger than the non-physical or
    ;; physical prim max, clamp the dimensions to the appropriate maximum
    ;; This can be overriden in the region config file.
    ; ClampPrimSize = false
   
    ;# {LinksetPrims} {} {Max prims an object will hold?} {} 0
    ;; Maximum number of prims allowable in a linkset. Affects creating new
    ;; linksets. Ignored if less than or equal to zero.
    ;; This can be overriden in the region config file.
    ; LinksetPrims = 0

    ;# {AllowScriptCrossing} {} {Allow scripts to cross into this region} {true false} true
    ;; Allow scripts to keep running when they cross region boundaries, rather
    ;; than being restarted.  State is reloaded on the destination region.
    ;; This only applies when crossing to a region running in a different
    ;; simulator. 
    ;; For crossings where the regions are on the same simulator the script is
    ;; always kept running.
    ; AllowScriptCrossing = true

    ;# {TrustBinaries} {AllowScriptCrossing:true} {Accept compiled binary script code? (DANGEROUS!)} {true false} false
    ;; Allow compiled script binary code to cross region boundaries.
    ;; If you set this to "true", any region that can teleport to you can
    ;; inject ARBITRARY BINARY CODE into your system. Use at your own risk.
    ;; YOU HAVE BEEN WARNED!!!
    ; TrustBinaries = false

    ;# {CombineContiguousRegions} {} {Create megaregions where possible? (Do not use with existing content!)} {true false} false
    ;; Combine all contiguous regions into one large megaregion
    ;; Order your regions from South to North, West to East in your regions.ini
    ;; and then set this to true
    ;; Warning!  Don't use this with regions that have existing content!,
    ;; This will likely break them
    ; CombineContiguousRegions = false

    ;# {InworldRestartShutsDown} {} {Shutdown instance on region restart?} {true false} false
    ;; If you have only one region in an instance, or to avoid the many bugs
    ;; that you can trigger in modules by restarting a region, set this to
    ;; true to make the entire instance exit instead of restarting the region.
    ;; This is meant to be used on systems where some external system like
    ;; Monit will restart any instance that exits, thereby making the shutdown
    ;; into a restart.
    ; InworldRestartShutsDown = false

    ;; Persistence of changed objects happens during regular sweeps. The
    ;; following control that behaviour to prevent frequently changing objects
    ;; from heavily loading the region data store.
    ;; If both of these values are set to zero then persistence of all changed
    ;; objects will happen on every sweep.

    ;# {MinimumTimeBeforePersistenceConsidered} {} {Time before un-changed object may be persisted} {} 60
    ;; Objects will be considered for persistance in the next sweep when they
    ;; have not changed for this number of seconds.
    ; MinimumTimeBeforePersistenceConsidered = 60

    ;# {MaximumTimeBeforePersistenceConsidered} {} {Time before changed objects may be persisted?} {} 600
    ;; Objects will always be considered for persistance in the next sweep
    ;; if the first change occurred this number of seconds ago.
    ; MaximumTimeBeforePersistenceConsidered = 600

    ;# {see_into_this_sim_from_neighbor} {} {Should avatars in neighbor sims see objects in this sim?} {true false} true
    ;; Should avatars in neighbor sims see objects in this sim?
    ; see_into_this_sim_from_neighbor = true

    ;# {physical_prim} {} {Allow prims to be physical?} {true false} true
    ;; if you would like to allow prims to be physical and move by physics
    ;; with the physical checkbox in the client set this to true.
    ; physical_prim = true

    ;; Select a mesher here.
    ;;
    ;; Meshmerizer properly handles complex prims by using triangle meshes.
    ;; Note that only the ODE physics engine currently deals with meshed
    ;; prims in a satisfactory way.

    ;# {meshing} {} {Select mesher} {Meshmerizer ZeroMesher} Meshmerizer
    ;; ZeroMesher is faster but leaves the physics engine to model the mesh
    ;; using the basic shapes that it supports.
    ;; Usually this is only a box.
    ;; Default is Meshmerizer
    ; meshing = Meshmerizer
    ; meshing = ZeroMesher
   
    ; if you use Meshmerizer and want sculpt map collisions, setting this to
    ; to true will store decoded sculpt maps in a special folder in your bin
    ; folder, which can reduce startup times by reducing asset requests. Some
    ; versions of mono dont work well when reading the cache files, so set this
    ; to false if you have compatibility problems.
    CacheSculptMaps = false   

    ;; Choose one of the physics engines below
    ;# {physics} {} {Select physics engine} {BulletSim OpenDynamicsEngine basicphysics POS} BulletSim
    ;; OpenDynamicsEngine was the previous default physics engine in OpenSimulator 0.7.6.1 and before.
    ;; It continues to provide a workable physics implementation.  ODE does not currently support varregions.
    ;; basicphysics effectively does not model physics at all, making all objects phantom.
    ;; Default is BulletSim
    physics = OpenDynamicsEngine
    ; physics = BulletSim
    ; physics = basicphysics
    ; physics = POS

    ;# {DefaultScriptEngine} {} {Default script engine} {XEngine} XEngine
    ;; Default script engine to use. Currently, we only have XEngine
    ; DefaultScriptEngine = "XEngine"
   
    ;# {HttpProxy} {} {Proxy URL for llHTTPRequest and dynamic texture loading} {} http://proxy.com:8080
    ;; Http proxy setting for llHTTPRequest and dynamic texture loading, if
    ;; required
    ; HttpProxy = "http://proxy.com:8080"

    ;# {HttpProxyExceptions} {HttpProxy} {Set of regular expressions defining URL that should not be proxied} {}
    ;; If you're using HttpProxy, then you can set HttpProxyExceptions to a
    ;; list of regular expressions for URLs that you don't want to go through
    ;; the proxy.
    ;; For example, servers inside your firewall.
    ;; Separate patterns with a ';'
    ; HttpProxyExceptions = ".mydomain.com;localhost"

    ;# {emailmodule} {} {Provide llEmail and llGetNextEmail functionality? (requires SMTP server)} {true false} false
    ;; The email module requires some configuration. It needs an SMTP
    ;; server to send mail through.
    ; emailmodule = DefaultEmailModule

    ;# {SpawnPointRouting} {} {Set routing method for Telehub Spawnpoints} {closest random sequence} closest
    ;; SpawnPointRouting adjusts the landing for incoming avatars.
    ;; "closest" will place the avatar at the SpawnPoint located in the closest
    ;; available spot to the destination (typically map click/landmark).
    ;; "random" will place the avatar on a randomly selected spawnpoint;
    ;; "sequence" will place the avatar on the next sequential SpawnPoint
    ; SpawnPointRouting = closest

    ;# {TelehubAllowLandmark} {} {Allow users with landmarks to override telehub routing} {true false} false
    ;; TelehubAllowLandmark allows users with landmarks to override telehub
    ;; routing and land at the landmark coordinates when set to true
    ;; default is false
    ; TelehubAllowLandmark = false

[AccessControl]
    ;# {AllowedClients} {} {Bar (|) separated list of allowed clients} {}
    ;; Bar (|) separated list of viewers which may gain access to the regions.
    ;; One can use a substring of the viewer name to enable only certain
    ;; - "Imprudence" has access
    ;; - "Imprudence 1.3" has access
    ;; - "Imprudence 1.3.1" has no access
    ; AllowedClients =

    ;# {BannedClients} {} {Bar (|) separated list of banned clients} {}
    ;# Bar (|) separated list of viewers which may not gain access to the regions.
    ;; - "Imprudence" has no access
    ;; - "Imprudence 1.3" has no access
    ;; - "Imprudence 1.3.1" has access
    ; BannedClients =   
   
[Map]

    WorldMapModule = "WorldMap"

    ;; select map image module
    MapImageModule = "Warp3DImageModule"
    ;MapImageModule = "MapImageModule"

    ;# {GenerateMaptiles} {} {Generate map tiles?} {true false} true
    ;; Map tile options. You can choose to generate normal maptiles or nominate an uploaded texture to
    ;; be the map tile using the MaptileStaticUUID parameter in this section or for individual regions in
    ;; the regions config file(s).  If you do not want to upload map tiles at all, then you will need
    ;; to disable the MapImageServiceModule entirely.
    GenerateMaptiles = true

    ;# {MaptileRefresh} {GenerateMaptiles} {Maptile refresh period?} {} 0
    ;; If desired, a running region can update the map tiles periodically
    ;; to reflect building activity. This names no sense of you don't have
    ;; prims on maptiles. Value is in seconds.
    ; MaptileRefresh = 0

    ;# {MaptileStaticUUID} {} {Asset ID for static map texture} {} 00000000-0000-0000-0000-000000000000
    ;; If not generating maptiles, use this static texture asset ID
    ; MaptileStaticUUID = "00000000-0000-0000-0000-000000000000"

    ;# {TextureOnMapTile} {} {Use terrain textures for map tiles?} {true false} true
    ;; Use terrain texture for maptiles if true, use shaded green if false
    ; TextureOnMapTile = true

    ;# {DrawPrimOnMapTile} {} {Draw prim shapes on map tiles?} {true false} false
    ;; Draw objects on maptile.  This step might take a long time if you've
    ;; got a large number of objects, so you can turn it off here if you'd like.
    ; DrawPrimOnMapTile = true   
   
[Permissions]
    ;# {permissionmodules} {} {Permission modules to use (may specify multiple modules, separated by comma} {} DefaultPermissionsModule
    ;; Permission modules to use, separated by comma.
    ;; Possible modules are DefaultPermissionsModule, PrimLimitsModule
    permissionmodules = DefaultPermissionsModule

    ;# {serverside_object_permissions} {permissionmodules:DefaultPermissionsModule} {Activate permission handling by the sim?} {true false} true
    ;; These are the parameters for the default permissions module
    ;;
    ;; If set to false, then, in theory, the server never carries out
    ;; permission checks (allowing anybody to copy
    ;; any item, etc.  This may not yet be implemented uniformally.
    ;; If set to true, then all permissions checks are carried out
    serverside_object_permissions = true

    ;# {allow_grid_gods} {} {Allow grid gods?} {true false} false
    ;; This allows users with a UserLevel of 200 or more to assume god
    ;; powers in the regions in this simulator.
    allow_grid_gods = false

    ;; This allows some control over permissions
    ;; please note that this still doesn't duplicate SL, and is not intended to
    ;# {region_owner_is_god} {} {Allow region owner gods} {true false} true
    ;; Allow region owners to assume god powers in their regions
    region_owner_is_god = true

    ;# {region_manager_is_god} {} {Allow region manager gods} {true false} false
    ;; Allow region managers to assume god powers in regions they manage
    ; region_manager_is_god = false

    ;# {parcel_owner_is_god} {} {Allow parcel owner gods} {true false} true
    ;; Allow parcel owners to assume god powers in their parcels
    ; parcel_owner_is_god = true

    ;# {simple_build_permissions} {} {Allow building in parcel by access list (no groups)} {true false} false
    ;; More control over permissions
    ;; This is definitely not SL!
    ;; Provides a simple control for land owners to give build rights to
    ;; specific avatars in publicly accessible parcels that disallow object
    ;; creation in general.
    ;; Owners specific avatars by adding them to the Access List of the parcel
    ;; without having to use the Groups feature
    ; simple_build_permissions = false   
   
[Estates]
    ; If these values are commented out then the user will be asked for estate details when required (this is the normal case).
     ; If these values are uncommented then they will be used to create a default estate as necessary.
    ; New regions will be automatically assigned to that default estate.
   
    ;# {DefaultEstateName} {} {Default name for estate?} {} My Estate
    ;; Name for the default estate
    ; DefaultEstateName = My Estate

    ;# {DefaultEstateOwnerName} {} {Default estate owner name?} {} FirstName LastName
    ;; Name for default estate owner
    ; DefaultEstateOwnerName = FirstName LastName

    ; ** Standalone Estate Settings **   
    ; The following parameters will only be used on a standalone system to
    ; create an estate owner that does not already exist

    ;# {DefaultEstateOwnerUUID} {} {Default estate owner UUID?} {} 00000000-0000-0000-0000-000000000000
    ;; If DefaultEstateOwnerUUID is left at UUID.Zero (as below) then a random
    ;; UUID will be assigned. This is normally what you want
    ; DefaultEstateOwnerUUID = 00000000-0000-0000-0000-000000000000

    ;# {DefaultEstateOwnerEMail} {} {Default estate owner email?} {}
    ;; Email address for the default estate owner
    ; DefaultEstateOwnerEMail = owner@domain.com

    ;# {DefaultEstateOwnerPassword} {} {Default estate owner password} {}
    ;; Password for the default estate owner
    ; DefaultEstateOwnerPassword = password

[SMTP]
    ;; The SMTP server enabled the email module to send email to external
    ;; destinations.

    ;# {enabled} {[Startup]emailmodule:DefaultEmailModule} {Enable SMTP service?} {true false} false
    ;; Enable sending email via SMTP
    ; enabled = false

    ;# {internal_object_host} {[Startup]emailmodule:DefaultEmailModule enabled:true} {Host name to treat as internal (object to object) email?} {} lsl.opensim.local
    ; internal_object_host = lsl.opensim.local

    ;# {host_domain_header_from} {[Startup]emailmodule:DefaultEmailModule enabled:true} {From address to use in the sent email header?} {} 127.0.0.1
    ; host_domain_header_from = "127.0.0.1"

    ;# {email_pause_time} {[Startup]emailmodule:DefaultEmailModule enabled:true} {Period in seconds to delay after an email is sent.} {} 20
    ; email_pause_time = 20

    ;# {email_max_size} {[Startup]emailmodule:DefaultEmailModule enabled:true} {Maximum total size of email in bytes.} {} 4096
    ; email_max_size = 4096

    ;# {SMTP_SERVER_HOSTNAME} {[Startup]emailmodule:DefaultEmailModule enabled:true} {SMTP server name?} {} 127.0.0.1
    ; SMTP_SERVER_HOSTNAME = "127.0.0.1"

    ;# {SMTP_SERVER_PORT} {[Startup]emailmodule:DefaultEmailModule enabled:true} {SMTP server name?} {SMTP server port?} {} 25
    ; SMTP_SERVER_PORT = 25

    ;# {SMTP_SERVER_LOGIN} {[Startup]emailmodule:DefaultEmailModule enabled:true} {SMTP server user name?} {}
    ; SMTP_SERVER_LOGIN = ""

    ;# {SMTP_SERVER_PASSWORD} {[Startup]emailmodule:DefaultEmailModule enabled:true} {SMTP server password} {}
    ; SMTP_SERVER_PASSWORD = ""

[Network]

    ;# {ConsoleUser} {} {User name for console account} {}
    ;; Configure the remote console user here. This will not actually be used
    ;; unless you use -console=rest at startup.
    ; ConsoleUser = "Test"
    ;# {ConsolePass} {} {Password for console account} {}
    ; ConsolePass = "secret"
    ;# {console_port} {} {Port for console connections} {} 0
    ; console_port = 0

    ;# {http_listener_port} {} {TCP Port for this simulator to listen on? (This must be unique to the simulator!)} {} 9000
    ;; Simulator HTTP port. This is not the region port, but the port the
    ;; entire simulator listens on. This port uses the TCP protocol, while
    ;; the region ports use UDP.
    http_listener_port = 9110

    ;# {ExternalHostNameForLSL} {} {Hostname to use for HTTP-IN URLs. This should be reachable from the internet.} {}
    ;; Hostname to use in llRequestURL/llRequestSecureURL
    ;; if not defined - default machine name is being used
    ;; (on Windows this mean NETBIOS name - useably only inside local network)
    ; ExternalHostNameForLSL = "127.0.0.1"

    ;# {shard} {} {Name to use for X-Secondlife-Shard header? (press enter if unsure)} {} OpenSim
    ;; What is reported as the "X-Secondlife-Shard"
    ;; Defaults to the user server url if not set
    ;; The old default is "OpenSim", set here for compatibility
    ;; The below is not commented for compatibility.
    shard = "OpenSim"

    ;# {user_agent} {} {User agent to report to web servers?} {} OpenSim LSL (Mozilla Compatible)
    ;; What is reported as the "User-Agent" when using llHTTPRequest
    ;; Defaults to not sent if not set here. See the notes section in the wiki
    ;; at http://wiki.secondlife.com/wiki/LlHTTPRequest for comments on adding
    ;; " (Mozilla Compatible)" to the text where there are problems with a web server
    ; user_agent = "OpenSim LSL (Mozilla Compatible)"

[ClientStack.LindenUDP]
    ;; See OpensSimDefaults.ini for the throttle options. You can copy the
    ;; relevant sections and override them here.
    ;; DO NOT MODIFY OpenSimDefaults.ini, as your changes would be lost
    ;; with the next update!

    ;# {DisableFacelights} {} {Stop facelights from working?} {true false} false
    ;; Quash and remove any light properties from attachments not on the
    ;; hands. This allows flashlights and lanterns to function, but kills
    ;; silly vanity "Facelights" dead. Sorry, head mounted miner's lamps
    ;; will also be affected.
    ;; This is especially important in artistic builds that depend on lights
    ;; on the build for their appearance, since facelights will cause the
    ;; building's lights to possibly not be rendered.
    ; DisableFacelights = "false"
   
    ;async_packet_handling = true
    scene_throttle_max_bps = 800000
    client_throttle_max_bps = 100000      

[ClientStack.LindenCaps]
    ;; For the long list of capabilities, see OpenSimDefaults.ini
    ;; Here are the few ones you may want to change. Possible values
    ;; are:
    ;;   "" -- empty, capability disabled
    ;;   "localhost" -- capability enabled and served by the simulator
    ;;   "<url>" -- capability enabled and served by some other server
    ;;
    ; These are enabled by default to localhost. Change if you see fit.
    Cap_GetTexture = "localhost"
    Cap_GetMesh = "localhost"
    ; This is disabled by default. Change if you see fit. Note that
    ; serving this cap from the simulators may lead to poor performace.
    Cap_WebFetchInventoryDescendents = ""
    Cap_FetchInventoryDescendents2 = "localhost"   
    Cap_FetchInventory2 = "localhost"      

[SimulatorFeatures]

    ;# {MapImageServerURI} {} {URL for the map server} {}
    ; Experimental new information sent in SimulatorFeatures cap for Kokua
    ; viewers
    ; meant to override the MapImage and search server url given at login, and varying
    ; on a sim-basis.
    ; Viewers that don't understand it, will ignore it
    ;MapImageServerURI = "http://127.0.0.1:9000/"
    ;# {SearchServerURI} {} {URL of the search server} {}
    ;SearchServerURI = "http://127.0.0.1:9000/"
    ;# {MapTileURL} {} {URL of maptile server} {}
    MapTileURL = "http://maptiles.osgrid.org:80"

[Chat]
    ;# {whisper_distance} {} {Distance at which a whisper is heard, in meters?} {} 10
    ;; Distance in meters that whispers should travel.
    ; whisper_distance = 10

    ;# {say_distance} {} {Distance at which normal chat is heard, in meters?} {} 20
    ;; Distance in meters that ordinary chat should travel.
    ; say_distance = 20

    ;# {shout_distance} {Distance at which a shout is heard, in meters?} {} 100
    ;; Distance in meters that shouts should travel.
    ; shout_distance = 100

[Messaging]
    ;# {OfflineMessageModule} {} {Module to use for offline message storage} {OfflineMessageModule *}
    ;; Module to handle offline messaging. The core module requires an external
    ;; web service to do this. See OpenSim wiki.
    OfflineMessageModule = OfflineMessageModule

    ;# {OfflineMessageURL} {OfflineMessageModule:OfflineMessageModule} {URL of offline messaging service} {}
    ;; URL of web service for offline message storage
    OfflineMessageURL = http://im.osgrid.org/offline

    ;# {MuteListModule} {OfflineMessageModule:OfflineMessageModule} {} {} MuteListModule
    ;; Mute list handler (not yet implemented). MUST BE SET to allow offline
    ;; messages to work
    MuteListModule = MuteListModule

    ;# {MuteListURL} {OfflineMessageModule:OfflineMessageModule} {} {} http://yourserver/Mute.php
    ;; URL of the web service that serves mute lists. Not currently used, but
    ;; must be set to allow offline messaging to work.
    MuteListURL = http://im.osgrid.org/mute

    ;; Control whether group messages are forwarded to offline users.
    ;; Default is true.
    ;; This applies to the core groups module (Flotsam) only.
    ForwardOfflineGroupMessages = false

[Mesh]
    ; enable / disable Collada mesh support
    ; default is true
    AllowMeshUpload = true

    ; if you use Meshmerizer and want collisions for meshies, setting this to true
    ; will cause OpenSim to attempt to decode meshies assets, extract the physics
    ; mesh, and use it for collisions. This is currently experimental code and enabling
    ; it may cause unexpected physics problems.
    UseMeshiesPhysicsMesh = true      
   
[ODEPhysicsSettings]
    ;# {mesh_sculpted_prim} {[Startup]physics:OpenDynamicsEngine} {Mesh sculpties so they collide as they look?} {true false} true
    ;; Do we want to mesh sculpted prim to collide like they look?
    ;; If you are seeing sculpt texture decode problems
    ;; (messages such as "Decoded image with unhandled number of components: 0 shortly followed by a physcs exception")
    ;; then you might want to try setting this to false.
    ; mesh_sculpted_prim = true

    ;# {use_NINJA_physics_joints} {[Startup]physics:OpenDynamicsEngine} {Use jointed (NINJA) physics?} {true false} false
    ;; If you would like physics joints to be enabled through a special naming
    ;; convention in the client, set this to true.
    ;; (see NINJA Physics, http://opensimulator.org/wiki/NINJA_Physics)
    ; use_NINJA_physics_joints = false
   
   av_density = 3   

[RemoteAdmin]
    ;; This is the remote admin module, which uses XMLRPC requests to
    ;; manage regions from a web interface.

    ;# {enabled} {} {Enable the remote admin interface?} {true false} false
    ; enabled = false

    ;# {port} {enabled:true} {Port to use for the remote admin interface? (0 = default)} {} 0
    ;; Set this to a nonzero value to have remote admin use a different port
    ; port = 0

    ;# {access_password} {enabled:true} {Password for the remote admin interface} {}
    ;; This password is required to make any XMLRPC call (should be set as
    ;; the "password" parameter)
    ; access_password = ""

    ;# List the IP addresses allowed to call RemoteAdmin
    ;; If access_ip_addresses isn't set, then all IP addresses can access RemoteAdmin.
    ;; access_ip_addresses = 0.0.0.0, 0.0.0.0 ...
    ; access_ip_addresses =

    ;# {create_region_enable_voice} {enabled:true} {Enable voice for newly created regions?} {true false} false
    ;; set this variable to true if you want the create_region XmlRpc
    ;; call to unconditionally enable voice on all parcels for a newly
    ;; created region
    ; create_region_enable_voice = false

    ;# {create_region_public} {enabled:true} {Make newly created regions public?} {true false} false
    ;; set this variable to false if you want the create_region XmlRpc
    ;; call to create all regions as private per default (can be
    ;; overridden in the XmlRpc call)
    ; create_region_public = false

    ;# {enabled_methods} {enabled:true} {List of methods to allow, separated by |} {} all
    ;; enable only those methods you deem to be appropriate using a | delimited
    ;; whitelist.
    ;; For example:
    ;; enabled_methods = admin_broadcast|admin_save_oar|admin_save_xml
    ;; if this parameter is not specified but enabled = true, all methods
    ;; will be available
    ; enabled_methods = all

    ;; specify the default appearance for an avatar created through the remote
    ;; admin interface
    ;; This will only take effect is the file specified by the
    ;; default_appearance setting below exists
    ; default_male = Default Male
    ; default_female = Default Female

    ;; Update appearance copies inventory items and wearables of default
    ;; avatars. if this value is false, just worn assets are copied to the
    ;; Clothes folder; if true, all Clothes and Bodyparts subfolders are copied.
    ;; The receiver will wear the same items the default avatar did wear.
    ; copy_folders = false

    ;; Path to default appearance XML file that specifies the look of the
    ;; default avatars
    ; default_appearance = default_appearance.xml

[Wind]
    ;# {enabled} {} {Enable wind module?} {true false} true
    ;; Enables the wind module.
    ; enabled = true

    ;# {wind_update_rate} {enabled:true} {Wind update rate in frames?} {} 150
    ;; How often should wind be updated, as a function of world frames.
    ;; Approximately 50 frames a second
    ; wind_update_rate = 150

    ;; The Default Wind Plugin to load
    ; wind_plugin = SimpleRandomWind

    ;; These settings are specific to the ConfigurableWind plugin
    ;; To use ConfigurableWind as the default, simply change wind_plugin
    ;; to ConfigurableWind and uncomment the following.
    ; avg_strength = 5.0
    ; avg_direction = 0.0
    ; var_strength = 5.0
    ; var_direction = 30.0
    ; rate_change = 1.0

    ;# {strength} {enabled:true wind_plugin:SimpleRandomWind} {Wind strength?} {} 1.0
    ;; This setting is specific to the SimpleRandomWind plugin
    ;; Adjusts wind strength. 0.0 = no wind, 1.0 = normal wind.
    ; strength = 1.0

[LightShare]
    ;# {enable_windlight} {} {Enable LightShare technology?} {true false} false
    ;; This enables the transmission of Windlight scenes to supporting clients,
    ;; such as the Meta7 viewer.
    ;; It has no ill effect on viewers which do not support server-side
    ;; windlight settings.
    enable_windlight = true

[Materials]
    ;# {enable_materials} {} {Enable Materials support?} {true false} true
    ;; This enables the use of Materials.
    enable_materials = true

[DataSnapshot]
    ;# {index_sims} {} {Enable data snapshotting (search)?} {true false} false
    ;; The following set of configs pertains to search.
    ;; Set index_sims to true to enable search engines to index your
    ;; searchable data.
    ;; If false, no data will be exposed, DataSnapshot module will be off,
    ;; and you can ignore the rest of these search-related configs.
    index_sims = true

    ;# {data_exposure} {index_sims:true} {How much data should be exposed?} {minimum all} minimum
    ;; The variable data_exposure controls what the regions expose:
    ;;    minimum: exposes only things explicitly marked for search
    ;;    all: exposes everything
    data_exposure = minimum

    ;# {gridname} {index_sims:true} {Enter the name fo your grid} {} OSGrid
    ;; If search is on, change this to your grid name; will be ignored for
    ;; standalones
    gridname = "OSGrid"

    ;# {default_snapshot_period} {index_sims:true} {Period between data snapshots?} {} 1200
    ;; Period between data snapshots, in seconds. 20 minutes, for starters,
    ;; so that you see the initial changes fast.
    ;; Later, you may want to increase this to 3600 (1 hour) or more
    default_snapshot_period = 1200

    ;; This will be created in bin, if it doesn't exist already. It will hold
    ;; the data snapshots.
    snapshot_cache_directory = "DataSnapshot"

    ;# {data_services} {index_sims:true} {Data service URLs to register with?} {} http://metaverseink.com/cgi-bin/register.py
    ; This semicolon-separated string serves to notify specific data services
    ; about the existence of this sim. Uncomment if you want to index your
    ; data with this and/or other search providers.
    ; data_services="http://metaverseink.com/cgi-bin/register.py"
    data_services="http://search.osgrid.org/register.php"
   
[Search]
    SearchURL = http://search.osgrid.org/query.php

[Economy]
    ;# {SellEnabled} {} {Enable selling for 0?} {true false} true
    ; The default economy module only implements just enough to allow free actions (transfer of objects, etc).
    ; There is no intention to implement anything further in core OpenSimulator.
    ; This functionality has to be provided by third party modules.

    ;; Enables selling things for $0.  Default is true.
    SellEnabled = true

    ;# {PriceUpload} {} {Price for uploading?} {} 0
    ;; Money Unit fee to upload textures, animations etc.  Default is 0.
    ; PriceUpload = 0

    ;# {PriceGroupCreate} {} {Fee for group creation} {} 0
    ;; Money Unit fee to create groups.  Default is 0.
    ; PriceGroupCreate = 0

[XEngine]
    ;# {Enabled} {} {Enable the XEngine scripting engine?} {true false} true
    ;; Enable this engine in this OpenSim instance
    ; Enabled = true

    ;; How many threads to keep alive even if nothing is happening
    ; MinThreads = 2

    ;; How many threads to start at maximum load
    ; MaxThreads = 100

    ;; Time a thread must be idle (in seconds) before it dies
    ; IdleTimeout = 60

    ;# {Priority} {Enabled:true} {Priority for script engine threads?} {Lowest BelowNormal Normal AboveNormal Highest} BelowNormal
    ;; Thread priority ("Lowest", "BelowNormal", "Normal", "AboveNormal",
    ;; "Highest")
     Priority = "Normal"

    ;; Maximum number of events to queue for a script (excluding timers)
    ; MaxScriptEventQueue = 300

    ;; Stack size per script engine thread in bytes.
    ;; If you are experiencing StackOverflowExceptions you may want to increase this (e.g. double it).
    ;; The trade-off may be increased memory usage by the script engine.
    ; ThreadStackSize = 262144

    ;; Controls whether scripts are stopped by aborting their threads externally (abort) or by co-operative checks from the compiled script (co-op)
    ;; co-op is now the default.
    ; ScriptStopStrategy = co-op

    ;# {DeleteScriptsOnStartup} {} {Delete previously compiled script DLLs on startup?} (true false) true
    ;; Controls whether previously compiled scripts DLLs are deleted on sim restart. If you set this to false
    ;; then startup will be considerably faster since scripts won't need to be recompiled. However, then it becomes your responsibility to delete the
    ;; compiled scripts if you're recompiling OpenSim from source code and internal interfaces used
    ;; by scripts have changed.
    DeleteScriptsOnStartup = true

    ;; Set this to true (the default) to load each script into a separate
    ;; AppDomain.
    ;;
    ;; Setting this to false will load all script assemblies into the
    ;; current AppDomain, which will significantly improve script loading times.
    ;; It will also reduce initial per-script memory overhead.
    ;;
    ;; However, setting this to false will also prevent script DLLs from being unloaded from memory if the script is deleted.
    ;; This may cause an OutOfMemory problem over time when avatars with scripted attachments move in and out of the region.
    ;; Some Windows users have also reported script loading problems when AppDomainLoading = false
    AppDomainLoading = false

    ;# {DefaultCompileLanguage} {Enabled:true} {Default script language?} {lsl vb cs} lsl
    ;; Default language for scripts
    ; DefaultCompileLanguage = "lsl"

    ;# {AllowedCompilers} {Enabled:true} {Languages to allow (comma separated)?} {} lsl
    ;; List of allowed languages (lsl,vb,cs)
    ;; AllowedCompilers=lsl,cs,js,vb.
    ;; *warning*, non lsl languages have access to static methods such as
    ;; System.IO.File.  Enable at your own risk.
    ; AllowedCompilers = "lsl"

    ;; Compile debug info (line numbers) into the script assemblies
    ; CompileWithDebugInformation = true

    ;; Allow the user of mod* functions.  This allows a script to pass messages
    ;; to a region module via the modSendCommand() function
    ;; Default is false
    ; AllowMODFunctions = false

    ;# {AllowOSFunctions} {Enabled:true} {Allow OSFunctions? (DANGEROUS!)} {true false} false
    ;; Allow the use of os* functions (some are dangerous)
    AllowOSFunctions = true

    ;# {AllowLightShareFunctions} {Enabled:true [LightShare]enable_windlight:true} {Allow LightShare functions?} {true false} true
    ; Allow the user of LightShare functions
    AllowLightShareFunctions = true

    ;# {OSFunctionThreatLevel} {Enabled:true AllowOSFunctions:true} {OSFunction threat level? (DANGEROUS!)} {None VeryLow Low Moderate High VeryHigh Severe} VeryLow
    ;; Threat level to allow, one of None, VeryLow, Low, Moderate, High, VeryHigh, Severe
    ;; See http://opensimulator.org/wiki/Threat_level for more information on these levels.
    ;; We do not recommend that use set a general level above Low unless you have a high level of trust
    ;; in all the users that can run scripts in your simulator.  It is safer to explicitly
    ;; allow certain types of user to run higher threat level OSSL functions, as detailed later on.
    OSFunctionThreatLevel = VeryLow

    ; OS Functions enable/disable
    ; For each function, you can add one line, as shown
    ; The default for all functions allows them if below threat level

    ; true allows the use of the function unconditionally
    ; Allow_osSetRegionWaterHeight = true
   
    ; false disables the function completely
    ; Allow_osSetRegionWaterHeight = false
   
    ; Comma separated list of UUIDS allows the function for that list of UUIDS
    ; Allow_osSetRegionWaterHeight = 888760cb-a3cf-43ac-8ea4-8732fd3ee2bb
   
    ; Comma separated list of owner classes that allow the function for a particular class of owners. Choices are
    ; - PARCEL_GROUP_MEMBER:  allow if the object group is the same group as the parcel
    ; - PARCEL_OWNER:         allow if the object owner is the parcel owner
    ; - ESTATE_MANAGER:       allow if the object owner is an estate manager
    ; - ESTATE_OWNER:         allow if the object owner is the estate owner
    ; Allow_osSetRegionWaterHeight = 888760cb-a3cf-43ac-8ea4-8732fd3ee2bb, PARCEL_OWNER, ESTATE_OWNER>, ...

   Allow_osGetSimulatorVersion = PARCEL_OWNER   
   
    ; You can also use script creators as the uuid
    ; Creators_osSetRegionWaterHeight = <uuid>, ...

    ; If both Allow_ and Creators_ are given, effective permissions
    ; are the union of the two.

    ;# {EventLimit} {} {Amount of time a script can spend in an event handler} {} 30
    ;; Time a script can spend in an event handler before it is interrupted
    ; EventLimit = 30

    ;# {KillTimedOutScripts} {} {Kill script in case of event time overruns?} {true false} false
    ;; If a script overruns it's event limit, kill the script?
    ; KillTimedOutScripts = false

    ;# {ScriptDelayFactor} {} {Multiplier for scripting delays} {} 1.0
    ;; Sets the multiplier for the scripting delays
    ; ScriptDelayFactor = 1.0

    ;# {ScriptDistanceLimitFactor} {} {Multiplier for 10.0m distance limits?} {}
    ;; The factor the 10 m distances limits are multiplied by
    ; ScriptDistanceLimitFactor = 1.0

    ;# {NotecardLineReadCharsMax} {} {Maximum length of notecard line?} {} 255
    ;; Maximum length of notecard line read
    ;; Increasing this to large values potentially opens
    ;; up the system to malicious scripters
    ; NotecardLineReadCharsMax = 255

    ;# {SensorMaxRange} {} {Sensor range} {} 96.0
    ;; Sensor settings
    ; SensorMaxRange = 96.0
    ;# {SensorMaxResults} {} {Max sensor results returned?} {}
    ; SensorMaxResults = 16

    ;# {DisableUndergroundMovement} {} {Disable underground movement of prims} {true false} true
    ;; Disable underground movement of prims (default true); set to
    ;; false to allow script controlled underground positioning of
    ;; prims
    ; DisableUndergroundMovement = true

    ;# {ScriptEnginesPath} {} {Path to script assemblies} {} ScriptEngines
    ;; Path to script engine assemblies
    ;; Default is ./bin/ScriptEngines
    ; ScriptEnginesPath = "ScriptEngines"

[MRM]
    ;; Enables the Mini Region Modules Script Engine.
    ; Enabled = false

    ;; Runs MRM in a Security Sandbox
    ;; WARNING: DISABLING IS A SECURITY RISK.
    ; Sandboxed = true

    ;; The level sandbox to use, adjust at your OWN RISK.
    ;; Valid values are:
    ;; *  FullTrust
    ;; *  SkipVerification
    ;; *  Execution
    ;; *  Nothing
    ;; *  LocalIntranet
    ;; *  Internet
    ;; *  Everything
    ; SandboxLevel = "Internet"

    ;; Only allow Region Owners to run MRMs
    ;; May represent a security risk if you disable this.
    ; OwnerOnly = true

[RegionReady]
    ; Enable this module to get notified once all items and scripts in the region have been completely loaded and compiled
    ; default is false
    enabled = true

    ; Channel on which to signal region readiness through a message
    ; formatted as follows: "{server_startup|oar_file_load},{0|1},n,[oar error]"
    ; - the first field indicating whether this is an initial server startup
    ; - the second field is a number indicating whether the OAR file loaded ok (1 == ok, 0 == error)
    ; - the third field is a number indicating how many scripts failed to compile
    ; - "oar error" if supplied, provides the error message from the OAR load
    channel_notify = -800
    ; - disallow logins while scripts are loading
    login_disable = true
    ; - send an alert as json to a service
    ; alert_uri = "http://myappserver.net/my_handler/"      

[FreeSwitchVoice]
    ;; In order for this to work you need a functioning FreeSWITCH PBX set up.
    ;; Configuration details at http://opensimulator.org/wiki/Freeswitch_Module
    ; Enabled = false

    ;; You need to load a local service for a standalone, and a remote service
    ;; for a grid region. Use one of the lines below, as appropriate
    ;; If you're using Freeswitch on a standalone then you will also need to configure the [FreeswitchService] section in config-include/StandaloneCommon.ini
    ; LocalServiceModule = OpenSim.Services.FreeswitchService.dll:FreeswitchService
    ; LocalServiceModule = OpenSim.Services.Connectors.dll:RemoteFreeswitchConnector

    ;; If using a remote connector, specify the server URL
    ; FreeswitchServiceURL = http://my.grid.server:8004/fsapi

[VivoxVoice]
    ; The VivoxVoice module will allow you to provide voice on your
    ; region(s). It uses the same voice technology as the LL grid and
    ; works with recent LL clients (we have tested 1.22.9.110075, so
    ; anything later ought to be fine as well).
    ;
    ; For this to work you need to obtain an admin account from Vivox
    ; that allows you to create voice accounts and region channels.

    enabled = false

    ; vivox voice server
    vivox_server = www.foobar.vivox.com

    ; vivox SIP URI
    vivox_sip_uri = foobar.vivox.com

    ; vivox admin user name
    vivox_admin_user = DeepThroat

    ; vivox admin password
    vivox_admin_password = VoiceG4te

    ; channel type: "channel" or "positional"
    ; - positional: spatial sound (default)
    ; - channel: normal "conference call", no spatial sound
    ;vivox_channel_type = positional

    ; channel characteristics (unless you know what you are doing, i'd
    ; leave them as they are --- now you WILL muck around with them,
    ; huh? sigh)

    ; channel distance model:
    ; 0 - no attenuation
    ; 1 - inverse distance attenuation
    ; 2 - linear attenuation (default)
    ; 3 - exponential attenuation
    ;vivox_channel_distance_model = 2

    ; channel mode:
    ; - "open" (default)
    ; - "lecture"
    ; - "presentation"
    ; - "auditorium"
    ;vivox_channel_mode = "open"

    ; channel roll off: rate of attenuation
    ; - a value between 1.0 and 4.0, default is 2.0
    ;vivox_channel_roll_off = 2.0

    ; channel max range: distance at which channel is silent
    ; - a value between 0 and 160, default is 80
    ;vivox_channel_max_range = 80

    ; channel clamping distance: distance before attenuation applies
    ; - a value between 0 and 160, default is 10
    ;vivox_channel_clamping_distance = 10
   
[Groups]
    ;# {Enabled} {} {Enable groups?} {true false} false
    ;; Enables the groups module
    Enabled = true

    ;# {Module} {Enabled:true} {Groups module to use? (Use GroupsModule to use Flotsam/Simian)} {} Default
    ;; This is the current groups stub in Region.CoreModules.Avatar.Groups.
    ;; All the other settings below only really apply to the Flotsam/SimianGrid
    ;; GroupsModule.
    ;; This module can use a PHP XmlRpc server from the Flotsam project at
    ;; http://code.google.com/p/flotsam/
    ;; or from the SimianGrid project at http://code.google.com/p/openmetaverse
    Module = GroupsModule

    ;; Service connectors to the Groups Service.  Select one depending on
    ;; whether you're using a Flotsam XmlRpc backend or a SimianGrid backend
 
    ;# {ServicesConnectorModule} {Module:GroupsModule} {Service connector to use for groups?} {XmlRpcGroupsServicesConnector SimianGroupsServicesConnector} XmlRpcGroupsServicesConnector
    ;; The service connector to use for the GroupsModule
    ServicesConnectorModule = XmlRpcGroupsServicesConnector

    ;# {GroupsServerURI} {Module:GroupsModule} {Groups Server URI?} {}
    ;; URI for the groups services
    GroupsServerURI = "http://groups.osgrid.org/xmlrpc.php"

    ;# {NoticesEnabled} {Module:GroupsModule} {Enable group notices?} {true false} true
    ;; Enable Group Notices
    NoticesEnabled = true

    ;; This makes the Groups modules very chatty on the console.
    ; DebugEnabled = false

    ;; Specify which messaging module to use for groups messaging and if it's
    ;; enabled
    MessagingModule = GroupsMessagingModule
    MessagingEnabled = true
    MessageOnlineUsersOnly = true   

    ;; XmlRpc Security settings.  These must match those set on your backend
    ;; groups service.
    ; XmlRpcServiceReadKey    = 1234
    ; XmlRpcServiceWriteKey   = 1234
   
[PacketPool]
    ; Enables the experimental packet pool. Yes, we've been here before.
    RecyclePackets = true;
    RecycleDataBlocks = true;      

[InterestManagement]
     ;# {UpdatePrioritizationScheme} {} {Update prioritization scheme?} {BestAvatarResponsiveness Time Distance SimpleAngularDistance FrontBack} BestAvatarResponsiveness
     ;; This section controls how state updates are prioritized for each client
     ;; Valid values are BestAvatarResponsiveness, Time, Distance,
     ;; SimpleAngularDistance, FrontBack
     UpdatePrioritizationScheme = FrontBack

[MediaOnAPrim]
    ;# {Enabled} {} {Enable Media-on-a-Prim (MOAP)} {true false} true
    ;; Enable media on a prim facilities
    Enabled = true;

[NPC]
    ;# {Enabled} {} {Enable Non Player Character (NPC) facilities} {true false} false
     Enabled = true

[PrimLimitsModule]
    ;# {EnforcePrimLimits} {} {Enforce parcel prim limits} {true false} false
    ;; Enable parcel prim limits.  Off by default to emulate pre-existing behavior.
    EnforcePrimLimits = true      
   
[Terrain]
    ;# {InitialTerrain} {} {Initial terrain type} {pinhead-island flat} pinhead-island
    ; InitialTerrain = "pinhead-island"
    SendTerrainUpdatesByViewDistance = true

[XBakes]
    ;# {URL} {} {Set URL for Baked texture service} {}
    ;; Sets the URL for the baked texture ROBUST service.
    ;; Disabled when unset.
    URL = http://xbakes.osgrid.org

[Architecture]
    ;# {Include-Architecture} {} {Choose one of the following architectures} {config-include/Standalone.ini config-include/StandaloneHypergrid.ini config-include/Grid.ini config-include/GridHypergrid.ini config-include/SimianGrid.ini config-include/HyperSimianGrid.ini} config-include/Standalone.ini
    ;; Uncomment one of the following includes as required.  For instance, to create a standalone OpenSim,
    ;; uncomment Include-Architecture = "config-include/Standalone.ini"
    ;;
    ;; Then you will need to copy and edit the corresponding *Common.example file in config-include/
    ;; that the referenced .ini file goes on to include.
    ;;
    ;; For instance, if you chose "config-include/Standalone.ini" then you will need to copy
    ;; "config-include/StandaloneCommon.ini.example" to "config-include/StandaloneCommon.ini" before
    ;; editing it to set the database and backend services that OpenSim will use.
    ;;
    ; Include-Architecture = "config-include/Standalone.ini"
    ; Include-Architecture = "config-include/StandaloneHypergrid.ini"
    ; Include-Architecture = "config-include/Grid.ini"
    Include-Architecture = "config-include/GridHypergrid.ini"
    ; Include-Architecture = "config-include/SimianGrid.ini"
    ; Include-Architecture = "config-include/HyperSimianGrid.ini"

[Modules]
    ;;LandServices module is required for ossearch to function properly in grid mode.   
    LandServices = "RemoteLandServicesConnector"
    LandServiceConnector = "True"   

[ServiceThrottle]
    Interval = 4000

[Attachments]
    ThrottlePer100PrimsRezzed = 500;

[BulletSim]
    UseSeparatePhysicsThread = true
    TerrainImplementation=0
   BulletEngine = "bulletxna"


4b. Regions.ini file

Code:
[Furry Isles]
RegionUUID = SECRET
Location = 9967,9995
SizeX = 256
SizeY = 256
SizeZ = 256
InternalAddress = 0.0.0.0
InternalPort = 9111
AllowAlternatePorts = False
ExternalHostName = pi.s-config.com
MaptileStaticUUID = 00000000-0000-0000-0000-000000000000
access = 42


4c. GridCommon.ini

Code:
[DatabaseService]
    ;
    ; ### Choose the DB
    ;

    ; SQLite
    ;Include-Storage = "config-include/storage/SQLiteStandalone.ini";

    ; Unfortunately the current SQLite database plugin is not compatible with Mac OSX.  You can still use the older
    ; legacy sqlite library if you are using Mono 2.4.  Please see the notes in OpenSim.ini (search for sqlite)
    ; for more details
    ;Include-Storage = "config-include/storage/SQLiteLegacyStandalone.ini";

    ; MySql 
    ; Uncomment these lines if you want to use mysql storage
    ; Change the connection string to your db details
    StorageProvider = "OpenSim.Data.MySQL.dll"
    ConnectionString = "Data Source=localhost;Database=osgrid;User ID=blankusername;Password=blankpassword;Old Guids=true;"
    ; Uncomment this line if you are using MySQL and want to use a different database for estates
    ;EstateConnectionString = "Data Source=localhost;Database=opensim;User ID=opensim;Password=***;"

[Hypergrid]
    ; Uncomment the variables in this section only if you are in
    ; Hypergrid configuration. Otherwise, ignore.

    ;# {HomeURI} {Hypergrid} {The Home URL of this world} {}
    ;; If this is a standalone world, this is the address of this instance.
    ;; If this is a grided simulator, this is the address of the external robust server that
    ;; runs the UserAgentsService.
    ;; For example http://myworld.com:9000 or http://myworld.com:8002
    ;; This is a default that can be overwritten in some sections.
    HomeURI = "http://hg.osgrid.org:80/user"

    ;# {GatekeeperURI} {Hypergrid} {The URL of the gatekeeper of this world} {}
    ;; If this is a standalone world, this is the address of this instance.
    ;; If this is a grided simulator, this is the address of the external robust server
    ;; that runs the Gatekeeper service.
    ;; For example http://myworld.com:9000 or http://myworld.com:8002
    ;; This is a default that can be overwritten in some sections.
    GatekeeperURI = "http://hg.osgrid.org:80"
   
[Modules]
    ;; Choose 0 or 1 cache modules, and the corresponding config file, if it exists.
    ;; Copy the config .example file into your own .ini file and change configs there
       
    AssetCaching = "FlotsamAssetCache"
    Include-FlotsamCache = "config-include/FlotsamCache.ini"

    ;AssetCaching = "CenomeMemoryAssetCache"
    ;Include-CenomeCache = "config-include/CenomeCache.ini"
   
    ;AssetCaching = "GlynnTuckerAssetCache"

    ;; Optionally, the port for the LLProxyLoginModule module can be changed
   
    ;Setup_LLProxyLoginModule = "9090/"

    ;; Authorization is not on by default, as it depends on external php
    ;AuthorizationServices   = "RemoteAuthorizationServicesConnector"

    ;;OpenSimSearch module
    SearchModule = "OpenSimSearch"

[AssetService]

    DefaultAssetLoader = "OpenSim.Framework.AssetLoader.Filesystem.dll"
    AssetLoaderArgs = "assets/AssetSets.xml"

    ;
    ; change this to your grid-wide asset server
    ;
    AssetServerURI = "http://assets.osgrid.org"

[InventoryService]
    ;
    ; change this to your grid-wide inventory server
    ;
    InventoryServerURI = "http://inventory.osgrid.org"

[GridInfo]
   ;
   ; Change this to your grid info service
   ;
   GridInfoURI = "http://hg.osgrid.org:80"

[GridService]
    ;
    ; change this to your grid-wide grid server
    ;
    GridServerURI = "http://grid.osgrid.org"
    AllowHypergridMapSearch = true

    ;; Directory for map tile images of linked regions
    MapTileDirectory = "./maptiles"

    ; === HG ONLY ===
   ;; change this to the address of your Gatekeeper service
   ;; (usually bundled with the rest of the services in one
   ;; Robust server in port 8002, but not always)
   Gatekeeper="http://hg.osgrid.org:80"
   
[Messaging]
    ; === HG ONLY ===
    ;; change this to the address of your Gatekeeper service
    ;; (usually bundled with the rest of the services in one
    ;; Robust server in port 8002, but not always)
    Gatekeeper = "http://hg.osgrid.org:80"

[AvatarService]
    ;
    ; change this to your grid-wide grid server
    ;
    AvatarServerURI = "http://avatar.osgrid.org"

[PresenceService]
    ;
    ; change this to your grid-wide presence server
    ;
    PresenceServerURI = "http://presence.osgrid.org"

[UserAccountService]
    ;
    ; change this to your grid-wide user accounts server
    ;
    UserAccountServerURI = "http://users.osgrid.org"

[GridUserService]
    ;
    ; change this to your grid-wide user accounts server
    ;
    GridUserServerURI = "http://users.osgrid.org"

[AuthenticationService]
    ;
    ; change this to your grid-wide authentication server
    ;
    AuthenticationServerURI = "http://login.osgrid.org"

[FriendsService]
    ;
    ; change this to your grid-wide friends server
    ;
    FriendsServerURI = "http://friends.osgrid.org"

[HGInventoryAccessModule]
    ;
    ; === HG ONLY ===
    ; Change this to your server
    ; accessible from other grids
    ;
    HomeURI = "http://hg.osgrid.org:80/user"
    Gatekeeper = "http://hg.osgrid.org:80"
   ;; If you want to protect your assets from being copied by foreign visitors
   ;; uncomment the next line. You may want to do this on sims that have licensed content.
   ; OutboundPermission = False

[UserAgentService]
    ;
    ; === HG ONLY ===
    ; Change this to your user agent server (HG robust)
    ;
    UserAgentServerURI = "http://hg.osgrid.org:80"

[MapImageService]
      MapImageServerURI = "http://maptiles.osgrid.org:80"
   
[Profile]
    ; set the module for profiles
    Module = "OpenSimProfile"
    ; Change it to your own HTTP server to have the Profile server work
    ProfileURL = http://profiles.osgrid.org/profile.php
   


Last edited by Riot Ornitz on Tue Apr 07, 2015 10:24 pm, edited 1 time in total.

Top
 Profile  
 
 Post subject: Re: OSGrid on Pi - Teleporting out of region and BulletPhysics.
PostPosted: Tue Apr 07, 2015 10:07 pm 
User avatar

Joined: Tue Apr 07, 2015 9:09 pm
Posts: 18
Location: Milwaukee, WI
I would like to apologize in advance for the extreme spam those logs have generated and would be happy to add cut commands if they exist on this forum.

Thanks for all of your hard work on OSGrid and I am looking forward to future versions as I slowly transport all of my creations out of SecondLife and onto OSGrid. Can never have too many backups.:)


Top
 Profile  
 
 Post subject: Re: OSGrid on Pi - Teleporting out of region and BulletPhysics.
PostPosted: Wed Apr 08, 2015 6:51 am 
Site Admin

Joined: Sun Jul 04, 2010 8:20 pm
Posts: 448
Try using BulletXNA as your physic engine, its a little slower than regular BulletSim physics but should work on the Pi

http://opensimulator.org/wiki/BulletSim
dan


Top
 Profile  
 
 Post subject: Re: OSGrid on Pi - Teleporting out of region and BulletPhysics.
PostPosted: Wed Apr 08, 2015 10:15 am 
User avatar

Joined: Tue Apr 07, 2015 9:09 pm
Posts: 18
Location: Milwaukee, WI
dan banner wrote:
Try using BulletXNA as your physic engine, its a little slower than regular BulletSim physics but should work on the Pi

http://opensimulator.org/wiki/BulletSim
dan


I had bulletXNA on for a while in my region. However my avatar was falling through a lot of my mesh objects even when I defined a collision object by filename. I ultimately had to switch back to ODE.

Thanks for the reply!


Top
 Profile  
 
 Post subject: Re: OSGrid on Pi - Teleporting out of region and BulletPhysics.
PostPosted: Fri Apr 10, 2015 10:00 am 
Furious Typer

Joined: Tue Aug 13, 2013 8:18 pm
Posts: 68
the only thing i could suggest is my sort of fail/safe approach to narrowing down the problem. which is, create a brand new DB, install a clean fresh copy of OSgrid and fire it up. if a brand new, empty install works, then you know all your software, connections and components are good. that should be the easiest thing to get working.

then you know the issue is in the original settings, db or rezzed objects in world.

that's assuming you're not actually trying to fix the issue in the code but just want to get it working by getting around it. if you're looking to find and fix it in the code, i have no idea. that's about all i have.


Top
 Profile  
 
 Post subject: Re: OSGrid on Pi - Teleporting out of region and BulletPhysics.
PostPosted: Wed Apr 15, 2015 1:16 am 
User avatar

Joined: Tue Apr 07, 2015 9:09 pm
Posts: 18
Location: Milwaukee, WI
Mister BouncyBounce wrote:
the only thing i could suggest is my sort of fail/safe approach to narrowing down the problem. which is, create a brand new DB, install a clean fresh copy of OSgrid and fire it up. if a brand new, empty install works, then you know all your software, connections and components are good. that should be the easiest thing to get working.

then you know the issue is in the original settings, db or rezzed objects in world.

that's assuming you're not actually trying to fix the issue in the code but just want to get it working by getting around it. if you're looking to find and fix it in the code, i have no idea. that's about all i have.


Okay. I can do that, I downloaded the latest Osgrid binary OSgrid OpenSimulator 0.8.2.dev.d96d31b - [zip] [31.8mb] 04-12-2015 - and the only thing i modded on OpenSim.ini is to use BulletXNA because I do not want any libraries for my Pi pre-compiled effecting it. I even turned on BasicPhysics which also requires nothing external to run and the same issues.

sim: furry-zero
coordinates: 9966, 9993

i'll keep it up for a few days before turning it off.

Basically getting the same error when I teleport out of this sim.
Code:
06:07:55 - [ENTITY TRANSFER MODULE]: Exception on teleport of Riot Ornitz from <122.8736, 119.9947, 26.83092>@furry-zero to <128, 128, 1.5>@sandbox: SIGILL  at OpenSim.Region.CoreModules.Framework.EntityTransfer.EntityTransferModule.DoTeleportInternal (OpenSim.Region.Framework.Scenes.ScenePresence sp, OpenSim.Services.Interfaces.GridRegion reg, OpenSim.Services.Interfaces.GridRegion finalDestination, Vector3 position, Vector3 lookAt, UInt32 teleportFlags) [0x00000] in <filename unknown>:0
  at OpenSim.Region.CoreModules.Framework.EntityTransfer.EntityTransferModule.TeleportAgentToDifferentRegion (OpenSim.Region.Framework.Scenes.ScenePresence sp, UInt64 regionHandle, Vector3 position, Vector3 lookAt, UInt32 teleportFlags, OpenSim.Services.Interfaces.GridRegion& finalDestination) [0x00000] in <filename unknown>:0
  at OpenSim.Region.CoreModules.Framework.EntityTransfer.EntityTransferModule.Teleport (OpenSim.Region.Framework.Scenes.ScenePresence sp, UInt64 regionHandle, Vector3 position, Vector3 lookAt, UInt32 teleportFlags) [0x00000] in <filename unknown>:0


So even with using SQLlite running off of mono, and physics on Mono, and all configuration defaulting the region to port 9000 it still keeps clients from leaving any sim running on a Pi.

If anyone has any more troubleshooting suggestions I'll be happy to try them out. I'd very much want to get my Pi %100 for opensim.. as it's cool to run a sim on 1-3 watts of power.


Top
 Profile  
 
 Post subject: Re: OSGrid on Pi - Teleporting out of region and BulletPhysics.
PostPosted: Wed Apr 15, 2015 2:55 am 

Joined: Sat Feb 18, 2012 4:34 pm
Posts: 6
Location: Argentina
I don't know is same problem, but, I had some troubles with mono 3.x.

I have 4 simulators with some regions each one. Some regions load correctly, but, randomly, crash without notice. One región crashed at start. Watching logs, sometimes none in them, sometimes HTTP connect errors, sometime bulletsim mesh error.

Sims and regions had no changes, no new prims, no new objects, so, no way to find cause for this issue.

To make short, I tried all, new DB, load from oar backups, reinstall all, but none. Until AllenKerensky (nic on osgrid IRC channel), tell me may be was a mono 3.x issue. So, I downgraded mono 3.2.x to 2.10.x and now all works fine for me.

SaludOS/2


Top
 Profile  
 
 Post subject: Re: OSGrid on Pi - Teleporting out of region and BulletPhysics.
PostPosted: Thu Apr 23, 2015 12:57 am 
User avatar

Joined: Tue Apr 07, 2015 9:09 pm
Posts: 18
Location: Milwaukee, WI
I tried to step back the mono version as suggjested. mono --version now gives.

Code:
Mono JIT compiler version 2.11.4 (tarball Thu Mar 14 14:32:54 CDT 2013)
Copyright (C) 2002-2012 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
        TLS:           __thread
        SIGSEGV:       normal
        Notifications: epoll
        Architecture:  armel,vfp(hardfp-abi)
        Disabled:      none
        Misc:          softdebug
        LLVM:          supported, not enabled.
        GC:            Included Boehm (with typed GC and Parallel Mark)


But when running OpenSim.exe .. Well.. lets just say the stability was so bad it was crashing on the mesh objects in the sim, it didn't allow me to even teleport IN to my sim! lol! Ohh well.

I think I may have to chalk this one up for waiting for team OpenSim for more version updates. In the meantime, at least I can build in my Sim. Which is what I wanted to do anyways.


Top
 Profile  
 
 Post subject: Re: OSGrid on Pi - Teleporting out of region and BulletPhysics.
PostPosted: Fri Apr 24, 2015 3:51 pm 

Joined: Thu May 05, 2011 6:02 pm
Posts: 2
This is so cool. I was inspired by your original website post and got a banana pi to try to make my own sim.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post a new topicPost a reply Page 1 of 2   [ 20 posts ]
Go to page 1, 2  Next


Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
610nm Style by Daniel St. Jules of Gamexe.net