友達管理・マッチメイク - 定数

定義


#include <dwc.h>

#define   DWC_FRIEND_STATUS_STRING_LEN            (256)
#define   DWC_MAX_PLAYER_NAME                     26
#define   DWC_INVALID_AID                         (0xff)
#define   DWC_MAX_CONNECTIONS                     32
#define   DWC_QR2_GAME_KEY_START                  100
#define   DWC_QR2_RESERVED_KEYS                   (100-50)
#define   DWC_QR2_GAME_RESERVED_KEYS              (DWC_MAX_REGISTERED_KEYS-DWC_QR2_RESERVED_KEYS-DWC_QR2_RESERVED_KEYS)
#define   DWC_CONNECTION_USERDATA_LEN             4
#define   DWC_TRANSPORT_MTU_SIZE                  1500
#define   DWC_TRANSPORT_RELIABLE_ALL_HEADER_SIZE  35
#define   DWC_TRANSPORT_UNRELIABLE_ALL_HEADER_SIZE 38
#define   DWC_TRANSPORT_SEND_RELIABLE_MAX         (DWC_TRANSPORT_MTU_SIZE-DWC_TRANSPORT_RELIABLE_ALL_HEADER_SIZE)
#define   DWC_TRANSPORT_SEND_UNRELIABLE_MAX       (DWC_TRANSPORT_MTU_SIZE-DWC_TRANSPORT_UNRELIABLE_ALL_HEADER_SIZE)
#define   DWC_TRANSPORT_SEND_MAX                  DWC_TRANSPORT_SEND_RELIABLE_MAX

enum  {
    DWC_PERS_STATE_INIT                     =  0,
    DWC_PERS_STATE_LOGIN,
    DWC_PERS_STATE_CONNECTED,
    DWC_PERS_STATE_NUM,
};

enum  {
    DWC_STATUS_OFFLINE                      =  0,
    DWC_STATUS_ONLINE,
    DWC_STATUS_PLAYING,
    DWC_STATUS_MATCH_ANYBODY,
    DWC_STATUS_MATCH_FRIEND,
    DWC_STATUS_MATCH_SC_CL,
    DWC_STATUS_MATCH_SC_SV,
    DWC_STATUS_NUM,
};

enum DWCFriendState {
    DWC_FRIEND_STATE_INIT                   =  0,
    DWC_FRIEND_STATE_PERS_LOGIN,
    DWC_FRIEND_STATE_LOGON,
    DWC_FRIEND_STATE_NUM,
};

enum  {
    DWC_BUDDY_UPDATE_STATE_WAIT             =  0,
    DWC_BUDDY_UPDATE_STATE_CHECK,
    DWC_BUDDY_UPDATE_STATE_PSEARCH,
    DWC_BUDDY_UPDATE_STATE_COMPLETE,
    DWC_BUDDY_UPDATE_STATE_NUM,
};

enum DWCLoginState {
    DWC_LOGIN_STATE_INIT                    =  0,
    DWC_LOGIN_STATE_REMOTE_AUTH,
    DWC_LOGIN_STATE_CONNECTING,
    DWC_LOGIN_STATE_GPGETINFO,
    DWC_LOGIN_STATE_GPSETINFO,
    DWC_LOGIN_STATE_CONNECTED,
    DWC_LOGIN_STATE_NUM,
};

enum DWCState {
    DWC_STATE_INIT                          =  0,
    DWC_STATE_AVAILABLE_CHECK,
    DWC_STATE_LOGIN,
    DWC_STATE_ONLINE,
    DWC_STATE_MATCHING,
    DWC_STATE_CONNECTED,
    DWC_STATE_NUM,
};

enum DWCMatchState {
    DWC_MATCH_STATE_INIT                    =  0,
    DWC_MATCH_STATE_CL_WAITING,
    DWC_MATCH_STATE_CL_SEARCH_HOST,
    DWC_MATCH_STATE_CL_WAIT_RESV,
    DWC_MATCH_STATE_CL_SEARCH_EVAL_HOST,
    DWC_MATCH_STATE_CL_NN,
    DWC_MATCH_STATE_CL_GT2,
    DWC_MATCH_STATE_CL_CANCEL_SYN,
    DWC_MATCH_STATE_CL_SYN,
    DWC_MATCH_STATE_CL_SVDOWN_1,
    DWC_MATCH_STATE_CL_SVDOWN_2,
    DWC_MATCH_STATE_CL_SVDOWN_3,
    DWC_MATCH_STATE_CL_SEARCH_GROUPID_HOST,
    DWC_MATCH_STATE_SV_WAITING,
    DWC_MATCH_STATE_SV_OWN_NN,
    DWC_MATCH_STATE_SV_OWN_GT2,
    DWC_MATCH_STATE_SV_WAIT_CL_LINK,
    DWC_MATCH_STATE_SV_CANCEL_SYN,
    DWC_MATCH_STATE_SV_CANCEL_SYN_WAIT,
    DWC_MATCH_STATE_SV_SYN,
    DWC_MATCH_STATE_SV_SYN_WAIT,
    DWC_MATCH_STATE_WAIT_CLOSE,
    DWC_MATCH_STATE_SEARCH_OWN,
    DWC_MATCH_STATE_SV_SYN_CLOSE_WAIT,
    DWC_MATCH_STATE_NUM,
};

