当前位置: 首页 > news >正文

骑砍2霸主MOD开发(18)-多人联机模式开发环境搭建

一.多人联机模式网络拓扑图

 二.专用服务器搭建(DedicatedServer)

     <1.Token生成(用于LobbyServer的校验):

           进入多人联机大厅,ALT+~打开RGL控制台,输入customserver.gettoken

           Token文件路径:C:\Users\taohu\Documents\Mount and Blade II Bannerlord\Tokens

    <2.启动专用服务器(必须有公网IP和开放端口号7210):

         运行DedicatedCustomServer.Starter.exe

         服务器控制台命令(控制台输入list查看所有命令):

             Mount & Blade II Dedicated Server\Modules\Native\ds_config_sample_battle.txt

             Mount & Blade II Dedicated Server\Modules\Native\ds_config_sample_duel.txt

         服务器后台管理系统:

             http://localhost:7210/

三.客户端服务器列表搜索&加入

    <1.LobbyServer服务器集群地址:

         https://bannerlord-even-custombattleservermanager.bannerlord-services-3.net

         https://bannerlord-service-discovery.bannerlord-services-3.net

    <2.LobbyClient请求专用服务器列表:

         List<GameServerEntry> list = LobbyClient.GetCustomGameServerList()

         GameServerEntry:

             CustomBattleId:专用服务器唯一GUID

             Address:专用服务器公网IP

             Port:专用服务器端口号

    <3.LobbyClient请求加入专用服务器:

         LobbyClient.RequestJoinCustomGame()

四.客户端&服务器通信

    <1.发包:

         GameNetwork.WriteMessage()    

    <2.收包:

         GameNetwork.HandleNetworkPacketAsClient()

五.自定义联机-HTTP协议联机

     发起Http请求:HttpClient.PostAsync(string requestUri, HttpContent content)

六.自定义联机-TCP协议联机

     发起TCP连接请求:TcpSocket.Connect(string address, int port)

六.自定义联机-UDP协议联机

     UDP发包:UdpClient.send()

     UDP收包:UdpClient.receive()

http://www.lryc.cn/news/405201.html

相关文章:

  • 【HZHY-AI300G智能盒试用连载体验】在华为IoTDA平台上建立设备
  • 【LLM】-05-提示工程-部署Langchain-Chat
  • 【漏洞复现】Next.js框架存在SSRF漏洞(CVE-2024-34351)
  • 【2024最新华为OD-C/D卷试题汇总】[支持在线评测] 小区小朋友统计(100分) - 三语言AC题解(Python/Java/Cpp)
  • Vuex看这一篇就够了
  • Kafka集群创建
  • 2024.7.22 作业
  • 如何使用aiohttp或requests-async等库并发地执行多个HTTP请求
  • Golang | Leetcode Golang题解之第257题二叉树的所有路径
  • 关于css中flex布局垂直居中失效问题的原因
  • 用Redisson写一个库存扣减的方法
  • 第2节课:文本内容与格式化——HTML中的文本处理技巧
  • temu平台电池/锂电池UN38.3资质合规解析
  • Huawei、Cisco 路由中 RIP 协议 summary 的用法
  • 智能图像信息提取(飞桨OCR+ERNIE-Layout)
  • Ubuntu 24.04 LTS Noble安装 FileZilla Server
  • 【关于使用swoole的知识点整理】
  • 迁移学习:目标检测的加速器
  • gitee的怎么上传项目
  • 【HarmonyOS4学习笔记】《HarmonyOS4+NEXT星河版入门到企业级实战教程》课程学习笔记(二十三)
  • .NET C# 配置 Options
  • 42、PHP 实现把二叉树打印成多行
  • verilog bug记录——正点原子spi_drive存在的问题
  • vue+watermark-dom实现页面水印效果
  • 为什么要学习网安技术?
  • 2024春秋杯网络安全联赛夏季赛Crypto(AK)解题思路及用到的软件
  • vue2 使用代码编辑器插件 vue-codemirror
  • 自动驾驶系列—智能巡航辅助功能中的横向避让功能介绍
  • 通过this.$options.data()重置变量时,会影响到引用了props或methods的变量
  • [PM]产品运营