OpenSimMirror/bin/OpenSimDefaults.ini

1544 lines
56 KiB
INI

; This file contains defaults for various settings in OpenSimulator. These can be overriden
; by changing the same setting in OpenSim.ini (once OpenSim.ini.example has been copied to OpenSim.ini).
[Startup]
; Console prompt
; Certain special characters can be used to customize the prompt
; Currently, these are
; \R - substitute region name
; \\ - substtitue \
ConsolePrompt = "Region (\R) "
; 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
; Directory to save crashes to if above is enabled
; (default is /opensimdir/crashes/*.txt or C:\opensim\crashes\*.txt)
crash_dir = "crashes"
; Place to create a PID file
; PIDFile = "/tmp/my.pid"
; Console commands run at startup
startup_console_commands_file = "startup_commands.txt"
; Console commands run on shutdown
shutdown_console_commands_file = "shutdown_commands.txt"
; Console commands run every 20 minutes
; timer_Script = "filename"
; ##
; ## 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 = 15
; ##
; ## CLIENTS
; ##
; Enables EventQueueGet Service.
EventQueue = true
; Set this to the DLL containing the client stack to use.
clientstack_plugin="OpenSim.Region.ClientStack.LindenUDP.dll"
; ##
; ## REGIONS
; ##
; Determine where OpenSimulator looks for the files which tell it which regions to server
; Defaults to "filesystem" if this setting isn't present
region_info_source = "filesystem"
; region_info_source = "web"
; 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\"
; 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 the simulator to start up if there are no region configuration available
;; from the selected region_info_source.
allow_regionless = false
; Maximum size of non physical prims. Affects resizing of existing prims. This can be overriden in the region config file (as NonphysicalPrimMax!).
NonPhysicalPrimMax = 256
; Maximum size of physical prims. Affects resizing of existing prims. This can be overriden in the region config file.
PhysicalPrimMax = 10
; 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
; 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
; 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
; 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
; Extend the region's draw distance; 255m is the default which includes
; one neighbor on each side of the current region, 767m would go three
; neighbors on each side for a total of 49 regions in view. Warning, unless
; all the regions have the same drawdistance, you will end up with strange
; effects because the agents that get closed may be inconsistent.
DefaultDrawDistance = 255.0
; 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
; The minimum proportion of a second that any particular frame can take to execute.
; Only change this if you really know what you're doing, and be prepared to change UpdatePhysicsEveryNFrames
; (and other Frames params) to match! For instance, halving MinFrameTime to 0.0445 require
; UpdatePhysicsEveryNFrames = 2 unless you don't mind your avatar walking like Benny Hill.
MinFrameTime = 0.089
; Send scheduled updates to objects in the scene
; This must be a whole number
UpdateObjectsEveryNFrames = 1;
; Send position/velocity, etc. updates to agents in the scene
; This must be a whole number
UpdateAgentsEveryNFrames = 1;
; Apply pending forces from physics calculations to an entity.
; This must be a whole number
UpdateEntityMovementEveryNFrames = 1;
; Send coarse location updates to viewers. In a classic viewer, this updates the minimap.
; This must be a whole number
UpdateCoarseLocationsEveryNFrames = 50;
; Update physics. Within each update physics also updates in a series of contigous mini-steps
; This must be a whole number
UpdatePhysicsEveryNFrames = 1;
; Clean up temp on rez objects.
; This must be a whole number
UpdateTempCleaningEveryNFrames = 1000;
; Send out the on frame event to modules and other listeners. This should probably never deviate from 1.
; This must be a whole number
UpdateEventsEveryNFrames = 1;
; Send terrain updates to viewers
; This must be a whole number
UpdateTerrainEveryNFrames = 50;
; Persitently store any objects which meet the PRIM STORAGE criteria
; This must be a whole number
UpdateStorageEveryNFrames = 200;
; ##
; ## PRIM STORAGE
; ##
; 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.
;
; Objects will be considered for persistance in the next sweep when they have not changed for this number of seconds
MinimumTimeBeforePersistenceConsidered = 60
; Objects will always be considered for persistance in the next sweep if the first change occurred this number of seconds ago
MaximumTimeBeforePersistenceConsidered = 600
; ##
; ## PHYSICS
; ##
; If true then prims can be collided with by avatars, other prims, etc.
; If false then all prims are phantom, no matter whether their phantom flag is checked or unchecked.
; Also, no prims are subject to physics.
collidable_prim = true
; If true then prims can be made subject to physics (gravity, pushing, etc.).
; If false then physics flag can be set but it is not honoured. However, prims are still solid for the purposes of collision direction
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
;
; 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
meshing = Meshmerizer
;meshing = ZeroMesher
; Path to decoded sculpty maps
; Defaults to "j2kDecodeCache
;DecodedSculptMapPath = "j2kDecodeCache"
; 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 = true
; Choose one of the physics engines below
; OpenDynamicsEngine is by some distance the most developed physics engine
; basicphysics effectively does not model physics at all, making all objects phantom
physics = OpenDynamicsEngine
;physics = basicphysics
;physics = POS
;physics = modified_BulletX
;physics = BulletSim
; ##
; ## PERMISSIONS
; ##
;permissionmodules = "DefaultPermissionsModule"
; 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
; Default is true
serverside_object_permissions = true
allow_grid_gods = false
; This allows somne control over permissions
; please note that this still doesn't duplicate SL, and is not intended to
;region_owner_is_god = true
;region_manager_is_god = false
;parcel_owner_is_god = true
; Control user types that are allowed to create new scripts
; Only enforced if serviceside_object_permissions is true
;
; Current possible values are
; all - anyone can create scripts (subject to normal permissions)
; gods - only administrators can create scripts (as long as allow_grid_gods is true)
; Default value is all
; allowed_script_creators = all
; Control user types that are allowed to edit (save) scripts
; Only enforced if serviceside_object_permissions is true
;
; Current possible values are
; all - anyone can edit scripts (subject to normal permissions)
; gods - only administrators can edit scripts (as long as allow_grid_gods is true)
; Default value is all
; allowed_script_editors = all
; ##
; ## SCRIPT ENGINE
; ##
DefaultScriptEngine = "XEngine"
; ##
; ## WORLD MAP
; ##
;WorldMapModule = "WorldMap"
;MapImageModule = "MapImageModule"
; World map blacklist timeout in seconds
;BlacklistTimeout = 600
; Set to false to not generate any maptiles
;GenerateMaptiles = true
; Refresh (in seconds) the map tile periodically
;MaptileRefresh = 0
; If not generating maptiles, use this static texture asset ID
;MaptileStaticUUID = "00000000-0000-0000-0000-000000000000"
; 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
; Use terrain texture for maptiles if true, use shaded green if false
TextureOnMapTile = true
; ##
; ## EMAIL MODULE
; ##
;emailmodule = DefaultEmailModule
; ##
; ## ANIMATIONS
; ##
; If enabled, enableFlySlow will change the primary fly state to
; FLYSLOW, and the "always run" state will be the regular fly.
enableflyslow = false
; PreJump is an additional animation state, but it probably
; won't look right until the physics engine supports it
; (i.e delays takeoff for a moment)
; Simulator Stats URI
; Enable JSON simulator data by setting a URI name (case sensitive)
; Stats_URI = "jsonSimStats"
; Make OpenSim start all regions woth logins disabled. They will need
; to be enabled from the console if this is set
; StartDisabled = false
; Image decoding. Use CSJ2K for layer boundary decoding if true,
; OpenJPEG if false
; UseCSJ2K = true
; Persist avatar baked textures
; Persisting baked textures can speed up login and region border
; crossings especially with large numbers of users, though it
; will store potentially large numbers of textures in your asset
; database
PersistBakedTextures = false
; Control the delay before appearance is sent to other avatars and
; saved in the avatar service. Attempts to limit the impact caused
; by the very chatty dialog that sets appearance when an avatar
; logs in or teleports into a region; values are in seconds
DelayBeforeAppearanceSave = 5
DelayBeforeAppearanceSend = 2
[RegionReady]
; Enable this module to get notified once all items and scripts in the region have been completely loaded and compiled
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
; Instability can occur on regions with 100+ scripts if users enter before they have finished loading
login_disable = true
; - send an alert as json to a service
; alert_uri = "http://myappserver.net/my_handler/"
[SMTP]
enabled = false
;enabled = true
;internal_object_host = lsl.opensim.local
;host_domain_header_from = 127.0.0.1
;SMTP_SERVER_HOSTNAME = 127.0.0.1
;SMTP_SERVER_PORT = 25
;SMTP_SERVER_LOGIN = foo
;SMTP_SERVER_PASSWORD = bar
[Network]
ConsoleUser = "Test"
ConsolePass = "secret"
http_listener_port = 9000
console_port = 0
; ssl config: Experimental! The auto https config only really works definately on windows XP now
; you need a Cert Request/Signed pair installed in the MY store with the CN specified below
; you can use https on other platforms, but you'll need to configure the httpapi yourself for now
http_listener_ssl = false ; Also create a SSL server
http_listener_cn = "localhost" ; Use the cert with the common name
http_listener_sslport = 9001 ; Use this port for SSL connections
http_listener_ssl_cert = "" ; Currently unused, but will be used for OSHttpServer
; HTTPS for "Out of band" management applications such as the remote
; admin module
;
; Create https_listener = "True" will create a listener on the port
; specified. Provide the path to your server certificate along with it's
; password
; https_listener = False
; Set our listener to this port
; https_port = 0
; Path to X509 certificate
; cert_path = "path/to/cert.p12"
; Password for cert
; cert_pass = "password"
; 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
; 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
shard = "OpenSim"
; 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)"
[XMLRPC]
; ##
; ## Scripting XMLRPC mapper
; ##
; If enabled, this will post an event, "xmlrpc_uri(string)" to the
; script concurrently with the first remote_data event.
; This will contain the fully qualified URI an external site needs
; to use to send XMLRPC requests to that script
;XmlRpcRouterModule = "XmlRpcRouterModule"
;XmlRpcPort = 20800
[ClientStack.LindenUDP]
; Set this to true to process incoming packets asynchronously. Networking is
; already separated from packet handling with a queue, so this will only
; affect whether networking internals such as packet decoding and
; acknowledgement accounting are done synchronously or asynchronously
; Default is true.
;
;async_packet_handling = true
; The client socket receive buffer size determines how many
; incoming requests we can process; the default on .NET is 8192
; which is about 2 4k-sized UDP datagrams. On mono this is
; whatever the underlying operating system has as default; for
; example, ubuntu 8.04 or SLES11 have about 111k, which is about
; 27 4k-sized UDP datagrams (on linux platforms you can [as root]
; do "sysctl net.core.rmem_default" to find out what your system
; uses a default socket receive buffer size.
;
; client_socket_rcvbuf_size allows you to specify the receive
; buffer size LLUDPServer should use. NOTE: this will be limited
; by the system's settings for the maximum client receive buffer
; size (on linux systems you can set that with "sysctl -w
; net.core.rmem_max=X")
;
;client_socket_rcvbuf_size = 8388608
; Maximum outbound bytes per second for a single scene. This can be used to
; throttle total outbound UDP traffic for a simulator. The default value is
; 0, meaning no throttling at the scene level. The example given here is
; 20 megabits
;
;scene_throttle_max_bps = 2621440
; Maximum bits per second to send to any single client. This will override
; the user's viewer preference settings. The default value is 0, meaning no
; aggregate throttling on clients (only per-category throttling). The
; example given here is 1.5 megabits
;
;client_throttle_max_bps = 196608
; Adaptive throttling attempts to limit network overload when multiple
; clients login by starting each connection more slowly. Disabled by
; default
;
enable_adaptive_throttles = false
; Per-client bytes per second rates for the various throttle categories.
; These are default values that will be overriden by clients. These
; defaults are approximately equivalent to the throttles set by the Imprudence
; viewer when maximum bandwidth is set to 350kbps
;resend_default = 6625
;land_default = 9125
;wind_default = 1750
;cloud_default = 1750
;task_default = 18500
;texture_default = 18500
;asset_default = 10500
; Configures how ObjectUpdates are aggregated. These numbers
; do not literally mean how many updates will be put in each
; packet that goes over the wire, as packets are
; automatically split on a 1400 byte boundary. These control
; the balance between responsiveness of interest list updates
; and total throughput. Higher numbers will ensure more full-
; sized packets and faster sending of data, but more delay in
; updating interest lists
;
;PrimUpdatesPerCallback = 100
; TextureSendLimit determines how many packets will be put on
; the outgoing queue each cycle. Like the settings above, this
; is a balance between responsiveness to priority updates and
; total throughput. Higher numbers will give a better
; throughput at the cost of reduced responsiveness to client
; priority changes or transfer aborts
;
;TextureSendLimit = 20
; 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.
;
;DisableFacelights = "false(1815)
[ClientStack.LindenCaps]
;; Long list of capabilities taken from
;; http://wiki.secondlife.com/wiki/Current_Sim_Capabilities
;; Not all are supported by OpenSim. The ones supported are
;; set to localhost. These defaults can be overwritten
;; in OpenSim.ini
;;
Cap_AttachmentResources = ""
Cap_AvatarPickerSearch = ""
Cap_ChatSessionRequest = ""
Cap_CopyInventoryFromNotecard = ""
Cap_DispatchRegionInfo = ""
Cap_EstateChangeInfo = ""
Cap_EventQueueGet = "localhost"
Cap_FetchInventory = ""
Cap_ObjectMedia = "localhost"
Cap_ObjectMediaNavigate = "localhost"
Cap_FetchLib = ""
Cap_FetchLibDescendents = ""
Cap_GetDisplayNames = ""
Cap_GetTexture = "localhost"
Cap_GetMesh = "localhost"
Cap_GetObjectCost = ""
Cap_GetObjectPhysicsData = ""
Cap_GroupProposalBallot = ""
Cap_HomeLocation = ""
Cap_LandResources = ""
Cap_MapLayer = "localhost"
Cap_MapLayerGod = "localhost"
Cap_NewFileAgentInventory = "localhost"
Cap_NewFileAgentInventoryVariablePrice = "localhost"
Cap_ObjectAdd = "localhost"
Cap_ParcelPropertiesUpdate = "localhost"
Cap_ParcelMediaURLFilterList = ""
Cap_ParcelNavigateMedia = ""
Cap_ParcelVoiceInfoRequest = ""
Cap_ProductInfoRequest = ""
Cap_ProvisionVoiceAccountRequest = ""
Cap_RemoteParcelRequest = "localhost"
Cap_RequestTextureDownload = ""
Cap_SearchStatRequest = ""
Cap_SearchStatTracking = ""
Cap_SendPostcard = ""
Cap_SendUserReport = ""
Cap_SendUserReportWithScreenshot = ""
Cap_ServerReleaseNotes = ""
Cap_SimConsole = ""
Cap_SimulatorFeatures = ""
Cap_SetDisplayName = ""
Cap_StartGroupProposal = ""
Cap_TextureStats = ""
Cap_UntrustedSimulatorMessage = ""
Cap_UpdateAgentInformation = ""
Cap_UpdateAgentLanguage = ""
Cap_UpdateGestureAgentInventory = ""
Cap_UpdateNotecardAgentInventory = "localhost"
Cap_UpdateScriptAgent = "localhost"
Cap_UpdateGestureTaskInventory = ""
Cap_UpdateNotecardTaskInventory = "localhost"
Cap_UpdateScriptTask = "localhost"
Cap_UploadBakedTexture = "localhost"
Cap_UploadObjectAsset = "localhost"
Cap_ViewerStartAuction = ""
Cap_ViewerStats = ""
; The various fetch inventory caps are supported by OpenSim, but may
; lead to poor sim performance if served by the simulators,
; so they are currently disabled by default.
; FetchInventoryDescendents2 and FetchInventory2 are the ones used in the latest Linden Lab viewers (from some point in the v2 series and above)
Cap_WebFetchInventoryDescendents = ""
Cap_FetchInventoryDescendents2 = ""
Cap_FetchInventory2 = ""
[Chat]
; Controls whether the chat module is enabled. Default is true.
enabled = true;
; Distance in meters that whispers should travel. Default is 10m
whisper_distance = 10
; Distance in meters that ordinary chat should travel. Default is 20m
say_distance = 20
; Distance in meters that shouts should travel. Default is 100m
shout_distance = 100
[EntityTransfer]
; The maximum distance in regions that an agent is allowed to teleport along the x or y axis
; This is set to 4095 because current viewers can't handle teleports that are greater than this distance
max_distance = 4095
[Messaging]
; Control which region module is used for instant messaging.
; Default is InstantMessageModule (this is the name of the core IM module as well as the setting)
InstantMessageModule = InstantMessageModule
; MessageTransferModule = MessageTransferModule
; OfflineMessageModule = OfflineMessageModule
; OfflineMessageURL = http://yourserver/Offline.php
; MuteListModule = MuteListModule
; MuteListURL = http://yourserver/Mute.php
; Control whether group messages are forwarded to offline users. Default is true.
; ForwardOfflineGroupMessages = true
[Inventory]
; Control whether multiple objects sent to inventory should be coaleseced into a single item
; There are still some issues with coalescence, including the fact that rotation is not restored
; and some assets may be missing from archive files.
CoalesceMultipleObjectsToInventory = true
[Attachments]
; Controls whether avatar attachments are enabled.
; Defaults to true - only set to false for debugging purposes
Enabled = true
[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 = false
[ODEPhysicsSettings]
;##
;## World Settings
;##
;Gravity. Feel like falling up? change world_gravityz to 9.8 instead of -9.8. m/s
world_gravityx = 0
world_gravityy = 0
world_gravityz = -9.8
; World Step size. (warning these are dangerous. Changing these will probably cause your scene to explode dramatically)
; reference: fps = (0.089/ODE_STEPSIZE) * 1000;
world_stepsize = 0.0178
world_internal_steps_without_collisions = 10
;World Space settings. Affects memory consumption vs Collider CPU time for avatar and physical prim
world_hashspace_size_low = -4
world_hashSpace_size_high = 128
;Dynamic space settings Affects memory consumption vs Collider CPU time for static prim
meters_in_small_space = 29.9
small_hashspace_size_low = -4
small_hashspace_size_high = 66
; ##
; ## Contact properties. (the stuff that happens when things come in contact with each other)
; ##
; surface layer around geometries other geometries can sink into before generating a contact
world_contact_surface_layer = 0.001
; Filtering collisions helps keep things stable physics wise, but sometimes
; it can be overzealous. If you notice bouncing, chances are it's that.
filter_collisions = false
; Non Moving Terrain Contact (avatar isn't moving)
nm_terraincontact_friction = 255.0
nm_terraincontact_bounce = 0.1
nm_terraincontact_erp = 0.1025
; Moving Terrain Contact (avatar is moving)
m_terraincontact_friction = 75.0
m_terraincontact_bounce = 0.05
m_terrainContact_erp = 0.05025
; Moving Avatar to object Contact
m_avatarobjectcontact_friction = 75.0
m_avatarobjectcontact_bounce = 0.1
; Object to Object Contact and Non-Moving Avatar to object
objectcontact_friction = 250.0
objectcontact_bounce = 0.2
; ##
; ## Avatar Control
; ##
; PID Controller Settings. These affect the math that causes the avatar to reach the
; desired velocity
; See http://en.wikipedia.org/wiki/PID_controller
av_pid_derivative_linux = 2200.0
av_pid_proportional_linux = 900.0;
av_pid_derivative_win = 2200.0
av_pid_proportional_win = 900.0;
;girth of the avatar. Adds radius to the height also
av_capsule_radius = 0.37
; Max force permissible to use to keep the avatar standing up straight
av_capsule_standup_tensor_win = 550000
av_capsule_standup_tensor_linux = 550000
; specifies if the capsule should be tilted (=true; old compatibility mode)
; or straight up-and-down (=false; better and more consistent physics behavior)
av_capsule_tilted = false
; used to calculate mass of avatar.
; float AVvolume = (float) (Math.PI*Math.Pow(CAPSULE_RADIUS, 2)*CAPSULE_LENGTH);
; av_density * AVvolume;
av_density = 80
; use this value to cut 52% of the height the sim gives us
; Currently unused
; av_height_fudge_factor = 0.52
; Movement. Smaller is faster.
; speed of movement with Always Run off
av_movement_divisor_walk = 1.3
; speed of movement with Always Run on
av_movement_divisor_run = 0.8
; When the avatar flies, it will be moved up by this amount off the ground (in meters)
minimum_ground_flight_offset = 3.0
; ##
; ## Object options
; ##
; used in the mass calculation.
geometry_default_density = 10.000006836
; amount of ODE steps where object is non moving for ODE to automatically put it to sleep
body_frames_auto_disable = 20
; used to control llMove2Target
body_pid_derivative = 35
body_pid_gain = 25
; maximum number of contact points to generate per collision
contacts_per_collision = 80
; amount of time a geom/body will try to cross a region border before it gets disabled
geom_crossing_failures_before_outofbounds = 5
; start throttling the object updates if object comes in contact with 3 or more other objects
geom_contactpoints_start_throttling = 3
; send 1 update for every x updates below when throttled
geom_updates_before_throttled_update = 15
; Used for llSetStatus. How rigid the object rotation is held on the axis specified
body_motor_joint_maxforce_tensor_linux = 5
body_motor_joint_maxforce_tensor_win = 5
; Maximum mass an object can be before it is clamped
maximum_mass_object = 10000.01
; ##
; ## Sculpted Prim settings
; ##
; Do we want to mesh sculpted prim to collide like they look?
mesh_sculpted_prim = true
; number^2 non-physical level of detail of the sculpt texture. 32x32 - 1024 verticies
mesh_lod = 32
; number^2 physical level of detail of the sculpt texture. 16x16 - 256 verticies
mesh_physical_lod = 16
; ##
; ## Physics logging settings - logfiles are saved to *.DIF files
; ##
; default is false
;physics_logging = true
;; every n simulation iterations, the physics snapshot file is updated
;physics_logging_interval = 50
;; append to existing physics logfile, or overwrite existing logfiles?
;physics_logging_append_existing_logfile = true
; ##
; ## Joint support
; ##
; if you would like physics joints to be enabled through a special naming convention in the client, set this to true.
; (see NINJA Physics documentation, http://opensimulator.org/wiki/NINJA_Physics)
; default is false
;use_NINJA_physics_joints = true
; ##
; ## additional meshing options
; ##
; physical collision mesh proxies are normally created for complex prim shapes, and collisions for simple boxes and
; spheres are computed algorithmically. If you would rather have mesh proxies for simple prims, you can set this to
; true. Note that this will increase memory usage and region startup time. Default is false.
;force_simple_prim_meshing = true
[BulletSim]
; World parameters
DefaultFriction = 0.50
DefaultDensity = 10.000006836
DefaultRestitution = 0.0
Gravity = -9.80665
TerrainFriction = 0.50
TerrainHitFriction = 0.8
TerrainRestitution = 0
AvatarFriction = 0
AvatarDensity = 60.0
AvatarCapsuleRadius = 0.37
AvatarCapsuleHeight = 1.5
MaxObjectMass = 10000.01
; Dynamic parameters
LinearDamping = 0.0
AngularDamping = 0.0
DeactivationTime = 0.2
LinearSleepingThreshold = 0.8
AngularSleepingThreshold = 1.0
CcdMotionThreshold = 0.0
CcdSweptSphereRadius = 0.0
ContactProcessingThreshold = 0.1
; Whether to mesh sculpties
MeshSculptedPrim = true
; If 'true', force simple prims (box and sphere) to be meshed
ForceSimplePrimMeshing = false
; level of detail for physical meshes. 32,16,8 or 4 with 32 being full detail
MeshLevelOfDetail = 8
; number^2 non-physical level of detail of the sculpt texture. 32x32 - 1024 verticies
SculptLevelOfDetail = 32
; Bullet step parameters
MaxSubSteps = 10;
FixedTimeStep = .01667
MaxCollisionsPerFrame = 2048
MaxUpdatesPerFrame = 2048
[RemoteAdmin]
enabled = false
; Set this to a nonzero value to have remote admin use a different port
port = 0
; Set this to the ip address that you want the admin server to bind to
bind_ip_address = "0.0.0.0"
; This password is required to make any XMLRPC call (should be set as the "password" parameter)
access_password = unknown
; 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 =
; 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 [default: false]
create_region_enable_voice = 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) [default: true]
create_region_public = false
; the create_region XmlRpc call uses region_file_template to generate
; the file name of newly create regions (if they are created
; persistent). the parameter available are:
; {0} - X location
; {1} - Y location
; {2} - region UUID
; {3} - region port
; {4} - region name with " ", ":", "/" mapped to "_"
region_file_template = "{0}x{1}-{2}.ini"
; we can limit the number of regions that XmlRpcCreateRegion will
; allow by setting this to a positive, non-0 number: as long as the
; number of regions is below region_limits, XmlRpcCreateRegion will
; succeed. setting region_limit to 0 disables the check.
; default is 0
;region_limit = 0
; enable only those methods you deem to be appropriate using a | delimited whitelist
; for example, enabled_methods = admin_broadcast|admin_region_query|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
; (default), 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
[RestPlugins]
; Change this to true to enable REST Plugins. This must be true if you wish to use
; REST Region or REST Asset and Inventory Plugins
enabled = false
god_key = SECRET
prefix = /admin
[RestRegionPlugin]
; Change this to true to enable the REST Region Plugin
enabled = false
[RestHandler]
; Change this to true to enable the REST Asset and Inventory Plugin
enabled = false
authenticate = true
secured = true
extended-escape = true
realm = OpenSim REST
dump-asset = false
path-fill = true
dump-line-size = 32
flush-on-error = true
; IRC bridge is experimental, so if it breaks... keep both parts... yada yada
; also, not good error detection when it fails
[IRC]
enabled = false; you need to set this to true otherwise it won't connect
;server = name.of.irc.server.on.the.net
;; user password - only use this if the server requires one
;password = mypass
;nick = OpenSimBotNameProbablyMakeThisShorter
;channel = #the_irc_channel_you_want_to_connect_to
;user = "USER OpenSimBot 8 * :I'm an OpenSim to IRC bot"
;port = 6667
;; channel to listen for configuration commands
;commands_enabled = false
;command_channel = 2777
;report_clients = true
;; relay private chat connections
;; relay_private_channels = true: will relay IRC chat from/to private in-world channels
;; relay_private_channel_out -- channel to send messages out to the IRC bridge
;; relay_private_channel_in -- channel to receive message from the IRC bridge
;; relay_chat = false: IRC bridge will not relay normal chat
;; access_password -- simple security device
;;
;; so, to just relay chat from an IRC channel to in-world region and vice versa:
;;
;; relay_private_channels = false
;; relay_chat = true
;;
;; to relay chat only to/from private in-world channels:
;;
;; relay_chat = false
;; relay_private_channels = true
;; relay_private_channel_in = 2226
;; relay_private_channel_out = 2225
;;
;; in this example, all chat coming in from IRC will be send out via
;; in-world channel 2226, and all chat from in-world channel 2225 will
;; be relayed to the IRC channel.
;;
;relay_private_channels = false
;relay_private_channel_in = 2226
;relay_private_channel_out = 2225
;relay_chat = true
;access_password = foobar
;;fallback_region = name of "default" region
;;MSGformat fields : 0=botnick, 1=user, 2=region, 3=message
;; must start with "PRIVMSG {0} : " or irc server will get upset
;;for <bot>:<user in region> :<message>
;;msgformat = "PRIVMSG {0} :<{1} in {2}>: {3}"
;;for <bot>:<message> - <user of region> :
;msgformat = "PRIVMSG {0} : {3} - {1} of {2}"
;;for <bot>:<message> - from <user> :
;;msgformat = "PRIVMSG {0} : {3} - from {1}"
;; exclude_list allows you to stop the IRC connector from announcing the
;;arrival and departure of certain users. For example: admins, bots.
;exclude_list=User 1,User 2,User 3
; The following settings control the progression of daytime
; in the Sim. The defaults are the same as the commented out settings
[Sun]
; number of wall clock hours for an opensim day. 24.0 would mean realtime
;day_length = 4
; Year length in days
;year_length = 60
; Day to Night Ratio
;day_night_offset = 0.45
; send a Sun update every update_interval # of frames. A lower number will
; make for smoother sun transition at the cost of network
;update_interval = 100
[Wind]
; Enables the wind module. Default is true
enabled = true
; 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 = 0.0
; var_direction = 0.0
; rate_change = 1.0
; This setting is specific to the SimpleRandomWind plugin
; Adjusts wind strength. 0.0 = no wind, 1.0 = normal wind. Default is 1.0
strength = 1.0
[Cloud]
; Enable this to generate classic particle clouds above the sim.
; default is disabled - turn it on here
enabled = false
; Density of cloud cover 0.0 to 1.0 Defult 0.5
density = 0.5
; update interval for the cloud cover data returned by llCloud().
; default is 1000
cloud_update_rate = 1000
[LightShare]
; 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.
; Currently we only have support for MySQL databases.
enable_windlight = false
[Trees]
; Enable this to allow the tree module to manage your sim trees, including growing, reproducing and dying
; default is false
active_trees = false
; Density of tree population
tree_density = 1000.0
[VectorRender]
; the font to use for rendering text (default: Arial)
; font_name = "Arial"
[LL-Functions]
; Set the following to true to allow administrator owned scripts to execute console commands
; currently unused
; AllowosConsoleCommand=false
AllowGodFunctions = false
; Maximum number of llListen events we allow over the entire region.
; Set this to 0 to have no limit imposed
max_listeners_per_region = 1000
; Maximum number of llListen events we allow per script
; Set this to 0 to have no limit imposed.
max_listens_per_script = 64
[DataSnapshot]
; 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
; default is false
index_sims = false
; The variable data_exposure controls what the regions expose:
; minimum: exposes only things explicitly marked for search
; all: exposes everything
data_exposure = minimum
; If search is on, change this to your grid name; will be ignored for standalones
gridname = "OSGrid"
; 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"
; 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"
[Economy]
; These economy values get used in the BetaGridLikeMoneyModule. - This module is for demonstration only -
; 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
;; Money Unit fee to upload textures, animations etc. Default is 0.
PriceUpload = 0
;; Money Unit fee to create groups. Default is 0.
PriceGroupCreate = 0
; We don't really know what the rest of these values do. These get sent to the client
; These taken from Agni at a Public Telehub. Change at your own risk.
ObjectCount = 0
PriceEnergyUnit = 100
PriceObjectClaim = 10
PricePublicObjectDecay = 4
PricePublicObjectDelete = 4
PriceParcelClaim = 1
PriceParcelClaimFactor = 1
PriceRentLight = 5
TeleportMinPrice = 2
TeleportPriceExponent = 2
EnergyEfficiency = 1
PriceObjectRent = 1
PriceObjectScaleFactor = 10
PriceParcelRent = 1
[XEngine]
; 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
; Thread priority ("Lowest", "BelowNormal", "Normal", "AboveNormal", "Highest")
Priority = "BelowNormal"
; Maximum number of events to queue for a script (excluding timers)
MaxScriptEventQueue = 300
; Stack size per thread created
ThreadStackSize = 262144
; 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 reduce the per-script overhead at the
; expense of reduced security and the inability to garbage collect the
; script assemblies
AppDomainLoading = true
; Rate to poll for asynchronous command replies (ms)
; currently unused
;AsyncLLCommandLoopms = 50
; Save the source of all compiled scripts
WriteScriptSourceToDebugFile = false
; Default language for scripts
DefaultCompileLanguage = lsl
; List of allowed languages (lsl,vb,js,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
; Allow the use of os* functions (some are dangerous)
AllowOSFunctions = false
; Allow the user of LightShare functions
AllowLightShareFunctions = false
; Threat level to allow, one of None, VeryLow, Low, Moderate, High, VeryHigh, Severe
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 objectgroup is the same group as the parcel
; - PARCEL_OWNER: allow if the objectowner is parcelowner
; - ESTATE_MANAGER: allow if the object owner is a estate manager
; - ESTATE_OWNER: allow if objectowner is estateowner
; Allow_osSetRegionWaterHeight = 888760cb-a3cf-43ac-8ea4-8732fd3ee2bb, PARCEL_OWNER, ESTATE_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.
; Interval (s) between background save of script states
SaveInterval = 120
; Interval (s) between maintenance runs (0 = disable)
MaintenanceInterval = 10
; Time a script can spend in an event handler before it is interrupted
EventLimit = 30
; If a script overruns it's event limit, kill the script?
KillTimedOutScripts = false
; Sets the multiplier for the scripting delays
ScriptDelayFactor = 1.0
; The factor the 10 m distances llimits are multiplied by
ScriptDistanceLimitFactor = 1.0
; Maximum length of notecard line read
; Increasing this to large values potentially opens
; up the system to malicious scripters
; NotecardLineReadCharsMax = 255
; Sensor settings
SensorMaxRange = 96.0
SensorMaxResults = 16
; Allow for llCreateLink and llBreakLink to work without asking for permission
; only enable this in a trusted environment otherwise you may be subject to hijacking
; AutomaticLinkPermission = false
; Disable underground movement of prims (default true); set to
; false to allow script controlled underground positioning of
; prims
; DisableUndergroundMovement = true
;; Path to script assemblies
; ScriptEnginesPath = "ScriptEngines"
; 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 = false
[OpenGridProtocol]
;These are the settings for the Open Grid Protocol.. the Agent Domain, Region Domain, you know..
;On/true or Off/false
ogp_enabled=false
;Name Prefix/suffix when using OGP
ogp_firstname_prefix=""
ogp_lastname_suffix="_EXTERNAL"
[Concierge]
; Enable concierge module
; Default is false
enabled = false
; name of the concierge
whoami = "jeeves"
; password for updating the welcome message templates via XmlRpc
password = SECRET
; regex specifying for which regions concierge service is desired; if
; empty, then for all
regions = "^MeetingSpace-"
; for each region that matches the regions regexp you can provide
; (optionally) a welcome template using format substitution:
; {0} is replaced with the name of the avatar entering the region
; {1} is replaced with the name of the region
; {2} is replaced with the name of the concierge (whoami variable above)
welcomes = /path/to/welcome/template/directory
; Concierge can send attendee lists to an event broker whenever an
; avatar enters or leaves a concierged region. the URL is subject
; to format substitution:
; {0} is replaced with the region's name
; {1} is replaced with the region's UUID
broker = "http://broker.place.com/{1}"
[MRM]
; Enables the Mini Region Modules Script Engine.
; default is false
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
[Hypergrid]
; Keep it false for now. Making it true requires the use of a special client in order to access inventory
safemode = false
[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 = false
; This is the current groups stub in Region.CoreModules.Avatar.Groups. All the other settings below only really
; apply to the Flotsam/SimianGrid GroupsModule
Module = Default
; 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
; Enable Group Notices
;NoticesEnabled = true
; This makes the Groups modules very chatty on the console.
DebugEnabled = false
; Groups data is cached for this number of seconds before another request is made to the groups service
; Set to 0 to disable the cache.
; Default is 30 seconds
GroupsCacheTimeout = 30
; Specify which messaging module to use for groups messaging and if it's enabled
;MessagingModule = GroupsMessagingModule
;MessagingEnabled = true
; Service connectors to the Groups Service. Select one depending on whether you're using a Flotsam XmlRpc backend or a SimianGrid backend
; SimianGrid Service for Groups
;ServicesConnectorModule = SimianGroupsServicesConnector
;GroupsServerURI = http://mygridserver.com:82/Grid/
; Flotsam XmlRpc Service for Groups
;ServicesConnectorModule = XmlRpcGroupsServicesConnector
;GroupsServerURI = http://yourxmlrpcserver.com/xmlrpc.php
; XmlRpc Security settings. These must match those set on your backend groups service if the service is using these keys
;XmlRpcServiceReadKey = 1234
;XmlRpcServiceWriteKey = 1234
; Disables HTTP Keep-Alive for XmlRpcGroupsServicesConnector HTTP Requests,
; this is a work around fora problem discovered on some Windows based region servers.
; Only disable keep alive if you see a large number (dozens) of the following Exceptions:
; System.Net.WebException: The request was aborted: The request was canceled.
; XmlRpcDisableKeepAlive = false
[PacketPool]
; Enables the experimental packet pool. Yes, we've been here before.
;RecyclePackets = true;
;RecycleDataBlocks = true;
[InterestManagement]
; This section controls how state updates are prioritized for each client
; Valid values are BestAvatarResponsiveness, Time, Distance,
; SimpleAngularDistance, and FrontBack
UpdatePrioritizationScheme = BestAvatarResponsiveness
ReprioritizationEnabled = true
ReprioritizationInterval = 2000.0
RootReprioritizationDistance = 10.0
ChildReprioritizationDistance = 20.0
[Monitoring]
; Enable region monitoring
; If true, this will print out an error if more than a minute has passed since the last simulator frame
; Also is another source of region statistics provided via the regionstats URL
Enabled = true
; View region statistics via a web page
; See http://opensimulator.org/wiki/FAQ#Region_Statistics_on_a_Web_Page
; Use a web browser and type in the "Login URI" + "/SStats/"
; For example- http://127.0.0.1:9000/SStats/
[WebStats]
; enabled=false
[MediaOnAPrim]
; Enable media on a prim facilities
Enabled = true;
[NPC]
;; Enable Non Player Character (NPC) facilities
Enabled = false
;;
;; If you are using a simian grid frontend you can enable
;; this module to upload tile images for the mapping fn
;;
[SimianGridMaptiles]
Enabled = False
MaptileURL = "http://www.mygrid.com/Grid/"
RefreshTime = 3600
;;
;; These are defaults that are overwritten below in [Architecture].
;; These defaults allow OpenSim to work out of the box with
;; zero configuration
;;
[AssetService]
DefaultAssetLoader = "OpenSim.Framework.AssetLoader.Filesystem.dll"
AssetLoaderArgs = "assets/AssetSets.xml"
; Disable this to prevent the default asset set from being inserted into the
; asset store each time the region starts
AssetLoaderEnabled = true
[GridService]
;; default standalone, overridable in StandaloneCommon.ini
StorageProvider = "OpenSim.Data.Null.dll:NullRegionData"
[AutoBackupModule]
;; default is module is disabled at the top level
AutoBackupModuleEnabled = false
[Modules]
Include-modules = "addon-modules/*/config/*.ini"