From 8c56f04f820d97e59d093500f1a8e6795061fbf3 Mon Sep 17 00:00:00 2001 From: Justin Clark-Casey (justincc) Date: Wed, 23 Jun 2010 01:21:49 +0100 Subject: add new [RemoteAdmin] settings from Snoopy's create/update, etc user patch to OpenSim.ini.exmaple Also tidies up and comments some existing entries --- bin/OpenSim.ini.example | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/bin/OpenSim.ini.example b/bin/OpenSim.ini.example index aab1a58..f4d9a18 100644 --- a/bin/OpenSim.ini.example +++ b/bin/OpenSim.ini.example @@ -597,21 +597,19 @@ ; Set this to a nonzero value to have remote admin use a different port port = 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: @@ -620,7 +618,6 @@ ; {2} - region UUID ; {3} - region port ; {4} - region name with " ", ":", "/" mapped to "_" - region_file_template = "{0}x{1}-{2}.xml" ; we can limit the number of regions that XmlRpcCreateRegion will @@ -635,6 +632,18 @@ ; 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 -- cgit v1.1 From c404c5fb5405eac24cc8b7cd402eb8d8fb0ff0cf Mon Sep 17 00:00:00 2001 From: Melanie Date: Wed, 23 Jun 2010 21:14:28 +0100 Subject: Thank you, Snoopy, for a patch to reduce sim script startup CPU usage --- .../Framework/Scenes/SceneObjectPartInventory.cs | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs index 866bb6e..3a8f168 100644 --- a/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs +++ b/OpenSim/Region/Framework/Scenes/SceneObjectPartInventory.cs @@ -31,6 +31,7 @@ using System.IO; using System.Collections.Generic; using System.Collections; using System.Reflection; +using System.Threading; using OpenMetaverse; using log4net; using OpenSim.Framework; @@ -200,6 +201,7 @@ namespace OpenSim.Region.Framework.Scenes if ((int)InventoryType.LSL == item.InvType) { CreateScriptInstance(item, startParam, postOnRez, engine, stateSource); + Thread.Sleep(10); // workaround for Mono cpu utilization > 100% bug } } } @@ -257,7 +259,7 @@ namespace OpenSim.Region.Framework.Scenes // m_log.InfoFormat( // "[PRIM INVENTORY]: " + // "Starting script {0}, {1} in prim {2}, {3}", - // item.Name, item.ItemID, Name, UUID); + // item.Name, item.ItemID, m_part.Name, m_part.UUID); if (!m_part.ParentGroup.Scene.Permissions.CanRunScript(item.ItemID, m_part.UUID, item.OwnerID)) return; @@ -293,20 +295,20 @@ namespace OpenSim.Region.Framework.Scenes } else { - if (m_part.ParentGroup.m_savedScriptState != null) - RestoreSavedScriptState(item.OldItemID, item.ItemID); - lock (m_items) { + if (m_part.ParentGroup.m_savedScriptState != null) + RestoreSavedScriptState(item.OldItemID, item.ItemID); + m_items[item.ItemID].PermsMask = 0; m_items[item.ItemID].PermsGranter = UUID.Zero; + + string script = Utils.BytesToString(asset.Data); + m_part.ParentGroup.Scene.EventManager.TriggerRezScript( + m_part.LocalId, item.ItemID, script, startParam, postOnRez, engine, stateSource); + m_part.ParentGroup.AddActiveScriptCount(1); + m_part.ScheduleFullUpdate(); } - - string script = Utils.BytesToString(asset.Data); - m_part.ParentGroup.Scene.EventManager.TriggerRezScript( - m_part.LocalId, item.ItemID, script, startParam, postOnRez, engine, stateSource); - m_part.ParentGroup.AddActiveScriptCount(1); - m_part.ScheduleFullUpdate(); } } } -- cgit v1.1 From 5a071dc7986c5e262d9e9513b07fc59797724e55 Mon Sep 17 00:00:00 2001 From: Melanie Date: Thu, 24 Jun 2010 03:24:38 +0100 Subject: Move loading of parcels to before script start. Scripts using parcel functions can fail if no land is loaded --- OpenSim/Region/Application/OpenSimBase.cs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/OpenSim/Region/Application/OpenSimBase.cs b/OpenSim/Region/Application/OpenSimBase.cs index 83be61e..f535fe8 100644 --- a/OpenSim/Region/Application/OpenSimBase.cs +++ b/OpenSim/Region/Application/OpenSimBase.cs @@ -367,13 +367,13 @@ namespace OpenSim Environment.Exit(1); } + scene.loadAllLandObjectsFromStorage(regionInfo.originRegionID); + scene.EventManager.TriggerParcelPrimCountUpdate(); + // We need to do this after we've initialized the // scripting engines. scene.CreateScriptInstances(); - scene.loadAllLandObjectsFromStorage(regionInfo.originRegionID); - scene.EventManager.TriggerParcelPrimCountUpdate(); - m_sceneManager.Add(scene); if (m_autoCreateClientStack) -- cgit v1.1