*Cleaned up Configuration Setup questions

*Added Configuration option for Master User Avatar name and (in sandbox mode) password
*Added support for Master User in sandbox mode. Support lacks for grid mode still.
**Grid support is possible when remotely fetching avatar data by name and UUID is available
*Currently lacks parcel buying support. For now, in sandbox mode, log into master user information to own the parcel
zircon^2
mingchen 2007-06-05 00:26:37 +00:00
parent 4fcb4fdec3
commit 3c261876a1
4 changed files with 96 additions and 34 deletions

View File

@ -254,9 +254,16 @@ namespace OpenSim.UserServer
string mdPassword = EncodePassword(password); string mdPassword = EncodePassword(password);
Console.WriteLine("with password: " + mdPassword); Console.WriteLine("with password: " + mdPassword);
this.userManager.CreateNewProfile(firstName, lastName, mdPassword); this.userManager.CreateNewProfile(firstName, lastName, mdPassword);
return true; return true;
} }
public UserProfile GetProfileByName(string firstName, string lastName)
{
return this.userManager.GetProfileByName(firstName, lastName);
}
//IUserServer implementation //IUserServer implementation
public AgentInventory RequestAgentsInventory(LLUUID agentID) public AgentInventory RequestAgentsInventory(LLUUID agentID)
{ {

View File

@ -26,7 +26,10 @@ namespace OpenSim
public string UserRecvKey = ""; public string UserRecvKey = "";
private bool isSandbox; private bool isSandbox;
public string RegionOwnerName = ""; public string MasterAvatarFirstName = "";
public string MasterAvatarLastName = "";
public string MasterAvatarSandboxPassword = "";
public LLUUID MasterAvatarAssignedUUID = LLUUID.Zero;
public string DataStore; public string DataStore;
@ -105,7 +108,7 @@ namespace OpenSim
attri = configData.GetAttribute("SimName"); attri = configData.GetAttribute("SimName");
if (attri == "") if (attri == "")
{ {
this.RegionName = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("Name", "OpenSim test"); this.RegionName = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("GENERAL SETTING: Simulator Name", "OpenSim Island");
configData.SetAttribute("SimName", this.RegionName); configData.SetAttribute("SimName", this.RegionName);
} }
else else
@ -117,7 +120,7 @@ namespace OpenSim
attri = configData.GetAttribute("SimLocationX"); attri = configData.GetAttribute("SimLocationX");
if (attri == "") if (attri == "")
{ {
string location = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("Grid Location X", "997"); string location = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("GENERAL SETTING: Grid Location X", "997");
configData.SetAttribute("SimLocationX", location); configData.SetAttribute("SimLocationX", location);
this.RegionLocX = (uint)Convert.ToUInt32(location); this.RegionLocX = (uint)Convert.ToUInt32(location);
} }
@ -130,7 +133,7 @@ namespace OpenSim
attri = configData.GetAttribute("SimLocationY"); attri = configData.GetAttribute("SimLocationY");
if (attri == "") if (attri == "")
{ {
string location = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("Grid Location Y", "996"); string location = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("GENERAL SETTING: Grid Location Y", "996");
configData.SetAttribute("SimLocationY", location); configData.SetAttribute("SimLocationY", location);
this.RegionLocY = (uint)Convert.ToUInt32(location); this.RegionLocY = (uint)Convert.ToUInt32(location);
} }
@ -144,7 +147,7 @@ namespace OpenSim
attri = configData.GetAttribute("Datastore"); attri = configData.GetAttribute("Datastore");
if (attri == "") if (attri == "")
{ {
string datastore = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("Filename for local storage", "localworld.yap"); string datastore = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("GENERAL SETTING: Filename for local world storage", "localworld.yap");
configData.SetAttribute("Datastore", datastore); configData.SetAttribute("Datastore", datastore);
this.DataStore = datastore; this.DataStore = datastore;
} }
@ -158,7 +161,7 @@ namespace OpenSim
attri = configData.GetAttribute("SimListenPort"); attri = configData.GetAttribute("SimListenPort");
if (attri == "") if (attri == "")
{ {
string port = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("UDP port for client connections", "9000"); string port = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("GENERAL SETTING: UDP port for client connections", "9000");
configData.SetAttribute("SimListenPort", port); configData.SetAttribute("SimListenPort", port);
this.IPListenPort = Convert.ToInt32(port); this.IPListenPort = Convert.ToInt32(port);
} }
@ -171,7 +174,7 @@ namespace OpenSim
attri = configData.GetAttribute("SimListenAddress"); attri = configData.GetAttribute("SimListenAddress");
if (attri == "") if (attri == "")
{ {
this.IPListenAddr = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("IP Address to listen on for client connections", "127.0.0.1"); this.IPListenAddr = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("GENERAL SETTING: IP Address to listen on for client connections", "127.0.0.1");
configData.SetAttribute("SimListenAddress", this.IPListenAddr); configData.SetAttribute("SimListenAddress", this.IPListenAddr);
} }
else else
@ -202,7 +205,7 @@ namespace OpenSim
attri = configData.GetAttribute("TerrainFile"); attri = configData.GetAttribute("TerrainFile");
if (attri == "") if (attri == "")
{ {
this.TerrainFile = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("Terrain file default", "default.r32"); this.TerrainFile = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("GENERAL SETTING: Default Terrain File", "default.r32");
configData.SetAttribute("TerrainFile", this.TerrainFile); configData.SetAttribute("TerrainFile", this.TerrainFile);
} }
else else
@ -214,7 +217,7 @@ namespace OpenSim
attri = configData.GetAttribute("TerrainMultiplier"); attri = configData.GetAttribute("TerrainMultiplier");
if (attri == "") if (attri == "")
{ {
string re = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("Terrain multiplier", "60.0"); string re = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("GENERAL SETTING: Terrain Height Multiplier", "60.0");
this.TerrainMultiplier = Convert.ToDouble(re, CultureInfo.InvariantCulture); this.TerrainMultiplier = Convert.ToDouble(re, CultureInfo.InvariantCulture);
configData.SetAttribute("TerrainMultiplier", this.TerrainMultiplier.ToString()); configData.SetAttribute("TerrainMultiplier", this.TerrainMultiplier.ToString());
} }
@ -223,21 +226,48 @@ namespace OpenSim
this.TerrainMultiplier = Convert.ToDouble(attri); this.TerrainMultiplier = Convert.ToDouble(attri);
} }
attri = ""; attri = "";
attri = configData.GetAttribute("RegionOwnerName"); attri = configData.GetAttribute("MasterAvatarFirstName");
if (attri == "") if (attri == "")
{ {
string name = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("Region Owner Avatar Name", "Test User"); this.MasterAvatarFirstName = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("GENERAL SETTING: First name of Master Avatar", "Test");
this.RegionOwnerName = name;
configData.SetAttribute("RegionOwnerName", this.RegionOwnerName); configData.SetAttribute("MasterAvatarFirstName", this.MasterAvatarFirstName);
} }
else else
{ {
this.RegionOwnerName = attri; this.MasterAvatarFirstName = attri;
} }
if (!isSandbox) attri = "";
attri = configData.GetAttribute("MasterAvatarLastName");
if (attri == "")
{
this.MasterAvatarLastName = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("GENERAL SETTING: Last name of Master Avatar", "User");
configData.SetAttribute("MasterAvatarLastName", this.MasterAvatarLastName);
}
else
{
this.MasterAvatarLastName = attri;
}
if (isSandbox) //Sandbox Mode Settings
{
attri = "";
attri = configData.GetAttribute("MasterAvatarSandboxPassword");
if (attri == "")
{
this.MasterAvatarSandboxPassword = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("SANDBOX MODE SETTING: Password of Master Avatar", "test");
configData.SetAttribute("MasterAvatarSandboxPassword", this.MasterAvatarSandboxPassword);
}
else
{
this.MasterAvatarSandboxPassword = attri;
}
}
else //Grid Mode Settings
{ {
//shouldn't be reading this data in here, it should be up to the classes implementing the server interfaces to read what they need from the config object //shouldn't be reading this data in here, it should be up to the classes implementing the server interfaces to read what they need from the config object
@ -246,7 +276,7 @@ namespace OpenSim
attri = configData.GetAttribute("GridServerURL"); attri = configData.GetAttribute("GridServerURL");
if (attri == "") if (attri == "")
{ {
this.GridURL = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("Grid server URL","http://127.0.0.1:8001/"); this.GridURL = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("GRID MODE SETTING: Grid server URL", "http://127.0.0.1:8001/");
configData.SetAttribute("GridServerURL", this.GridURL); configData.SetAttribute("GridServerURL", this.GridURL);
} }
else else
@ -259,7 +289,7 @@ namespace OpenSim
attri = configData.GetAttribute("GridSendKey"); attri = configData.GetAttribute("GridSendKey");
if (attri == "") if (attri == "")
{ {
this.GridSendKey = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("Key to send to grid server","null"); this.GridSendKey = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("GRID MODE SETTING: Key to send to grid server", "null");
configData.SetAttribute("GridSendKey", this.GridSendKey); configData.SetAttribute("GridSendKey", this.GridSendKey);
} }
else else
@ -272,7 +302,7 @@ namespace OpenSim
attri = configData.GetAttribute("GridRecvKey"); attri = configData.GetAttribute("GridRecvKey");
if (attri == "") if (attri == "")
{ {
this.GridRecvKey = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("Key to expect from grid server","null"); this.GridRecvKey = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("GRID MODE SETTING: Key to expect from grid server", "null");
configData.SetAttribute("GridRecvKey", this.GridRecvKey); configData.SetAttribute("GridRecvKey", this.GridRecvKey);
} }
else else
@ -284,8 +314,8 @@ namespace OpenSim
attri = configData.GetAttribute("AssetServerURL"); attri = configData.GetAttribute("AssetServerURL");
if (attri == "") if (attri == "")
{ {
this.AssetURL = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("Asset server URL", "http://127.0.0.1:8003/"); this.AssetURL = OpenSim.Framework.Console.MainConsole.Instance.CmdPrompt("GRID MODE SETTING: Asset server URL", "http://127.0.0.1:8003/");
configData.SetAttribute("AssetServerURL", this.GridURL); configData.SetAttribute("AssetServerURL", this.AssetURL);
} }
else else
{ {
@ -293,6 +323,7 @@ namespace OpenSim
} }
} }
this.RegionHandle = Util.UIntsToLong((RegionLocX * 256), (RegionLocY * 256)); this.RegionHandle = Util.UIntsToLong((RegionLocX * 256), (RegionLocY * 256));
if (!this.isSandbox) if (!this.isSandbox)
{ {
@ -306,8 +337,8 @@ namespace OpenSim
OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.MEDIUM,e.ToString()); OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.MEDIUM,e.ToString());
} }
OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW,"Sim settings loaded:"); OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW,"Simulator Settings Loaded");
OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "UUID: " + this.SimUUID.ToStringHyphenated()); /* OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "UUID: " + this.SimUUID.ToStringHyphenated());
OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "Name: " + this.RegionName); OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "Name: " + this.RegionName);
OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "Region Location: [" + this.RegionLocX.ToString() + "," + this.RegionLocY + "]"); OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "Region Location: [" + this.RegionLocX.ToString() + "," + this.RegionLocY + "]");
OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "Region Handle: " + this.RegionHandle.ToString()); OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "Region Handle: " + this.RegionHandle.ToString());
@ -316,7 +347,7 @@ namespace OpenSim
OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "Asset URL: " + this.AssetURL); OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "Asset URL: " + this.AssetURL);
OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "Asset key: " + this.AssetSendKey); OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "Asset key: " + this.AssetSendKey);
OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "Grid URL: " + this.GridURL); OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "Grid URL: " + this.GridURL);
OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "Grid key: " + this.GridSendKey); OpenSim.Framework.Console.MainConsole.Instance.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "Grid key: " + this.GridSendKey); */
} }
} }
} }

