OSDN Git Service

[Refactor] #37353 型の置換(C_MAKE)。 / Type replacement(C_MAKE).
[hengband/hengband.git] / src / tables.c
index b4b9e87..45fb4be 100644 (file)
@@ -1,63 +1,72 @@
-/* File: tables.c */
-
-/*
+/*!
+ * @file tables.c
+ * @brief ゲーム情報テーブル / Angband Tables
+ * @date 2014/07/23
+ * @author
+ * <pre>
  * Copyright (c) 1997 Ben Harrison, James E. Wilson, Robert A. Koeneke
- *
  * This software may be copied and distributed for educational, research,
  * and not for profit purposes provided that this copyright and statement
  * are included in all such copies.  Other copyrights may also apply.
+ * </pre>
  */
 
-/* Purpose: Angband Tables */
 
 #include "angband.h"
 
-
-
-
-/*
- * Global array for looping through the "keypad directions"
+/*!
+ * キーパッドの方向を南から反時計回り順に列挙 / Global array for looping through the "keypad directions"
  */
 const s16b ddd[9] =
 { 2, 8, 6, 4, 3, 1, 9, 7, 5 };
 
-/*
- * Global arrays for converting "keypad direction" into offsets
+/*!
+ * dddで定義した順にベクトルのX軸成分を定義 / Global arrays for converting "keypad direction" into offsets
  */
 const s16b ddx[10] =
 { 0, -1, 0, 1, -1, 0, 1, -1, 0, 1 };
 
+/*!
+ * dddで定義した順にベクトルのY軸成分を定義 / Global arrays for converting "keypad direction" into offsets
+ */
 const s16b ddy[10] =
 { 0, 1, 1, 1, 0, 0, 0, -1, -1, -1 };
 
-/*
- * Global arrays for optimizing "ddx[ddd[i]]" and "ddy[ddd[i]]"
+/*!
+ * ddd越しにベクトルのX軸成分を定義 / Global arrays for optimizing "ddx[ddd[i]]" and "ddy[ddd[i]]"
  */
 const s16b ddx_ddd[9] =
 { 0, 0, 1, -1, 1, -1, 1, -1, 0 };
 
+/*!
+ * ddd越しにベクトルのY軸成分を定義 / Global arrays for optimizing "ddx[ddd[i]]" and "ddy[ddd[i]]"
+ */
 const s16b ddy_ddd[9] =
 { 1, -1, 0, 0, 1, 1, -1, -1, 0 };
 
 
-/*
- * Circular keypad direction array
+/*!
+ * キーパッドの円環状方向配列 / Circular keypad direction array
  */
 const s16b cdd[8] =
 { 2, 3, 6, 9, 8, 7, 4, 1 };
 
-/*
- * Global arrays for optimizing "ddx[cdd[i]]" and "ddy[cdd[i]]"
+/*!
+ * cdd越しにベクトルのX軸成分を定義 / Global arrays for optimizing "ddx[cdd[i]]" and "ddy[cdd[i]]"
  */
 const s16b ddx_cdd[8] =
 { 0, 1, 1, 1, 0, -1, -1, -1 };
 
+/*!
+ * cdd越しにベクトルのY軸成分を定義 / Global arrays for optimizing "ddx[cdd[i]]" and "ddy[cdd[i]]"
+ */
 const s16b ddy_cdd[8] =
 { 1, 1, 0, -1, -1, -1, 0, 1 };
 
 
 
-/*
+/*!
+ * 10進数から16進数への変換テーブル /
  * Global array for converting numbers to uppercase hecidecimal digit
  * This array can also be used to convert a number to an octal digit
  */
@@ -68,7 +77,8 @@ const char hexsym[16] =
 };
 
 
-/*
+/*!
+ * 選択処理用キーコード /
  * Global array for converting numbers to a logical list symbol
  */
 const char listsym[] =
@@ -82,13 +92,15 @@ const char listsym[] =
 };
 
 
-/*
+/*!
+ * スクリーン表示色キャラクタ /
  * Encode the screen colors
  */
-const cptr color_char = "dwsorgbuDWvyRGBU";
+const concptr color_char = "dwsorgbuDWvyRGBU";
 
 
-/*
+/*!
+ * 知力/賢さによるレベル毎の習得可能魔法数テーブル
  * Stat Table (INT/WIS) -- Number of half-spells per level
  */
 const byte adj_mag_study[] =
@@ -134,7 +146,8 @@ const byte adj_mag_study[] =
 };
 
 
-/*
+/*!
+ * 知力/賢さによるMP修正テーブル
  * Stat Table (INT/WIS) -- extra 1/4-mana-points per level
  */
 const byte adj_mag_mana[] =
@@ -180,7 +193,8 @@ const byte adj_mag_mana[] =
 };
 
 
-/*
+/*!
+ * 知力/賢さによる最低魔法失敗率テーブル
  * Stat Table (INT/WIS) -- Minimum failure rate (percentage)
  */
 const byte adj_mag_fail[] =
@@ -226,7 +240,8 @@ const byte adj_mag_fail[] =
 };
 
 
-/*
+/*!
+ * 知力/賢さによる魔法失敗率修正テーブル
  * Stat Table (INT/WIS) -- Various things
  */
 const byte adj_mag_stat[] =
@@ -272,7 +287,8 @@ const byte adj_mag_stat[] =
 };
 
 
-/*
+/*!
+ * 魅力による店での取引修正テーブル
  * Stat Table (CHR) -- payment percentages
  */
 const byte adj_chr_gold[] =
@@ -318,7 +334,8 @@ const byte adj_chr_gold[] =
 };
 
 
-/*
+/*!
+ * 知力による魔道具使用修正テーブル
  * Stat Table (INT) -- Magic devices
  */
 const byte adj_int_dev[] =
@@ -364,7 +381,8 @@ const byte adj_int_dev[] =
 };
 
 
-/*
+/*!
+ * 賢さによる魔法防御修正テーブル
  * Stat Table (WIS) -- Saving throw
  */
 const byte adj_wis_sav[] =
@@ -410,7 +428,8 @@ const byte adj_wis_sav[] =
 };
 
 
-/*
+/*!
+ * 器用さによるトラップ解除修正テーブル
  * Stat Table (DEX) -- disarming
  */
 const byte adj_dex_dis[] =
@@ -456,7 +475,8 @@ const byte adj_dex_dis[] =
 };
 
 
-/*
+/*!
+ * 知力によるトラップ解除修正テーブル
  * Stat Table (INT) -- disarming
  */
 const byte adj_int_dis[] =
@@ -502,7 +522,8 @@ const byte adj_int_dis[] =
 };
 
 
-/*
+/*!
+ * 器用さによるAC修正テーブル
  * Stat Table (DEX) -- bonus to ac (plus 128)
  */
 const byte adj_dex_ta[] =
@@ -548,7 +569,8 @@ const byte adj_dex_ta[] =
 };
 
 
-/*
+/*!
+ * 腕力によるダメージ修正テーブル
  * Stat Table (STR) -- bonus to dam (plus 128)
  */
 const byte adj_str_td[] =
@@ -594,7 +616,8 @@ const byte adj_str_td[] =
 };
 
 
-/*
+/*!
+ * 器用度による命中修正テーブル
  * Stat Table (DEX) -- bonus to hit (plus 128)
  */
 const byte adj_dex_th[] =
@@ -640,7 +663,8 @@ const byte adj_dex_th[] =
 };
 
 
-/*
+/*!
+ * 腕力による命中修正テーブル
  * Stat Table (STR) -- bonus to hit (plus 128)
  */
 const byte adj_str_th[] =
@@ -686,7 +710,8 @@ const byte adj_str_th[] =
 };
 
 
-/*
+/*!
+ * 腕力による基本所持重量値テーブル
  * Stat Table (STR) -- weight limit in deca-pounds
  */
 const byte adj_str_wgt[] =
@@ -732,7 +757,8 @@ const byte adj_str_wgt[] =
 };
 
 
-/*
+/*!
+ * 腕力による武器重量限界値テーブル
  * Stat Table (STR) -- weapon weight limit in pounds
  */
 const byte adj_str_hold[] =
@@ -778,7 +804,8 @@ const byte adj_str_hold[] =
 };
 
 
-/*
+/*!
+ * 腕力による採掘能力修正値テーブル
  * Stat Table (STR) -- digging value
  */
 const byte adj_str_dig[] =
@@ -824,7 +851,8 @@ const byte adj_str_dig[] =
 };
 
 
-/*
+/*!
+ * 腕力による攻撃回数算定値テーブル
  * Stat Table (STR) -- help index into the "blow" table
  */
 const byte adj_str_blow[] =
@@ -870,7 +898,8 @@ const byte adj_str_blow[] =
 };
 
 
