Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
b86d2e0
Phase 0: Go移植プロジェクトの準備
claude Nov 8, 2025
9aa5139
Phase 1: internal/hako/const パッケージの実装
claude Nov 8, 2025
a6062e3
Phase 1: variable と core/utils パッケージの実装
claude Nov 9, 2025
ab9ec0b
Phase 1: 全パッケージの基本構造実装とビルド成功
claude Nov 9, 2025
07c59e7
Phase 1: 主要モジュールの完全実装(turn.go以外)
claude Nov 9, 2025
59e103f
Phase 1完了: turn.go完全実装 + 全機能統合
claude Nov 9, 2025
aabf645
Phase 1: Web層とエントリーポイント完全実装
claude Nov 9, 2025
9403cb2
turn.go: ComReclaim(埋め立て)コマンド実装
claude Nov 9, 2025
a7520ca
turn.go: ComDestroy(掘削)とComSellTree(伐採)コマンドを実装
claude Nov 9, 2025
0941816
turn.go: 地上建設系コマンド7種類を実装
claude Nov 9, 2025
f3f6584
turn.go: ComMountain(採掘場整備)とComSbase(海底基地建設)コマンドを実装
claude Nov 9, 2025
7ccc75b
turn.go: ミサイル系コマンド4種類を実装
claude Nov 9, 2025
b03e15e
turn.go: 全コマンド実装完了(資金繰り・怪獣派遣・援助系など)
claude Nov 9, 2025
c1fd9af
turn.go: doEachHex関数を完全実装
claude Nov 9, 2025
3e98b01
turn.go: doIslandProcess関数を完全実装
claude Nov 9, 2025
a51d884
mapview.go: 主要関数の完全実装
claude Nov 9, 2025
bfcccd9
Phase 1完了: 全機能実装完了と完了報告書作成
claude Nov 9, 2025
38d2eab
テスト実装: ユニットテストとデータ互換性テスト
claude Nov 9, 2025
3835708
統合テスト実装: ターン処理とコマンド実行のテスト
claude Nov 9, 2025
e38e04a
テスト結果レポート作成と動作確認完了
claude Nov 9, 2025
3d9f724
.gitignore更新: dataディレクトリを除外
claude Nov 9, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
100 changes: 88 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,27 +1,91 @@
# これはなにか
# 箱庭諸島

箱庭諸島2をベースに、今風のPerlで動くようにする版です
箱庭諸島 ver2.3 の現代的な実装プロジェクトです

# ライセンス
## 概要

オリジナルの箱庭諸島2に準じます。
本プロジェクトは以下の2つの実装を含みます:

1. **Perl版** (`perl/`) - Plack/PSGIを使用した現代的なPerl実装
2. **Go版** (`go/`) - Perl版からのポート(移植中)

## プロジェクト構成

```
hakoniwa/
├── perl/ # Perl実装(現行版)
│ ├── cgi/ # CGIスクリプト
│ ├── lib/Hako/ # コアモジュール
│ ├── t/ # テスト
│ └── app.psgi # Plackアプリケーション
├── go/ # Go実装(移植版)
│ ├── cmd/ # エントリーポイント
│ ├── internal/ # 内部パッケージ
│ └── test/ # テスト
└── docs/ # ドキュメント
├── migration/ # 移植関連ドキュメント
└── original/ # オリジナルドキュメント
```

## クイックスタート

### Perl版を実行

```bash
cd perl
plackup app.psgi
# http://localhost:5000 でアクセス
```

### Go版を実行(移植完了後)

```bash
cd go
make build
./bin/hako-main
# http://localhost:8080 でアクセス
```

## Go移植プロジェクト

### 移植計画

詳細は [移植計画ドキュメント](docs/migration/MIGRATION_PLAN.md) を参照してください。

**フェーズ:**
- **Phase 0**: 準備・設計 ✅
- **Phase 1**: 逐語的移植(進行中)
- **Phase 2**: Go慣用的リファクタリング(予定)
- **Phase 3**: 最適化・クリーンアップ(予定)

### ドキュメント

- [移植計画](docs/migration/MIGRATION_PLAN.md) - 全体計画と手順
- [Perl→Goマッピング](docs/migration/PERL_TO_GO_MAPPING.md) - コード変換対応表
- [データフォーマット仕様](docs/migration/DATA_FORMAT.md) - ファイル形式
- [APIリファレンス](docs/migration/API_REFERENCE.md) - 内部API設計
- [テスト戦略](docs/migration/TESTING_STRATEGY.md) - テスト方針

## ライセンス

オリジナルの箱庭諸島 ver2.3 に準じます。
素晴らしいゲームを制作された原作者の方々に敬意を表します。

> 箱庭諸島 ver2.3
>
>
> 字: 徳岡宏樹
> 絵: 小川克人
> 題字: 稲葉修吾
> テストプレイ他協力: 井上友博、小澤武史、さかもと、ほえほえ、ありづか
> 箱庭諸島のページ: http://www.bekkoame.ne.jp/~tokuoka/hakoniwa.html

## スクリプトについて
### スクリプトについて

以下、オリジナルのreadme.txtより。

> 箱庭諸島2のスクリプトを改変し、それを他人に譲渡、配布する場合には、
> 以下の制約を課します。
>
>
> ・無料配布であること。
> ・ゲーム画面のトップに表示される、スクリプトの配布元へのリンクを
> 消すのを禁止すること。また、それ以外の改造は許可すること。
Expand All @@ -32,27 +96,39 @@
…といっても、オリジナルの作者である[徳岡宏樹さんのWebサイト](http://t.pos.to/hako/)は
現時点でアクセスできない状態になってしまっているため、4つめの制約はあまり意味のないものになってしまっています。

## 画像ファイルについて
### 画像ファイルについて

以下、[徳岡宏樹さんのWebサイトサイトのアーカイブ](https://web.archive.org/web/20070113153728/http://t.pos.to/hako/)より。

> [Q3] オリジナルに付属していた画像については、再配布や改変は可能ですか?
>
>
> [A3] 商用利用を除いて、許可するものとします。
> オリジナルスクリプトに付属していた文書では「箱庭諸島以外の用途に使用してはならない」と書いてありました。
> しかし、その後原作者より「商用でない限り、箱庭諸島以外でも配布・改変可」という許可を得ています。
> 従って、商用利用でなければ配布も改変も可能です。
> もちろん何らかの問題が発生したとしても画像の原作者は関知しません。
> 自己責任でお願いします。

# 参考にさせていただいたWebサイト
## 参考にさせていただいたWebサイト

* 再配布
* [箱庭諸島の保管庫](http://www.hakoniwa.net/hako/)
* [箱庭なページ](http://hako.gob.jp/)
* [Neo-INO](http://neo-sub.sakura.ne.jp/ino/hako/download.html)
* 解説
* [箱庭解体新書](http://qqmh3psd.web.fc2.com/sadoga/)
* jcode.pl
* [ftp.iij.ad.jp](ftp://ftp.iij.ad.jp/pub/IIJ/dist/utashiro/perl/)

## 貢献

プルリクエストを歓迎します!移植プロジェクトへの貢献については、[移植計画](docs/migration/MIGRATION_PLAN.md)を参照してください。

## 開発環境

### Perl版
- Perl 5.x
- Plack/PSGI
- 依存モジュール: `cpanfile` 参照

### Go版
- Go 1.21以上
- 依存モジュール: `go.mod` 参照
Loading