commit d2aa97dda01f8592bf198fffda3ce67b125d40bd
Author: YangHua <1475658476@qq.com>
Date: Sun Feb 18 14:33:56 2024 +0800
create server
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..c7912f4
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,2 @@
+/.vs
+/GameServer.sln
diff --git a/GameServer/GameServer.csproj b/GameServer/GameServer.csproj
new file mode 100644
index 0000000..74abf5c
--- /dev/null
+++ b/GameServer/GameServer.csproj
@@ -0,0 +1,10 @@
+
+
+
+ Exe
+ net6.0
+ enable
+ enable
+
+
+
diff --git a/GameServer/Program.cs b/GameServer/Program.cs
new file mode 100644
index 0000000..2b6e3aa
--- /dev/null
+++ b/GameServer/Program.cs
@@ -0,0 +1,145 @@
+using System;
+using System.Collections.Concurrent;
+using System.Net;
+using System.Net.Sockets;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace GameServer
+{
+ internal class Program
+ {
+ private static ConcurrentDictionary clients = new ConcurrentDictionary();
+
+ static async Task Main(string[] args)
+ {
+ await RunServer();
+ Console.ReadKey();
+ }
+
+ static async Task RunServer()
+ {
+ int port = 12345;
+ TcpListener listener = new TcpListener(IPAddress.Any, port);
+ listener.Start();
+ Console.WriteLine($"Server listening on port {port}");
+
+ while (true)
+ {
+ TcpClient client = await listener.AcceptTcpClientAsync();
+ _ = HandleClientAsync(client);
+ }
+ }
+
+ static async Task HandleClientAsync(TcpClient client)
+ {
+ using (NetworkStream stream = client.GetStream())
+ {
+ string clientAddress = client.Client.RemoteEndPoint.ToString();
+
+ clients.TryAdd(clientAddress, client);
+
+ var user = User.Create(client, stream);
+
+ Console.WriteLine($"Client connected: {clientAddress}");
+
+ byte[] buffer = new byte[4096];
+ byte[] response = null;
+ int bytesRead;
+ while ((bytesRead = await stream.ReadAsync(buffer, 0, buffer.Length)) > 0)
+ {
+ string data = Encoding.UTF8.GetString(buffer, 0, bytesRead);
+ //Console.WriteLine($"Received from {clientAddress}: {data}");
+ string[] commands = data.Split(" ");
+ if (commands.Length > 0)
+ {
+ switch (commands[0])
+ {
+ case "test":
+ Console.WriteLine($"测试 {commands[1]}");
+ break;
+ case "regist"://注册临时身份
+ user.Regist(commands[1]);
+ Console.WriteLine($"注册 {commands[1]}");
+ break;
+ case "getusers"://获取用户列表
+ response = Encoding.UTF8.GetBytes(string.Format("getusers {0}", User.GetUsers(user.userId)));
+ await stream.WriteAsync(response, 0, response.Length);
+ break;
+ case "createroom"://创建房间
+ Console.WriteLine($"创建房间 {commands[1]}");
+ var room = Room.Create(commands[1], user.userId);
+ response = Encoding.UTF8.GetBytes(string.Format("createroom {0},{1},{2}", room.roomId, room.roomname, room.creater));
+ await stream.WriteAsync(response, 0, response.Length);
+ break;
+ case "getrooms"://获取所有房间
+ response = Encoding.UTF8.GetBytes(string.Format("getrooms {0}", Room.GetRooms()));
+ await stream.WriteAsync(response, 0, response.Length);
+ break;
+ case "getownrooms"://获取自己创建的房间
+ response = Encoding.UTF8.GetBytes(string.Format("getownrooms {0}", Room.GetRooms(user.userId)));
+ await stream.WriteAsync(response, 0, response.Length);
+ break;
+ case "joinroom"://加入房间
+ string join = Room.JoinRoom(user, ulong.Parse(commands[1]));
+ if (!string.IsNullOrWhiteSpace(join))
+ {
+ response = Encoding.UTF8.GetBytes(string.Format("joinroom {0}", join));
+ await stream.WriteAsync(response, 0, response.Length);
+ }
+ break;
+ case "getroomusers"://获取所在房间的用户
+ response = Encoding.UTF8.GetBytes(string.Format("getroomusers {0}", User.GetUsers(user.userId, user.roomId)));
+ await stream.WriteAsync(response, 0, response.Length);
+ break;
+ case "joins"://批量加入房间
+ List users = Room.BatchJoinRoom(ulong.Parse(commands[1]));
+ for (int i = 0; i < users.Count; i++)
+ {
+ User.Send2User(users[i].userId, string.Format("send2user joins"));
+ }
+ //response = Encoding.UTF8.GetBytes(string.Format("joins {0}", joins));
+ //await stream.WriteAsync(response, 0, response.Length);
+ break;
+ case "leaveroom"://离开房间
+ string leave = Room.LeaveRoom(user);
+ if (!string.IsNullOrWhiteSpace(leave))
+ {
+ response = Encoding.UTF8.GetBytes(string.Format("leaveroom {0}", leave));
+ await stream.WriteAsync(response, 0, response.Length);
+ }
+ Console.WriteLine($"离开房间 {leave}");
+ break;
+ case "closeroom"://关闭房间
+ string close = Room.CloseRoom(ulong.Parse(commands[1]));
+ if (!string.IsNullOrWhiteSpace(close))
+ {
+ response = Encoding.UTF8.GetBytes(string.Format("closeroom {0}", close));
+ await stream.WriteAsync(response, 0, response.Length);
+ }
+ break;
+ case "send2user"://对用户说
+ User.Send2User(ulong.Parse(commands[1]), string.Format("send2user {0}", commands[2]));
+ break;
+ case "send2room"://对房间说
+ User.Send2Room(user.userId, user.roomId, string.Format("send2room {0}", commands[1]));
+ Console.WriteLine($"send2room {commands[1]}");
+ break;
+ case "send2world"://对世界说
+ User.Send2World(user, string.Format("send2world {0}", commands[1]));
+ break;
+ case "player"://对player说
+ User.Send2Player(user.userId, user.roomId, string.Format("player {0}", commands[1]));
+ break;
+ }
+ }
+ }
+
+ clients.TryRemove(clientAddress, out _);
+ user.OffLine();
+ Console.WriteLine($"Client disconnected: {clientAddress}");
+ }
+ client.Close();
+ }
+ }
+}
\ No newline at end of file
diff --git a/GameServer/Room.cs b/GameServer/Room.cs
new file mode 100644
index 0000000..d2fe400
--- /dev/null
+++ b/GameServer/Room.cs
@@ -0,0 +1,176 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace GameServer
+{
+ ///
+ /// 房间
+ ///
+ public class Room
+ {
+ #region 静态
+ private static List rooms = new List();
+ //public static ulong counter = 1;
+ #endregion
+
+ ///
+ /// 房间ID
+ ///
+ public ulong roomId = 0;
+ ///
+ /// 房间名称
+ ///
+ public string roomname = "";
+ ///
+ /// 创建人
+ ///
+ public ulong creater = 0;
+ ///
+ /// 房间用户
+ ///
+ public List users = new List();
+
+ ///
+ /// 构造函数
+ ///
+ /// 房间名称
+ /// 创建人ID
+ public Room(string _roomname, ulong _creater)
+ {
+ roomId = ulong.Parse(_roomname);
+ roomname = _roomname;
+ creater = _creater;
+ }
+
+ ///
+ /// 创建房间
+ ///
+ /// 房间名称
+ /// 创建人ID
+ ///
+ public static Room Create(string _roomname, ulong _creater)
+ {
+ var room = new Room(_roomname, _creater);
+ rooms.Add(room);
+ return room;
+ }
+
+ ///
+ /// 获取房间列表
+ ///
+ /// 创建人
+ ///
+ public static string GetRooms(ulong _creater = 0)
+ {
+ StringBuilder sb = new StringBuilder();
+ rooms.ForEach(r =>
+ {
+ if (_creater == 0)
+ sb.AppendFormat("{0},{1},{2};", r.roomId, r.roomname, r.creater);
+ else
+ {
+ if (r.creater == _creater)
+ sb.AppendFormat("{0},{1},{2};", r.roomId, r.roomname, r.creater);
+ }
+ });
+ return sb.ToString().Trim(';');
+ }
+
+ ///
+ /// 加入房间
+ ///
+ ///
+ ///
+ ///
+ public static string JoinRoom(User _user, ulong _roomId)
+ {
+ var room = rooms.Find(r => r.roomId == _roomId);
+ if (_user.roomId == 0)
+ {
+ if (room != null && !room.users.Contains(_user))
+ {
+ room.users.Add(_user);
+ _user.roomId = _roomId;
+ return string.Format("{0},{1},{2}", room.roomId, room.roomname, room.creater);
+ }
+ }
+ return "";
+ }
+
+ ///
+ /// 批量加入房间
+ ///
+ ///
+ ///
+ public static List BatchJoinRoom(ulong _roomId)
+ {
+ var room = rooms.Find(r => r.roomId == _roomId);
+ List users = User.GetAllUsers();
+ if (room != null)
+ {
+ for (int i = 0; i < users.Count; i++)
+ {
+ int index = i;
+ if (users[index].roomId == 0)
+ {
+ if (!room.users.Contains(users[index]))
+ {
+ room.users.Add(users[index]);
+ users[index].roomId = _roomId;
+ }
+ }
+ }
+ return users;
+ }
+ return users;
+ }
+
+ ///
+ /// 离开房间
+ ///
+ /// 用户
+ ///
+ public static string LeaveRoom(User _user)
+ {
+ if (_user != null)
+ {
+ var room = rooms.Find(r => r.roomId == _user.roomId);
+ if (room != null)
+ {
+ room.users.Remove(_user);
+ _user.roomId = 0;
+ return string.Format("{0},{1},{2},{3}", room.roomId, room.roomname, room.creater,_user.userId);
+ }
+ }
+ return "";
+ }
+
+ ///
+ /// 关闭房间
+ ///
+ /// 房间ID
+ ///
+ public static string CloseRoom(ulong _roomId)
+ {
+ var room = rooms.Find(r => r.roomId == _roomId);
+ if (room != null)
+ {
+ room.users.ForEach(u =>
+ {
+ //通知退出
+ u.Write(string.Format("roomclosed {0}", room.roomId));
+ u.roomId = 0;
+ });
+ room.users.Clear();
+ rooms.Remove(room);
+
+ //关闭房间通知
+ return string.Format("{0}", room.roomId);
+ }
+ return "";
+ }
+ }
+}
\ No newline at end of file
diff --git a/GameServer/User.cs b/GameServer/User.cs
new file mode 100644
index 0000000..9bd5685
--- /dev/null
+++ b/GameServer/User.cs
@@ -0,0 +1,174 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Net.Sockets;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace GameServer
+{
+ public class User
+ {
+ #region 私有,静态
+ private static List Users = new List();
+ //private static ulong counter = 1;
+ #endregion
+
+ ///
+ /// 用户ID(服务端)
+ ///
+ public ulong userId = 0;
+ ///
+ /// 远程终端节点
+ ///
+ public string remoteId = "";
+ ///
+ /// 用户姓名
+ ///
+ public string username = "";
+ ///
+ /// 所在房间ID(0表示不在任何房间)
+ ///
+ public ulong roomId = 0;
+ public TcpClient client = null;
+ public NetworkStream stream = null;
+
+ ///
+ /// 用户构造函数
+ ///
+ /// 客户端
+ /// 流
+ public User(TcpClient _client, NetworkStream _stream)
+ {
+ client = _client;
+ stream = _stream;
+ remoteId = client.Client.RemoteEndPoint.ToString();
+ Users.Add(this);
+ }
+
+ ///
+ /// 注册
+ ///
+ /// 名字
+ public void Regist(string _username)
+ {
+ userId = ulong.Parse(_username);
+ username = _username;
+ byte[] response = Encoding.UTF8.GetBytes(string.Format("regist {0},{1},{2}", userId, username, roomId));
+ stream.WriteAsync(response, 0, response.Length);
+ }
+
+ ///
+ /// 写入
+ ///
+ ///
+ public void Write(string msg)
+ {
+ byte[] buffer = Encoding.UTF8.GetBytes(msg);
+ stream.WriteAsync(buffer, 0, buffer.Length);
+ }
+
+ public void OffLine()
+ {
+ Room.LeaveRoom(this);
+ Users.Remove(this);
+ }
+
+ ///
+ /// 创建用户
+ ///
+ ///
+ ///
+ public static User Create(TcpClient _client, NetworkStream _stream)
+ {
+ return new User(_client, _stream);
+ }
+
+ ///
+ /// 获取用户列表
+ ///
+ /// 除此之外(通常指自己)
+ ///
+ public static string GetUsers(ulong except, ulong roomId = 0)
+ {
+ StringBuilder sb = new StringBuilder();
+ var tempUsers = Users;
+ if (roomId != 0)
+ {
+ tempUsers = Users.Where(u => u.roomId.Equals(roomId)).ToList();
+ }
+ tempUsers.ForEach(u =>
+ {
+ if (u.userId != except)
+ {
+ sb.AppendFormat("{0},{1},{2};", u.userId, u.username, u.roomId);
+ }
+
+ });
+ return sb.ToString().Trim(';');
+ }
+
+ public static List GetAllUsers()
+ {
+ return Users;
+ }
+
+ ///
+ /// 私发
+ ///
+ ///
+ public static void Send2User(ulong _userId, string msg)
+ {
+ var user = Users.Find(u => u.userId == _userId);
+ if (user != null)
+ {
+ user.Write(msg);
+ }
+ }
+
+ ///
+ /// 房间
+ ///
+ ///
+ public static void Send2Room(ulong _userId, ulong _roomId, string msg)
+ {
+ var users = Users.Where(u => u.roomId == _roomId && u.userId != _userId).ToList();
+ users.ForEach(u =>
+ {
+ if (u.roomId != 0)
+ {
+ u.Write(msg);
+ }
+ });
+ }
+
+ ///
+ /// 房间
+ ///
+ ///
+ public static void Send2Player(ulong _userId, ulong _roomId, string msg)
+ {
+ var users = Users.Where(u => u.roomId == _roomId && u.userId != _userId).ToList();
+ users.ForEach(u =>
+ {
+ if (u.roomId != 0)
+ {
+ u.Write(String.Format("{0}", msg));
+ }
+ });
+ }
+
+ ///
+ /// 世界
+ ///
+ ///
+ public static void Send2World(User _user, string msg)
+ {
+ Users.ForEach((u) =>
+ {
+ if (u.userId != _user.userId)
+ u.Write(msg);
+ });
+ }
+ }
+}
diff --git a/GameServer/bin/Debug/net6.0/GameServer.deps.json b/GameServer/bin/Debug/net6.0/GameServer.deps.json
new file mode 100644
index 0000000..f28731c
--- /dev/null
+++ b/GameServer/bin/Debug/net6.0/GameServer.deps.json
@@ -0,0 +1,23 @@
+{
+ "runtimeTarget": {
+ "name": ".NETCoreApp,Version=v6.0",
+ "signature": ""
+ },
+ "compilationOptions": {},
+ "targets": {
+ ".NETCoreApp,Version=v6.0": {
+ "GameServer/1.0.0": {
+ "runtime": {
+ "GameServer.dll": {}
+ }
+ }
+ }
+ },
+ "libraries": {
+ "GameServer/1.0.0": {
+ "type": "project",
+ "serviceable": false,
+ "sha512": ""
+ }
+ }
+}
\ No newline at end of file
diff --git a/GameServer/bin/Debug/net6.0/GameServer.dll b/GameServer/bin/Debug/net6.0/GameServer.dll
new file mode 100644
index 0000000..0c344bb
Binary files /dev/null and b/GameServer/bin/Debug/net6.0/GameServer.dll differ
diff --git a/GameServer/bin/Debug/net6.0/GameServer.exe b/GameServer/bin/Debug/net6.0/GameServer.exe
new file mode 100644
index 0000000..754afd1
Binary files /dev/null and b/GameServer/bin/Debug/net6.0/GameServer.exe differ
diff --git a/GameServer/bin/Debug/net6.0/GameServer.pdb b/GameServer/bin/Debug/net6.0/GameServer.pdb
new file mode 100644
index 0000000..df47eca
Binary files /dev/null and b/GameServer/bin/Debug/net6.0/GameServer.pdb differ
diff --git a/GameServer/bin/Debug/net6.0/GameServer.runtimeconfig.json b/GameServer/bin/Debug/net6.0/GameServer.runtimeconfig.json
new file mode 100644
index 0000000..4986d16
--- /dev/null
+++ b/GameServer/bin/Debug/net6.0/GameServer.runtimeconfig.json
@@ -0,0 +1,9 @@
+{
+ "runtimeOptions": {
+ "tfm": "net6.0",
+ "framework": {
+ "name": "Microsoft.NETCore.App",
+ "version": "6.0.0"
+ }
+ }
+}
\ No newline at end of file
diff --git a/GameServer/bin/Debug/net6.0/ref/GameServer.dll b/GameServer/bin/Debug/net6.0/ref/GameServer.dll
new file mode 100644
index 0000000..cdcb4b0
Binary files /dev/null and b/GameServer/bin/Debug/net6.0/ref/GameServer.dll differ
diff --git a/GameServer/obj/Debug/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs b/GameServer/obj/Debug/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs
new file mode 100644
index 0000000..ed92695
--- /dev/null
+++ b/GameServer/obj/Debug/net6.0/.NETCoreApp,Version=v6.0.AssemblyAttributes.cs
@@ -0,0 +1,4 @@
+//
+using System;
+using System.Reflection;
+[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v6.0", FrameworkDisplayName = ".NET 6.0")]
diff --git a/GameServer/obj/Debug/net6.0/GameServer.AssemblyInfo.cs b/GameServer/obj/Debug/net6.0/GameServer.AssemblyInfo.cs
new file mode 100644
index 0000000..688557e
--- /dev/null
+++ b/GameServer/obj/Debug/net6.0/GameServer.AssemblyInfo.cs
@@ -0,0 +1,23 @@
+//------------------------------------------------------------------------------
+//
+// 此代码由工具生成。
+// 运行时版本:4.0.30319.42000
+//
+// 对此文件的更改可能会导致不正确的行为,并且如果
+// 重新生成代码,这些更改将会丢失。
+//
+//------------------------------------------------------------------------------
+
+using System;
+using System.Reflection;
+
+[assembly: System.Reflection.AssemblyCompanyAttribute("GameServer")]
+[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
+[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")]
+[assembly: System.Reflection.AssemblyProductAttribute("GameServer")]
+[assembly: System.Reflection.AssemblyTitleAttribute("GameServer")]
+[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
+
+// 由 MSBuild WriteCodeFragment 类生成。
+
diff --git a/GameServer/obj/Debug/net6.0/GameServer.AssemblyInfoInputs.cache b/GameServer/obj/Debug/net6.0/GameServer.AssemblyInfoInputs.cache
new file mode 100644
index 0000000..a3d7b77
--- /dev/null
+++ b/GameServer/obj/Debug/net6.0/GameServer.AssemblyInfoInputs.cache
@@ -0,0 +1 @@
+44d4d4a93eb4a5fc9bfbe81395c78f181b3d5a87
diff --git a/GameServer/obj/Debug/net6.0/GameServer.GeneratedMSBuildEditorConfig.editorconfig b/GameServer/obj/Debug/net6.0/GameServer.GeneratedMSBuildEditorConfig.editorconfig
new file mode 100644
index 0000000..ed16cde
--- /dev/null
+++ b/GameServer/obj/Debug/net6.0/GameServer.GeneratedMSBuildEditorConfig.editorconfig
@@ -0,0 +1,10 @@
+is_global = true
+build_property.TargetFramework = net6.0
+build_property.TargetPlatformMinVersion =
+build_property.UsingMicrosoftNETSdkWeb =
+build_property.ProjectTypeGuids =
+build_property.InvariantGlobalization =
+build_property.PlatformNeutralAssembly =
+build_property._SupportedPlatformList = Linux,macOS,Windows
+build_property.RootNamespace = GameServer
+build_property.ProjectDir = E:\UnityProjects\LGZN\Unity2019.4.9\Net_ServerProjects\GameServer\GameServer\
diff --git a/GameServer/obj/Debug/net6.0/GameServer.GlobalUsings.g.cs b/GameServer/obj/Debug/net6.0/GameServer.GlobalUsings.g.cs
new file mode 100644
index 0000000..8578f3d
--- /dev/null
+++ b/GameServer/obj/Debug/net6.0/GameServer.GlobalUsings.g.cs
@@ -0,0 +1,8 @@
+//
+global using global::System;
+global using global::System.Collections.Generic;
+global using global::System.IO;
+global using global::System.Linq;
+global using global::System.Net.Http;
+global using global::System.Threading;
+global using global::System.Threading.Tasks;
diff --git a/GameServer/obj/Debug/net6.0/GameServer.assets.cache b/GameServer/obj/Debug/net6.0/GameServer.assets.cache
new file mode 100644
index 0000000..93ce83a
Binary files /dev/null and b/GameServer/obj/Debug/net6.0/GameServer.assets.cache differ
diff --git a/GameServer/obj/Debug/net6.0/GameServer.csproj.AssemblyReference.cache b/GameServer/obj/Debug/net6.0/GameServer.csproj.AssemblyReference.cache
new file mode 100644
index 0000000..7eab194
Binary files /dev/null and b/GameServer/obj/Debug/net6.0/GameServer.csproj.AssemblyReference.cache differ
diff --git a/GameServer/obj/Debug/net6.0/GameServer.csproj.BuildWithSkipAnalyzers b/GameServer/obj/Debug/net6.0/GameServer.csproj.BuildWithSkipAnalyzers
new file mode 100644
index 0000000..e69de29
diff --git a/GameServer/obj/Debug/net6.0/GameServer.csproj.CoreCompileInputs.cache b/GameServer/obj/Debug/net6.0/GameServer.csproj.CoreCompileInputs.cache
new file mode 100644
index 0000000..7bb91b5
--- /dev/null
+++ b/GameServer/obj/Debug/net6.0/GameServer.csproj.CoreCompileInputs.cache
@@ -0,0 +1 @@
+63a566d08a7206798c242db0ecedff7a3abff278
diff --git a/GameServer/obj/Debug/net6.0/GameServer.csproj.FileListAbsolute.txt b/GameServer/obj/Debug/net6.0/GameServer.csproj.FileListAbsolute.txt
new file mode 100644
index 0000000..12106ca
--- /dev/null
+++ b/GameServer/obj/Debug/net6.0/GameServer.csproj.FileListAbsolute.txt
@@ -0,0 +1,44 @@
+D:\Projects\GameServer\GameServer\bin\Debug\net6.0\GameServer.exe
+D:\Projects\GameServer\GameServer\bin\Debug\net6.0\GameServer.deps.json
+D:\Projects\GameServer\GameServer\bin\Debug\net6.0\GameServer.runtimeconfig.json
+D:\Projects\GameServer\GameServer\bin\Debug\net6.0\GameServer.dll
+D:\Projects\GameServer\GameServer\bin\Debug\net6.0\GameServer.pdb
+D:\Projects\GameServer\GameServer\obj\Debug\net6.0\GameServer.GeneratedMSBuildEditorConfig.editorconfig
+D:\Projects\GameServer\GameServer\obj\Debug\net6.0\GameServer.AssemblyInfoInputs.cache
+D:\Projects\GameServer\GameServer\obj\Debug\net6.0\GameServer.AssemblyInfo.cs
+D:\Projects\GameServer\GameServer\obj\Debug\net6.0\GameServer.csproj.CoreCompileInputs.cache
+D:\Projects\GameServer\GameServer\obj\Debug\net6.0\GameServer.dll
+D:\Projects\GameServer\GameServer\obj\Debug\net6.0\refint\GameServer.dll
+D:\Projects\GameServer\GameServer\obj\Debug\net6.0\GameServer.pdb
+D:\Projects\GameServer\GameServer\obj\Debug\net6.0\GameServer.genruntimeconfig.cache
+D:\Projects\GameServer\GameServer\obj\Debug\net6.0\ref\GameServer.dll
+E:\UnityProjects\LGZN\Projects\GameServer\GameServer\bin\Debug\net6.0\GameServer.exe
+E:\UnityProjects\LGZN\Projects\GameServer\GameServer\bin\Debug\net6.0\GameServer.deps.json
+E:\UnityProjects\LGZN\Projects\GameServer\GameServer\bin\Debug\net6.0\GameServer.runtimeconfig.json
+E:\UnityProjects\LGZN\Projects\GameServer\GameServer\bin\Debug\net6.0\GameServer.dll
+E:\UnityProjects\LGZN\Projects\GameServer\GameServer\bin\Debug\net6.0\ref\GameServer.dll
+E:\UnityProjects\LGZN\Projects\GameServer\GameServer\bin\Debug\net6.0\GameServer.pdb
+E:\UnityProjects\LGZN\Projects\GameServer\GameServer\obj\Debug\net6.0\GameServer.csproj.AssemblyReference.cache
+E:\UnityProjects\LGZN\Projects\GameServer\GameServer\obj\Debug\net6.0\GameServer.GeneratedMSBuildEditorConfig.editorconfig
+E:\UnityProjects\LGZN\Projects\GameServer\GameServer\obj\Debug\net6.0\GameServer.AssemblyInfoInputs.cache
+E:\UnityProjects\LGZN\Projects\GameServer\GameServer\obj\Debug\net6.0\GameServer.AssemblyInfo.cs
+E:\UnityProjects\LGZN\Projects\GameServer\GameServer\obj\Debug\net6.0\GameServer.csproj.CoreCompileInputs.cache
+E:\UnityProjects\LGZN\Projects\GameServer\GameServer\obj\Debug\net6.0\GameServer.dll
+E:\UnityProjects\LGZN\Projects\GameServer\GameServer\obj\Debug\net6.0\ref\GameServer.dll
+E:\UnityProjects\LGZN\Projects\GameServer\GameServer\obj\Debug\net6.0\GameServer.pdb
+E:\UnityProjects\LGZN\Projects\GameServer\GameServer\obj\Debug\net6.0\GameServer.genruntimeconfig.cache
+E:\UnityProjects\LGZN\Unity2019.4.9\Net_ServerProjects\GameServer\GameServer\bin\Debug\net6.0\GameServer.exe
+E:\UnityProjects\LGZN\Unity2019.4.9\Net_ServerProjects\GameServer\GameServer\bin\Debug\net6.0\GameServer.deps.json
+E:\UnityProjects\LGZN\Unity2019.4.9\Net_ServerProjects\GameServer\GameServer\bin\Debug\net6.0\GameServer.runtimeconfig.json
+E:\UnityProjects\LGZN\Unity2019.4.9\Net_ServerProjects\GameServer\GameServer\bin\Debug\net6.0\GameServer.dll
+E:\UnityProjects\LGZN\Unity2019.4.9\Net_ServerProjects\GameServer\GameServer\bin\Debug\net6.0\ref\GameServer.dll
+E:\UnityProjects\LGZN\Unity2019.4.9\Net_ServerProjects\GameServer\GameServer\bin\Debug\net6.0\GameServer.pdb
+E:\UnityProjects\LGZN\Unity2019.4.9\Net_ServerProjects\GameServer\GameServer\obj\Debug\net6.0\GameServer.csproj.AssemblyReference.cache
+E:\UnityProjects\LGZN\Unity2019.4.9\Net_ServerProjects\GameServer\GameServer\obj\Debug\net6.0\GameServer.GeneratedMSBuildEditorConfig.editorconfig
+E:\UnityProjects\LGZN\Unity2019.4.9\Net_ServerProjects\GameServer\GameServer\obj\Debug\net6.0\GameServer.AssemblyInfoInputs.cache
+E:\UnityProjects\LGZN\Unity2019.4.9\Net_ServerProjects\GameServer\GameServer\obj\Debug\net6.0\GameServer.AssemblyInfo.cs
+E:\UnityProjects\LGZN\Unity2019.4.9\Net_ServerProjects\GameServer\GameServer\obj\Debug\net6.0\GameServer.csproj.CoreCompileInputs.cache
+E:\UnityProjects\LGZN\Unity2019.4.9\Net_ServerProjects\GameServer\GameServer\obj\Debug\net6.0\GameServer.dll
+E:\UnityProjects\LGZN\Unity2019.4.9\Net_ServerProjects\GameServer\GameServer\obj\Debug\net6.0\ref\GameServer.dll
+E:\UnityProjects\LGZN\Unity2019.4.9\Net_ServerProjects\GameServer\GameServer\obj\Debug\net6.0\GameServer.pdb
+E:\UnityProjects\LGZN\Unity2019.4.9\Net_ServerProjects\GameServer\GameServer\obj\Debug\net6.0\GameServer.genruntimeconfig.cache
diff --git a/GameServer/obj/Debug/net6.0/GameServer.dll b/GameServer/obj/Debug/net6.0/GameServer.dll
new file mode 100644
index 0000000..0c344bb
Binary files /dev/null and b/GameServer/obj/Debug/net6.0/GameServer.dll differ
diff --git a/GameServer/obj/Debug/net6.0/GameServer.genruntimeconfig.cache b/GameServer/obj/Debug/net6.0/GameServer.genruntimeconfig.cache
new file mode 100644
index 0000000..b3988e7
--- /dev/null
+++ b/GameServer/obj/Debug/net6.0/GameServer.genruntimeconfig.cache
@@ -0,0 +1 @@
+ba8724e2c19024b0fcbcf48f4f56a47d8c47765e
diff --git a/GameServer/obj/Debug/net6.0/GameServer.pdb b/GameServer/obj/Debug/net6.0/GameServer.pdb
new file mode 100644
index 0000000..df47eca
Binary files /dev/null and b/GameServer/obj/Debug/net6.0/GameServer.pdb differ
diff --git a/GameServer/obj/Debug/net6.0/apphost.exe b/GameServer/obj/Debug/net6.0/apphost.exe
new file mode 100644
index 0000000..754afd1
Binary files /dev/null and b/GameServer/obj/Debug/net6.0/apphost.exe differ
diff --git a/GameServer/obj/Debug/net6.0/ref/GameServer.dll b/GameServer/obj/Debug/net6.0/ref/GameServer.dll
new file mode 100644
index 0000000..cdcb4b0
Binary files /dev/null and b/GameServer/obj/Debug/net6.0/ref/GameServer.dll differ
diff --git a/GameServer/obj/Debug/net6.0/refint/GameServer.dll b/GameServer/obj/Debug/net6.0/refint/GameServer.dll
new file mode 100644
index 0000000..962034b
Binary files /dev/null and b/GameServer/obj/Debug/net6.0/refint/GameServer.dll differ
diff --git a/GameServer/obj/GameServer.csproj.nuget.dgspec.json b/GameServer/obj/GameServer.csproj.nuget.dgspec.json
new file mode 100644
index 0000000..f562a34
--- /dev/null
+++ b/GameServer/obj/GameServer.csproj.nuget.dgspec.json
@@ -0,0 +1,66 @@
+{
+ "format": 1,
+ "restore": {
+ "E:\\UnityProjects\\LGZN\\Unity2019.4.9\\Net_ServerProjects\\GameServer\\GameServer\\GameServer.csproj": {}
+ },
+ "projects": {
+ "E:\\UnityProjects\\LGZN\\Unity2019.4.9\\Net_ServerProjects\\GameServer\\GameServer\\GameServer.csproj": {
+ "version": "1.0.0",
+ "restore": {
+ "projectUniqueName": "E:\\UnityProjects\\LGZN\\Unity2019.4.9\\Net_ServerProjects\\GameServer\\GameServer\\GameServer.csproj",
+ "projectName": "GameServer",
+ "projectPath": "E:\\UnityProjects\\LGZN\\Unity2019.4.9\\Net_ServerProjects\\GameServer\\GameServer\\GameServer.csproj",
+ "packagesPath": "C:\\Users\\Adam\\.nuget\\packages\\",
+ "outputPath": "E:\\UnityProjects\\LGZN\\Unity2019.4.9\\Net_ServerProjects\\GameServer\\GameServer\\obj\\",
+ "projectStyle": "PackageReference",
+ "fallbackFolders": [
+ "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
+ ],
+ "configFilePaths": [
+ "C:\\Users\\Adam\\AppData\\Roaming\\NuGet\\NuGet.Config",
+ "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
+ "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
+ ],
+ "originalTargetFrameworks": [
+ "net6.0"
+ ],
+ "sources": {
+ "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
+ "https://api.nuget.org/v3/index.json": {}
+ },
+ "frameworks": {
+ "net6.0": {
+ "targetAlias": "net6.0",
+ "projectReferences": {}
+ }
+ },
+ "warningProperties": {
+ "warnAsError": [
+ "NU1605"
+ ]
+ }
+ },
+ "frameworks": {
+ "net6.0": {
+ "targetAlias": "net6.0",
+ "imports": [
+ "net461",
+ "net462",
+ "net47",
+ "net471",
+ "net472",
+ "net48"
+ ],
+ "assetTargetFallback": true,
+ "warn": true,
+ "frameworkReferences": {
+ "Microsoft.NETCore.App": {
+ "privateAssets": "all"
+ }
+ },
+ "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\6.0.101\\RuntimeIdentifierGraph.json"
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/GameServer/obj/GameServer.csproj.nuget.g.props b/GameServer/obj/GameServer.csproj.nuget.g.props
new file mode 100644
index 0000000..f41941c
--- /dev/null
+++ b/GameServer/obj/GameServer.csproj.nuget.g.props
@@ -0,0 +1,16 @@
+
+
+
+ True
+ NuGet
+ $(MSBuildThisFileDirectory)project.assets.json
+ $(UserProfile)\.nuget\packages\
+ C:\Users\Adam\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages
+ PackageReference
+ 6.0.1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/GameServer/obj/GameServer.csproj.nuget.g.targets b/GameServer/obj/GameServer.csproj.nuget.g.targets
new file mode 100644
index 0000000..3dc06ef
--- /dev/null
+++ b/GameServer/obj/GameServer.csproj.nuget.g.targets
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff --git a/GameServer/obj/project.assets.json b/GameServer/obj/project.assets.json
new file mode 100644
index 0000000..e5fcd92
--- /dev/null
+++ b/GameServer/obj/project.assets.json
@@ -0,0 +1,72 @@
+{
+ "version": 3,
+ "targets": {
+ "net6.0": {}
+ },
+ "libraries": {},
+ "projectFileDependencyGroups": {
+ "net6.0": []
+ },
+ "packageFolders": {
+ "C:\\Users\\Adam\\.nuget\\packages\\": {},
+ "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages": {}
+ },
+ "project": {
+ "version": "1.0.0",
+ "restore": {
+ "projectUniqueName": "E:\\UnityProjects\\LGZN\\Unity2019.4.9\\Net_ServerProjects\\GameServer\\GameServer\\GameServer.csproj",
+ "projectName": "GameServer",
+ "projectPath": "E:\\UnityProjects\\LGZN\\Unity2019.4.9\\Net_ServerProjects\\GameServer\\GameServer\\GameServer.csproj",
+ "packagesPath": "C:\\Users\\Adam\\.nuget\\packages\\",
+ "outputPath": "E:\\UnityProjects\\LGZN\\Unity2019.4.9\\Net_ServerProjects\\GameServer\\GameServer\\obj\\",
+ "projectStyle": "PackageReference",
+ "fallbackFolders": [
+ "C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages"
+ ],
+ "configFilePaths": [
+ "C:\\Users\\Adam\\AppData\\Roaming\\NuGet\\NuGet.Config",
+ "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
+ "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
+ ],
+ "originalTargetFrameworks": [
+ "net6.0"
+ ],
+ "sources": {
+ "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
+ "https://api.nuget.org/v3/index.json": {}
+ },
+ "frameworks": {
+ "net6.0": {
+ "targetAlias": "net6.0",
+ "projectReferences": {}
+ }
+ },
+ "warningProperties": {
+ "warnAsError": [
+ "NU1605"
+ ]
+ }
+ },
+ "frameworks": {
+ "net6.0": {
+ "targetAlias": "net6.0",
+ "imports": [
+ "net461",
+ "net462",
+ "net47",
+ "net471",
+ "net472",
+ "net48"
+ ],
+ "assetTargetFallback": true,
+ "warn": true,
+ "frameworkReferences": {
+ "Microsoft.NETCore.App": {
+ "privateAssets": "all"
+ }
+ },
+ "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\6.0.101\\RuntimeIdentifierGraph.json"
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/GameServer/obj/project.nuget.cache b/GameServer/obj/project.nuget.cache
new file mode 100644
index 0000000..b922e02
--- /dev/null
+++ b/GameServer/obj/project.nuget.cache
@@ -0,0 +1,8 @@
+{
+ "version": 2,
+ "dgSpecHash": "TT49gNyPB3lm2ESjvd3RayDRbzkB+dyPZCZY8/rjR8LQG1PPcVPchSzUpuTOX3TZaBBFGF/xjy/Lx1zZTayKGA==",
+ "success": true,
+ "projectFilePath": "E:\\UnityProjects\\LGZN\\Unity2019.4.9\\Net_ServerProjects\\GameServer\\GameServer\\GameServer.csproj",
+ "expectedPackageFiles": [],
+ "logs": []
+}
\ No newline at end of file