-/*
+/*!
+ * 器用さによる攻撃回数インデックステーブル
  * Stat Table (DEX) -- index into the "blow" table
  */
 const byte adj_dex_blow[] =
@@ -916,7 +945,8 @@ const byte adj_dex_blow[] =
 };
 
 
-/*
+/*!
+ * 器用さによる盗難防止&体当たり成功判定修正テーブル
  * Stat Table (DEX) -- chance of avoiding "theft" and "falling"
  */
 const byte adj_dex_safe[] =
@@ -962,7 +992,8 @@ const byte adj_dex_safe[] =
 };
 
 
-/*
+/*!
+ * 耐久による基本HP自然治癒値テーブル /
  * Stat Table (CON) -- base regeneration rate
  */
 const byte adj_con_fix[] =
@@ -1008,7 +1039,8 @@ const byte adj_con_fix[] =
 };
 
 
-/*
+/*!
+ * 耐久による基本HP自然治癒値テーブル /
  * Stat Table (CON) -- extra 1/4-hitpoints per level (plus 128)
  */
 const byte adj_con_mhp[] =
@@ -1054,7 +1086,8 @@ const byte adj_con_mhp[] =
 };
 
 
-/*
+/*!
+ * 魅力による魅了能力修正テーブル /
  * Stat Table (CHR) -- charm
  */
 const byte adj_chr_chm[] =
@@ -1100,10 +1133,13 @@ const byte adj_chr_chm[] =
 };
 
 
-/*
+/*!
+ * @brief
+ * 魅力による魅了能力修正テーブル /
  * This table is used to help calculate the number of blows the player can
  * make in a single round of attacks (one player turn) with a normal weapon.
- *
+ * @details
+ * <pre>
  * This number ranges from a single blow/round for weak players to up to six
  * blows/round for powerful warriors.
  *
@@ -1144,6 +1180,7 @@ const byte adj_chr_chm[] =
  *
  * The player gets "blows_table[P][D]" blows/round, as shown below,
  * up to a maximum of "num" blows/round, plus any "bonus" blows/round.
+ * </pre>
  */
 const byte blows_table[12][12] =
 {
@@ -1165,7 +1202,9 @@ const byte blows_table[12][12] =
 
 };
 
-
+/*!
+ * @brief 闘技場のモンスターID及び報酬アイテムテーブル
+ */
 const arena_type arena_info[MAX_ARENA_MONS + 2] =
 {
        { MON_NOBORTA,       TV_AMULET, SV_AMULET_ADORNMENT           },
@@ -1184,7 +1223,7 @@ const arena_type arena_info[MAX_ARENA_MONS + 2] =
        { MON_M_MINDCRAFTER, TV_POTION, SV_POTION_SELF_KNOWLEDGE      },
        { MON_GROO,          TV_SCROLL, SV_SCROLL_ACQUIREMENT         },
        { MON_RAAL,          TV_SCROLL, SV_SCROLL_STAR_DESTRUCTION    },
-       { MON_DREADMASTER,   TV_WAND,   SV_WAND_DRAIN_LIFE            },
+       { MON_DREADMASTER,   TV_WAND,   SV_WAND_HYPODYNAMIA            },
        { MON_ULTRA_PALADIN, TV_STAFF,  SV_STAFF_DISPEL_EVIL          },
        { MON_BARNEY,        TV_RING,   SV_RING_RES_CHAOS             },
        { MON_TROLL_KING,    TV_SCROLL, SV_SCROLL_MASS_GENOCIDE       },
@@ -1214,8 +1253,11 @@ const arena_type arena_info[MAX_ARENA_MONS + 2] =
 };
 
 
-/*
+/*!
+ * @brief 闘技場のモンスターID及び報酬アイテムテーブル /
  * Store owners (exactly four "possible" owners per store, chosen randomly)
+ * @details
+ * <pre>
  * { name, purse, max greed, min greed, haggle_per, tolerance, race, unused }
  *
  * Lifted extra shopkeepers from CthAngband (don't you just love open source
@@ -1226,6 +1268,7 @@ const arena_type arena_info[MAX_ARENA_MONS + 2] =
  *
  * I want to do 50k owners, but the purse is currently s16b. Perhaps
  * we should just store 1/10th of the purse?
+ * </pre>
  */
 const owner_type owners[MAX_STORES][MAX_OWNERS] =
 {
@@ -1385,30 +1428,30 @@ const owner_type owners[MAX_STORES][MAX_OWNERS] =
                { "獣マスターのエディー", 25000,  190,  115,   5,   7,  RACE_HOBBIT},
                { "竜殺しのオグライン", 30000,  195,  112,   4,   8,  RACE_DWARF},
                { "熟練者ドリュー",      10000,   210, 115,  6,  6, RACE_HUMAN},
-               {"龍の子オラックス",        15000,  185, 110,  5,  9, RACE_DRACONIAN},
+               { "龍の子オラックス",        15000,  185, 110,  5,  9, RACE_DRACONIAN},
                { "病気持ちのアンスラックス",         25000,  190, 115,  5,  7, RACE_BEASTMAN},
                { "頑丈者アルコス",       30000,  195, 112,  4,  8, RACE_DWARF},
                { "腐れ者のサリアス",      5000,   210, 115,  6,  6, RACE_ZOMBIE},
-               {"晒し骨のトゥエシク",        15000,  185, 110,  5,  9, RACE_SKELETON},
+               { "晒し骨のトゥエシク",        15000,  185, 110,  5,  9, RACE_SKELETON},
                { "ビリオス",         25000,  190, 115,  5,  7, RACE_BEASTMAN},
                { "ファスガル",       30000,  195, 112,  4,  8, RACE_ZOMBIE},
                { "パラディンのエレフリス",      10000,   210, 115,  6,  6, RACE_BARBARIAN},
-               {"キ'トリッ'ク",        15000,  185, 110,  5,  9, RACE_KLACKON},
+               { "キ'トリッ'ク",        15000,  185, 110,  5,  9, RACE_KLACKON},
                { "蜘蛛の友ドゥロカス",         25000,  190, 115,  5,  7, RACE_DARK_ELF},
                { "巨人殺しのフングス",       30000,  195, 112,  4,  8, RACE_DWARF},
                { "デランサ",      10000,   210, 115,  6,  6, RACE_ELF},
-               {"レンジャーのソルビスタニ",        15000,  185, 110,  5,  9, RACE_HALF_ELF},
+               { "レンジャーのソルビスタニ",        15000,  185, 110,  5,  9, RACE_HALF_ELF},
                { "ノロマのゾリル",         25000,  190, 115,  5,  7, RACE_GOLEM},
                { "イーオン・フラックス",       20000,  195, 112,  4,  8, RACE_HALF_ELF},
                { "強者ナドック",      10000,   210, 115,  6,  6, RACE_HOBBIT},
-               {"弱虫エラモグ",        15000,  185, 110,  5,  9, RACE_KOBOLD},
+               { "弱虫エラモグ",        15000,  185, 110,  5,  9, RACE_KOBOLD},
                { "公正なエオウィリス",         25000,  190, 115,  5,  7, RACE_VAMPIRE},
                { "バルログ殺しのヒュイモグ",       30000,  195, 112,  4,  8, RACE_HALF_ORC},
                { "冷酷ピーダス",      5000,   210, 115,  6,  6, RACE_HUMAN},
                { "ヴァモグ スレイヤー",        15000,  185, 110,  5,  9, RACE_HALF_OGRE},
                { "性悪フーシュナク",         25000,  190, 115,  5,  7, RACE_BEASTMAN},
                { "舞闘バレン",       30000,  195, 112,  4,  8, RACE_BARBARIAN},
-               { " 残忍なるアーノルド",      5000,   210, 115,  6,  6, RACE_BARBARIAN},
+               { "残忍なるアーノルド",      5000,   210, 115,  6,  6, RACE_BARBARIAN},
                { "獣殺しのアーンダル",        10000,  185, 110,  5,  9, RACE_HALF_ELF},
                { "ビーストマスター・エディー",         25000,  190, 115,  5,  7, RACE_HALF_ORC},
                { "竜殺しのオグライン",       30000,  195, 112,  4,  8, RACE_DWARF},
@@ -1418,23 +1461,23 @@ const owner_type owners[MAX_STORES][MAX_OWNERS] =
                { "Eddie Beast-Master",         25000,  190, 115,  5,  7, RACE_HALF_ORC},
                { "Oglign Dragon-Slayer",       30000,  195, 112,  4,  8, RACE_DWARF},
                { "Drew the Skilled",      10000,   210, 115,  6,  6, RACE_HUMAN},
-               {"Orrax Dragonson",        15000,  185, 110,  5,  9, RACE_DRACONIAN},
+               { "Orrax Dragonson",        15000,  185, 110,  5,  9, RACE_DRACONIAN},
                { "Anthrax Disease-Carrier",         25000,  190, 115,  5,  7, RACE_BEASTMAN},
                { "Arkhoth the Stout",       30000,  195, 112,  4,  8, RACE_DWARF},
                { "Sarlyas the Rotten",      5000,   210, 115,  6,  6, RACE_ZOMBIE},
-               {"Tuethic Bare-Bones",        15000,  185, 110,  5,  9, RACE_SKELETON},
+               { "Tuethic Bare-Bones",        15000,  185, 110,  5,  9, RACE_SKELETON},
                { "Bilious",         25000,  190, 115,  5,  7, RACE_BEASTMAN},
                { "Fasgul",       30000,  195, 112,  4,  8, RACE_ZOMBIE},
                { "Ellefris the Paladin",      10000,   210, 115,  6,  6, RACE_BARBARIAN},
-               {"K'trrik'k",        15000,  185, 110,  5,  9, RACE_KLACKON},
+               { "K'trrik'k",        15000,  185, 110,  5,  9, RACE_KLACKON},
                { "Drocus Spiderfriend",         25000,  190, 115,  5,  7, RACE_DARK_ELF},
                { "Fungus Giant-Slayer",       30000,  195, 112,  4,  8, RACE_DWARF},
                { "Delantha",      10000,   210, 115,  6,  6, RACE_ELF},
-               {"Solvistani the Ranger",        15000,  185, 110,  5,  9, RACE_HALF_ELF},
+               { "Solvistani the Ranger",        15000,  185, 110,  5,  9, RACE_HALF_ELF},
                { "Xoril the Slow",         25000,  190, 115,  5,  7, RACE_GOLEM},
                { "Aeon Flux",       20000,  195, 112,  4,  8, RACE_HALF_ELF},
                { "Nadoc the Strong",      10000,   210, 115,  6,  6, RACE_HOBBIT},
-               {"Eramog the Weak",        15000,  185, 110,  5,  9, RACE_KOBOLD},
+               { "Eramog the Weak",        15000,  185, 110,  5,  9, RACE_KOBOLD},
                { "Eowilith the Fair",         25000,  190, 115,  5,  7, RACE_VAMPIRE},
                { "Huimog Balrog-Slayer",       30000,  195, 112,  4,  8, RACE_HALF_ORC},
                { "Peadus the Cruel",      5000,   210, 115,  6,  6, RACE_HUMAN},
@@ -1951,10 +1994,11 @@ const owner_type owners[MAX_STORES][MAX_OWNERS] =
 };
 
 
