Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

TianSuo 天梭

Terraria TShock 服务端插件,通过 WebSocket 将玩家事件实时推送给外部程序,并接收外部消息在游戏内广播

支持环境

  • Terraria 1.4.4.9(及 TShock 5.2.x 所支持的更早版本)
  • TShock 5.2.x,基于 .NET 6

构建

dotnet build TianSuo.sln -c Release

产物在:

  • TianSuo.TShock/bin/Release/net6.0/TianSuo.TShock.dll
  • TianSuo.TShock/bin/Release/net6.0/TianSuo.Tool.dll

安装

  1. TianSuo.TShock.dllTianSuo.Tool.dll 复制到服务器的 ServerPlugins 文件夹
  2. 启动服务器,插件会在 tshock/ 下生成 tiansuo.json 配置文件
  3. 修改配置后重启服务器生效

配置

{
  "Enabled": true,
  "ServerName": "TianSuo",
  "AccessToken": "",
  "WebSocketHost": "127.0.0.1",
  "WebSocketPort": 8080,
  "SubscribePlayerJoin": true,
  "SubscribePlayerQuit": true,
  "SubscribePlayerChat": true,
  "SubscribePlayerDeath": true
}
  • ServerName:客户端连接时必须携带 x-self-name 请求头,值需与之一致。
  • AccessToken:非空时客户端还需携带 Authorization: Bearer <token> 请求头。

协议

所有消息为 UTF-8 文本帧,JSON 信封格式:

{ "type": "event", "name": "player_join", "data": { "player": { "name": "Steve", "index": 3 } } }
{ "type": "api",   "name": "broadcast",   "data": { "message": "Hello" } }

API 响应为 type=apiname=api_response

{ "type": "api", "name": "api_response", "data": { "success": true, "message": "ok" } }

鸣谢

About

Terraria TShock 服务端插件 游戏内消息互通 监听并转发玩家动态信息

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages