Skip to content

Latest commit

 

History

History
122 lines (87 loc) · 5.25 KB

File metadata and controls

122 lines (87 loc) · 5.25 KB

SourceBans++ 觀戰舉報

非官方第三方子插件 — 與 SourceBans++ 開發團隊無關,未獲其認可或維護。

Languages: English | 简体中文 | 繁體中文 | Русский | Deutsch | Français | Polski | Português | Magyar | Türkçe

一個非官方的 SourceBans++ SourceMod 子插件,允許玩家在非自由視角觀戰模式下按 R 鍵(換彈鍵)舉報正在觀戰的目標玩家。主要為 No More Room in Hell (NMRiH) 設計,但相容任何執行 SourceBans++ 的 Source 引擎遊戲。

功能特性

  • R 鍵舉報 — 在第一人稱或第三人稱觀戰模式下按 R 鍵發起舉報。
  • 僅限非自由視角 — 只在 OBS_MODE_IN_EYE (4) 和 OBS_MODE_CHASE (5) 模式下生效,自由視角被忽略。
  • 螢幕提示 — 定期顯示提示文字,展示觀戰目標名稱和 R 鍵指引。
  • 理由輸入 — 按 R 鍵後,玩家在聊天框輸入舉報理由。輸入 cancel 可取消。
  • 最短理由長度 — 可設定的最小字元數,防止空白或低品質舉報。
  • 冷卻時間 — 每個玩家兩次舉報之間的冷卻,防止洗版。
  • 多語言 — 自帶 10 種語言,與 SourceBans++ 翻譯覆蓋範圍一致。
  • 無音效 — 僅視覺回饋,無聲音效果。

環境需求

元件 版本
SourceMod 1.11 或更新
SourceBans++ 2.0.0 或更新(必須載入 sbpp_main.smx)
遊戲 任意 Source 引擎遊戲(已在 NMRiH 測試)

安裝步驟

  1. 下載最新的 發布版本
  2. 解壓縮壓縮包。
  3. common/addons/sourcemod/ 的內容複製到伺服器的 addons/sourcemod/ 目錄:
    • plugins/sbpp_specrep.smx
    • translations/sbpp_specrep.phrases.txt
    • configs/sourcebans/sbpp_specrep.cfg
  4. 重啟伺服器,或在伺服器控制台執行 sm plugins load sbpp_specrep

設定說明

設定檔位於 addons/sourcemod/configs/sourcebans/sbpp_specrep.cfg:

"SourceBans++ Spectate Report"
{
    "Config"
    {
        // Enable spectate report feature (0=disabled, 1=enabled)
        "Enable"        "1"

        // Cooldown in seconds between reports per player
        "Cooldown"      "60.0"

        // Minimum reason length (characters), shorter reasons will be rejected
        "MinLen"        "10"
    }
}
選項 類型 預設值 說明
Enable int 1 啟用或停用外掛程式(0 = 關閉, 1 = 開啟)
Cooldown float 60.0 每個玩家兩次舉報之間的冷卻時間(秒)
MinLen int 10 舉報理由的最小字元長度

指令

指令 權限 說明
sm_specrep_reload ADMFLAG_CONFIG 執行時重新載入設定檔
sm_specrep_status ADMFLAG_GENERIC 顯示外掛程式狀態和目前玩家觀戰狀態

工作原理

  1. 偵測 — 迴圈計時器(0.2 秒間隔)檢查每個死亡玩家的觀戰模式。
  2. 提示顯示 — 如果玩家正在第一人稱或第三人稱觀戰其他玩家,每 4 秒顯示一次提示文字。
  3. 按鍵偵測 — R 鍵(換彈)透過 OnPlayerRunCmd(按鈕位元)和 AddCommandListener("+reload") 雙重偵測。
  4. 理由輸入 — 按 R 鍵後進入理由輸入模式,下一條聊天訊息成為舉報理由。
  5. 提交 — 透過 sbpp_main.smx 提供的 SBPP_ReportPlayer native 提交舉報。

翻譯鍵

外掛程式自帶翻譯檔 sbpp_specrep.phrases.txt,涵蓋 10 種語言:

說明
Press R to Report 觀戰時顯示的提示文字
Spectate Report Prompt 按 R 鍵後的聊天提示
No Valid Target 觀戰目標無效時顯示
In Cooldown 玩家處於冷卻期時顯示
Report Canceled 玩家輸入 cancel 時顯示
Report Sent 舉報成功提交後顯示
Reason Short Need More 理由過短時顯示

相容性

  • SourceBans++ 2.0.0 / 2.0.1 / 2.0.2 — 已使用 plugin-only 包測試。
  • SourceMod 1.11 / 1.12 — 使用 SourcePawn Compiler 1.12.0.7230 編譯。
  • NMRiH — 主要測試環境。
  • 其他 Source 遊戲 — 應適用於任何支援 m_iObserverModem_hObserverTarget 的遊戲(CS:S、CS:GO、TF2、DoD:S、HL2:DM)。

開源授權條款

本專案基於 GNU General Public License v3.0 or later 授權條款。

作為 SourceBans++(GPLv3 授權)的衍生作品,本外掛程式繼承 GPLv3 授權條款。附帶的標頭檔(sourcebanspp.incsbpp_version.inc)根據 GPLv3 §5(a) 從 SourceBans++ 發行版完整複製,僅用於編譯。

本外掛程式在執行時連結 SourceMod SDK,後者基於 GPLv3 及 AlliedModders link exception 授權。

作者

Baimiao2534

致謝

Topics

sourcemod sourcebans sourcebans-pp sbpp nmrih plugin report spectate unofficial gpl3