本文へスキップ
アップデートニュース

CS2のマップスクリプトが人質の状態を追跡し、ラウンドを管理可能に

2026年10月22日のアップデートでは、マップ制作者向けの変更が加わりました。スクリプトに人質オブジェクトが追加されたほか、ConsoleとGameRulesが独立したセクションになり、リソースの読み込み状況も確認できるようになりました。

CasewayCaseway
4 分231
CS2のマップスクリプトが人質の状態を追跡し、ラウンドを管理可能に
共有

パッチの主な変更は、人質を扱うゲームモードに関するものです。人質は独立したCSHostageオブジェクトになり、マップスクリプトから、拾い上げようとする動きから救出、死亡まで、行動を追跡できます。

重要

マッチメイキングだけをプレイする人には、今回の変更による影響はありません。10月22日の変更一覧にあるのは「MAP SCRIPTING」の1項目だけです。マップ制作者がスクリプトを更新すれば、ワークショップマップやカスタムモードで新機能を利用できるようになります。

人質がただのモデルではなくなった

CSHostageにはIsBeingPickedUp、IsBeingCarried、IsRescuedメソッドが追加されました。人質が拾い上げられているか、運ばれているか、救出地点まで連れていかれたかをスクリプトから確認できます。GetRescuerで救出したプレイヤーを取得でき、GetPickUpStartTimeとGetPickUpFinishTimeでは拾い上げの開始時刻と終了時刻を確認できます。また、CSPlayerPawn.GetHostageを使えば、プレイヤー側から人質との関係を確認できます。

メソッドに加えて、マップがすぐに反応できるイベントも追加されました。

  • OnHostagePickUpStartは、プレイヤーが人質を拾い始めたときに発生します。
  • OnHostagePickUpAbortは、人質の拾い上げが中断されたときに発生します。
  • OnHostagePickUpは、人質を拾い上げたときに発生します。
  • OnHostageDropは、人質を下ろしたときに発生します。
  • OnHostageRescueは、人質が救出されたときに発生します。
  • OnHostageKillは、人質が死亡したときに発生します。

たとえば、特殊部隊が人質をつかんだタイミングで救出ポイントを付与したり、テロリスト側の拠点でアラームを鳴らしたりできます。

ConsoleとGameRulesにInstanceの機能の一部を移管

Valveは新たに2つのセクションを最上位に追加しました。Consoleには、コンソール変数に関する機能がまとめられています。GetConvarBoolean、GetConvarNumber、GetConvarString、GetConvarVector、GetConvarQAngle、GetConvarColorで必要な型の値を取得し、SetConvarで設定できます。最後のメソッドはsv_cheatsの制限を受けず、同期的に実行されるため、変更した値はスクリプトの次の行から反映されます。

変更前変更後
Instance.MsgConsole.Log
Instance.ClientCommand、ServerCommand、RegisterCheatCommand同じメソッドがConsoleに追加
Instance.IsWarmupPeriod、IsFreezePeriod、IsTeamIntroPeriod同じメソッドがGameRulesに追加
Instance.GetRoundsPlayed、GetRoundRemainingTime、SetRoundRemainingTime同じメソッドがGameRulesに追加
Instance.AddTeamMoneyGameRules.AddTeamMoney

GameRulesには独自のメソッドも追加されました。StartWarmupとEndWarmupでウォームアップを開始・終了でき、GetTeamScoreとAddTeamScoreでチームのスコアを取得・変更できます。Term​​inateRoundはラウンドを終了します。これにより、マップスクリプト側でラウンドの終了タイミングを決められるようになりました。

旧名称も引き続き使えますが、非推奨になっています。名前が機械的に変更されただけなので、プロジェクト内の呼び出しが少ないうちに移行しておくと簡単です。

全プレイヤーのリソース読み込み状況をスクリプトから確認可能に

Instance.PrecacheはCSPrecacheオブジェクトを返します。IsServerLoadingとIsServerLoadedでサーバー側のリソースが読み込み中か、読み込み済みかを確認でき、IsClientLoadingとIsClientLoadedではクライアント側の状態を確認できます。IsLoadedForAllは全プレイヤーの読み込みが完了したかを返します。リソースが不要になったら、Releaseで解放できます。

インターフェース、レーダー、その他の修正

そのほかは細かな改善と修正です。カスタムHUDレイアウト(custom_hud_layout)に、最上位クラスのHUD_TEAMMENU_VISIBLEとHUD_CHAT_VISIBLEが追加されました。チーム選択メニューやチャットを開いたときに、レイアウトを切り替えられます。radar_elementはRushだけでなく、すべてのモードでレーダーに表示されるようになりました。

  • GameRules.AddTeamMoneyにCSTeamMoneyReason.NONEを渡しても、ゲームがクラッシュしなくなりました。
  • CSTeamMoneyReasonとCSWeaponAttackTypeの列挙値が、point_script.d.tsの型定義と一致するようになりました。
  • CSRadarPoint.IsVisibleToTeamとCSObservablePoint.IsObservableForTeamが、数値ではなく真偽値を返すようになりました。
  • ログの警告にJavaScriptの呼び出しスタックと、不正な引数の詳細が表示されるようになりました。引数の番号は1始まりではなく、0始まりです。
記事の用語
Convar
サーバーやクライアントの設定など、読み取りや変更が可能なゲームのコンソール変数です。
sv_cheats
一部のコンソールコマンドを使えるようにするサーバー設定です。
Precache
ゲーム内で必要になる前に、モデルやサウンドなどのリソースを読み込んでおくことです。
CS2ワークショップマップ:2026年9月の新作、練習用マップや協力プレイ、変わり種ルールガイド
あわせて読みたいCS2ワークショップマップ:2026年9月の新作、練習用マップや協力プレイ、変わり種ルール9月の新作11マップと、過去数カ月の人気マップから3つを紹介します。射撃練習やタワーを攻略する協力プレイ、物理演算サンドボックスに、おなじみのマップを別ルールで遊べるものまで揃っています。CasewayCasewayまとめ読む
誤りや不正確な点を見つけましたか?ページ上のテキストを選択して Ctrl+Enter を押すと、その部分が自動でメッセージに入ります。
共有
Caseway
Caseway編集部

Casewayブログ編集部:CS2スキンマーケットのニュースや分析、ガイド、アイテムWikiをお届けします。

ブログの記事 89 件この著者のすべての記事
Caseway のケースCaseway の CS2 ケース155 個のケース、¥120 からすべてのケース

あわせて読みたい

すべての記事を見る