#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を使用してください。 |
DWC_PERS_STATE_INIT |
初期状態 |
DWC_PERS_STATE_LOGIN |
ログイン中 |
DWC_PERS_STATE_CONNECTED |
接続状態 |
DWC_PERS_STATE_NUM |
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 |
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_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 |