MHW-ModTogether-P2P

MHW-ModTogether-P2P

用于合作游戏的实时点对点(P2P)模组同步工具和管理器。通过局域网或VPN与你的大厅自动分享、同步和安装模组,以防止不匹配崩溃。

ModTogether Universal - 实时P2P模组同步与管理工具 v1.2.0(.NET 8 原生版)

🇺🇸 英文版本

描述

  • 原生 .NET 8 WPF 架构: 使用 C# .NET 8 和 WPF-UI 原生构建,具备 Windows 11 Fluent 设计风格、极致性能与低延迟。
  • 通用套件与插件系统: ModTogether 是一款适用于 PC 合作游戏的通用 P2P 模组同步套件。此版本包含 《怪物猎人:世界》插件(ModTogether.Plugins.MHW,支持 nativePC 文件夹自动化管理、P2P 同步、压缩包解压和文件冲突检测。可通过 ModTogether.API 插件接口开发更多游戏插件。
  • 去中心化模组同步: 点对点直连,无需中心服务器。创建房间后,好友可通过 IP 和会话 PIN 码连接。
  • 统一房间控制: 创建与加入功能并排显示于同一页面,实现无缝会话管理。
  • 防崩溃机制: 确保房间内每位玩家的模组文件完全一致,消除因模组不一致导致的游戏崩溃。

源代码与反馈

  • GitHub 仓库: ModTogether-P2P on GitHub(MIT 许可证开源)
  • 贡献: 欢迎在我们的 GitHub 页面提交问题、建议新功能或发起拉取请求。

安装说明与可用版本

  • 独立版(ModTogether_Universal_Standalone_x64.exe - 约 85MB): 已内置 .NET 8 运行时。完全便携,无需安装或下载 .NET!
  • 轻量版(ModTogether_Universal_Lightweight_x64.exe - 约 10MB): 超小可执行文件(约 10MB),适用于已安装 .NET 8 桌面运行时的用户。
  • 安装: 只需将单个可执行文件解压到电脑任意文件夹,然后运行即可!

⚠️ 杀毒软件误报说明

  • ModTogether 使用官方 Microsoft .NET 8 单文件发布(Single-File Publish) 编译,采用确定性编译,未启用 ReadyToRun(R2R),不含调试符号。绝无使用第三方混淆器(如 ConfuserEx)或 PE 压缩壳(如 UPX)。
  • 插件通过标准 AssemblyLoadContext.Default.LoadFromAssemblyPath() API 加载,不涉及原始字节数组注入。
  • 应用内自动更新器使用直接文件替换方式——不生成任何批处理脚本或 shell 命令。
  • 本软件 100% 安全且开源。 您可以在我们的 GitHub 仓库中查看源代码。
  • VirusTotal: 主流杀毒引擎检测全部为 0/68(Microsoft、Kaspersky、ESET、Bitdefender、Norton 等)。SecureAge APEX 可能因其激进的机器学习启发式算法而误报。

主要功能

  • 去中心化 P2P 同步: 使用 IP 和 6 位会话 PIN 码实现点对点直连。
  • 模组预设与配置暂存: 保存/加载自定义模组预设(Documents/ModTogether/presets/)。切换预设时可安全地将原有用模组暂存至 .stash,不会造成数据丢失。
  • 智能模组回收与 SHA-256 P2P 优化:mod_owners.json 中跟踪模组归属。玩家离开时自动将无引用模组文件移入 .recycle_mods,并通过 SHA-256 完整性校验恢复匹配模组,避免重复下载。
  • 用户归属标识: 在模组浏览器和插件模组库中显示可视化归属徽章(如 👤 主机👥 共享(主机,玩家2))。
  • 会话锁定保护: 在活跃房间会话(主机/客户端)期间严格锁定预设切换,防止严重的文件同步冲突。
  • 插件商店与安全检查器: 已安装插件检查器,支持 SHA-256 数字签名验证、字节码安全扫描以及在线 GitHub 仓库商店。
  • 会话状态持久化: 记住上次选择的预设、端口和界面状态,保存于 Documents/ModTogether/sessions/session.json
  • 带宽限制器与实时进度: 速度限制控制(Kbps)以及实时速度表/进度条。
  • Discord 富文本状态(RPC): 在 Discord 上实时显示房间代码、主机状态和活跃玩家数量。
  • 模组浏览器与冲突检测: 支持搜索和管理模组,提供明确的 ⚡ 安装所选 按钮以及文件重叠检测。
  • 全面压缩包支持: 原生解压 .zip.7z(包括 Solid LZMA2 压缩包)和 .rar 文件。
  • 应用内自动更新器: 通过 GitHub Releases API 自动检测更新,支持直接原位替换文件并无缝重启。

系统要求

  • 《怪物猎人:世界》: 您的系统必须安装该游戏(适用于 MHW 插件)。
  • .NET 8 桌面运行时(可选): 仅在运行轻量版(约 10MB)时需要。独立版无需任何前置条件。
  • ZeroTier / Radmin VPN / Hamachi(可选): 建议用于通过虚拟局域网与好友联机。

🇹🇭 泰语版本(原文保留)

Description (คำอธิบาย)

  • พัฒนาด้วย C# .NET 8 WPF Native: พัฒนาด้วย C# .NET 8 และ WPF-UI เพื่อความลื่นไหล ดีไซน์สไตล์ Windows 11 และประสิทธิภาพสูงสุด
  • ภาพรวมโปรเจกต์ & ระบบปลั๊กอิน: ModTogether คือชุดโปรแกรมซิงค์ม็อดแบบ P2P สำหรับเกมพีซี เวอร์ชันนี้มาพร้อม ปลั๊กอิน Monster Hunter World (ModTogether.Plugins.MHW) ที่มาพร้อมระบบจัดการโฟลเดอร์ nativePC, ซิงค์ไฟล์ P2P, คลายบีบอัดม็อด และตรวจจับไฟล์ทับซ้อน สามารถพัฒนาปลั๊กอินเพิ่มเติมสำหรับเกมอื่นๆ ได้ผ่าน ModTogether.API
  • การซิงค์ม็อดแบบกระจายศูนย์ (P2P): เชื่อมต่อตรงระหว่างผู้เล่นโดยไม่ต้องผ่านเซิร์ฟเวอร์กลาง เพียงเปิดห้อง และให้เพื่อนกรอก IP กับ PIN 6 หลักเพื่อเข้าร่วม
  • หน้าจัดการห้องเดี่ยว (Unified Room Page): รวมการสร้างห้อง (Host) และการเข้าร่วมห้อง (Join) ไว้ในหน้าเดียวแบบ Side-by-Side
  • ลดปัญหาเกมแครช: มั่นใจได้ว่าทุกคนในห้องจะมีไฟล์ม็อดตรงกันหมด ตัดปัญหาเกมแครชจากการตรวจพบม็อดไม่ตรงกัน

ซอร์สโค้ดและการสนับสนุน (Source Code & Feedback)

  • คลังจัดเก็บโค้ด GitHub: ModTogether-P2P on GitHub (โอเพ่นซอร์สภายใต้ MIT License)
  • มีส่วนร่วมพัฒนา: สามารถร่วมแจ้งปัญหาการใช้งาน หรือส่งข้อเสนอแนะเพิ่มเติมได้ผ่านทางหน้า Issues บน GitHub

ขั้นตอนการใช้งานและเวอร์ชันจัดส่ง (Editions)

  • รุ่น Standalone (ModTogether_Universal_Standalone_x64.exe - ~85MB): มัดรวม .NET 8 Runtime มาในตัว ไม่ต้องติดตั้งอะไรเพิ่ม เปิดใช้งานได้ทันทีบน Windows ทุกเครื่อง
  • รุ่น Lightweight (ModTogether_Universal_Lightweight_x64.exe - ~10MB): ขนาดไฟล์เล็กจิ๋วเพียง 10MB สำหรับเครื่องที่มี .NET 8 Desktop Runtime อยู่แล้ว
  • การติดตั้ง: เป็นโปรแกรมแบบพกพา (Portable) เพียงวางไฟล์ไว้ในโฟลเดอร์ใดก็ได้แล้วดับเบิลคลิกเปิดใช้งานได้ทันที

⚠️ แจ้งเตือนเรื่องแอนตี้ไวรัส (False Positives)

  • โปรแกรมนี้คอมไพล์ด้วยระบบ Single-File Publish ทางการของ Microsoft .NET 8 พร้อม Deterministic Build ปิด ReadyToRun (R2R) และปิด Debug Symbols ไม่ได้ใช้ เครื่องมือบีบอัดภายนอก (เช่น UPX) หรือเครื่องมือพรางโค้ด (ConfuserEx)
  • ปลั๊กอินถูกโหลดผ่าน API มาตรฐาน AssemblyLoadContext.Default.LoadFromAssemblyPath() — ไม่มีการโหลด byte array แบบ raw injection
  • ระบบอัปเดตอัตโนมัติใช้การแทนที่ไฟล์โดยตรง — ไม่สร้าง batch script หรือ shell command ตัวกลาง
  • โปรแกรมนี้ปลอดภัย 100% และเป็น Open-source สามารถเข้าไปตรวจสอบซอร์สโค้ดทั้งหมดบน GitHub ได้ครับ
  • VirusTotal: ตรวจไม่พบบน Engine หลัก (Microsoft, Kaspersky, ESET, Bitdefender, Norton ฯลฯ) — SecureAge APEX อาจแจ้งเตือนผิดพลาด (false positive) จาก ML heuristic ที่ aggressive

Main features (ฟีเจอร์เด่น)

  • การซิงค์ข้อมูลตรงแบบ P2P ไร้เซิร์ฟเวอร์กลาง: เชื่อมต่อระหว่างผู้เล่นโดยตรงด้วย IP และ PIN 6 หลัก
  • โปรไฟล์ม็อด (Mod Presets & Profile Stashing): บันทึก/โหลดโปรไฟล์ม็อด และสลับม็อดได้ปลอดภัยโดยไม่เสียไฟล์เดิมด้วยระบบ .stash
  • ถังขยะกู้ข้อมูลประหยัดอินเทอร์เน็ต (Smart Recycle & Restore): กู้คืนไฟล์ม็อดที่โดนลบจากโฟลเดอร์ .recycle_mods ได้ทันทีโดยไม่ต้องโหลดใหม่
  • คลังปลั๊กอิน & ตรวจสอบความปลอดภัย (Plugins Store & Inspector): ตรวจสอบ SHA-256 และสแกนความปลอดภัยปลั๊กอิน DLL พร้อมคลังออนไลน์
  • ระบบจำกัดความเร็วเน็ต (Bandwidth Limiter): ตั้งค่าจำกัดความเร็ว Download/Upload (KB/s) ไม่ให้ดึงเน็ตขณะเล่นเกม
  • Discord Rich Presence (RPC): แสดงสถานะการเล่นเกม ชื่อห้อง และจำนวนผู้เล่นบน Discord แบบ Real-time
  • รองรับไฟล์บีบอัดทุกประเภท: คลายบีบอัดไฟล์ .zip, .7z (รวมถึง Solid LZMA2 Archives) และ .rar ได้สมบูรณ์
  • เช็คไฟล์ซ้ำซ้อน (Conflict Detection) & ติดตั้งอัตโนมัติ: ตรวจสอบไฟล์ทับซ้อนล่วงหน้า และติดตั้งม็อดที่ดาวน์โหลดให้อัตโนมัติ
  • อัปเดตอัตโนมัติ (In-App Auto Updater): ตรวจสอบอัปเดตจาก GitHub Releases API โดยอัตโนมัติ พร้อมดาวน์โหลดและแทนที่ไฟล์โดยตรง

Requirements (สิ่งที่จำเป็นต้องมี)

  • Monster Hunter World: ตัวเกมจะต้องถูกติดตั้งบนเครื่อง (สำหรับปลั๊กอิน MHW)
  • .NET 8 Desktop Runtime (ตัวเลือกเพิ่มเติม): จำเป็นเฉพาะกรณีใช้รุ่น Lightweight (~10MB) ส่วนรุ่น Standalone ไม่จำเป็นต้องมี
  • ZeroTier / Radmin VPN / Hamachi (ตัวเลือกเพิ่มเติม): แนะนำสำหรับเชื่อมต่อกับเพื่อนผ่าน VPN วงเดียวกัน