Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ Dump()

void Terraria.Testing.PacketHistory.Dump ( string reason)
inline

Definition at line 65 of file PacketHistory.cs.

66 {
67 byte[] dst = new byte[_buffer.Length];
70 StringBuilder stringBuilder = new StringBuilder();
71 int num = 1;
72 for (int i = 0; i < _packets.Length; i++)
73 {
74 PacketView packetView = _packets[(i + _historyPosition) % _packets.Length];
75 if (packetView.Offset == 0 && packetView.Length == 0)
76 {
77 continue;
78 }
79 stringBuilder.Append(string.Format("Packet {0} [Assumed MessageID: {4}, Size: {2}, Buffer Position: {1}, Timestamp: {3:G}]\r\n", num++, packetView.Offset, packetView.Length, packetView.Time, _buffer[packetView.Offset]));
80 for (int j = 0; j < packetView.Length; j++)
81 {
82 stringBuilder.Append(_buffer[packetView.Offset + j].ToString("X2") + " ");
83 if (j % 16 == 15 && j != _packets.Length - 1)
84 {
85 stringBuilder.Append("\r\n");
86 }
87 }
88 stringBuilder.Append("\r\n\r\n");
89 }
90 stringBuilder.Append(reason);
91 Directory.CreateDirectory(Path.Combine(Main.SavePath, "NetDump"));
92 File.WriteAllText(Path.Combine(Main.SavePath, "NetDump", CreateDumpFileName()), stringBuilder.ToString());
93 }
static void BlockCopy(Array src, int srcOffset, Array dst, int dstOffset, int count)
Definition Buffer.cs:102
static DirectoryInfo CreateDirectory(string path)
Definition Directory.cs:28
static void WriteAllText(string path, string? contents)
Definition File.cs:282
static string Combine(string path1, string path2)
Definition Path.cs:304
override string ToString()
StringBuilder Append(char value, int repeatCount)

References Terraria.Testing.PacketHistory._buffer, Terraria.Testing.PacketHistory._bufferPosition, Terraria.Testing.PacketHistory._historyPosition, Terraria.Testing.PacketHistory._packets, System.Text.StringBuilder.Append(), System.Buffer.BlockCopy(), System.IO.Path.Combine(), System.IO.Directory.CreateDirectory(), Terraria.Testing.PacketHistory.CreateDumpFileName(), System.Globalization.Format, Terraria.Testing.PacketHistory.PacketView.Length, Terraria.Testing.PacketHistory.PacketView.Offset, Terraria.Main.SavePath, Terraria.Testing.PacketHistory.PacketView.Time, System.Text.StringBuilder.ToString(), and System.IO.File.WriteAllText().