Repo Native ThirdPerson ActionMovement
Native third-person shoulder camera for R.E.P.O. with action movement, custom-model support, improved grabbing, map support, and camera collision fixes.
模組介紹 作者原文
REPO Native Third Person Action Movement
Language: 中文 | English
Source code / bug reports: sam0324sam/REPO-Native-Third-Person-Action-Movement
中文
這是 R.E.P.O. 的第三人稱攝影機 fork,基於 Team_Bingus 原本的 native-camera 做法。
本 fork 保留使用遊戲原生 CameraPosition.OverridePosition 路徑的概念,不另外生成第二臺攝影機,並加入動作遊戲式移動、常駐越肩第三人稱、改良抓取、地圖支援與自訂玩家模型相容性。
原始來源
此 mod 基於 Team_Bingus - Repo Native ThirdPerson:
- 原始 package: Team_Bingus/Repo_Native_ThirdPerson
此 fork 與 Team_Bingus 無隸屬關係。
特色
- 使用遊戲原生第三人稱攝影機 override
- 常駐右側越肩第三人稱視角
- 依攝影機方向判定的 WASD 動作移動
- 第三人稱時顯示本機玩家身體與外觀
- 穩定支援自訂玩家模型
- FP / TP 切換時保留準心指向
- 以準心選取目標,但抓取距離以角色 origin 計算
- 視野碰到障礙物時,攝影機會朝角色頭部拉近
- 第三人稱地圖 / 平板 overlay 支援
- 可顯示抓取 debug 線與狀態點
- 純 client-side,其他玩家不需要安裝
1.3.6 更新
- 修復與 TheEverythingMap by Nubez 等常駐小地圖模組共存時,第三人稱 Action Movement 轉向鎖死、只能朝相機正前方直走的相容性問題。
- 修復在第三人稱下使用 Tab 鍵開關地圖時,3D 手持地圖模型卡在畫面中央無法關閉的問題。
- 精確化手持地圖活躍狀態檢查(IsLocalMapToolActive),確保在背景顯示 Minimap 時依然享有正常的 Action Movement 自由轉身奔跑體驗。
- 預設關閉抓取 Debug 輔助線條(ShowGrabSelection = false),避免初次安裝時畫面出現除錯標線。
- 停用每秒週期性輸出的 [ThirdPersonMapOverlay] 日誌,避免正常遊玩時洗頻。
1.3.5 更新
- 修復第三人稱(TP)模式下下蹲與爬行壓頭時,相機位置因 Unity 原生層級疊加而被雙倍扣除(導致視野過低貼地或掉入地底)的 Bug。
1.3.4 更新
- 修正第一人稱(FP)模式下下蹲與爬行時,視野高度不會隨之下降(包含頭頂有障礙物時高度無法進一步壓低)的問題。
1.3.3 更新
- 優化相機碰撞平滑時間,當視野被牆壁擋住時能快速拉近,離開牆壁時能平滑回彈。
- 修正第三人稱相機覆寫模式下,導致部分需要螢幕判定(OnScreen)觸發的怪物機制失效的問題。
- 修正本地端第三人稱下,角色進行抓取或使用手電筒時手臂不會向前舉起伸出的問題。
1.3.1 更新
- 修正第三人稱會抓到「攝影機和角色之間」物品的問題。
- 修正視野被牆或障礙物拉近時,已抓取物品會跟著攝影機移動的問題。
- 修正 Head Grabber 抓住玩家時,嘔吐方向會跟第三人稱準心而不是角色身體方向的問題。
- 降低第三人稱攝影機被遮擋時,動畫頭部/手部造成抓取物晃動的問題。
- 修正第三人稱手電筒,讓手電筒模型、光源與左手姿勢保持同步。
- 修正第三人稱抓取/手電筒時,本機可見模型的手臂不會向前伸出的問題。
- 修正多人模式自訂玩家模型相容性,避免遠端玩家的移動/朝向被本機 WASD 方向影響。
- 關閉過量 camera snapshot log,並調整抓取 debug 輔助線顯示。
重要提醒
如果安裝此 fork,請先移除原本的 Team_Bingus-Repo_Native_ThirdPerson package。
此 fork 保留相同 plugin GUID 與 DLL 名稱,方便乾淨取代原版;也因此兩個 package 不應同時安裝。
安裝
使用 r2modman / Gale 安裝,或將 RepoThirdPerson.dll 放進 BepInEx plugins 資料夾。
操作
- 切換第三人稱:X
- 按住滑鼠右鍵:讓角色面向準心方向
- 其他 zoom / offset 設定可在 config 中調整,但測試版預設會鎖定 runtime tuning
主要設定
設定檔會生成於 com.reponativemods.thirdperson.cfg。
常用選項:
- Action Movement.Enabled
- Action Movement.TurnSpeed
- Action Movement.WhileGrabbing
- Camera.OffsetX
- Camera.OffsetY
- Camera.DefaultDistance
- Camera.MinDistance
- Camera.MaxDistance
- Camera.CollisionRadius
- Camera.LockRuntimeTuning
- Camera.LocalTransparencyMode
- Interaction.CameraCenteredSelection
- Debug.ShowGrabSelection
- Compatibility.ForceLocalModdedModel
問題回報
有問題請到 GitHub 發問或開 issue:
sam0324sam/REPO-Native-Third-Person-Action-Movement
回報時建議附上:
- 發生了什麼
- 預期應該如何
- 當時是在第一人稱或第三人稱
- 如果與抓取有關,正在抓什麼物品
- 截圖或短影片
- mod list,尤其是其他攝影機或玩家模型 mod
原始碼結構
mod 仍會編譯成單一 RepoThirdPerson.dll,以維持 BepInEx 相容性,但原始碼已依職責拆分:
- RepoThirdPerson_ActionMovement.cs:plugin 狀態、config、camera、movement、selection、grabbing、compatibility core
- Plugin.Patches.cs:Harmony patch 入口
- Plugin.AvatarVisuals.cs:本機角色、手電筒、手臂姿勢、可見模型輔助
- Plugin.DebugVisuals.cs:camera / grab debug 點與線
English
Third-person camera fork for R.E.P.O. built on top of the original native-camera approach from Team_Bingus.
This fork keeps the original idea of using REPO's own CameraPosition.OverridePosition path instead of spawning a second camera, then extends it with action-style movement, always-on shoulder third-person, improved grabbing, map support, and custom player model compatibility.
Original Source
This mod is based on Team_Bingus - Repo Native ThirdPerson:
- Original package: Team_Bingus/Repo_Native_ThirdPerson
This fork is not affiliated with Team_Bingus.
Highlights
- Native third-person camera override
- Always-on right-shoulder third-person view
- Camera-relative action movement
- Visible local player body and cosmetics while active
- Stable custom-player-model support
- Crosshair-preserving first-person / third-person toggle
- Camera-centered selection and grabbing with character-origin grab distance
- Camera collision that pulls the shoulder camera back toward the character head
- Third-person map/tablet overlay support
- Debug grab rays and points for troublesho
安裝與使用 安裝:BepInEx 外掛
- 本站下載的壓縮包就是模組本體,通常是 BepInEx 外掛(解壓後得到 .dll 或外掛資料夾)。
- 建議流程:用社群模組管理器(如 r2modman)選中本遊戲後匯入該模組,管理器會自動裝好 BepInEx 前置並處理依賴。
- 手動流程:先在遊戲目錄裝好 BepInEx 載入器,再把解壓出的 .dll 或外掛資料夾放進 BepInEx/plugins/。
- 啟動遊戲,BepInEx 控制台會列印載入日誌;確認這個模組出現在日誌裡即為安裝成功。
帶「前置依賴」的模組需要一併安裝,否則不會載入。功能開關通常在遊戲內或外掛自帶的設定檔裡調整。
下面這些內容需要先安裝,否則該模組不會生效: