;; This is the main configuration file for OpenSimulator. ;; See OpenSimDefaults.ini for the defaults, and more options. ;; The settings in this file are in the form " = ". 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. [Includes] ; Define your server specific constants in this file. Include-Common = config.ini [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) " ;# {ConsoleHistoryFileEnabled} {} {Save console commands to a history file?} {true false} true ;; Console commands can be saved to a file, so the command history persists after a restart. (default is false) ; ConsoleHistoryFileEnabled = true ;# {ConsoleHistoryFile} {} {Filename in which to save history} {} OpenSimConsoleHistory.txt ;; The history file can be just a filename (relative to OpenSim's bin/ directory ;; or it can be a full path to somewhere else. (default is OpenSimConsoleHistory.txt in bin/) ; ConsoleHistoryFile = "OpenSimConsoleHistory.txt" ;# {ConsoleHistoryFileLines} {} {How many lines of history to save?} {} 100 ;; How many lines of command history should we keep? (default is 100) ; ConsoleHistoryFileLines = 100 ; 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" ; timer_Script time interval (default 20 min) ; The time is 60 per minute ; timer_Interval = 1200 ;# {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 ;# {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 ;; 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 ;# {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 ;; Choose one of the physics engines below ;# {physics} {} {Select physics engine} {OpenDynamicsEngine BulletSim basicphysics POS} BulletSim ;; BulletSim is the default physics engine. It provides the best performance and most functionality. ;; BulletSim supports varregions. ;; OpenDynamicsEngine was the previous default physics engine in OpenSimulator 0.7.6.1 and before. ;; It continues to provide a workable physics implementation. It 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 ; Simulator statistics are output to the console periodically at debug level INFO. ; Setting this to zero disables this output. ; LogShowStatsSeconds = 0 ;# {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 [Map] ;# {GenerateMaptiles} {} {Generate map tiles?} {true false} true ;; Map tile options. ;; If true, then maptiles are generated using the MapImageModule below. ;; If false then the texture referenced by MaptileStaticUUID is used instead, which can also be overridden ;; in individual region config file(s). If you do not want to upload map tiles at all, then you will need ;; both to set this to false and comment out the [Modules] MapImageServiceModule setting in config-include/ ; GenerateMaptiles = true ;# {MapImageModule} {} {The map image module to use} {MapImageModule Warp3DImageModule} MapImageModule ;; The module to use in order to generate map images. ;; MapImageModule is the default. Warp3DImageModule is an alternative experimental module that can ;; generate better images, but leaks memory. ;MapImageModule = "MapImageModule" MapImageModule = "Warp3DImageModule" ;# {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. ;; NOTE - the management scripts run a map generation after every sim backup. ; MaptileRefresh = 0 ;# {MaptileStaticUUID} {} {Asset ID for static map texture} {} 00000000-0000-0000-0000-000000000000 ;; If not generating maptiles, use this static texture asset ID ;; This may be overridden on a per region basis in Regions.ini ; MaptileStaticUUID = "00000000-0000-0000-0000-000000000000" [Permissions] ;# {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 = true ;; 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 = true ;# {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 = false ;# {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 [RegionReady] ; - send an alert as json to a service ; alert_uri = "http://myappserver.net/my_handler/" [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 ; By default, OpenSimulator does not allow scripts to make HTTP calls to addresses on the simulator's LAN. ; See the OutboundDisallowForUserScripts parameter in OpenSimDefaults.ini for more information on this filter. ; If you need to allow scripts to make some LAN calls use the OutboundDisallowForUserScriptsExcept parameter below. ; We recommend that you do not override OutboundDisallowForUserScripts directly unless you are very sure about what you're doing. ; ; You can whitelist individual endpoints by IP or FQDN, e.g. ; ; OutboundDisallowForUserScriptsExcept = 192.168.1.3:8003 ; ; You can specify multiple addresses by separating them with a bar. For example, ; ; OutboundDisallowForUserScriptsExcept = 192.168.1.3:8003|myinternalserver:8000 ; ; If an address if given without a port number then port 80 is assumed ; ; You can also specify a network range in CIDR notation to whitelist, e.g. ; ; OutboundDisallowForUserScriptsExcept = 192.168.1.0/24 ; ; to whitelist all ports on addresses 192.168.1.0 to 192.168.1.255 ; To specify an individual IP address use the /32 netmask ; ; OutboundDisallowForUserScriptsExcept = 192.168.1.2/32 ; ; See http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing#CIDR_notation for more information on CIDR notation ;# {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 = "${Const|HostName}" ;# {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)" ;; The follow 3 variables are for HTTP Basic Authentication for the Robust services. ;; Use this if your central services in port 8003 need to be accessible on the Internet ;; but you want to protect them from unauthorized access. The username and password ;; here need to match the ones in the Robust service configuration. ; AuthType = "BasicHttpAuthentication" ; HttpAuthUsername = "some_username" ; HttpAuthPassword = "some_password" ;; ;; Any of these 3 variables above can be overriden in any of the service sections. [XMLRPC] ;# {XmlRpcRouterModule} {} {Module used to route incoming llRemoteData calls} {XmlRpcRouterModule XmlRpcGridRouterModule} XmlRpcRouterModule ;; If enabled and set to XmlRpcRouterModule, 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 ;; ;; If enabled and set to XmlRpcGridRouterModule, newly created channels ;; will be registered with an external service via a configured uri ;XmlRpcRouterModule = "XmlRpcRouterModule" ;# {XmlRpcPort} {} {Port for incoming llRemoteData xmlrpc calls} {} 20800 ;XmlRpcPort = 20800 ;# {XmlRpcHubURI} {XmlRpcRouterModule} {URI for external service used to register xmlrpc channels created in the simulator. This depends on XmlRpcRouterModule being set to XmlRpcGridRouterModule} {} http://example.com ;; If XmlRpcRouterModule is set to XmlRpcGridRouterModule, the simulator ;; will use this address to register xmlrpc channels on the external ;; service ; XmlRpcHubURI = http://example.com [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 = true [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 ;; "" -- 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" Cap_AvatarPickerSearch = "localhost" Cap_GetDisplayNames = "localhost" [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 [Textures] ; If true, textures generated dynamically (i.e. through osSetDynamicTextureData() and similar OSSL functions) are reused where possible ; Chiefly, reuse occurs if a texture has already been generated with identical data and settings, and that texture contains no dynamic components ; (e.g. images pulled from an external HTTP address). ; Reusing previously generated textures results in a much faster update on the viewer but may cause issues if the viewer didn't receive all resolutions of the texture. ; Currently, it will also increase asset cache use since temporary dynamic textures are no longer deleted. ; Hence, currently considered experimental. ; Default is false. ReuseDynamicTextures = false [BulletSim] ;# {AvatarToAvatarCollisionsByDefault} {[Startup]physics:BulletSim} {Should avatars collide with each other?} {true false} true ; AvatarToAvatarCollisionsByDefault = true ; Terrain implementation can use either Bullet's heightField or BulletSim can build ; a mesh. 0=heightField, 1=mesh ; TerrainImplementation = 1 ; 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 = 24 ; Year length in days ;year_length = 365 ; Day to Night Ratio ;day_night_offset = 1.0 ; 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] ;# {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 [Cloud] ; Enable this to generate classic particle clouds above the sim. ; default is disabled - turn it on here ;enabled = true ; 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] ;# {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 [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" [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 = false ;# {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 ;; New way of specifying data services, one per service ;DATA_SRV_MISearch = "http://metaverseink.com/cgi-bin/register.py" [XEngine] ;; 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 = true ;# {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 = false ;# {AllowedCompilers} {Enabled:true} {Languages to allow (comma separated)?} {} lsl ;; List of allowed languages (lsl,vb,cs) ;; AllowedCompilers=lsl,cs,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 [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 [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"