enum  {
    DWC_MATCH_TYPE_ANYBODY                  =  0,
    DWC_MATCH_TYPE_FRIEND,
    DWC_MATCH_TYPE_SC_SV,
    DWC_MATCH_TYPE_SC_CL,
    DWC_MATCH_TYPE_NUM,
};

enum DWCSuspendResult {
    DWC_SUSPEND_SUCCESS                     =  0,
    DWC_SUSPEND_TIMEOUT,
    DWC_SUSPEND_NUM,
};

enum DWCTopologyType {
    DWC_TOPOLOGY_TYPE_HYBRID                =  0,
    DWC_TOPOLOGY_TYPE_STAR,
    DWC_TOPOLOGY_TYPE_FULLMESH,
    DWC_TOPOLOGY_TYPE_NUM,
};

		

定数

DWC_FRIEND_STATUS_STRING_LEN DWC_GetOwnStatusString関数やDWC_SetOwnStatusString関数やDWC_GetFriendStatusSC関数で指定できるステータス文字列の長さ(NULL終端含む)
DWC_MAX_PLAYER_NAME プレイヤー名(ゲーム内スクリーンネーム)の最大長(ワイド文字25文字+"¥0¥0")
DWC_INVALID_AID 無効なAIDを示す値
DWC_MAX_CONNECTIONS 最大同時接続数
DWC_QR2_GAME_KEY_START ゲーム定義キーの開始値
DWC_QR2_RESERVED_KEYS DWCの予約キー数
DWC_QR2_GAME_RESERVED_KEYS ゲームで最大使用できるキーの数(154)
DWC_CONNECTION_USERDATA_LEN マッチメイク接続条件に使われるバッファ長
DWC_TRANSPORT_MTU_SIZE Reliable/Unreliable送信で送信できる最大IPパケットサイズ
DWC_TRANSPORT_RELIABLE_ALL_HEADER_SIZE Reliable送信で付加されるヘッダサイズ
DWC_TRANSPORT_UNRELIABLE_ALL_HEADER_SIZE Unreliable送信で付加されるヘッダサイズ
DWC_TRANSPORT_SEND_RELIABLE_MAX Reliable送信で一度に送信できる最大データサイズ。
DWC_TRANSPORT_SEND_UNRELIABLE_MAX Unreliable送信で一度に送信できる最大データサイズ。
DWC_TRANSPORT_SEND_MAX Reliable送信で一度に送信できる最大データサイズ。(互換性のために残されています。DWC_TRANSPORT_SEND_RELIABLE_MAXを使用してください。

Persistentサーバログイン状態

DWC_PERS_STATE_INIT 初期状態
DWC_PERS_STATE_LOGIN ログイン中
DWC_PERS_STATE_CONNECTED 接続状態
DWC_PERS_STATE_NUM

友達の通信状態(GPEnumのStatus+αを再定義して使用)

DWC_STATUS_OFFLINE オフライン
DWC_STATUS_ONLINE オンライン(GPサーバにログイン済み)
DWC_STATUS_PLAYING ゲームプレイ中
DWC_STATUS_MATCH_ANYBODY 友達無指定ピアマッチメイク中
DWC_STATUS_MATCH_FRIEND 友達指定ピアマッチメイク中
DWC_STATUS_MATCH_SC_CL サーバクライアントマッチメイク中のクライアント
DWC_STATUS_MATCH_SC_SV サーバクライアントマッチメイク中のサーバ
DWC_STATUS_NUM

友達管理処理状態

DWC_FRIEND_STATE_INIT 初期状態
DWC_FRIEND_STATE_PERS_LOGIN Persistentサーバログイン&友達リスト同期処理中
DWC_FRIEND_STATE_LOGON Persistentサーバログイン後
DWC_FRIEND_STATE_NUM

ローカル友達リストとGPバディリストとの同期処理状態

DWC_BUDDY_UPDATE_STATE_WAIT バディリストダウンロード完了待ち
DWC_BUDDY_UPDATE_STATE_CHECK バディリストチェック中
DWC_BUDDY_UPDATE_STATE_PSEARCH プロファイルサーチ中
DWC_BUDDY_UPDATE_STATE_COMPLETE バディリスト同期処理完了
DWC_BUDDY_UPDATE_STATE_NUM

ログイン進行状況列挙子

DWC_LOGIN_STATE_INIT 初期状態
DWC_LOGIN_STATE_REMOTE_AUTH リモート認証中
DWC_LOGIN_STATE_CONNECTING GPサーバ接続中
DWC_LOGIN_STATE_GPGETINFO GPにloginしたときのlastname取得時
DWC_LOGIN_STATE_GPSETINFO GPに初めてloginしたときのlastname設定
DWC_LOGIN_STATE_CONNECTED コネクト完了状態
DWC_LOGIN_STATE_NUM

DWCネットワーク状態列挙子

DWC_STATE_INIT 初期状態
DWC_STATE_AVAILABLE_CHECK ゲームの利用可能状況をチェック中
DWC_STATE_LOGIN ログイン処理中
DWC_STATE_ONLINE ログイン完了後オンライン状態
DWC_STATE_MATCHING マッチメイク処理中
DWC_STATE_CONNECTED マッチメイク完了後、メッシュ型ネットワーク構築済み状態
DWC_STATE_NUM

マッチメイク状態列挙子

DWC_MATCH_STATE_INIT 初期状態
DWC_MATCH_STATE_CL_WAITING 待ち状態
DWC_MATCH_STATE_CL_SEARCH_HOST 空きホスト検索状態(友達無指定の時のみ)
DWC_MATCH_STATE_CL_WAIT_RESV 予約に対するサーバからの返答待ち
DWC_MATCH_STATE_CL_SEARCH_EVAL_HOST 評価する相手ホストを検索中
DWC_MATCH_STATE_CL_NN NATネゴシエーション中
DWC_MATCH_STATE_CL_GT2 GT2コネクション確立中
DWC_MATCH_STATE_CL_CANCEL_SYN サーバクライアントでマッチメイクキャンセル同期調整中
DWC_MATCH_STATE_CL_SYN マッチメイク完了同期調整中
DWC_MATCH_STATE_CL_SVDOWN_1 サーバダウン検出中
DWC_MATCH_STATE_CL_SVDOWN_2 サーバダウン検出中2
DWC_MATCH_STATE_CL_SVDOWN_3 サーバダウン検出中3
DWC_MATCH_STATE_CL_SEARCH_GROUPID_HOST グループIDからホストを検索
DWC_MATCH_STATE_SV_WAITING 待ち状態
DWC_MATCH_STATE_SV_OWN_NN クライアントとのNATネゴシエーション中
DWC_MATCH_STATE_SV_OWN_GT2 クライアントとのGT2コネクション確立中
DWC_MATCH_STATE_SV_WAIT_CL_LINK クライアント同士の接続完了待ち
DWC_MATCH_STATE_SV_CANCEL_SYN サーバクライアントでマッチメイクキャンセル同期調整SYN-ACK待ち
DWC_MATCH_STATE_SV_CANCEL_SYN_WAIT サーバクライアントでマッチメイクキャンセル同期調整終了待ち
DWC_MATCH_STATE_SV_SYN マッチメイク終了同期調整SYN-ACK待ち
DWC_MATCH_STATE_SV_SYN_WAIT マッチメイク終了同期調整終了待ち
DWC_MATCH_STATE_WAIT_CLOSE コネクションクローズ完了待ち
DWC_MATCH_STATE_SEARCH_OWN 自ホスト情報検索中(以前の名称はDWC_MATCH_STATE_CL_SEARCH_OWN)
DWC_MATCH_STATE_SV_SYN_CLOSE_WAIT CLOSEコマンド送信後の待ち時間
DWC_MATCH_STATE_NUM

マッチメイクタイプ列挙子

DWC_MATCH_TYPE_ANYBODY 友達無指定ピアマッチメイク
DWC_MATCH_TYPE_FRIEND 友達指定ピアマッチメイク
DWC_MATCH_TYPE_SC_SV サーバクライアントマッチメイクのサーバ側
DWC_MATCH_TYPE_SC_CL サーバクライアントマッチメイクのクライアント側
DWC_MATCH_TYPE_NUM

締め切りコールバック列挙子

DWC_SUSPEND_SUCCESS 正常終了
DWC_SUSPEND_TIMEOUT タイムアウトした(現在、使用されません)
DWC_SUSPEND_NUM

接続形態列挙子

DWC_TOPOLOGY_TYPE_HYBRID ハイブリッド型
DWC_TOPOLOGY_TYPE_STAR スター型
DWC_TOPOLOGY_TYPE_FULLMESH フルメッシュ型
DWC_TOPOLOGY_TYPE_NUM