config.datファイル解析情報
※データの無断転載は固くお断りします。
ファイルフォーマット概要
config.datファイルは、XOPSのゲーム設定を保存する設定ファイルです。
※オフライン(0.96・0.97)とオンライン(1.8・1.9)では、同じフォーマットが使われています。
ファイルフォーマット詳細
ファイル構造
ファイル構造は以下の通りです。
ファイルサイズは常に47バイト固定です。
[18Byte] 操作キー設定 |
[8Byte] 各種ゲーム設定 |
[21Byte] プレイヤー名 |
操作キー設定
ゲームの操作キー情報を保持しています。各設定値は1Byteづつで、後述の「キーコード」を使用して操作キーを割り当てます。
アドレス | 項目 |
---|---|
0x00 | TURN UP 上転回 |
0x01 | TURN DOWN 下転回 |
0x02 | TURN LEFT 左転回 |
0x03 | TURN RIGHT 右転回 |
0x04 | MOVE FORWARD 前方移動 |
0x05 | MOVE BACKWARD 後方移動 |
0x06 | MOVE LEFT 左移動 |
0x07 | MOVE RIGHT 右移動 |
0x08 | WALK 前進歩行 |
0x09 | JUMP ジャンプ |
0x0A | RELOAD リロード |
0x0B | DROP WEAPON 武器を捨てる |
0x0C | ZOOM ズーム |
0x0D | FIRE MODE 武器持ち替え |
0x0E | SWITCH WEAPON 武器持ち替え |
0x0F | WEAPON 1 武器1 |
0x10 | WEAPON 2 武器2 |
0x11 | FIRE 攻撃・発砲 |
各種ゲーム設定
ゲーム設定を保持しています。各設定値は1Byteです。
なお、数値は config4xops05.exe で設定できる数値であり、XOPS本体自体の数値の対応範囲は未検証です。
アドレス | 項目 | 数値 |
---|---|---|
0x12 | MOUSE SENSITIVITY マウス感度 | 10〜50 (0x0A〜0x32) |
0x13 | XOPS表示モード | 00・ウインドウ 01・フルスクリーン |
0x14 | ENABLE SOUND 効果音 | 00・無効 01・有効 |
0x15 | ENABLE BLOOD 出血 | 00・無効 01・有効 |
0x16 | BRIGHTNESS 画面の明るさ | 0〜10 (0x00〜0x0A) |
0x17 | INVERT MOUSE マウス反転 | 00・無効 01・有効 |
0x18 | FRAME SKIP フレームスキップ | 00・無効 01・有効 |
0x19 | ANOTHER GUNSIGHT 別の照準を使用 | 00・無効 01・有効 |
プレイヤー名
※オンライン版で使用する設定値です。オフライン版では0.97時点で無意味です。
一般的なASCIIで表現され、0x00(NULL)で終了とみなされます。
最大21文字まで設定可能です。21文字未満の場合は21文字分まで0x00(NULL)で埋めます。
【参考】操作キーのキーコード
キーコードは、Win32APIの仮想キーコードなどではなく、XOPS独自の規格と思われます。
この規格に定義されていないキーは割り当てられません。(=使用できない)
設定範囲は 0x00〜0x4A までです。
それ以外の数値を設定すると、XOPS本体ではその機能が使用できず、config4xops05.exeはクラッシュします。
数値 | キー | 数値 | キー | 数値 | キー | 数値 | キー | |||
---|---|---|---|---|---|---|---|---|---|---|
0x00 | ↑ | 0x14 | SHIFT | 0x28 | I | 0x3C | ; | |||
0x01 | ↓ | 0x15 | Ctrl | 0x29 | J | 0x3D | - | |||
0x02 | ← | 0x16 | 0 | 0x2A | K | 0x3E | @ | |||
0x03 | → | 0x17 | 1 | 0x2B | L | 0x3F | [ | |||
0x04 | NUM 0 | 0x18 | 2 | 0x2C | M | 0x40 | ] | |||
0x05 | NUM 1 | 0x19 | 3 | 0x2D | N | 0x41 | BackSlash | |||
0x06 | NUM 2 | 0x1A | 4 | 0x2E | O | 0x42 | \ | |||
0x07 | NUM 3 | 0x1B | 5 | 0x2F | P | 0x43 | , | |||
0x08 | NUM 4 | 0x1C | 6 | 0x30 | Q | 0x44 | . | |||
0x09 | NUM 5 | 0x1D | 7 | 0x31 | R | 0x45 | ^ | |||
0x0A | NUM 6 | 0x1E | 8 | 0x32 | S | 0x46 | NUM * | |||
0x0B | NUM 7 | 0x1F | 9 | 0x33 | T | 0x47 | NUM / | |||
0x0C | NUM 8 | 0x20 | A | 0x34 | U | 0x48 | NUM + | |||
0x0D | NUM 9 | 0x21 | B | 0x35 | V | 0x49 | NUM - | |||
0x0E | BackSpace | 0x22 | C | 0x36 | W | 0x4A | NUM . | |||
0x0F | ENTER | 0x23 | D | 0x37 | X | |||||
0x10 | TAB | 0x24 | E | 0x38 | Y | |||||
0x11 | SPACE | 0x25 | F | 0x39 | Z | |||||
0x12 | MOUSE L | 0x26 | G | 0x3A | / | |||||
0x13 | MOUSE R | 0x27 | H | 0x3B | : |