You are viewing a potentially older version of this package.
View all versions.
SatmLanIp
Shift at Midnight 局域网联机:LAN/VPN IP 开房加入,双方均需安装。
| Date uploaded | 21 hours ago |
| Version | 1.0.1 |
| Download link | 679215-SatmLanIp-1.0.1.zip |
| Downloads | 6 |
| Dependency string | 679215-SatmLanIp-1.0.1 |
This mod requires the following mods to function
BepInEx-BepInExPack_IL2CPP
BepInEx pack for IL2CPP x64 Unity games. Preconfigured and ready to use.
Preferred version: 6.0.755README
SatmLanIp
通过 局域网或 VPN IP 与朋友联机玩 Shift at Midnight,此路径不走 Photon 云服务。
在游戏内打开 局域网联机,房主开房或输入 IP 加入,准备就绪后进入正常合作对局。
版本: 1.0.1 · 许可证: MIT
仅限可信对端。 房间 UDP 无鉴权,请勿将监听端口暴露到公网;请使用局域网或 VPN 组网。
相关链接
| 源码 | github.com/679215/SatmLanIp |
| Thunderstore | SatmLanIp |
| 模组社区 | Shift at Midnight |
功能说明
- 游玩菜单(单人模式上方)注入 局域网联机
- 房主 UDP 监听;加入方输入房主 IP 连接
- UDP 房间层同步准备状态,对局走 Fusion Direct
使用方法
- 双方都安装本模组。
- 游玩菜单 → 局域网联机。
- 房主: 创建房间 → 选档/模式 → 告知局域网或 VPN IP。
- 加入方: 加入 → 输入房主 IP → 连接(改过配置端口时用
IP:端口)。 - 全员准备 → 按大厅提示开始。
异地组网
与朋友使用官方服务器(Photon 云服)联机时若卡顿、延迟高,可尝试改用本模组,并通过下方异地组网方式建立直连。
不在同一局域网时,先用 VPN / 虚拟局域网 把双方连到同一虚拟网段,再按上面步骤用 VPN 分配的 IP 开房、加入。
- 加入方填写的必须是 组网后的虚拟 IP。
- 延迟取决于组网质量;丢包或断线时先检查 VPN 是否仍在线。
推荐工具(任选其一,与本模组无隶属关系):
- Tailscale — 基于 WireGuard 的虚拟组网,跨平台、配置简单;联机时使用 Tailscale 分配给房主的 IP。
- connecttool-qt — 图形化异地组网工具,支持 TUN 虚拟网卡模式;联机时使用组网后显示的虚拟 IP。
兼容性
- BepInEx: BepInExPack IL2CPP
6.0.755
免责声明
非官方社区模组,与 Kwalee、Photon 及游戏发行方无关。使用风险自负,请遵守游戏用户协议。
CHANGELOG
更新日志
本文件记录项目的重要变更。
格式参考 Keep a Changelog, 版本号遵循 语义化版本。
[1.0.2] - 2026-08-20
修复
- 多人大厅各端人数 / 准备状态不一致;加入方人数以主机房间快照为准,不再用座位号推算
- 多人局域网联机时,同伴玩家映射不正确
- Ready / 心跳携带座位号,主机可按座位重绑对端端口(NAT 换端口或重连),避免误踢与人数错乱
- 拒绝空主机地址(如
:37241)以及保留端口 65535(Fusion 使用监听端口 +1) - 加入方填写
IP:端口时,同步监听端口与加入端口,避免大厅能进但对局连错端口 - 配置里只改监听端口或加入端口时,两侧强制保持一致
- 主机离开或对局重置时清除「对局进行中」状态,避免卡在等待开局界面
- 对局已开始后仍尝试加入时,明确提示「对局已开始」,而不再干等到连接超时
- 大厅内约 45 秒无心跳的死连接会被踢出,避免占坑导致无法全员准备
- 加入方大厅 Ready 保活不依赖游戏主循环;切出或短暂卡顿时仍发送,避免被主机误踢(界面显示 host left)
- 启动时开启
Application.runInBackground,避免切出游戏后主循环暂停导致大厅联机包无法收发 - 开局时可能未使用主机在大厅已选存档,存在误进其他存档或覆盖进度的风险
- 没有已有存档时,按解析结果新建存档槽,不再固定为槽位 0
- 存档界面点「返回」时,不再重复叠加取消监听
变更
- 姿态数据按座位分别存储与转发,不再被最后写入的玩家覆盖
- 「客户端已准备」表示任意已入座的非房主已准备,不再只检查 2 人局里的加入方
- 对局进行中不再清理空闲 UDP 座位,仅在大厅阶段踢出失联玩家
- 降低协议发送时的临时内存分配,减轻卡顿
- 缓存主菜单对象,避免每帧全场景查找
- Fusion 云服旁路每帧只执行一次;客户端启动连接后再补一次
- 每帧最多处理 64 个 UDP 包,并优先处理连接 / 准备 / 开局 / 离开等控制包
移除
- 已无实际作用的 UDP 释放占位接口,以及从未使用的探测序号字段
[1.0.1]
变更
- 说明文档:补充异地组网说明与推荐工具;澄清默认只需填写 IP
[1.0.0]
新增
- 首次公开发布
- 通过「局域网联机」支持局域网 / VPN IP 合作(房间 UDP + Fusion 直连)
- 原生菜单;按 IP 创建 / 加入;准备同步;进入合作对局