UDN
Search public documentation:
GametypeTechnicalGuideJP
English Translation
中国翻译
한국어
Interested in the Unreal Engine?
Visit the Unreal Technology site.
Looking for jobs and company info?
Check out the Epic games site.
Questions about support via UDN?
Contact the UDN Staff
中国翻译
한국어
Interested in the Unreal Engine?
Visit the Unreal Technology site.
Looking for jobs and company info?
Check out the Epic games site.
Questions about support via UDN?
Contact the UDN Staff
UE3 ホーム > テクニカル & プログラミング ホーム > ゲームプレイ 技術ガイド
ゲームプレイ 技術ガイド
概要
GameInfo クラス
GameInfo クラスは、「Unreal」においてすべてのゲームタイプの基本クラスになっています。マップがロードされるたびに、適切な GameInfo クラスの新たなインスタンスが作成され、ゲームタイプに割り当てられます。特定のレベルのためにゲームタイプを設定する方法については、 ゲームのライフサイクル のセクションに詳細が掲載されています。
GameInfo プロパティ
Arbitration (アービトレーション : 仲裁)- bUsingArbitration - TRUE の場合は、ゲームがアービトレーションを使用します。
- bHasArbitratedHandshakeBegun - アービトレイト (仲裁) されたハンドシェークが発生した場合は TRUE となります。ハンドシェークが開始すると、新たな接続は拒絶されます。
- bNeedsEndGameHandshake - TRUE の場合は、ゲームは、その終わりにハンドシェークを実行します。
- bHasEndGameHandshakeBegun - 終了時ゲームハンドシェーク (end game handshake) が開始すると、TRUE となります。
- bIsEndGameHandshakeComplete - 終了時ゲームハンドシェークが完了すると、TRUE となります。
- ArbitrationHandshakeTimeout - GLOBALCONFIG (グローバルコンフィグ) です。キックされる前にクライアントがアービトレーション ハンドシェークを実行しなければならない時間量を保持します。
- PendingArbitrationPCs - ゲームがハンドシェークする相手として待っている
PlayerControllersの配列です。 - ArbitrationPCs - ゲームがハンドシェークを実行した相手で、かつ、オンラインサブシステムに書き出されるアービトレーションデータのファイナライズを要求している
PlayerControllersの配列です。
- [Min/Max]TimeMargin - クライアント クロックがサーバー クロックよりもこの値以上に遅れる / 進むと、スピードハック検知がトリガーされます。
- TimeMarginSlack - クライアント クロックがサーバー クロックからドリフトする速さがこの値以上になると、スピードハック検知がトリガーされます。
- bIsStandbyCheckingEnabled - TRUE の場合は、スタンバイ チート (接続をスタンバイ状態にするチート) のチェックを実行します。
- bIsStandbyCheckingOn - スタンバイ チートがチェックされているときは、TRUE となります。
- bHasStandbyCheatTriggered - スタンバイ チートが検知された場合に、TRUE となります。
- Standby[Rx/Tx]CheatTime - 発生する可能性があるパケット / 確認応答を受け取らない時間量がこの値以上になると、チート コードがトリガーされます。
- BadPingThreshold - ping がこの閾値を超えると、サーバーがパケットをディレイしていると見なされるか、不良なアップストリーム接続を持つようになります。
- PercentMissingFor[Rx/Tx]Standby - パケット / 確認応答データを欠損するクライアントのパーセンテージがこの値よりも大きくなると、スタンバイ コードがトリガーされます。
- PercentForBadPing - 不正な ping 値をもつクライアントのパーセンテージがこの値よりも大きくなると、スタンバイコードがトリガーされます。
- JoinInProgressStandbyWaitTime -待機時間がこの値よりも大きくなると、スタンバイ問題のために接続がチェックされます。
- PlayerControllerClass - 新たなプレイヤーが当該ゲームタイプのためにログインした場合に使用される
PlayerControllerクラスです。 - DefaultPawnClass - 新たなプレイヤーが当該ゲームタイプのためにログインした場合に使用される
Pawnクラスです。 - HUDType - 当該ゲームタイプ用のヘッドアップ ディスプレイ (HUD) のために使用される
HUDクラスです。 - PlayerReplicationInfoClass - 新たなプレイヤーが当該ゲームタイプのためにログインした場合に使用される
PlayerReplicationInfoクラスです。 - GameReplicationInfoClass - 当該ゲームタイプのために使用される
GameReplicationInfoクラスです。 - OnlineSub - プラットフォーム レイヤーのサービスと通信するために当該ゲームタイプによって使用される
OnlinSubsystemインスタンスです。 - GameInterface - オンラインゲームを作成、検索、破棄するためにゲームタイプによって使用される
OnlineGameInterfaceインターフェースです。 - OnlineStatsWriteClass - 統計を作成および保持するために使用し、クライアントに送るための
OnlineStatsWriteクラスです。 - OnlineGameSettingsClass - オンラインサービスを伴った、専用サーバーの登録を行う場合に使用するクラスです。
- DeathMessageClass - プレイヤーがデス (機能停止) したときのメッセージを表示するために使用する
LocalMessageクラスです。 - GameMessageClass - ゲームプレイ イベントに関するメッセージを表示するために使用する
GameMessageクラスです。 - AccessControlClass - 当該ゲームタイプのために使用する
AccessControlクラスです。 - AccessControl - プレイヤーがゲームに入ることができるか、あるいは admin になれるか (あるいはその両方を行えるか) を制御する
AccessControlインスタンスです。 - BroadcastHandlerClass - 当該ゲームタイプのために使用する
BroadcastHandlerクラスです。 - BroadcastHandler - 当該ゲームタイプのためのメッセージを表示するのに使用する
BroadcastHandlerインスタンスです。 - AutoTestManagerClass - 当該ゲームタイプのために使用する
AutoTestManagerクラスです。 - MyAutoTestManager - 自動化されたテスティングを管理するために使用する
AutoTestManagerインスタンスです。コマンドラインによって要求された場合にのみ存在します。
- bRestartLevel - TRUE の場合は、プレイヤーが死ぬと、レベルが再スタートします。
- bTeamGame - TRUE の場合は、ゲームはチームゲームとして設定されます。したがって、プレイヤーたちは分けられて 1 つ以上のチームのどれかに所属することになります。ベースとなる
GameInfoには、チームを作成するためのロジックがビルトインされていません。このプロパティは、当該ゲームがチームをもつということを指定するに過ぎません。 - bGameEnded - ゲーム終了条件を満たしたときに、TRUE となります。
EndGame()によって設定されます。 - bOverTime - TRUE の場合は、ゲームは延長されています。このようになるのは、
EndGame()が呼び出されたものの、満たされない終了条件があったためにCheckEndGame()が false を返した場合です。 - bDelayedStart - TRUE の場合は、プレイヤーが参加したときにゲームがすぐに開始されません。
- bWaitingToStartMatch - ゲームが
PendingMatch(ゲーム開始のために待機中) の状態にある場合は、TRUE となります。 - bChangeLevels - GLOBALCONFIG です。TRUE の場合は、ゲームが再スタートしたときに新たなマップがロードされます。
- bAlreadyChanged - ゲームが再スタートして
bChangeLevels=TRUEの場合に、新たなマップでロードプロセスが開始されると、TRUE となります。 - bGameRestarted - ゲームが再スタートしたときに、TRUE となります。
- bLevelChange - レベル遷移 (
ProcessServerTravel()による) が進行しているときに、TRUE となります。 - GameDifficulty - GLOBALCONFIG です。当該ゲームのための難易度モディファイアです。これは、ゲームにきわめて固有なものなので、サブクラスで利用すべきです。
- GoreLevel - GLOBALCONFIG です。ゴア (流血シーン) の量を保持します。
0にすると、ノーマルなゴアの量が表示され、値が大きくなると表示されるゴアの量が少なくなります。 - GameSpeed - ゲーム時間のためのスケーリング係数です。
WorldInfo.TimeDilationを設定するために使用されます。 - MaxSpectators - GLOBALCONFIG です。サーバー上で当該ゲームタイプによって許可される最大プレイヤー数です。
- MaxSpectatorsAllowed - 当該ゲームタイプによって常に許可される最大スペクテーター (観戦者) 数です。この
MaxSpectatorsは、config で設定され、改変が可能であるため、実用的な値にクランプ (値を制限) するために使用されます。 - NumSpectators - ゲームに存在する現在のスペクテーター数です。
- MaxPlayers - GLOBALCONFIG です。サーバー上で当該ゲームタイプによって許可される最大プレイヤー数です。
- MaxPlayersAllowed - 当該ゲームタイプによって常に許可される最大プレイヤー数です。この = MaxPlayers= は、config で設定され、改変が可能であるため、実用的な値にクランプ (値を制限) するために使用されます。
- NumPlayers - ゲームにおいて、人によって制御されているプレイヤーの現在数です。
- NumBots - ゲームにおいて、AI によって制御されているプレイヤーの現在数です。
- NumTravellingPlayers - この前のマップから現在まだ移動しているプレイヤー数です。
- CurrentID - 一意の
PlayerIDが作成されたときに、それを各PlayerReplicationInfo(プレイヤー複製情報) に割り当てるために使用される現在の ID です。 - DefaultPlayerName - LOCALIZED です。当該ゲームタイプのために、名前をプレイヤーに割り当てる際に使用するデフォルトの名前プレフィックスです。
- GameName - LOCALIZED です。当該ゲームタイプのための表示名です。
- FearCostFalloff -
bDoFearCostFalloff=trueの場合に、時間の経過にともなってNavigationPointsのためのFearCostがどのくらい速くフォールオフするかを決定する係数です。 - bDoFearCostFalloff - TRUE の場合は、時間の経過にともなって
NavigationPointsのためのFearCostがフォールオフします。 - GoalScore - マッチ (競技) を終了させるために、プレイヤーによって必要とされる「スコア」です。スコアは任意のコンセプトです。ただし、多くのゲームにおいて、何らかのスコアが監視され、特定のスコアに達するとゲームが終了します。
- MaxLives - マッチごとにプレイヤーに与えられるライフの最大数です。
- TimeLimit - 1 つのマッチに課せられる制限時間です。
- GameInfoClassAliases -
GameClassShortName構造体配列です。当該ゲームタイプのための短縮名をフルクラス名にマッピングします。 - DefaultGameType - CONFIG です。ゲームタイプが特に指定されていない場合に使用されるデフォルトのゲームタイプです。(そのゲームタイプ クラスへのフルパスを指定する文字列の形式で保持されます)。
- DefaultMapPrefixes - CONFIG です。レベル名のプレフィックスを特定のゲームタイプにマッピングする
GameTypePrefix構造体配列です。ゲームタイプが指定されていない場合に使用するゲームタイプを指定するのに使われます。DefaultGameTypeをオーバーライドします。詳細については、 ゲームタイプのプレフィックス のセクションを参照してください。 - CustomMapPrefixes - CONFIG です。レベル名のプレフィックスを特定のゲームタイプにマッピングする
GameTypePrefix構造体配列です。ゲームタイプが指定されていない場合に使用するゲームタイプを指定するのに使われます。DefaultGameTypeをオーバーライドします。詳細については、 ゲームタイプのプレフィックス のセクションを参照してください。 - bRequiresPushToTalk - TRUE の場合は、当該ゲームタイプのために音声通信がプッシュ トゥ トーク方式でなければなりません。それ以外は、音声通信は常に開いたままになっています。
- BaseMutator - 当該ゲームタイプに適用される第一の
ミューテータへの参照です。
- InactivePRIArray - ゲームから退出したプレイヤーの
PlayerReplicationInfos(プレイヤーレプリケーション情報) の配列です。これは、退出したプレイヤーが再接続したときのために保存されます。 - bKickLiveIdlers - GLOBALCONFIG です。TRUE の場合は、
Pawnを伴ったPlayerControllersを、アイドリング (待機状態) のためにゲームから退出させることができます。 - MaxIdleTime - プレイヤーは、この最大時間量よりも長い時間アイドリングすると、ゲームから退出させられます。
- LeaderboarId - スキル / スコアの統計を書き出すための順位表の ID です。
- ArbitratedLeaderBoardId - スキル / スコアの統計を書き出すための、アービトレイトされた順位表の ID です。
- bUseSeamlessTravel - TRUE の場合は、マップの移動を実行するために
SeamlessTravel()が使用されます。これは、バックグラウンドでロードするためクライアントの接続を切りません。 - CoverReplicatorBase - 専用サーバーの登録が開始したときに適用する URL オプションの文字列です。
- bHasNetworkError - 重大なネットワークエラーが発生し、サーバーがマップ移動を実行できなくなったときに、TRUE となります。
- ServerOptions - 専用サーバーの登録が開始したときに適用する URL オプションの文字列です。
- AdjustNetSpeed - 現在の調整されたネットスピードです。リッスンサーバーのためのネットスピードを動的に管理するために使用されます。
- LastNetSpeedUpdateTime - クライアントの入場 / 退出によってサーバーのためにネットスピードが更新された直近の時間です。
- TotalNetBandwidth - GLOBALCONFIG です。リッスンサーバーに利用できる帯域幅のトータルの値です。ネット接続間で動的に分割されます。
- [Min/Max]DynamicBandwidth - 接続単位で動的に設定される帯域幅の最小値と最大値です。
- bPauseable - TRUE の場合は、プレイヤーがオンラインでプレイヤーしているときに、ゲームをポーズすることができます。スタンドアローン型ゲームでプレイしているならば、プレイヤーは常にゲームをポーズすることができます。
- bAdminCanPause - TRUE の場合は、adimin がオンラインでプレイヤーしているときに、ゲームをポーズすることができます。
- Pausers - ポーズ解除が可能か否かを決定するために
ClearPause()でチェックされるデリゲートの配列です。
- bFixedPlayerStart - TRUE の場合は、プロファイリングを一定にするために、同一のスポーン ポイント (複数可) をゲームが使用します。
GameInfoにはこのための機能がありません。この機能は、サブクラスにおけるスポーンポイント選択のロジックに追加される必要があります。 - CauseEventCommand - マップ URL にあるゲームに渡されたコンソールイベントを保持します。通常は、テスティングのために (すなわち、自動化されたフライスルーをトリガーするために) 使用されます。
GameInfoにはこのコマンドを実行するための機能がありません。サブクラスの中に追加する必要があります。 - BugLocString - マップ URL にあるゲームに渡された Bugit (バグ要修正) の位置の文字列を保持します。
- BugRotString - マップ URL にあるゲームに渡された Bugit (バグ要修正) の回転の文字列を保持します。
GameInfo の関数
ゲーム- OnEngineHasLoaded - 起動時にエンジンがロードされたときに、ネイティブコードから呼び出されるイベントです。このイベントは、ゲーム起動時に一度だけ呼び出されます。新たなマップが (したがってゲームタイプが) ロードされるたびに呼び出されるわけではありません。
- GetSupportedGameTypes [InFilename] [OutGameType] [bCheckExt] - 指定されたマップ名のための
GameTypePrefix構造体を取得します。詳細については、 ゲームタイプのプレフィックス のセクションを参照してください。- InFilename - このマップ名のためにゲームタイプを取得します。
- OutGameType - 出力パラメータです。指定されたマップに関連づけられている
GameTypePrefix構造体を出力します。 - bCheckExt - オプションのパラメータです。TRUE の場合は、マップ名のファイル拡張子をチェックすることによって、有効なマップファイルであることを確認します。
- GetMapCommonPackageName [InFilename] [OutCommonPackageName] - 指定されたマップのファイル名に、一般的なパッケージ名を (存在するならば) 取得します。成功すると、TRUE を返します。マップのための
GameTypePrefixが見つからない場合や、GameTypePrefixが一般的なパッケージを使用していない場合は、FALSE を返します。詳細については、 一般的なパッケージ のセクションを参照してください。- InFilename - このマップの名前のために一般的なパッケージの名前を取得します。
- OutCommonPackageName - 出力パラメータです。一般的なパッケージの名前を出力します。
- GetDefaultGameClassPath [MapName] [Options] [Portal] - 指定されたマップとオプションのために使用する、オプションの
GameInfoクラスへのフルパスを返します。この関数は、クック済みのパッケージを事前にロードするために使用されます。したがって、フォールバックはまったく含める必要はありません。SetGameType()が後に呼び出されて、望ましいクラスを実際に検索 / ロードすることになっています。- MapName - このマップの名前のためにデフォルトゲームタイプを取得します。
- Options - マップのための URL からのオプション文字列です。(ただし存在する場合)。
- Portal - プレイヤーを送る、目的地のポータルの名前です。(ただし存在する場合)。
- SetGameType [MapName] [Options] [Portal] - 指定されたマップおよび指定されたオプションにおけるゲームのためにスポーンする GameInfo のクラスを返します。望ましいクラスが見つからない場合に備えて、この関数に何らかのフォールバックを含めるべきです。
- MapName - このマップの名前のためにゲームタイプを取得します。
- Options - マップのための URL からのオプション文字列です。(ただし存在する場合)。
- Portal - プレイヤーを送る、目的地のポータルの名前です。(ただし存在する場合)。
- InitGame [Options] [ErrorMessage] - 当該ゲームタイプのためにパラメータを初期化するとともにヘルパークラスをスポーンするために、他のスクリプトが実行される前に、エンジンによって呼び出されます。
- Options - マップのための URL からのオプション文字列です。(ただし存在する場合)。
- ErrorMessage - 出力パラメータです。ゲームタイプの初期化中に発生したエラーメッセージを出力します。
- StartMatch - マッチがこれから始まり、プレイヤーのための
Pawnがスポーンされることを、全アクタに通知します。 - Reset - ゲームタイプを初期状態にリセットします。他のすべての
Actorがリセットされた後に呼び出されます。 - ShouldReset [ActorToReset] - 指定された
Actorがリセットできるか否かを決定します。ゲームを再スタートしているあいだに、指定されたActorがその上でReset()を呼び出さなければならない場合は、TRUE を返します。GameInfoが手動でアクタをリセットする場合や、アクタがリセットされる必要がない場合は、FALSE を返します。- ActorToReset - リセットする
Actorです。
- ActorToReset - リセットする
- ResetLevel - あらゆる
Controller、さらに、あらゆるActor、さらにはGameInfoのそれぞれでReset()を呼び出すことによって、レベルをリセットします。 - RestartGame -
bChangeLevels=TRUEの場合にマップを変更するか、あるいは、現在のマップをリロードすることによって、ゲームを再スタートします。 - EndGame [Winner] [Reason] - ゲーム終了処理を実行します。ゲームの終了条件が満たされた場合に呼び出されます。
- Winner - ゲームに勝利したプレイヤーの
PlayerReplicationInfo(プレイヤー レプリケーション) です。 - Reason - ゲームを終了する理由を指定する
文字列です。たとえば、TimeLimit (制限時間)、LastMan (生き残り)、DungeonComplete (ダンジョンの完了) などです。
- Winner - ゲームに勝利したプレイヤーの
- CheckEndGame [Winner] [Reason] -
EndGame()から呼び出されて、指定された理由に基づいてゲームを実際に終了すべきか否かを確認します。サブクラスによってこれをオーバーライドして、ゲーム固有の変更を追加することができます。- Winner - ゲームに勝利したプレイヤーの
PlayerReplicationInfo(プレイヤー レプリケーション) です。 - Reason - ゲームを終了する理由を指定する
文字列です。たとえば、TimeLimit (制限時間)、LastMan (生き残り)、DungeonComplete (ダンジョンの完了) などです。
- Winner - ゲームに勝利したプレイヤーの
- CheckModifiedEndGame [Winner] [Reason] -
CheckEndGame()から呼び出されて、ゲーム終了条件の変更を可能にします。デフォルトでは、全ミューテータ上にあるCheckEndGame()を呼び出します。- Winner - ゲームに勝利したプレイヤーの
PlayerReplicationInfo(プレイヤー レプリケーション) です。 - Reason - ゲームを終了する理由を指定する
文字列です。たとえば、TimeLimit (制限時間)、LastMan (生き残り)、DungeonComplete (ダンジョンの完了) などです。
- Winner - ゲームに勝利したプレイヤーの
- PerformEndGameHandling - オンラインレイヤーのために、ゲームの終了条件の処理を行います。
- GameEnding - エンジンによって呼び出されて、ゲームがシャットダウンされる (すなわち、アプリケーションが終了するか、新たなマップがロードされる場合) ことを、ゲームタイプに通知します。
- PreExit - エンジンに呼び出されて、エンジンがシャットダウンすることをゲームに通知します。
- MatchIsInProgress - マッチが現在進行中か否かを返します。
- GameEventsPoll - カスタムのゲームロギングを一定間隔で実行する統計コードのエントリーポイントとして機能する関数スタブです。統計ロギングが開始されると、一定間隔で、
GameplayeStatsWriterのPoll()タイマーによって呼び出されます。カスタムの統計ロギングを追加するには、サブクラスでこの関数をオーバーライドします。 - EndLogging [Reason] - 統計ロギングを停止するための関数スタブです。統計ロギングを停止するロジックを追加するには、サブクラスでこの関数をオーバーライドします。
- Reason - ロギングを中止する理由を指定する
文字列です。
- Reason - ロギングを中止する理由を指定する
- ProcessServerTravel [URL] [bAbsolute] - 新たなレベルにサーバーをジャンプさせる処理を行います。
- URL - 移動先のマップの
URLです。 - bAbsolute - TRUE の場合は、絶対的移動が使用されます。そうでない場合は、相対的な移動が使用されます。
- URL - 移動先のマップの
- ProcessClientTravel [URL] [NextMapGuid] [bSeamless] [bAbsolute] - 指定された URL に移動するようにすべてのクライアントに通知します。
- URL - 移動先のマップの
URLです。 - NextMapGuid - 次レベルのサーバーバージョンの GUID (グローバル一意識別子) です。
- bSeamless - TRUE の場合は、シームレスな移動が使用されます。
- bAbsolute - TRUE の場合は、絶対的移動が使用されます。そうでない場合は、相対的な移動が使用されます。
- URL - 移動先のマップの
- SendPlayer [aPlayer] [URL] - プレイヤーを指定された URL に送ります。
- aPlayer - 新たな URL に送るプレイヤーの
PlayerControllerです。 - URL - 移動先のマップの
URLです。
- aPlayer - 新たな URL に送るプレイヤーの
- GetNextMap - 次のゲームで、プレイヤーが移動すべきマップを返す関数スタブです。ゲームにマップのサイクルがある場合は、サブクラスでこの関数をオーバーライドしなければなりません。
- GetTravelType - 使用すべき移動のタイプを決定します。絶対的移動については TRUE を返し、相対的移動については FALSE を返します。
- PreCommitMapChange [PreviousMapName] [NextMapName] - 前のレベルをアンロードする前に、
CommitMapChange()によってエンジンが呼び出すイベントスタブです。- PreviousMapName - アンロードされるマップの名前です。
- NextMapName - ロードされるマップの名前です。
- PostCommitMapChange - 前のレベルがアンロードされて新たなレベルがロードされた後に、
CommitMapChange()によってエンジンが呼び出すイベントスタブです。 - GetSeamlessTravelActorList [bToEntry] [ActorList] - シームレスな遷移中にサーバー上でエンジンによって呼び出されて、新たなレベルに移動すべきアクタのリストを取得します。
PlayerControllers、および、Role < ROLE_AuthorityActor、 さらに、リストに入っているActor(すなわち、リストに入っているObject.Outer = =Actor) 内部にあるあらゆる非アクタは、ここに含まれるか否かにかかわらず、すべて自動的に移動されます。 PersistentLevel 内の動的 (bStatic および bNoDelete) アクタだけが移動できます。(これには、ゲームプレイ中にスポーンされる全アクタが含まれます)。この関数は、遷移の両側で呼び出されます。中間でアクタに変更が生じることがあるからです。(たとえば、プレイヤーが参加したり、ゲームから退出したりする場合)。- bToEntry - TRUE の場合は、サーバーが古いレベルからエントリに移動します。そうでない場合は、サーバーはエントリから新たなレベルに移動します。
- ActorList - 出力パラメータです。 移動すべき
Actorの配列を出力します。
- PostSeamlessTravel - シームレスな移動が完了した後に、 新たな
GameInfo上でエンジンによって呼び出されます。この関数は、通常、ゲーム内にすでに存在するプレイヤーを再初期化するために使用されます。そのようなプレイヤーは、Login()を呼び出さないからです。 - HandleSeamlessTravelPlayer [C] - シームレスなレベル遷移を経て残っていたプレイヤーの再初期化を処理します。サーバーの後にロードを終えたプレイヤーのために、
PostSeamlessTravel()およびエンジンから呼び出されます。- C - 処理すべきプレイヤーの
Controllerです。
- C - 処理すべきプレイヤーの
- SetSeamlessTravelViewTarget [PC] - シームレスなレベル遷移を経て残っていたプレイヤーのために
ViewTarget(ビューターゲット) を設定します。- PC -
ViewTargetを設定すべきPlayerControllerです。
- PC -
- PreLogin [Options] [Address] [ErrorMessage] - サーバーに加わりつつあるプレイヤーを受け入れ、もしくは拒否します。
- Options - マップのための URL からのオプション文字列です。(ただし存在する場合)。
- Address - 接続しているプレイヤーの IP アドレスです。
- ErrorMessage - 出力パラメータです。失敗したログインのためのエラーメッセージを出力します。
文字列が空白以外の場合は、ログインが失敗したことを表します。
- Login [Portal] [Options] [UniqueID] [ErrorMessage] - プレイヤーをログインさせるとともに、プレイヤーのための
PlayerControllerをスポーンします。スポーンしたPlayerControllerを返します。- Portal - プレイヤーを送る、目的地のポータルの名前です。(ただし存在する場合)。
- Options - マップのための URL からのオプション文字列です。(ただし存在する場合)。
- UniqueID - ログインしているプレイヤーのための
UniqueNetID(一意なネット ID) です。 - ErrorMessage - 出力パラメータです。失敗したログインのためのエラーメッセージを出力します。
文字列が空白以外の場合は、ログインが失敗したことを表します。
- PostLogin [NewPlayer] -プレイヤーのログインが成功した後にエンジンによって呼び出されて、プレイヤーのセットアップを処理します。
- NewPlayer - ログインしたプレイヤーの
PlayerControllerです。
- NewPlayer - ログインしたプレイヤーの
- Logout [Exiting] -
Controllerから呼び出されて、プレイヤーが破棄されたときに、ゲームからプレイヤーを削除します。- Exiting - ゲームから退出するプレイヤーの
Controllerです。
- Exiting - ゲームから退出するプレイヤーの
- SpawnDefaultPawnFor [NewPlayer] [StartSpot] -
DefaultPawnClassを使用して、指定されたControllerのためのPawnをスポーンして返します。- NewPlayer -
PawnをスポーンするプレイヤーのControllerです。 - StartSpot -
PawnをスポーンするNavigationPointです。
- NewPlayer -
- GetDefaultPlayerClass [C] - 指定された
Controllerのために使用するデフォルトのPawnクラスを返します。- C - この
ControllerのためにPawnクラスを取得します。
- C - この
- StartHumans -
RestartPlayer()を呼び出すことによって、人が制御するプレイヤーをスタートさせます。 - StartBots -
RestartPlayer()を呼び出すことによって、AI が制御するプレイヤーをスタートさせます。 - RestartPlayer [NewPlayer] - プレイヤーのために、始点を探し、
Pawnをスポーンし、デフォルトのインベントリを追加するなどして、プレイヤー (人または AI) を再スタートさせます。- NewPlayer - 再スタートさせるプレイヤーの
Controllerです。
- NewPlayer - 再スタートさせるプレイヤーの
- GenericPlayerInitialization [C] - 移動メソッド (
PostLogin()およびHandleSeamlessTravelPlayer()) において共通するプレイヤーの初期化をすべて処理します。- C - 初期化するプレイヤーの
Controllerです。
- C - 初期化するプレイヤーの
- UnregisterPlayer [PC] - プレイヤーがゲームから退出する際に、名前の付いたセッションからプレイヤーを削除します。
- PC - ゲームから退出するプレイヤーの
PlayerControllerです。
- PC - ゲームから退出するプレイヤーの
- AtCapacity [bSpectator] - ゲームがすでに定員になっているか否かを返します。
- bSpectator - TRUE の場合は、スペクテーター (観戦者) の定員に達しているか否かを返します。そうでない場合は、プレイヤーの定員に達しているか否かを返します。
- GetNumPlayers - ゲーム内にいるプレイヤーの数を返します。
- GetNextplayerID - 参加しているプレイヤーのために使用する、次の ID を返します。
- SetPlayerDefaults [PlayerPawn] - 特定のプレイヤー
Pawnのプロパティを、デフォルトの値にリセットします。RestartPlayer()から呼び出されます。- PlayerPawn - この
Pawnのためにプロパティをリセットします。
- PlayerPawn - この
- CanSpectate [Viewer] [ViewTarget] - 指定された
PlayerControllerが、指定されたPlayerReplicationinfoの視点から見物することができるか否かを返します。- Viewer - スペクテーターの
PlayerControllerです。 - ViewTarget - 見物対象の
PlayerReplicationInfoです。
- Viewer - スペクテーターの
- ChangeName [Other] [S] [bNameChange] - 指定されたプレイヤーの名前を、指定された名前に変更します。
- Other - プレイヤーの
Controllerです。 - S - プレイヤーに付ける名前です。
- bNameChange - 未使用です。
- Other - プレイヤーの
- ChangeTeam [Other] [N] [bNewTeam] - 指定されたプレイヤーのチームを、指定されたチームに変更します。
- Other - プレイヤーの
Controllerです。 - N - プレイヤーを配置するチームの番号です。
- bNewteam - 未使用です。
- Other - プレイヤーの
- PickTeam [Current] [C] - 指定されたプレイヤーを配置するチームの実際の番号を返します。
- Current - プレイヤーを配置するチームの仮の番号です。
- C - プレイヤーの
Controllerです。
- PlayerCanRestartGame [aPlayer] - 指定されたプレイヤーが、ゲームを再スタートしても良いかどうかを返します。
- aPlayer - 再スタートを要求しているプレイヤーの
PlayerControllerです。
- aPlayer - 再スタートを要求しているプレイヤーの
- PlayerCanRestart [aPlayer] - 指定されたプレイヤーが、再スタートされても良いかどうかを返します。
- aPlayer - 再スタートされるように要求しているプレイヤーの
PlayerControllerです。
- aPlayer - 再スタートされるように要求しているプレイヤーの
- SwapPlayerControllers [OldPC] [NewPC] - シームレスな移動を行い、新たなゲームタイプの
Controllerクラスが前のものと異なる場合、ビューポート / 接続のPlayerControllersを交換します。- OldPC - 前のゲームタイプに由来するプレイヤーの
PlayerControllerです。 - NewPC - 新ゲームタイプにおけるプレイヤーのための
PlayerControllerです。
- OldPC - 前のゲームタイプに由来するプレイヤーの
- DoNavFearCostFalloff -
bDoFearCostFalloff=trueの場合、ナビゲーションポイントの FearCost フォールオフを更新します。GameInfoのTimer()から呼び出されます。 - NotifyNavigationChanged [N] - NavigationPoint (ナビゲーションポイント) がブロックされるか、ブロック解除されたときに、ゲームタイプに通知する関数スタブです。これによって、ゲームタイプがワールド内の AI に通知し、AI がルートを更新することができるようになります。
- N - 変更された
NavigationPointです。
- N - 変更された
- ShouldSpawnAtStartSpot [Player] - 指定されたプレイヤーの
StartSpotプロパティを、Pawnのためのスポーン位置として使用すべきか否かを返します。- Player - プレイヤーの
Controllerです。
- Player - プレイヤーの
- FindPlayerStart [Player] [InTeam] [IncomingName] - 当該プレイヤーの出発地点として最善な
NavigationPointを返します。PlayerStartsはRatePlayerStart()によって評価されます。- Player - プレイヤーの
Controllerです。 - InTeam - オプションの引数です。プレイヤーが属すチームの番号です。
- IncomingName - オプションの引数です。出発地点として使用するテレポーターのタグを指定します。
- Player - プレイヤーの
- ChoosePlayerStart [Player] [InTeam] - 指定されたプレイヤーの出発地点として最善な
PlayerStartを返します。PlayerStartsはRatePlayerStart()によって評価されます。- Player - プレイヤーの
Controllerです。 - InTeam - オプションの引数です。プレイヤーが属すチームの番号です。
- Player - プレイヤーの
- RatePlayerStart [P] [Team] [Player] - 指定された
PlayerStartが、指定されたプレイヤーとチームにとってどの程度望ましいものかを評価して返します。- P - 評価を受ける
PlayerStartです。 - Team - プレイヤーが属すチームの番号です。
- Player - プレイヤーの
Controllerです。
- P - 評価を受ける
- ShouldRespawn [Other] - 指定された
PickupFactory(ピックアップ ファクトリ) が再スポーンすべきか否かを返します。デフォルトでは、マルチプレイヤーのゲームにおいてのみ、アイテムの再スポーンが許されています。- Other - 再スポーンさせるアイテムの
PickupFactoryです。
- Other - 再スポーンさせるアイテムの
- AddDefaultInventory [P] - 指定された
Pawnのためにデフォルトのあらゆるインベントリをスポーンします。 (Pawn::AddDefaultInventory()を使用します)。PawnをスポーンするActorFactoryおよびRestartPlayer()から呼び出されます。- P - デフォルトのインベントリを渡す
Pawnです。
- P - デフォルトのインベントリを渡す
- PickupQuery [Other] [ItemClass] [Pickup] - 渡されたアイテムを指定されたプレイヤーが選択できるか否かを返します。
Pawnがアイテムを選択しようとする際にPickupFactoryまたはDroppedPickupによって呼び出されます。- Other - アイテムを選択しようとしている
Pawnです。 - ItemClass - アイテムの
Inventoryクラスです。 - Pickup - アイテムを含む
Actorです。(例 :PickupFactory)。
- Other - アイテムを選択しようとしている
- DiscardInventory [Other] [Killer] - プレイヤーが死んだ後、プレイヤーのインベントリを破棄またはドロップします。
- Other - 死んだプレイヤーの
Controllerです。 - Killer - オプションの引数です。死んだプレイヤーを殺したプレイヤーの
Controllerです。(ただし、存在する場合)。
- Other - 死んだプレイヤーの
- BroadcastDeathMessage [Killer] [Other] [damageType] - あるプレイヤー (
Killer) が他のプレイヤー (Other) を殺した場合に、DeathMessageClassからのメッセージを表示します。BroadcastLocalized()を呼び出します。- Killer - 一方のプレイヤーを殺したプレイヤーの
Controllerです。None(プレイヤーによって殺されなかった場合) またはOther(この場合自死ということになる) にすることができます。 - Other - 殺されたプレイヤーの
Controllerです。 - damageType - プレイヤーの死を招いたダメージの
DamageType(ダメージタイプ) です。
- Killer - 一方のプレイヤーを殺したプレイヤーの
- Broadcast [Sender] [Msg] [Type] - 指定されたメッセージを、ゲーム内の全プレイヤーに表示します。
- Sender - メッセージを開始する
Actorです。 - Msg - 表示するメッセージを表す
文字列です。 - type - オプション引数です。送信されるメッセージの追加の「タイプ」を規定するために使用できる
名前です。
- Sender - メッセージを開始する
- BroadcastTeam [Sender] [Msg] [Type] - 通信者と同じチームにいる全プレイヤーに指定されたメッセージを表示します。
- Sender - メッセージを開始する
Actorです。 - Msg - 表示するメッセージを表す
文字列です。 - type - オプション引数です。送信されるメッセージの追加の「タイプ」を規定するために使用できる
名前です。
- Sender - メッセージを開始する
- BroadcastLocalized [Sender] [Message] [Switch] [RelatedPRI_1] [RelatedPRI_2] [OptionalObject] - ゲーム内の全プレイヤーにローカライズされたメッセージを表示します。
- Sender - メッセージを開始する
Actorです。 - Message - メッセージの入手元である
LocalMessageクラスです。 - Switch - オプションの引数です。表示するメッセージのインデックスです。
- RelatedPRI_1 - オプションの引数です。メッセージの中で表示すべき情報を得るのに使用できる
PlayerReplicationInfoです。 - RelatedPRI_2 - オプションの引数です。メッセージの中で表示すべき情報を得るのに使用できる
PlayerReplicationInfoです。 - OptionalObject - オプション引数です。メッセージを表示する際に使用できる
Objectです。たとえば、LocalMessageクラスのデフォルトの動作では、これをClassオブジェクトとして扱い、その上にあるGetLocalString()を呼び出すことによって、表示すべきメッセージを入手します。(これはBroadcastDeathMessageのために使われます)。
- Sender - メッセージを開始する
- BroadcastLocalizedTeam [TeamIndex] [Sender] [Message] [Switch] [RelatedPRI_1] [RelatedPRI_2] [OptionalObject] - 指定されたチームにいる全プレイヤーにローカライズされたメッセージを表示します。
- TeamIndex - メッセージの表示先になるチームの番号です。
- Sender - メッセージを開始する
Actorです。 - Message - メッセージの入手元である
LocalMessageクラスです。 - Switch - オプションの引数です。表示するメッセージのインデックスです。
- RelatedPRI_1 - オプションの引数です。メッセージの中で表示すべき情報を得るのに使用できる
PlayerReplicationInfoです。 - RelatedPRI_2 - オプションの引数です。メッセージの中で表示すべき情報を得るのに使用できる
PlayerReplicationInfoです。 - OptionalObject - オプション引数です。メッセージを表示する際に使用できる
Objectです。たとえば、LocalMessageクラスのデフォルトの動作では、これをClassオブジェクトとして扱い、その上にあるGetLocalString()を呼び出すことによって、表示すべきメッセージを入手します。(これはBroadcastDeathMessageのために使われます)。
- KickIdler [PC] -
AccessControl::KickPlayer()を使用してゲームから指定されたプレイヤーを取り除きます。- PC - 締め出されるプレイヤーの
Controllerです。
- PC - 締め出されるプレイヤーの
- Kick [S] - ゲームから指定されたプレイヤーを取り除きます。
- S - 取り除くプレイヤーを指定する
文字列です。これは、そのプレイヤーのPlayerNameかPlayerIDでなければなりません。
- S - 取り除くプレイヤーを指定する
- ForceKickPlayer [PC] [KickReason] - admin のステータスにかかわらず、指定されたプレイヤーをゲームから取り除きます。
- PC - 締め出されるプレイヤーの
Controllerです。 - KickReason - プレイヤーが取り除かれた理由を指定する
文字列です。
- PC - 締め出されるプレイヤーの
- KickBan [S] - 指定されたプレイヤーをゲームから取り除くとともにバンする (接続を禁止する) ことによって、再エントリを拒否します。
- S - 取り除くプレイヤーを指定する
文字列です。 これは、そのプレイヤーのPlayerNameかPlayerIDである必要があります。
- S - 取り除くプレイヤーを指定する
- InitGameReplicationInfo - ゲームのために
GameReplicationInfoを初期化します。 - StartOnlineGame -
StartMatch()によって呼び出され、オンラインシステムにゲームを起動させるとともに、コールバックを待機するように命令します。接続済みの各クライアントに対して、セッションを進行中としてマークするように命令します。 - OnStartOnlineGameComplete [SessionName] [bWasSuccessful] - オンラインシステムがゲームの起動を完了したときに呼び出されます。
- SessionName - セッションの
名前です。 - bWasSuccessful - TRUE の場合は、オンラインシステムがゲームの起動に成功しました。また、全クライアントが登録されます。
- SessionName - セッションの
- EndOnlineGame -
PerformEndGameHandling()から呼び出されて、オンラインシステムに対してゲームを終了するように命じます。全クライアントに対しても同様の命令を行います。 - GetNetworkNumber - ホストマシンの IP アドレスを返します。
- RequiresPassword - 参加するためにパスワードをゲームが必要とするか否かを返します。
- ReplicateStreamingStatus [PC] - 現在のレベル ストリーミングのステータスを、指定された
PlayerControllerにレプリケートします。- PC - ストリーミングのステータスをレプリケートする、プレイヤーの
PlayerControllerです。
- PC - ストリーミングのステータスをレプリケートする、プレイヤーの
- BestNextHostSort [A] [B] - 指定されたホストのうちどれが望ましいかを返します。上位のホストからなるリストをソートするために使用されます。最も多いピア接続をもつクライアントが最上位に来ます。さらに、参加時間に基づいてソートすることによって、最も新しいプレイヤーが望ましいものとなるようにします。
- [A/B] - ソートすべきホストの
PlayerControllersです。
- [A/B] - ソートすべきホストの
- UpdateBestNextHosts - 現在のサーバー上で次善のホストからなるリストを更新するとともに、全クライアントにこのリストをレプリケートします。
- UpdateNetSpeeds - 新たなスピードでゲーム内の全
PlayerControllersを更新します。 - CalculatedNetSpeed -
MinDynamicBandwidth(最小動的帯域幅) とMaxDynamicBandwidth(最大動的帯域幅) の間にクランプされたネットスピードを計算します。 - WriteOnlineStats - 全クライアントに対して、統計情報を書き出すように命令し、さらに、ローカルの統計情報を処理します。
- WriteOnlinePlayerScores - マッチがアービトレイトされる場合、全クライアントに対して、プレイヤーのスコアのコピーを書き出すように命令します。アービトレイト (仲裁) されない場合は、最初のローカルプレイヤーにのみスコアを書き出させます。
- UpdateGameSettings - ゲームを探索しているプレイヤーに対して発行しなければならないゲーム設定項目の変更を更新するために使用される関数スタブです。サブクラスによってオーバーライドされる必要があります。
- UpdateGameSettingsCounts - プレイヤー数に関するオンライン サブシステムの情報を更新することによって、LAN マッチが正しいプレイヤー数を表示できるようにします。
- ProcessClientRegistrationCompletion [PC] [bWasSuccessful] - プレイヤーがアービトレーション (仲裁) の登録を完了したことを、ゲームに対して通知する関数スタブです。登録の完了を処理するには、サブクラスでこの関数スタブをオーバーライドします。
- PC - 登録を完了したプレイヤーの
PlayerControllerです。 - bWasSuccessful - TRUE の場合は、登録が成功しました。
- PC - 登録を完了したプレイヤーの
- StartArbitrationRegistration - 非同期の登録を開始する関数スタブです。サブクラスによってオーバーライドされる必要があります。
- StartArbitratedMatch - アービトレイトされたマッチを開始する関数スタブです。サブクラスによってオーバーライドされる必要があります。
- RegisterServerForArbitration - アービトレーションのためのサーバーを登録する関数スタブです。サブクラスによってオーバーライドされる必要があります。
- ArbitrationRegistrationComplete [SessionName] [bWasSuccessful] - アービトレーションのためのサーバーを登録し終えたときに呼び出される関数スタブです。
- SessionName - セッションの
名前です。 - bWasSuccessful - TRUE の場合は、登録が成功しました。
- SessionName - セッションの
- NotifyArbitratedMatchEnd - アービトレイトされたマッチが終了したときに呼び出されて、全クライアントに対して接続を切り、メニューに進むように命令します。
- ProcessServerLogin - コマンドライン上で渡されているログインパラメータのチェックをします。存在する場合は、専用サーバーの登録プロセスを開始する前に、非同期ログインを実行します。ログインが進行中の場合は、TRUE を返します。
- ClearAutoLoginDelegates - ログインプロセスが終了 / 失敗すると、ログインデリゲートをクリアします。
- OnLoginFailed [LocalUserNum] [ErrorCode] - サーバーログインが失敗した場合に呼び出されて、
ClearAutoLoginDelegates()を呼び出します。- LocalUserNumber - 関連づけられているユーザーの Controller 番号です。
- ErrorCode - 発生した
EOnlineServerConnectionStatus非同期エラーコードです。
- OnLoginChanged [LocalUserNum] - サーバーログインが完了したときに呼び出され、サーバーを登録します。
- LocalUserNumber - 未使用です。
- RegisterServer - オンラインサービスで専用サーバーを登録します。
- OnServerCreateComplete [SessionName] [bWasSuccessful] - 専用サーバーの登録が完了したときに呼び出されます。
- SessionName - セッションの
名前です。 - bWasSuccessful - TRUE の場合は、登録が成功しました。
- SessionName - セッションの
- TellClientsToReturnToPartyhost - PlayerController をイタレートするとともに、パーティーに復帰するように命令します。
- TellClientsToTravelToSession [SessionName] [SearchClass] [PlatformSpecificInfo] - PlayerController をイタレートし、リモートプレイヤーに対して、指定されたセッションに移動するように命令します。
- SessionName - 登録するセッションの
名前です。 - SearchClass - セッションが入れられるべき
OnlineGameSearchクラスです。 - PlatformSpecificInfo - プラットフォーム固有領域に配置すべきバイナリデータです。
- SessionName - 登録するセッションの
- AddInactivePRI [PRI] [PC] - 指定された
PlayerReplicationInfoを非アクティブなリストに追加するとともに、アクティブなリストから削除します。- PRI - 非アクティブなリストに追加すべきプレイヤーの
PlayerReplicationInfoです。 - PC -
PRIと関連づけられているプレイヤーのPlayerControllerです。
- PRI - 非アクティブなリストに追加すべきプレイヤーの
- FindInactivePRI [PC] - 再エンターしている指定プレイヤーと関連づけられている PRI を検索して返します。
- PC - プレイヤーの
PlayerControllerです。
- PC - プレイヤーの
- OverridePRI [PC] [OldPRI] - 必要に応じて、指定されたプレイヤーの
PlayerReplicationInfoのプロパティを、ログインプロセス中に割り当てられた古いPlayerReplicationInfoのプロパティでオーバーライドします。- PC - プレイヤーの
PlayerControllerです。 - OldPRI - ログイン時に割り当てられたプロパティを保持している
PlayerReplicationInfoです。
- PC - プレイヤーの
- CanUnpause - デリゲートです。ゲームがポーズ解除を要求されたときに呼び出されて、そのアクションが許されるか否かを決定します。ゲームのポーズ解除が可能な場合は、TRUE を返します。デフォルトの実装では、すべての要求が成功します。
- SetPause [PC] [CanUnpauseDelegate] - 指定されたプレイヤーがゲームをポーズする権利を持っている場合は、ゲームをポーズするとともに、デリゲートをリストに追加します。デリゲートは、ゲームのポーズを解除してもよい (例 : ゲームがポーズされた理由が除去された場合など) かどうかを調べるために呼び出されます。
- PC - ゲームのポーズ解除を試みているプレイヤーの
PlayerControllerです。 - CanUnpauseDelegate - 当該ポーズの解除が許されるか否かを決定するために使用するデリゲートです。(このデリゲートは、
CanUnpauseデリゲートのシグネチャと一致しています)。
- PC - ゲームのポーズ解除を試みているプレイヤーの
- ClearPause - デリゲートのリストをチェックして、当該ポーズの解除が可能か否かを決定します。デリゲートによって解除が可能であるとされた場合は、そのデリゲートをリストから削除し、残りのデリゲートをチェックします。リストが空の場合は、ゲームがポーズ解除されていると見なされる。
- ForceClearUnpauseDelegates [PauseActor] - オブジェクトの
CanUnpauseデリゲートをポーズリストから強制的に削除します。リストの中に オブジェクトのCanUnpauseデリゲート ハンドラがある場合は、ClearPause()の呼び出しをトリガーします。 PlayerController が破壊されているときに呼び出されることによって、ゲームをポーズした PC がゲームのポーズ解除を行う前に破壊された場合に、ゲームがポーズ状態になって動かなくなるのを防ぎます。- PauseActor - この
ActorのためにCanUnpauseデリゲートをすべて解除します。
- PauseActor - この
- AllowPausing [PC] - 指定されたプレイヤーがゲームをポーズできるか否かを返します。
- PC - ゲームのポーズを要求しているプレイヤーの
PlayerControllerです。
- PC - ゲームのポーズを要求しているプレイヤーの
- SetGameSpeed [T] - ゲームスピードとワールドの
TimeDilationを指定された値にセットします。ゲームのTimer()を実行する頻度を制御します。 - AllowCheats [P] - チートがゲームで許されているか否かを返します。デフォルトでは、オフラインのゲームでのみ許されています。
- UpdateGameplayMuteList [PC] - プレイヤーのゲームプレイ固有のミュート情報が更新できることを、ゲームタイプに通知するために使用されます。
プレイヤーは、更新可能であることをサーバーに通知する必要があります。さもなければ、一意なネット ID が不正なものとなり、ミュート情報が正しく機能しなくなります。- PC - このプレイヤーの
PlayerControllerのためにミュート情報を更新します。
- PC - このプレイヤーの
- RecalculateSkillRating - 当該ゲームのための公表スキルを更新するためにゲームタイプによって使用されます。
- MatineeCancelled - 当該 PC がシネマティックスモードにあり、Matinee がユーザーによってキャンセルされた場合に、呼び出されます。
- GetCoverReplicator - 当該ゲームのために、
CoverReplicatorBaseを返します。1 つも存在していない場合は、新たにスポーンして返します。 - NotifyKilled [Killer] [Killed] [KilledPawn] [damageType] - 指定されたプレイヤーに殺されたことを通知します。
Killed()から呼び出されます。- Killer - 殺した方のプレイヤーの
Controllerです。 - Killed - 殺された方のプレイヤーの
Controllerです。 - KilledPawn - 殺された方のプレイヤーの
Pawnです。 - DamageType - プレイヤーの死の原因になったダメージの
DamageType(ダメージのタイプ) です。
- Killer - 殺した方のプレイヤーの
- Killed [Killer] [KilledPlayer] [KilledPawn] [damageType] -
Pawnによって呼び出され、Pawnが殺されたことをゲームに通知します。- Killer - 殺した方のプレイヤーの
Controllerです。 - Killed - 殺された方のプレイヤーの
Controllerです。 - KilledPawn - 殺された方のプレイヤーの
Pawnです。 - DamageType - プレイヤーの死の原因になったダメージの
DamageType(ダメージのタイプ) です。
- Killer - 殺した方のプレイヤーの
- PreventDeath [KilledPawn] [Killer] [DamageType] [HitLocation] -
Pawnによって呼び出され、殺されたPawnをゲームがオーバーライドすることを許可します。- KilledPawn - 殺された方のプレイヤーの
Pawnです。 - Killer - 殺した方のプレイヤーの
Controllerです。 - DamageType - プレイヤーの死の原因になったダメージの
DamageType(ダメージのタイプ) です。 - HitLocation - プレイヤーの死の原因となったヒットの位置を指定する
Vector(ベクター) です。
- KilledPawn - 殺された方のプレイヤーの
- ReduceDamage [Damage] [injured] [instigatedBy] [HitLocation] [Momentum] [DamageType] [DamageCauser] - プレイヤーにダメージが与えられたときに
TakeDamage()によって呼び出され、ダメージ量を修正することを可能にします。- Damage - 出力パラメータです。与えられたダメージ量を受け取り、出力します。
- injured - ダメージを受けたプレイヤーの
Pawnです。 - instigatedBy - ダメージを与えたプレイヤーの
Controllerです。 - HitLocation - ダメージの原因となったヒットの位置を指定する
Vectorです。 - Momentum - ダメージに適用されるモメンタムの方向と大きさを指定する
Vectorです。 - DamageType - 与えられたダメージの
DamageTypeです。 - DamageCauser - ダメージを実際に引き起こした
Actorです。
- AddObjectiveScore [Scorer] [Score] - 目標が達成された後に、指定されたプレイヤーのスコアを増加させます。
- Scorer - プレイヤーの
PlayerReplicationInfoです。 - Score - プレイヤーのスコアに加える値です。
- Scorer - プレイヤーの
- ScoreObjective [Scorer] [Score] - プレイヤーのスコアを増加させるとともに、目標が達成された後に、ゲームを終了すべきか否かをチェックします。
- Scorer - プレイヤーの
PlayerReplicationInfoです。 - Score - プレイヤーのスコアに加える値です。
- Scorer - プレイヤーの
- CheckScore [Scorer] -
ScoreObjective()によって呼び出され、指定されたプレイヤーのスコアに基づいて、ゲームを終了させるか否かを決定します。- Scorer - プレイヤーの
PlayerReplicationInfoです。
- Scorer - プレイヤーの
- ScoreKill [Killer] [Other] - プレイヤーのスコアを増加させるとともに、殺された後に、ゲームを終了すべきか否かをチェックします。
- Killer - プレイヤーの死を引き起こしたプレイヤーの
Controllerです。 - Other - 死んだプレイヤーの
Controllerです。
- Killer - プレイヤーの死を引き起こしたプレイヤーの
- GrabOption [Options] [Result] - オプション文字列から次のキー / 値のペアを抽出します。ペアが見つかった場合は、TRUE を返します。
- Options - 出力パラメータです。現在のオプション文字列を受け取り、パースされたペアを引いたオプション文字列を出力します。
- Result - 出力パラメータです。パースされたペアを出力します。
- GetKeyValue [Pair] [Key] [Value] - キー / 値のペアをキーと値に分解します。
- Pair - キー / 値のペアを受け取ります。
- Key - 出力パラメータです。キーを出力します。
- Value - 出力パラメータです。値を出力します。
- ParseOption [Options] [InKey] - 指定されたキーについて、オプション文字列からキー / 値のペアを抽出します。
文字列の形式でキー / 値のペアを返します。- Options - 現在のオプション文字列を受け取ります。
- InKey - 検索対象のキーです。
- HasOption [Options] [InKey] - オプション文字列に指定されたキーのキー / 値のペアが存在するか否かを返します。
- Options - 現在のオプション文字列を受け取ります。
- InKey - 検索対象のキーです。
- GetIntOption [Options] [ParseString] [CurrentValue] - オプション文字列から指定されたキーの
Int値を返します。- Options - 現在のオプション文字列を受け取ります。
- ParseString - 検索対象のキーです。
- CurrentValue - キーが見つからなかった場合に使用する現在の (デフォルトの) 値です。
- AddMutator [mutname] [bUserAdded] - ゲームに指定されたミューテータを追加します。
- mutname - 追加するミューテータクラスを指定する
文字列です。 - bUserAdded - TRUE の場合は、ゲームのインターフェースを通じてプレイヤーによってミューテータが追加されました。
- mutname - 追加するミューテータクラスを指定する
- RemoveMutator [MutatorToRemove] - 指定されたミューテータをゲームから削除します。
- MutatorToRemove - 削除する
ミューテータです。
- MutatorToRemove - 削除する
- AllowMutator [MutatorClassName] - 指定された
Mutator(ミューテータ) クラスをゲームに追加できるか否かを返します。- MutatorClassName - チェックするミューテータクラスを指定する
文字列です。
- MutatorClassName - チェックするミューテータクラスを指定する
- Mutate [MutateString] [Sender] - 入力文字列をミューテータリストに渡します。PlayerController.Mutate() によって使用されます。ミューテータが入力された実行関数を持てるのようにします。(ミューテータをキーにバインドします)。
- MutateString - ミューテータリストに渡す
文字列です。 - Sender - ミューテータ文字列を送っているプレイヤーの
PlayerControllerです。
- MutateString - ミューテータリストに渡す
- CheckRelevance [Other] - Actor が当該ゲームに関係があり、破棄されてはならない場合は、TRUE を返します。
Actor::PreBeginPlay()で呼び出されます。スポーンされている Actor をミューテータが削除または置換できるようにします。- Other - この
Actorの関係性を調べます。
- Other - この
- ModifyScoreKill [Killer] [Other] - プレイヤーのキルをミューテータリストに渡し、スコアの処理を行います。
- Killer - プレイヤーの死を引き起こしたプレイヤーの
Controllerです。 - Other - 死んだプレイヤーの
Controllerです。
- Killer - プレイヤーの死を引き起こしたプレイヤーの
- DriverEnteredVehicle [V] [P] - ビークル (乗り物) 乗車イベントをミューテータリストに渡します。
- V - 乗車されたビークルです。
- P - ビークルに乗るプレイヤーの
Pawnです。
- CanLeaveVehicle [V] [P] - 指定された
Pawnが指定されたVehicle(ビークル) から出ることができるか否かについて調べます。ミューテータが存在するか否かをミューテータリストが決定できるようにします。- V - 退去される
Vehicle(ビークル) です。 - P - ビークルから退去しようとしているプレイヤーの
Pawnです。
- V - 退去される
- DriverLeftVehicle [V] [P] - ビークル退去イベントをミューテータリストに渡します。
- V - 退去される
Vehicle(ビークル) です。 - P - ビークルから退去しようとしているプレイヤーの
Pawnです。
- V - 退去される
- EnableStandbyCheatDetection [bIsEnabled] - スタンドバイチート検知機能を有効 / 無効にします。
- bIsEnabled - TRUE の場合は、スタンドバイチート検知機能が有効になります。そうでない場合は、無効になります。
- StandbyCheatDetected [StandbyType] - スタンドバイチートが検知されたことをゲームコードに通知します。
- StandbyType - 検知されたチートの
EStandbyTypeです。
- StandbyType - 検知されたチートの
- DoTravelTheWorld - 自動テスティングのためにワールドの移動を開始します。
- IsAutomatedPerfTesting - 自動パフォーマンスのテスティングが有効な場合は、TRUE を返します。
- IsCheckingForFragmentation - フラグメンテーションのチェックが有効な場合は、TRUE を返します。
- IsCheckingForMemLeaks - メモリリークのチェックが有効な場合は、TRUE を返します。
- IsDoingASentinelRun - Sentinel を実行している場合は、TRUE を返します。
- ShouldAutoContinueToNextRound - 次のラウンドに自動継続する場合は、TRUE を返します。
- CheckForSentinelRun - 必要に応じて、
AutoTestManagerに対して Sentinel の実行を要請します。GameInfo のサブクラスによって呼び出されなければなりません。 (GameInfo::StartMatch()の基本実装において呼び出されるのではなく)。
ゲームのライフサイクル
ゲームタイプのプレフィックス
GameInfo クラスを自動的に選択してくれる機能が備わっています。 DefaultMapPrefixes (デフォルト マップ プレフィックス) 配列と CustomMapPrefixes (カスタム マップ プレフィックス) 配列が、 GameTypePrefix (ゲームタイプ プレフィックス) 構造体のリストを保持しています。各リストでは、特定のプレフィックス文字列が、(特に) ゲームタイプクラスにマッピングされています。
GameTypePrefix (ゲームタイプ プレフィックス) 構造体
- Prefix - マッププレフィックスを指定する
文字列です。マッププレフィックスは、マップ名から始まる文字列であり、ハイフン (-) がそれに続きます。このハイフンは、プレフィックスに含まれません。単に、プレフィックスと残りのマップ名を区別するためのものです。 - bUseCommonPackage - TRUE の場合は、一般的なパッケージがこのゲームタイプのために生成されます。詳細については、 一般的なパッケージ のセクションを参照してください。
- GameType - プレフィックスにマッピングするゲームタイプのクラスを指定する
文字列です。URLにゲームタイプが指定されていない場合は、このゲームタイプが、当該プレフィックスをもつマップに使用されます。 - AdditionalGameTypes - URL を通じて当該マッププレフィックスによってサポートされる付加的なゲームタイプクラスを指定する
文字列の配列です。 - ForcedObjects - 各マップでクックされないようにするために、一般的なパッケージに入るべき強制オブジェクト (およびクラス) です。
ゲームタイプのプレフィックスを追加する
ゲームタイプのプレフィックスのマッピングを追加するには、DefaultGame.ini config ファイルの [Engine.GameInfo] セクションで、新たなエントリを作成します。以下はその例です。
[Engine.GameInfo] +DefaultMapPrefixes=(Prefix="DM",bUsesCommonPackage=FALSE,GameType="UTGame.UTDeathmatch")
一般的なパッケージ
TODOポーズ
GameInfo 上の SetPause() を呼び出します。 SetPause() は、配列に追加されるパラメータとしてデリゲートを受け入れます。特定の理由でゲームがポーズされた場合、その条件がもう問題ではないことを確認するための特定のデリゲートが、 SetPause() に渡されます。
たとえば、 PlayerController.uc において、Controller は、接続されるか接続を解除された場合に、下記のように、 PlayerController 上の SetPause() を呼び出して、 CanUnpauseControllerConnected 関数を渡します (この関数はさらに GameInfo の SetPause() に渡されます)。
// Pause if the controller was removed, otherwise unpause SetPause(!bIsConnected,CanUnpauseControllerConnected);
CanUnpauseControllerConnected 関数は、単にコントローラーがプラグインされているかどうかを返します。
GameInfo 内の SetPause 関数に渡されるデリゲートがない場合は、常に TRUE を返すデフォルトの CanUnpause 関数が使用されます。これが当てはまる場合は、ゲームのポーズ解除をする際にチェックすべき特定の条件がないために、プレイヤーが単にポーズする必要がある場合です。
ゲームのポーズを解除するために ClearPause() が呼び出されたときに、 Pausers 配列に入っている各デリゲートが実行されます。 このデリゲートは、TRUE を返すと、配列から削除されます。ゲームのポーズが解除されるのは、この配列が空になったときだけです。
ミューテータ
- プレイヤーのログインパラメータを変更する。
- プレイヤーの
Pawnのプロパティを変更する。 - 一部の (あるいは全部の) Actor を変更、削除、置換する。(ただし、bGameRelevant=TRUE ではない Actor)。
- プレイヤーのスタート位置をオーバーライドする。
- ゲームの終了条件を変更する。
ミューテータを追加する
ミューテータをゲームに追加するには、GameInfo の AddMutator() 関数を使用します。この関数は、潜在的には他のあらゆる Actor から呼び出され、プレイ中にミューテータを動的に追加することによって、特定の要素をゲームプレイ イベントに応じて変更することができます。デフォルトでは、 InitGame() から呼び出されて、マップ URL で指定されたミューテータを追加します。
ミューテータをマップ URL で指定するには、 Mutator= の後に、追加するミューテータのリストをカンマで区切りながら置きます。 例:
MapName?Game=GameName?Mutator=BigHeads,Instagibこのマップ URL によって、
MapName というマップがロードされます。このマップでは、 GameName というゲームタイプが使用されます。さらに、 BigHeads と Instagib というミューテータが加わります。このようにしてミューテータを加えるためのマップ URL は、通常、使用するミューテータをプレイヤーに選択させるメニューによって動的に生成されます。特定のゲームタイプのために「デフォルト」のミューテータを 1 つ以上ハードコード化することも可能です。そのためには、このゲームタイプのための InitGame() イベントの中に、これらのミューテータのための明示的な AddMutator() の呼び出しを追加します。