-
-
-/*
+/*!
+ * @brief 加速値による実質速度修正倍率テーブル /
  * This table allows quick conversion from "speed" to "energy"
+ * @details
+ * <pre>
  * The basic function WAS ((S>=110) ? (S-110) : (100 / (120-S)))
  * Note that table access is *much* quicker than computation.
  *
@@ -1975,6 +2019,7 @@ const owner_type owners[MAX_STORES][MAX_OWNERS] =
  * 100 units to 50 units, though this may interact badly with
  * the (compiled out) small random energy boost code.  It may
  * also tend to cause more "clumping" at high speeds.
+ * </pre>
  */
 const byte extract_energy[200] =
 {
@@ -2002,8 +2047,8 @@ const byte extract_energy[200] =
 
 
 
-
-/*
+/*!
+ * @brief 基本必要経験値テーブル /
  * Base experience levels, may be adjusted up for race and/or class
  */
 const s32b player_exp[PY_MAX_LEVEL] =
@@ -2061,6 +2106,9 @@ const s32b player_exp[PY_MAX_LEVEL] =
 };
 
 
+/*!
+ * @brief 基本必要強化値テーブル(アンドロイド専用)
+ */
 const s32b player_exp_a[PY_MAX_LEVEL] =
 {
        20,
@@ -2116,11 +2164,14 @@ const s32b player_exp_a[PY_MAX_LEVEL] =
 };
 
 
-/*
+/*!
+ * @brief 性別表記 /
  * Player Sexes
- *
+ * @details
+ * <pre>
  *      Title,
  *      Winner
+ * </pre>
  */
 const player_sex sex_info[MAX_SEXES] =
 {
@@ -2143,9 +2194,11 @@ const player_sex sex_info[MAX_SEXES] =
 };
 
 
-/*
+/*!
+ * @brief 種族情報 /
  * Player Races
- *
+ * @details
+ * <pre>
  *      Title,
  *      {STR,INT,WIS,DEX,CON,CHR},
  *      r_dis, r_dev, r_sav, r_stl, r_srh, r_fos, r_thn, r_thb,
@@ -2155,6 +2208,7 @@ const player_sex sex_info[MAX_SEXES] =
  *      Female (Hgt, Wgt)
  *      infra,
  *      class-choices
+ * </pre>
  */
 const player_race race_info[MAX_RACES] =
 {
@@ -2717,14 +2771,17 @@ const player_race race_info[MAX_RACES] =
 };
 
 
-/*
+/*!
+ * @brief 職業情報 /
  * Player Classes
- *
+ * @details
+ * <pre>
  *      Title,
  *      {STR,INT,WIS,DEX,CON,CHR},
  *      c_dis, c_dev, c_sav, c_stl, c_srh, c_fos, c_thn, c_thb,
  *      x_dis, x_dev, x_sav, x_stl, x_srh, x_fos, x_thn, x_thb,
  *      HD, Exp, pet_upkeep_div
+ * </pre>
  */
 const player_class class_info[MAX_CLASS] =
 {
@@ -3058,6 +3115,10 @@ const player_class class_info[MAX_CLASS] =
        },
 };
 
