using Fantasy; using Fantasy.ConfigTable; using Fantasy.Helper; using Fantasy.IdFactory; using Fantasy.Platform.Net; //Scene 255 //gate 20个以内 //游戏服 1个 //Addressable管理中心 一个 //游戏服 50个内 //聊天服 1个1 // 设置配置表的路径 ConfigTableHelper.Initialize("../../../Config/Binary"); // 设置ID生成规则 IdFactoryHelper.Initialize(IdFactoryType.World); // 获取配置文件 // 比如通过远程获取这个配置文件,这样可以多组服务器共享一套配置了 var machineConfigText = await FileHelper.GetTextByRelativePath("../../../Config/Json/Server/MachineConfigData.Json"); var processConfigText = await FileHelper.GetTextByRelativePath("../../../Config/Json/Server/ProcessConfigData.Json"); var worldConfigText = await FileHelper.GetTextByRelativePath("../../../Config/Json/Server/WorldConfigData.Json"); var sceneConfigText = await FileHelper.GetTextByRelativePath("../../../Config/Json/Server/SceneConfigData.Json"); // 初始化配置文件 // 如果重复初始化方法会覆盖掉上一次的数据,非常适合热重载时使用 MachineConfigData.Initialize(machineConfigText); ProcessConfigData.Initialize(processConfigText); WorldConfigData.Initialize(worldConfigText); SceneConfigData.Initialize(sceneConfigText); // 注册日志模块到框架 // 开发者可以自己注册日志系统到框架,只要实现Fantasy.ILog接口就可以。 // 这里用的是NLog日志系统注册到框架中。 Log.Register(new Fantasy.NLog("Server")); await Entry.Start(AssemblyHelper.Assemblies);