diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs index 00fa5dbee4..4671ed0ea0 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs @@ -1435,6 +1435,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP mapReply.AgentData.AgentID = AgentId; mapReply.Data = new MapBlockReplyPacket.DataBlock[mapBlocks2.Length]; + mapReply.Size = new MapBlockReplyPacket.SizeBlock[mapBlocks2.Length]; mapReply.AgentData.Flags = flag; for (int i = 0; i < mapBlocks2.Length; i++) @@ -1449,6 +1450,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP mapReply.Data[i].RegionFlags = mapBlocks2[i].RegionFlags; mapReply.Data[i].Access = mapBlocks2[i].Access; mapReply.Data[i].Agents = mapBlocks2[i].Agents; + + // TODO: hookup varregion sim size here + mapReply.Size[i] = new MapBlockReplyPacket.SizeBlock(); + mapReply.Size[i].SizeX = 256; + mapReply.Size[i].SizeY = 256; } OutPacket(mapReply, ThrottleOutPacketType.Land); } diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs index 3bd1ef164e..c0a4e56cea 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLUDPServer.cs @@ -132,6 +132,19 @@ namespace OpenSim.Region.ClientStack.LindenUDP stat => stat.Value = m_udpServer.IncomingOrphanedPacketCount, StatVerbosity.Info)); + StatsManager.RegisterStat( + new Stat( + "IncomingPacketsResentCount", + "Number of inbound packets that clients indicate are resends.", + "", + "", + "clientstack", + scene.Name, + StatType.Pull, + MeasuresOfInterest.AverageChangeOverTime, + stat => stat.Value = m_udpServer.IncomingPacketsResentCount, + StatVerbosity.Debug)); + StatsManager.RegisterStat( new Stat( "OutgoingUDPSendsCount", @@ -317,6 +330,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP /// internal int PacketsSentCount { get; set; } + /// + /// Record how many incoming packets are indicated as resends by clients. + /// + internal int IncomingPacketsResentCount { get; set; } + /// /// Record how many inbound packets could not be recognized as LLUDP packets. /// @@ -1467,6 +1485,11 @@ namespace OpenSim.Region.ClientStack.LindenUDP #region Incoming Packet Accounting + // We're not going to worry about interlock yet since its not currently critical that this total count + // is 100% correct + if (packet.Header.Resent) + IncomingPacketsResentCount++; + // Check the archive of received reliable packet IDs to see whether we already received this packet if (packet.Header.Reliable && !udpClient.PacketArchive.TryEnqueue(packet.Header.Sequence)) { diff --git a/OpenSim/Services/UserAccountService/GridUserService.cs b/OpenSim/Services/UserAccountService/GridUserService.cs index 944411f2c8..bef16910b4 100644 --- a/OpenSim/Services/UserAccountService/GridUserService.cs +++ b/OpenSim/Services/UserAccountService/GridUserService.cs @@ -194,7 +194,8 @@ namespace OpenSim.Services.UserAccountService public bool SetLastPosition(string userID, UUID sessionID, UUID regionID, Vector3 lastPosition, Vector3 lastLookAt) { - m_log.DebugFormat("[GRID USER SERVICE]: SetLastPosition for {0}", userID); +// m_log.DebugFormat("[GRID USER SERVICE]: SetLastPosition for {0}", userID); + GridUserData d = m_Database.Get(userID); if (d == null) { diff --git a/OpenSim/Tools/pCampBot/Bot.cs b/OpenSim/Tools/pCampBot/Bot.cs index ccc24fa3c0..de464abbee 100644 --- a/OpenSim/Tools/pCampBot/Bot.cs +++ b/OpenSim/Tools/pCampBot/Bot.cs @@ -264,9 +264,10 @@ namespace pCampBot newClient.Throttle.Total = 400000; } - newClient.Network.LoginProgress += this.Network_LoginProgress; - newClient.Network.SimConnected += this.Network_SimConnected; - newClient.Network.Disconnected += this.Network_OnDisconnected; + newClient.Network.LoginProgress += Network_LoginProgress; + newClient.Network.SimConnected += Network_SimConnected; + newClient.Network.SimDisconnected += Network_SimDisconnected; + newClient.Network.Disconnected += Network_OnDisconnected; newClient.Objects.ObjectUpdate += Objects_NewPrim; Client = newClient; @@ -276,7 +277,7 @@ namespace pCampBot //add additional steps and/or things the bot should do private void Action() { - while (ConnectionState != ConnectionState.Disconnecting) + while (ConnectionState == ConnectionState.Connected) { lock (Behaviours) { @@ -583,7 +584,13 @@ namespace pCampBot public void Network_SimConnected(object sender, SimConnectedEventArgs args) { m_log.DebugFormat( - "[BOT]: Bot {0} connected to {1} at {2}", Name, args.Simulator.Name, args.Simulator.IPEndPoint); + "[BOT]: Bot {0} connected to region {1} at {2}", Name, args.Simulator.Name, args.Simulator.IPEndPoint); + } + + public void Network_SimDisconnected(object sender, SimDisconnectedEventArgs args) + { + m_log.DebugFormat( + "[BOT]: Bot {0} disconnected from region {1} at {2}", Name, args.Simulator.Name, args.Simulator.IPEndPoint); } public void Network_OnDisconnected(object sender, DisconnectedEventArgs args) @@ -591,7 +598,7 @@ namespace pCampBot ConnectionState = ConnectionState.Disconnected; m_log.DebugFormat( - "[BOT]: Bot {0} disconnected reason {1}, message {2}", Name, args.Reason, args.Message); + "[BOT]: Bot {0} disconnected from grid, reason {1}, message {2}", Name, args.Reason, args.Message); // m_log.ErrorFormat("Fired Network_OnDisconnected"); diff --git a/bin/OpenMetaverse.Rendering.Meshmerizer.dll b/bin/OpenMetaverse.Rendering.Meshmerizer.dll index e63593e5ed..052490d868 100755 Binary files a/bin/OpenMetaverse.Rendering.Meshmerizer.dll and b/bin/OpenMetaverse.Rendering.Meshmerizer.dll differ diff --git a/bin/OpenMetaverse.StructuredData.dll b/bin/OpenMetaverse.StructuredData.dll index d6a3247ca4..8b920bd686 100755 Binary files a/bin/OpenMetaverse.StructuredData.dll and b/bin/OpenMetaverse.StructuredData.dll differ diff --git a/bin/OpenMetaverse.XML b/bin/OpenMetaverse.XML index 457cbe12f3..6e35a04482 100644 --- a/bin/OpenMetaverse.XML +++ b/bin/OpenMetaverse.XML @@ -7557,6 +7557,9 @@ + + + @@ -9160,6 +9163,13 @@ A byte array containing raw texture data + + + Create a byte array containing 32-bit RGBA data with a bottom-left + origin, suitable for feeding directly into OpenGL + + A byte array containing raw texture data + Represents an Animation @@ -11537,6 +11547,26 @@ A that represents the ending Y size of the particle Minimum value is 0, maximum value is 4 + + A that represents the start glow value + Minimum value is 0, maximum value is 1 + + + A that represents the end glow value + Minimum value is 0, maximum value is 1 + + + OpenGL blend function to use at particle source + + + OpenGL blend function to use at particle destination + + + + Can this particle system be packed in a legacy compatible way + + True if the particle system doesn't use new particle system features + Decodes a byte[] array into a ParticleSystem Object @@ -11611,6 +11641,15 @@ used for point/grab/touch + + continuous ribbon particle + + + particle data contains glow + + + particle data contains blend functions + Particle Flags Enum @@ -12044,6 +12083,17 @@ UUID of the transaction The callback to fire when the simulator responds with the asset data + + + Request an asset download + + Asset UUID + Asset type, must be correct for the transfer to succeed + Whether to give this transfer an elevated priority + Source location of the requested asset + UUID of the transaction + The callback to fire when the simulator responds with the asset data + Request an asset download through the almost deprecated Xfer system @@ -18501,7 +18551,11 @@ True on success, otherwise false - + + + Populates textures and visual params from a decoded asset + + Wearable to decode Populates textures and visual params from a decoded asset @@ -18984,6 +19038,9 @@ + + User data + @@ -19146,6 +19203,15 @@ Region protocol flags + + Nothing special + + + Region supports Server side Appearance + + + Viewer supports Server side Appearance + Access level for a simulator @@ -21475,6 +21541,11 @@ Constants for the archiving module + + + Path for region settings. + + The location of the archive control file @@ -23668,6 +23739,58 @@ OSD containting the messaage + + + Provides helper methods for parallelizing loops + + + + + Executes a for loop in which iterations may run in parallel + + The loop will be started at this index + The loop will be terminated before this index is reached + Method body to run for each iteration of the loop + + + + Executes a for loop in which iterations may run in parallel + + The number of concurrent execution threads to run + The loop will be started at this index + The loop will be terminated before this index is reached + Method body to run for each iteration of the loop + + + + Executes a foreach loop in which iterations may run in parallel + + Object type that the collection wraps + An enumerable collection to iterate over + Method body to run for each object in the collection + + + + Executes a foreach loop in which iterations may run in parallel + + Object type that the collection wraps + The number of concurrent execution threads to run + An enumerable collection to iterate over + Method body to run for each object in the collection + + + + Executes a series of tasks in parallel + + A series of method bodies to execute + + + + Executes a series of tasks in parallel + + The number of concurrent execution threads to run + A series of method bodies to execute + Sort by name diff --git a/bin/OpenMetaverse.dll b/bin/OpenMetaverse.dll index 3d89548a27..a91670da68 100755 Binary files a/bin/OpenMetaverse.dll and b/bin/OpenMetaverse.dll differ diff --git a/bin/OpenMetaverseTypes.XML b/bin/OpenMetaverseTypes.XML index 56e3ac71db..4f5b6b4434 100644 --- a/bin/OpenMetaverseTypes.XML +++ b/bin/OpenMetaverseTypes.XML @@ -2573,58 +2573,6 @@ A cache of UUID.Zero as a string to optimize a common path - - - Provides helper methods for parallelizing loops - - - - - Executes a for loop in which iterations may run in parallel - - The loop will be started at this index - The loop will be terminated before this index is reached - Method body to run for each iteration of the loop - - - - Executes a for loop in which iterations may run in parallel - - The number of concurrent execution threads to run - The loop will be started at this index - The loop will be terminated before this index is reached - Method body to run for each iteration of the loop - - - - Executes a foreach loop in which iterations may run in parallel - - Object type that the collection wraps - An enumerable collection to iterate over - Method body to run for each object in the collection - - - - Executes a foreach loop in which iterations may run in parallel - - Object type that the collection wraps - The number of concurrent execution threads to run - An enumerable collection to iterate over - Method body to run for each object in the collection - - - - Executes a series of tasks in parallel - - A series of method bodies to execute - - - - Executes a series of tasks in parallel - - The number of concurrent execution threads to run - A series of method bodies to execute - Copy constructor diff --git a/bin/OpenMetaverseTypes.dll b/bin/OpenMetaverseTypes.dll index 213555cf54..4d00d5e8b4 100755 Binary files a/bin/OpenMetaverseTypes.dll and b/bin/OpenMetaverseTypes.dll differ