+/*!
+ * @brief 性格情報 /
+ * Player Character
+ */
 const player_seikaku seikaku_info[MAX_SEIKAKU] =
 {
        {
@@ -3182,7 +3243,9 @@ const player_seikaku seikaku_info[MAX_SEIKAKU] =
 };
 
 
-
+/*!
+ * @brief 変身種族情報
+ */
 const player_race mimic_info[] =
 {
        {
@@ -3248,7 +3311,9 @@ const player_race mimic_info[] =
 };
 
 
-
+/*!
+ * @brief 歌、剣術、呪術領域情報テーブル
+ */
 const magic_type technic_info[NUM_TECHNIC][32] =
 {
        {
@@ -3370,7 +3435,8 @@ const magic_type technic_info[NUM_TECHNIC][32] =
 };
 
 
-/*
+/*!
+ * 魔法領域フラグ管理テーブル /
  * Zangband uses this array instead of the spell flags table, as there
  * are 5 realms of magic, each with 4 spellbooks and 8 spells per book -- TY
  */
@@ -3382,7 +3448,9 @@ const u32b fake_spell_flags[4]=
        0xff000000
 };
 
-
+/*!
+ * 職業毎に選択可能な第一領域魔法テーブル
+ */
 const s32b realm_choices1[MAX_CLASS] =
 {
        (CH_NONE),                              /* Warrior */
@@ -3425,7 +3493,9 @@ const s32b realm_choices1[MAX_CLASS] =
        (CH_NONE),                              /* Sniper */
 };
 
-
+/*!
+ * 職業毎に選択可能な第二領域魔法テーブル
+ */
 const s32b realm_choices2[MAX_CLASS] =
 {
        (CH_NONE),                              /* Warrior */
@@ -3470,7 +3540,10 @@ const s32b realm_choices2[MAX_CLASS] =
 
 
 #ifdef JP
-const cptr realm_names[] =
+/*!
+ * 領域魔法名称
+ */
+const concptr realm_names[] =
 {
        "魔法なし",
        "生命",
@@ -3496,9 +3569,9 @@ const cptr realm_names[] =
 #endif
 
 #ifdef JP
-const cptr E_realm_names[]
+const concptr E_realm_names[]
 #else
-const cptr realm_names[]
+const concptr realm_names[]
 #endif
 = {
        "none",
@@ -3524,12 +3597,16 @@ const cptr realm_names[]
 };
 
 
-/*
+/*!
+ * @brief 箱のトラップテーブル
+ * @details
+ * <pre>
  * Each chest has a certain set of traps, determined by pval
  * Each chest has a "pval" from 1 to the chest level (max 55)
  * If the "pval" is negative then the trap has been disarmed
  * The "pval" of a chest determines the quality of its treasure
  * Note that disarming a trap on a chest also removes the lock.
+ * </pre>
  */
 const int chest_traps[64] =
 {
@@ -3600,14 +3677,15 @@ const int chest_traps[64] =
 };
 
 
-/*
- * Class titles for the player.
- *
+/*!
+ * @brief 職業とレベル毎のプレイヤー称号テーブル / Class titles for the player.
+ * <pre>
  * The player gets a new title every five levels, so each class
  * needs only ten titles total.
+ * </pre>
  */
 #ifdef JP
-const cptr player_title[MAX_CLASS][PY_MAX_LEVEL / 5] =
+const concptr player_title[MAX_CLASS][PY_MAX_LEVEL / 5] =
 {
        /* Warrior */
        {
@@ -4009,7 +4087,7 @@ const cptr player_title[MAX_CLASS][PY_MAX_LEVEL / 5] =
 };
 
 #else
-const cptr player_title[MAX_CLASS][PY_MAX_LEVEL / 5] =
+const concptr player_title[MAX_CLASS][PY_MAX_LEVEL / 5] =
 {
        /* Warrior */
        {
@@ -4405,9 +4483,13 @@ const cptr player_title[MAX_CLASS][PY_MAX_LEVEL / 5] =
 };
 #endif
 
+/*!
+ * @brief 青魔法テーブル
+ * @details
+ * level,  smana,  %fail,  manedam,  %manefail,  use_stat, name
+ */
 const monster_power monster_powers[MAX_MONSPELLS] =
 {
-/* level,  smana,  %fail,  manedam,  %manefail,  use_stat, name */
 #ifdef JP
 {  1,   1,  10,    0,  15, A_CON,  "叫ぶ"},
 { 10,   4,  35,   89,  40, A_INT,  "何か"},
@@ -4606,8 +4688,10 @@ const monster_power monster_powers[MAX_MONSPELLS] =
 
 };
 
-
-const cptr monster_powers_short[MAX_MONSPELLS] = {
+/*!
+ * @brief モンスター魔法名テーブル
+ */
+const concptr monster_powers_short[MAX_MONSPELLS] = {
 #ifdef JP
 
        "叫ぶ", "何か", "魔力消去", "ロケット", "射撃", "何か", "何か", "何か",
@@ -4646,10 +4730,10 @@ const cptr monster_powers_short[MAX_MONSPELLS] = {
 };
 
 
-/*
- * Hack -- the "basic" color names (see "TERM_xxx")
+/*!
+ * @brief 色名称テーブル / Hack -- the "basic" color names (see "TERM_xxx")
  */
-const cptr color_names[16] =
+const concptr color_names[16] =
 {
 #ifdef JP
        "黒",
@@ -4690,10 +4774,10 @@ const cptr color_names[16] =
 };
 
 
-/*
- * Abbreviations of healthy stats
+/*!
+ * @brief 能力値テーブル / Abbreviations of healthy stats
  */
-const cptr stat_names[6] =
+const concptr stat_names[6] =
 {
 #ifdef JP
        "腕力 :", "知能 :", "賢さ :", "器用 :", "耐久 :", "魅力 :"
@@ -4703,10 +4787,10 @@ const cptr stat_names[6] =
 
 };
 
-/*
- * Abbreviations of damaged stats
+/*!
+ * @brief 能力値テーブル(能力低下時) / Abbreviations of damaged stats
  */
-const cptr stat_names_reduced[6] =
+const concptr stat_names_reduced[6] =
 {
 #ifdef JP
        "腕力x:", "知能x:", "賢さx:", "器用x:", "耐久x:", "魅力x:"
@@ -4717,7 +4801,10 @@ const cptr stat_names_reduced[6] =
 };
 
 
-/*
+/*!
+ * @brief サブウィンドウ名称テーブル
+ * @details
+ * <pre>
  * Certain "screens" always use the main screen, including News, Birth,
  * Dungeon, Tomb-stone, High-scores, Macros, Colors, Visuals, Options.
  *
@@ -4730,90 +4817,26 @@ const cptr stat_names_reduced[6] =
  *
  * The "ctrl-g" command (or pseudo-command) should perhaps grab a snapshot
  * of the main screen into any interested windows.
+ * </pre>
  */
-const cptr window_flag_desc[32] =
+const concptr window_flag_desc[32] =
 {
-#ifdef JP
-       "持ち物/装備一覧",
-#else
-       "Display inven/equip",
-#endif
-
-#ifdef JP
-       "装備/持ち物一覧",
-#else
-       "Display equip/inven",
-#endif
-
-#ifdef JP
-       "呪文一覧",
-#else
-       "Display spell list",
-#endif
-
-#ifdef JP
-       "キャラクタ情報",
-#else
-       "Display character",
-#endif
-               
-#ifdef JP
-       "視界内のモンスター表示",
-#else
-       "Display monsters in sight",
-#endif         
-
+       _("持ち物/装備一覧", "Display inven/equip"),
+       _("装備/持ち物一覧", "Display equip/inven"),
+       _("呪文一覧", "Display spell list"),
+       _("キャラクタ情報", "Display character"),
+       _("視界内のモンスター表示", "Display monsters in sight"),
        NULL,
-#ifdef JP
-       "メッセージ",
-#else
-       "Display messages",
-#endif
-
-#ifdef JP
-       "ダンジョン全体図",
-#else
-       "Display overhead view",
-#endif
-
-#ifdef JP
-       "モンスターの思い出",
-#else
-       "Display monster recall",
-#endif
-
-#ifdef JP
-       "アイテムの詳細",
-#else
-       "Display object recall",
-#endif
-
-#ifdef JP
-       "自分の周囲を表示", 
-#else
-       "Display dungeon view",
-#endif
-
-#ifdef JP
-       "記念撮影",
-#else
-       "Display snap-shot",
-#endif
-
+       _("メッセージ", "Display messages"),
+       _("ダンジョン全体図", "Display overhead view"),
+       _("モンスターの思い出", "Display monster recall"),
+       _("アイテムの詳細", "Display object recall"),
+       _("自分の周囲を表示", "Display dungeon view"),
+       _("記念撮影", "Display snap-shot"),
        NULL,
        NULL,
-#ifdef JP
-       "ボーグ・メッセージ",
-#else
-       "Display borg messages",
-#endif
-
-#ifdef JP
-       "ボーグ・ステータス",
-#else
-       "Display borg status",
-#endif
-
+       _("ボーグ・メッセージ", "Display borg messages"),
+       _("ボーグ・ステータス", "Display borg status"),
        NULL,
        NULL,
        NULL,
@@ -4833,396 +4856,12 @@ const cptr window_flag_desc[32] =
 };
 
 
-/*
- * Available Options
- *
- */
-const option_type option_info[] =
-{
-       /*** Input Options ***/
-
-       { &rogue_like_commands,         FALSE, OPT_PAGE_INPUT, 0, 0,
-       "rogue_like_commands",          _("ローグ風キー配置を使用する", "Rogue-like commands") },
-
-       { &always_pickup,               FALSE, OPT_PAGE_INPUT, 0, 5,
-       "always_pickup",                _("常にアイテムを拾う" , "Pick things up by default") },
-
-       { &carry_query_flag,            FALSE, OPT_PAGE_INPUT, 0, 3,
-       "carry_query_flag",             _("アイテムを拾う前に確認する", "Prompt before picking things up") },
-               
-       { &quick_messages,              TRUE,  OPT_PAGE_INPUT, 0, 1,
-       "quick_messages",               _("クイック・メッセージを使用する", "Activate quick messages") },
-               
-       { &auto_more,                   FALSE, OPT_PAGE_INPUT, 2, 6,
-       "auto_more",                    _("キー待ちしないで連続でメッセージを表示する", "Automatically clear '-more-' prompts") },
-       
-       { &command_menu,                TRUE,  OPT_PAGE_INPUT, 2, 7,
-       "command_menu",                 _("メニューによりコマンド選択を有効にする", "Enable command selection menu") },
-       
-       { &other_query_flag,            FALSE, OPT_PAGE_INPUT, 0, 2,
-       "other_query_flag",             _("床上のアイテムを使用するときに確認する", "Prompt for floor item selection") },
-       
-       { &use_old_target,              FALSE, OPT_PAGE_INPUT, 0, 4,
-       "use_old_target",               _("常に以前のターゲットを指定する", "Use old target by default") },
-
-       { &always_repeat,               TRUE,  OPT_PAGE_INPUT, 0, 6,
-       "always_repeat",                _("コマンド自動繰り返し", "Repeat obvious commands") },
-
-       { &confirm_destroy,             FALSE, OPT_PAGE_INPUT, 5, 3,
-       "confirm_destroy",              _("「無価値」なアイテムを破壊する時確認する", "Prompt for destruction of known worthless items") },
-
-       { &confirm_wear,                TRUE,  OPT_PAGE_INPUT, 5, 4,
-       "confirm_wear",                 _("呪われた物を装備する時確認する", "Confirm to wear/wield known cursed items") },
-
-       { &confirm_quest,               TRUE,  OPT_PAGE_INPUT, 1, 9,
-       "confirm_quest",                _("クエストを諦めて階段で逃げる前に確認する", "Prompt before exiting a quest level") },
-
-       { &target_pet,                  FALSE, OPT_PAGE_INPUT, 2, 5,
-       "target_pet",                   _("ペットをターゲットにする", "Allow targetting pets") },
-
-#ifdef ALLOW_EASY_OPEN
-       { &easy_open,                   TRUE,  OPT_PAGE_INPUT, 5, 7,
-       "easy_open",                    _("自動的にドアを開ける", "Automatically open doors") },
-#endif /* ALLOW_EASY_OPEN */
-
-#ifdef ALLOW_EASY_DISARM
-       { &easy_disarm,                 TRUE,  OPT_PAGE_INPUT, 5, 8,
-       "easy_disarm",                  _("自動的に罠を解除する", "Automatically disarm traps") },
-#endif /* ALLOW_EASY_DISARM */
-
-#ifdef ALLOW_EASY_FLOOR /* TNB */
-       { &easy_floor,                  FALSE, OPT_PAGE_INPUT, 5, 9,
-       "easy_floor",                   _("床上で重なったアイテムをリストする", "Display floor stacks in a list") },
-#endif /* ALLOW_EASY_FLOOR -- TNB */
-
-       { &use_command,                 FALSE, OPT_PAGE_INPUT, 5, 10,
-       "use_command",                  _("「使う(a)」コマンドでアイテムを何でも使える", "Allow unified use command") },
-
-       { &over_exert,                  FALSE, OPT_PAGE_INPUT, 0, 29,
-       "over_exert",                   _("MPが足りなくても魔法に挑戦する", "Allow casting spells when short of mana") },
-
-       { &numpad_as_cursorkey,         TRUE, OPT_PAGE_INPUT, 2, 31,
-       "numpad_as_cursorkey",          _("エディタ内でテンキーをカーソルキーとして使う", "Use numpad keys as cursor keys in editor mode") },
-
-       /*** Map Screen Options ***/
-
-       { &center_player,               FALSE, OPT_PAGE_MAPSCREEN, 5, 11,
-       "center_player",                _("常にプレイヤーを中心に置く(*遅い*)", "Center map while walking (*slow*)") },
-
-       { &center_running,              TRUE,  OPT_PAGE_MAPSCREEN, 5, 12,
-       "center_running",               _("走っている時でも中心に置く", "Centering even while running") },
-
-       { &view_yellow_lite,            TRUE,  OPT_PAGE_MAPSCREEN, 1, 28,
-       "view_yellow_lite",             _("明かりの範囲を特別な色で表示する", "Use special colors for torch-lit grids") },
-
-       { &view_bright_lite,            TRUE,  OPT_PAGE_MAPSCREEN, 1, 29,
-       "view_bright_lite",             _("視界の範囲を特別な色で表示する", "Use special colors for 'viewable' grids") },
-
-       { &view_granite_lite,           TRUE,  OPT_PAGE_MAPSCREEN, 1, 30,
-       "view_granite_lite",            _("壁を特別な色で表示する(重い)", "Use special colors for wall grids (slow)") },
-
-       { &view_special_lite,           TRUE,  OPT_PAGE_MAPSCREEN, 1, 31,
-       "view_special_lite",            _("床を特別な色で表示する(重い)", "Use special colors for floor grids (slow)") },
-
-       { &view_perma_grids,            TRUE,  OPT_PAGE_MAPSCREEN, 1, 6,
-       "view_perma_grids",             _("明るい場所はそのままにする", "Map remembers all perma-lit grids") },
-
-       { &view_torch_grids,            FALSE, OPT_PAGE_MAPSCREEN, 1, 7,
-       "view_torch_grids",             _("明かりで照らした場所はそのままにする", "Map remembers all torch-lit grids") },
-
-       { &view_unsafe_grids,           FALSE, OPT_PAGE_MAPSCREEN, 1, 8,
-       "view_unsafe_grids",            _("トラップ感知済みでない場所を表示する", "Map marked by detect traps") },
-
-       { &view_reduce_view,            FALSE, OPT_PAGE_MAPSCREEN, 1, 17,
-       "view_reduce_view",             _("街では視野を狭くする", "Reduce view-radius in town") },
-
-       { &fresh_before,                TRUE,  OPT_PAGE_MAPSCREEN, 1, 23,
-       "fresh_before",                 _("連続コマンド中に画面を再描画し続ける", "Flush output while continuous command") },
-
-       { &fresh_after,                 FALSE, OPT_PAGE_MAPSCREEN, 1, 24,
-       "fresh_after",                  _("コマンド後に画面を常に再描画し続ける", "Flush output after monster's move") },
-
-       { &fresh_message,               FALSE, OPT_PAGE_MAPSCREEN, 1, 25,
-       "fresh_message",                _("メッセージの後に画面を再描画する", "Flush output after every message") },
-
-       { &hilite_player,               FALSE, OPT_PAGE_MAPSCREEN, 1, 27,
-       "hilite_player",                _("プレイヤーにカーソルを合わせる", "Hilite the player with the cursor") },
-
-       { &display_path,                FALSE, OPT_PAGE_MAPSCREEN, 2, 8,
-       "display_path",                 _("魔法や矢の軌跡を表示する", "Display actual path before shooting") },
-
-       /*** Text Display Options ***/
-
-       { &plain_descriptions,          TRUE,  OPT_PAGE_TEXT, 5, 1,
-       "plain_descriptions",           _("アイテムの記述を簡略にする", "Plain object descriptions") },
-
-       { &plain_pickup,                FALSE, OPT_PAGE_TEXT, 6, 6,
-       "plain_pickup",                 _("「拾った」メッセージを簡略化する", "Plain pickup messages(japanese only)") },
-
-       { &always_show_list,            TRUE,  OPT_PAGE_TEXT, 4, 0,
-       "always_show_list",             _("選択時には常に一覧を表示する", "Always show list when choosing items") },
-
-       { &depth_in_feet,               FALSE, OPT_PAGE_TEXT, 0, 7,
-       "depth_in_feet",                _("ダンジョンの深さをフィートで表示する", "Show dungeon level in feet") },
-
-       { &show_labels,                 TRUE,  OPT_PAGE_TEXT, 0, 10,
-       "show_labels",                  _("装備一覧で装備場所を表示する", "Show labels in object listings") },
-
-       { &show_weights,                TRUE,  OPT_PAGE_TEXT, 0, 11,
-       "show_weights",                 _("アイテム一覧で重量を表示する", "Show weights in object listings") },
-
-       { &show_item_graph,             TRUE,  OPT_PAGE_TEXT, 2, 0,
-       "show_item_graph",              _("アイテムのシンボルを表示する", "Show items graphics") },
-
-       { &equippy_chars,               TRUE,  OPT_PAGE_TEXT, 1, 12,
-       "equippy_chars",                _("ステータスに文字で装備を表示する", "Display 'equippy' chars") },
-
-       { &display_mutations,           FALSE, OPT_PAGE_TEXT, 5, 0,
-       "display_mutations",            _("'C'コマンドで突然変異を表示する", "Display mutations in 'C'haracter Display") },
-
-       { &compress_savefile,           FALSE, OPT_PAGE_TEXT, 1, 26,
-       "compress_savefile",            _("セーブ・ファイル中のメッセージを圧縮する", "Compress messages in savefiles") },
-
-       { &abbrev_extra,                FALSE, OPT_PAGE_TEXT, 2, 10,
-       "abbrev_extra",                 _("アイテムに追加耐性/能力の略称を刻む", "Describe obj's extra resistances by abbreviation") },
-
-       { &abbrev_all,                  FALSE, OPT_PAGE_TEXT, 2, 11,
-       "abbrev_all",                   _("アイテムに全ての耐性/能力の略称を刻む", "Describe obj's all resistances by abbreviation") },
-
-       { &exp_need,                    FALSE, OPT_PAGE_TEXT, 2, 12,
-       "exp_need",                     _("次のレベルに必要な経験値を表示する", "Show the experience needed for next level") },
-
-       { &ignore_unview,               FALSE, OPT_PAGE_TEXT, 2, 13,
-       "ignore_unview",                _("視界外のモンスターの行動を表示しない", "Ignore whenever any monster does") },
-       
-       { &show_ammo_detail,            TRUE, OPT_PAGE_TEXT, 2, 14,
-       "show_ammo_detail",             _("矢弾のダメージの説明を表示する", "Show description of ammo damage") },
-               
-       { &show_ammo_no_crit,           FALSE, OPT_PAGE_TEXT, 2, 15,
-       "show_ammo_no_crit",            _("会心を考慮しない場合の矢弾のダメージを表示する", "Show ammo damage with no critical") },
-
-       { &show_ammo_crit_ratio,           FALSE, OPT_PAGE_TEXT, 2, 16,
-       "show_ammo_crit_ratio",            _("矢弾の会心発生率を表示する", "Show critical ratio of ammo") },
-               
-
-       /*** Game-Play ***/
-
-       { &stack_force_notes,           TRUE,  OPT_PAGE_GAMEPLAY, 0, 8,
-       "stack_force_notes",            _("異なる銘のアイテムをまとめる", "Merge inscriptions when stacking") },
-
-       { &stack_force_costs,           FALSE, OPT_PAGE_GAMEPLAY, 0, 9,
-       "stack_force_costs",            _("異なる割引表示のアイテムをまとめる", "Merge discounts when stacking") },
-
-       { &expand_list,                 TRUE,  OPT_PAGE_GAMEPLAY, 1, 5,
-       "expand_list",                  _("「一覧」コマンドを拡張する", "Expand the power of the list commands") },
-
-       { &small_levels,                TRUE,  OPT_PAGE_GAMEPLAY, 0, 30,
-       "small_levels",                 _("非常に小さいフロアの生成を可能にする", "Allow unusually small dungeon levels") },
-
-       { &always_small_levels,         FALSE, OPT_PAGE_GAMEPLAY, 2, 3,
-       "always_small_levels",          _("常に非常に小さいフロアを生成する", "Always create unusually small dungeon levels") },
-
-       { &empty_levels,                TRUE,  OPT_PAGE_GAMEPLAY, 0, 31,
-       "empty_levels",                 _("空っぽの「アリーナ」レベルの生成を可能にする", "Allow empty 'arena' levels") },
-
-       { &bound_walls_perm,            FALSE, OPT_PAGE_GAMEPLAY, 2, 1,
-       "bound_walls_perm",             _("ダンジョンの外壁を永久岩にする", "Boundary walls become 'permanent wall'") },
-
-       { &last_words,                  TRUE,  OPT_PAGE_GAMEPLAY, 0, 28,
-       "last_words",                   _("キャラクターが死んだ時遺言をのこす", "Leave last words when your character dies") },
-
-#ifdef WORLD_SCORE
-       { &send_score,                  TRUE,  OPT_PAGE_GAMEPLAY, 4, 6,
-       "send_score",                   _("スコアサーバにスコアを送る", "Send score dump to the world score server") },
-#endif
-       
-       { &allow_debug_opts,            FALSE, OPT_PAGE_GAMEPLAY, 6, 11,
-       "allow_debug_opts",             _("デバッグ/詐欺オプションを許可する", "Allow use of debug/cheat options") },
-
-       /*** Disturbance ***/
-
-       { &find_ignore_stairs,          FALSE, OPT_PAGE_DISTURBANCE, 0, 16,
-       "find_ignore_stairs",           _("階段は通過する", "Run past stairs") },
-
-       { &find_ignore_doors,           TRUE,  OPT_PAGE_DISTURBANCE, 0, 17,
-       "find_ignore_doors",            _("ドアは通過する", "Run through open doors") },
-
-       { &find_cut,                    FALSE, OPT_PAGE_DISTURBANCE, 0, 18,
-       "find_cut",                     _("曲り角を斜めに最短距離で通過する", "Run past known corners") },
-
-       { &check_abort,                 TRUE,  OPT_PAGE_DISTURBANCE, 1, 18,
-       "check_abort",                  _("連続コマンドはキー入力で中断する", "Check for user abort while continuous command") },
-
-       { &flush_failure,               TRUE,  OPT_PAGE_DISTURBANCE, 1, 20,
-       "flush_failure",                _("様々なミス発生時に入力をクリアする", "Flush input on various failures") },
-
-       { &flush_disturb,               FALSE, OPT_PAGE_DISTURBANCE, 1, 21,
-       "flush_disturb",                _("障害発生時に入力をクリアする", "Flush input whenever disturbed") },
-
-       { &disturb_move,                FALSE, OPT_PAGE_DISTURBANCE, 0, 20,
-       "disturb_move",                 _("どこのモンスターが動いても行動を中止する", "Disturb whenever any monster moves") },
-
-       { &disturb_high,                FALSE, OPT_PAGE_DISTURBANCE, 1, 3,
-       "disturb_high",                 _("レベルの高いモンスターが動いたら行動を中止する", "Disturb whenever high-level monster moves") },
-
-       { &disturb_near,                TRUE,  OPT_PAGE_DISTURBANCE, 0, 21,
-       "disturb_near",                 _("視界内のモンスターが動いたら行動を中止する", "Disturb whenever viewable monster moves") },
-
-       { &disturb_pets,                FALSE, OPT_PAGE_DISTURBANCE, 5, 6,
-       "disturb_pets",                 _("視界内のペットが動いたら行動を中止する", "Disturb when visible pets move") },
-
-       { &disturb_panel,               TRUE,  OPT_PAGE_DISTURBANCE, 0, 22,
-       "disturb_panel",                _("画面スクロール時に行動を中止する", "Disturb whenever map panel changes") },
-
-       { &disturb_state,               TRUE,  OPT_PAGE_DISTURBANCE, 0, 23,
-       "disturb_state",                _("自分のステータス変化時に行動を中止する", "Disturb whenever player state changes") },
-
-       { &disturb_minor,               TRUE,  OPT_PAGE_DISTURBANCE, 0, 24,
-       "disturb_minor",                _("些細なことが起きても行動を中止する", "Disturb whenever boring things happen") },
-
-       { &ring_bell,                   FALSE, OPT_PAGE_DISTURBANCE, 0, 14,
-       "ring_bell",                    _("エラー時にビープ音を鳴らす", "Audible bell (on errors, etc)") },
-
-       { &disturb_trap_detect,         TRUE,  OPT_PAGE_DISTURBANCE, 0, 27,
-       "disturb_trap_detect",          _("トラップ感知範囲外に出る直前に行動を中止する", "Disturb when leaving trap detected area") },
-
-       { &alert_trap_detect,           FALSE, OPT_PAGE_DISTURBANCE, 0, 25,
-       "alert_trap_detect",            _("トラップ感知範囲外に出る直前に警告する", "Alert when leaving trap detected area") },
-
-       /*** Birth Options ***/
-       { &manual_haggle,               FALSE, OPT_PAGE_BIRTH, 1, 0,
-       "manual_haggle",                _("店で値切り交渉をする", "Manually haggle in stores") },
-
-       { &easy_band,                   FALSE, OPT_PAGE_BIRTH, 6, 31,
-       "easy_band",                    _("初心者用簡単モード(*)", "Easy Mode (*)") },
-
-       { &smart_learn,                 TRUE,  OPT_PAGE_BIRTH, 1, 14,
-       "smart_learn",                  _("モンスターは失敗を学習する(*)", "Monsters learn from their mistakes (*)") },
-       
-       { &smart_cheat,                 FALSE, OPT_PAGE_BIRTH, 1, 15,
-       "smart_cheat",                  _("モンスターはプレイヤーの弱みを突く(*)", "Monsters exploit players weaknesses (*)") },
-
-       { &vanilla_town,                FALSE, OPT_PAGE_BIRTH, 6, 0,
-       "vanilla_town",                 _("元祖の街/クエストと荒野なし", "Use 'vanilla' town without quests and wilderness") },
-
-       { &lite_town,                   FALSE, OPT_PAGE_BIRTH, 6, 1,
-       "lite_town",                    _("小規模な街/荒野なし", "Use 'lite' town without a wilderness") },
-
-       { &ironman_shops,               FALSE, OPT_PAGE_BIRTH, 6, 2,
-       "ironman_shops",                _("(鉄人用)店を使用しない(*)", "Stores are permanently closed (*)") },
-
-       { &ironman_small_levels,        FALSE, OPT_PAGE_BIRTH, 6, 3,
-       "ironman_small_levels",         _("(鉄人用)常に非常に小さいフロアを生成(*)", "Always create unusually small dungeon levels (*)") },
-
-       { &ironman_downward,            FALSE, OPT_PAGE_BIRTH, 6, 4,
-       "ironman_downward",             _("(鉄人用)帰還と上り階段なし(*)", "Disable recall and use of up stairs (*)") },
-
-       { &ironman_empty_levels,        FALSE, OPT_PAGE_BIRTH, 6, 8,
-       "ironman_empty_levels",         _("(鉄人用)常に空っぽのアリーナレベルを生成(*)", "Always create empty 'arena' levels (*)") },
-
-       { &ironman_rooms,               FALSE, OPT_PAGE_BIRTH, 6, 12,
-       "ironman_rooms",                _("(鉄人用)常に普通でない部屋を生成する(*)", "Always generate very unusual rooms (*)") },
-
-       { &ironman_nightmare,           FALSE, OPT_PAGE_BIRTH, 6, 18,
-       "ironman_nightmare",            _("(鉄人用)悪夢モード(これは全く不条理です!)(*)", "Nightmare mode(it isn't even remotely fair!)(*)") },
-
-       { &left_hander,                 FALSE, OPT_PAGE_BIRTH, 6, 13,
-       "left_hander",                  _("左利きである", "Left-Hander") },
-
-       { &preserve_mode,               TRUE,  OPT_PAGE_BIRTH, 6, 14,
-       "preserve_mode",                _("伝説のアイテムを取り逃しても再生成される(*)", "Preserve artifacts (*)") },
-
-       { &autoroller,                  TRUE,  OPT_PAGE_BIRTH, 6, 15,
-       "autoroller",                   _("能力値にオートローラー使用(*)", "Allow use of autoroller for stats (*)") },
-
-       { &autochara,                   FALSE, OPT_PAGE_BIRTH, 6, 16,
-       "autochara",                   _("体格/地位にオートローラー使用", "Autoroll for weight, height and social status") },
-
-       { &powerup_home,                TRUE,  OPT_PAGE_BIRTH, 4, 3,
-       "powerup_home",                 _("我が家を拡張する(*)", "Increase capacity of your home (*)") },
-
-       /*** Easy Object Auto-Destroyer ***/
-
-       { &destroy_items,               FALSE, OPT_PAGE_AUTODESTROY, 7, 0,
-       "destroy_items",                _("アイテムの簡易自動破壊を使用する", "Use easy auto-destroyer") },
-
-       { &destroy_feeling,             FALSE, OPT_PAGE_AUTODESTROY, 7, 8,
-       "destroy_feeling",              _("簡易鑑定したとき自動破壊を適用する", "Apply auto-destroy as sense feeling") },
-
-       { &destroy_identify,            FALSE, OPT_PAGE_AUTODESTROY, 7, 9,
-       "destroy_identify",             _("鑑定したとき自動破壊を適用する", "Apply auto-destroy as identify an item") },
-
-       { &leave_worth,                 TRUE,  OPT_PAGE_AUTODESTROY, 7, 2,
-       "leave_worth",                  _("価値があるアイテムは壊さない", "Auto-destroyer leaves known worthy items") },
-
-       { &leave_equip,                 FALSE, OPT_PAGE_AUTODESTROY, 7, 3,
-       "leave_equip",                  _("武器/防具は壊さない", "Auto-destroyer leaves weapons and armour") },
-
-       { &leave_chest,                 TRUE,  OPT_PAGE_AUTODESTROY, 7, 7,
-       "leave_chest",                  _("開封されていない箱は壊さない", "Auto-destroyer leaves closed chests") },
-
-       { &leave_wanted,                TRUE,  OPT_PAGE_AUTODESTROY, 7, 4,
-       "leave_wanted",                 _("賞金首の死体/骨は壊さない", "Auto-destroyer leaves wanted corpses") },
-
-       { &leave_corpse,                FALSE, OPT_PAGE_AUTODESTROY, 7, 5,
-       "leave_corpse",                 _("死体/骨は壊さない", "Auto-destroyer leaves corpses and skeletons") },
-
-       { &leave_junk,                  FALSE, OPT_PAGE_AUTODESTROY, 7, 6,
-       "leave_junk",                   _("がらくたは壊さない", "Auto-destroyer leaves junk") },
-
-       { &leave_special,               TRUE,  OPT_PAGE_AUTODESTROY, 7, 1,
-       "leave_special",                _("種族/職業で特別に必要なアイテムは壊さない", "Auto-destroyer leaves items your race/class needs") },
-
-       /*** Play-record Options ***/
-
-       { &record_fix_art,              TRUE,  OPT_PAGE_PLAYRECORD, 4, 11,
-       "record_fix_art",               _("固定アーティファクトの入手を記録する", "Record fixed artifacts") },
-
-       { &record_rand_art,             TRUE,  OPT_PAGE_PLAYRECORD, 4, 12,
-       "record_rand_art",              _("ランダムアーティファクトの入手を記録する", "Record random artifacts") },
-
-       { &record_destroy_uniq,         TRUE,  OPT_PAGE_PLAYRECORD, 4, 13,
-       "record_destroy_uniq",          _("ユニークモンスターを倒したときを記録する", "Record when destroy unique monster") },
-
-       { &record_fix_quest,            TRUE,  OPT_PAGE_PLAYRECORD, 4, 14,
-       "record_fix_quest",             _("固定クエストの達成を記録する", "Record fixed quests") },
-
-       { &record_rand_quest,           TRUE,  OPT_PAGE_PLAYRECORD, 4, 15,
-       "record_rand_quest",            _("ランダムクエストの達成を記録する", "Record random quests") },
-
-       { &record_maxdepth,             TRUE,  OPT_PAGE_PLAYRECORD, 4, 16,
-       "record_maxdepth",              _("最深階を更新したときに記録する", "Record movements to deepest level") },
-
-       { &record_stair,                TRUE,  OPT_PAGE_PLAYRECORD, 4, 17,
-       "record_stair",                 _("階の移動を記録する", "Record recall and stair movements") },
-
-       { &record_buy,                  TRUE,  OPT_PAGE_PLAYRECORD, 4, 18,
-       "record_buy",                   _("アイテムの購入を記録する", "Record purchased items") },
-
-       { &record_sell,                 FALSE, OPT_PAGE_PLAYRECORD, 4, 19,
-       "record_sell",                  _("アイテムの売却を記録する", "Record sold items") },
-
-       { &record_danger,               TRUE,  OPT_PAGE_PLAYRECORD, 4, 20,
-       "record_danger",                _("ピンチになったときを記録する", "Record hitpoint warning") },
-
-       { &record_arena,                TRUE,  OPT_PAGE_PLAYRECORD, 4, 21,
-       "record_arena",                 _("アリーナでの勝利を記録する", "Record arena victories") },
-
-       { &record_ident,                TRUE,  OPT_PAGE_PLAYRECORD, 4, 22,
-       "record_ident",                 _("未判明のアイテムの識別を記録する", "Record first identified items") },
-
-       { &record_named_pet,            FALSE, OPT_PAGE_PLAYRECORD, 4, 23,
-       "record_named_pet",             _("名前つきペットの情報を記録する", "Record informations of named pets") },
-
-       /*** End of Table ***/
-
-       { NULL,                         0, 0, 0, 0,
-       NULL,                           NULL }
-};
-
 
 #ifdef JP
-const cptr chaos_patrons[MAX_PATRON] =
+/*!
+ * @brief カオスパトロン名テーブル
+ */
+const concptr chaos_patrons[MAX_PATRON] =
 {
        "スローター",
        "マベロード",
@@ -5245,7 +4884,7 @@ const cptr chaos_patrons[MAX_PATRON] =
        "カイン"
 };
 #else
-const cptr chaos_patrons[MAX_PATRON] =
+const concptr chaos_patrons[MAX_PATRON] =
 {
        "Slortar",
        "Mabelode",
@@ -5270,6 +4909,9 @@ const cptr chaos_patrons[MAX_PATRON] =
 #endif
 
 
+/*!
+ * @brief カオスパトロンの報酬能力値テーブル
+ */
 const int chaos_stats[MAX_PATRON] =
 {
        A_CON,  /* Slortar */
@@ -5294,8 +4936,9 @@ const int chaos_stats[MAX_PATRON] =
 };
 
 
-
-
+/*!
+ * @brief カオスパトロンの報酬テーブル
+ */
 const int chaos_rewards[MAX_PATRON][20] =
 {
        /* Slortar the Old: */
@@ -5428,6 +5071,9 @@ const int chaos_rewards[MAX_PATRON][20] =
        }
 };
 
+/*!
+ * @brief マーシャルアーツ打撃テーブル
+ */
 const martial_arts ma_blows[MAX_MA] =
 {
 #ifdef JP
@@ -5470,6 +5116,9 @@ const martial_arts ma_blows[MAX_MA] =
 
 };
 
+/*!
+ * @brief 修行僧のターンダメージ算出テーブル
+ */
 const int monk_ave_damage[PY_MAX_LEVEL+1][3] =
 {
   {0, 0, 0},
@@ -5525,11 +5174,11 @@ const int monk_ave_damage[PY_MAX_LEVEL+1][3] =
   {4486, 5636, 1702},
 };
 
-/*
- * Table of game-generated inscriptions (indexed by the defines in
- * defines.h). -- RG
+/*!
+ * @brief アイテムの価値記述テーブル /
+ * Table of game-generated inscriptions (indexed by the defines in defines.h). -- RG
  */
-const cptr game_inscriptions[] =
+const concptr game_inscriptions[] =
 {
        NULL,            /* FEEL_NONE */
 #ifdef JP
@@ -5556,6 +5205,9 @@ const cptr game_inscriptions[] =
 
 };
 
+/*!
+ * @brief 修行僧の構え能力テーブル
+ */
 const kamae kamae_shurui[MAX_KAMAE] =
 {
 #ifdef JP
@@ -5571,6 +5223,9 @@ const kamae kamae_shurui[MAX_KAMAE] =
 #endif
 };
 
+/*!
+ * @brief 剣術家の構え能力テーブル
+ */
 const kamae kata_shurui[MAX_KATA] =
 {
 #ifdef JP
@@ -5586,16 +5241,21 @@ const kamae kata_shurui[MAX_KATA] =
 #endif
 };
 
-const cptr exp_level_str[5]=
+/*!
+ * @brief 技能値到達表記テーブル
+ */
+const concptr exp_level_str[5]=
 #ifdef JP
 {"[初心者]", "[入門者]", "[熟練者]", "[エキスパート]", "[達人]"};
 #else
 {"[Unskilled]", "[Beginner]", "[Skilled]", "[Expert]", "[Master]"};
 #endif
 
-/* Weird melee attack types when hallucinating */
+/*!
+ * @brief 幻覚時の打撃記述テーブル / Weird melee attack types when hallucinating
+ */
 #ifdef JP
-const cptr silly_attacks[MAX_SILLY_ATTACK] =
+const concptr silly_attacks[MAX_SILLY_ATTACK] =
 {
        "に小便をかけられた。",
        "があなたの回りを3回回ってワンと言った。",
@@ -5640,8 +5300,10 @@ const cptr silly_attacks[MAX_SILLY_ATTACK] =
        "は言った。「変愚蛮怒、絶賛公開中!」",
 };
 
-/* Note: %s for strfmt() */
-const cptr silly_attacks2[MAX_SILLY_ATTACK] =
+/*!
+ * @brief 幻覚時の打撃記述テーブル(フォーマットつき) / Weird melee attack types when hallucinating (%s for strfmt())
+ */
+const concptr silly_attacks2[MAX_SILLY_ATTACK] =
 {
        "%sに小便をかけた。",
        "%sの回りを3回回ってワンと言った。",
@@ -5686,7 +5348,7 @@ const cptr silly_attacks2[MAX_SILLY_ATTACK] =
        "言った。「変愚蛮怒、絶賛公開中!」",
 };
 #else
-const cptr silly_attacks[MAX_SILLY_ATTACK] =
+const concptr silly_attacks[MAX_SILLY_ATTACK] =
 {
        "smothers",
        "hugs",
@@ -5726,11 +5388,11 @@ const cptr silly_attacks[MAX_SILLY_ATTACK] =
 #endif
 
 
-/*
- * The table of "symbol info" -- each entry is a string of the form
- * "X:desc" where "X" is the trigger, and "desc" is the "info".
+/*!
+ * @brief シンボル解説テーブル /
+ * The table of "symbol info" -- each entry is a string of the form "X:desc" where "X" is the trigger, and "desc" is the "info".
  */
-const cptr ident_info[] =
+const concptr ident_info[] =
 {
 #ifdef JP
        " :暗闇",
@@ -5929,8 +5591,8 @@ const cptr ident_info[] =
        NULL
 };
 
-
-/*
+/*!
+ * @brief モンスターの打撃効力テーブル /
  * The table of monsters' blow effects
  */
 const mbe_info_type mbe_info[] =
@@ -5972,7 +5634,8 @@ const mbe_info_type mbe_info[] =
 };
 
 
-/*
+/*!
+ * @brief 地形状態フラグテーブル /
  * The table of features' actions
  */
 const byte feature_action_flags[FF_FLAG_MAX] =
@@ -6096,7 +5759,8 @@ const byte feature_action_flags[FF_FLAG_MAX] =
 };
 
 
-/*
+/*!
+ * @brief 装備耐性に準じたブレス効果の選択テーブル /
  * Define flags, effect type, name for dragon breath activation
  */
 const dragonbreath_type dragonbreath_info[] = {
@@ -6117,7 +5781,8 @@ const dragonbreath_type dragonbreath_info[] = {
        { 0, 0, NULL }
 };
 
-/*
+/*!
+ * @brief アイテムの発動効果テーブル /
  * Define flags, levels, values of activations
  */
 const activation_type activation_info[] =
@@ -6158,18 +5823,18 @@ const activation_type activation_info[] =
          _("アシッド・ボール(100)", "ball of acid (100)") },
        { "BA_NUKE_1", ACT_BA_NUKE_1, 50, 1000, {12, 0},
          _("放射能球(100)", "ball of nuke (100)") },
-       { "DRAIN_1", ACT_DRAIN_1, 30, 500, {12, 0},
+       { "HYPODYNAMIA_1", ACT_HYPODYNAMIA_1, 30, 500, {12, 0},
          _("窒息攻撃(100)", "a strangling attack (100)") },
-       { "DRAIN_2", ACT_DRAIN_2, 40, 750, {15, 0},
-         _("生命力吸収(120)", "drain life (120)") },
-       { "VAMPIRE_1", ACT_VAMPIRE_1, 40, 1000, {20, 0},
-         _("吸血ドレイン(3*50)", "vampiric drain (3*50)") },
+       { "HYPODYNAMIA_2", ACT_HYPODYNAMIA_2, 40, 750, {15, 0},
+         _("衰弱の矢(120)", "hypodynamic bolt (120)") },
+       { "DRAIN_1", ACT_DRAIN_1, 40, 1000, {20, 0},
+         _("吸収の矢(3*50)", "drain bolt (3*50)") },
        { "BO_MISS_2", ACT_BO_MISS_2, 40, 1000, {20, 0},
          _("矢(150)", "arrows (150)") },
        { "WHIRLWIND", ACT_WHIRLWIND, 50, 7500, {25, 0},
          _("カマイタチ", "whirlwind attack") },
-       { "VAMPIRE_2", ACT_VAMPIRE_2, 50, 2500, {40, 0},
-         _("吸血ドレイン(3*100)", "vampiric drain (3*100)") },
+       { "DRAIN_2", ACT_DRAIN_2, 50, 2500, {40, 0},
+         _("吸収の矢(3*100)", "drain bolt (3*100)") },
        { "CALL_CHAOS", ACT_CALL_CHAOS, 70, 5000, {35, 0},
          _("混沌召来", "call chaos") },
        { "ROCKET", ACT_ROCKET, 70, 5000, {20, 0},
@@ -6256,7 +5921,7 @@ const activation_type activation_info[] =
          _("蛸の大群召喚", "summon octopus") },
 
        { "CHOIR_SINGS", ACT_CHOIR_SINGS, 60, 20000, {300, 0},
-         _("回復(777)、癒し、士気高揚", "heal 777 hit points, curing and heloism") },
+         _("回復(777)、癒し、士気高揚", "heal 777 hit points, curing and HEROism") },
        { "CURE_LW", ACT_CURE_LW, 10, 500, {10, 0},
          _("恐怖除去/体力回復(30)", "remove fear and heal 30 hp") },
        { "CURE_MW", ACT_CURE_MW, 20, 750, {3, 3},
@@ -6292,9 +5957,9 @@ const activation_type activation_info[] =
          _("幽体化(期間 (レベル/2)+d(レベル/2))", "wraith form (dur level/2 + d(level/2))") },
        { "INVULN", ACT_INVULN, 90, 25000, {1000, 0},
          _("無敵化(期間 8+d8)", "invulnerability (dur 8+d8)") },
-       { "HELO", ACT_HELO, 10, 500, {30, 30},
+       { "HERO", ACT_HERO, 10, 500, {30, 30},
          _("士気高揚", "heroism") },
-       { "HELO_SPEED", ACT_HELO_SPEED, 30, 20000, {100, 200},
+       { "HERO_SPEED", ACT_HERO_SPEED, 30, 20000, {100, 200},
          _("士気高揚, スピード(期間 50+d50ターン)", "hero and +10 to speed (50)") },
        { "RESIST_ACID", ACT_RESIST_ACID, 20, 2000, {40, 40},
          _("酸への耐性(期間 20+d20)", "resist acid (dur 20+d20)") },
@@ -6390,7 +6055,10 @@ const activation_type activation_info[] =
 };
 
 #ifdef JP
-const cptr artifact_bias_name[MAX_BIAS] =
+/*!
+ * @brief ランダムアーティファクトのバイアス名称テーブル
+ */
+const concptr artifact_bias_name[MAX_BIAS] =
 {
        "なし",
        "電撃",
@@ -6414,7 +6082,7 @@ const cptr artifact_bias_name[MAX_BIAS] =
        "レンジャー",
 };
 #else
-const cptr artifact_bias_name[MAX_BIAS] =
+const concptr artifact_bias_name[MAX_BIAS] =
 {
        "None",
        "Elec",