View File

@ -351,10 +351,10 @@ namespace OpenSim.RegionServer.world
fullSimParcel.parcelData.parcelName = "Your Sim Parcel"; fullSimParcel.parcelData.parcelName = "Your Sim Parcel";
fullSimParcel.parcelData.parcelDesc = ""; fullSimParcel.parcelData.parcelDesc = "";
fullSimParcel.parcelData.ownerID = LLUUID.Zero; fullSimParcel.parcelData.ownerID = m_world.m_regInfo.MasterAvatarAssignedUUID;
fullSimParcel.parcelData.salePrice = -1; fullSimParcel.parcelData.salePrice = 1;
fullSimParcel.parcelData.parcelFlags = libsecondlife.Parcel.ParcelFlags.None; fullSimParcel.parcelData.parcelFlags = libsecondlife.Parcel.ParcelFlags.ForSale;
fullSimParcel.parcelData.parcelStatus = libsecondlife.Parcel.ParcelStatus.Abandoned; fullSimParcel.parcelData.parcelStatus = libsecondlife.Parcel.ParcelStatus.Leased;
addParcel(fullSimParcel); addParcel(fullSimParcel);

View File

@ -184,6 +184,36 @@ namespace OpenSim
// Start UDP server // Start UDP server
this.m_udpServer.ServerListener(); this.m_udpServer.ServerListener();
//Setup Master Avatar
m_console.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "Main.cs:Startup() - Setting up Master Avatar");
if (this.m_sandbox)
{
OpenSim.Framework.User.UserProfile masterUser = adminLoginServer.LocalUserManager.GetProfileByName(this.regionData.MasterAvatarFirstName, this.regionData.MasterAvatarLastName);
if(masterUser == null)
{
m_console.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "Main.cs:Startup() - Sandbox Mode; Master Avatar is a new user; creating account.");
adminLoginServer.CreateUserAccount(this.regionData.MasterAvatarFirstName, this.regionData.MasterAvatarLastName, this.regionData.MasterAvatarSandboxPassword);
masterUser = adminLoginServer.LocalUserManager.GetProfileByName(this.regionData.MasterAvatarFirstName, this.regionData.MasterAvatarLastName);
if(masterUser == null) //Still NULL?!!?! OMG FAIL!
{
throw new Exception("Failure to create master user account");
}
}
m_console.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "Main.cs:Startup() - Master User UUID: " + masterUser.UUID.ToStringHyphenated());
regionData.MasterAvatarAssignedUUID = masterUser.UUID;
}
else
{
m_console.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "Main.cs:Startup() - Grid Mode; Do not know how to get the user's master key yet!");
}
Console.WriteLine("Creating ParcelManager");
LocalWorld.parcelManager = new OpenSim.RegionServer.world.ParcelManager(this.LocalWorld);
Console.WriteLine("Loading Parcels from DB...");
LocalWorld.localStorage.LoadParcels((ILocalStorageParcelReceiver)LocalWorld.parcelManager);
m_heartbeatTimer.Enabled = true; m_heartbeatTimer.Enabled = true;
m_heartbeatTimer.Interval = 100; m_heartbeatTimer.Interval = 100;
m_heartbeatTimer.Elapsed += new ElapsedEventHandler(this.Heartbeat); m_heartbeatTimer.Elapsed += new ElapsedEventHandler(this.Heartbeat);
@ -254,12 +284,6 @@ namespace OpenSim
LocalWorld.LoadStorageDLL("OpenSim.Storage.LocalStorageDb4o.dll"); //all these dll names shouldn't be hard coded. LocalWorld.LoadStorageDLL("OpenSim.Storage.LocalStorageDb4o.dll"); //all these dll names shouldn't be hard coded.
LocalWorld.LoadWorldMap(); LocalWorld.LoadWorldMap();
Console.WriteLine("Creating ParcelManager");
LocalWorld.parcelManager = new OpenSim.RegionServer.world.ParcelManager(this.LocalWorld);
Console.WriteLine("Loading Parcels from DB...");
LocalWorld.localStorage.LoadParcels((ILocalStorageParcelReceiver)LocalWorld.parcelManager);
m_console.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "Main.cs:Startup() - Starting up messaging system"); m_console.WriteLine(OpenSim.Framework.Console.LogPriority.LOW, "Main.cs:Startup() - Starting up messaging system");
LocalWorld.PhysScene = this.physManager.GetPhysicsScene(this.m_physicsEngine); LocalWorld.PhysScene = this.physManager.GetPhysicsScene(this.m_physicsEngine);
LocalWorld.PhysScene.SetTerrain(LocalWorld.Terrain.getHeights1D()); LocalWorld.PhysScene.SetTerrain(LocalWorld.Terrain.getHeights1D());