; 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] ; 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 tag), ; except that everything is also enclosed in a tag. ; regionload_webserver_url = "http://example.com/regions.xml"; ; 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 ; Should avatars in neighbor sims see objects in this sim? see_into_this_sim_from_neighbor = true ; ## ; ## PHYSICS ; ## ; 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) ; This is commented so it will come on automatically once it's ; supported. ; enableprejump = true ; 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 [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 = true ; 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" [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 = "" ; This last one is supported by OpenSim, but may ; lead to poor sim performance if served by the simulators, ; so it is disabled by default. Cap_WebFetchInventoryDescendents = "" [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 30m say_distance = 30 ; 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 [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 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.5 CcdSweptSphereRadius = 0.2 ; 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 ; 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 : : ;;msgformat = "PRIVMSG {0} :<{1} in {2}>: {3}" ;;for : - : ;msgformat = "PRIVMSG {0} : {3} - {1} of {2}" ;;for : - from : ;;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 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 - ; Enables selling things for $0 SellEnabled = "false" ; Money Unit fee to upload textures, animations etc PriceUpload = 0 ; Money Unit fee to create groups 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 ; You can also use script creators as the uuid ; Creators_osSetRegionWaterHeight = , ... ; 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}" [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 = false ; 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 = false ; - send an alert as json to a service ; alert_uri = "http://myappserver.net/my_handler/" [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"