mirror of
https://github.com/opensim/opensim.git
synced 2026-05-16 03:36:04 +08:00
Changed the public IsAdministrator back to protected, now checks Config to see whether it is allowed to run or not. Defaults to false (not allowed). To use add the following to OpenSim.ini [LL-Functions] AllowosConsoleCommand=true
266 lines
10 KiB
Plaintext
266 lines
10 KiB
Plaintext
[Startup]
|
|
gridmode = false
|
|
|
|
; ##
|
|
; ## STORAGE
|
|
; ##
|
|
|
|
; *** Prim Storage - only leave one storage_plugin uncommented ***
|
|
; --- The NullStorage stores nothing - effectively disabling persistence:
|
|
storage_plugin = "OpenSim.DataStore.NullStorage.dll"
|
|
|
|
; --- To use sqlite as region storage:
|
|
;storage_plugin = "OpenSim.Framework.Data.SQLite.dll"
|
|
storage_connection_string="URI=file:OpenSim.db,version=3";
|
|
|
|
; --- To use MySQL storage, supply your own connectionstring (this is only an example):
|
|
; note that the supplied account needs create privilegies if you want it to auto-create needed tables.
|
|
; storage_plugin="OpenSim.Framework.Data.MySQL.dll"
|
|
; storage_connection_string="Data Source=localhost;Database=opensim;User ID=opensim;Password=*****;";
|
|
|
|
; turn on experimental storage of prim inventories in the region database
|
|
|
|
; Prim inventory storage is now turned on by default
|
|
; However, this option remains in case it needs to be disabled
|
|
; More details of the current state of this can be found at
|
|
;
|
|
; http://opensimulator.org/wiki/OpenSim:Prim_Inventory_Persistence
|
|
;
|
|
storage_prim_inventories = true
|
|
|
|
; Avatar appearance persistence
|
|
appearance_persist = false
|
|
appearance_connection_string = "Data Source=localhost;Database=avatar_appearance;User ID=root;Password=xxxx;pooling=false;"
|
|
|
|
; Select the type of database to use for asset storage
|
|
;asset_database = "db4o"
|
|
asset_database = "sqlite"
|
|
;asset_database = "grid"
|
|
;asset_database = "mssql"
|
|
|
|
|
|
|
|
; ##
|
|
; ## PHYSICS
|
|
; ##
|
|
|
|
; Select a mesher here. ZeroMesher is save and fast.
|
|
; ZeroMesher also means that the physics engine models the physics of prims
|
|
; sticking to the basic shapes the engine does support. Usually this is only a box.
|
|
; Meshmerizer gives a better handling of complex prims by using triangle meshes.
|
|
; Note, that only ODE physics currently deals with meshed prims in a satisfactoring way
|
|
;
|
|
meshing = ZeroMesher
|
|
;meshing = Meshmerizer
|
|
|
|
; Choose one of the physics engines below
|
|
physics = basicphysics
|
|
;physics = POS
|
|
;physics = OpenDynamicsEngine
|
|
;physics = modified_BulletX
|
|
|
|
|
|
verbose = true
|
|
startup_console_commands_file = "startup_commands.txt"
|
|
shutdown_console_commands_file = "shutdown_commands.txt"
|
|
serverside_object_permissions = false
|
|
|
|
|
|
; if you would like to allow prim to be physical and move by physics with the physical checkbox in the client set this to true.
|
|
physical_prim = true
|
|
|
|
; To run a script every few minutes, set the script filename here
|
|
; timer_Script = "filename"
|
|
|
|
; ##
|
|
; ## ScriptEngine
|
|
; ##
|
|
; These are region modules loaded into each region to provide script support
|
|
; Scripts may be everything from LSL or C# scripts put in prims to whole game systems that controls the whole grid.
|
|
; You can load multiple modules by separating them with a coma.
|
|
;
|
|
; Example:
|
|
;script_engine = OpenSim.Region.ScriptEngine.DotNetEngine.dll,OpenSim.Region.ScriptEngine.RemoteServer.dll
|
|
;
|
|
; This is the current and most stable ScriptEngine:
|
|
script_engine = OpenSim.Region.ScriptEngine.DotNetEngine.dll
|
|
|
|
;Experimental remote ScriptServer plugin (does not currently work):
|
|
;script_engine = OpenSim.Region.ScriptEngine.RemoteServer.dll
|
|
|
|
|
|
[StandAlone]
|
|
accounts_authenticate = true
|
|
welcome_message = "Welcome to OpenSim"
|
|
inventory_plugin = "OpenSim.Framework.Data.SQLite.dll"
|
|
|
|
; User Data Database provider
|
|
; userDatabase_plugin = "OpenSim.Framework.Data.DB4o.dll"
|
|
; userDatabase_plugin = "OpenSim.Framework.Data.MySQL.dll"
|
|
userDatabase_plugin = "OpenSim.Framework.Data.SQLite.dll"
|
|
|
|
default_location_x = 1000
|
|
default_location_y = 1000
|
|
dump_assets_to_file = false
|
|
|
|
[Network]
|
|
http_listener_port = 9000
|
|
remoting_listener_port = 8895
|
|
|
|
; Uncomment below to enable llRemoteData/remote channels
|
|
; remoteDataPort = 20800
|
|
|
|
grid_server_url = "http://127.0.0.1:8001"
|
|
grid_send_key = "null"
|
|
grid_recv_key = "null"
|
|
|
|
user_server_url = "http://127.0.0.1:8002"
|
|
user_send_key = "null"
|
|
user_recv_key = "null"
|
|
|
|
asset_server_url = "http://127.0.0.1:8003"
|
|
|
|
inventory_server_url = "http://127.0.0.1:8004"
|
|
|
|
[Chat]
|
|
whisper_distance = 10
|
|
say_distance = 30
|
|
shout_distance = 100
|
|
|
|
; Uncomment the following for IRC bridge
|
|
; experimental, so if it breaks... keep both parts... yada yada
|
|
; also, not good error detection when it fails
|
|
;[IRC]
|
|
;server = name.of.irc.server.on.the.net
|
|
;nick = OpenSimBotNameProbablyMakeThisShorter
|
|
;channel = #the_irc_channel_you_want_to_connect_to
|
|
;port = 6667
|
|
;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}"
|
|
|
|
; Uncomment the following to control the progression of daytime
|
|
; in the Sim. The defaults are what is shown below
|
|
;[Sun]
|
|
; number of wall clock hours for an opensim day. 24.0 would mean realtime
|
|
;day_length = 0.5
|
|
|
|
; send a Sun update ever frame_rate # of frames. A lower number will
|
|
; make for smoother sun transition at the cost of network
|
|
;frame_rate = 100
|
|
|
|
|
|
[ScriptEngine.DotNetEngine]
|
|
;
|
|
; These settings are specific to DotNetEngine script engine
|
|
; Other script engines based on OpenSim.Region.ScriptEngine.Common.dll will have almost identical settings, but in another section of this config file.
|
|
;
|
|
|
|
; When a script receives an event the event is queued.
|
|
; Any free thread will start executing this event. One script can only have one event executed simultaneously.
|
|
; If you have only one thread, and one script has a loop or does a lot of work, then no other scripts can run at the same time.
|
|
; Same if you have 10 threads, then only 10 scripts can be run simultaneously.
|
|
; But because most scripts exit after their task, the threads are free to go on to the next script.
|
|
|
|
; Refresh ScriptEngine config options (these settings) every xx seconds
|
|
; 0 = Do not refresh
|
|
; Set it to number of seconds between refresh, for example 30.
|
|
; Will allow you to change ScriptEngine settings while server is running just by editing this file.
|
|
; For example to increase or decrease number of threads.
|
|
; NOTE! Disabled for now. Feature does not work.
|
|
RefreshConfig=0
|
|
|
|
; Number of threads to use for script event execution
|
|
; Threads are shared across all regions
|
|
NumberOfScriptThreads=2
|
|
|
|
; Script event execution thread priority inside application.
|
|
; Valid values: Lowest, BelowNormal, Normal, AboveNormal, Highest
|
|
ScriptThreadPriority=BelowNormal
|
|
|
|
; Should the script threads be private for each region?
|
|
; true: Each region will get <NumberOfScriptThreads> dedicated to scripts within that region
|
|
; Number of threads will be <NumberOfScriptThreads>*<NumberOfRegions>
|
|
; false: All regions share <NumberOfScriptThreads> for all their scripts
|
|
; Note! If you run multiple script engines based on "OpenSim.Region.ScriptEngine.Common" then all of them will share the same threads.
|
|
; *** This setting will not work until you restart OpenSim
|
|
PrivateRegionThreads=false
|
|
|
|
; How long MAX should a script event be allowed to run (per event execution)?
|
|
; Do not set this too low (like 50ms) as there are some time wasted in simply executing a function
|
|
; There is also a small speed penalty for every kill that is made
|
|
MaxEventExecutionTimeMs=5000
|
|
|
|
; Should we enable the max script event execution thread to look for scripts that exceed their timeslice?
|
|
EnforceMaxEventExecutionTime=true
|
|
|
|
; Should we stop the script completely when time exceeds?
|
|
; This is useful if you have a high <MaxEventExecutionTimeMs> and want to deactivate scripts that go wrong
|
|
; Note that for example physics engine can slow down the system and make scripts spend more time
|
|
DeactivateScriptOnTimeout=false
|
|
|
|
; If no scripts have executed in this pass how long should we sleep before checking again
|
|
; Impact:
|
|
; Too low and you will waste lots of CPU
|
|
; Too high and people touching object or similar will have to wait up to this amount of time before script responding
|
|
SleepTimeIfNoScriptExecutionMs=50
|
|
|
|
; AppDomains are used for two things:
|
|
; * Security: Scripts inside AppDomains are limited in permissions.
|
|
; * Script unloading: When a script is deactivated it can not be unloaded. Only whole AppDomains can be unloaded.
|
|
; AppDomains are therefore only unloaded once ALL active scripts inside it has been deactivated (removed from prims).
|
|
; Each AppDomain has some memory overhead. But leaving dead scripts in memory also has memory overhead.
|
|
ScriptsPerAppDomain=1
|
|
|
|
; Script loading / unloading sleep
|
|
; How long load/unload thread should sleep if there is nothing to do
|
|
; Higher value makes it respond slower when scripts are added/removed from prims
|
|
; But once active it will process all in queue before sleeping again
|
|
ScriptLoadUnloadLoopms=30
|
|
|
|
; Loading and unloading of scripts is queued and processed by a separate thread.
|
|
; This thread can either be shared among all regions, or private (one thread per region)
|
|
PrivateScriptLoadUnloadThread=false
|
|
|
|
; Maximum number of items in load/unload queue before we start rejecting loads
|
|
; Note that we will only be rejecting load. Unloads will still be able to queue.
|
|
LoadUnloadMaxQueueSize=100
|
|
|
|
; Maximum number of (LSL) events that can be queued before new events are ignored.
|
|
EventExecutionMaxQueueSize=300
|
|
|
|
; Async LL command sleep
|
|
; If no async LL commands are waiting, how long should thread sleep before checking again
|
|
; Async LL commands are LSL-commands that causes an event to be fired back with result
|
|
AsyncLLCommandLoopms=50
|
|
|
|
; When script is converted from LSL to C#, or just plain compiled, a copy of the script source will be put in the ScriptEngine folder
|
|
WriteScriptSourceToDebugFile=true
|
|
|
|
; Specify default script compiler
|
|
; If you do not specify //cs, //vb, //js or //lsl tag as the first characters of your script then the default compiler will be chosen
|
|
; Valid languages are: lsl, cs, js and vb
|
|
DefaultCompileLanguage=lsl
|
|
|
|
; Specify what compilers are allowed to be used
|
|
; Note vb only works on Windows for now (Mono lacks VB compile support)
|
|
; Valid languages are: lsl, cs, js and vb
|
|
AllowedCompilers=lsl,cs,js,vb
|
|
|
|
; Compile scripts with debugging
|
|
; Probably a thousand times slower, but gives you a line number when something goes wrong.
|
|
CompileWithDebugInformation=true
|
|
|
|
; Remove old scripts on next startup
|
|
CleanUpOldScriptsOnStartup=true
|
|
|
|
[LL-Functions]
|
|
; Set the following to true to allow administrator owned scripts to execute console commands
|
|
AllowosConsoleCommand=false
|
|
|