箱庭共通マップ S — CORE-B リリース
2026-09-13 / dataVersion 32(7カ国入り初期世界)/ 共有マップ version=3、90×90、セル30桁hex。 N 1.51系を基準にしたSの改変版です。本番で使用済みの製品版1.54を起点に、以後は0.01ずつ進めます。版名からNセーブとの互換性を推定しないでください。
確定済みのSHA256は配布物の実測値です。未確定の値は配布元の RELEASE_NOTES.md で確認してください。同じ版・同じ日付でも再ビルドすれば値は変わります。従来のhakoS-NN表記だけでは同日中のパッチ差分を識別できないため、ビルド日時・commitと、ダウンロード時のアーカイブSHA256も照合してください。version.cgi が無い旧配布物もあります。
version1.73 (2026-11-12)
アーカイブ: hakoS-1.73-20261112.tar.gz / SHA256(先頭16文字): 未確定(アーカイブ作成後に配布元の RELEASE_NOTES.md と *-archives.sha256 で確認)
version1.72.29 から、CPU の国の守りと外交、季節の勝ちの決まり、軍港と都市の人口を直した版です。dataVersion(33)は変えません。世界の保存に、陣営の包囲網と、軍港へ援助を運ぶ船の目印の欄が加わります(無い保存はそのまま読めます)。このどちらかの欄がある間の保存は、1.72.29 の確かめに通らず、そのままでは動かせません。戻すときはコードと一緒に控えのデータも戻してください。
- CPU の国の守り: 前線の空いた基地に先に兵を置きます。陣営の外の国に宣戦されると兵を集め、強い相手との戦争では、前線を守った残りを首都と相手に近い町に置きます。兵が足りないときは薄く広く置き、前線を空けて総崩れになるのを減らします。
- CPU の攻め方: 近くの陣営の仲間と相手の兵を見比べて、攻めるか守るかを選びます。友好条約だけの国の兵は味方の戦力に足さず、釣り合わない相手への無理な攻めを控えます。
- CPU の友好と停戦: 強すぎて釣り合わない隣国とは、脅威があるときや戦争中にも友好を結んで備えます。釣り合わない強い相手に宣戦されると、開戦の前に一度だけ停戦を申し出ます(その相手の兵が自国の土地にいるときは申し出ません)。首都が危ないときなどの今までの停戦の申し出は残ります。包囲網の CPU は、囲んでいる陣営の国とは友好を結びません。
- 季節の勝ちと陣営への加入: 無所属のまま領土の割合で勝てるのは、人の国だけになります(期限まで決着しないときの順位には、CPU の国も入ります)。無所属の AI の国は、入れる陣営があれば次のターンに加入します。入れる先が無いときは知らせて、次のターンに試します。
- 陣営の包囲網: 季節の途中で一つの陣営が全陸地の 55% 以上を持つと、その陣営を囲む包囲網ができます。包囲網の国がその陣営から宣戦されると、仲間も守りの戦争に加わります。陸地が 45% 未満になるなどすると解け、禁輸や一斉の宣戦はしません。
- 軍港の場所: 軍港を建てられるのは、自国の陸・海底都市・油田のとなりだけになります。どの国の軍港のとなりにも、新しい軍港は建てられません。すでにある軍港は残ります。
- 軍港で援助を受け取る: 使える民間の港が無いときは、軍港で援助を受け取れます。軍港から資源を積み出すことはできません。
- 都市の人口: 大都市・ニュータウン・現代都市・海底都市も、町と同じ式で人口が自然に増え減りします。食料不足や他国の大部隊がいるときの減り方も町と同じになり、各都市の人口の上限は変わりません。
- 画面と説明: 季節や包囲網、軍港、人口の説明を更新しました。
version1.72.29 (2026-11-11)
アーカイブ: hakoS-1.72.29-20261111.tar.gz / SHA256(先頭16文字): 4a1ca9cc65c1c135
version1.72.28 から、商業同盟の会議室の表示を直した版です。dataVersion(33)は変えません。
- 商業同盟の会議室: 掲示板のボタンが縦に並び、飾りも付かずに崩れていたのを直しました(version1.72.21 から)。陣営の掲示板と同じ見た目になります。書き込みや保存の中身は変わりません。
version1.72.28 (2026-11-11)
アーカイブ: hakoS-1.72.28-20261111.tar.gz / SHA256(先頭16文字): 482c7d0ca2b87ba3
version1.72.27 から、ターン更新と定期輸送の目安の計算を少し軽くした版です。dataVersion(33)は変えません。
- ターン更新の計算: 国ごとの盤の集計で、国ごとに全部のマスを見直していた所を、盤が変わらない間はまとめて数える形にしました。国の数が増えても重くなりにくくなります。結果は変わりません。
- 定期輸送の目安: 申し込みの画面の目安を見積もる計算で、契約の船を毎日並べ直していた所を、着く日や番号が変わったときだけにしました。出る数は変わりません。
version1.72.27 (2026-11-10)
アーカイブ: hakoS-1.72.27-20261110.tar.gz / SHA256(先頭16文字): 392dbb8f50a0f017
version1.72.26 から、ターン更新・開発画面・定期輸送の目安の計算を軽くし、CPU の軍港の使い方を直した版です。dataVersion(33)は変えません。
- ターン更新の計算: 外交と契約の処理の中で、売買の見方を何度も作り直していた所と、海軍の船の一覧を丸ごと作り直していた所を減らしました。CPU の考える処理でも、時計の確かめを減らし、陸路の予約と宣戦の組の数え方を、数が増えても重くなりにくい形にしました。結果は変わりません。
- 開発画面: ほかの国が命令を送った後に開いても、自分の頁の控えが使えるようにしました。ミサイル基地の届く範囲と他国の一覧の数え方も軽くしました。表示は変わりません。
- 定期輸送の目安: 申し込みの画面の目安を見積もる計算を、便が出る日・着く日を順に取り出す形にして軽くしました。出る数は変わりません。
- CPU の軍港: CPU は、浅瀬などに囲まれて外の海へ出られない軍港では、浅瀬を通れない軍艦(巡洋艦・戦艦・航空母艦・潜水艦)を造らなくなりました。浅瀬を通れば出られる軍港では駆逐艦を造ります。外の海へ出られない軍港しか持たない CPU は、出られる場所に新しい軍港を建てます(古い軍港は修理などに使うので残します)。
version1.72.26 (2026-11-10)
アーカイブ: hakoS-1.72.26-20261110.tar.gz / SHA256(先頭16文字): 8e16015a5f024ea6
version1.72.25 から、ターン更新が止まる不具合、機雷、定期輸送の目安、CPU の軍港の場所、物流の道探しの上限、設定一覧を直した版です。dataVersion(33)は変えません。
- ターン更新が止まる不具合: 定期輸送の約束を受けた後、最初の発送の前に CPU が契約を見積もると、ターン更新が止まることがある不具合を直しました。
- 見えない機雷と船の道: 船の道を決めるとき、見えていない機雷はただの海として扱います。今までは見えない機雷も避けて道を決めていたので、道の形から機雷の場所が分かることがありました。見えていない機雷のマスに入った船は、今までどおり機雷にぶつかって傷を受けます(民間の商船もぶつかることが増えます)。CPU の道の見込みも同じです。
- 味方の機雷: 自国・同じ正式な陣営・友好国の船は、どの動き方でも、味方の機雷のマスに入りません。
- 機雷を置ける場所: 自国・同じ正式な陣営・友好国の港と軍港のとなり 1 マスには、機雷を置けなくなりました。置くと、味方の港・軍港から外の海(港から 6 マスより遠い水)へ出る道が無くなる場所にも置けません。
- CPU と機雷: CPU は、自国の港・軍港の近くにある交戦国の機雷を除くため、手の空いた艦隊を 1 つ向かわせます。交戦中は、自国の港を守る機雷を 1 ターンに 1 個まで置きます。自国の軍港から外の海へ出る道は塞ぎません。
- 定期輸送の目安: 申し込みの画面の「この間隔で1回に送れる量の目安」が、少ない量なら送れる組でも 0 と出ることがありました。少ない量でも確かめ直して、申し込みが通る量を出すようにしました。目安が 0 のときは、道と間隔の代わりに、その訳と打てる手を出します。
- CPU の軍港: CPU は、浅瀬などに囲まれて外の海へ出られない場所に軍港を建てなくなりました。今ある軍港はそのままです。
- 物流の道探し: 1.72.15 で 128 回に下げた、民間・契約・CPU の物流の道探しの広げ方の上限を 256 回に戻しました。遠い相手との交易や定期輸送の道が見つかりやすくなります(ターンの計算は 5% ほど増えます)。
- 設定一覧: 「港・軍港の建設で民間へ戻す建造費の割合(%)」の行を外しました。1.72.21 から、港・軍港を建てるときに取り除く養殖場の建造費は、全額を持ち主へ戻しています。
version1.72.25 (2026-11-10)
アーカイブ: hakoS-1.72.25-20261110.tar.gz / SHA256(先頭16文字): c70af95ae6f6a07c
version1.72.24 から、上陸、他国の部隊がいるマスの収入、自国産の食料の配給、定期輸送の上限の案内を直した版です。dataVersion(33)は変えません。
- 上陸: 船から上陸できるのは、交戦中の相手の土地・中立地・自国・同じ陣営・友好国の土地だけになりました。平時のほかの国の土地には上陸できません(宣戦の待ちの間も同じです)。上陸できないときは記録に出て、部隊は船に残ります。今もう上陸している部隊はそのままです。
- 他国の部隊がいるマスの収入: 5,000 人以上の他国の部隊がいるマスで、農場・工場・鉱山の生産が止まるのは、その国と交戦中のときだけになりました。平時には止まりません。
- 自国産の食料と配給: 住民が民間から買った自国産の食料の分だけ、次のターンの国の配給(人口の分)を減らします。兵と負傷兵の分は減らしません。民間の売り上げは変わりません。CPU の食料の見込みも同じに数えます。
- 定期輸送の上限の案内: 量が多すぎて断られたときに出る「最大」の数を、その数で申し込み直せば通る数にしました。今までは、示した数で申し込み直しても断られることがありました。
- 説明書: 契約船の上限を 15 隻(1 件 5 隻)に直しました。
version1.72.24 (2026-11-10)
アーカイブ: hakoS-1.72.24-20261110.tar.gz / SHA256(先頭16文字): 5b749a5600c93b6a
version1.72.23 から、記者クラブに船の番号を足した版です。dataVersion(33)は変えません。
- 記者クラブの船の番号: 公開地図の商船・民間船の表と漁船の表、その JSON に、船の番号を足しました。商船(国・民間)・契約船・漁船は、作ったときから変わらず使い回さない通し番号(JSON の
ship_id)です。遊覧船は別の通し番号(cruise_id、表では「遊覧船 5」のように出します)です。号を並べれば、同じ番号の船の位置をつないで航路を描けます。載せる船は今までと同じで、軍艦や見えない物、積み荷・契約の中身・行き先は増やしていません。海賊船には番号を付けません。番号はこの版から作る号に付きます。
version1.72.23 (2026-11-06)
アーカイブ: hakoS-1.72.23-20261106.tar.gz / SHA256(先頭16文字): 1e8b16a37faf7cf9
version1.72.22 から、ターン更新が止まる不具合、占領、陣営を抜けたときの部隊、民間の商船の解体を直した版です。dataVersion(33)は変えません。
- ターン更新が止まる不具合: 定期の約束の便は約束が終わるまで進行中のまま残るので、1 国の依頼の上限(64 件)を超えることがありました。その国の CPU が次の提案を出すと、ターン更新が止まる不具合を直しました。上限に当たった提案は飛ばすだけにし、定期の約束の便は上限に数えません。
- 占領: 部隊が占領できるのは、交戦中の相手の土地だけになりました。宣戦の待ちの間は入りません。中立の土地と亡びた国の土地は今までどおりです。CPU の部隊も同じ決まりで動きます。
- 陣営を抜けたときの部隊: 陣営を抜けた・追放された・解散したときは、友好国になったときと同じく、元の仲間の土地にいる部隊を無料で撤退させて予備兵に戻します。どちらの国の部隊にも効きます。交戦中の組と友好条約の組は撤退しません。
- 民間の商船の解体: 20 ターン続けて荷を積まず、動きもしなかった民間の商船は、どこにいても解体し、建造費の 50% を民間に戻します。戦争中の国の船も解体します。持ち主の民間の商船が 2 隻以下なら解体しません。動いた船は数え直すので、帰り道の船は解体しません。
version1.72.22 (2026-11-06)
アーカイブ: hakoS-1.72.22-20261106.tar.gz / SHA256(先頭16文字): 55802bea73998d02
version1.72.21 から、契約船、港・軍港を建てるときのとなりの養殖場と漁船、焦土撤退、機雷を直した版です。dataVersion(33)は変えません。
- ターン更新が止まる不具合: 契約の荷が「預けた陸側を特定できないので待つ」状態になったターンに、記録の言葉が登録されていないために更新が途中で止まる不具合を直しました。
- 契約船の上限: 契約船の上限を 1 国 30 隻から 15 隻にしました(1 件の契約で使える船は 10 隻から 5 隻)。1 隻に積める量は 1.72.21 で 2 倍にしたので、運べる量は前と同じです。契約船は、船代を決める「持っている商船の数」に数えません。
- 止まる契約船: 道探しが途中で打ち切られると、契約船が前に決めた航路を捨てて止まってしまう不具合を直しました。荷を積んだ契約船が 6 ターン続けて進めない(位置も届けた量も変わらない)ときは、その便を取りやめ、送り手の国の港へ帰って荷を戻します。帰り道も塞がれているときは、荷を積んだまま待ちます。
- 港のとなりの養殖場と漁船: 港・軍港を建てるとき、となり 1 マスの養殖場は他国の物も取り除き、建造費を全額持ち主の民間に返します。となりのマスで漁をしている近海漁船と、そこへ向かっている近海漁船は、漁を取りやめて母港へ帰ります(船と積んだ魚はそのままです)。
- 焦土撤退: 軍港で焦土撤退すると荒地(陸)になって陸地が増えていたのを、浅瀬に戻るように直しました。ターン 176 に荒地になった (40,58) も、更新の後の最初のターンに浅瀬へ戻します。焦土にできる部隊の人数を元の数に戻しました(自国の土地で 3,000 人以上、どこでも 15,000 人以上。5,000 人以上なら半分の確率)。
- 機雷: 自国の軍艦のとなりの深い海にも置けるようにしました。他国の港・軍港のとなりには、その国と交戦中のときだけ置けます。機雷は軍艦と同じく、持ち主と、視界に入れている国にだけ見え、ほかの国には海に見えます。CPU の国も、視界の中にある交戦国の機雷が自国の港・軍港の近くにあれば、一斉攻撃で除去します。
version1.72.21 (2026-11-05)
アーカイブ: hakoS-1.72.21-20261105.tar.gz / SHA256(先頭16文字): d7893273d30d930c
version1.72.20 から、造船の命令、商船、港のとなりの養殖場、商業同盟の共有情報のページを直した版です。dataVersion(33)は変えません。港のとなりの養殖場を取り除いた結果は保存に残ります(1.72.20 に戻しても元には戻りません)。
- 艦種ごとの造船の命令: 駆逐艦建造・巡洋艦建造・戦艦建造・航空母艦建造・潜水艦建造の 5 つの命令を足しました。数量で艦隊を選びます(0 は自動、1〜16 は第 1〜第 16 艦隊)。第 1 艦隊も指定どおりに使えます。開発画面の「造船」は軍港の建設に使います。すでに入っている造船の計画は今までどおり動きます。
- 商船: 1 隻に積める量を 2 倍にしました(今ある船にも効きます)。船代は、同じ持ち主(国、またはその国の民間)が持っている商船の数で上がります。2 隻目までは今の値段で、3 隻目は 1.5 倍、4 隻目は 2 倍と、1 隻ごとに 0.5 倍ずつ上がります。持つ費用は変えません。耐久を下げ、小型の商船は 2、大型の商船は 3 にしました(駆逐艦より弱くしました)。
- 港のとなりの養殖場: 交易港・軍港のとなり 1 マスにある養殖場は、建てたときの費用を全額持ち主に返して取り除きます(今あるものは更新の後に 1 度だけ)。これから港・軍港を建てるとき、となりに自国の養殖場があれば同じく取り除き、他国の養殖場があるときは建てられません。
- 商業同盟の共有情報: ページを作り直しました。上に同盟全体のまとめ、下に加盟国ごとの銀行・関税・港・倉庫・船・注文・定期輸送の表を出します。相手は国名、量は単位つきで、並びも決まった順にしました。ゲームのほかの画面と同じ見た目です。
version1.72.20 (2026-11-04)
アーカイブ: hakoS-1.72.20-20261104.tar.gz / SHA256(先頭16文字): 3dd4cfa6cfd1a9a9
version1.72.19 から、CPU の国の軍団の守り方と、陣営の仲間への援助を直した版です。dataVersion(33)も保存の形も変えません。
- CPU の軍団の守り: CPU の国が、前線の増援の候補を出しただけで軍団を待機させないようにしました。戦の準備で首都・海岸を守る軍団のうち、守りに要る分を超える軍団は動かせるようにしました。近くに見える敵の兵が多い軍団と、見えている敵の軍艦の砲撃が届く海岸の守りは、今までどおり残します。新しく兵を置く基地は、見えている敵の軍艦の砲撃が届く場所を避けます。
- CPU の陣営の仲間への援助: CPU の国が、同じ陣営の仲間へ予備兵・食料などを送る前に、届く道があるかを確かめるようにしました。届かない仲間は飛ばして、届く仲間へ送ります。届かなかった仲間は、数ターンおいてから見直します。燃料が足りなくても、食料など足りている物は送れます。
- CPU の命令の並び: CPU の国の援助など、ターンを使わない命令が受け付けで断られたとき、その後ろの研究などが同じターンに動くようにしました(前は資金繰りに替わって、そのターンが終わっていました)。
- CPU の国境の土地: CPU の国が、国境の近くの持ち主の無い土地を取るとき、空いている軍団を付き添わせるようにしました。守りに要る軍団は使いません。
version1.72.19 (2026-11-03)
アーカイブ: hakoS-1.72.19-20261103.tar.gz / SHA256(先頭16文字): bfc2b963b4e79963
version1.72.18 から、領土割譲と CPU の国の研究・工場・燃料・契約・町の格上げを直した版です。dataVersion(33)も保存の形も変えません。
- 領土割譲: 割譲は 1 ターンに 1 マスまでにし、受け取る国の土地にとなり合うマスだけを譲れるようにしました。国どうしがほかの所でとなり合っていても、そのマスがとなり合っていなければ譲れません。軍艦・商船は土地に数えません(元の箱庭の決まりに戻しました)。
- CPU の研究: お金に余裕のある CPU の国が、ほかにすることが無いターンに研究する条件を、資金 12,000 以上から「次の段の研究のお金を 2 回分払える」に変えました。研究のお金を払っても、非常の買い入れのための資金 1,000 と次の段のお金が残るときだけ研究します。資金 12,000 未満の国は、脅されているとき・戦争や作戦の最中・食料が減っているときは研究しません。
- CPU の工場: 工場を 1 つ増やしても働き口が増えない段の切れ目で、CPU の国が 2 回の増築で働き口を増やすようにしました。
- CPU の燃料と契約: CPU の国が、交換の最中でも足りない燃料の定期の契約を探すようにし、定期の契約の量を、運賃を含めても値段の上限に収まる量まで(その道で 1 回に運べる量を上限に)増やすようにしました。製油所を建てる場所に、となりの持ち主の無い土地も使います。
- CPU の町の格上げ: 町の格上げに足りない石材・木材を、CPU の国が定期の契約で集めようとするようにしました。
- 細かい直し: ターンの更新の記録に出ていた内部の警告を 2 か所減らしました。
version1.72.18 (2026-11-03)
アーカイブ: hakoS-1.72.18-20261103.tar.gz / SHA256(先頭16文字): 6f9a542655123885
version1.72.17 から、CPU の国の開発・外交・守り、艦隊、買い入れ、相場と研究を直した版です。dataVersion(33)は変えません。世界の保存に、相場の今の基本の値段の欄(無い保存は元の値段から始めます)と研究の 6〜10 段が加わります。
- CPU の山越え: CPU の国が、山岳兵で山を越えて、向こう側の中立地を開発できるようにしました。
- 第一艦隊と商船: 第一艦隊に国の商船が混ざっていても、軍艦に艦隊の命令を出せるようにしました(商船は艦隊の命令では動きません)。番号を付けずに造った軍艦は、国の商船のいない艦隊に入ります。
- 外交の契約: CPU の国が、契約船で運ぶ大口・複数の品の交換を受けるようにし、陣営の仲間への予備兵の援助に軍艦を要らなくしました。外交の契約の運べる量の見積もりで、港の枠を実際の使い方に合わせました(空いた港を使う契約が通りやすくなります)。
- 失業率の表示: 失業率が今の在庫からの見込みのときは「(見込み)」と出し、開発画面に工場などが原料・燃料・置き場で止まっている訳を短く出すようにしました。説明書に、工場の働き口と原料の関係と、鋼鉄が足りない間は軽工業に切り替えられることを書きました。
- 戦争中の CPU の守り: 戦争中の CPU の国が、貯まった予備兵を兵站基地に補充して守りに使うようにしました。山岳兵の軍団の枠が埋まっているときは、山岳兵の要らない空いた基地に新しい軍団を置きます。
- 同じ陣営への宣戦: 同じ陣営の仲間には宣戦できないようにしました。
- 世界からの買い入れ: 世界から買える品を食料と燃料だけにし、値段を基準の 1.5 倍にしました(国庫の非常の買い入れは燃料だけ)。ほかの品は、ほかの国からの輸入や契約で手に入れます。CPU の国も、足りない物を最大 3 国との定期の契約で調達します。
- 陣営の軍港での造船: 同じ陣営の仲間の軍港で軍艦を造れるようにしました。仲間の軍港のマスに造船の命令を出すと、となりの空いた海に造ります(費用は造った国が払い、船も造った国の物です。戦争中の相手の軍港では造れません)。持てる軍艦の数の上限は今のまま(自国に軍港が無い国は軍港 1 か所分まで)です。CPU の国も、自国に使える軍港が無いときは仲間の軍港を使います。
- 相場の基本の値段: 世界の相場が下限か上限に 6 ターン続けて張り付いた品は、次のターンから基本の値段が 1 ターンに 3% ずつ相場の方へ動きます(元の値段の半分から 2 倍まで。張り付きが外れたら止まります)。設定一覧に元の値段と今の値段の両方を出します。
- 研究の 6〜10 段: 研究に 6〜10 段を足しました。6 段から上は、お金(2,400〜12,150)のほかに鋼材(段×40。鋼材の無い世界では工業品)と石材(段×80)を使い、効き目は 1 段 1.5% ずつです。お金に余裕のある CPU の国は、工業の増強などの投資を先にし、ほかにすることが無いターンに研究します。
- 不具合: 外交の荷が海の道も陸路も無くなったときに、ターンの更新が止まることがある不具合を直しました。
version1.72.17 (2026-10-30)
アーカイブ: hakoS-1.72.17-20261030.tar.gz / SHA256(先頭16文字): c6ff65b9d2969236
version1.72.16 から、CPU の国が交易港の混み具合に応じて港を増やすようにした版です。dataVersion(33)も世界の保存の形も変えません。
- CPU の交易港の増設: CPU の国が、交易港へ向かって待つ船が続けて多いとき、交易港を増やすようにしました(4 港まで。港どうしの間隔などの決まりは今までどおり)。
- 港を建てる土地: 港を建てる平地が無いときは、海に面した森・荒地・農場・大農場・開発予定地(戦争中でなければ村も)を整地してから港を建てます。
version1.72.16 (2026-10-28)
アーカイブ: hakoS-1.72.16-20261028.tar.gz / SHA256(先頭16文字): f7afc7dc87b123b5
version1.72.15 から、開発画面の艦隊操作と地図の案内を直した版です。遊びの決まり・dataVersion(33)・世界の保存の形は変えません。
- 軍艦の選択: 開発画面の艦隊操作で、軍艦の位置のボタンを押すと地図の画面に切り替わり、軍艦を選べていないように見えた問題を直しました。
- 目的地の指定と案内: 「目的地を地図で指定」を押したときは地図の位置まで画面が動き、案内と「計画へ追加しました」の知らせが地図のすぐ上に出るようにしました。
version1.72.15 (2026-10-27)
アーカイブ: hakoS-1.72.15-20261027.tar.gz / SHA256(先頭16文字): 844be1de20e68997
version1.72.14 から、交易の道探しと、道をふさがれた民間の船の探し直しを軽くする版です。dataVersion(33)も世界の保存の形も変えません。
- 交易の道探し: ターンの更新を軽くするため、CPU の国と民間の船が交易の道を探す範囲を短くしました。遠い相手(目安として 33 マス以上)との交易は、これまでより見つかりにくくなります。
- 民間の船の探し直し: 民間の船が道をふさがれて探し直すとき、別の道は 1 通りだけ試すようにしました(ターンの更新を軽くするため)。
version1.72.14 (2026-10-26)
アーカイブ: hakoS-1.72.14-20261026.tar.gz / SHA256(先頭16文字): 0a51d7a820b756a4
version1.72.13 から、遠洋漁船の世界の上限と陸路の決まりを変え、拡張した施設のレベル・規模を地図に表示する版です。dataVersion(33)も世界の保存の形も変えません。
- 遠洋漁船: 世界の上限(32 隻)をなくしました。1 国 4 隻と、1 つの漁場に 6 隻は今までどおりです。
- 地図の施設の説明: 拡張した精製所・軍需工場・港のレベルと、大農場・大工場の規模、大鉱山のレベルを表示するようにしました。
- 陸路(遊びの決まりの変更): 他国を通る陸路では、その国の入口から出口まで陸がつながっているときだけ通すようにしました。離れた島を飛び越えて運ぶことはありません。つながらないときは、今までどおり海路(予備兵は軍艦)で運びます。浅瀬・沖の油田・防波堤・機雷も、陸続きの根拠に数えなくなります(陸上の油田は今までどおり)。
- 運んでいた荷: 前の版から陸路で運んでいて、どちらの島にあるか記録に無い荷は、最初の輸送のときに 1 度だけ送り主へ戻します(予備兵は送り主の予備兵へ)。送った国と受け取る国の持ち主にだけ記録で知らせるので、新しい決まりで送り直してください。
version1.72.13 (2026-10-26)
アーカイブ: hakoS-1.72.13-20261026.tar.gz / SHA256(先頭16文字): 5b592c31be76d9c9
version1.72.12 から、地図の説明と撤退の案内を直し、防壁の中からはどの兵種でも撤退できるようにした版です。dataVersion(33)も世界の保存の形も変えません。
- 予備兵を運ぶ船: 契約の船の積み荷に、予備兵の名前と人数を正しく表示するようにしました。
- 海の怪獣: 地図の説明に「海の怪獣」と表示し、海にいることが分かるようにしました。
- 防壁からの撤退(遊びの決まりの変更): 防壁の中からは、どの兵種でも撤退(命令 24)で予備兵へ戻せるようにしました。通常の移動と乗船ができるのは、今までどおり山岳兵だけです。CPU も、敵と隣り合っていない防壁では、中から動けない部隊を、費用を払えるときに 1 部隊ずつ予備兵へ戻します。
- 撤退のお金: 資金不足で撤退できないとき、1 回 10 億円が必要なことを記録に表示するようにしました。
version1.72.12 (2026-10-25)
アーカイブ: hakoS-1.72.12-20261025.tar.gz / SHA256(先頭16文字): 56cb9a8018694dda
version1.72.11 から、開発画面の地図の控えの持ち方を直した版です。dataVersion(33)も世界の保存の形も変えません。
- 開発画面の地図の控え: 開発画面の地図の控え(キャッシュ)は、全部の国で 32 個の置き場を分け合っていたため、同じ置き場に当たった国どうしが互いの控えを消し合い、開くたびに地図を作り直すことがありました。国ごとに 1 つの控えを持つようにして、ほかの国が開発画面を開いても消えないようにしました。画面に出る中身は変わりません。
version1.72.11 (2026-10-24)
アーカイブ: hakoS-1.72.11-20261024.tar.gz / SHA256(先頭16文字): 5fecdd409b02d079
version1.72.9 から、遊ぶ人の声で見つかった外交援助と町の地形の不具合を直し、人口 1,000 人未満の村にも一部の建物を建てられるようにした版です。1.72.10 は組み立てましたが本番には当てず、見直しで見つかった期限の境目の直しを足して、この版にまとめました。dataVersion(33)も世界の保存の形も変えません。
- 外交援助の人数の表示: 予備兵を送る外交援助で、進み具合と申し込みのときの見込みの人数が 100 倍に表示されていたのを直しました。実際に送る人数・届く人数・運賃は、前から正しく計算されています。
- 外交援助・外交交換の「計画待ち」: 申し込みで計画に入った命令が、計画の書き換えなどで消えると、契約が期限まで「計画待ち」のまま残っていました。ターン更新で、命令が計画に無い「計画待ち」の契約を取り消し、記録に残すようにしました。期限が来た契約は取り消さず、今までどおり期限切れとして知らせます。自分が出した契約には、計画の何番目で待っているか、命令が計画に無いかを出します。
- 陸路で運ぶ荷の待ちの理由: 陸路で運んでいる荷の待ちの理由が、海路の手配の失敗の理由で上書きされることがあったのを直しました。
- 町の地形の整地・地ならし: 人口 1,000 人以上の町と、海底都市・ニュータウン・現代都市・大都市のマスの命令の一覧に、整地と地ならしを出すようにしました(実行は前からできました)。人口 1,000 人未満の村は平地と同じ扱いのため、整地・地ならしはできません。そのときの記録に訳を出すようにし、地ならしの成功が「整地」と出ていたのも直しました。
- 村への建設(遊びの決まりの変更): 人口 1,000 人未満の村(首都を除く)にも、精製所・軍需工場・開発予定地・発電所を建てられるようにしました。村の人口は失われ、記録に出ます。CPU は、平地が無いときに村を使います。
version1.72.10 (2026-10-24)
アーカイブ: hakoS-1.72.10-20261024.tar.gz / SHA256(先頭16文字): d50b799141759dec
version1.72.9 から、遊ぶ人の声で見つかった外交援助と町の地形の不具合を直し、人口 1,000 人未満の村にも一部の建物を建てられるようにした版です。dataVersion(33)も世界の保存の形も変えません。
- 外交援助の人数の表示: 予備兵を送る外交援助で、進み具合と申し込みのときの見込みの人数が 100 倍に表示されていたのを直しました。実際に送る人数・届く人数・運賃は、前から正しく計算されています。
- 外交援助・外交交換の「計画待ち」: 申し込みで計画に入った命令が、計画の書き換えなどで消えると、契約が期限まで「計画待ち」のまま残っていました。ターン更新で、命令が計画に無い「計画待ち」の契約を取り消し、記録に残すようにしました。自分が出した契約には、計画の何番目で待っているか、命令が計画に無いかを出します。
- 陸路で運ぶ荷の待ちの理由: 陸路で運んでいる荷の待ちの理由が、海路の手配の失敗の理由で上書きされることがあったのを直しました。
- 町の地形の整地・地ならし: 人口 1,000 人以上の町と、海底都市・ニュータウン・現代都市・大都市のマスの命令の一覧に、整地と地ならしを出すようにしました(実行は前からできました)。人口 1,000 人未満の村は平地と同じ扱いのため、整地・地ならしはできません。そのときの記録に訳を出すようにし、地ならしの成功が「整地」と出ていたのも直しました。
- 村への建設(遊びの決まりの変更): 人口 1,000 人未満の村(首都を除く)にも、精製所・軍需工場・開発予定地・発電所を建てられるようにしました。村の人口は失われ、記録に出ます。CPU は、平地が無いときに村を使います。
version1.72.9 (2026-10-23)
アーカイブ: hakoS-1.72.9-20261023.tar.gz / SHA256(先頭16文字): 15f169ea5e6bc158
version1.72.8 から、開発画面とターン更新をさらに軽くし、CPU の軍備の目安の読み方を直した版です。dataVersion(33)も世界の保存の形も変えません。画面に出る中身は変わりません。
- CPU の軍備の目安: ターン更新の物流の段でも、人の国の公開の数(トップに出る兵の比・軍艦の数)を見て目安を決めるようにしました。これまでは、その段ではまだ書かれていない統計を読みに行き、人の国の数が空のまま判断していました。
- 開発画面の軽量化: メニュー・地図のマスの操作の表・状態・他国の情報・艦隊・銀行の欄は、ほかの国が命令を送っただけでは控えを作り直さないようにしました。画面に出す項目の指紋は、世界が保存されるたびに 1 回だけ作って使い回します。
- 一部の画面の軽量化: 陣営の部屋・公開の掲示板・取引同盟の頁で、使わない部品の一式を読まないようにしました。
- ターン更新の軽量化: 視界の照会と CPU の記録の保存などを軽くしました(ターン更新の結果は変わりません)。
version1.72.8 (2026-10-23)
アーカイブ: hakoS-1.72.8-20261023.tar.gz / SHA256(先頭16文字): a0c6722506b9f077
version1.72.7 から、ターン更新の守りを 1 つ足し、開発画面をもう一段軽くし、設置の確認の頁を広げた版です。dataVersion(33)も世界の保存の形も変えません。画面に出る中身・遊びの決まり・ターン更新の結果は変わりません。
- ターン更新の守り: 統計の控えのファイルが壊れて読めないときも、CPU の軍備の目安を決める所でターン更新が止まらないようにしました。読めない回は、その控えが無いものとして扱います。
- 開発画面の軽量化: 市場と民間の物流の表示・艦隊の情報・銀行の欄を、同じターンの間は控えから出すようにしました。入力の欄は毎回作ります。
- 管理人向け: 設置の確認の頁(deploycheck.cgi)に、サーバーの OS と、使っている Perl の部品とその版を足しました。PHP の環境を見る頁 deploycheck.php を新しく置きます。
version1.72.7 (2026-10-22)
アーカイブ: hakoS-1.72.7-20261022.tar.gz / SHA256(先頭16文字): 836fdfcac8508a81
version1.72.6 から、開発画面(自分の国の画面)を開くたびの仕事を減らして軽くした版です。dataVersion(33)も世界の保存の形も変えません。画面に出る中身・遊びの決まり・ターン更新の結果は変わりません。
- 開発画面の軽量化: 他国の情報の欄と天気の欄の集計を、ターンごとの控えから出すようにしました。戦争の判定にはターン更新の部品一式を読まず、専用の小さな部品を使います。開発画面で使わない部品(取引の計算・CPU の物流など)は、使うときまで読みません。控えの鍵作りと指紋は 1 回の開き方で 1 回にし、言葉の辞書は版の指紋で確かめます。
- 控え: 控えの置き場の権限が合わないときは自動で直し、控えが使えなかったときは訳を管理人向けの記録に残します。
- 管理人向け: 設置の確認の頁(deploycheck)に、開発画面の控えの様子の欄を足しました。
version1.72.6 (2026-10-21)
アーカイブ: hakoS-1.72.6-20261021.tar.gz / SHA256(先頭16文字): be61fe3269f2fe3f
version1.72.5 から、各国が持っている軍艦の数をトップに出し、CPU の海軍の目安もその数で人の国の軍拡を見るようにした版です。dataVersion(33)も世界の保存の形も変えません(統計の控えに軍艦の数の欄を足します)。
- 軍艦の数(トップ): トップの国の情報の「損害」の隣に、各国が持っている軍艦の数(隻)を出します。数は前のターン更新の終わりの数で、商船は入りません。当てた直後は、次のターン更新が終わるまで「—」と出ます。
- CPU の海軍: 平時も戦時も、人の国の見えている軍艦の代わりに、トップに出る軍艦の数に合わせて保有の目安を動かします。戦時は相手の軍艦の数も参考にします。1ターンに1隻ずつ動かす幅、型ごとの下限、係数、艦種の繰り下げ、今ある艦を除籍しない決まりは変えません。
- トップの表示: 統計の控えが読めないときも、トップの頁は止まらずに出します(軍艦の数は「—」になります)。
- 説明: 設定一覧・ヘルプの CPU の海軍の説明を直しました(3 言語)。
version1.72.5 (2026-10-21)
アーカイブ: hakoS-1.72.5-20261021.tar.gz / SHA256(先頭16文字): e103141df9598a83
version1.72.4 から、港のまわりで船が止まり続ける形を直し、CPU が平時も人口に見合った兵と軍艦を持つようにし、全部の国に海軍の訓練を足し、ターン更新を軽くした版です。dataVersion(33)も保存の形も変えません。
- 契約の船の順番待ち: 港・軍港を通り抜けた先の船の列で止まった契約の船にも「順番待ち」の印を付けます。次のターンに、ほかの船をよける道を探せるようになります。
- 港の入口: 荷を扱っていない民間の船・遊覧船・契約の船が港の水の入口の上で待ち続け、ほかの船が入れない・出られない形を直しました。入口の上で待つ船は近くの空いた水へよけ、出られなかった船は港に戻ります。
- 港で互いに出られない船: 港の入口を挟んで互いに出られなくなった漁船と、荷の無い帰りの民間の船は、片方が近くの空いた水へ退いてから、もう片方が出入りします。退く先が無いときは今までどおり待ちます。港の入口から船が出たときは、その港で待っている船を 1 隻だけ、同じターンのうちに判定し直します。古い帰りの見積もりだけが残った船も、譲り合いに加わります。
- CPU の兵: 平時も戦時も、人の国の軍拡に合わせて兵の目安を少しずつ動かします。型ごとの目安を下回らず、戦争の相手の公開兵力も参考にします。食料、働き手、人口の減り、徴兵の間隔は守り、食料が足りないときは農場を広げるだけでなく、安全な平地に新しく作ることもできます。防衛と進行中の作戦は引き続き優先します。
- CPU の海軍: 平時も戦時も、見える人の国の軍艦に合わせて保有の目安を1ターンに1隻ずつ動かし、戦時は相手の見える軍艦も参考にします。まだ造れない艦種の分は、今造れるいちばん上の艦種へ繰り下げます。最初は目安の数すべてが駆逐艦、巡洋艦を造れるようになれば未解禁の上位艦の分も巡洋艦になります。今ある艦は除籍せず、空きができたときに不足する艦種を補います。軍港、材料、食料、燃料、お金で支えられる範囲を守り、民間の港の入口も保護します。
- 海軍の訓練(全部の国): そのターンの補給(お金・食料・燃料)を全部払えた軍艦が 1 隻以上いる国は、国の海軍の経験が 1 増えます(艦の数によらず 1 ターンに 1)。訓練で届くのは戦艦を造れる 40 までで、空母・潜水艦は今までどおり実戦などで経験を積みます。艦そのものの経験・強さは増えません。
- ターン更新の軽量化: 船の道探し・民間の船の移動・CPU の判断(道探し・索引・見える範囲)で、同じ答えになる計算の繰り返しを減らしました。遊びの結果は変わりません。この版で足した仕組みの分と合わせても、ターン更新は 1.72.4 より少し軽くなりました。
- ヘルプ: 「13. 天気と気候」の章を足しました(季節・気候帯・天気の決まり方・海・台風と火災・効き目の一覧・見る場所)。台風の節に残っていた古い数を、今の決まり(台風になる確率 50%、1 ターンに 2〜3 マス進む)に直しました。
- 説明: 設定一覧・ヘルプの CPU と海軍の節に、平時の目安と訓練の説明を足しました(3 言語)。
version1.72.4 (2026-10-20)
アーカイブ: hakoS-1.72.4-20261020.tar.gz / SHA256(先頭16文字): 95dd33d5208bd36b
version1.72.3 から、CPU の都市名の控えを増やして初期の CPU の首都名を直し、海運保険を設定一覧・ヘルプ・用語集・記者クラブ・統計に出すようにした版です。dataVersion(33)も保存の形も変えません。
- CPU の都市名: 1.66 で加わった 10 か国は、それぞれの国の言葉の雰囲気に合わせた 40 件ずつの名前を使います。初期の CPU と、人の国から CPU になった国は、共通の 200 件を使います。漢字の名前は繁体字にしました(前の名前に混ざっていた簡体字・日本の字体の 7 件は、CPU の町の名前も繁体字に直します)。
- 初期の CPU の首都名: 首都名が国名と同じだった CPU の首都に、共通の名前を付けます(その国のそのターンの 1 件目)。人が付けた名前は変えません。
- 海運保険の表示: 設定一覧に海運保険の決まりと設定の値、ヘルプと用語集に説明を足しました。記者クラブと統計(全体の頁)には、世界の合計(積立・立替・保険料・保険金など)、今の料率、ターンごとの保険料と保険金、記者クラブには直近 12 ターンの事故の数を出します。国ごとの未払・支払待ちと契約は、これまでどおり開発画面のその国の欄だけで見られます。
- 説明: 設定一覧・ヘルプの CPU の都市名の説明を直しました(3 言語)。
version1.72.3 (2026-10-19)
アーカイブ: hakoS-1.72.3-20261019.tar.gz / SHA256(先頭16文字): b8b352eba36e8fe5
version1.72.2 から、CPU の守りの軍団の使い方を直し、防壁から打って出る反撃と、守りに回った陣営の仲間への加勢を足した版です。dataVersion(33)も保存の形も変えません。
- CPU の配置の軍団: CPU も、防壁・首都・現代都市・軍港に置く兵の軍団の設定(軍情報の「配置」の表)を使います。人の国の画面はこれまでどおりです。
- CPU の防壁の守り: 防壁を持つ CPU と防壁を建てる CPU は、兵のいない軍団を 1 つ山岳兵にして、防壁の守り専用にします。防壁の上では山岳兵がいちばん被害を受けにくい兵種です。
- CPU の首都・都市の守り: CPU は兵のいない軍団を、首都・現代都市・海底都市の守り専用にします。今いる守りは、数量 0 の部隊設置(命令 23)でその軍団へ付け替えます。守りと同じ軍団で留まっていた外の兵は、動けるようになります。守り専用の軍団は、野外の配置や兵站基地には使いません。
- CPU の防壁から打って出る反撃: 防壁の山岳兵の守りは、次のターンに防壁へ届く敵がいないとき、1〜2 マス先の戦争中の相手の兵(攻撃)や陸地(進軍)へ打って出ます。勝てる見込みがあるときだけで、目標を取ったときや敵が戻りそうなときは防壁へ戻ります(移動)。
- CPU の防壁の待ち方: 防壁で待つ守りは、攻撃でなく防衛の命令にします。隣の敵へは今までどおり攻撃し、受ける被害が少なくなります。
- CPU の陣営の加勢: 陣営の仲間が自分から始めた戦争には、これまでどおりついていきません。ただし戦争が始まった後に、仲間が相手に土地や町を取られたとき、または相手の兵が仲間の土地にいるときは、宣戦された戦争と同じく加勢・救援します。停戦の打診だけでは加勢しません。
- 説明: 設定一覧・ヘルプ・用語集の CPU の籠城と陣営の加勢の説明を直しました(3 言語)。
version1.72.2 (2026-10-19)
アーカイブ: hakoS-1.72.2-20261019.tar.gz / SHA256(先頭16文字): 025d25c31e53d011
version1.72.1 から、海底都市の秘匿・徴兵の対象・CPU の宣戦の判断・防壁の出入りを直し、国が亡びたときに民間の船の積荷のせいでターン更新が止まることがあったのを直した版です。dataVersion(33)も保存の形も変えません。
- 海底都市の秘匿: 海底都市は、海底基地・ミサイル基地と同じく、ほかの国からは海に見え、持ち主も出ません(観る人の地図・開発画面の地図・陣営の地図・統計や記者クラブ・CPU の見方)。自国の画面では今までどおり海底都市として見えます。偵察でも見えません。船の通り抜けの決まりは変えません。
- ログの座標: 海底都市を建てる命令、艦隊編成、海底都市のマスでの命令や出来事の公開のログは、ログは公開のまま、座標だけを「(?, ?)」で隠します。
- 徴兵の対象: ニュータウン・現代都市・大都市・海底都市でも、開発画面の命令の一覧から徴兵(命令 22)できます(命令そのものは前から受け付けていましたが、一覧に出ていませんでした)。CPU が徴兵する町にも、この 5 つの町をみな入れました。
- CPU の攻めの宣戦: CPU は、土地を取りに行く宣戦の前に、目標の近くの兵の比だけでなく国全体の力も比べ、相手(陣営の仲間を含む)の陸地か国力(公開の人口と見えている兵力)が自国の 2 倍を超えるなら宣戦しません。守り・首都の取り返し・救援・陣営の加勢・包囲網は今までどおりです。
- 囲まれた土地: 囲まれた土地の決まりで領土が移ったことは、CPU の関係の点数の「領土の被害」に数えません。軍の占領と攻撃は今までどおり数えます。
- 防壁の出入り: 山岳兵は防壁に出入りでき、防壁の中から撤退・乗船もでき、防壁へ上陸もできます。ほかの兵種は今までどおり防壁に入れず、防壁の中の部隊は陸を動けず撤退もできません。CPU の判断も合わせました。
- 民間の船の積荷: 相乗りの民間の船(1 隻に複数の取引の荷を載せた船)が取引している国が亡びたとき、清算で連れの荷の番号が残り、そのターンの更新が保存の段で止まることがあったのを直しました。港で荷の一部だけを差し押さえられたときは、残りの荷と航路を保ちます。相乗りの荷は 1 隻 10 件(主の荷と連れ 9 件)までです。前の版で作られた保存に同じ食い違いがあっても、ターン更新の読み込みのときに直します。
- 説明: 設定一覧・ヘルプ・用語集の海底都市・徴兵・CPU の宣戦と関係の点数・防壁の説明を直しました(3 言語)。
version1.72.1 (2026-10-18)
アーカイブ: hakoS-1.72.1-20261018.tar.gz / SHA256(先頭16文字): 7d0c5b7b410ef291
version1.72 から、海底都市の決まりを広げた版です。dataVersion(33)も保存の形も変えません。
- 海底都市に兵を置く: 海底都市には、首都でなくても部隊設置(命令 23)で兵を置けます(現代都市と同じです。軍団の設定も現代都市の欄を使います)。開発画面の命令の一覧にも出ます。
- CPU の海底都市: CPU は最後の手段の海底都市を 3 つまで建てます(前は 1 つ)。ほかの国のものも含めて海底都市のとなりと、川(開けた海でない所)は後回しにし、ほかに建てられる所が無いときだけ選びます。
- CPU が海底都市に置く兵: CPU は海底都市には原則として海兵だけを置きます。ほかの兵種は、その海底都市のとなりの浅瀬から陸へ上がれる(2 マス以内)ときだけ置きます。
- CPU の逃げ道: 人口のある地形が残り 3 つ以下になった CPU は、工場より先に村を増やす用地を作り、逃げる陸地も無いときは海底都市を考えます(前は残り 1 つ以下。設定 HaiPopulationRecoveryTiles の既定を 1 から 3 に)。人口のある地形の最後の 1 マスを削らない守りは今までどおりです。
- CPU の救援・奪還: 首都や人口のある町を敵に取られたとき、または戦争中の相手の兵が自国の町のとなりに来たとき、CPU は首都などの守りの兵を残し、近い軍団から勝てる見込みの分だけ呼び寄せて救いに行き、取り返します(山は山岳兵が越え、海は今ある輸送と上陸を使います。呼ぶのは道のりで 12 マスまで)。停戦・取り返し・力の不足・首都の危険で止め、首都の危険で止めたときは、危険の無いターンが 3 ターン続くまで始め直しません。
- CPU の前線の整地: 1.72 の「前線は整地しない」は、兵を置ける地形を減らさないという意味です。CPU は、前線でも人口の無い森・荒地なら整地・地ならしして、兵站基地・防壁・ミサイル基地・防衛施設を建て、荒地になったマスを戻します。ただし、見えている敵の兵が次のターンにそのマスへ届いて占領できるときは建てません。人口のある土地と首都・現代都市・大都市は削らず、工場・港など経済の施設のための前線の整地もしません。
- 取られそうな町: CPU は、戦争中の相手の兵がとなりにいる自国の町から先に徴兵し、兵站基地はその近くの後方に建てます。
- CPU が船に乗せた兵: 陣営の救援をやめても、乗せた兵をすぐ本国へ戻さず、すでに戦争している相手に上陸できる所があれば上陸します。上陸できる所が無いときだけ帰って降ろします(停戦した相手には上陸しません)。
- CPU の艦隊の行き先: まだ着いていない有効な行き先はそのまま保ち、同じ行き先の移動目的地を出し直しません。救援と自国の岸の守りで行き先を上書きし合ったり、密集した艦隊が後ろの船に合わせて止まったりして、同じ辺りをうろうろしていたのを直しました。
- 移動目的地のログ: 艦隊の「移動目的地」(命令 71)の公開のログは、命令と艦隊の番号を残し、行き先の座標を「(?, ?)」で隠します(軍艦はほかの国から見えないため)。
- 説明: 設定一覧・ヘルプ・用語集の海底都市・部隊設置・軍団の説明を直しました(3 言語)。海底都市の足場に自国の油田もなることを書き足しました(決まりは前からです)。
version1.72 (2026-10-18)
アーカイブ: hakoS-1.72-20261018.tar.gz / SHA256(先頭16文字): a7439eeb88ae20da
version1.71.7 から、CPU の外交(停戦・友好・関係)と土地の使い方を考え直し、停戦の後の決まりと、海底都市の上を船が通り抜けられる決まりを足した版です。dataVersion(33)は変えませんが、外交の記録の形が新しくなり(version 2)、1.71.7 では読めません。戻すときはコードと一緒に控えのデータも戻してください。
- 停戦の後の 12 ターン: 停戦が成立した 2 国は、その後 12 ターンはお互いに宣戦できません(人の国にも効きます)。この間は、元の敵どうしの民間の弾薬・燃料・鋼鉄の売り買いも止まります(国どうしの取引は変わりません)。
- 停戦の打診: 停戦の打診は 4 ターンで切れ、切れた後 3 ターンは同じ相手に出し直せません(人の国にも効きます)。出し直せないときは、理由と出し直せるターンを記録に出します。
- CPU の停戦: CPU は戦争ごとに、攻める側も守る側も停戦を打診し、受けます。首都が危ない・陸地が少ない・負け続けているなど危ない状態のときは、恨みより生き残りを優先して受けます。負けている CPU は新しく宣戦しません。
- CPU の陣営の加勢: 加勢の理由が消えたら講和します。仲間が戦っている間は単独で講和しませんが、危ないときだけは単独で講和します。別の戦争で攻められている CPU は、陣営の加勢で新しく宣戦しません(包囲網は変わりません)。
- CPU との関係と友好: CPU は相手の国との関係を、理由ごとの点数(敵対・領土の被害・侵入・平穏・協力)で持ち、友好・停戦・宣戦の判断に使います。友好は悪い理由が無ければ受け、近い国には自分からも打診します。宣戦や約束破りの恨みは良い点で打ち消さず、約束破りの後 12 ターンは新しい友好を結びません。
- CPU のあなたへの態度: 開発画面の「相手の国」を選ぶ所に、CPU の自国への態度(友好的・中立・警戒・交戦中)を出します。見えるのは自国への態度だけです。
- CPU の土地の使い方: CPU は工場・港などの用地を、自国の空き地 → となりの中立の土地の開拓 → 平時の人口の少ない開発済みの土地、の順に選びます。首都・現代都市・大都市は削らず、前線(戦争の相手の土地・兵から 2 マス)は整地しません。戦争中は人口のある土地を削らず、人口のある地形の最後の 1 マスも削りません。お金があれば地ならしで、建てる命令まで同じターンに出します。
- CPU の人口: 人口のある地形が残り 1 つ以下になった CPU は、工場より先に、開拓・整地・農場で村を増やす用地を作ります。
- 海底都市の上を通る船: 船は海底都市の上を通り抜けられます(港・軍港と同じく通り抜けるだけで、止まる・入港する・上陸の足場にすることはできません)。海底都市の持ち主と戦争中(予告中も)の国や、包囲網の禁輸の相手の船は通れず、敵の兵がいる海底都市も通れません。軍艦・国の商船・民間の船・契約船・定期輸送・漁船・遊覧船のどれも同じです。
- 海底都市の足場: 海底都市を建てる足場に、自国の陸地のほか自国の養殖場も数えます。養殖場のとなりに海底都市を建てても、養殖場は消えません。
- CPU の海底都市: 逃げる陸地も無くなった CPU は、最後の手段として、自国の陸地か養殖場のとなりの海に海底都市を 1 つ建てます(800億円・石材 80・商品 20 があるときだけ)。
- 説明: 設定一覧・ヘルプ・用語集に、停戦・関係・態度・海底都市の説明を足しました(3 言語)。
version1.71.7 (2026-10-17)
アーカイブ: hakoS-1.71.7-20261017.tar.gz / SHA256(先頭16文字): 8fa5ed3976107cbb
version1.71.6 から、計画の送信の不具合を 1 つ直した版です。遊ぶ人の画面と操作は変わりません。dataVersion(33)も保存の形も変えません。
- 計画の送信: 計画に商業同盟の加盟の申請(命令 112)などが入っていると、開発画面で命令の順番を入れ替えたりして「計画送信」を押したときに「計画を受け付けませんでした:command_fields」と断られていたのを直しました(1.71.4 からの不具合)。読み直しなしの送信が商業同盟の帳を読まないまま、同盟の番号を確かめていました。
version1.71.6 (2026-10-17)
アーカイブ: hakoS-1.71.6-20261017.tar.gz / SHA256(先頭16文字): 2d8a6c84c8dd6f1b
version1.71.5 から、ターン更新が止まる不具合を 1 つ直した版です。遊ぶ人の画面と操作は変わりません。dataVersion(33)も保存の形も変えません。
- ターン更新が止まる件: 陸の怪獣が沖に出ている近海漁船を沈めたとき、漁船の記録が残ってしまい、同じターンの漁の取引の確かめでターン更新が止まっていたのを直しました(1.71.3 からの不具合)。沈んだ漁船は記録と母港の漁場ごと消え、その港では次の漁船を作り直せます。
version1.71.5 (2026-10-17)
アーカイブ: hakoS-1.71.5-20261017.tar.gz / SHA256(先頭16文字): 8184a59909577448
version1.71.4 から、管理人向けの機能を 1 つ足した版です。遊ぶ人の画面と操作は変わりません。dataVersion(33)も今ある保存の形も変えません。
- 管理人向けの機能: 管理人室に、運営の見回りに使う節を足しました。
version1.71.4 (2026-10-17)
アーカイブ: hakoS-1.71.4-20261017.tar.gz / SHA256(先頭16文字): 3725d380f09129dd
version1.71.3 から、商業同盟を代表国の承認制にして加盟国だけの頁と会議室を足し、港の前を兵に塞がれて船が動けなくなる件を直した版です。dataVersion(33)は変えませんが、商業同盟の帳の形が新しくなり、1.71.3 では読めません。戻すときはコードと一緒に控えのデータも戻してください。
- 商業同盟の承認制: 商業同盟への加盟は代表国の承認制になりました。申請は 12 ターンで切れ、申請した国は取り消せます。申請中に自分で商業同盟を作ると、申請は取り消されます。代表国は加盟国を除名でき、除名された国は自分で抜けたときと同じく 10 ターンの間は商業同盟に入れません。CPU が代表の同盟は、同じ陣営か友好条約の相手の申請だけを認めます。
- 各陣営の状況: トップの「各陣営の状況」を「軍事同盟」と「商業同盟」の 2 つの表に分けました(番号・同盟名・代表国・国の数・加盟国)。
- 商業同盟の頁と会議室: 加盟国だけが見られる頁(民間の銀行・港の様子・船と取引の中身・経済の命令の計画)と、加盟国だけの会議室を足しました。
- 対人ミサイル: hakoN と同じく「自国・中立のみ着弾」に戻しました。持ち主のない土地・海に立つ他国の兵にも効くので、港の前の海を塞ぐ兵を、戦争をしていない国もどけられます。
- 港の出入り: 港のとなりの海を戦争をしていない国の海兵・空兵が埋めていても、船はその上を通り抜けて出港・入港できます。兵と同じマスには止まりません。契約船・定期輸送・民間の船・国の商船・軍艦・漁船・遊覧船が対象です。戦争中の国の兵は今までどおり通れません。
- 兵の列の通り抜け: 戦争をしていない国の海兵・空兵が水のマスに続けて並んでいても、3 マスまでなら船は列をまとめて通り抜け、列の先の最初の空いた水のマスに止まります(動ける数は 1 マスの通り抜けと同じに数え、燃料は実際に進んだマスの分を払います)。4 マス以上の列や、戦争中の国の兵が混じった列は通れません。
- CPU が港を塞ぐ兵をどける: CPU は、自国の港の入口や船の通り道を塞ぐ兵のうち船が通り抜けられない兵(戦争中の国の兵など)を、対人ミサイルでどけます。届くミサイル基地が無ければ平地に建て、平地も無ければ森・荒地を整地してから建てます。自国・同じ陣営・友好条約の相手の兵は撃ちません(設定 HaiClearBlockersMissile、0 で止まります)。
- 行き先の港が無くなった便: 契約船・定期輸送の便の行き先の港が途中で使えなくなったとき(怪獣・災害・取られた・段階が下がった)、受け取る国のほかの使える港へ向かい、無ければ送り主へ荷を戻します(前はその場で止まっていました)。
- 優先の命令: 現代都市と首都のマスの「優先」に部隊設置を出しました。
- そのほか: 建国の画面の「ヘルプ」のリンク先を直しました。地図の軍団・艦隊・兵站基地の番号の札の地を透明にそろえました。中国語の表示に混じっていた日本語の点「・」を直しました。
version1.71.3 (2026-10-16)
アーカイブ: hakoS-1.71.3-20261016.tar.gz / SHA256(先頭16文字): 52b60b441178bbe4
version1.71.2 から、浅瀬が陸になってしまう穴を塞ぎ、亡びた国の後片付けと民間の仕入れの順を直し、ワールドマップで国の色を選べるようにした版です。dataVersion(33)も保存の形も変えません。
- 怪獣は浅瀬に入らない: 陸の怪獣が浅瀬に入り、離れた跡が荒地になって陸地が増えていた件を直しました。陸の怪獣は海と同じく浅瀬にも入りません。となりの船のマスへは入らず、陸から船を沈めてその場に残ります。
- 怪獣の跡を元の浅瀬に戻す: すでに怪獣の跡で荒地になった元の浅瀬のうち、ターンの記録で裏付けられ、今も手つかずの荒地のまま(持ち主なし・値 0・兵なし・資源なし)の 2 マスを、次のターン更新で 1 度だけ浅瀬に戻します。
- ミサイル: 浅瀬に落ちたミサイルは、海に落ちたときと同じく何も起こしません(前は荒地になっていました)。
- 整地・地ならし: 浅瀬と船のマスでは整地・地ならしができません。浅瀬を陸にするには埋め立てが要ります(前は整地で平地になり、埋め立てを飛ばせました)。すでに整地で陸になった所はそのままです。
- 亡びた国の後片付け: 国が亡びたとき、その国の養殖場を同じターンで片付けます。消えた国を指す表示も止まらないようにしました。
- 民間の国内の仕入れ: 要る物から買うようにしました(①出港する船の食料・燃料 ②自国の食料・燃料 ③近いうちの命令の材料 ④そのほか。同じ段の中では足りない割合で現金を分けます)。
- ワールドマップの切り替え: トップのワールドマップを「土地利用」「陣営」「国」の 3 つの地図から選べるようにしました。陣営・国の地図では、領有地を陣営・国の色で、中立地を「陸」「海・川」「山地・鉱山」の淡い 3 色で示します。国の色は全体地図と同じ配色です。凡例は選んだ地図の物だけを出します。最初は今までどおり陣営の地図(色の設定が国なら国の地図)です。
version1.71.2 (2026-10-14)
アーカイブ: hakoS-1.71.2-20261014.tar.gz / SHA256(先頭16文字): 8a412dc9b7d4f0f1
version1.71.1 から、版を当てるたびの処理で足されてしまった石炭の埋蔵を取り除き、スマホの画面の拡大縮小を直した版です。dataVersion(33)も保存の形も変えません。
- 足された石炭の埋蔵を取り除く: 1.68・1.70・1.71 を当てたときに意図せず中立の山へ足された石炭の埋蔵のうち、今も中立の山のまま手つかずの物を、次のターン更新で 1 度だけ取り除きます。最初からある石炭の埋蔵(季節の始めの物と、燃料が始まったときの 1.64 の追加)、国の土地にある物、炭坑になった物はそのままです。足したときと同じくじ(版と座標)で見分けます。
- スマホの画面の拡大縮小: 画面の合わせ方が「自動」のとき、指で拡大縮小すると開発画面の地図と表が組み直されて比率が崩れる件を直しました。幅は並べるときの幅で測り、その幅が変わったとき(向きを変えたときなど)だけ組み直します。文字だけが自動で大きくなるのも止めました。指での拡大縮小そのものは今までどおりできます。
version1.71.1 (2026-10-14)
アーカイブ: hakoS-1.71.1-20261014.tar.gz / SHA256(先頭16文字): eb5088226d3c0fb0
version1.71 から、地図が出なくなった件と、版を当てるたびに一度きりの処理が動き直していた件を直した版です。dataVersion(33)も保存の形も変えません。
- 地図が出ない件: 亡びた国が造った養殖場が残っていると、トップの小さな地図・全体地図・観光画面の地図が描けませんでした(1.71 の最初のターン 130 で、養殖場を持つ国が初めて亡びて起きました)。地図の国の一覧に、地図が指す国が無いときは「不明な国」として足します。本番のデータを手で直す必要はありません。
- 版を当てるたびの一度きりの処理: 1.68・1.70・1.71 では、版を当てた最初のターンに、中立の山への石炭の埋蔵の追加、人の国への燃料の配布、民間への現金と在庫・国庫の品の配布、燃料の使い始めのやり直し、中立の森の値の修理が、もう一度動いていました。1.65〜1.67 と同じく、この先の版では動かしません(版の表に足さなくても、1.64・1.65 の印を使います)。燃料の使い始めは元のターンに戻るので、次のターン更新から燃料の使用は満額に戻ります。
version1.71 (2026-10-13)
アーカイブ: hakoS-1.71-20261013.tar.gz / SHA256(先頭16文字): 202307de38a77590
version1.70.13 から、民間の取引が止まりやすかった所・値段と需要の決まり・CPU の港と商談を直し、ターン更新を軽くした版です。1.70.14〜1.70.17 は出さずに、この版にまとめました。dataVersion(33)も保存の形も変えません。
- 港の入口を空ける: 入口のそばで待つ空の商船が、出られない船の出口をふさいでいるときは、1 マス退きます。港の入口が船でふさがっているだけのときは、帰る船と入る船は港から 3〜5 マスで待ち、そのせいで荷を積んだまま引き返すことはありません(入口が陸や施設だけの港は今までどおり入れません)。
- 待つ船を使う: 定期供給の約束の便も、ふつうの取引と同じく母港の 2 マス先で待つ空の船を使います。出港に使う船は、港のとなりへ実際に入れる船から選びます(先頭の船が入れないときに出港が止まっていました)。
- 航路を調べる順番: 民間の取引で、港も陸の道も無い組は検討の前に外し、空の船が待っている港と覚えている道を先に調べます。調べる回数の上限は今までと同じです。
- CPU の国と港: CPU の国は、自分の港の入口(港の水のとなり)に軍艦や兵を置きません。港にくっついた CPU の軍港は、離れた場所に新しい軍港を建ててから浅瀬に戻します。建て直す場所が無いときは、ほかに軍港が残る場合だけ浅瀬に戻します。
- 新しい決まり: これからは、港のとなりに軍港を、軍港のとなりに港を建てられません(人も CPU も。今ある物はそのままです)。
- CPU の国が軍港を建て直す・浅瀬に戻すのは、その国自身の港のとなりにある軍港だけです。 ほかの国の港がとなりにあるだけ(決まりの前に建った物や、戦争で取った物)では、CPU の軍港は動きません。ほかの国が港を置いて CPU の軍港を壊させることはできません。
- CPU の軍艦と兵は、自分の港の入口のマスにいるときは、入口の中を通って外へ出られます。 外から入口のマスへ入らない決まりは今までどおりです(入口から出られずに閉じ込められるのを防ぐ)。
- 港の入口の封鎖: 港の入口を、その港の国と戦争中の国の軍艦(持ち主のいない海賊船を含む)がふさいでいるときは封鎖として扱い、商船は前どおり 6 ターンで引き返します。平時のほかの国の軍艦や商船がふさいでいるだけなら、一時の混みとして近くで待ちます。
- 売り手の余りの値引き: 民間の売り手は、自由な在庫が目標を超えると、超えた分に応じて売り値を下げます(目標の 2 倍で地元の値段の 8 割まで、それ以上は 8 割のまま)。在庫を抱えた売り手が値を下げる形です。
- 買い値の土台: 民間の買い手の買い値の土台を、地元の値段の 0.8 倍から 0.9 倍に上げました。在庫が目標の 4 分の 3 を切ると、地元の値段より高く買います(今までは半分を切ってから)。
- 国の買付注文の買い値の決まりは変えていません。ヘルプの「自国の貿易基準価格」に、在庫による補正の中身を書き足しました。
- 地元の値段を在庫で動かす: 国・資源ごとの係数は、その国の民間の在庫が目標より少ないと上がり、多いと下がります。毎ターン、在庫で決まる水準との差の 2 割ずつ近づきます(世界の値段の 0.75〜1.25 倍の範囲)。今までは取引の流れでしか動かず、取引が無いと 1 に戻るだけだったので、国ごとの値段の差がほとんどありませんでした。
- 輸出入による動きは今までどおりです。地元の値段を使う民間の気配・国の買付・競売も、国ごとの値段で決まるようになります。ヘルプの「自国の貿易基準価格」に書き足しました。
- 需要の見込み: 造船・建設などの命令のうち、今回と次回の 2 ターンに動く分の材料で国庫に足りない分を、その国の民間の在庫の目標に足します。同じ資源の国の買付注文が開いているときは足しません。他の国の国庫から民間が買うことは今までどおりできません。
- CPU の商談: CPU の国が新しく持ちかける商談は、持ち越しの無いときだけ、見積もりの良い相手と順番に回す相手の 2 か国に絞ります。急ぎ(燃料の不足など)・受け取った申し出・続いている契約は、今までどおり全部の相手で考えます。戦争・禁輸・港の方針・攻める目標の扱いも変えていません。
- CPU の軍港の建て直し: 港となりの軍港の建て直しは、戦い(攻撃・ミサイル・守り)の後に回します。
- ターン更新を軽く: CPU の物流の道探しの控え、国の索引・辞書の使い回し、在庫の写しの簡略化、古い入口の手間の削除、CPU の商談の相手の絞り込みで、ターン更新の計算を減らしました。盤面の答えは、CPU の商談のほかは変わりません。本番に近い写しで、1.70.13 より 1 ターン目が約 4% 軽く、取引の便が増えても 3 ターン続けて重くなりませんでした(検査用の 29 か国の世界では約 20% 軽い)。
- トップの小さな地図: iPhone の一部のブラウザで、地図の文字や印が左上に詰まって重なる件を直しました。マスの大きさを実際の幅から決めます。
- 歩兵の配置の説明: 防壁・首都・現代都市・軍港に置く歩兵の軍団は、開発画面の軍情報の「配置」の表で選んだ番号です。説明が「軍団 1 を使う」のままだったのを直しました。
version1.70.13 (2026-10-12)
アーカイブ: hakoS-1.70.13-20261012.tar.gz / SHA256(先頭16文字): cdf44ec8639e9aa4
version1.70.12 から、地図の船の説明と、外交の契約の荷の運び方を直した版です。dataVersion(33)も保存の形も変えません。
- 地図の船の説明: 空の商船は「積荷」の欄を出しません。外交の契約の荷を運ぶ国の船は、積荷にその荷を出し、所属の欄に「艦隊 N」の代わりに「契約 #申込の番号」を出します。近海の漁船は「漁船」・所属・HP・漁獲を出します(遠洋漁船は今までどおり)。
- 両方の港が大きい(港の大きさ 2)とき、戻ってきた小型の契約船は、次に荷を積むときに大型の契約船に替わります。 1 便で運べる量が増え(小型 128・大型 1,024。港の荷役の枠の分け前が上限)、運賃は大型の見積もりどおりです。どちらかの港が小さいままなら今までどおりです。
- 外交の契約の荷の待ちの理由を、どこの何の枠かが分かる形で出します。 例: 「積み出し港 (6,75) の荷役の枠待ち(1 ターン 128・2 契約で分け合い)」。ほかに降ろし港の荷役の枠・契約船の数の上限・1 ターンに出せる便・受け手の上限・国境の枠を見分けます(3 言語)。
version1.70.12 (2026-10-12)
アーカイブ: hakoS-1.70.12-20261012.tar.gz / SHA256(先頭16文字): 5b05f024479b4188
version1.70.11 から、戦争中の CPU の国の戦い方を足した版です。dataVersion(33)も保存の形も変えません。
- 宣戦された CPU の国も、陸の前線で相手より兵が多く、そこまで行けるときは反撃します。 首都の守りと前線の端の守りは残し、宣戦してきた国の境のマスへ攻めます。兵が相手の 8 割を下回る・自分の土地を失う・食料が足りなくなると守りに戻ります。山に囲まれて歩兵が入れない目標のように、行けない所は選びません。
- 戦争中の CPU の国は、相手の境が山で歩兵が入れないとき、その前線の基地の軍団 1 つを山岳兵に付け替えます。 選ぶのは兵が十分にいて、まわりに見えている敵より強い軍団だけで、付け替えのときに前線の目安まで兵を足します。山岳兵は山を越える道で動き、反撃の兵にも数えます。
version1.70.11 (2026-10-12)
アーカイブ: hakoS-1.70.11-20261012.tar.gz / SHA256(先頭16文字): 18f9455276d9671d
version1.70.10 から、中立金融に海運保険(民間の商船の船体と積荷)を入れた版です。dataVersion(33)は変えません。保険は設定で切り替えます。配る既定はオフで、オフのときは今までと同じ答えになり、保険の処理は動きません。本番では local-init.cgi に $HmarineInsuranceEnabled = 1; を足してオンにします。
- 民間の商船は、船体と積荷に必ず保険が掛かります。 保険料は中立金融が受け取り、戦争・海賊・怪獣・災害で船や荷を失ったときに保険金を払います。港で預かっている荷を戦争で失ったときも、届くまでは払います。取引・航路・積む量の決め方は保険を見ません。
- 料率は海上保険の相場から始め、12 ターンごとに実際に払った保険金で見直します。 船体は年 0.5%、積荷は 1 便 0.2%、戦争の分は 1 航海 0.05%(危ない航路ほど高く、上限 10%)です。
- 元手と割り戻し: 保険料と、中立金融の貸出金の利息の半分を積み立てます。足りないときは中立金融の預け金で立て替え、それでも足りなければ新しくお金を出します。積立が上限を超え、立て替えと払い待ちが無いときは、超えた分を払った保険料に応じて民間に返します。
- 中立金融の画面に、保険の積立・今ターンの保険料と保険金・契約を 3 言語で出します。
- 保険をオンにすると、保存のデータに保険の帳簿が加わります。1.70.10 以前に戻すときは、オンにする前の控えの data に戻してください(オフにするだけでは古い版で読めません)。
version1.70.10 (2026-10-11)
アーカイブ: hakoS-1.70.10-20261011.tar.gz / SHA256(先頭16文字): 2513ed9327e06721
version1.70.9 から、CPU の国が兵站基地を早く建てるようにした版です。dataVersion(33)も保存の形も変えません。1.70.8 から直接当てる差分もあります(1.70.9 の直しを含みます)。
- CPU の国は、前線や海辺の足場に兵站基地を作るとき、お金が足りていれば地ならしをして、同じターンに基地を建てます。 今までは、平地でないマスにはまず整地(1 ターン)をして、基地は次のターンでした。お金(地ならし 50 億円と基地 10 億円)が足りないときは、今までどおり整地から始めます。
version1.70.9 (2026-10-11)
アーカイブ: hakoS-1.70.9-20261011.tar.gz / SHA256(先頭16文字): c20e892fa3d077d4
version1.70.8 の直しです。dataVersion(33)も保存の形も変えません。
- ターン更新が止まるおそれを直しました。 1.70.8 で足した国の買付注文の前払いの関数 17 個が、使うときまで読む部品の入口の一覧に載っていませんでした。ターン更新の海戦の段で、荷を積んだ民間の商船が沈められたり海賊に奪われたりすると、その返金の処理で「関数が無い」となって止まるおそれがありました。
version1.70.8 (2026-10-11)
アーカイブ: hakoS-1.70.8-20261011.tar.gz / SHA256(先頭16文字): 82900a730ad8a830
version1.70.7 から、民間の商船の積み方と、国の買付注文の払い方を変えた版です。dataVersion(33)は変えません。荷と注文の記録に欄を足すので、1.70.7 に戻すときは控えの data も戻してください。
- 民間の商船は、積む物があるなら積めるだけ積みます。 積む物が少なければ、今までどおり少なくても出ます。 - 船を出す取引では、同じ買い手が同じ品を船の容量まで買えます(今までは在庫の目標との差まで)。上限は、買い手の現金・持ち分と入荷予定の上限 4,096・売り手の売れる在庫・港の残りの枠です。 - 長い供給の約束の便には、約束の量に加えて、そのとき買い手がほしい分も同じ船に積みます。 - 同じ買い手(同じ受ける港)へ行く別の品の取引も、同じ船に相乗りします。新しい道探しは増えません。
- 国の買付注文で、仕入れが決まったときに、買付国の民間に足りない分だけを注文の預け金から前払いします。 民間の手元の現金が少なくて、注文の品を仕入れられない場面を減らします。 - 払うのは、外国からの便(陸・海)の商品代を預けるときと、世界から仕入れるときだけです。注文を作っただけでは払いません。額は「商品代 −(民間の現金 − 航海の備え)」で、注文の預け金の残りを超えません。自国の国庫から買って同じ注文へ売る分には付けません。 - 納めるときは総代金を払った額に数え、前払いした分を差し引いた残りを民間に払います。民間のもうけの合計は、前払いがあっても変わりません。 - 沈没・一部の損失・返航・戦争・海賊で商品代が戻るときは、先に前払いを注文の預け金へ取り戻し、残りだけを民間に戻します。期限切れや取り消しだけでは帳消しにしません。 - ふつうの民間どうしの取引の決め方は変えません。 - 開発画面の買付注文の欄に、預け金とは別に「前払いの残高」「取り戻し待ち」「すぐ返せる額」を出します。
version1.70.7 (2026-10-11)
アーカイブ: hakoS-1.70.7-20261011.tar.gz / SHA256(先頭16文字): c396043b97d11d4b
version1.70.6 から、外交の契約の輸送で港の積み込みの枠の分け方を変えた版です。dataVersion(33)は変えません。
- 港の積み込みの枠を、その港を使う契約の数で分けます。 今までは、1 つの契約が 1 ターンに使える港の荷役は、いつも港の枠の 3 分の 1 まででした(通常の港は 256 の 3 分の 1 で 85、大型港は 2,048 の 3 分の 1 で 682)。その港を使う契約が 2 つだけでも 3 分の 1 しか使えず、128 積める船が 85 だけ積んで出ていました。これからは、そのターンにその港を使う契約の数で分けます(契約が 2 つなら半分ずつ、1 つなら港の枠まで)。港全体の合計は今までどおり港の枠までです。 - 「その港を使う契約」は、その港を母港にしている船、その港に止まっている船、その港に着いて降ろす順番を待つ船がある契約です。行き先がその港というだけで、まだ航海中の契約は数えません。 - 陸の国境の枠と定期輸送の分け方は変えません。申し込みのときの見積もりは前の 3 分の 1 のままです(実際より遅めに出ます)。
version1.70.6 (2026-10-11)
アーカイブ: hakoS-1.70.6-20261011.tar.gz / SHA256(先頭16文字): 9cd2a8a90d4bc0fd
version1.70.5 から、外交の契約の輸送の 3 つの直しと、トップ画面・統計の頁の見た目の直しです。dataVersion(33)は変えません。契約の記録に「待つ訳」の欄を足すので、1.70.5 に戻すときは控えの data も戻してください。
- 艦隊の一覧で、外交の契約船に契約の荷と「[契約]」の印を出します。 今までは積荷が 0 と出ていました。船の列で止まったターンは「船の列を抜ける移動力が足りないため待機」と出します。
- 同じ港の契約船は、契約ごとに 1 隻ずつ交互に出港します。 先に出す契約はターンごとに入れ替えます。今までは船の番号の順で、番号の小さい契約の船が出口を取り続け、ほかの契約の船が港から出られないことがありました。
- 船の列で止まった契約船は、次のターンにほかの船を避ける道を探します。 回り道が無ければ、そのターンはふつうの道で進みます。
- トップ画面を左揃えにそろえました。 世界の様子・陣営・同盟の歴史・国の一覧・相場・順位の区画を、中央ではなく上のリンクの行と同じ左端から並べます(幅の上限 1100 px は同じ)。下のリンクと、頁の下の CPU の行も左に寄せました。
- 統計などの公開の頁で、表やグラフが白い枠からはみ出していたのを直しました。 枠を中身の幅まで伸ばし、頁を左に寄せます。相場の表は、どのセルも数字の下に棒をそろえます。統計の頁は、次のターン更新の後に新しい見た目になります(今のターンの頁は保存済みのため)。
version1.70.5 (2026-10-11)
アーカイブ: hakoS-1.70.5-20261011.tar.gz / SHA256(先頭16文字): 78c893e5347c5cc4
version1.70.4 から、1 つの直しです。dataVersion(33)は変えません。
- 開発画面が途中で止まる件を直しました。 1.70.1 で開発画面がターン更新の部品を読まないようにしたため、取引のタブを作る途中で軍の部隊の通行の確かめが使う関数が無く、「Undefined subroutine &main::chkWarIslandState」で止まっていました(取引・外交・記録のタブとタブのボタンが出なかった)。その部品を 1.70 と同じく読むように戻しました。
version1.70.4 (2026-10-11)
アーカイブ: hakoS-1.70.4-20261011.tar.gz / SHA256(先頭16文字): bf1bdb8796f3e1b7
version1.70.3 から、1 つの直しです。dataVersion(33)は変えません。
- 軍艦が近海の漁船に道を塞がれて出られない件を直しました。 軍艦の道の次の 1 マスに近海の漁船がいたら、軍艦と漁船の場所を入れ替えます(どの国の漁船でも、交戦中でも)。今までは、近海の漁船は砲撃の的にならず、交戦中の船のマスは通り抜けられず、通り抜けも 1 ターンに 2 マス要ったので、移動力 1 の軍艦が 1 マス幅の口で漁船に詰まることがありました。漁船は砲撃されないままで、入れ替わった漁船は帰港に切り替えて、次のターンに帰り道を探し直します。遠洋の漁船・商船・民間の船の扱いは変わりません。
version1.70.3 (2026-10-11)
アーカイブ: hakoS-1.70.3-20261011.tar.gz / SHA256(先頭16文字): c33ddece6b2a1e9e
version1.70.2 から、2 つの直しです。dataVersion(33)は変えません。1.70.1・1.70.2 は本番に当てずに、この版へまとめて当てます。
- 外交の頁: 1.70.2 で足した「出港待ち」の数え方が、契約の番号の無い古い形の依頼でも番号で引いていたので、契約のときだけ引くようにしました(頁が止まらないように)。
- 浅瀬で焦土(部隊撤退を数量 1)しても、浅瀬のままにしました。 海と同じ扱いです。今までは浅瀬が荒地(陸)に変わっていました。部隊の撤退は今までどおりです。
version1.70.2 (2026-10-11)
アーカイブ: hakoS-1.70.2-20261011.tar.gz / SHA256(先頭16文字): 229643999706185d
version1.70.1 から、外交の契約の輸送と民間の船の出発港の選び方を直しました(ある国の遊ぶ人の訴えを調べて見つかった所)。ターン更新の答えは、契約船を作る数と民間の船の出発港だけが変わります。dataVersion(33)は変えません。1.70.1 は本番に当てずに、この版へまとめて当てます。
- 外交の契約の輸送: 契約船を 1 ターンに作る数を抑えました。 積む港の隣の空いた海のマスの数(港から出られる数)と、受ける港の 1 ターンの荷役の枠までにします。今までは、出口が 3 マスの港でも 1 件に 10 隻まで先に作って運賃を前払いし、出られない船が港の中で待っていました。届く量は受ける港の枠で決まるので、ほぼ同じです。
- 港の中で出港を待つ契約船と積荷を「出港待ち」と表示します。 今までは港の中にいても「輸送中」と出ていました。外交の頁の契約船の数にも、港の中の船を数えるようにしました(今までは 0 隻と出ることがありました)。
- 民間の船の出発港: 港が同じ大きさなら、その国の民間の船の母港になっている数が少ない港を先に選びます。今までは地図の上の行の港から 2 つが選ばれ続け、港を分けても民間の船が 1 か所に集まっていました(出発港は今までどおり 1 国 2 つまで)。
- 一括積込・常備航路(今の世界では使えない命令)を使えるように読める古い案内を消し、艦隊の一覧で民間の商船に「[民間]」と付けました。
version1.70.1 (2026-10-10)
アーカイブ: hakoS-1.70.1-20261010.tar.gz / SHA256(先頭16文字): 7944d12cbd38982f
version1.70 から、開発画面を開くたびの計算を減らしました。ターン更新の答えと、開発画面の中身は変わりません。dataVersion(33)は変えません。
- 開発画面の地図の使い回しが効くようにしました。 1.69 で入れた使い回しが、遠洋漁業の設定の表を読む順番のせいで一度も働いていませんでした。
- 開発画面で、ターンの間は変わらない物を使い回します。 命令の欄の変わらない所・近況・陸の民間取引の見込みを、国ごと・ターンごとに 1 回だけ作ります。使い回してよいかの確かめは、配布物として置かれた所では版の指紋で行い、部品のファイルを毎回読みません(手で部品を書き換えたときに古い控えが使われるのは最長 1 ターン)。
- 開発画面に要らない部品を読まないようにしました。 CPU の国の戦・陣営・海の備えの部品と、ターン更新の部品は、使うときに読みます。
- 本番の写しで、開発画面を同じターンに 2 回目以降に開いたときの CPU が約 54% 減りました(手元で 1.96 秒 → 約 0.90 秒)。1 回目は 12〜21% 減です。
- 設置確認の頁(deploycheck.cgi)で、サーバーの上のゲームのファイルを RELEASE.json と全部照合できるようにしました。 FTP だけの所でも、更新の後に一式をダウンロードせずに確かめられます。設定一覧の静的な頁(setup.html)が管理画面の操作で消えているだけのときは NG にしません。確かめが終わったら、deploycheck.cgi は外すかアクセスを制限してください。
- 撤退のときに装備の欄が空だと出ていた警告を消しました(数は変わりません)。
version1.70 (2026-10-10)
アーカイブ: hakoS-1.70-20261010.tar.gz / SHA256(先頭16文字): b749032b6e6f961e
version1.69 から、CPU の国の検討と民間の船の備えを軽くしました。dataVersion(33)は変えません。
- CPU の国の急がない交易・交換の検討を、国ごとにずらして 3 ターンに 1 回にしました。 危機・防衛・申し出・戦争・港の喪失・相手の消失があれば、すぐ考え直します。
- 民間の船の備えは、予定の航海・残りの航路・直近の航海から見積もります。 備えのために仮の道を探し直すのをやめました。出航のときの確かめは残します。
- 本番の写しで 5 ターンを種 2 通りで回した比べでは、ターン更新の CPU が約 14% 減りました。
- 民間の会社が備えを少なく見積もるため、民間の船と便が増えます。 同じ本番の写しの 5 ターンでは、船は 42 隻から 54〜58 隻、便は 6 便から 17 便になりました。
- ターン更新が止まる件を直しました。 滅びた国の在庫を 12 ターン後に銀行が回収するとき、燃料の帳簿に残るごく小さな端数(千分の一の単位で 0)を照合が「合わない」と判断し、ターン更新が止まっていました(長いターン数の試しで見つかった件。1.69 までの本番でも、国が滅びた 12 ターン後に起こりえました)。照合の中だけの直しで、遊びの数は変わりません。
version1.69 (2026-10-10)
アーカイブ: hakoS-1.69-20261010.tar.gz / SHA256(先頭16文字): 7c9c4b36cfeb9fcf
version1.68.4 から、頁を開く手間とデータの置き場を軽くしました。ターン更新の重さは 1.68.4 と同じです(本番の写しで同じ回に 3 回比べ、比 1.006・0.964・1.004)。dataVersion(33)は変えません。
遊びの決まりが変わる所
- 国の買付注文で「供給国を自動で選ぶ」を選べます。 分かっている供給先の中から、運べて値段と資金が合う国を 1 つ選びます(相手の民間の在庫が 0 でも、国庫から出せる余力があれば選べます)。CPU の新しい建造の注文も同じ仕組みを使います(設定
HstatePurchaseAutoSupplier、0 で今までどおり)。
画面と頁
- すべての取引の頁と、設定一覧の英語・繁体字版を、ターンごとの静的な頁にしました。 古い URL は静的な頁へ 301 で送ります。開く手間は約 82〜85% 減ります(設定一覧の日本語版は前から静的です)。
- 設定一覧は、今の設定値の表と短い注記だけにしました。 式・順序・操作・地形と命令の対応表などの説明はヘルプの各節へ移しました(ヘルプの数には「既定値」と添えています)。設定一覧の頁は 3 言語とも約 65〜69% 小さくなりました。
- 開発画面の地図を、本人の要求の間で使い回します(
HownerMapCacheEnabled、0 で今までどおり)。開発画面の手間が約 36% 減ります。
データの置き場(運営)
- data のフォルダを分けました。 作り直せる控えを
data-<id>-cache、過去の記録をdata-<id>-archive、管理の記録をdata-<id>-logsへ移します(<id>は今の data の名前の後ろの部分)。最初の要求で一度だけ移し、失敗したら今の置き場のままにします。本番の写しで data は約 31MB から約 8.7MB になりました。手順はUPDATE.mdの「1.69:data の控え・過去記録・管理記録を分ける」。当てた後に、新しい 3 つのフォルダが外から 403 になることを確かめてください。 - 船の道の覚え書き(
civil-sea-routes.json)を、ターンごとの控え(bakN)に入れます。 巻き戻したときに道の答えがずれなくなります。
軽くした所
- 世界と地元の相場の更新で、同じ約定の集計を 1 回だけ作って使い回します(答えは同じ)。
- CPU の取引相手の評価点と最初の候補の場所を 1 回の評価の中で使い回し、船の道の待ち行列に索引を付け、H7 の公開の地図の欄を使い回します(答えは同じ)。
version1.68.4 (2026-10-10)
アーカイブ: hakoS-1.68.4-20261010.tar.gz / SHA256(先頭16文字): d2051b76df4f007e
version1.68.3 から、ターン更新を軽くしました。保存形式と dataVersion(33)は変えません。
- CPU が海の燃料の交換を考えるとき、道を数える港の組を、1 国 1 ターン近い順の 4 つまでにしました(設定
HaiSwapSeaFuelPairs、既定 4、0 で 1.68.3 と同じく全部を数える)。1.68.3 は、いつでも出せる契約船の道で港の組を全部数えていたため、ターン更新が重くなっていました。本番の写しのターン 122→123 で、ターン更新は 1.68.3 より約 12% 軽く、1.68.2 の約 1.24 倍です。 - 5 ターン回した範囲では、CPU の申込・成立・届いた燃料の量は 1.68.3 と同じでした。
version1.68.3 (2026-10-10)
アーカイブ: hakoS-1.68.3-20261010.tar.gz / SHA256(先頭16文字): f1fac7c7c62a52be
version1.68.2 から、外交の輸送(援助・交換・定期輸送)の作りを直し、1.68.2 で崩れた開発画面の表示を直しました。dataVersion(33)は変えません(新しい欄は無くても読めます)。
- 競売の帳(
auction.dat)の行に「払い済みの到着量」の欄を 1 つ足しました(18 欄。前の版の 16・17 欄の行も読めます)。1.68.3 を当てた後に 1.68.2 へ戻すときは、当てる前のdata/の控えも一緒に戻してください。 - ターン更新は 1.68.2 より重くなります(本番の写しのターン 122→123 で約 1.4 倍)。CPU が海の燃料の交換の候補を、いつでも出せる契約船の道で数えるようになり、数える港の組が増えたためです。軽くするのは次の版で行います。
遊びの決まりが変わる所(外交の輸送)
- 契約の荷は、その契約のために出す船(契約船)で運びます。 民間の船は雇いません。契約船は民間の海運がその契約のためだけに出す船で、建造費は掛かりません。積み出しの港と行き先の港が両方とも大きな港なら大型商船、どちらかが小さな港なら小型商船です。契約が終わると(全部届いた・期限・取り消し)、最後の荷を下ろして解体します。荷の持ち主の国の、積み出しの港のとなりで空いている国の商船があれば先に使います(国の商船は解体しません)。
- 契約の輸送は民間とは別の枠です。 国境は 1 組・1 ターン 64、港の荷役は港の枠と同じ量、契約船は 1 国 30 隻まで。民間の貿易の枠は減りません。1 件で使えるのはそれぞれ 3 分の 1 まで(国境 21・小さな港 85・大きな港 682・10 隻)です。
- 往路も復路も運びます。 契約船と国の商船は両国の港の間を往復し、行きは自国の荷、帰りは同じ契約の相手の荷を積みます。契約船は港の中で荷役し、港の中で待ちます(港の入口を塞ぎません)。荷役は着いた順に、下ろしてから積みます。
- 運賃は便ごとに、その便の荷の持ち主が払います。 空で走る便は船を出した国が払います。預かりの運賃から先に払い、尽きたら国庫から払います。国庫も足りなければ、その便は港で待ちます。運賃の日数は船の速さで数えます(前の版はマスの数を日数として数えていて、見積もりが高すぎました)。残った預かりは契約が終わったときに返します。
- 届いた荷は、届いたターンにその都度相手に渡します(資金も届いた分だけ振り込みます)。交換で両方の荷がそろうまで待つことはしません。受け取る国の保管の上限を超える分は港で待ちます。
- 期限が来ても、運んだ分は成立のままです。 積んで走っている荷は届けて渡し、まだ積み出していない荷は持ち主に戻します(前の版は全部を送り返していました)。
- 申込と承諾のときに、期限までに運べるかを確かめます。 運べない量は断り、運べる最大の量と国ごとの運賃の見込みを見せます。国庫の残りでは断りません(運賃は運ぶたびに払うため)。
- 定期輸送も同じ契約の枠と契約船で運びます。 1.67.1 の上限は、民間と分け合う枠の 1 件 1/3・全部 2/3 から、契約の枠の 1 件 3 分の 1 に変わります。CPU の申込と受け入れも、運べる量の中だけにします。
- すでに成立している交換・援助は、新しい決まりで続けます(期限はそのまま)。
画面と記録
- 外交援助・交換の欄に、送ったときの見込み(期限までに運べる最大の量・国ごとの運賃・運べない理由)を出します。外交と方針のタブと外交記録の行に、荷の内訳・契約船の数・運賃の払い元(預かり・国庫)・待っている理由を出します。ヘルプに新しい決まりを書き、設定一覧に新しい設定 3 つの値を足しました。
- 開発画面の友好国・交戦国の見出しをそろえ、ハンデを鋼鉄と同じ幅で折り返さずに表示します。国の状況の空白の帯を取り除き、天気の割合と首都の天気を一行で表示し、国の状況の上の線を戻しました。
- 開発画面の全部のタブで中身が欄(枠)の外へはみ出していたのを直しました(欄の中で折り返します)。中立金融の表は項目と数値の組ごとに折りたたみ、借入元本などの数値が見えなくなっていたのを直しました。
version1.68.2 (2026-10-10)
アーカイブ: hakoS-1.68.2-20261010.tar.gz / SHA256(先頭16文字): ee6776bff23ad03b
version1.68.1 から、遊ぶ人の声と開発者が見つけた点を直しました。保存形式と dataVersion(33)は変えません。記者クラブの号の形は 3 になります。
遊びの決まりが変わる所
- 遊覧船は港の中で待ちます。 寄港・帰港すると港の中に入り、港の隣のマスを塞ぎません。出るときは港の隣の空いた水のマスへ出ます(空きが無ければ港の中で待ちます)。港の中にいる間は海賊に襲われません。速さと寄港の料金は変わりません。
- 市場と港(命令 78 の数量 2・3)を、首都以外の自国の町に直接建てられます。 町・大都市・新しい町・現代都市が対象で、町はそのマスごと施設に変わり、そのマスの人口は失われます。精製所・軍需工場は今までどおり平地だけです。
画面と記録
- 外交援助・交換の一覧に内訳を出します。 預かり(未発送)・輸送中・届いた・返送・運賃の預かりの量と、止まっている理由(国境の枠待ち・船待ちなど)です。受付の知らせは「国境の輸送の枠しだいで、早ければターン N に着きます」にしました。援助を実際に送り出した時と届いた時に、両国の機密の記録に 1 行ずつ出します。
- 開発画面の表: 「国の状況」の見出しを表の先頭へ、外交記録の行を友好国・交戦国の下へ移しました。交戦国の行は、国の一覧が残りの幅を取り、ハンデは中身の幅だけにしました。外枠は中身に合わせて伸び、記録の長い行は欄の中で折り返します(画面の幅で「今までどおり」を選んだ場合は元のままです)。
- 自分の港のマスの「優先」に、競売の欄と「外交援助・交換の欄へ」を出します。
- 国の買付注文の欄を、品を選ぶ欄と入力 1 組にしました。
- トップの「諸国の状況」の商業人口を、農業・工業と同じ書き方にしました。
- 記者クラブの号は、その号のターンの分だけにしました(HTML と JSON。前のターンはバックナンバーで見られます)。地図は HTML では国ごとの概要だけにし、マスごとのデータは JSON に置きます。号の形は 3 です。
- 過去の記録で、艦砲射撃・魚雷・艦載機・上陸の失敗の記録に HTML のしるしが文字のまま出ていたのを直しました。
- 記者クラブの中立銀行の決まりの文の文字化けと、繁体字の外交の文に日本語の中点が混ざっていたのを直しました。
- ヘルプの食い違い(初期の工業品・弾薬、船の上限、方向を命令した駆逐艦、民間の商船の上限、ウラン鉱山)を、今の動きと既定値に合わせました。
片付け
- 統計・記者クラブの頁を作る鍵のファイルを 16 個までにまとめました。残っている古い鍵のファイル(本番の写しで 157 個)は、当てた後のターン更新で一度だけ片付けます。data の直下の項目が約 4 割減ります。
version1.68.1 (2026-10-09)
アーカイブ: hakoS-1.68.1-20261009.tar.gz / SHA256(先頭16文字): 2c789bb496300834
version1.68 から、本番で見つかった表示の崩れを直しました。遊びの決まりと保存形式・dataVersion(33)は変えません。
おもな変更
- トップの「諸国の状況」の表を、元の箱庭の形に戻しました。 欄を次の段へ回さず、短い言葉や数と単位を割らずに 1 行に並べます。順位の欄は狭くしました。画面より広いときは、ページ全体を横に動かして見ます。
- 開発画面の外交記録の行には、進んでいる物と提案中の物だけを出します。 交換・定期取引の申し出の受諾・拒否のボタンは、友好国の行から外交記録の行へ移しました。運んでいる最中の外交援助も「輸送中」と出ます。期限切れなど過去の記録は、「外交と方針」のタブに移しました。
- 開発画面の表の幅をそろえました。 友好国・交戦国の行の欄の境を上の行とそろえ、上の国の表と下の計画・地図の幅を同じにしました。
- はみ出しを直しました。 地図の印の選び方(国別色分けなど)と、現代都市・首都の名前の説明の文は、欄の中で折り返します。
version1.68 (2026-10-09)
アーカイブ: hakoS-1.68-20261009.tar.gz / SHA256(先頭16文字): e5d7e3b1f5b4c2fe
version1.67.1 から、気候(季節の風・気温・水温・湿り気、海流、台風・火災)、民間の需要と供給(国の買付の注文)、CPU の国の内政・戦い方・山の取り方を作り直し、ターン更新を軽くした版です。保存形式と dataVersion(33)は変えません(世界の帳簿に無くてもよい欄 climate・買付の注文などを足します)。
おもな変更
- 気候: 地形から作った擬似の標高と海岸からの距離をもとに、季節ごと(年 4 回)に気温・水温・風を、4 ターンごとに湿り気と乾きを決めます。毎ターン動くのは低気圧・高気圧の目だけです。雨は湿った帯・山の風上・季節で降り、山の風下や乾いた亜熱帯は晴れが多くなります(12 ターンの写しで、雨・雪・雷は全体の約 11%)。天気の 5 種類と、今までの天気の効き目(雨・雪で陸戦の損害 1 割減など)は変えません。表示していた天気で命令と災害を処理し、最後に次のターンの天気を用意する順にそろえました。
- 海流と漁場: 海流は地形に沿う流れを残したまま、季節で帯の位置・幅・強さが変わります。沿岸の湧昇と、暖流と寒流の境で魚が育ちやすくなり、近海・遠洋とも魚の回復の量が ±20% の範囲で変わります(漁獲の量そのものには掛けません)。民間・国の商船の見積もりと実際の動きに、季節の海流が入ります。軍艦の速さは変わりません。
- 台風と火災: 暖かい海(およそ 26.5〜27℃ 以上、赤道のすぐ近くは除く)の上の低気圧のうち、最大 2 つが台風になります(今の低気圧 5 つの枠の中)。被害は台風の通り道の農場・大農場だけで、元の箱庭と同じく防風林で減ります。今の世界では年に 1 回ほどの見込みです。火災は乾きと風で起きやすさが変わります(全体の平均は今と同じ程度)。強い風の中では軍艦の通常の回復に上限が付き(80%、台風の中心の近くは 60%)、台風が通っている港は荷役が 15% 減ります。地図の印の選び方に「台風」を足しました(今の位置・強い風の域・過去 4 ターンの通り道)。
- 遠洋の漁場が季節で動きます。 湧昇と暖流・寒流の境に寄ります。魚の残りは海のマスの側で持つので、漁場が動いても満杯に戻らず、漁場から外れた所の魚も残ります。行き先の漁場が動いた漁船は、近くの新しい漁場へ向け直します(届かないときは積み荷を保って帰ります)。
- 国の買付の注文: 開発画面の民間の政策の欄から、品・量・値段の上限・期限・仕入れ先を決めて、民間に買い付けを頼めます。代金は国庫から預かり、届いた分だけ払い、残りは期限か取り消しで戻ります。民間は注文を優先し、相手の国の国庫が放出できる量から相場で仕入れて船で届けます。相手の国には放出できる量だけが見え、コンテナの数と船何隻分も添えます。CPU の国も同じ仕組みで買います。
- 相場: 交換・定期取引・競売で成立した値段と量が、1 回で跳ねすぎない形で世界の相場に入ります。民間の在庫の目標は、大口の注文を覚えてゆっくり忘れます。
- CPU の国の内政: 中立の土地を取る・地ならしの判断を、見込みの収穫・費用・働き手で決め直しました(本番の写しの 10 ターンで、CPU の取った中立の土地 53→65、町の人口の合計 19,030→19,216、農業の生産 +1%)。
- CPU の国の戦い方と外交: 見える兵から脅威と支えを数え、地形・占領できる兵の接近を攻めの判断に入れます。公開の出来事から相手ごとの恨み(少しずつ忘れる)と、国ごとの性格を持ち、状態からも開戦を考えます(1 ターン 1 宣戦・上限は今のまま)。余力のある軍団を近い敵へ回し、1〜2 軍団を守りに残します。
- CPU の国が山を押さえて広げます。 自国の土地から続く中立の山を、兵を備えてから取りに行き、首都の守りは崩しません。
- 軽く: 物流の道探しの中の繰り返し(答えは同じ、道探しの CPU 約 1 割減)、世界の読み込み・公開の記録の作り、季節の陸の数え、保存と名前の JSON を XS で、開発画面の地図の JSON を XS で、など。
- 設定一覧・ヘルプ: 気候・海流・漁場・台風・買付の注文の決まりを書き足しました。
運営の方へ
- 世界の帳簿の
LOGISTICS1.climate(気候の下地・海流)と、買付の注文の欄は、無くてもよい欄です。当てた後の最初のターンで作ります。 - 季節の境のターンは、気候の作り直しで約 0.1〜0.3 秒重くなります。ふだんのターンの増えは小さく、軽くした分と合わせて 1.67.1 とほぼ同じです。
version1.67.1 (2026-10-09)
アーカイブ: hakoS-1.67.1-20261009.tar.gz / SHA256(先頭16文字): 16b02d8d273a7b81
version1.67 から、定期輸送の量の上限、駆逐艦の速さ、持てる船の数、外交の申し出の知らせ、表と天気の見え方などを直しました。保存形式と dataVersion(33)は変えません(世界の帳簿の「一度きりの処理の印」に 1 つ足します)。
おもな変更
- 定期輸送の量に上限を設けます。 1 件の約束は、使える船・港・国境の通り道の枠の 3 分の 1 まで、定期輸送を全部合わせて 3 分の 2 までです。送る国と受ける国の両方の枠を見ます。申込の画面に「この間隔で 1 回に送れる量の目安」を出し、運べない量は計画に保存できません。申込・受け入れは、外交援助・交換の欄からだけ入れられます。
- 当てた後の最初のターンで一度だけ、1 件の上限を超える約束と申込を取り消します。 預かっている品物・代金・運賃は元の国へ返し、両国に記録で知らせます。
- 現代都市のとなりに現代都市を建てられない決まりを止めました。 CPU の国も同じ決まりで考えます。
- 駆逐艦は、1 ターンにまず 2 マスまで続けて動き、その後は「とても速い」の決まりで続けて動きます。 方向を命令した駆逐艦も同じです。巡洋艦とほかの艦は今のままです。CPU の国の艦隊も、2 マス動く前提で道を空け、陸の射程から退きます。
- 持てる船の数を、軍艦と国の商船で別々に数えます。 軍艦は国 40 隻・軍港 1 つにつき 5 隻、国の商船は国 30 隻・港 1 つにつき 5 隻です。1 艦隊 10 隻は今のままです。民間の船はどれにも数えません。
- 外交の申し出: ほかの国から交換・定期取引の申し出が届くと記録に出し、開発画面の上(友好の打診と同じ所)と、外交援助・交換の欄に、受諾・拒否のボタンを出します。答えると相手の国にも知らせます。外交記録に「成立」を載せます。外交援助・交換の欄は、最初から開いた形にしました。外交援助(援助)は今までどおり、受け手の同意なしに届きます。
- 表の見え方: トップと開発画面の表で、数と単位や短い言葉が 1 文字ずつ割れないようにし、画面の幅に入らない欄は次の段へ折り返します。表が枠からはみ出さないようにしました。
- 天気: 国の天気を、領土のマスの天気の割合で出します(首都の天気も添えます)。湿った帯や山の風上では、低気圧が近くに無くても雨が降るようにしました。
- 陣営の地図と開発画面で、友軍・友好国の兵の数を明るい緑にしました。
- 設定一覧に、地形ごとに出せる命令の表を載せました。 開発画面の地図の命令の小窓と同じ元のデータから作ります。交易・外交・陣営などマスに結び付かない命令は、何が要るか(自国の港・相手の国の条件など)の表に分けました。ヘルプの命令の節からも開けます。
- 養殖場の上に軍港を建てる命令で、ターン更新が止まることがある件を直しました。 収入・配給の後に走ると、国庫の同期の前に帳簿の確かめへ入り、ほかの国の正しい未同期の差で止まっていました。
- 値 1 の森を伐って木材が 0 になったとき、ターン更新が止まる件を直しました。 資源採掘・伐採で、作られる木材が 0 の回(木材の少ない帯で生産の技術が低い国)に、民間の帳簿に量 0 の行ができて、後の確かめで止まっていました。
運営の方へ
- 定期輸送の上限の割合:
init-game.cgiのHperiodicSingleNumerator・HperiodicTotalNumerator・HperiodicShareDenominator(既定 1/3・2/3)。一斉の取り消しの印は世界の帳簿のLOGISTICS1.onceのperiodic_capacity_1671。 - 国の商船の上限:
HnavyMaxMerchantShips(既定 30)。CPU の駆逐艦の先読み:HaiDestroyerSteerHorizon(既定 6)。
version1.67 (2026-10-08)
アーカイブ: hakoS-1.67-20261008.tar.gz / SHA256(先頭16文字): b61ccba886a8305e
version1.66.10 から(1.66.11 の直しも含みます)、海戦を元の箱庭海戦にそろえ、CPU の国の戦い方と経済を作り直した版です。保存形式と dataVersion(33)は変えません。世界の帳簿に、無くてもよい欄(国の海軍の経験、潜水艦の浮上、施設ごとの軍団の設定)と、新しい帳簿の理由(国の輸入の仲介料)を足しました。当てた後の data は、1.66 系では読めません(当てる前に data を控える手順は、いつもどおりです)。記者クラブの号は、公開情報を足したので形式を 2 にしました。前の号も表示できます。
おもな変更
- 海戦を元の箱庭海戦にそろえます。 艦種ごとの速さ、駆逐艦が国の命令より先に動く、経験を積むと撃つ数が増える、最大 HP は経験とレベルで決まる、戦った艦は次の補給で HP を回復しない、潜水艦は 20% で浮上する、沈んだ軍艦は 50% で残骸を残す、などです。
- 艦の経験は、艦を沈めたときと怪獣を倒したときにだけ増えます。 国の海軍の経験が 10・40・160・640 に届くと、順に巡洋艦・戦艦・空母・潜水艦を造れるようになります。1 国の軍艦は 30 隻まで、1 艦隊は 10 隻までです。正体不明の艦が出ることがあります。
- 建造のお金と鋼材: 駆逐艦・巡洋艦・戦艦・空母・潜水艦の順に、お金は 80・320・640・1,920・640 億円、鋼材は 25・100・200・600・200 です。燃料と毎ターンの維持費は今のままです。国のお金の上限は 15,000 から 20,000 億円にしました。
- 陸と海の境: 砲台のほかの動ける兵は、港・軍港に入れます。軍港でも部隊設置ができます。空いた出口があれば、敵でない船や海の上の兵を追い越せます。続いた敵でない軍港は、軍艦 5 種が 1 回の移動で通り抜けます。期限内の残骸がある海・浅瀬は通れません。大型商船も浅瀬を通れます。
- CPU の国の戦い方: 陣営の仲間を救援するときは、宣戦を決めた段階から兵を乗せて向かいます(上陸は宣戦の後)。海を越えた上陸、船団の護衛、艦砲の支援、首都の奪い返しなどを考えます。
- CPU の国の開発: 食料・燃料・研究・交換を、実際の働き手・燃料・費用に合わせて選びます。
- 経済: 建設・造船などで実際に使った資源も、市場の需要に数えて世界の値段を決めます。家計は、そのターンの予算と値段に合わせて、食料・燃料・工業品の順に買います。国が世界から買うときの上乗せ分は、自国の民間に仲介料として入ります。
- 民間の船: 道がふさがったとき、近くを回り込んで元の道へ戻ります(商船・漁船)。出航前の燃料の見積もりに 1 割の余裕を持たせます(実際に使う燃料は同じです)。
- 記者クラブ: 陣営・意思表示・攻防・順位・記録の本文・競売・天気・商船・近海の漁業・銀行など、公開の情報を足しました。
- 施設ごとの軍団の設定: 軍設定の画面で、防壁・首都・現代都市・軍港ごとに、部隊設置で置く軍団を選べます(既定は第 1 軍団)。
- 1.66.11 の直しを含みます: 外交援助・定期取引の「計画へ保存」で前の命令を消さない、地図の表示の切り替えで数が重ならない、計画送信の後のボタン、など。
- そのほかの直し: 装甲兵などが 1 ターンに進みすぎる件、CPU が港の隣に軍港を重ねて民間の船の入口を狭める件、燃料が足りない精製所でターン更新が止まる件、艦の動きで地形の抵抗力が変わる件を直しました。新しい現代都市は、となり 6 マスに現代都市があると建てられません。
- 統計・記者クラブの静的な頁は、1.66.10 と同じ作りです。 当てた後の最初の閲覧で、一度だけ新しい作りで作り直します。
以下は、細かい変更です。
海戦
- 艦種ごとの速さと、駆逐艦の先行移動を元の海戦にそろえます。 駆逐艦は補給後、国の命令より前に動きます。無作為なマス順で、移った先がまだ処理されていなければ再び動き、固定の移動回数上限はありません。巡洋艦は最大2回、戦艦・空母・潜水艦は1回です。障害物のない経路の平均は駆逐艦が約1.7回、巡洋艦が約1.5回です。移動回数が増えても、通常の一斉射撃は1隻1ターン1回までです。燃料・維持費は維持します。港や船を通過する条件は下記のとおりです。
- 駆逐艦は、その更新で実行できる一斉攻撃の指定を先読みします。一時待機・方向指定を予約した艦だけは命令後にその操作を行います。一時待機でも射撃は行い、方向指定は1回の移動機会です。通常は1マスです。船・水上部隊の追い越しに必要な2回の移動機会は持ちません。下記の連続軍港の通過は別の特例です。乗船・上陸・修理などを現在位置で行いたいときは、先に一時待機を入れます。新しい目的地や単艦の指令変更が、すでに終わった先行移動へさかのぼって効くことはありません。新造駆逐艦の自動行動は次のターンからです。
- 非敵対の船・水上部隊を追い越す条件をそろえます。 軍艦は隣の船や海・浅瀬の海兵・空兵を越え、空いた出口まで2辺進むために、実際の移動機会を2回使います。移動1の艦・手動方向指定・残り1回の巡洋艦は追い越せません。駆逐艦と巡洋艦は走査順にも条件があり、途中の船や兵と重なることはありません。敵対船・敵対部隊・無所属船は封鎖になり、水深・養殖場・有効な残骸などの条件も残ります。商船は残り移動力と燃料で空いた出口へ抜けられる場合だけ通過します。
- 連続する非敵対の軍港には、全軍艦が通過できる特例を設けます。 自動移動と方向指定70のどちらでも、軍港群の途中に止まらず、その先の空いた水まで1回の移動機会で出ます。敵対港・敵守備軍・空いた出口のない軍港群には入れません。重艦の出口は深い海に限ります。民間港・商船にはこの特例を広げません。
- 陸軍と海軍は自国の実際の偵察役から視界を共有します。海兵2・空兵3など、兵種・艦種ごとの距離と武器の射程・能力は保ちます。軍艦の航路探索では、その艦の視点を移動開始位置へ固定し、まだ進んでいない候補地点から隠れた船を見ることはありません。接触した敵船を通り抜けることもありません。
- 造船価格を確定した設定へ合わせます。 駆逐艦・巡洋艦・戦艦・空母・潜水艦の順に資金は80・320・640・1,920・640億円、鋼鉄は25・100・200・600・200です。駆逐艦を基準に資金・鋼鉄とも1・4・8・24・8倍で、潜水艦は戦艦と同額です。国庫の上限は資金20,000億円、食料30,000単位(300万トン)。軍港建設費、艦の資金・食料・燃料・弾薬などの維持・戦闘費用は変えません。
- 大型商船も浅瀬を通れます。積載1,024コンテナ、基準速度8、両端の荷役にレベル2の港が必要な条件は維持します。
- 潜水艦は、移動処理のたびに20%で浮上します。 進路が塞がっている場合も判定し、停船・一時待機なら状態を保ちます。潜航中は対潜能力のある艦だけ、浮上中は対艦能力のある艦も撃てます。散った弾にもこの条件を適用します。
- 自動で狙う順を、艦、見える敵陸軍、怪獣、軍事施設、町、食料源、資金源の順にそろえます。有効な一斉攻撃の指定はこれらより先です。艦種の能力・射程・交戦状態・視界の条件と、駆逐艦の陸軍援護は残します。
- 艦の経験は、艦を沈めたときと怪獣を倒したときに得ます。 駆逐艦・巡洋艦・戦艦・空母・潜水艦を沈めると、順に5・10・15・20・5です。命中だけでは増えません。新しく得る艦の経験は250までで、旧保存の251〜255は減らしません。
- 同じ報酬を国の累積海軍経験にも加えます。最初の値は導入後の最初の更新開始時にいる自国軍艦の経験の合計で、艦を失っても減りません。累計10で巡洋艦、40で戦艦、160で空母、640で潜水艦が建造可能になります。保有枠は国全体30隻、艦隊ごと10隻、軍港1つにつき5隻です。既存の保存形式の任意項目を使い、dataVersion 33と固定欄は変えません。
- 軍艦の沈没時に残骸を残す確率を50%にします。退役では残しません。攻撃の記録は、駆逐艦・潜水艦の魚雷発射、巡洋艦・戦艦の艦砲射撃、空母の艦載機による爆撃を区別します。
- 軍艦は、経験を積むと通常の砲撃で撃つ数が増えます。 艦種ごとの基本の発数に加える数は、レベル 1 で 0 発、2〜3 で 1 発、4〜5 で 3 発、6〜7 で 5 発、8〜9 で 7 発、10 で 10 発です。駆逐艦なら経験 0 で 2 発、48 で 5 発、228 で 12 発です。艦・機雷・怪獣・施設・町への通常の射撃で共通ですが、駆逐艦の陸軍への援護射撃は 1 発のままです。弾薬は一斉射撃ごと、砲弾の資金は 1 発ごとに使います。
- 自艦のいるマスへ着弾するときは、ほかの着弾候補へ 1 回だけ選び直します。候補が 1 マスしかないときは選び直しません。命中を保証するものではありません。
- 軍艦5種の最大 HP を、経験とレベルに応じた値へ直します。 初期HPに経験による成長とレベル加算を足し、15を上限にします。駆逐艦・巡洋艦・戦艦・空母・潜水艦の順に、経験0では2・4・8・7・2、経験250では9・11・15・15・9です。すでに持つHPと保存された経験251〜255は減らさず、最大未満になったときだけ回復・修理します。CPUの修理判断も、この最大HPにそろえます。
- 戦った軍艦は、次の補給で HP を自動回復しません。 1 発以上撃った艦(外れも含む)と、他国・中立との戦いで損害を受けて生き残った艦が対象です。続けて戦っていなければ、その次からは通常の回復に戻ります。燃料不足だけによる損害、商船・海賊・民間の漁船や客船は対象にしません。
- 海戦の新しい決まりは、設定一覧とヘルプにも 3 つの言葉で載せます。
陣営の救援と CPU の戦い方
- 陣営の仲間を助ける国は、参戦のための宣戦を選んだ段階から兵を乗せ、仲間の岸へ向かいます。上陸は自分が宣戦してから、救援のミサイルは開戦してからです。
- 1 ターンに全 CPU を合わせて 1 つの宣戦枠では、自国兵を乗せた軍艦と、見える敵兵に脅かされた仲間の岸がある国を優先します。枠に入れなかったターンも救援の船は移動を続けます。同じ相手への宣戦は 3 か国までです。
- 海の向こうの目標を公開地図から探し、目標の隣の中立地への上陸、上陸後の作戦継続、増援の迎えを考えます。見えない敵の部隊配置は使いません。兵を運ぶ船を何度も選び直したり、空の船が岸を離れただけで停戦を選んだりする判断を見直します。
- 輸送船団は、味方の空船との重なりや、民間港の入口付近での足止めを避けるため、通常の移動・船団の分離を使います。船種ごとの水深と、港を通れる条件も確認します。
- 新しい駆逐艦の処理順に合わせ、護衛の準備・合流と輸送船の出発を調整します。近くの空船を護衛に回せるかを確かめ、待つ間は見えている敵兵・砲兵の射程を避けます。護衛や輸送船を動かす費用と命令枠、上陸前の戦力確認は通常どおりです。
- 艦砲支援は、艦の実際の射程と入れる水深で射撃位置を選びます。経験で増えた発数の費用を見積もり、同じ国の目標指定の重複を避けます。見える交戦相手へ既存の艦が届かない場合は、費用と射撃位置がそろうときに支援用の巡洋艦も建造候補にします。
- 艦を造るときは、満杯の艦隊へ繰り返し追加せず、役目の合う空き枠を選びます。隣の自国駆逐艦が先に動いて建造場所を塞ぐのを避けるため、必要な一時待機も費用・命令枠と合わせて計画します。修理を終えた艦隊は修理のための待機を解除し、再び護衛などへ回します。平時の任意の建造では、港の入口を塞がない別々の待機先と空き艦隊も先に確保します。待機中でも新しい輸送などの仕事へ呼び戻せます。
- 首都を占領している見える敵に対し、支払える補充・兵種変更と安全な進路を選びます。山岳兵などの移動可能な地形を個別に見て、通常歩兵と同じ道だけで判断しないようにします。予備兵がなくても、既存の前線部隊と後方部隊で可能な交代は候補にします。
- 平時の余力がある軍団は、近くの山や短い海越えに合う兵種を準備します。設定を変えただけで盤上の兵を変換せず、基地での通常の配置・補充と支払いで実現します。共有軍団、固定兵種、首都守備や輸送の任務を優先します。
- 公開された開戦予告や国境の状況に応じ、余っている部隊を自国内で動かして町への侵入経路を守ります。同じ空き地点へ複数軍団を向かわせないよう、先の移動・町守り・帰還の到着予定も合わせて確認します。
- 軍団の32枠は平時も使用でき、同じ軍団は命令と方向を共有し、別の軍団は独立して指定します。CPUが採用する方向変更命令の予算は平時16件、戦争・開戦準備や脅威があるとき32件です。使える軍団を16枠に減らす規則ではありません。
CPU の開発・資源・外交
- 町が育つ自国の町・農場へつながる場所を開拓先として考え、食料と費用に余裕があれば、産業の働き手が尽きる前に人口を増やす投資を検討します。工場を失った後の再建では、費用と命令枠が足りる用地に限り、高速整地と工場建設を続けて行います。
- 開拓・町の成長・平時の部隊移動で、隣接する土地の情報を共有します。町が育つ用地を任意の施設で埋めないようにし、森林を保つ割合も設定できます。緊急の食料・燃料、必要な港や生産施設は優先し、既存の伐採は続けます。余裕があり、今受け取る木材の量を減らさずに済む場合は、再び育つ森を残せる伐採量を選びます。
- 食料の備えを、実際に働く人員・燃料で作れる量と腐敗する量に合わせます。口糧や約束済みの食料を残し、余剰は実際の需要と民間資金がある場合に売ります。必要な備蓄を削って腐敗だけを消すことはしません。
- 食料生産が燃料不足で止まるときに、農場だけを増やし続ける判断を見直します。 働き手と費用を確かめて、燃料資源への接続・開発・採掘や精製を選び、食料へ効くまでの待ち時間と後続の建設費も見ます。農場が多すぎて採掘できない場合は、必要な食料生産能力を残せるときだけ、余剰の農場 1 か所を整地して働き手を戻します。
- 燃料を作る目的の新しい精製所は、最初に稼働するターンの産業方針と燃料消費を考え、作る量より運転に使う量が少ない場合だけ候補にします。鉱山・発電の増設も、実際に働かせられる人員と産業を確認します。
- 未発見の石油は、余っている働き手、食料、開発・採掘・精製の費用を用意できるときに、通常の有料探査で探します。外れが続けばいったん止め、資金条件が改善するなどの条件を満たしてから考え直します。発見や燃料の自給を保証するものではありません。
- 産業方針は、いまの工場・人員・材料と燃料の消費を比べます。重工業へ入るときは、すぐに軽工業へ戻せない期間の費用も確認します。燃料を保つために重工業を待つ場合は、弾薬などの生産も遅くなります。
- 自国に伐採できる森がなく木材が足りない場合は、隣接する中立の森の取得を検討します。まだ伐っていない木材を、先の建設の支払いに数えません。
- 使えるウラン鉱山につながる生産研究や、燃料・保管場所が足りて費用に見合う食料増産の研究を、通常の研究命令で検討します。残る研究費と必要な建設費を確保し、到達できない研究目標は立てません。
- 自国の工場・農場が他国に取得された公開情報から、一定期間の局地的な守りを準備します。仲間の首都を助ける兵員援助は、必要な時期に届くかも考えます。
- 受け取った交換の提案は、不足を埋める量と実際の輸送回数で比べます。実行済みの友好打診には定期の新規打診日を待たずに応じる候補を作り、同じ計画で相手の土地を取らないようにします。中立・守勢の国は、安全条件を満たす相手の撤退・停戦打診も検討します。
- CPUどうしの燃料交換では、供給側が自国の備え、対価、運賃と取引の利益を判断し、応じる場合だけ限定した数量・支払資源と量・運賃予算を回答します。全在庫、隠れた部隊や軍事計画を相手へ渡しません。人間国の非公開情報は、既存の正式な権限で見える範囲を除き対象外です。民間の現金・食料・燃料、実在する空船、港の残る荷役量と往復費用も確認します。
- 海上交換は既存の命令124と実船の借上げを使います。荷を降ろした民間船は、同じ契約の反対側の荷を先に積みます。それがなければ既存の民間帰り荷を検討できる状態へ戻り、空船の帰還にも通常の条件を適用します。対価や運賃を交互に免除する規則や、輸送のために船を無条件で出現させる規則は追加しません。CPUの定期援助・定期交換(129・130)は解禁しません。
- 食料の消費、建設・補充・修理の実費、既に約束した援助や交換を踏まえて、払える命令を選びます。同じ場所・艦隊への重複した指示と、命令枠からあふれる途中までの計画を避けます。CPU も人間と同じ命令・費用・視界・移動の決まりで動きます。
陸軍の説明を現行ルールへ合わせる
- 兵站基地建設(21)は新設1ターン、自国の既存基地の軍団指定変更は0ターンで、どちらも10億円です。基地の変更だけでは盤上の部隊の軍団・兵種は変わりません。
- 部隊設置(23)は自国の兵站基地・防壁・首都・現代都市・軍港で新規配置と補充ができ、防壁・首都・現代都市・軍港は軍団1を使います。既存部隊への数量0も予備兵100人以上が必要で、5億円を払い、軍団と変更可能な兵種を合わせます。予備兵の経験が部隊より高ければ、人数を増やさなくても差の4分の1(端数切捨て)だけ経験が増えます。固定兵種は維持します。
- 攻撃0・進軍1は中立地と開戦済みの相手の土地へ進めますが、移動2・防衛3は自国所有のマスだけです。友好指定・地形・兵種・ZOCなどの制限も残ります。海や浅瀬の抵抗力0は、移動を許可する条件ではありません。
- 防壁内の部隊は攻撃・反撃・補充ができ、建設前の部隊も残りますが、陸上移動・交代・撤退・乗船・上陸で出入りできません。首都・現代都市にはこの移動禁止はありません。港・軍港へは通常の地上移動ができる各兵種が入れます。所有関係、軍団命令、敵部隊などの条件は維持します。陸軍は友好関係にかかわらず船のいるマスへ自力で入れず、自国船への乗船は命令74を使います。
記者クラブ
- 取材に使える公開情報を追加します。 陣営の所属国・代表・状態・申請数、人間の国の意思表示、攻・防・停、各国の公開順位と点・面積など、そのターンの公開記録の本文、国ごとの天気を載せます。航海・撃沈の順位は公開されている上位 3 国だけです。競売は従来の最大 12 件から全件を載せるようにします。
- 公開地図に出る商船の所属・HP・積荷、近海の漁船と港の魚の残り、中立銀行の決まりと銀行全体の残高・貸せる額も載せます。どのプレイヤーがログインしても同じに見える、マスごとの天気・海流と遠洋の漁場・残り・休漁もまとめます。
- 軍艦と陸軍の配置・編成・兵力は、公開記録に書かれたものだけを載せます。記録から現在位置を推し量って追加することはしません。機密記録・CPU の計画・極秘の掲示板・CPU の意思表示、公開地図で伏せた施設の正体、商船の行き先や航路、遠洋漁船の行き先、銀行の個別口座は載せません。
- 頁は 3 つの言葉で表示し、長い表は見出しで開閉できます。マスごとの天気・海流は頁には要約と読み方を、号の JSON には各マスの値を載せます。号はこれまでどおりターン更新の後に保存し、閲覧だけでは世界を進めません。
- 各ターンの数値・地図・公開記録は更新後に保存し、HTML への描画は最初に閲覧したときに行います。同じ号と言語の描画結果は再利用します。
不具合と画面の直し
- 新しく現代都市へ変える場所は、隣接6マスに自国・他国の現代都市がない場合だけにします。既存の隣接都市は保持します。CPU候補も同じ条件で選びます。地名を新しく付けたり変更したりできる場所は、現代都市または有効な首都です。以前に付いた他の地名は消しません。
- 艦船の移動・停泊・入出港・艦船同士の攻撃や沈没で、下の地形抵抗力が変わる問題を直します。見えない船の存在も抵抗表示から漏らさないようにします。正規の対地攻撃や地形変更は別に処理します。
- 他国陸軍の色は、陣営画面では同じ陣営が緑、いずれかの陣営国と交戦中なら赤、中立は白にします。個人の開発画面では友好国も緑です。交戦判定を優先し、視認範囲は変えません。
- 装甲兵などが 1 ターンに 3 マス以上進む問題を直します。 移動済みの回数を部隊と一緒に移し、2 歩の兵種は 2 マスまでに戻します。同じターンに乗船・上陸を繰り返したり、2 歩動いた後にさらに救援の交代で進んだりすることも防ぎます。1 歩の兵種、戦闘後や退却時の従来の扱いは保ちます。
- 建国に使える場所がなくなった後も、新規参加のボタンが出ていた問題を直します。ターン更新後に空き場所を数え、なくなれば案内を閉じ、空きが戻れば再び案内します。設定見本の国数上限は 99 です。国数上限や管理人による受付停止は引き続き優先します。
- CPU が港のすぐ隣へ軍港を重ね、民間船の入口を狭める問題を直します。 軍港は自国の港・軍港から既定で 3 マス以上離し、どの国の民間港でも入口の水には造りません。間隔を守れる場所がなければ増設しません。間隔は設定で変えられます。既存の混雑には別の建造水面、自国の遊休船の移動、新しい軍港を比較します。不要な重複軍港を撤去する場合も、唯一の造船機能や使用中の港を失わない条件に限り、通常の命令と費用を使います。人間の建設命令に新しい間隔制限は加えません。
- 首都付近などで命令の窓が地図や説明表示の下へ隠れる問題に対し、命令の窓を手前へ出すように直します。
- 公開統計は、全体と国ごとに 3 つの言葉の頁を
stats/の下に置き、頁の中でグラフ・資源・並べ方を切り替えます(1.66.10 と同じ)。民間の資源在庫のグラフは、実際に記録が始まった時点から横軸を表示します。記録されたゼロと、記録がない期間は区別します。 - 燃料不足の精製所で、作れる燃料より多い量を運転用として数え、ターン更新が止まる問題を直します。実際に作れる量に合わせて計算し、運転費を払えないときは生産を控えます。燃料の無料補給や消費率の変更は行いません。
- 1.66.2 の記者クラブの保存修正と、1.66.3 の民間船が混雑した港の手前まで進んで待つ修正も含みます。
- 公式 1.66.4〜1.66.10 の修正を統合します。統計は
stats/、記者クラブはpress/の公開ファイルへ案内し、最近の出来事・観光・掲示板・市場表示の生成結果を条件が合うときに再利用します。保存後の内容が古い待機頁に戻り続けないよう、完成した頁の識別子と公開時点を確認します。公開閲覧だけでターンを進めません。 - 別の世界を使う見積もりが元の更新状態に計算結果を持ち込む問題、古い呼び出し方を時刻コールバックと誤認する問題、公開リンクの HTML エスケープ不足を直します。輸送では、新しい目的地が効く前に先行する駆逐艦を必要に応じて一時待機させ、通常の費用・命令枠・所有権の確認を通します。
運営の方へ
既存世界の一度きりの処理を引き継ぎます。 1.67 とその修正版では、経済配布・燃料開始は従来の 1.64、森・通信の名前の修理は従来の 1.65 の印を使います。既に済んだ処理を版番号だけで繰り返しません。印が無い世界の初回処理は従来どおり行います。
- 海路の局所修復を登録商船・漁船と限定した駆逐艦の経路へ広げ、計画時の燃料見積もりに 10% の余裕を持たせます。実際の燃料消費を 10% 増やす変更ではありません。利用する道・距離・採用する命令は変わる場合があり、全変更でゲーム結果が同じとは主張しません。
- 内部の古い呼び出し口を整理し、必要な部品を必要なときに読み込むようにします。都市経済の共通集計、海路の地理計算、公開地図の共通表示を再利用し、同じ計算の繰り返しを減らします。
- 対応の基準は Perl 5.26.3・JSON::PP 2.97001 の CGI です。JSON::XS は任意の補助で、必須にはしません。
version1.66.11 (2026-10-08)
アーカイブ: hakoS-1.66.11-20261008.tar.gz / SHA256(先頭16文字): 108c67553984480d
version1.66.10 から、遊ぶ人から届いた報告への対応と、施設ごとの軍団の設定を入れました。保存形式と dataVersion(33)は変えません(世界の帳簿に、無くてもよい欄を 1 つ足しました。無ければ今までと同じ動きです)。
- 外交援助・定期取引の「計画へ保存」で、前から入れていた命令を消さないようにしました。 選んだ番号へ差し込み、後ろの命令を 1 つずつ下げます。保存すると、読み直さなくても命令の欄にすぐ出ます。 - まだ送っていない計画の変更があるとき、末尾の命令が押し出されるとき、別の画面で計画が変わったときは、命令を消さないように保存を止めて知らせます。
- 地図の表示の切り替えで、数が重ならないようにしました。 「部隊」の表示ではミサイル着弾数を出さず、「ミサイル着弾数」などほかの表示では部隊の軍団の番号を出しません。
- 計画送信の後は、計画を変えるまでボタンを押せない、前の形に戻しました。
- 施設ごとの軍団の設定を足しました。 軍設定の画面で、防壁・首都・現代都市ごとに、部隊設置で置く軍団の番号を選べます(既定は 1 で、今までと同じ)。 - 保存しても、今いる部隊は変わりません。次の部隊設置から使います。 - 首都が現代都市でもあるときは、首都の番号を使います。兵站基地は今までどおり、基地の軍団を使います。
version1.66.10 (2026-10-08)
アーカイブ: hakoS-1.66.10-20261008.tar.gz / SHA256(先頭16文字): ccbb9c33b4c4308b
version1.66.9 から、次を直しました。保存形式と dataVersion(33)は変えません。遊びの決まりと結果は変わりません。
- 統計の静的な頁を、トップの置き場ではなく
stats/の下に置くようにしました。 全体はstats/index.html、国ごとはstats/<番号>.htmlです(英語・中国語は.en・.zh-TW付き)。中身は今と同じです。 - これまでトップに置いていたstats.html・stats-<番号>.htmlなどは、当てた後の最初のターンの更新の終わりに、ゲームが作った物だけを自動で片付けます。 - 前のhako-graph.cgi?…のアドレスは、新しい置き場の頁へ転送します。
version1.66.9 (2026-10-08)
アーカイブ: hakoS-1.66.9-20261008.tar.gz / SHA256(先頭16文字): bf3d57cf5443e639
version1.66.8 から、次を直しました。保存形式と dataVersion(33)は変えません。遊びの決まりと結果は変わりません。
- 記者クラブの頁を静的な頁にしました。 号ごとの頁、バックナンバーの一覧、最新号の入口、JSON と地図のデータを、
press/の下の HTML・JSON として置きます。中身は今と同じです。 - 号の頁は、最初に開いた人のときに作られ、その後は作り直しません。一覧と最新号の入口は、ターンの更新の後に最初に開いた人のときに作り直されます。 - 前のhako-main.cgi?Press=…のアドレスは、その頁へ転送します。
version1.66.8 (2026-10-08)
アーカイブ: hakoS-1.66.8-20261008.tar.gz / SHA256(先頭16文字): c22e2d26e99d2e2f
version1.66.7 から、次を直しました。保存形式と dataVersion(33)は変えません。遊びの決まりと結果は変わりません。
- 民間の資源在庫の推移のグラフは、記録が始まったターンから横軸を描くようにしました。 記録が始まる前の空いた期間は描きません。記録された 0 は値のまま描き、途中で記録が抜けた所は今までどおり線を切ります。ほかのグラフは今のままです。
- 開発画面を軽くしました。 市場の欄の「全部の国の取引の見込み」は、一度計算した物を、見込みに関わる世界の状態が変わるまで、みんなの開発画面で使い回します。命令の入力やコメントの保存では作り直しません。表示は今と同じです。自国から見た地図のデータも、少し速く作るようにしました。
version1.66.7 (2026-10-08)
アーカイブ: hakoS-1.66.7-20261008.tar.gz / SHA256(先頭16文字): 4f68f1daef6cae0a
version1.66.6 から、サーバーの負荷を下げました。保存形式と dataVersion(33)は変えません。遊びの決まりと結果は変わりません。
- 統計グラフを、国ごと・言語ごとの静的な頁にしました。 推移グラフ、民間の資源在庫、国別ランキングの並べ替えは、頁の中で切り替わります(サーバーに問い合わせません)。 - 頁は、ターンの更新の後に最初に開いた人のときに作られ、その後はみんな同じ頁を見ます。 - 前の
hako-graph.cgi?…のアドレスは、その頁へ転送します。 - 最近の出来事と記者クラブの頁は、ターンの更新の後に最初に開いたときに作るようにしました。 ターンの更新が少し短くなります。最初に開いた人は、少し待つことがあります。
- 国の観光の頁(ログインしていないとき)と掲示板の一覧は、世界や掲示板が変わるまで、作った物を使い回します。
- 民間の船の計画と海の道探しを、少し軽くしました(結果は同じです)。
version1.66.6 (2026-10-08)
アーカイブ: hakoS-1.66.6-20261008.tar.gz / SHA256(先頭16文字): 75ddf07b442c7376
version1.66.5 から、次を直しました。保存形式と dataVersion(33)は変えません。
- トップの頁がエラーで開けなくなる件を直しました。 鉱山のマスに他国の兵が多くいるとき、町の経済の見積もりが、まだ読み込んでいない部品の関数を呼んで止まっていました(10/8 0:00 のターン更新の後に起きました)。使うときに部品を読み込む入口の一覧に、その関数を足しました。 - ターンの更新は止まっていませんでした。遊びの決まりと結果は変わりません。
version1.66.5 (2026-10-06)
アーカイブ: hakoS-1.66.5-20261006.tar.gz / SHA256(先頭16文字): a630a934a1737a83
version1.66.4 から、次を直しました。保存形式と dataVersion(33)は変えません。
- 1.66.4 で直したターン更新の止まり方が、ほかの命令でも起きないようにしました。 定期の貿易の命令(手間 0)の後に同じ国が続けてほかの命令を出したときも、競売の出品と同じ形で更新が止まるおそれがありました。命令を順に処理している間は、どの処理からも「今どの国の命令を処理しているか」の印を上書きできないようにしました。 - 遊びの決まりと結果は変わりません(本番の写しで 1.66.4 と出来上がりが同じことを確かめました)。
version1.66.4 (2026-10-06)
アーカイブ: hakoS-1.66.4-20261006.tar.gz / SHA256(先頭16文字): 742fb78e81f97c56
version1.66.3 から、次を直しました。保存形式と dataVersion(33)は変えません。
- ターン更新が途中で止まり、ターンが進まなくなる件を直しました(10/6 12:00 のターン更新)。 競売に出品した国が、同じターンに続けてほかの命令を実行すると、その次の命令で更新が止まっていました。出品・入札の処理が、ターン更新が今どの国の命令を処理しているかの印を古い値で上書きしていたためです。ターン更新の中では上書きしないようにしました。 - 競売の決まり(出品・入札・落札・手数料)は変わりません。 - 止まっていた間のターンは、当てた後の最初のアクセスで進みます(止まっていた間に打ち込んだ命令はそのまま使われます)。
version1.66.3 (2026-10-05)
アーカイブ: hakoS-1.66.3-20261005.tar.gz / SHA256(先頭16文字): e4372a53b1e55059
version1.66.2 から、次を直しました。保存形式と dataVersion(33)は変えません。
- 民間の船が、行き先の港の入口が埋まっていると、港のずっと手前の途中で何ターンも止まってしまう件を直しました。 民間の船は毎ターン、行き先の港の隣の空いた水のマスまでの航路を作り直します。入口の水のマスが全部ほかの船で埋まっていると航路が作れず、そのときいた場所(港の 20 マス以上手前のこともある)で止まっていました。 - 入口が埋まっているときは、港から 3〜5 マスの空いた水のマスまで進んで待ちます。入口が空いたら港へ向かいます。 - 港から 3〜5 マスにも空いた水のマスが無いときは、今までどおりその場で待ちます。待ち始めて 6 ターンたったら取引をやめて母港へ帰るのも、今までどおりです。 - 変わるのは、航海中の船が航路を作り直すときだけです。どの港と取引するか(入口の埋まった港とは今までどおり新しい取引をしない)、帰る港の選び方、国の船の動きは変えません。 - 浅瀬は小型の商船が通れるマスです。浅瀬の上にいること自体で止まることはありません。
version1.66.2 (2026-10-05)
アーカイブ: hakoS-1.66.2-20261005.tar.gz / SHA256(先頭16文字): 597a6f5db54a28f4
version1.66.1 から、次を直しました。保存形式と dataVersion(33)は変えません。
- 記者クラブの号が保存されず、記者クラブの頁が「No saved issue」としか出なかった不具合を直しました。 記者クラブは、ターン更新の終わりにその回の号を保存します。保存の途中に、文字だけの値(項目の名前・言葉の名前)を JSON にする所がありました。本番の Perl 5.26.3 に付いている JSON::PP 2.97001 は、この形を許す設定(allow_nonref)が無いと止まります。そのため 1.66 から、ターン更新のたびに記者クラブの保存だけが止まっていました。ターン更新そのものと、公開の記録・統計・設定一覧などほかの頁の更新は正常に行われています。 - 当てた後の最初のターン更新から号が保存されます。最初の号には、残っている公報から最大 17 ターン分の記録が入ります(記者クラブの設定の説明のとおり)。
version1.66.1 (2026-10-04)
アーカイブ: hakoS-1.66.1-20261004.tar.gz / SHA256(先頭16文字): 0e8025544c815460
version1.66 から、次を直しました。保存形式と dataVersion(33)は変えません。
- 民間の商船(民間の海運の船)を、国の艦隊に属さない船として扱うようにしました。 民間の商船はどれも艦隊番号 0 を持つため、軍艦も艦隊 0 に置いている国では、軍艦と民間の商船が同じ艦隊にいるように見えていました。 - 地図のカーソルの説明で、民間の商船には艦隊の名前・番号を付けず「民間」と出します(右上の艦隊の番号も付けません)。持ち主の国・HP・積荷の表示は今までどおりです。 - 民間の船しかいない艦隊は、空いた艦隊として扱います(新しく造る船の行き先など)。 - CPU の国が艦隊を数えるとき(海外への進出の輸送船・戦争の艦隊・陣営の援軍の船)、民間の商船を数えません。CPU が艦隊 0 を使えるようになります。 - 民間の商船の動き・積荷・費用と、国の軍艦・国の商船の扱いは変えません。保存されている艦隊番号も書き換えません。
- 1.66 の記録の補足: 管理人室の「国庫・民間在庫・予備兵・陣営を訂正する」では、民間の現金と原産地別の在庫を見るだけでなく、訂正もできます。
version1.66 (2026-10-04)
アーカイブ: hakoS-1.66-20261004.tar.gz / SHA256(先頭16文字): 61c3dfa9d8f747b5
version1.65.5 からの変更。dataVersion は 33 のままですが、名前や民間の帳簿に欄が増え、記者クラブの控えも保存します。当てる前に稼働中の data/ を丸ごと控えてください。
当てた後の最初のターン更新
- CPU の国を 10 か国追加し、陣営 2 つと経済同盟 2 つに 5 か国ずつ入れます。陣営と経済同盟は別々にくじで分け、同じ組み合わせにはしません。国・首都・陣営・経済同盟の名前は、画面の言葉に合わせて表示します。部隊のいる建国地点は使いません。名前の重なりや場所・陣営の空き不足などで足せないときは、ターン更新を止めず、管理人の記録
CPU_ADD10_SKIPに理由を残し、次のターンにまた試します。追加が済んだら繰り返しません。 - 今ある艦隊で軍艦と国の商船が混ざっていれば、商船を空いた艦隊へ移します。軍艦の艦隊と移動先、商船の積み荷や航路は保ちます。空き不足や港の約束などで分けられないときも、商船は軍艦の移動先に従わず、艦隊の移動命令は軍艦に効きます。この分け直しは 1 度だけです。
- すでに滅んだ国の名前を、残る統計から 1 度だけ拾って記録の表示に使います。分からない名前や訳名は作りません。過去の燃料・民間在庫などの配布と修理は、元の配布済みの印を使い、1.66 になっただけでは繰り返しません。
港と船
- 港の入口で民間の商船が固まる問題を直しました。船がいるマスも通り抜けられる道を探しますが、敵対する船は通り抜けません。外国の仮の母港で待つ船、帰りの行き先や道がない船も、唯一の入口を塞いでいれば隣の空いた水へ退きます。
- 荷も行き先もない荷待ちの船は、本国の母港でも外国の仮の母港でも、入口を離れて待ちます。港から 2 マスの範囲で隣へ 1 歩だけ動き、ほかの港・軍港の入口には待ちません。空きがなければその場に残ります。この退避に費用・燃料は使わず、港の容量や荷を扱う順は変えません。
- 民間の海運の上限を、1 国につき小型商船 8 隻・大型商船 8 隻にしました。荷・輸送の約束・行き先がなく、自国の母港から 2 マス以内の同じ場所で 20 ターン待った船は解体し、建造費の半分と船内の残りを民間へ戻します。戦争中、外国の仮の母港、帰国中や道がなくて動けない船は解体しません。当てる前の待機期間は数えません。
- 新しく造る軍艦と国の商船も、互いの船がいない艦隊へ分けます。混ざる艦隊への編入は断ります。閉じている国の商船の建造命令は開きません。
- 自国の民間の養殖場の上に軍港を建てられるようにしました。養殖場は取り払い、建造費の半分(既定 20 億円)をその民間へ戻して帳簿に残します。他国の養殖場には建てられません。
海軍
- 通常・退治の軍艦が、見えている交戦国の陸軍へ自動で援護射撃を行うようにしました。一斉攻撃の指定を先に使い、自動で選ぶときは海戦・怪獣を先にします。陸軍の中では、自国の土地にいる敵、砲兵、近い敵の順です。1 隻 1 ターンに 1 回の射撃で、巡航・停止や潜水艦には追加しません。
- 駆逐艦も隣の陸軍へ 1 発撃ちます。威力は巡洋艦の普通の弾の 25% で、町や施設への被害は加えません。巡洋艦・戦艦・空母の射程、発数、費用は今までどおりです。
- 機雷の設置・除去の成功記録では座標を隠します。一斉攻撃は「指令傍受」として、実際に撃った艦の種類と位置を公開します。艦の通常の攻撃記録は今までどおりです。
陸軍と籠城
- 船から浅瀬へ、どの兵種も降ろせるようにしました。歩兵・山岳兵・砲兵・装甲兵は、降りた後は陸へ上がるか船へ戻るだけで、浅瀬から浅瀬や海へ歩いて渡れません。海兵・空兵は今までどおりです。砲台は降ろせても自力では動けません。
- 首都と現代都市にも軍団 1 の部隊を置き、補充できるようにしました。防壁はどの兵種も置けて、建てる前の部隊も残します。防壁の部隊は攻撃・反撃・補充ができますが、移動・交代・撤退、船への乗り降りでは出入りできません。
- 首都・現代都市は、ミサイルと艦砲の人口被害で最低 1,000 人を残します。現代都市は地震・津波・噴火・火災でも地形と最低人口を残し、兵への被害はそれぞれ従来の決まりに従います。首都の災害を免れる決まりは今までどおりです。食料不足・隕石・自爆などはこの人口保護の対象にしません。陸軍による占領はできます。
- 新しく建国する場所を自動で選ぶときは、7 マスの中に部隊がいる地点を避けます。遊ぶ人が地点を指定して建国するときは、その場所の他国部隊を通常の撤退と同じ扱いで戻します。
滅んだ国と占領
- 滅んだ国の民間の現金・在庫・所有する荷などを、消滅を見つけてから 12 ターン後に中立金融が回収します。品物を換金して借金へ充て、残りは備えに回します。預金の返済義務も整理します。亡命政府は生きている国として扱い、第三国の持ち物は取りません。
- 港・軍港・現代都市・首都を占領したとき、10% の確率で対象残高の 10% を略奪します。1 回の上限は現金合計 100 億円、品物は各資源合計 50 単位です。他国の預け荷や預金は取らず、受け取る側の上限を超える分も取りません。最低の取得量は設けません。
経済と外交
- 人間の国で弾薬の買い戻しを「必要に合わせる」にすると、実際の軍の一斉射撃量から平時 3 ターン分、危険時 6 ターン分を備えるようにしました。従来の最低備えと最近の消費による目標のうち、いちばん大きい量を使います。「手元に残す量まで」の決まりは変えません。
- 交換を海で運ぶ民間船は、荷を降ろした港に同じ交換の相手側の荷があれば、先に帰り荷を積みます。国の輸送船は降ろした後、実際に積んだ港へ自動で戻ります。1 つの荷のかたまりも、空き船・港の処理量・運賃の範囲で複数の船へ積めます。
- 交換を受ける画面に、箱数と必要な積載回数の下限を出します。実際の航路・入港許可・船の取り合いなどは含まないため、期限までに届く保証や船の予約ではありません。
- 安全限界を、すべての国の陸地合計が世界の陸地の 95% 以上になったときにしました。限界以上では普通隕石の確率を 1% から 2.3%、巨大隕石を 0% から 0.2% に上げます。埋め立てを使わない設定は今までどおりです。
CPU の国
- 食料の確保と緊急の守りを通常の開発より先にし、守りや陣営への援助で中断した作戦は、解除後に状況を確かめて続けます。建設場所・軍団・艦隊・資源の約束の重なりを避け、使えない整地を候補から外します。候補が多いときも食料や守りの手を残します。
- 陸軍は占領・山・火力・突破・守り・上陸などの役目に合わせて兵種を選び、国境の最前列から基地と兵を用意します。攻めに出る前に 25,000 人を目指して補充し、砲兵の射程や撃ち返しも考えます。高速の兵站基地建設は命令がないため作りません。
- 首都は平時から、ほかの現代都市・防壁は隣に敵がいるか守備兵がいるときに守ります。目標 5,000 人へ 1 回 1,000 人ずつ置き、攻撃用の配置では予備兵 5,000 人を残します。都市を守る軍団を攻めに出さず、防壁で動けない部隊には移動の指示を出しません。
- 普通港は直近 10 ターンの中で 2 ターン続けて混雑したときに足します。軍港は戦争中か、見える非友好国の軍艦が沿岸の 2 マス以内にいるときに足します。上限は普通港 4、軍港は平時 2・戦時 3、建てる間隔は共通で 10 ターンです。
- 公開された自爆の予告から軍艦と陸軍を離し、味方を攻撃した位置に今も見える敵陸軍を軍艦の目標にします。目標指定は 1 国 1 ターンに 1 か所です。命令枠や地形などで退避できない場合もあります。自国の養殖場の上の軍港も候補にします。
- 名前のない現代都市・超都市に、国ごとの地名一覧から 1 国 1 ターン 1 都市まで名前を付けます。既存の名前と首都、人間の国は変えません。国旗の選択も 24 種類から 60 種類へ増やします。
記者クラブ
- 公開情報をまとめた記者クラブの頁とバックナンバーを足しました。国・戦争と公開された損害・主な都市と占領・滅亡・抵抗力の低い土地・競売・貿易・公報・そのターンの公開地図を見られます。ターン更新後の控えを読むので、閲覧だけでは世界を更新しません。
- 導入前の今期の公報は、残る最大 17 ターン分だけを取り込みます。再戦は同じ国どうしの合計とし、当時の首都と言い切れない占領は町として扱います。今期全体の履歴を復元したものではなく、公開記録に人数がない損害は人数へ換算しません。
- 抵抗力は 50 未満の公開マスを載せます。古い公報を毎回作り直さず、新しい分を足す形で控えの保存を軽くしました。
画面と知らせ
- 管理人室で国庫の資金・食料・8 資源を訂正し、民間の現金と原産地別在庫の現在量を見られるようにしました。銀行の残高、船・漁業・外交輸送などの件数も表示します。訂正は増減ではなく訂正後の総量を入れ、空欄はそのまま、0 は 0 に直します。銀行残高・船・貨物の直接訂正は足していません。
- 閉じた取引所の行と、閉じた命令の予定に残っていた昔の操作名・数量・座標・宛先を外しました。管理画面で言葉を切り替えても下書きと設定一覧を保ちます。
- 民間の取引は「見込み(承諾不要)」とし、毎ターン自動で決まることが分かる表示にしました。外交依頼の期限切れは両国の持ち主に知らせ、期限切れ・取消・輸送失敗の外交記録に依頼番号と援助・交換の種類を出します。
- 外交依頼の期限の 3 ターン前に、両国の持ち主へ 1 回知らせます。これは仮の既定です。すでにその時点を過ぎた依頼へ、さかのぼって知らせることはありません。
- 滅んだ国も保存した名前で記録に表示し、名前が残っていないときだけ国番号で表示します。養殖場は造った国の名前・番号・色で表示します。土地の持ち主や面積の数え方は変えません。
- スマホで統計・取引・観光・持ち主の画面・掲示板・記者クラブ・版の頁などが横へはみ出す所を直しました。表のまま字を折り返し、図・絵・入力欄を画面の幅に収めます。画面の幅の選び方は今までどおりです。
直し
- 浅瀬の地形を掘削しても深くならず、国の面積まで減っていた問題を直しました。掘削後は持ち主のない深い海になります。
- 外交輸送の見積もりが、見積もり用の別の世界ではなく本物の世界の帳簿を触っていた所を直しました。
- 設定一覧の資源生産比率が現在の設定にそろわない所、日本語の記録に表示用の札が残る所、軍艦の命令記録に余分な区切りが付く所を直しました。
管理人向け
- 次の 2 つの道具は配布物(丸ごと・差分)に入れず、管理人へ別に渡します。使うときだけ設置先の
tools/に置きます(tools/はブラウザから読めない場所です)。1.66 では港の直しと最初のターンの分け直しが入るので、通常は要りません。 - 港の入口を退かせる道具: 更新を止めて
perl tools/unblock-port-entrances.pl --data-dir /設置先/dataで確認し、書き換えるときだけ--applyを付けて 1 回実行します(費用・燃料なし、保存前に控えを作成。終了 2 は見送りありで、一部を退かせている場合もあります)。 - 艦隊の混ざりを直す道具: 更新を止めて
perl tools/fix-fleet-merchants.pl --data-dir /設置先/dataで確認し、書き換えるときだけ--applyを付けて 1 回実行します(保存前に控えを作成。艦隊の隻数上限を変えた設置では--max-fleet-shipsも合わせます)。 - 丸ごとの配布物には、組み立てのたびに新しい会議室の鍵(
room-secret)が入り、その鍵で空の会議室を初期化します。差分の更新は本番の鍵に触れません。
新しい値や切替は、次の設定場所でそれぞれ 1 か所から変えられます。兵力の設定値は 100 人単位です。遊びの釣り合いを最適と測って決めた数ではなく、控えめな既定や仮の既定も含みます。
| 設定場所 | 項目 | 既定 |
|---|---|---|
hako-init.cgi の HcpuAdd10Enabled | CPU 10 か国の追加 | 1(有効)、0 で停止 |
init-game.cgi の HcivilPortWaitAside | 港の入口から荷待ちを分ける | 1(有効) |
hako-init.cgi の HcivilWaitAsideRadius | 港の荷待ちの距離 | 2 マス |
init-game.cgi の HcivilSeaSmallLimit・HcivilSeaLargeLimit | 民間海運の型ごとの上限 | 1 国につき小型 8・大型 8 隻 |
init-game.cgi の HcivilSeaIdleTurns・HcivilSeaIdleRadius・HcivilSeaScrapInWar・HcivilSeaScrapPercent | 仕事のない海運船の解体 | 20 ターン(0 で停止)・母港から 2 マス・戦争中は解体しない・50% 返金 |
init-game.cgi の HnurseryNavyPortRefundPercent | 養殖場を軍港に替える返金 | 建造費の 50% |
lib/config/init-navy.cgi の armySupport | 自動援護射撃 | 有効・見える敵だけ・海戦を先に・陸軍では自国領内と砲兵を先に |
同 armySupport の駆逐艦の値 | 陸軍射程・発数・威力 | 1 マス・1 発・巡洋艦の 25% |
init-game.cgi の HsiegePopulationMin | 首都・現代都市の保護人口 | 10(1,000 人) |
init-game.cgi の HcivilBankGoneTurns | 滅亡後の民間資産回収まで | 12 ターン |
init-game.cgi の HfallenLootPercent・HfallenLootSharePercent・HfallenLootCashCap・HfallenLootGoodsCap | 占領時の略奪 | 確率 10%・対象の 10%・現金計 100 億円・各資源計 50 単位 |
lib/domain/hako-ai.cgi の HaiAmmoPeaceTurns・HaiAmmoDangerTurns | 一斉射撃量から備える弾薬 | 平時 3・危険時 6 ターン分(人間の「必要に合わせる」も共用) |
hako-init.cgi の HdiplomacyReturnCargo・HdiplomacyStateReturn・HdiplomacyMultiShip・HdiplomacyEstimate | 民間船の帰り荷・国の船の帰港・複数船への積載・受諾前の見込み | 各 1(有効)、各 0 で停止 |
init-game.cgi の HdisFallBorderRatio・HdisMeteo2・HdisHugeMeteo2 | 安全限界・限界以上の隕石確率 | 0.95・23/1000・2/1000 |
init-game.cgi の HaiR02Settings | CPU の劣勢判定・予算不足の連続上限・候補数 | 兵力比 0.8 未満・3 回・64 件(各系統最低 1 件) |
同 HaiR02Settings | CPU の見積もり・道探し・保存する任務・宣戦準備 | 1 候補の 1 ターン分・97,200 マスか 16 回まで・1 組・食料 6 ターン分と資金 300 億円 |
lib/config/init-army.cgi の HaiArmySettings | 前線と攻撃前の兵力・平時の増員・食料条件 | 250/250(各 25,000 人)・50(5,000 人)・4 ターン分 |
同 HaiArmySettings | 兵種を変える改善・砲兵射程の評価・撃ち返しの評価・留まる不利 | 1.25 倍・1.25 倍・さらに 1.5 倍・敵砲兵 1 部隊につき評価 100 減 |
同 HaiArmySettings | 新基地・増員・待機の優先値、2 列目の条件 | 94・96・95、国境 1〜6 マス、または見えている戦争相手の兵力が自軍の 1.2 倍を超えるとき、基地最大 1 か所 |
同 HaiArmySettings の siege | 籠城の守り・攻撃用配置後の予備・1 回の配置 | 50・50・10(5,000 人・5,000 人・1,000 人) |
init-game.cgi の HaiPortSettings | CPU の港・軍港・間隔・混雑・敵艦 | 港 4・軍港平時 2/戦時 3・10 ターン・直近 10 ターン内で 2 ターン連続・2 マス |
同 HaiPortSettings の navy・fishfarm_navyport | 自爆からの退避・敵陸軍の目標指定・養殖場上の軍港 | 各有効、退避の優先値 100・目標指定 89 |
init-game.cgi の HcpuCityNamesPerTurn | CPU の都市の命名 | 1 国 1 ターン 1 都市、0 で停止 |
init-game.cgi の HpressResistanceThreshold | 記者クラブの低抵抗力 | 50 未満 |
init-game.cgi の HpressHistoryPolicy | 記者クラブの履歴 | 再戦は国の組で合計・導入前は残る最大 17 ターン・首都未確認の占領は町 |
重さ
- 1.66 は内部の作りを PHP への移し替えに向けて整えたため、ターン更新とトップの頁は 1.65.5 より約 2 割重い見込みです。計画の比較ではターン更新が 2.87 秒から約 3.5 秒、トップが 0.41 秒から約 0.5 秒です。遊ぶ場所ごとの時間を保証する数ではありません。速くする直しは 1.67 以降に進めます。
version1.65.5 (2026-09-30)
アーカイブ: hakoS-1.65.5-20260930.tar.gz / SHA256(先頭16文字): eca0a79243db060d
version1.65.4 から、次の 3 つを直しました。保存形式と dataVersion(33)は変えません。
- 自爆や巨大隕石などの広域被害で船が沈んだとき、船のいたマスを陸にしてしまう問題を直しました。沈没後の海・浅瀬を読み直し、2 マス目の浅瀬もそのまま残します。ほかの地形の扱いは今までどおりです。
- 鉱山の落盤の確率を半分にしました。レベル 1 は 11% から 5.5%、レベル 10 は 2% から 1% です。
- 更新後の最初のターン更新で 1 度だけ、広域被害で荒地になった (22,20) を海に戻します。荒地・持ち主 0・部隊なし・埋蔵なしのすべてがそろう場合だけ、地形を海、値を 0 にします。条件がそろわなくても
data/wide-damage-fix.1.65.5を印にして、2 度目は動かしません。公開のログは出しません。
version1.65.4 (2026-09-29)
version1.65.3 から、CPU の国が中立の鉱山系の地形(鉱山・採石場・炭坑・露天鉱脈・ウラン鉱山・大鉱山)を整地で取る候補に選び、実行側で整地できずに毎ターン中止され続ける問題を直しました。CPU は中立の土地を広げる候補から鉱山系を外し、ほかの空き地か別の行動を選びます。鉱山を整地できない決まりは変えていません。保存形式と dataVersion(33)は変えません。
version1.65.3 (2026-09-28)
version1.65.2 から、食料不足の国が漁業の前に国庫と民間の帳簿を合わせると世界のターン更新が止まる問題を直しました。国庫の食料が負でも、出どころ別の在庫は実際にある量の 0 までだけ引きます。国庫の負値はそのターンの飢餓処理へ渡します。ほかの資源が負になった場合も同じように扱います。保存形式と dataVersion(33)は変えません。
1.65.1 から直接当てる更新も用意しました。その更新には 1.65.2 の臨時の弾薬配布も含まれます。すでに 1.65.2 を当てた世界では、配布済みの印を保ったまま更新してください。
version1.65.2 (2026-09-28)
version1.65.1 からの変更は臨時の弾薬配布だけです。更新後の最初のターン更新で1度だけ、滅んでいないすべての国(人間・CPU)の国庫へ弾薬を200ずつ加えます。消滅予定の国は除き、国庫の資源上限で止めます。
配布は自国産として数え、資源帳簿に外部からの流入として記録し、世界の歴史に3言語で1行知らせます。data/ammo-grant.1.65.2 を印にし、配れた国が0でも印を残します。版が進んでも再配布しません。1.64の経済配布の印とdataVersion(33)は変えません。
version1.65.1 (2026-09-27)
アーカイブ: hakoS-1.65.1-20260927.tar.gz / SHA256(先頭16文字): acfff139f218538e
version1.65 からの変更。dataVersion は 33 のままで、保存の形は変えていません。当てた後の最初のターン更新で 1 度だけ動く処理はありません。
CPU の陣営の援軍
- 陸で隣り合わない正式な陣営の仲間が宣戦されたとき、CPU の国は予備兵を軍艦で送るための軍港と駆逐艦を造ります。軍港が無ければ軍港、軍艦が守りに残す数より 1 隻多くなるまで駆逐艦で、1 ターンに 1 つです。仲間が攻められている間は、蓄えの下限を割っても、造るのに要る分があれば造ります。
- 仲間の近くに上陸できる中立地があるうちは、海兵を上陸させて兵站基地を置き、陸路でつなぐことを先にします。海兵を運ぶ船は援助に使いません。軍艦を持たない国も、陸路づくりのための船を造ります。陸でつながれば、予備兵は陸路で送ります。
- 海兵の部隊を置く所が無いときは、自国の平地に兵站基地を建てます。平地が無ければ荒地か森を整地し、それも無ければ、首都を除いていちばん人の少ない町を整地して建てます。人口の地形が 5 マスより少ない国は、町を整地してまで海兵を出しません。
- 自分から戦争に加わった国も、遠い仲間へ予備兵を送ります。自国が宣戦されたときと、敵の部隊が近くに見えるときは送りません。守りに残す兵の決まりは今までどおりです。
- 港の隣の水が 1 マスの入り江でも、空いていれば船が入って兵を積み、降ろします。仲間の軍港にも降ろせます。迎えに行く船は近い船から選びます。
- 船が向かう岸は、海の道でたどり着ける所を近い順に探します(1 隻 1 ターンに 4 か所まで)。海兵の部隊も、その岸の隣まで陸を歩いて落ち合います。
画面
- 命令の分類を整理しました。おすすめは優先・開発・建設・攻撃・運営・海軍・交易・外交の 8 分類です(命令が 1 つだけの分類と「深さ」をなくしました)。目的ごとの 9 分類と今までの並びも、開発画面の「命令の分け方」で選べます。残骸の回収も命令の一覧から選べます。
- スマホの幅で画面を組むようにしました(今までは約 980 ピクセルで組んでから縮めていたので、字が小さくなっていました)。パソコンでは国一覧などの表を地図と同じ幅で中央にそろえ、スマホでは表の形のまま、入らない欄を次の段へ折り返します。開発画面の「画面の幅」で、自動(おすすめ)・パソコンの表のまま・今までどおりを選べます。
- 枠の中のスクロールを、全部の画面でなくしました(中身に合わせて伸びます)。トップの世界の歴史は新しい 10 行ほどを出し、残りは「もっと見る」で開きます。
直し
- 普通の隕石が、ハンデ B 以上の国(2 か国以上から宣戦され、相手の国力の合計が自国の 1.5 倍以上)にだけ落ちていたのを直しました。巨大隕石と同じく、ハンデ B の国を避けて、ほかの国に落ちます。説明書のハンデの一覧に隕石を足しました。
- 防衛施設の自爆の費用の説明を、3 倍から実際の 4 倍に直しました。
- 対人ミサイルの説明書に、ほかの国の部隊には軍事技術の分だけ多く効くこと、船には効かないこと、海底都市は海になることを書き足しました。
version1.65 (2026-09-27)
アーカイブ: hakoS-1.65-20260927.tar.gz / SHA256(先頭16文字): 58cc316871723e62
version1.64.3 からの変更。dataVersion は 33 のままですが、帳簿に 1.65 の新しい仕組み(包囲網・長い約束・遠洋漁業・養殖場など)の欄が増え、漁船の帳簿の形が変わります。当てる前に稼働中の data/ を丸ごと控えてください。当てた後の最初のターン更新で 1 度だけ起きることと、1.64.3 に戻すときの注意は、末尾の「管理人向け」にまとめました。
包囲網
- 一強の覇者が現れたときだけ、ほかの国が「包囲網」を組むようにしました。覇者は、中立地を含む世界のすべての陸地の 3 割以上を持ち、かつ 2 位の国の陸地の 2 倍以上を持つ国です。覇者が戦争中の相手から陸地を取る(1 マス 1 点)か、自分から宣戦する(1 回 10 点)と点がたまり、点は 48 ターンかけて 0 に減ります。覇者の点が 30 点以上になると包囲網ができ、覇者でなくなると解けます(点が減っただけでは解けません)。今の本番の世界(ターン 97 の写し)では、いちばん大きい国でも世界の陸地の 3.5% で、覇者はいません。
- AI の国(ルールの AI と LLM の国)は自分で入ります。人間の国には誘いの知らせが届き、命令 134(包囲網に加わる)で入り、命令 135(包囲網から抜ける)で抜けます。どちらも費用 0 で、ターンを使いません。覇者と同じ陣営の国と、覇者と友好の条約がある国は入れません。軍事の陣営の決まりが包囲網より先です。
- 包囲網の国と覇者の間では取引が止まり、互いの港に入れません。覇者が包囲網の国に宣戦すると、包囲網のほかの国(人間の国も)がその戦争に加わります(覇者と同じ陣営の国は加わりません)。包囲網の国力(人口 ÷ 100 + 陸軍の強さ)の合計が覇者を上回ると、AI の国は一緒に宣戦し、人間の国には知らせが届きます(宣戦するかは自分で決めます)。次の共同の宣戦は、覇者との戦争が全部終わり、前の共同の宣戦から 24 ターンたってからです。
- 包囲網の守りの参戦と共同の宣戦は、受ける宣戦の上限(3 か国)に数えません。ふつうの宣戦は今までどおり 3 か国までです。
- 包囲網があるときだけ、トップの陣営の表の下と、観光・開発画面の国の表に 1 行を出します。外交記録に、包囲網の結成・加入・脱退・解散・参戦の 5 つの種類を足しました。数は設定一覧の「包囲網」にあります。
民間の長い約束
- 民間どうしが、民間の船で運ぶ長い供給の約束を自動で結ぶようにしました。2 ターン続けて品物が足りない国と、2 ターン続けて 16 単位以上余っている国の間で結びます。値段は結んだときの取引の値段のまま変わらず、代金は届いたときに払われます。1 回の量は船 1 隻に積める量と、買い手の民間が今の現金で全部の回の代金を払える量までで、航路の往復のターン数(4 ターン以上)おきに 2 回届けます。約束の便はふつうの取引より先に出ます。船が詰まっていて今出航できない相手とは、そのターンは結びません。
- 各回の期限(間隔に 3 ターンの猶予を足したもの)までに届かなければ、届けられなかった側(ふつうは売り手)が残りの代金の 1 割を違約金として相手の民間に払い、約束はそこで終わります。違約は公開の外交記録に残ります。戦争・禁輸・港の閉鎖などでふつうの取引ができなくなったときは、違約金なしで止まります。約束の荷が海賊に奪われたときは違約にせず、買い手は届いた分だけを払い、約束は続きます。
- 開発画面の「貿易と港」で、自国の約束の一覧を見て、結んでよい相手(国ごと)と品物(品物ごと)を選べます。最初はすべて許しています。変えても、結んだ後の約束は終わりまで続きます。約束の一覧は「すべての取引」の頁でも見られます。続いている約束は世界で 32 件、1 国 3 件まで、1 ターンに新しく結ぶのは 4 件までです。国どうしの定期輸送(1.64)は今までどおりです。
競売
- 競売を、国庫の品物を出す形で再び動かしました。競売に出品(命令 92)では、国庫の品物(8 種類の資源と食料)・量・最低の値段(全体の額)・期間(3〜24 ターン)を決め、実行したときにその量を国庫から預かります。競売に入札(命令 93)では、額と運賃の分(額の 1 割)を国庫から預かり、ほかの国がもっと高く入れると、その場で返ります。上乗せは前の最高額の 5% 以上(少なくとも 1 億円)です。どちらの命令もターンを使わず、開発画面の「貿易と港」の競売の欄から入れます。出品は取り消せません。
- 締め切りのターンに、いちばん高い額の国が落札します。締め切りまで 2 ターンを切ってから入札があると、締め切りを延ばします(6 回まで)。品物は国どうしの外交輸送と同じく陸路か民間の船で運び、届いたら代金を売り手へ渡します。運賃は買い手が払い、使わなかった分は買い手へ返ります。運ぶ途中で海賊に荷の一部を奪われたときは、届いた分だけの代金になります。運べなかったときは、品物は売り手へ(沈んだ分を除く)、代金と運賃の残りは買い手へ返ります。入札が無ければ品物を売り手へ戻します。
- 戦争中・戦争の準備中・禁輸の相手や、港を閉じている相手には入札できません。1 国が同時に出せるのは 3 件、世界では 40 件までです。受け付け中の出品は、トップにも締め切りの近い順に 12 件まで出します。
- AI の国(ルールの AI と LLM の国)も、余っている品物を出品し、足りない品物に入札します。LLM の国は命令 92・93 を自分で出すこともできます。前の形の競売(港の倉庫の中身を出すもの)は使いません。
漁業
- 近くの漁船が、母港と 3〜4 マス沖を行き来するようにしました。漁船は民間の小型商船と同じ船体で、1 港に 1 隻です。沖で漁をするのは最長 5 ターン、1 ターンに 10、積める量は 50 で、魚は母港に着いたときに自国原産の食料として民間の在庫に入ります。行き来には民間の燃料を使います。戦争中も近くの漁船は攻撃されません。
- 地図の漁場のマス(止まった漁船のマス)をなくしました。魚の豊かさと残りは港ごとに覚えます。海に出ている漁船の上は、ほかの船が通り抜けられます。港にいる漁船は港の中で待ち、地図のマスを使いません(地図に出るのは海に出ているときだけです)。港を選ぶと、その港の漁船の行き帰りと魚の残りが分かります。
- 民間が養殖場を造るようにしました。自国の陸に接した浅瀬(開けた海だけ。港・軍港のまわり 2 マスと、川・細い水路を除く)に、もうかる見込みのときだけ造ります。船は通れませんが、陸軍や海兵は浅瀬と同じように上陸できます。獲れる量は毎ターン 4 で減りません。建造費 40 億円、毎ターンの費用 1 億円(払えないターンは獲れません)、1 国 3 か所までです。まわりの陸の持ち主が変わっても、造った国の民間のものとして残ります。埋め立てなどで浅瀬でなくなったときはなくなり、その国に知らせます。
- 漁船が漁をするマスと養殖場は、まわりの水路を分断する所には置きません。後から地形が変わって養殖場がそういう所になったときは、その養殖場をなくして知らせます。
- 遠洋漁業を足しました。海流の潮目(暖流と寒流が近くにある所)と寒流沿いの開けた海に、どの国も使える共有の漁場ができます(世界で 16 か所まで)。魚は取るほど減り、毎ターン満杯の 5% が戻ります。残りが 2 割を下回ると休みになってどの国も取れず、5 割まで戻ると開きます。遠洋漁船は民間がもうかる見込みのときに自動で造り(建造費 200 億円、1 国 4 隻・世界 32 隻まで)、港と漁場を行き来して 1 ターンに 30 取り、300 まで積んで帰ります。燃料を使い、戦争中の国の軍艦や中立の海賊船に襲われることがあります。禁輸は漁に関わりません。
- 開発画面の地図の選び方に「漁場表示」を足し、潮目・寒流沿い・休みの漁場を色で出します。開発画面の民間の欄に、自国の遠洋漁船と世界の漁場の表を足しました。数は設定一覧の「遠洋漁業」などにあります。
船と港
- 中立の海賊船が、民間と国の商船(遠洋漁船を含む)も、遊覧船と同じ決まりで襲うようにしました。まわりに海賊船がいると、くじで沈められるか、積み荷の一部を奪われます。外交の荷は、片道の輸送(援助・競売)の荷だけが奪われ、交換と定期輸送の荷は奪われません。
- 狭い港が船でふさがらないようにしました。荷を待つ民間の商船は、入口の水のマスが 1 つしかない港では入口に止まらず、港から 2 マス以内の空いた水のマスで待ちます。漁船は港の中で待ちます(「漁業」の節)。
- 母港へ帰る道が 6 ターン見つからない民間の商船は、2 マス以内の空いた自国の港へ向かい、無ければ荷を下ろした港を仮の母港にします。荷を積んだままの船は、近くの自国か港を開いている国の港に荷を預けます(預けた荷は持ち主の民間の荷のままです)。仮の母港にするのは、その船のほかに空いた水のマスがある港だけです。仮の母港の船は 6 ターンおきに母港への道を探し直します。
- 遊覧船は、目的地に近づけるマスが無いときだけ回り道を探し、行き先は水でつながる港から、着くまでの短い港を先に選びます。出入り口の水のマスが 1 つしかない港には遊覧船を造りません。
- 軍艦は、軍港の隣のうち、外の海(川を含む)につながる水にだけ造れます。外の海につながらない入り江では、断った理由を出します。CPU の国が造る場所も同じです。
- 地図の漁船・遊覧船・商船の絵を替え、大型商船・遠洋漁船・養殖場の絵を足しました。
CPU の国
- CPU の国(ルールの AI と、LLM の国の代打ち)が、地図の資源を開発するようにしました。自国のマスと、領土に接する持ち主のないマスの埋蔵に採掘場を建てます。資源が足りていても、お金と働き手に余りがあれば、3 ターンに 1 回まで採掘場を建てるか鉱山・油田の段階を上げます(ほかにすることが無いターンは間隔を待ちません)。中立地へ広がるときは、陸の埋蔵に近い所を選びます。
- CPU の国は、食料が人口と兵の食べる量の 30 ターン分を超えている間は畑を増やさず、鉱山と工場(精製所・軍需工場を含む)が、畑と町の人の農業より先に働き手を取ります。30 ターン分以下に戻れば、今までの順番に戻ります。人間の国の決まりと操作は変わりません。
- CPU の国が、資金繰りで休んでいたターンに代わりの手を選ぶようにしました。持ち主のない陸へ広げる、隣の国の平地・農場・工場・荒地を建設・増設・整地の命令で取る(陣営・友好条約・商業同盟・包囲網の仲間と、仲の良い国からは取りません)、海の向こうの持ち主のない陸へ部隊を船で送る、港が少なければ港を造る、部隊のいない国境の平地を森にする、の順に見ます。
- CPU の国が、国境を備えるようにしました。隣の国に取られうる国境のマス(平地・農場・工場・荒地)に部隊を置いてそこに残し、兵が足りなければ兵站基地と部隊を用意します。部隊のいない国境には、平地・農場・工場を新しく作りません。
- 宣戦のやり取りが無いあいだも、CPU の国が最低限の守りを持つようにしました。国境ごとに、国境のマスから 2 マス以内に部隊を 1 つ以上・強さの合計 50(5,000 人)以上置き、首都から 2 マス以内にも、国境とは別に強さ 50 以上を置きます。足りなければ兵站基地に部隊を置き、基地が無ければ建て、予備兵が足りなければ今の決まりの範囲で大きい町から徴兵します。宣戦されたら、1.64.3 の宣戦された国の備えに任せます。
- CPU の国が計画を立てるとき、予備兵と地図の上の自国の部隊を兵の数に入れるようにしました(今までは 0 と見ていました)。兵が多すぎるかの確かめと、食料の減りの見積りに、兵の食べる分が入ります。
- CPU の国が仲の良い国(土地を取らない・国境を備えない相手)を見分けるのは、受諾済みで期限内の公開の友好条約だけにしました。
陣営の援助と外交の記録
- 遠い陣営の仲間へ、自国の軍艦で予備兵を送れるようにしました。外交援助(命令 123)の品目に「予備兵」を足しました。送れるのは同じ正式な陣営の仲間だけです。陸で隣り合う国へは陸路で送り、遠い国へは、自国の軍港の隣にいる空の自国軍艦に積み、艦隊の移動の命令で仲間の港の隣へ向かわせると自動で降ろします。1 箱は 100 人で、1 回は 200 箱(2 万人)までです。沈んだときは 3 割が送り手に戻り、残りは失われます。届く前に陣営が分かれたり戦争・禁輸になったりしたときは、積む前なら送り手へ戻し、航海中なら港へ引き返します。届いた予備兵の経験は人数で平均します。
- 物の援助(命令 123)の海の運びに、送り手の港まで海路 6 マス以内にいる空いた民間の商船も雇えるようにしました(呼び寄せの追加の運賃は 1 マス 5 億円)。
- CPU の国もこの形で送ります。陸で隣り合わない、宣戦された仲間へは自国の軍艦で予備兵を送り(自国の守りに要る兵と軍艦は残します)、物の援助では広げた範囲の船を雇います。陸でつながれば陸路に切り替えます。
- 外交援助(命令 123)と交換(申込 124・承諾 125)で、送る国と受け取る国の持ち主だけに見える記録に、相手・物・量・着く見込みを書くようにしました(3 言語)。公開の記録は今のままです。
画面
- 開発画面と観光の国の表を、表の形にしました。「国の状況」と「資源在庫」は見出しの行と値の行に並べ、研究の段階は「0/5(次 100億円)」のように短く出します。観光の「市場需要・港」と開発画面の「貿易と港」のタブは、市場・家計向けの単価・港と関所・働き手と工場の 4 つの表にし、市場の価格の表は品目を列にしました。説明の文(見積の注意・端数の扱い・価格が変わる理由など)は設定一覧へ移しました。関税率が重なって出ていた所、「。。」、「遊休(idle)」、石油の量と単位の間の空白も直しました。
- トップの国ごとの資源の表を 5 列 × 2 段(上: 資金・食料・木材・石材・鉱石、下: 石油・燃料・工業品・弾薬・鋼鉄)にし、表の下の「資源在庫:」の行を外しました。
- 開発画面の欄の置き場所の隣に「国の表の形」を足し、「表(おすすめ)」と「今までどおり」から選べるようにしました。選んだ形はブラウザが覚え、開発画面・観光・トップの表に効きます。
- 開発画面の「記録と交流」のタブからコメント更新と観光者通信を出し、開発画面の下(タブの外)に置きました。タブの名前は「記録」になりました。
そのほか
- 陸の開発で、船は「隣の自国の領土」に数えません。 整地・埋め立て・掘削・建設(兵站基地などを含む)で、自国の領土に接しているかを数えるとき、自国の商船・軍艦のいる海のマスを数えないようにしました(前は、商船が隣にいるだけで陸に接した中立の荒地を開発できました)。沖合の埋蔵(油田の候補の海)は、今までどおり隣に自国の船がいれば建設できます。
- 計画都市建設・産業施設拡張・遷都の記録を出します。 前は、成功しても中止しても記録が 1 行も出ませんでした。成功は整地などと同じ「〜で計画都市建設を行いました」、中止は資金不足か、理由(予定地が自国の平地ではない、石材・木材・工業品のどれかが足りない など)を書きます。
- 新しいシーズンの国は、建国した国と同じく軽工業で始まるようにしました(今までは先端工業で始まっていました)。
- 公開の地図で、人口の順位が変わった国の町の名前が抜けることがあったのを直しました。
- 観光者通信で、前に入れた名前をブラウザが覚えて入れ直すと、ブラウザによっては書き込むたびに名前が文字化けしていったのを直しました。文字化けしたまま保存された名前は、戻せるものだけ 1 度だけ元に戻します(「管理人向け」)。
- 設定一覧の言い回しを直しました(海流の表の 1/0 を「する/しない」などの言葉に、資源の偏りの注記が自分を指していた所、工業政策の「既存国」の言い方など)。説明書(3 言語)と設定一覧に、1.65 の新しい仕組みの段を足しました。
- 説明書(3 言語)を、元になった箱庭の説明書と比べて書き足しました。hakoN の説明書にある陸の軍隊と開発の決まり(開発の細かい決まり・部隊の置き方と動かし方と育ち方)と、「箱庭諸島 海戦」の説明書にある軍艦の決まり(12.3 の終わりの「艦種ごとの役割と動き方」: 狙える相手・浅瀬と港・動く順・潜水艦・外れた弾・機雷・乗船と上陸・海賊船と海の怪獣など)です。書き足した決まりは、今のコードと照らして確かめました。港を通り抜けられる軍艦は駆逐艦だけであること、弾で傷つく海の怪獣はクジラだけで、巡航と停船の艦は撃たないことを、説明書と設定一覧に合わせて直しました。
速さ
- ターン更新を軽くしました。船の道探し、公開ログの頁の組み立て(記録のかたまりを取っておいて使い回す)、世界の保存と読み込み、AI の準備、国ごとの処理、起動のときの部品の読み込み、公開の地図 3 言語の書き出しの手間を減らしました。どの直しも、本番の写しで直す前と出来上がりが同じことを確かめています(帳簿の数の書き方が変わる所は「管理人向け」)。設定一覧と統計の頁を開くときの手間も減らしました。
- 本番の写し(ターン 95→96)を手元で交互に 3 回ずつ回した中央値で、ターン更新を起こしたアクセス 1 回の CPU 時間は 1.64.2 の 3.85 秒から 2.42 秒(約 37% 減)、ターン更新の本体は 3.31 秒から 1.91 秒、記録に出る負荷計測は 2.78 秒から 1.76 秒になりました。測ったのは計算量の直しを終えた時点のコードで、その後の点検の直しの後には測り直していません。サーバや盤面によって時間は変わります。
管理人向け
- 当て方はふつうの更新と同じです(UPDATE.md)。dataVersion が変わらないので、Python の道具で当てるときの
--data-backup-takenは要りません。ただし 1.64.3 に戻すときに data/ の控えが要るので、メンテナンスモードを入れてから、稼働中の data/ を丸ごと控えてください(UPDATE.md「設置者:更新する前に」)。 - 1.65 では、版ごとの一度きりの配布と補充をもう一度は行いません(ユーザ決定)。民間への現金の配布、民間の在庫と国庫の補充、燃料の配布、中立の山への石炭の追加は、1.64 を当てたときに data/ に書いた印(
fuel-grant.1.64など)をそのまま見ます。産業が燃料を使い始めたターン(使う量を 10 ターンかけて満額にする起点)も 1.64 の印のままで、数え直しません。1.64.3 で 1 度だけ行った海兵の戻しと、陣営への宣戦の知らせも、もう一度は行いません。 - 当てた後の最初のターン更新で 1 度だけ、港の隣にいた近くの漁船を、母港の中で待つ行き来の漁船に置き換えます。その港の漁場の記録(豊かさ・残り)は、その港の沖の魚に引き継ぎます。沖に漁をするマスが 1 つも無い港の漁船はやめ、造った費用(100 億円)を民間に返して、その国の近況に出します。
- 同じく最初のターン更新で 1 度だけ、観光者通信で文字化けしたまま保存された名前のうち、戻せるものを元に戻します(本番の写しのターン 97 では 7 件のうち 2 件。途中で切れているものは触りません)。印は
data/lbbs-name.1.65です。同じく 1 度だけ、中立の森の値が 0 のままのものを補います(1.64 と同じ処理。印はdata/forest-value.1.65)。 - 船の道の表(
data/civil-sea-routes.json)は、中の名札(どの条件で作った表かの印)の形が新しくなり、最初のターン更新の終わりに新しい名札で書き直します。1.64.3 の表は、読み替えて使えるときは使い、使えなければ道を探し直します。どちらでも手当ては要りません。 - data/ に 2 つのファイルが新しくできます。
log-html-parts.datは公開ログの頁(最近の出来事)の本文を記録のファイルごとのかたまりで取っておくもの、civil-sea-seen.jsonは船の道探しの覚え書き(ターン更新の終わりに書き、次のターン更新の初めに読む)です。どちらも無くても動く控えで、消しても作り直されます。持ち主だけが読める形で書き、本番の写しでそれぞれ 0.2〜0.4MB ほどです。 - 世界のファイル(
data/hakojima.dat)の物流の帳簿(LOGISTICS1 の行)で、前のターンの取引の記録(出し手・受け手・量)と資源の帳簿の記録(国)の数が、"1"のような文字の形から1のような数の形で書かれるようになります。値は同じで、遊びの動きは変わりません。1.64.3 と 1.65 の data/ を見比べると、この違いが出ます。 - 管理人室の「公開地図を作り直す」で、海流と川の表も作るようにしました。新しく設置した直後でも、最初のターン更新を待たずに海流の矢印が出ます(作れなかったときは管理人の記録に
RIVER_SKIPを残し、次のターン更新で作ります)。 - 1.64.3 に戻すときは、コード一式と、当てる前に控えた data/ の両方を戻してください。1.65 で進めた data/ は、漁船の帳簿の形などが変わるため、1.64.3 では読めない見込みです(1.64.3 のコードで 1.65 の data/ を読む試しはしていません)。控えに戻すと、1.65 を当ててから進んだターンの分はなくなります。
分かっている残り
- 海外の一部の接続元から開発画面に入れない件があります。サーバ側の制限によるもので、1.65 の変更とは関係ありません。調べています。
version1.64.3 (2026-09-26)
アーカイブ: hakoS-1.64.3-20260926.tar.gz / SHA256(先頭16文字): 3e3ced86452a133d
version1.64.2 からの変更。保存形式は変えていません。dataVersion は 33 のままです。
- ターン更新が止まることがあったのを直しました。開戦している国が世界から弾薬を 1 ターンに 5 以上買うと、保存の前の確かめで止まっていました。
- 宣戦された CPU の国(ルールの AI と、LLM の国の代打ち)が、開戦前の 5 ターンから備えるようにしました。相手と接する国境・相手が船で来られる岸・首都に兵を置き、前線に兵站基地を置いて軍団を付け替え、防衛施設を建て、足りなければ徴兵し、開戦前から弾薬と燃料を先に買います。開戦後は、自国の土地や首都の隣に来た敵の兵を、勝てる見込みがあれば攻めます。ミサイル基地を建て、自国に入った敵の兵へ撃つこともあります。
- 陣営に入っている CPU の国は、陣営共有地図と同じ所を見て判断するようにしました。仲間が宣戦されたら、攻めてきた国へ宣戦して加わり(宣戦の上限の中で)、攻めてきた国と接していれば国境を守り、海兵と軍艦を送り、物の援助を海でも送ります。
- 陣営の仲間が宣戦されたとき、陣営の全員にその知らせが届くようにしました。1.64.3 を当てる前からの宣戦も、最初のターンに 1 度だけ知らせます。
- 外交のある世界でも、予備兵援助(命令 50)を、同じ陣営で陸で隣り合う国へは送れるようにしました(すぐ届きます)。陸で隣り合わない国へは、まだ送れません。
- 船は、兵のいるマスに入らず、そのマスには造られません。兵は、自分の動きでは船のマスに入りません(乗るのは乗船の命令だけ)。民間の船が動くときに、同じマスの兵を消していたのを直しました。
- ターン 95 に民間の商船と重なって消えた海兵(1 か国、2 隊、3 万 2 千人)を、1.64.3 を当てた最初のターンに 1 度だけ戻します。
- 艦隊の一括命令が、同じ艦隊に民間の商船や遊覧船がいると止まっていたのを直しました。陸を囲んで取るときに、船のマスを数えないようにしました。
- 町の火災で、マスが荒地にならず、人口が減るようにしました(村・町・都市・大都市は半分、ニュータウンと現代都市は 3 割)。森・記念碑の隣と首都で起きないのは今までどおりです。工場と倉庫の火災は今までどおりです。
- 現代都市の最大人口を 3 万人に、海底都市の最大人口を 1 万 5 千人にしました。
- 宣戦の命令のときに、管理の記録に警告が出ていたのを止めました。
version1.64.2 (2026-09-25)
アーカイブ: hakoS-1.64.2-20260925.tar.gz / SHA256(先頭16文字): d5423dde9aeb31b0
version1.64.1 からの変更。保存形式は変えていません。dataVersion は 33 のままです。
- ターン更新が止まることがあったのを直しました。民間の商船が他国の岸の隣に数ターン止まっていると、まわりを囲む国の持ち物に書き換わり、保存の前の確かめで止まっていました。船のいるマスは、まわりを他国の土地に囲まれても取られません(軍艦・国の商船・遊覧船も同じです)。
- 商業同盟の名前を日本語で入れると、「貿易と港」のタブと開発画面のコマンド入力の欄が文字化けしていたのを直しました。
- 川と海流の決まりを変えました。川は、まわり 2 マスの範囲の水の多さで決めます(川の合流点や細い水路が川として扱われます)。海流は、緯度の帯ごとの流れ(熱帯と寒帯は西向き、温帯は東向き、赤道のすぐ北に東向きの反流)と、大陸の縁で曲がる暖流(東岸を極の向きへ)と寒流(西岸を赤道の向きへ)の形にしました。船は流れに沿って進むと速く、逆らうと遅くなります。地図の海流の矢印は 6 方向で、暖流を赤、寒流を青で描きます。
- 民間は、遊覧船と漁船をもうかる見込みのときだけ造るようにしました。遊覧船は世界に多いほど寄港の収入が下がり、20 ターンで元が取れるときだけ造ります。漁船も 20 ターンの獲れ高の見込みで決めます。
- 開発画面の「直近の取引」と「輸送中」には、自国が売り手か買い手の取引だけを出します(直近は新しい順に 10 件)。世界の民間の取引は、新しい頁「すべての取引」で見られます(ページの上の案内の行から開けます)。
- 開発画面の欄の置き場所から「地図の右」をなくしました(自動・切り替え・下の 3 つ)。「地図の右」を選んでいた場合は自動になります。
- 開発画面と観光の画面の国の表で、雇用状況の列だけがはみ出していたのを直しました。
- 漁船のいるマスの印の絵が出ず、壊れた絵が表示されていたのを直しました。
- ターン更新と画面の表示を軽くしました。帳簿と統計の読み込みを速くし、船の道探しに回数の上限を設け、地形が変わっていなければ覚えた道を使います。開発画面の民間の欄は、ターン更新が保存した海の道の表を読むだけにしました。
version1.64.1 (2026-09-25)
アーカイブ: hakoS-1.64.1-20260925.tar.gz / SHA256(先頭16文字): 93c3e7898a4a8538
version1.64 からの変更。ゲームの決まりと保存形式は変えていません。dataVersion は 33 のままです。
- 開発画面のコマンドを選ぶ行から、商業同盟の番号と名前の欄を外しました。商業同盟の設立・加盟・脱退は「貿易と港」のタブの欄から行います。コマンドの一覧からも「商業加盟」の種類を外しました。
- コマンドの一覧で長かった 2 つの項目の費用の書き方を短くしました(鉱山・油田の段階上げは「段階×100億円ほか」、発電所建設・増設は「建設300億円ほか」)。費用の内訳は、コマンドを選んだときの説明に書いてあります(発電所の説明に建設と増設の費用を足しました)。
- この 2 つで、コマンドの欄が横に広がり、地図の右側が画面の外にはみ出して見えなくなるのを直しました(画面の幅が 1440 あれば、地図の右端まで収まります)。
- トップのシーズン欄にあった上限ターンの採点の説明(次のシーズンから経済資産で数えること・経済資産の記録開始のターン)を、設定一覧のシーズンの説明の後ろに移しました。
- トップ画面と開発画面から、設定一覧や説明書に置けばよい記述と、開発の事情を書いた言い回しを外しました。トップのランキングの見出しを日本語にし、「新開発モード(β)」を「新開発モード」にしました。開発画面では、民間への回し方の「今までの量」を「決めた量を回す」に、国の買い戻しの「今まで(手元に残す量まで)」を「手元に残す量まで」にし、コマンドの説明から古い数量の書き方などを外しました。船級の表は、新しく造れない互換商船を、持っている国にだけ出します。
- 開発画面と観光の画面の外交記録の欄から、「記録開始ターン」と「外交記録はまだ開始されていません」の表示を外しました。出来事が無いときは「記録された出来事はありません」だけを出します。
- 設定一覧の説明から、仮の印・中の仕組みの名前や単位・版の経緯を外し、今の決まりだけを書くようにしました(3 言語)。止めている仕組みには「(この設置では使いません)」と出します。陸地の埋め立ての方針も、設定の語ではなく文で出します。
- 同盟・商業同盟の名前を受け付ける処理を、とても長い名前(空白の続く文字列)が送られても重くならないようにしました。名前の前後の空白を消す前に長さを確かめます。ブラウザのクッキーと案内役の計画の行の読み取りも同じように直しました。
- 版の番号が 1.64.1 のような小さな直しで変わっても、1.64 で行った一度きりの配布と読み替え(燃料・民間・在庫の配布、中立の山への炭坑の追加、森の値など)はもう一度は行わないようにしました。
- 保存形式が変わる更新の手順書(UPDATE.md)で、「最初の読み込みで dataVersion が書き換わる」としていた説明を直しました。書き換わるのは最初に保存されるとき(ふつうは最初のターン更新)で、それまで管理人室には版が一致しないという警告が出ます。
version1.64 (2026-09-25)
アーカイブ: hakoS-1.64-20260925.tar.gz / SHA256(先頭16文字): eb7e2f695f2ea264
version1.63.1 からの変更。保存形式の dataVersion は 33 になります(資源の位置 7 をウランから鋼鉄へ、読み込むときに一度だけ書き換えます)。当てる前に稼働中の data/ を丸ごと控えてください。33 に書き換わったデータは 1.63.1 では読めないため、1.63.1 に戻すときはコードと控えた data/ の両方を戻します(手順は UPDATE.md の「保存形式が変わる更新」)。
経済と貿易
- 民間の国際貿易に国ごとの資源価格を導入しました。納品して精算した輸出入で次のターンの価格が変わり、取引がなければ世界相場へ近づきます。市場には世界の基準価格と自国の貿易価格を並べて表示します。国庫・家計の価格と輸送中の契約単価は従来どおりです。
- 民間の買い付けでは、同じ売り手・資源に複数の買い手がいる場合、高い値を付けた買い手を優先します。船・港・陸路の容量は資源別のコンテナ換算で数え、陸路の運賃を民間から自国の国庫へ支払います。
- 民間の目標在庫を最近の消費の4ターン分にし、大型船を使えない場合は小型船・陸路も試します。AI と「必要に合わせる」を選んだ人間の国は、国庫が民間から買い戻す資源を増やし、食料を20ターン分未満から補います。食料を民間へ売るのは24ターン分を超えた分だけです。
- 家計への工業品・食料・燃料の販売では自国産と出どころ不明の古い荷を先に使い、輸入品が残りやすくなりました。市場の表示も実際の販売単価に合わせました。
- 商業同盟を設立・加盟・脱退できるようにしました。加盟国どうしは友好国限定の港を使え、中継料が半額になります。戦争・禁輸・港の閉鎖は優先されます。
- 資源の「ウラン」を「鋼鉄」に替えました。読み込むときに一度だけ保存を書き換えます(dataVersion 33)。国庫・民間・運送中・保税・倉庫・地図の積み荷にあったウランは、1 につき燃料 3 に換えます。返事待ちの交換の依頼で欲しい品に入っているウランも、同じく燃料 3 に換えます。弾道ミサイルの材料は弾薬 4+燃料 3 になります。ウラン鉱山は、精製の技術を得るまで何も産出しません。
- 農業・工業・商業が、出来高に応じて燃料を使うようにしました。燃料が足りないと、その産業の出来高が足りない割合だけ減ります(止まりはしません)。使う量は 10 ターンかけて満額になります。版が上がった最初のターンに人間の国へ燃料を 20 ターン分配り、中立の山に小さな炭坑の埋蔵を足します。
- 鉱山・油田の段階を上げる命令(128)を足しました。鉱山・油田は枯れませんが、落盤で段階が 1 つ下がることがあります。
- 国庫の食料は、自国で作った量の 18 倍を超えた分が毎ターン 0.5% 腐ります。
- 国どうしの定期輸送(命令 129〜131)を足しました。決まった品物を決まった間隔で送る約束で、間隔は陸路の日数か、商船が海路を進む日数から決まります。約束から 36 ターンは取り消せません。受ける港ごとに本数の上限があります(普通の港 10、大規模港 20)。
- 民間が世界市場から買うのは、最近の消費から出した分だけにしました。持ちたい量の下限の分は、ほかの国の売り手からだけ買います。
- 地質調査は、山では新しい埋蔵を見つけなくなりました。荒地では石油の埋蔵が見つかります(海か浅瀬から 2 マス以内は 20%、それ以外は 10%)。荒地に建てた油田は「油田」として陸の絵で出します。沖合の埋蔵には、隣に自国の船か自国のマス(建てた油田を含む)があれば油田を建てられます。
- 石材・鉱石・石油の産出は、気候帯で変わらなくなりました(地質で決まるため)。気候帯で変わるのは食料と木材だけです。
- 世界市場から来た品物の出どころを、国として扱わないようにしました。AI の記録と外交輸送の禁輸の判定で、世界市場を国と取り違えていた不具合です。
- 鉄鉱石の鉱山と大鉱山は、鋼鉄を直接産出するようにしました。自国の炭坑の隣にある鉄鉱石の鉱山は、鋼鉄が 5 割増しになります。露天鉱脈は鉱石(レアアースの意味)を今までの 2 倍の倍率で産出します。軍需工場の材料は工業品 1+鋼鉄 2 になりました。
- 国の工業の方式(命令 132)を選べるようにしました。軽工業(食料 2→工業品 1)・重工業(鋼鉄 2→工業品 1+弾薬 1)・先端工業(鉱石 2→工業品 1)の 3 つで、方式ごとに工場の力と燃料の使う量が違います。重工業は生産の研究 1 段階、先端工業は 3 段階で選べます。今ある国は先端工業から、新しい国は軽工業から始まります。
- 発電所(命令 133)を足しました。自国の平地に建て、段階を 10 まで上げられます。国の発電所の段階の合計 1 つにつき工業の出来高が 4% 増え、合計 20 段階(+80%)まで効きます。材料の量は変わらず、出来高だけが増えます。段階 1 つにつき毎ターン燃料を使い、足りないと効き目が減ります。国の状況の「発電規模」に 1 段階 4 万 kW で出し、段階 3(12 万 kW)以上は大型発電所の絵になります。
- ウラン鉱山は、生産の研究が 3 段階になった国で燃料を産出します(炭坑の 5 倍、1 回の採掘は 100 まで)。
- 農業・工業・商業の出来高に、それぞれで働く人の割合による効率を掛けるようにしました。今のふつうの割り振り(働く人のうち農業 73%・工業 26%・商業 0%)で 100% になり、そこから偏らせるほど上がります(最大 +35%、下限 90%)。
- 家計が工業品を買う量を、人口と豊かさに応じて決めるようにしました。工業化した国の民間の売上が増えます。
- 農業・工業・商業が使う燃料の量は、本番の写しで 10 ターン回して確かめて決めました。出来高の値打ちに対して、農業 45%・先端工業 75%・軽工業 45%・重工業 150%・商業 30% を、燃料の基準価格で割った量です。最初のターンに配る燃料(20 ターン分)も、この量に合わせて増えます。
- 定期輸送の申込の画面で、相手と受取港を選ぶと、所要ターン(間隔)の見積もりを見られるようにしました。申込を受け付けるときと同じ計算で、陸路か標準の商船の海路かも出します。
民間
- 新しい人間の国は、国庫の余りを民間へ回す設定が既定になります。開発画面で従来の量や停止に切り替えられます。
- 中立の金融窓口で、民間が預入・引出し・借入・返済を行うようにしました(ターン末に自動。国の持ち主が手で指示する命令はありません)。貸付は預金の半分までで、引出し用の現金が足りない分は順番待ちになります。利子・期限・返済の状況を自国画面に表示します。
- 民間の遊覧船が自動で建造・運航し、新しい寄港で観光収入を得ます。近くの中立海賊による襲撃と損失も起こります。民間漁船は自動で建造され、漁獲・休漁・回復と港の漁業状態を確認できます。
- 旧倉庫の建設・預入・引出し命令を停止しました。港が壊れたときは預かり荷の損失を記録し、港の所有国が変わっても荷主の権利を保ちます。
- 中立の金融窓口への民間の預け入れは、ターン末に現金が 10,000 億円を超えた分だけにしました。現金が足りないときは自分の預金を先に引き出し、足りない分だけ借ります。手元に残す元手は、前の 4 ターンの支出の合計と 2,000 億円の大きい方です。
- 借入の審査で、収入・担保(民間の在庫)・これまでの返済を見るようにしました。期限に返せなかった国は 12 ターン借りられません。人間の国の借入の命令も同じ審査を受け、断られた理由を金融の欄に出します。
- 民間の銀行口座への手の指示(預金操作 114・借入返済 115)を止めました。前から計画に入っていても実行されません。開発画面の金融の欄は、預金・借入・利子・期限・配当の様子の表示だけになります。
海軍
- 軍艦一隻ごとの一時待機・六方向の操艦と、艦隊の旗艦指定を追加しました。造船時に所属艦隊を選べ、造船には艦種ごとの資金と工業品が必要です。
- 巡洋艦・戦艦・航空母艦は射程内の陸の怪獣、交戦国の軍事施設・町・農場・工場を攻撃できます。自国・交戦国の機雷も一斉攻撃で除去できます。軍艦は命中・撃沈で経験を得て、最大耐久力が増えます。
- 軍艦が沈むと、艦種と元の所有国を記した残骸が10ターン残ります。港・軍港は、所有国と交戦していない船が停止せずに通過できます。
- 軍艦の建造には、今までの工業品と同じ数の鋼鉄を使います。沈んだ軍艦の残骸を回収すると、造船に使った鋼鉄の 20% が戻ります。軍港と商船の費用は変わりません。
陸軍と技術
- 自国の山にトンネルを造れるようにしました。陸軍はトンネルを通常の陸地と同じ速さで通れます。偵察命令では指定地点の半径2を次のターン中だけ本人画面で確認できます。
- 陸軍は弾薬不足でも剣と槍で攻撃・反撃でき、弾薬を消費せず被害は4分の1になります。
- 生産・海運・軍事の技術研究を追加しました。生産技術は農業・採掘・伐採・工場の産出、海運技術は商船の速さと積載、軍事技術は陸戦・海戦・ミサイルの数値被害に反映されます。
- 固定の気候帯に応じて産出量と兵種の陸戦被害が変わります。雨・雪からの陸戦被害、雷の地点へのミサイルの誤差、軍艦の補給時の回復にも天気・気候を反映しました。
AI
- AI は土地が足りなくなると、性格と姿勢に応じて戦争か海外進出を検討します。海外進出では軍港・軍艦・占領部隊を順に準備し、部隊を船で運んで上陸します。宣戦予告中はトンネルの出口を守る候補も選びます。
- AI は弾薬の備蓄と軍需工場の増設を判断し、戦争準備の徴兵でも働き手・食料と性格別の兵力上限を守ります。陸で接する国からの交換は、損をせず必要な備蓄を残せる場合に限って応じます。
- AI が盟主の陣営は申請国の最近の公開記録を見て加盟を判断します。LLM 国の外交要約にも公開記録を渡します。
- AI は鋼鉄を軍艦と軍需工場のために残し、鉄鉱石の鉱山を育て、足りなければ買います。
地図と画面
- 公開地図を公開ログと同時に保存し、トップ・全体地図・観光で完成したターンを表示します。管理人室から公開地図を作り直せます。
- 開発地図では希望する場合だけ固定の気候帯を5色で表示します。掲示板の通常一覧は分類ごとに上下10件ずつ表示し、分類別の全件一覧へ進めます。
- 新しい世界を作る際は、既存の鉱物を残したまま、固定の気候帯によって鉱物の追加配置率を変えます。
- 観光・開発画面を開いたときの地図の中心を、その国の首都にしました。首都が無ければ最大の現代都市・ニュータウン、それも無ければ人口の最も多い地形です。
- 開発画面の地図の下の欄を、5 つのタブ(軍・民間と金融・貿易と港・外交と方針・記録と交流)にまとめました。置き場所は「自動・地図の右・地図と切り替え・地図の下」から選べ、ブラウザごとに覚えます。自動では、画面の幅が 1,700 ピクセル以上なら地図の右、狭ければ地図と切り替えになります。
- 地図の下にあった説明文を、説明書と設定一覧へ移しました。命令 91 の説明を直しました。
- 地図の上の技術研究の表を外し、国の状況の技術の欄を研究の段階の表示にしました。トップの一覧から、まだ使っていない 5 つの列を外しました。
- 観光画面の価格の表を国の状況の表の中から出して、表のすぐ下に置きました。世界の基準価格と、その国の貿易基準価格を並べて出します。相対契約の表も同じく表の下に移しました。
- 開発画面で欄を地図の右に置いたとき、欄が地図の右端に重なっていた不具合を直しました。「自動」は、地図と命令入力の実際の幅に、欄の最低幅が入るときだけ右に置きます。
- 地図の表示の切り替えに「天気表示」と「海流表示」を足しました。天気表示はマスごとの天気(晴れ・曇り・雨・雪・雷)を、海流表示は商船の速さに効く海流の向き(← →)を出します。
外交と記録
- 国の情報欄に、宣戦・陣営の離脱や解散・外交の取消や輸送失敗などの公開記録を表示します。導入前の出来事は補いません。
- 民間商船の積み下ろし・帰り荷・保税の受け渡しを、関係国だけの機密記録で確認できます。命令の結果・入力元・LLM 代打ちを非公開で記録し、終了済みシーズンの振り返り表を管理人が作れるようにしました。
- シーズンの採点では、今のシーズンは旧配点を維持し、1.64 導入後に始まるシーズンから資金15%を経済資産15%へ替えます。シーズン終了時には経済資産と交易量の首位も表彰します。
計算量と更新直後の処理
- 公開用の3言語の地図は盤面を一度走査して作るようにしました。本番写しの同一入力で行った比較では、地図の内容は変更前と一致し、ターン本体の CPU 中央値は約2.93秒から2.86秒になりました。測定値は盤面や機械で変わります。
- 1.64 の最初のターンだけ、旧倉庫の蓄えと預かり荷を国庫・民間・港へ移し、倉庫を平地に戻します。移行済みの印を保存し、次のターンに繰り返しません。
- 版更新後の最初のターンだけ、人間の国の民間現金を8,000億円まで、工業品・食料・燃料を所定の目標まで補充します。現金と在庫には版ごとの印を残し、同じ版で繰り返しません。
- 1.64 の最初のターンだけ、各国の国庫に工業品・弾薬が50未満なら50まで補充します。補充した版の印を残し、次のターンには繰り返しません。
version1.63.1 (2026-09-24)
アーカイブ: hakoS-1.63.1-20260924.tar.gz / SHA256(先頭16文字): c412fac80cc16975
version1.63 からの変更。ゲームの決まりと保存形式は変えていません。dataVersion は 32 のままです。
処理の軽量化と表示の直し(10件)
- 覚えた海の航路を、荒地・平地・町・森など陸の細かい違いだけで捨てないようにしました。海と陸の入れ替わり、港や軍港の変更は引き続き検知します。探索の上限で打ち切った失敗は次のターンへ持ち越しません。
- 海の道探しで、1マスごとにかかる手間を減らしました。探す順番と航路の決まりは同じです。
- マスの成長処理では、その国のものではなく処理も不要なマスを先に飛ばすようにしました。
- 統計ページを書き出すときに、保存した直後の集計を使い、同じ集計を作り直さないようにしました。
- 統計の表示で、同じターンの記録を重ねて読み直さないようにしました。
- 民間経済の帳簿全体を確かめる処理を、読み込み時と保存直前にまとめました。検査・管理人の点検・
HAKOS_DEEP_VALIDATE=1・$HcivilHDeepValidateの指定時には、途中の各段階でも全部を確かめます。 - トップの小さい地図は同じ世界の内容なら使い回し、
data/minimap-<指紋>.jsonに置くようにしました。通常は1ターンに1度だけ作り、新しい8個を残します。同じターンでも世界の内容が変われば作り直します。世界のロックを取れなかった読み取り・言語切替・指定ターンで停止中の世界では、控えの書き込みや整理を行いません。 - トップなどを見るだけのときは、ターン更新用の部品20本を読み込まないようにしました。開発画面では表示に必要な部品だけを明示して読み込み、言語切替で管理記録を書き換えないようにしました。未読込の関数が呼ばれた場合はその場で読み、管理人の記録に
LAZY_LOADを1行残します。 - ページの下にあった古い広告を外しました。
- 更新の見出しに文字として出ていた「\n」を取り、貼り付け用一覧の見出しのタブと改行を直しました。
本番の写し(ターン88)を使った手元の最終測定では、ターン更新の負荷計測は 3.38 → 2.68秒(21%短縮)、要求全体は 4.31 → 3.45秒、ふつうのページ1枚は 0.59 → 0.43秒(27%短縮)でした。サーバや盤面によって時間は変わります。
Discord と説明書
- 共通リンクの末尾とトップの注意文の直後に、日常の雑談・連絡のための Discord 案内を追加しました。日本語・英語・繁体字中国語に対応します。
- 3言語の説明書の通信の段落にも、同じ案内を1文追加しました。設定を確認できたときだけ表示します。ゲームの決まりの説明は変更していません。
管理人向け
- 招待先は
hako-init.cgiの$HdiscordInviteで管理します。local-init.cgiで上書きでき、$HdiscordInvite = '';とすると共通リンク・トップ・説明書の案内がすべて非表示になります。HTTPS の招待URLを指定してください。 - 1.63 に戻すときは、
data/minimap-*.jsonを消してもかまいません。無くても動く派生ファイルです。civil-sea-routes.jsonの形式は1.63でも読み込めるままです。旧版の陸の印をまとめる変換は1.63.1の読み込み時に行い、1.63へ戻した直後には必要な航路を再計算します。 - 配布・更新の道具を
1.63.1の版番号に対応させました。更新一式にdata/、手元の計測道具、報告書、引き継ぎ資料、小さい地図の控えは含めません。
version1.63 (2026-09-21)
アーカイブ: hakoS-1.63-20260921.tar.gz / SHA256(先頭16文字): cbe956abdd55789c
version1.62 からの変更。dataVersion は 32 のままです。版を戻すときの注意と新しい設定は、末尾の「管理人向け」にまとめました。
経済(民間・国庫・相場)
- 国庫が、自国の民間から必要な備蓄を自動で買うようにしました。不足する資源を目標の 6 ターン分まで買い、代金を民間へ渡します。国庫から民間へ売るときは必要な取り置きを残し、同じターンに買った資源を売り戻さないようにしました。
- 民間から買っても不足する燃料・弾薬・工業品は、世界相場の 1.25 倍で、1 資源につき 1 ターン 4 単位まで自動購入します。複数単位を買ったときに支払う代金が少なくなる計算も直しました。
- 家計に売る工業品と燃料の価格を、これまでの 0.8 倍にしました。食料と外国向けの見積もりはこれまでどおりです。
- ターンの終わりに、国庫の上限の 90% を超えた資金を自国の民間へ移すようにしました。
- 世界相場の 1 ターンの変化を、上げ下げとも 10% までに抑えるようにしました。
- 工場・精製所・軍需工場で、1 回の生産に満たない人手を次のターンへ持ち越すようにしました。工業に回る人手の小数と持ち越し分も表示します。
- 村・町・都市の農業に回る人手の係数を、それぞれ 0.65・0.35・0.1 にし、自給農業に回る人手の最低値を 45,000 人にしました。
- 精製所は油田との距離に関係なく国庫の石油を使い、命令 88 でレベル 3 まで拡張できるようにしました。AI の国も石油が 6 以上あれば、普通の平地を建設候補にします。
- 軍需工場の 1 回の生産でできる弾薬を 2 から 6 に増やし、命令 88 でレベル 3 まで拡張できるようにしました。
- 新しくできる国の弾薬と工業品を、それぞれ 50 にしました。既存の国にも、版を上げたときに 1 回だけ、50 に足りない分を補充します。
物流・海運
- 陸路で運べる量の上限を、国境の組み合わせごとに 1 ターン 16 単位から 64 単位へ広げました。
- 港がいっぱいで入れない商船を、2 マス以内の空いている別の港へ回すようにしました。行き先と同じ国の、船の大きさに合う港を使います。交易の計画にも、規模の大きい順に 2 つの港を使い、2 つ目の港での建造・出航も選べるようにしました。
- 川を下る商船は速く、さかのぼる商船は遅く進むようにしました。航海の見積もりと補給にも同じ川の流れを使います。川の流れは、地形が変わった次のターンに作り直します。
- 新しい人間の国の民間向け輸出上限を、それぞれ 3 倍、合計 36 から 108 にしました。すでに設定してある国の上限は変えません。往復の燃料を確保できない場合は、商船を建造しないようにしました。
- 商船の帰り荷を追加しました。荷を届けた先で帰りに積む品物を選びます。直行便で荷を全部届けた次のターンに 1 品目を積んで母港へ帰り、儲かる品物がなければ空荷で帰ります。出発時に帰りの見込みの半分を行きの採算に足し、行きだけでは運び賃で赤字になる直行便も出航できるようにしました(
$HcivilBackhaulEstimatePermille = 500。0 なら見込みを足しません)。
海戦(艦隊操作)
- 第 1〜16 艦隊の所属軍艦と目的地を確認し、編成・移動先・目的地の解除を計画欄から操作できるようにしました。一隻ずつ、または艦隊ごとに「通常・巡航・退治・停船」を切り替えられます。停船と目的地の解除は別の操作です。
- 一斉攻撃を追加しました。射程などの条件を満たす自国の軍艦が、指定地点を優先して攻撃します。対象は選んだ艦隊だけでなく自国の全軍艦で、異なる地点を指定した場合は計画欄で先にある命令を優先します。
- 陣営作戦本部の国別の欄で、同盟国の艦隊一覧を見られるようにしました。
- 前回のターン更新での目標・着弾・沈没の印を、地図に重ねて見られるようにしました。近況とトップの「最近の出来事」には、「すべて/戦闘だけ」の切り替えを付けました。
画面
- 開発画面の軍情報・輸出上限・AI 方針・港の設定・自動入力・友好申請への返事・コメント・都市名・計画の繰り上げ・掲示板を、画面を読み直さずに送れるようにしました。ブラウザでこの送り方が使えないときは、これまでどおり画面全体を読み直します。
- 天気が場所とターンで変わるようになりました。熱帯から寒帯までの気候帯と季節、海からの近さ、山の風下、動く低気圧・高気圧で決まります。トップと国の画面の「天気」は、その国の首都の天気です。今は表示だけで、戦闘や収入には影響しません。
- 近況は最新の 2 ターンだけを開き、それより前は見出しを押すと開くようにしました。
- コメント欄で「交易歓迎」など 5 種類の意思表示の札を付けられるようにしました。札はトップの国一覧に出ます。
- 開発画面の経済欄に、民間の活動が止まっている主な理由を 1 文で表示します。前のターンに売り買いしなかった国だけを対象に、現金・仕入れる物・売り先・価格の順で、最初に当てはまる理由を出します。
- 資金・食料・燃料が 10 ターン以内に尽きる見込みと、補給できなかった艦の隻数・艦隊を機密ログに出すようにしました。国庫の収支も、収入・食料換金・民間売買・外交・上限処理・その他の内訳と合計で見られます。
- 市場需要・港の欄と政府表明の行が、画面の幅で折り返すようにしました。
- 設定一覧に、兵種ごとの能力・移動・相性・地形の効き方の表と攻撃・反撃の計算、ミサイルの射程・災害の確率・建国直後の制限・援助の上限・ターン杯の間隔を戻しました。
トップ・統計
- トップの国一覧に、1 国を 1 行で出す「簡易表示」の切り替えを付けました。選択はブラウザが覚えます。
- 陣営表の国数・人口・兵力・面積・資産に、前のターンからの増減を矢印で出すようにしました。統計の画面では、同じ 5 項目の陣営ごとの推移を直近 120 ターンのグラフで見られます。記録のないターンは、0 としてつながず線を切ります。
- 民間の海路・陸路交易で実際に届けた量を、売り手と買い手の両方の国の交易量に加えるようにしました。
- 陣営の所属一覧の「クリップボードにコピー」が、今のブラウザで動くようにしました。
- トップの国一覧を作るときに同じ地図を何度も調べていた処理をまとめ、表示を軽くしました。ターン杯のアイコンには、何ターンの杯かを出すようにしました。
掲示板
- 陣営・同盟掲示板を、話題ごとに書き込みをまとめるスレッド方式にしました。本文は 50 件ずつ表示し、番号を押すと参照した書き込みへ移れるようにしました。新着 10 件の一覧、NEW 印、引用の色分けを加え、空白と改行もそのまま表示します。
- 掲示板を白いカードの表示にし、スマートフォンでは 1 列に並ぶようにしました。旧デザインへの切り替え、陣営色、アイコンも引き続き使えます。
- 盟主だけでなく、陣営の正式なメンバーも外交文と返信を送れるようにしました。盟主の文には公式の印を付けます。
- 「外交・雑談掲示板」を追加しました。陣営に入っていない国も投稿でき、観光者も読むことができます。分類で話題を絞り込め、自分の書き込みは編集・削除できます。
- 開発画面の[トップへ戻る]の左に[陣営・同盟掲示板]、右に[外交・雑談掲示板]を置きました。掲示板の書き込みも、画面を読み直さずに送れるようにしました。
不在の国の引き継ぎ
- 命令を入れないまま放棄のターン数に達した国は、消さずにルール AI が引き継ぐようにしました。持ち主が戻って命令を送ると人間の操作に戻り、次のターン更新で復帰を知らせます。持ち主が自分で選んだ別の AI への委任は、そのまま維持します。
不具合の修正
- 中立の森の値が 0 のままになっていたものを、1 回だけ 40 に直します。次のシーズンに作る森にも適用します。
- 災害の免除判定が、国の番号にかかわらず正しい国の値を参照するようにしました。
- 対人ミサイルが町や部隊に命中したときの記録を加え、命中したのに「被害なし」も出ることがある不具合を直しました。
- 海兵などが浅瀬から上陸できない・浅瀬づたいに進めない不具合を直しました。
- 機密ログの資金・食料の増減を、換金・上限の処理・民間への資金移転が済んだ後の残高に合わせました。
- ターン更新の警告が、更新を始めた人の画面に混ざることがあったのを直し、警告はサーバの記録へ出すようにしました。情報変更の送信と新規登録後の開発画面で出ていた、以前からの警告 6 か所も直しました。
- 中立の船や海の怪獣の出現周期に当たらないターンは、出現のために地図を調べる処理を省くようにしました。
- 英語・繁体字中国語の画面の一部(陣営の所属一覧・陣営の部屋)に、日本語が混ざって出ていたのを直しました。
- シーズンの記録の再生で、裏で警告が出ていたのを直しました(表示は変わりません)。
説明書
- 民間の経済の説明を、国庫の自動購入、家計向けの価格、工場の人手の持ち越し、農業・生産・陸路の変更に合わせました。
- 日本語のよくある質問「国庫の燃料を民間から買えますか」を、毎ターン自動で買う説明に直しました。日本語・英語・繁体字中国語の説明書に、AI の国は外交の交換の申し込みに自動では応じないことを書き足しました。
- 遷都(命令 89)の説明を、英語版・繁体字中国語版にも載せました。
- 繁体字中国語の経済の表示に混ざっていた日本語の中黒「・」を、読点「,」に直しました。
管理人向け
- 管理人室から開く画面をボタンで開くようにし、管理パスワードがアドレス欄や履歴に残らないようにしました。管理パスワードにカンマや「&」が入っていても「変更」が正しく動くようにし、「あずかり」「地形」の画面を開いたときの警告も直しました。
- 管理人室でお知らせを書き、トップに表示できるようにしました。文字と改行だけを表示し、空にすると欄ごと消えます。掲示板の記事とスレッドも、管理人室から削除できます。
- 管理人室で最新 500 行のアクセス記録を見られるようにしました。日付・国・接続元で絞り込め、同じ接続元から別々の国へ入った行と新規登録の行に印を付けます。同時に記録を書いたときに行が消えないよう、書き込み方も直しました。
- 同じ接続元から 2 つ目の国が登録されると、管理人向けの記録とアクセス記録の画面に知らせを出します。画面には新しい順に最大 20 件を出し、登録自体はこれまでどおり受け付けます。
版を上げるときは、次の点を確認してください。
- 版を上げたときの民間への一回給付(1 国 2,000 億円)は、既定で止めました。
$HcivilReleaseGrantの既定値は0です。配りたいサーバーはlocal-init.cgiに$HcivilReleaseGrant = 1;を書いてください。同じ版で二度配らない扱いはこれまでどおりです。 - 新しい設定は、
$HgiveupToAi = 1(不在の国をルール AI が引き継ぐ。0なら従来どおり放棄)、$HreleaseStockGrant = 1(既存国の弾薬・工業品を 50 まで 1 回補充)、$HhouseholdPriceRatio = 0.8(家計向けの工業品・燃料の価格倍率)、$HcivilTreasuryOverflowRate = 0.9(民間へ移す国庫の境目)、$HmarketStepMax = 0.10(世界相場の 1 ターンの変化の上限)が既定値です。 - 港の計画の設定は
civilHTradeRulesにまとめ、planning_port_limit=2(使う港は 2 つ)、sea_mode_order=['direct','relay'](直行、次に中継)の順を既定にしました。帰り荷の追加日数はcivilHSeaTuningのbackhaul_extra_turns=1(1 ターン)です。 - 川の設定は
hako-naval-logistics.cgiの%HriverTuneにまとめました。既定はsea_component='largest'(最大のつながった水域を海の判定に使う)、open_neighbors=3(隣の水が 3 マス以上ある場所から流れを決める)です。移動に使う数値はscale=2、deep=2、shallow=4、down=3、up=5(移動できる量を 2 倍の数値で数え、深海 2・小型船の浅瀬 4・下流 3・上流 5)、minimum_upstream_step=1(進入できるなら上流でも最低 1 マス)が既定です。 - 天気の調整値は
hako-io.cgiの%HweatherTuneにまとめました。既定は低気圧 5 個・高気圧 3 個、強さ 3〜8、寿命 6〜10 ターンです。艦の行動はinit-navy.cgiの@HnavyActionRulesにまとめ、通常と退治は条件を満たす敵艦・海の怪獣を狙いながら移動、巡航は攻撃せず移動、停船は攻撃も移動もしない動きが既定です。 - dataVersion は 32 のままですが、1.63 で動かした世界を 1.62 に戻すと読めない所があります。帳簿の新しい流れの種類や帰り荷の印などが加わっています。更新前のプログラムと世界データの控えを残し、戻す場合は更新前の組み合わせで戻してください。
- アップロード中はメンテナンスモードにしてください。新旧のファイルが混ざった状態で、ターン更新や書き込みが走らないようにしてください。
version1.62 (2026-09-19)
アーカイブ: hakoS-1.62-20260919.tar.gz / SHA256(先頭16文字): b676178678e127c5
version1.61 からの変更。dataVersion は 32 のままで、保存形式は変わりません。
不具合の修正
- 「最近の出来事」と開発・観光画面の「近況」で、直前のターンより前の記録がまとめて消えることがある不具合を直しました(本番のターン 77・80 で発生)。ターン更新は最初に過去の記録を 1 つずつ後ろへずらします。1.61 は、途中で止まったターン更新のずらしを元に戻さないまま次のアクセスでやり直していたため、止まった回数だけ記録がずれて、古いものから消えていました。1.62 は、途中で止まった跡があれば、次の読み込みで保存済みの写しから記録を元に戻してから進めます(1.60 と同じ動き)。跡が無い普段は何もしないので、ターン更新の速さは変わりません。
- 同じターンを 2 つのアクセスが同時に処理しないようにしました。ターン更新を始めるときに「このターンは処理中」の札(データフォルダの
turn-claim.<ターン>)を 1 つしか作れない形で作り、作れなかった側は前の盤面を表示します。止まった更新の札は、その処理が終わっていればすぐに、確かめられない場合は 120 秒で片付けます。
消えた過去ログを戻す
- データフォルダに
recovered-logs.json(ターンごとの過去ログ。バックアップのworldlogs.datから作る)を置くと、次のターン更新から、ずらした直後の空いている欄へ同じターンの記録を戻します。表示の範囲(16 ターン)から全部外れると、このファイルは自動で消えます。置かなければ何もしません。
管理人向けの記録
データフォルダの generation-admin.log に次の行を足しました。サーバのエラーログを見なくても、ターン更新の様子が分かります。
TURN_START/TURN_DONE: ターン更新の開始と完了(かかった秒数)。同じターンにTURN_STARTが 2 回あれば、重なりかやり直しです。TURN_ERROR/ERROR: 画面に出たエラーの文面。ターン更新中は段階(stage=start / rotated / backup / flush / save)も書きます。TURN_SIGNAL: ターン更新中にサーバから止められた(TERM・HUP・XCPU)。LOG_RESTORE: 途中で止まったターン更新の跡を見つけ、記録を元に戻した(止まった処理の番号・段階つき)。TURN_OVERLAP/TURN_CLAIM_STALE: 同じターンを処理中の別のアクセスがいたので始めなかった/止まった更新の札を片付けた。LOG_BACKFILL:recovered-logs.jsonから戻した欄の数。
画面
- 開発画面・観光画面・全体地図の「国別色/陣営別色」を、ページを移動せずにその場で切り替えられるようにしました。地図の上の「既定」「国別色」「陣営別色」の3つのボタンを押すと、今見ている地図の色がすぐ変わり、凡例も色に合わせて切り替わります。開発画面で押しても観光画面へ移らなくなりました。選んだ色はブラウザが画面ごとに覚え、次に開いたときも同じ色で表示します。
説明書
- 説明書に「4.7 民間の経済(自動)」を足しました(日本語・英語・繁体字中国語)。民間がお金と品物をどう動かすか、国が決められることと決められないこと、よくある質問(民間の船は動かせない、工場があっても工業品ができない理由、国庫の燃料の手に入れ方)をまとめました。4.4〜4.6 の冒頭には、指値・取引所・相対契約・常備航路などの国の取引命令がいまは実行できないことを書き足しました。
version1.61 (2026-09-17)
アーカイブ: hakoS-1.61-20260917.tar.gz / SHA256(先頭16文字): 96da766f48c8d9e1
version1.60 からの変更。dataVersion は 32 のままで、保存形式は変わりません。
陣営会議室
- 陣営会議室を箱庭海戦の陣営掲示板の設計に作り替えました。陣営のマーク・色つきの題名、折りたたむ投稿欄、画像・文字色、記事ごとの返信、ページ送り、検索、過去の投稿の閲覧、スキン切替が使えます。名前・色・画像・スキンはブラウザに覚えさせられます。
- 盟主からの連絡は先頭に1件を固定表示します。外交文は、相手の陣営と自分の陣営の会議室の両方に載ります。盟主は相手を選んで陣営を代表する文を送り、同じ話題へ双方から返信できます。正式メンバーは読むことができます。
- 自分の記事は削除キーで修正・削除でき、盟主は自分の陣営の記事を管理できます。親記事を消しても返信は残ります。限定文は自陣営のメンバーだけに表示します(hakoS には友好国の区分がありません)。
- 1.60 の投稿は引き続き読めます。追加された名前・題名などがない古い記事は、その項目を空欄にします。投稿は従来と同じ非公開の置き場所に UTF-8 で保存します。
民間の海の取引
- CPUは性格や方針にかかわらず、最初の港と、次に最初の工場を優先します。港の用地がなければ整地や埋め立てを進めます。
- 外国から買う側は商品代だけで取引でき、船代と運賃は運ぶ側が用意します。
- 森林を整地・地ならしすると、その森林の量に応じた木材が国庫に入ります。
- 商船は船代だけで建てられ、工業品は不要になりました。仕入れでも船代と1往復分の見積費用を残し、最初の出航に備えます。
- AIが港の建設を考えるとき、食料目標が省略された入力で止まる不具合を直しました。
- 古い在庫で生産国の記録がない品も、持っている国の品として輸出できるようにしました。相手がその国を禁輸している場合は取引しません。生産国が分かる品は、これまでどおり元の生産国の禁輸も確認します。在庫や帳簿の保存記録は書き換えません。
- 離れた港への航路を、もう少し先まで探すようにしました。90×90の地図に対して早く打ち切っていた探索を、256回から1,024回へ広げました。出航後も目的の港へ向かって探し、自国の空いている商船で自分の出航路が遠回りになる不具合を直しました。
- 民間に売り物があり、まだ港がない国では、AIが最初の港を優先します。安全で食料に余裕があり、他国の港へつながる建設場所を選びます。船を建てて取引するかは、運ぶ費用・利益・資金などを確かめて決めます。
- 民間船の運ぶ費用を下げました。自前の船に重ねていた用船料をなくし、現金の維持費を半額にしました。追加の船は船代を24航海で回収できるかで判断します。
- 国から依頼される運送の料金は据え置きです。燃料・食料・品物の売買価格は変えていません。
- 商船の速さを 1 ターン 2 マスから 8 マスにしました。32 マス先の港なら片道 4 ターン、浅瀬の多い航路でも 6 ターンほどで着き、長い航海で維持費と食料に差益を食われなくなります。
- ターン更新の海路の計算を軽くしました。港と港の間の航路は覚えておき、船が通り過ぎただけでは探し直しません。同じ盤面の 1 ターンで、航路探索にかかる時間が約 4 秒から約 1 秒に減りました。
- 港と港の航路は、探す前に「同じ海にあるか」を確かめるようにしました。同じ海なら遠回りでも見つかるまで探して覚えます(本番写しで、毎ターン探し直しては見つからなかった 43 組が、すべて一度で見つかります)。別の海なら探さずに「通れない」と覚え、海と陸の形が変わらない限り探し直しません。
- 16か国の本番写し 10 ターンで、航路の探し直しは 1 ターン 31〜45 回から、港が増えたり港の規模が変わったりしたターン以外は 3〜7 回になりました。
民間の経済
- 版が上がって最初のターン更新に各国の民間へ 2,000 億円を 1 回配る設定を、既定でオンにしました。配らないサーバーだけ local-init.cgi に
$HcivilReleaseGrant = 0;を書きます。1.61 を当てた次のターン更新で 1 回配られます。配る順は初期資金と同じ番号順(ターンで回す)で、帳簿の並びが国の処理順で変わりません。 - 家計が民間から食料と燃料も買うようになりました。これまで民間が現金を得る道は家計への工業品の販売だけでしたが、各国の都市の消費(市場容量ぶん)を民間の収入にします。買う量は、食料が人口の食料消費の 4 分の 1 まで(市場容量を下回らない)、燃料が工業品と同じ市場容量までで、民間が国内で売れる在庫(船の食料・燃料の取り分けを除く)の範囲です。
- 値段は食料が民間の食料価格、燃料が世界相場で、工業品と同じく都市の効率を掛けます。国の人口による食料消費は変わりません。家計の購入は都市の消費として、これまでの工業品と同じ帳簿(家計向け販売)と取引記録に品目ごとに載ります。
- 現金ゼロで工業品を持たない国の民間が、手持ちの食料・燃料で稼げるようにするための変更です。船や工業品の仕入れの前に、まず現金を作れます。
首都
- 首都のマスは自然災害(火災・地震・噴火・隕石・津波)を受けなくなりました。設計書にある「首都では災害が起きない」を実装したものです。ミサイルや怪獣の被害は従来どおりです。
- 首都の町が災害などで失われても、そのマスが自国領のままなら、残っている自国の町へ自動で首都を移します。このとき抵抗力は下がらず、陥落中にもなりません。首都を移したことはその国のログに出ます。他国に奪われたときは、これまでどおり陥落中になり、抵抗力が一度だけ2下がります。
- 遷都(命令89)の説明を説明書に加えました。200億円・1ターンで、自国の町系の土地へ首都を移せます。
- 陥落中の CPU 国は、自国の町が残っていれば次のターン更新でそこへ首都を戻します(費用なし)。プレイヤーの国は従来どおり遷都命令で戻します。1.60 までに火災などで首都を失ったままの CPU 国も、これで戻ります。
命令送信
- 陣営会議室の私有ディレクトリ(
$HallyPrivateRoot)を設定しているサーバーでも、ブラウザからの命令送信(JavaScript モード)が 1.60-9 の軽い経路(地図・帳簿・記録を読まずに受け付ける)を通るようになりました。16か国の本番写し(同じ端末で前後を交互に5回、最小値)で、私有ディレクトリありの命令送信(単独)は 0.773秒 → 0.245秒 になり、設定なしの場合と同じ速さです。 - 会議室の用意が済んでいない陣営があるとき(陣営を作った直後に会議室の作成に失敗したときなど)だけ、従来どおり全部読む経路を通して会議室を用意します。
ターン更新
- ターン更新の保存で、ログの写し(worldlogs.dat)を読み解く回数を 4 回から 1 回に減らしました。写しは 1MB ほどあり、1 回に 0.4〜0.6 秒かかっていました。JSON::XS が入っているサーバーではそれを使って読み解き、無ければ従来どおりです。
- 16か国の本番写し 10 ターンで、1 ターンの更新にかかる計算時間は、JSON::XS なしのサーバーで 74 ターン目 3.5 秒 → 3.5 秒、79 ターン目 5.8 秒 → 4.0 秒、83 ターン目 5.2 秒 → 3.7 秒、JSON::XS ありなら 83 ターン目 4.7 秒 → 2.8 秒になりました。
画面
- トップの世界相場の表を、右側の細い列から順位表の直前へ移し、画面の幅に合わせて折り返すようにしました。横に見切れず、スクロールも要りません。
- 観光画面の地図(25×25)をブラウザ側で描くようにしました。地図の元になるデータは画面を開くときに 1 回だけ受け取り、「←5 ←1 ↑5 ↑1 ↓1 ↓5 →1 →5」の移動ボタンと座標の入力は、サーバに問い合わせずに手元で描き直します。移動のたびに 625 マス分の HTML を作り直していた分が無くなり、観光画面の受信量は約 570KB から約 130KB に減りました。移動後もアドレス(?Sight=…&VIEWX=…&VIEWY=…)を書き換えるので、これまでどおり場所を共有できます。
- 観光画面のデータはトップの世界地図と同じ「観光客向け」のもので、軍艦(36〜40)と部隊は入っていません(商船はこれまでどおり見えます)。国別色・陣営別色の切替と、マスにカーソルを載せたときの地形の説明は、これまでと同じ内容です。色つき表示の塗り方はトップの 9×9 と同じ(マス全体を所有国の色で塗り、地形の絵を 1px 内側に)になりました。JavaScript を切っていると地図が出ないので、その旨を表示します。
- 開発画面の地図を、次の版でブラウザ側に描くための下準備として、自国から見える盤面(自国の施設・部隊・艦隊、視界に入った他国の部隊と軍艦、命令の番号)を 1 回で送る仕組みを追加しました。見える範囲の決め方は今の開発画面と同じ関数を使い、観光客向けのデータには引き続き軍艦と部隊を載せません。この版では画面の見た目は変わりません。
- 開発画面の地図(25×25)もブラウザ側で描くようにしました。自国から見える盤面のデータ(自国の施設・部隊・艦隊、視界に入った他国の部隊と軍艦)を画面を開くときに 1 回だけ受け取り、「←5 ←1 ↑5 ↑1 ↓1 ↓5 →1 →5」の移動ボタンと座標の入力は、サーバに問い合わせずに手元で描き直します。マスにカーソルを載せたときの地形の説明と命令の一覧、クリックで命令欄の座標が入ること、部隊数・ミサイル・抵抗力・国別色分けの表示切替は、これまでと同じです。開発画面はパスワードを送って開く画面なので、移動しても画面のアドレスは書き換えません。開発画面の受信量は約 980KB から約 740KB に減りました。
- 移動ボタンで描き直したあとも、選んでいた表示(ミサイル・抵抗力・国別色分け)は新しく描いたマスにそのまま反映されます。これまでは移動のたびに画面を読み直していたので、選び直す必要がありました。
- トップの「地形の詳細」の 9×9 の拡大図にも「←5 ←1 ↑5 ↑1 ↓1 ↓5 →1 →5」の移動ボタンを付けました。観光画面と同じく、押すとその場で描き直し、地図の端は反対側につながります。サーバには問い合わせません。
- ワールドマップは、セルを 1 回クリックすると選択を固定し、同じセルをもう 1 回クリックすると解除するようにしました。これまではカーソルを載せたセルに選択が付いてくるため、右側の「地図を表示」や「周辺を32pxの地図で見る」へマウスを動かす途中で選択が変わっていました。固定中は座標の横に「固定中(もう一度クリックで解除)」と出て、固定したセルの枠を太くします。別のセルをクリックすると固定先が移り、移動ボタン・矢印キー・座標の入力で選んだ位置も固定されます(Esc で解除)。
- 陣営共有情報の地図も、観光画面・開発画面と同じ 25×25 のブラウザ描画にしました。これまでは 90×90 の全マスをサーバが描いて送っていたので画面が大きく、受信量も約 7.1MB ありました。陣営から見える盤面のデータを画面を開くときに 1 回だけ受け取り、「←5 ←1 ↑5 ↑1 ↓1 ↓5 →1 →5」の移動ボタンと座標の入力は、サーバに問い合わせずに手元で描き直します。最初の中心は自国の最初のマスです。16か国の本番写しで、陣営共有情報の受信量は約 7.1MB から約 220KB に、表示にかかる時間は約 1.14 秒から約 0.51 秒になりました(最小値)。画面の並びも変え、左に所属国ごとの計画(国名のタブで切り替え。最初は自国)、右に地図を置きました。幅の狭い画面では縦一列(タブが上、地図が下)になります。矢印の横の「全体を表示」を押すと、同じデータから 90×90 の全体を描き(サーバに問い合わせません)、並びを一段にして地図を先頭に置き、画面の幅に合わせて縮小して全体を一目で見られます(枠の中でスクロールはしません)。全体表示のあいだ矢印と座標入力は休み、「25×25 に戻す」で元の並びと中心に戻ります。
- 見える範囲(陣営で共有する部隊の視界と軍艦の視界、味方の兵站基地の中身、味方の部隊だけに付く向き)は、これまでの陣営共有情報と同じ関数で決めています。陣営別の色分けと凡例、マスにカーソルを載せたときの地形の説明は従来どおりです(これまで陣営共有情報では説明の表示先が無く、カーソルを載せても何も出ませんでした。この版から出ます)。パスワードを送って開く画面なので、移動しても画面のアドレスは書き換えません。
- トップの「ワールドマップ」の下に「全体地図(フルサイズ)」のリンクを付けました。別画面(
hako-main.cgi?WorldMap=1)で 90×90 の全マスを表示します。既定では画面の幅に合わせて縮小して全体を一目で見られ、「画面幅に合わせて縮小」を外すと 1 マス 32px の原寸になりページをスクロールして見ます(枠の中でのスクロールはありません)。地図の元になるデータはトップの世界地図と同じ観光客向けのもの(軍艦 36〜40 と部隊は入らず、商船は見える)を 1 回だけ受け取り、ブラウザ側で描きます。国別色・陣営別色の切替、凡例、マスにカーソルを載せたときの地形の説明は観光画面と同じです。 - この画面は読むだけで、パスワードも国の選択も要りません(ターン更新中でも待たずに、公開済みの盤面を表示します)。16か国の本番写しでサーバの処理は約 0.36 秒・受信量約 130KB で、トップページ(約 0.54 秒・約 270KB)より軽い画面です。
深層検査で見つけて直した不具合
- 季節の猶予期間中のトップ一覧と地図の断片が表示できなくなる不具合を直しました。1.60-9 の画面ごとの読み込みで、猶予期間の画面が陣営の色を出す部品を読み忘れていたものです。
- 設定より先に翻訳を用意する順に戻しました。1.60-7 で順番が入れ替わり、辞書に無い語があったときの記録が増えていました。表示は変わりません。
- 民間船の航路の覚え書きが毎ターン捨てられていた不具合を直しました。船が乗っているマスの記録が空のまま保存され、読む側が全体を無効にしていたため、毎ターン航路を探し直していました。直後のターン更新から覚え書きが効き、更新が軽くなります。
1.60 公開後の手直し(1.61 に統合)
1.60 の公開後に本番で見つかった不具合と重さの直しです。番号は作業順で、すべて 1.61 に入っています。
1.60-1(2026-09-17)
地図にカーソルを乗せたとき、右側の地形の説明の高さが変わって画面が揺れていたのを直しました。
1.60-2(2026-09-17)
命令を保存した直後にロックを放すようにし、通常の命令送信では、変わった島と必要な世界ヘッダだけを保存するようにしました。変わらない島・市場・ログは書き直しません。保存前に同じ世界を読み直す処理や、変更していない帳簿の再検査も省きました。ターン更新時の検査と保存は続けます。
16か国の本番写しで、単独送信の保存は 0.380秒 → 0.079秒、ロックを握る時間は 0.810秒 → 0.672秒でした。3本同時の最大待ち時間は 1.641秒 → 1.531秒。共通マップ N 並みの目標(0.1〜0.2秒)にはまだ届いていません。読込に単独で 0.553秒かかっており、次の改善対象です。全体の応答時間は 1.373秒 → 1.457秒でした(同じ端末で他の作業も実行中、各条件1回)。
保存途中で止まった場合に前の世界へ戻す仕組みも維持しています。世界ヘッダが各ファイルの世代を記録するため、hako-main.cgi と hako-generation.cgi は、処理中の CGI がいない状態で一緒に差し替えてください。更新後のデータを旧版の CGI にそのまま戻すことはできません。旧形式の読込や陣営チャットの連携処理が必要な場合は、従来の保存を使います。
1.60-3(2026-09-17)
ミニマップに鉱山などの記号が出なくなっていたのを直しました。
1.60-4(2026-09-17)
保存や表示のたびに走っていた確認(相場の範囲・陣営の整合・一式の整合)を通常の経路から外し、点検用の関数と管理画面に残しました。陣営を変える操作やターン更新で必要な確認は続けます。相場が下限・上限を外れていても、読込・表示・命令送信を止めません。価格を上下限に収める処理はターン更新だけで行います。
ブラウザからの通常の命令送信では、地図・民間の帳簿・公開ログの中身を読み解かず、必要な国と計画を保存します。民間の新機能の確認はターン更新に残しています。ただし、表示や民間の画面操作から共通の帳簿点検を呼ぶ箇所は、今回の変更範囲外のファイルに残っています。
保存はファイルごとの一時ファイルからの差し替えにし、毎回の前世代コピーと自動復旧をやめました。読込側は世代番号の一致を確かめ、保存途中なら読み直します。巻き戻しは管理画面から定期バックアップを使います。1.60-2 に記載した前世代への自動復旧は、この変更で廃止しました。
16か国の本番写しで、命令送信は 1.122秒 → 0.454秒、3本同時の平均は 2.072秒 → 0.667秒でした。トップ表示は 1.459秒 → 1.878秒、開発画面への入室は 1.290秒 → 1.253秒で、トップ表示の高速化は確認できていません。同じ端末で他の作業も実行中、各条件1回の測定です。共通マップ N の命令送信は 0.210秒で、目標の1.5倍以内(0.315秒)にはまだ届いていません。
1.60-5(2026-09-17)
観光画面と開発画面から世界相場の表を外しました(トップ画面の下/統計で見られます)。
1.60-6(2026-09-17)
- トップ・観光・開発画面を開く際、全ての国の島ファイルや全ログを読み集めて、保存時期・数量・陣営・民間の帳簿を照合する処理を外しました。表示に使う公開盤面と、選んだ国の計画・掲示板、国情報表の出品一覧を読みます。
- 世界地図では、海・平地・森など同じ説明になるマスの説明文と画像情報を使い回します。都市名・鉱床・船荷など、場所ごとに違う表示はそのままです。
- 観光・開発画面の独立した世界相場の表を外し、トップの地図の下にまとめました。需要・関税・契約の表示と入力欄は残しています。
- 同じ本番写しを各1回測定した全体時間は、トップ 1.380→1.247秒、観光 0.710→1.203秒、開発 0.943→1.701秒でした。読み込みはそれぞれ 0.385→0.160秒、0.354→0.188秒、0.365→0.158秒に減りましたが、観光・開発の全体時間短縮は確認できていません。
- 共通マップNは40×40、Sは90×90で面積は5.0625倍です。Nの実測と面積から求めた目安はトップ0.604秒・観光2.164秒・開発4.663秒で、トップは未達です。起動や画面準備の時間が残っており、併走処理の影響も未確定です。
1.60-7(2026-09-17)
- プログラムの部品(.cgi ファイル)の読み込みを 1 か所にまとめました。読み込んだ場所を絶対パスで覚えるので、作業ディレクトリを変えたあとに読んでも壊れず、同じ部品を二重には読みません。172 か所の読み込みを置き換えました。
- この整理で「翻訳を用意してから設定を読む」順が入れ替わっていたため、1.61 で元の順に戻しています(上の「深層検査で見つけて直した不具合」)。
1.60-8(1.61向け)
- 国一覧の「市場規模」を都市と市場施設を合わせた「商業人口」に変え、地形の説明も農業・商業・工業の同じ内訳に揃えました。
- 右側の地形詳細では、各マスに所有国の色の枠を付け、隣り合う国の領土が分かるようにしました。選択地点の白枠はそのままです。
1.60-9(2026-09-17)
- 画面ごとに必要なコードだけ読み込むようにしました。ブラウザからの命令送信(JavaScript モード)は、開発画面を描くコード(hako-js / hako-map)と命令の説明文の辞書を読まずに受け付けます。競売・外交の輸送と検査・版の表示・一時ファイルや日時整形の Perl モジュール(File::Temp / POSIX / Unicode::Normalize / File::Path)は、使う処理の中で初めて読みます。タグを含まない文言は HTML の補助辞書を読まずにそのまま escape します(表示は同じ)。トップ・観光・開発画面は LLM 画面のコード(hako-llm.cgi)を読まなくなりました。ターン更新は従来どおり全部読みます。
- 命令送信で読む CGI は 33 → 26 ファイル、辞書は 7 → 2 になりました。16か国の本番写し(同じ端末で前後を交互に3回、最小値)で、命令送信(単独)は 0.305秒 → 0.245秒、3本同時は 0.312/0.422/0.538秒 → 0.267/0.354/0.464秒、トップ 0.536 → 0.512秒、観光 0.460 → 0.418秒、開発画面の入室 0.651 → 0.683秒(誤差の範囲)でした。命令送信は共通マップ N(0.210秒)の1.5倍(0.315秒)以内に入りました。
- 陣営会議室の私有ディレクトリ(
$HallyPrivateRoot)を設定しているサーバーでは、命令送信は従来どおり全部読む経路を通るため、この短縮は当てはまりません。
version1.60 (2026-09-16)
アーカイブ: hakoS-1.60-20260916.tar.gz / SHA256(先頭16文字): 75d5169f01691b14
version1.59 からの変更。dataVersion は 32 のままで、保存形式は変わりません。 「更新中です」がほとんど出なくなります。読むだけの画面はロックを待たず、統計と設定一覧は静的ファイルで配り、右側のミニマップはブラウザ側で組み立てます。陣営には外交スレッドと重要投稿欄が加わります。
ロックを待たない・断らない
- 読むだけの画面(トップの地図・観光・開発画面の入室・地形の詳細・陣営情報・統計・観光者通信)は、他の人が更新中でも公開済みの盤面で応答します。これまでは誰かがロックを握っているだけで「更新中です」と断っていました。書く側は原子的に公開している(全ファイルを tmp+rename で置き、世代番号を刻む)ので、読む側は最新の一式をそのまま読めます。世代が食い違えば少し待って読み直します。
- 命令の送信・登録・設定変更など書き込む操作は、ロックが空くまで待ちます(既定15秒、
$HworldLockWait)。上限を超えたときだけ従来の「更新中です」を返します。 - 統計は、読み終えた時点でロックを放し、描画とキャッシュ書き込みをロックの外で行います。取れなければ書かずに次の閲覧者に回します。
統計と設定一覧は静的ファイルで
- ターン更新の最後に
stats.html(全体・人口順・日本語)を、設定変更後にsetup.htmlを書き出し、ヘッダのリンクはそれらを指します。閲覧で CGI もロックも使いません。他の並び順・国別・他言語は従来どおり CGI です(こちらもロックを待ちません)。
トップの右側のミニマップはブラウザで組み立てます
- 世界地図にカーソルを乗せるだけで、右側の 9×9 と地形の説明が追従します。90×90 ぶんの地形・所有者・画像名をページに1回埋め、そこから組み立てるので、動かすたびに CGI を呼びません。画像はブラウザがキャッシュします。
陣営:外交スレッドと重要投稿欄
- 陣営会議室に「重要投稿欄(盟主から)」と「陣営間の外交」を追加しました。外交は箱庭海戦の外交掲示板を母体に、陣営ペアに1本のスレッド(双方が同じものを見る)にしました。送るのは盟主だけ(陣営を代表します)、読むのは双方の正式メンバーです。送った控えは同じスレッドに残り、片方だけ書けて片方失敗する事故がありません。
- 会議室の置き場所が移っていた場合に部屋が作られず入れなかった不具合を直しました。ディレクトリごと無いときだけ新規に作り、中身が欠けているときは壊れているとして止めます(投稿履歴を黙って作り直しません)。
民間の経済
- 民間が現金を全額仕入れに使い切らず、船1隻分(100,000 milli)を残すようになりました。1.59 の本番では最初のターンで現金の93.7%を仕入れに使い、港ができても船を建てられず、輸出の道が閉じていました。
- 版が上がって最初のターン更新で、各国の民間へ初期資金と同額(2,000億円)を1回配れます(テスト運用向け)。既定は配りません(
$HcivilReleaseGrant = 0)。配るサーバーではlocal-init.cgiに$HcivilReleaseGrant = 1;を書いてください。配った版はdata/civil-grant.<版>に記録し、同じ版で二度は配りません。 - 追加資金が検査に引っかかって届かない不具合を直しました。どの国にも配れなかった場合は配布済みにせず、次のターンにもう一度試みます。
- 複数の資源を続けて仕入れても、船1隻分(100億円)を仕入れに使わないようにしました。資源を買うたびに残金を確かめ、実際に請求される金額で買える量を決めます。
- 民間が買いそろえる目標を、資源ごとに小型商船1隻分(128単位)にしました。食料だけを1,024単位まで買い込み、資金が在庫のまま動かなくなることを抑えます。すでに持っている在庫は減らしません。
- 国どうしの在庫の差が、取引価格に反映されやすくなりました。従来は512単位を超える差がないと価格が折り合いませんでしたが、今は64単位を超える差から取引の候補になります。実際の取引には、港や国境、運ぶ費用、買い手の資金などの条件も必要です。
CPU国家と地形
- CPU国家が、収入の上限(工場+採掘場の規模)に人口が引っかかっているときは工場を優先して建てるようになりました。これまでは町だけを増やし、収入が増えないまま維持費だけ増えていました。
- 鉱山・採石場・炭坑・露天鉱脈・ウラン鉱山・大鉱山は、怪獣に踏み潰されず、他国の整地・地ならしでも奪われなくなりました(山と同じ扱い。自国の鉱山を畳むのは廃山を使います)。
画面
- 兵站基地の画像が軍団9番以降で壊れていたのを、固定画像と右上の軍団番号に変えました。部隊が乗っていればその軍団番号を優先します。
- 農業規模の表示に、地形の農業人口を含めました(失業率の計算と同じ出どころ)。
- 陣営共有情報の地図を六角形の並びに直しました。
- 最新ログ(hakolog.html)に CSS が当たるようにしました。
- 画面に混ざっていた警告(表示モードの初期値、管理画面の更新時刻設定)を直しました。
- ターン更新直後に建国適地の一覧が無い盤面で画面が壊れていたのを直しました。
- 建国直後の国がターン杯の回(25 の倍数のターン)に居ると、ターン更新の出力に警告が混ざっていたのを直しました(新しい国の統計を建国時から 0 で持ちます)。
- あずかり中の国の収入処理と、国名変更の履歴行で、更新のたびにエラーログへ警告が出ていたのを直しました(出力される内容は同じです)。
- 相場が下限や上限に着くと世界が読めなくなっていたのを直しました。
version1.59 (2026-09-15)
アーカイブ: hakoS-1.59-20260915.tar.gz / SHA256(先頭16文字): 6b7ad8ade8038237
version1.58 からの変更。dataVersion は 32 のままで、保存形式は変わりません。 民間の経済が動き出します。あわせてコマンドのターン消費を整理し、CPU国家が外交と港の運営を自分で判断するようになります。画面の表示も13件直しました。
民間の経済が動き出します
これまで民間の倉庫は空のままで、商船も1隻もなく、国どうしの交易が一度も起きていませんでした。原因は3つあり、すべて直しました。
- CPU国家が、備蓄を超えた分の資源を民間へ出すようになりました。これまでは「民間へいくら出すか」の設定が全資源0のままで、誰も設定していなかったため、民間の手元に何も渡っていませんでした。守りの国は燃料と弾薬を多めに抱え、商人気質の国は多く出す、という差が出ます。
- 人間の国も、建国時に控えめな初期値が入るようになりました。すでにある国には、更新後の最初のターンで入ります。一度でも自分で設定した国の値は変えません。設定画面(民間への供給)でいつでも増やせます。
- 民間が、仕入れの前に維持費と船代を取り分けるようになりました。これまでは手元の資金を全額仕入れに使ってしまい、運ぶ船を用意できませんでした。
あわせて、小型商船の性能と費用を見直しました。積載量を64→128に増やし、燃料・維持費・船代を下げています。これまでは往復の運賃が荷物の儲けを上回り、どんな航路でも赤字になっていました。
- 民間が、実際に建てられる船を選ぶようになりました。これまでは一番儲かる案だけを見ていたため、買えない大型船を選び続けて1隻も建ちませんでした。
- 航海の途中で燃料や食料が尽きた船が、その場で補給を受けられるようになりました。これまでは自国の港のすぐ隣にいるときしか補給できず、外洋で止まると二度と動けませんでした。
- 荷降ろしできない状態が続いた船が、6ターンで引き返すようになりました。戦争や禁輸で行き先の港が使えなくなったとき、これまでは荷物を積んだまま待ち続けていました。相手との関係が戻れば、引き返さずに航海を続けます。
民間は国のコマンドを使いません。儲かる取引を見つけると自分で商船を建造し、航路を決めて運びます。国がすることは、港を建てること、民間へ出す量を決めること、港の開放度・関税・通行料を決めることだけです。
そのほかの遊びかたに関わるもの
- 地形を変えないコマンドが、ターンの枠を使わなくなりました。倉庫の出し入れ、関所の政策、陣営の申請取消・承認・脱退・除名・盟主移譲・作成・管理、補給修理、契約の申込・承諾・破棄、港の中継料、保税の預入・転送、外交の援助・交換申込・交換承諾・輸送取消の21件です。開発と同じターンに出せます。資金繰り・誘致活動・国の放棄は、これまでどおり枠を使います。
- CPU国家が友好を打診するようになりました。領土が4ヘクス以内にある国だけが相手です。同じ陣営の国や、すでに友好・交戦中の相手には送りません。
- CPU国家の宣戦布告が、距離と国力で相手を選ぶようになりました。近くて自国より弱い相手を選びます。すでに戦争をしている国は、新しい宣戦をしません。同じ陣営の国も対象外です。
- CPU国家が港の開放度・関税・通行料を決めるようになりました。実際に港を持っていて、自国に脅威がないときだけです。商人気質の国は開放的に、軍事重視の国は友好国だけに開く、という差が出ます。
画面
- ゲームの説明の勝利条件が、実際の設定と合うようになりました。シーズンを有効にしているのに「終了ターンの上限はありません」「人口順位1位」と表示されていました。今は最短・最長ターン、単独と陣営の領土率、所属期間、上限ターンでの配点(領土・人口・資金)が、設定値から表示されます。
- 倉庫の「自国」の数が、実際に引き出せる量になりました。他国が買い取り済みの分まで自国として数えていたため、30と表示されていても10しか引き出せない状態でした。所有者の一覧にも、旧競売で買い取られた分が出るようになりました。
- 港の開放政策の選択欄が、今の設定を選んだ状態になりました。「閉鎖」なのに選択欄が「非交戦国に開放」になっていたため、確認のつもりで押すと開放する計画を送ることになっていました。
- 外交の食料が「食料 8 00トン」と表示されていたのを直しました。「食料 800トン」と出ます。
- 外交で届いた申込に、期限が表示されるようになりました。いつまでに承諾すればよいか分かります。
- 出航した商船の一覧に、積荷の品目・数量と届け先が出るようになりました。これまでは「20/64」としか出ず、何をどこへ運んでいるか分かりませんでした。民間は国のコマンドなしで動くので、見えないと何が起きているか分かりませんでした。
- 市場・陸路物流の画面に出ていた内部データを、読める表に変えました。取引がないときは「いまは取引がありません」と表示します。
- 会議室の投稿時刻が、読める形になりました。
1800000000という内部の数字が出ていました。閲覧している端末の時刻で表示します。 - 会議室に入れなかったときの案内が、読める言葉になりました。
alliance: authenticationという開発者向けの文字列が出ていました。 - 設定のスタイル名に余分な文字が入っていたのを直しました。「デフォルト\n」と表示されていました。
- 統計の説明から、内部の項目名を消しました。国力は推移グラフで見られる旨を表示します。
- 国の登録と国名変更に失敗したときの画面が、英語・繁体字中国語でも表示されるようになりました。満員・国名未入力・禁止文字・重複名・オーナー名未入力・パスワード未入力・資金不足の7画面が日本語のままだったため、日本語以外では何を直せばよいか読めませんでした。
- シーズンの案内・履歴・リプレイが、英語と繁体字中国語でも表示されるようになりました。履歴の一覧に言語を指定するとエラーになっていたのも直しました。
- トップのリリース表示から更新履歴へ移動できなかったのを直しました。リンクが
image/ver.htmlを指していました。
設置・更新
- 差分アップデートの手順は同梱の手順書のとおりです。
data/は差分に含まれません。
version1.58 (2026-09-14)
アーカイブ: hakoS-1.58-20260914.tar.gz / SHA256(先頭16文字): 12c21b8a256b005f
version1.57 からの変更。dataVersion は 32 のままで、保存形式は変わりません。 1.57 を入れた後で見つかった、遊びにくい点と表示の乱れを直します。
遊びかたに関わるもの
- 造船で数量を変えると、コマンド名が変わるようになりました。これまでは数量を変えても「造船」としか出なかったため、数量0のまま実行して意図せず軍港が建つことがありました。今後は「軍港を建設」「駆逐艦を建造」〜「潜水艦を建造」「商船を建造」と、何ができるかが送信前に分かります。
- 軍港に整地・地ならしを行うと、浅瀬に戻るようになりました。これまでは平地になっていたため、海だった場所が陸地に変わってしまっていました。誤って建てた軍港を元に戻せます。
- 陣営加入申請が、コマンドの枠を使わなくなりました。これまでは申請を入れると後の開発計画が1ターンずつ後ろにずれていました。開発と同じターンに申請できます。申請の確定がターン末になる点は変わりません。
画面
- 開発計画の画面に警告文が出ていたのを直しました。アイテムを持っていない枠を数えようとして起きていたものです。
- アイテム装備の欄が、記号の羅列で表示されていたのを直しました。
- 計画一覧で、陣営加入申請の行にも色が付くようになりました。
設置・更新
- 差分アップデートの手順は同梱の手順書のとおりです。
data/は差分に含まれません。
version1.57 (2026-09-14)
アーカイブ: hakoS-1.57-20260914.tar.gz / SHA256(先頭16文字): c5a93af7b8a09e05
version1.56 からの変更。dataVersion は 32 のままで、保存形式は変わりません。
遊びかたに関わるもの
- 総職場数に、地形から得る農業人口が入るようになりました。これまで農場・工場・採掘場の規模だけを足していたため、地形の農業人口が丸ごと抜けていました。同じ国で 24,000人 → 72,100人 になる例があります。あわせて雇用の表示も変わり、「失業率58.69%」と出ていた状態が「労働力不足24.10%」と表示されます。数値が急に増えたように見えますが、これまでが少なすぎました。
- 正式に同じ陣営の味方が駐留していても、割譲・徴兵・農工業の集計を妨げなくなりました。敵・無所属・友好関係だけの国・加入申請中の国が駐留している場合は、従来どおり妨げられます。
- 高速農場・高速工場は自国領にしか建てられなくなりました。拒否されたときは地形も所有者も資金も変わりません。通常の農場・工場は従来どおり他国領にも建てられます。
- 味方の包囲で領土を失わなくなりました。地形の抵抗力を計算するとき、土地の所有国から見て正式に同じ陣営の国と友好国を、駐留による占領からも包囲の圧力からも除きます。敵と味方が混ざった包囲にも適用されます。
- 進軍は指定した方向を攻撃するようになりました。砲兵は指定方向の直線2セル先も射程に入ります。攻撃と移動は従来どおりです。
- 誘致とハンデを併用できるようになりました。人口増の増分が両方に効きます。食料不足のときの扱いは変わりません。
- 海兵が他国領・中立地から海や海底基地へ出られるようになりました。陸から陸への移動制限は従来どおりです。
- 新しく設置した部隊が、消滅した部隊のレベルと装備を引き継がなくなりました。
- 海と浅瀬は占領できなくなりました。海はターン終了時に中立へ戻ります。海底基地・海底都市・平地の占領は従来どおりです。
- 撤退予定の部隊がいる土地を「部隊がいる」と数えなくなりました。焦土戦術での悪用を防ぎます。
- 中立の陸地が、安全限界の面積集計から漏れていたのを直しました。
- AIが開拓ばかりする偏りを直しました。平時は内政と貿易にも最低限の行動を割り当てます。戦時はこの下限を外します。
画面
- 地形の情報表示がカーソルに追従するようになりました。これまで画面左下に固定されていました。画面の右端・下端では反転して収まります。
- 陣営マップの表示欠落を3件直しました。
- 観光画面で相手の部隊が見えてしまう問題を直しました。
- トップの案内文を実際の運用に合わせて書き直しました。実装されていない「違反国家の凍結」「登録後1時間でコメント未設定なら自動削除」の記述と、設置していない外交掲示板への案内を削除し、テスト版であることを明記しました。日本語・英語・繁体字中国語の3言語。
- 更新履歴のページ
ver.htmlと、箱庭共通マップNとの違いをまとめたabout-s.htmlを同梱しました。トップのリリース表示から更新履歴へ移動できます。 - 統計画面が開けなかったのを直しました。市場の基準価格の設定が統計画面から見えず、価格の範囲検査に必ず失敗していました。シーズン機能を使っている場合に照合が合わなかった問題もあわせて直しています。
内部
- ターン更新が約42%速くなりました(同じ盤面で10.9秒 → 6.3秒)。
- 全ファイルを
use strictへ移行しました。その過程で既存の不具合を複数直しています。 use warningsが出していた警告111件を解消しました。うち9件は未定義値の握り潰しではなく、構造の不具合でした(敵国がいない場合の集計初期化漏れ、代入元のない変数を国名に連結、新シーズンで存在しない履歴ファイルの読み取りなど)。- 主要なファイルを名前空間(
package)に整理しました。保存形式・出力は1バイトも変わりません。
設置・更新
- 差分アップデートの手順は、差分に同梱する
<版>-INSTALL.mdのとおりです。 data/は差分に含まれません。
version1.56 (2026-09-14)
アーカイブ: hakoS-1.56-20260914.tar.gz / SHA256(先頭16文字): 372af09c682bd4ad
version1.55 からの変更。dataVersion は 32 のままで、保存形式は変わりません。
遊びかたに関わるもの
- ルールAIが兵種の相性を考えて戦うようになりました。三すくみや対空の得意・不得意を 見て、観測した敵に合う兵種と攻撃方向を選びます。
- 兵種を変えるときは、後方の軍団で前線の穴を埋めるようになりました。 その場で変更できない装甲系の部隊は撤退を含めて判断します。占領を担当する軍団まで 占領できない兵種に変えてしまわないよう、役割と残る部隊も確認します。
- 砲兵の2ヘクスの射程を、攻撃にも味方の支援にも使うようになりました。 敵を撃てる位置と、味方を支援できる位置の両方を考えて配置します。
- 少数の部隊でも敵の前進を止める配置を選ぶようになりました。 部隊の周囲への移動を制限するZOCを使い、国境に防衛線を作ります。
- 軍団ごとに「攻撃・進軍・移動・防衛」を使い分けるようになりました。 前線で戦う軍団、占領に向かう軍団、自国内で再配置する軍団、守備を続ける軍団に 合う命令を選びます。人間が残した防衛命令からも、状況に応じて動き出せます。
- 占領が終わるまでのターン数を見積もって、目標を選ぶようになりました。 兵力によって抵抗力を削る速さが違うことを考慮します。
- 平時にも軍を動かし、中立地を押さえて視界を広げるようになりました。 首都と国境を守りながら展開し、脅威があれば引き上げます。
- 複数の軍団が別々の方向へ展開できるようになりました。AIが建てる兵站基地に 別々の軍団番号を割り当てます。一度に動かす軍団は平時16・戦時32までになりました。
- 自国の土地を平地にするときは、ターンを使わない「地ならし」を選ぶようになりました。 資金が足りないときは「整地」に切り替えます。
画面
- 軍団の配置や命令に、上のAI判断が反映されます。新しい操作項目の追加はありません。
説明書
- 兵種の相性、砲兵の射程・支援、ZOC、軍団命令、占領は、既存の戦闘ルールに従います。 今回はルールAIがこれらを使うための更新です。
設置・更新
- 稼働中のversion1.55には、1.55 → 1.56の差分を使ってください。
data/、hakos-private/、local-init.cgi、認証情報は更新対象外です。 会議室の秘密鍵は差し替えません。フル版の初期世界を稼働データに上書きしないでください。 - 更新前は
FROM.json、更新後はTO.jsonで全管理ファイルを照合します。 詳しくは差分に同梱する手順書を参照してください。
version1.55 (2026-09-13)
アーカイブ: hakoS-1.55-20260913.tar.gz / SHA256(先頭16文字): b6fe15610e75d4b2
本番で動いている version1.54 からの変更をすべて含みます。dataVersion は 32 のままで、 保存形式は変わりません。既存サイトの data/ hakos-private/ local-init.cgi は更新対象外です。
不具合の修正
- 建国しても世界の歴史に残らなかったのを直しました。同盟の記録を重複除去する処理に 取りこぼしがあり、建国・改名・管理人あずかりの記録が「重複」と判定されて捨てられていました。 本番で8カ国すべての建国記録が失われていたのはこのためです。 これまでに失われた記録は戻りませんが、今後の建国は記録されます。
遊びかたに関わるもの
- 軍艦が見えなくなりました。索敵範囲の外にある駆逐艦・巡洋艦・戦艦・航空母艦・潜水艦は、 海にしか見えません。所属もHPも艦隊も分かりません。商船・海賊船・遊覧船は今までどおり見えます。 陣営に入っていれば、陣営専用マップで仲間の視界が合わさります。
- 鉱山が自動で掘るようになりました。毎ターン命令を出さなくても、人手があれば掘ります。 人手は「農業 → 鉱業 → 工場 → 市場」の順に取られ、前が使い切れば後ろは動きません。 埋蔵量は少しずつ自然に回復します。労働力を工場へ回したいときは鉱山を山に戻せます (埋蔵も蓄積も残るので、また鉱山に戻せます)。
- 資源のない山には採掘場を建てられなくなりました。掘るものが無いためです。 山は今までどおり視界2ヘクスを持ち、兵種によって通れない地形です。
- 鉱山が雇用と収入を生むようになりました。これまで鉱山・採石場・炭坑・露天鉱脈・ ウラン鉱山・海底油田は数に入っておらず、2箇所持っていても「規模なし」と表示されていました。
- 大都市・現代都市・ニュータウンは農業をしなくなりました。都市化した土地の住民が 工業に回ります。村・町・都市・海底都市は今までどおりです。
画面で分かるようになったもの
- 推移グラフを統計画面に追加しました。人口+兵力・人口・兵力・面積・国力の5種類を、 最大120ターン分たどれます。外部のサービスは使いません。
- 地形をなぞると、その土地が何をしているかが出ます。「2000人 / 農業1400人」のように、 人口と主な産業の規模が分かります。
- トップページに首都名が出ます。首都が陥落しているときはその旨も出ます。
- 毎ターンの収支に資源が加わりました。石材・木材・石油・燃料・工業品・弾薬・ウランの増減が、 自国だけが見られる記録に出ます。減っているものは赤字です。観光の画面には出ません。
- コマンド欄で何を建てるか分かります。「交易施設建設」ではなく「精製所を建設」 「港をレベル2に改修」のように、数量欄で選んだ内容が出ます。6種類の命令が対象です。
- コマンド欄の色分けを直しました。ターンを使う命令と使わない命令が区別できます。
- 国旗が24種類になりました。設定画面から選べます。20カ国が同じ旗になることはありません。
- 市場画面の農業人口に内訳が出ます。土地由来と農場由来を分けて表示します。
説明書
- 日本語・英語・繁体字中国語の説明書と、ゲーム内ヘルプに次を追記しました。 軍艦の視界、陣営での視界共有、敵対していない艦の通過、推移グラフ、 自給農業のしくみ(人口が少ないうちは全員が自給に回ること)、人手が取られる順序。
設置・更新
- 変更されたファイルだけをアップロードできるようになりました。版ごとの差分をまとめ、 プレイ中の国・会議室・設定は対象に含めません。手順は差分に同梱する
<版>-INSTALL.mdにあります。 - 更新の前後でファイルを照合できます。SHA256の一覧を版ごとに持ち、Perlだけで検査できます。 openssl は不要です。アップロードが途中で切れても気づけます。
- 設置手順から openssl を外しました。データフォルダ名の生成にPerlを使います。
- 版番号を
version.cgiの1行で管理するようにしました。表示は従来どおりversion1.55の形です。 - 配布物から、開発機の作業記録が入っていた初期ログを空にしました。
- 再生成される公開ログを配布対象から外しました。
version1.54
本番で動いていた版です。ここから上が今回の更新分になります。
ここから下の hakoS-24 / 26 / 27 / 30 / 32 は従来の配布名・データ形式に沿った履歴です。内容と記録済みSHA256を保持しています。新しい製品版は上の version1.xx 節へ新しい順に追加します。
hakoS-24 (2026-09-06)
アーカイブ: hakoS-24-20260906.tar.gz / SHA256(先頭16文字): 77305bb5011d445f
この版に入っているもの(前版からの追加・修正。以前の版の内容も含みます):
- 陣営レジストリ、加入・移籍・解散手続き、共同資源、会議室と権限検査。
- 世界市場、産業連関、物理輸送、指値・常備航路・関税、相対契約。
- 木材・石材・鉱石・石油・燃料・工業品・弾薬・ウランの資源管理。
- 軍団32、艦隊16。海軍、乗船、索敵、艦艇補給を共有90×90マップへ統合。
- 山や海を自然地形として保持し、埋蔵資源の種類・豊富さを別属性として保存。
- hakojima.datと市場・計画ファイルを揃えた世代コミット、直前世代復旧、管理バックアップ。
- 建国適地リストに加え、中心と周囲6セルの地形・所有者を現況で再検証。中心は森林/荒地、周辺は許容地形。山・海・浅瀬や使用済み領土への建国を拒否。
- 入出力をUTF-8へ統一。国別領土マップ・資源表示・都市段階を追加。
- 切断耐性と復旧記録:SIGPIPE無視・コミット後の応答送信、復旧証拠の退避と詳細ログ、管理画面からの退避一覧・削除。
初回配布・設置対応
- CGI入口のumask 0077、公開HTMLの0644、local-init.cgiの読込み、CORE-B用shebang/LF、設定から認証ファイルを初期生成する補助、データ・会議室・CGIライブラリの保護設定、設置チェック、初期世界と手順書を追加しました。CGIのCSP応答ヘッダーで、旧テンプレートに残るHTTP素材の取得先をHTTPSへ切り替えます。今回の再生成では、CGI引数由来のdiamond readをSTDIN専用へ変更、POSTを1 MiBに制限、CookieへSecure/HttpOnly/SameSite=Laxを付与、設定表示のXSSを防止、既定パスワードと旧式の無認証初回設定を拒否し、診断画面とエラー表示のパス情報を伏せました。また、応答欠落とロックファイル汚染を起こすプロセス内gzipを削除し、圧縮はWebサーバ側に委ねます。hako-init.cgiの既定値、戦闘・経済等のゲームロジックは変更していません。
- sampleはHTTPSの
https://nations.ssssjima.net、6時間更新、途中参加上限20です。$HlegacyPublicSite=0で固定HTTPチャット・旧旗アップロードを無効にし、$HdemoMode=0で観光者への各国収支・部隊命令行の公開を止めます。旧デモ設定は使いません。公開ログ以外の生成データは0600、非公開フォルダは0700です。 - 初期世界は
c10_big7_forest55_v2のworld.map / world.resources / world.sitesから生成した0国・ターン1・コミット世代1です。builderが必要とするworld.txtも同梱しています。demo/data、既存パスワード、アクセス記録、過去のプレイ状態を同梱していません。
hakoS-26 (2026-09-08)
アーカイブ: hakoS-26-20260908.tar.gz / SHA256(先頭16文字): 4effaaa9b4294077
この版に入っているもの(前版からの追加・修正。以前の版の内容も含みます):
- AIプレイヤー3段: LLMモード画面(
hako-llm.cgi)、ルールAI(hako-ai.cgi/hako-plan.cgi)、未入力計画の穴埋め連携と共通処理(hako-ai-common.cgi)を同梱。 - 日本語・英語・繁体字中国語のUIと
hako-i18n.cgi、3言語の辞書・用語集、構造化ログ定義を同梱。初期公開ログはhakolog.html/hakolog.en.html/hakolog.zh-TW.htmlの3種類。 - 国名・元首名・コメントの任意en/zh欄と
hako-names.cgiを追加。保存形式はdataVersion 26。 - 統計(
hako-graph.cgi/hako-stats.cgi)と観光者通信一覧(lbbslist.cgi/hako-lbbs-view.cgi)、公開画面共通処理(hako-public.cgi)、設定一覧の作り直しを反映。 - 統計HTMLキャッシュは
<dataDir>/stats-cache/に言語別で実行時生成。上限128件で、未知の国IDは404・キャッシュ生成なし。空ディレクトリは同梱せず、data配下のアクセス拒否を継承。 help/index.html/help/index.en.html/help/index.zh-TW.htmlは準備中ページ。各サイト運営者が説明を書く。ヘッダーの配布元2件はWebアーカイブへ変更し、冷蔵庫開発元・外交掲示板のリンクを削除。- 公開CGI入口は
hako-main.cgi/hako-mente.cgi/hako-graph.cgi/hako-editorN.cgi/lbbslist.cgi/deploycheck.cgiの6件。AI・翻訳・統計等のライブラリCGIとlang/のHTTP直接アクセスを拒否。公開ログ・ヘルプ各3種類は許可。hako-log-generation.cgiも非公開のライブラリ。 - 配布用初期化で構造化ログのライブラリを読み込み、単独の地図エディタ・管理画面でもヘッダーの言語別ログリンクを解決。クリーン展開で再現した
logRecentFile未定義による500を解消。
2026-09-08 レビュー修正
- 言語別国名を地図のイベント属性へ連結せず、データ属性と共通イベント処理で表示。国名・陣営プレビューの保存型XSSを修正。
- AIは1国1 CPU秒・AI準備全体60 CPU秒の予算を処理中のチェック地点で検査。超過した国は資金繰り(命令41)の簡易計画を使い、世界は続行。全体予算超過後は残りの対象国も簡易計画。次ターンは通常計画へ再試行し、旧版の20ミリ秒超履歴による次ターン停止を撤廃。
generation-admin.logのAI_BUDGETに対象国・予算範囲・CPU時間を記録。予算超過だけなら復旧操作は不要で、停止したい国はhako-mente.cgiの「国を AI 化/解除」で国ID・マスタパスワードを入れ、「解除(人間)」→「操作種別を変更」を押す。予算以外の例外はエラーとして扱う。 - AI引継ぎ時の前所有者メモ漏出を防止し、LLM画面の言語別国名をJSON引用。
- 辞書の欠落・構文エラー・返却形式不正でも日本語で表示を続行。日本語辞書も使えなければ組込みの日本語案内を表示し、内部キーを出さない。不正な構造化ログの内部情報も公開しない。辞書復元と診断ログの見方は
INSTALL.md手順13を参照。 hako-log-generation.cgiを追加。ログ本文をworldlogs.datに世代保存し、公開hakolog3言語を.hakolog-currentで一括切替。世代巻戻し時は本文から再生成。ログを持たない旧世代は旧ログをlog-orphans/に退避して空の履歴を公開。- 静的ヘルプ・公開ログは言語別ファイルへのリンクで切替え、戻り先CGIへ言語を引き継ぐ。長い翻訳文の折返しを調整。ヘルプ本文は運営者が執筆する。
- 設置チェッカーは必須辞書41ファイルの存在・読込み・形式と、3言語トップの正常要素・HTML/HTTPの言語を検査。HTTP 200のエラー画面を合格にせず、成功時の総合CSSもOKへ切り替える。初期認証では両欄とも
ChangeMe/ChangeSpを拒否し、入替えも不可。
2026-09-08 最終版: POST言語切替・エスケープ監査・訳語調整
hako-i18n-switch.cgiを同梱。開発画面などの言語切替は表示専用POSTで認証と未送信の計画・パスワード欄・コメント欄を引き継ぎ、切替時に計画送信や管理操作を再実行しません。通常リンクのGETフォールバックも保持します。このCGIは非公開ライブラリとしてhtaccess.txtで直接アクセスを拒否します。- 翻訳結果・言語別国名等を要求内でキャッシュし、要求境界でリセット。HTML本文・属性・JavaScript・JSONの出力文脈に応じてエスケープを監査し、翻訳やプレイヤー入力を実行コードとして連結しないよう整理しました。
- ra5js-warとの対照に基づき、繁体字の農場整備・資金援助・食料援助・運営の訳語と、英語・繁体字の記帳操作/完了文を調整。関連する説明文・LLMコマンド辞書も統一し、採用・維持の理由を
lang/glossary.mdに記録しました。日本語の文言とゲームの定数は変更していません。
hakoS-27 (2026-09-08)
アーカイブ: hakoS-27-20260908.tar.gz / SHA256(先頭16文字): 187eb80d155988e9
この版に入っているもの(前版からの追加・修正。以前の版の内容も含みます):
hako-ai-policy.cgiを追加。国ごとに重点(性格に従う・開拓・交易・軍事・均衡)、軍事姿勢(守勢・中立・攻勢)、優先資源(なし・木材・石材・鉱石・石油・燃料・工業品)、対象国(なし・現存国)を選択できます。所有者の開発画面・LLM画面、管理人室の各国フォームで保存し、その国の次回AI計画生成・AI提案に使います。設置チェッカーも方針辞書を含む14モジュール×3言語とログ定義2ファイル(44ファイル)を検査します。自由文の指示ではなく、資源・地形・交戦状態などの制約も引き続き適用されます。- 人間国ではAI代行が起きないため、設定しても即座には効かず、操作種別も変わりません。
rule国の各ターンの生成、llm国の未提出・空計画等の穴埋め時に反映します。攻勢を選んでも方針だけで宣戦布告はしません。変更ログは所有者向けです。
AI プレイヤーの運用
管理画面(hako-mente.cgi)にマスタパスワードでログインし、「国を AI 化/解除」または各国フォームで「AI化(ルール)」を選択して保存します。方針だけなら操作種別を維持し、人間へ戻す場合は「解除(人間)」を選びます。ai_kind の保存値は rule / llm / human の3種類です。ルールAI国は放置削除の対象外ですが、LLM国・人間国の放置判定や人口消滅等は別です。詳細は INSTALL.md 手順14を参照してください。
適用状況の表示
- ビルド時の
version.cgiと共通表示ライブラリhako-release.cgiを追加。version.cgiには同梱CHECKSUMS.sha256自身のSHA-256を記録し、管理画面とチェッカーで照合します。実行時にgitは呼びません。 - 共通フッター、認証後の管理画面、設置チェッカーに版情報を表示。追加ラベルは日本語・英語・繁体字です。
- 管理画面とチェッカーは保存済みデータの版を読み、配布物の版との不一致を警告します。診断表示だけではデータを昇格しません。
dataVersion 24 / 25 / 26 → 27 の移行とバックアップ
v24/v25/v26から上げる前に必ずバックアップを取ってください。 旧データは起動・読込み時に互換処理され、最初の通常保存でv27へ自動昇格します(読込みだけでは保存版を変更しません)。手動変換は不要です。旧版にないAI方針は「性格に従う・中立・優先資源なし・対象国なし」で補い、既存の操作種別・計画・言語別名称は保持します。新しいCGIと lang/ 一式・ヘルプ3言語を一緒に配置し(独自ヘルプは保持、不足言語のみ追加)、配布の空data・初期ログ・sampleを既存データに上書きしません。戻す場合は旧CGIと更新前データをセットで復元します。具体的な手順は INSTALL.md の「dataVersion 24 / 25 / 26 → 27 の移行」を参照してください。
hakoS-30 (2026-09-09)
アーカイブ: 未ビルド / SHA256(先頭16文字): 未ビルド
この版に入っているもの(前版からの追加・修正。以前の版の内容も含みます):
- 物流C:陸路契約を追加。国有領域が1hexでも接する非交戦国間で、双方の関所が開いていれば輸送できます。国ペアの双方向・全契約を合わせて16在庫単位/ターンが上限です。対象は資源0〜7(木材・石材・鉱石・石油・燃料・工業品・弾薬・ウラン)と8=食料。関所政策(91)と買主国の関税率(103)を使い、同陣営間は免税です。海上貨物の対象は引き続き資源0〜7です。
- 物流D:商船の艦級を追加。積載上限は互換級255・小型64・大型255在庫単位です。既存船は互換級として扱います。小型は浅瀬を航行でき、大型は浅瀬を通れず大型港が必要です。商船艦級建造・港大型化(118)と、航路ごとに最大8点を設定できる経由点(119)を追加し、航行距離に応じた燃料消費を反映しました。
- 物流E:港ごとの積卸し等の処理能力を通常港256・大型港1024在庫単位/ターンとし、処理しきれない貨物は翌ターン以降へ繰り越します。未使用の処理枠は蓄積しません。荷主別の保税倉庫と、通過料(120)・保税預託(121)・保税転送(122)を追加。預託貨物は受入国の自由在庫に加えず、荷主と最終配送先を保持して中継します。操作は
INSTALL.md手順15を参照してください。 - 物流G:ルールAIが陸路契約、商船艦級の選択、港の通過料設定、保税転送を利用します。判断には自国の状態と他国の公開情報を使い、他国の非公開在庫・計画・船の積荷等は参照しません。
- 設定一覧の「ターン処理の順序」を日本語・英語・繁体字中国語で訂正。第3文で逆に記載していた陸軍と通常艦艇の順序を、実装どおり「通常艦艇の処理が先、陸軍の移動・戦闘が後」に修正しました。実際の処理順を変えた更新ではありません。
- LLM画面にhex隣接規則、国境接触国と関所・関税、近隣の公開港最大12件と海路距離、自国領土の地形別集計を追加しました。人間国でLLM計画の提出・AI案採用、AI方針の変更、空でないプロフィール更新を受理すると、操作種別を
humanからllmへ自動変更し、AI_SWITCHに記録します。閲覧・検証だけでは切り替えません。また、人間へ戻す際は残っているLLM由来の計画枠を「何もしない」に置き換え、LLM計画を残したまま人間表示で遊べる抜け道を塞ぎました。 - 開発者向けに
t/run-tests.shを追加。時間制限を検査するテストを直列、残りを別の実行で並列化し、時間計測への競合を避けます。
利用者に影響する不具合修正
- 戦争難民のログ人数:平地への入植時に、1セルにつき500人を余分に表示していた集計を修正。以後の受入ログは実際に増えた人口を記録します。過去の該当ログは実際の受入人数より多く表示されていました。
- 移民の所有者判定:A国からB国への移民処理が、第三国の町の人口まで増減させる不具合を修正。出発国・受入国の所有地を確認するようにしました(既存の中立平地への入植例外は維持)。過去の移民ログに記録された人数と、実際に出発国・受入国の地図上で増減した人口は一致しない場合があります。過去のログ・人口を遡って補正する処理は含みません。失業暴動が国境を越えて他国施設を破壊する挙動は仕様であり、変更していません。
- 保税転送の過積載:小型商船などの艦級別積載上限を超えて貨物を積める不具合を修正。転送時も艦級別の上限を適用し、積めない残量は保税倉庫に保持します。
dataVersion 27 → 30 の移行とバックアップ
v27以前・v28/v29から上げる前に必ずバックアップを取ってください。 旧データは読込み時に互換処理され、最初の通常保存でv30へ直接自動昇格します(読込みだけでは保存版を変更しません)。手動変換やv28・v29を経由した保存は不要です。v28(陸路)は既存の世界共通物流データを拡張し、国レコードの行数は増えません。v29(港湾通過料)・v30(商船艦級・航行状態・経由点)で国レコードを順に1行ずつ追加します。旧版にない値は、契約の輸送方式を海路、通過料を0、既存商船を互換級、経由点を空として補います。新しいCGIと lang/ 一式を揃え、配布の空data・初期ログ・sampleを稼働データへ上書きしません。戻す場合は旧CGIと更新前データをセットで復元します。具体的な手順は INSTALL.md の「dataVersion 27 → 30 の移行」を参照してください。
hakoS-32 (2026-09-13)
アーカイブ: hakoS-32-20260913.tar.gz / SHA256(先頭16文字): ea2527d03447f877
7カ国入り配布世界(2026-09-13)
- ターン68・世代149のデモ世界を引き継ぎます。ID 8「あろあろ国」はhuman、ID 1・3・4・5・6・7はrule。外部API鍵は不要です。
- 世界地図・配置・国の資産・パスワード・所有者名・現役ログは保持。最終更新時刻だけビルド時刻に合わせます。過去版の「0国・ターン1」は今回の初期世界には該当しません。
- 配布用dataのSHA256、7カ国のID集合とAI種別、現行dataVersion、ターン、世代を検査します。ビルド時にlive demoを読むことはありません。公開ログ3言語もコピーした内容を同梱します。
- 3陣営の会議室は空で開始します。現行の
room-secretと、ゲームのallianceRoomSync()→allianceRoomMigrate()が生成するroom.json(投稿0件)・room.lockを同梱します。過去の会話ログ・旧保存先のファイルは取り込みません。data/alliance.jsonのroom_state=readyと一致し、会議室を再作成せずに利用できます。設置時はhakos-private/を内容ごと指定の非公開保存先へ配置してください。
シーズン対応(同梱)
- シーズン管理・アーカイブ・世界再生成の3ライブラリ、cron用
tools/season_tick.pl、13候補×4ファイルを配布対象に追加。候補の入力元をリポジトリ内world/candidates/に統一し、配布検証も明示一覧と原本を照合します。 - 候補名は13件、盤面SHA256は12種類です。
c10_big7_forest55とc10_big7_forest55_v2は同じ盤面です。初回採用は同盤面の複数候補名を許容し、resources/sitesの一致を優先して名前を特定します。次シーズンは現在と同じ盤面SHA256の全候補を抽選から除外します。 - sample の既定は単独60%・陣営70%、最低100・上限360ターン、12時間更新、終了後14日/7日待機、陣営在籍14ターン、AI4陣営、gzip無効です。既存世界は初回採用し、導入前の履歴は再構築しません。シーズン有効中は旧1国終了判定を使わず、早期終了は最低100ターン以降の領有率条件、時間切れは360ターンで判定します。
season.datを世代コミットのsidecar(schema 1)へ追加。dataVersion 32は維持しますが、旧実行コードでは新manifestを読めないため、コードだけの巻戻しはできません。- 履歴は保護された
data/seasons/に保存し、終了後にCGI経由で公開します。画像の相対参照先は現在のimage/であり、画像・描画更新により過去の見た目も変わり得ます。古い履歴の自動削除は行いません。 - バックアップ、候補配置、設定コピー、初回採用、10分間隔cron、終了済み履歴の手動整理について
INSTALL.md手順16に記載しました。cron登録は運営者が行います。
この版に入っているもの(前版からの追加・修正。以前の版の内容も含みます):
- 物流H(民間経済):H0〜H8を実装・マージしました。基準の確定、保存形式、会計、公開情報による判断、陸路・海路、外交、旧入口の切替と資産移行、全体検収を含みます。
- 民間部門が国とは別に現金・在庫・勘定を持つようになりました。国庫・民間現金・原産地別内訳の整合を
civilHValidateが毎ターン検査し、台帳残差が0であることを確認します。 - 民間が自分で売買を判断し、実際に取引します。判断には公開情報だけを使い、他国の国庫・命令・軍事・パスワードは読みません。
- 陸路輸送と国別禁輸に対応しました。禁輸は取引・輸送の認可時点で適用します。
- 海路輸送・商船建造・港に対応し、民間が自分の船を出します。民間船は軍艦と別枠で、1国あたり8隻が上限です。
- 外交の援助・交換をコマンド番号123以降に追加しました。援助・交換は輸送が必須で、無税です。 援助でも船か陸路が必要なため、封鎖によって輸送が止まります。
- H7で旧方式の交易入口145件を閉じ、取引・資産管理を民間部門へ移しました。既存契約・国有商船・常備航路の扱いは、下記の移行節を確認してください。
- H8では7か国・60か国の実世界データで、全台帳の残差0、輸送容量、同時要求での二重確定防止、64ターンの長期停滞、世代復旧を検査しました。CORE-B実機の性能は未測定です。
利用者に影響する不具合修正
- 国の消滅時の商船検証:国に死亡フラグが立ってから退場処理までの間、まだ存在する船を「旗国が存在しない」と判定し、ターンが停止する不具合を修正。退場処理が済むまで船と旗国の対応を維持し、保存時には通常の検証を行います。
- 国の放棄時の国庫照合:国庫の現物がまだ残っている段階で、民間側が管理する国庫の原産地別内訳だけをゼロにし、不一致でターンが停止する不具合を修正。国の削除まで現物と内訳の対応を維持します。
- 放棄後に残る倉庫:放棄した国の倉庫が中立地形として残ると、所有者を判定できずターンが停止する不具合を修正。倉庫内の既存の所有権・原産地と、代金を支払い済みの他国の権利を保持します。
- 旧命令の拒否ログ:閉鎖した旧命令を拒否した記録が表示できない不具合を修正。保存済みの該当ログも日本語・英語・繁体字中国語で表示します。
dataVersion 30 → 32 の移行とバックアップ
v30から上げる前に必ずバックアップを取ってください。 v30からv32へ直接移行でき、未配布のv31を経由する必要はありません。新しいCGIと lang/ 一式を揃え、配布の空data・初期ログ・sampleを稼働データへ上書きしません。戻す場合は旧CGIと更新前データをセットで復元します。
既存契約・国有商船・常備航路は、そのまま継続せず返金・返送の対象になります。 契約は解除して預託金を返し、常備航路は解除します。貨物を返送し、旧国有商船は所有国の港へ戻して強制的に解体し、建造資材を返却します。
旧国有商船の解体はプレイヤーの選択ではありません。移行補償として、艦級別の建造費を資金・工業品とも100%返し、HPによる減額はしません。 強制移行によって損をさせないための措置です。
| 艦級 | 返却(資金+工業品) |
|---|---|
| 互換255 (class 0) | 200 + 20 |
| 小型64 (class 1) | 120 + 10 |
| 大型255 (class 2) | 400 + 40 |
この補償はH7移行に限った規則で、通常運用の除籍(コマンド73)には適用しません。
港が無い国の移行は完了しません。no_port が残る世界は運用上の有効化条件を満たしません。 H8では故意に港を除いた停滞試験で64ターン no_port を保持し、港復元後に解体・移行の完了を確認しました。未完了の荷物・権利を捨てて移行済みにする処理ではありません。更新前の世界のコピーで移行を確認し、未解決の返送・預かり・権利が残っていないことを確かめてください。
未実装・試験の範囲
既知の多言語表示の制約
サイト独自のタイトル・管理者名は、local-init.cgi の任意の英語・繁体字欄を設定すると切り替わります(空欄なら主言語)。建国・自動削除・強制削除の新規履歴を構造化し、凍結・凍結解除も既存の管理人あずかりの文面で記録します。放棄・人口消滅は従来の構造化ログを継続使用します。日本語文面と旧形式ログは保持します。既存ログ・プレイヤーの入力・サイト独自文言を自動翻訳する機能ではありません。
AIは上記の実装範囲を同梱します。外部LLMサービスへの接続・課金・継続運用の検証は配布煙試験には含みません。
物流 C・D・E・Gは実装・マージ済みで、hakoS-30から引き続き同梱します。物流H(民間経済)はH0〜H8すべて実装・マージ済みで、hakoS-32の対象です。予約の発電・砲弾・船体・宇宙関連は引き続き未実装です。予約値や表示フラグの存在は、本機能の実装を意味しません。
市場調整率、価格・需要、工場レシピ、採掘・枯渇、輸送費、戦闘・補給費、陣営費用等の定数は十分な対人プレイテストをしていません。既存の採用済み価格設定(燃料17・工業品38・弾薬43)をそのまま継承しています。配布作業では数値を再調整していません。
構文・既存テスト・空世界からの建国と計画送信・AI方針を変更した各2ターンの煙試験は、満員時の性能、長期運営のバランス、本番Apacheの設定適合性を保証しません。本番接続・アップロードは行っていません。180 CPU秒・同時CGI20の実環境での確認は設置時に行います。
適用状況の確認方法
配布ビルドでは、同梱ファイルから CHECKSUMS.sha256 を確定し、そのファイル自身のSHA-256(64桁)を $HreleaseManifestSha256 として version.cgi に記録してからアーカイブを作成します。展開した同梱ファイルだけで照合でき、外付けファイルの上書きは不要です。循環を避けるため、一覧自身と version.cgi、外側の管理一覧 RELEASE.json は一覧の対象外です。同梱ファイル数にはこの3ファイルも含めます。更新時は差分に同梱する手順書の RELEASE.json を使って全管理ファイルを検査します。
「同梱物の照合」は、実際に読んだ CHECKSUMS.sha256 のSHA-256と版情報の一致を示します。不一致は「不一致」、manifestの欠落・読取不能や版情報のハッシュ不正は「未確認」です。manifestの一致だけでは、個々のファイルの欠落・変更や版情報自体の改変までは検出できません。設定前の展開先で shasum -a 256 -c CHECKSUMS.sha256 を使い、一覧の全件を検査してください。稼働後に変わるdata・設定等は、この初期検査と区別します。
アーカイブ自身のSHA-256は dist/*-archives.sha256 に全64桁、配布元の RELEASE_NOTES.md の版ごとの節に先頭16文字を記録します。圧縮後の値なので同梱ノートの当該欄は未確定です。ダウンロードしたtar.gz・zipはそれぞれ *-archives.sha256 で検証します。画面にはアーカイブ名を表示し、アーカイブのハッシュは表示しません。
hako-mente.cgiにマスタパスワードでログインし、冒頭の「リリース情報」を確認します。配布物の版・ビルド日時(JST)・commit・アーカイブ名・同梱ファイル数を配布時の記録と照合します。「同梱物の照合」が「一致」であることも確認します。Perlのバージョンとlang/の.plファイル数も表示します(3言語辞書と共通定義を含む実数。辞書の完全性はチェッカーで確認)。- 共通フッターに
リリース: 1.55 (2026-09-13)のように製品版を表示します。従来の配布はhakoS 27の形です。英語はRelease、繁体字は發行版本。version.cgiがない開発ツリーや旧配布物では、この行は表示しません。表示される日付はビルド日のJSTです。 - 更新した
deploycheck.cgiをゲームCGIと同じ場所に置き、ブラウザで開きます。冒頭の版情報と「version.cgi」「同梱物の照合」(一致ならOK、それ以外はNG)「配布物の版とデータ版の一致」を確認します。この判定は配布物が要求する保存形式(32)と実際の保存形式を比べます。製品版1.xxと32を比較するものではありません。?lang=ja/?lang=en/?lang=zh-TWで追加ラベルの言語を選べます。既存の設置検査も実行し、確認後はチェッカーを削除します。 - 配布27・データ26などの警告は、ファイル更新後に通常保存がまだ行われていない場合にも出ます。
INSTALL.mdの更新手順に従い、完全バックアップを確保し、作業者のみアクセス可能な状態でメンテナンスを解除して通常の計画保存を完了し、再確認します。読み込みだけでは保存版は上がりません。データ版の行を手作業で書き換えたり、配布の空dataを上書きしたりしないでください。 - 通常保存後も一致しなければ、CGI一式・辞書・版ファイルの配置先、
local-init.cgiが参照する稼働data、CGIエラーログと「世代の整合検査」を確認します。データ版の方が新しい場合も警告します。部分的な差戻しを避け、旧版に戻すときは対応するCGIと更新前データをセットで復元します。データ版の読み取り不能は「未確認」と表示し、一致扱いにしません。版ファイル欠落時は管理画面の版情報を表示せず、チェッカーでは「未確認」になります。