その3 → d:id:lugia:20090308:1236516344
その2 → d:id:lugia:20090307:1236441417
その1 → d:id:lugia:20090213:1234498207
今度こそ最後だ!
ということで「自分だけのマップの作り方」の説明をします。
ランダムマップで遊んでいてもよいというのならばこの話はカットしてください(笑)
必要な物
OpenTTD のマップエディタを使うなら別に無くてもいいけど。
- 2次元お絵書きソフト
- OpenTTD (当然)
- 素材 (必要があれば)
- 実際の地図
- RPGの地図
- 戦略ゲームの地図
- 家の見取図
- 物の写真
- etc. etc.
以後、Inkscape を使って説明します。ショートカットは 0.46 のショートカットです。新しいバージョンでは変更されているかもしれません。
大抵のベクタードローイングツールでできないようなことはしないつもりなので、好きなソフトをお使いください。ただし、その機能がメニューのどこにあるかわからないといわれても、それはちょっと僕も分かりませんね(笑)。もちろん、Inkscape のメニュー階層は説明します。
絵を切り取る
TTD のマップは以下の組み合わせの長方形でなければいけません。
ようするにの比であれば良いのですね。だから、の比の長方形にしてあげればよいのです。
マス数 | 64 | 128 | 256 | 512 | 1024 | 2048 |
---|---|---|---|---|---|---|
64 | 1:1 | 1:2 | 1:4 | 1:8 | 1:16 | 1:32 |
128 | 2:1 | 1:1 | 1:2 | 1:4 | 1:8 | 1:16 |
256 | 4:1 | 2:1 | 1:1 | 1:2 | 1:4 | 1:8 |
512 | 8:1 | 4:1 | 2:1 | 1:1 | 1:2 | 1:4 |
1024 | 16:1 | 8:1 | 4:1 | 2:1 | 1:1 | 1:2 |
2048 | 32:1 | 16:1 | 8:1 | 4:1 | 2:1 | 1:1 |
1:1 か 1:2 が無難です(ぁ
この比の長方形に切り取ります。大きさは一度ベクトルデータ化するのであれば2の冪乗にする必要はありません。ベクトルデータというのは便利ですよね。
絵や写真を写してベクトルデータ化する
もともとベクトルデータで入っているものは構わないが、そうでない物は、ベクトルデータ化してあげます。こうすれば、TTDのマップサイズを自由に選ぶことができますね。
輪郭をなぞる
まずは地図や写真の輪郭をなぞって、陸地と海の区別を付けます。
そして、内側に等高線を引いていきます。
こんな感じ。
盆地や湖の部分は切り抜きます。
切り抜くには、盆地になる部分を後から描いて(上に覆う(Shortcut:[Home])ようにして)、まわりの山の部分と盆地になる部分を両方共選択してから[パス]→[差分](Shortcut:[Ctrl]+[-])で切り抜くことができます。
でも北海道だと面倒なので簡単な形に変えます。ごめんなさい(笑)
で、高さごとに色をわけていきます。
Inkscape の場合は透明が使えますので、色は下の表の左のように設定します。
透明が使えない時は下の表の真ん中のように設定します。
右は HSL 表記です。参考までに。多分、HSL しか使えないというソフトはないと思うけど。
高さ | RGBA | RGB | HSLA | HSL |
---|---|---|---|---|
750m | 0xFFFFFFFF | 0xFFFFFF | 0x0000FFFF | 0x0000FF |
700m | 0x00000011*1 | 0xEEEEEE | 0x00000011 | 0x0000EE |
650m | 0x00000011 | 0xDDDDDD | 0x00000011 | 0x0000DD |
600m | 0x00000011 | 0xCCCCCC | 0x00000011 | 0x0000CC |
550m | 0x00000011 | 0xBBBBBB | 0x00000011 | 0x0000BB |
500m | 0x00000011 | 0xAAAAAA | 0x00000011 | 0x0000AA |
450m | 0x00000011 | 0x999999 | 0x00000011 | 0x000099 |
400m | 0x00000011 | 0x888888 | 0x00000011 | 0x000088 |
350m | 0x00000011 | 0x777777 | 0x00000011 | 0x000077 |
300m | 0x00000011 | 0x666666 | 0x00000011 | 0x000066 |
250m | 0x00000011 | 0x555555 | 0x00000011 | 0x000055 |
200m | 0x00000011 | 0x444444 | 0x00000011 | 0x000044 |
150m | 0x00000011 | 0x333333 | 0x00000011 | 0x000033 |
100m | 0x00000011 | 0x222222 | 0x00000011 | 0x000022 |
50m | 0x00000011 | 0x111111 | 0x00000011 | 0x000011 |
0m (海面) | 0x00000011 | 0x000000 | 0x00000011 | 0x000000 |
で、透明化ができればおなじ色に設定できて便利ですねと言いたいところなのですが、ソフトによっては(最近のソフトだとほとんど当てはまると思う)15枚重ねても 0x000000 になんかなるわけがないです。透明度をどんなに下げても 0x000000 にはならないものがあります(α値がFFに近いと誤差で 0x000000 になることはある)。その場合は、α値を調節して、750m のところが 0x111111 より小さくなるように調節するか、透明を使わないで設定してください。上の表はただ単純に透明の計算が 0xFFFFFFFF に 0x000000011 が重なっていれば 0xEEEEEE になるものと仮定して書かれたものです。
↓必要があれば使ってください。
16進 | 10進 |
---|---|
FF | 255 |
EE | 238 |
DD | 221 |
CC | 204 |
BB | 187 |
AA | 170 |
99 | 153 |
88 | 136 |
77 | 119 |
66 | 102 |
55 | 85 |
44 | 68 |
33 | 51 |
22 | 34 |
11 | 17 |
00 | 00 |
で、色が塗れたら、線(ストローク)を消して、実際に使うサイズにリサイズします。
Inkscape の場合、リサイズはビットマップのエクスポート画面([ファイル]→[ビットマップにエクスポート]、ショートカット:[Ctrl]+[Shift]+[E])で行った方が便利です。範囲はページ(ページのサイズをあらかじめ変えておくと良い*2 )、ビットマップサイズを2の冪乗にします。
さて出力しました。もう一度言いますけど、PNG か BMP である必要があります。
↑この画像は PNG です。
なんか変ですか。ああ、そうですか。いえ、変ではないです。色は飛んでいても大丈夫です。
もちろん、飛んでいないほうが正確なマップが作れます。
では、OpenTTD を起動しましょう。
シナリオエディタを起動し、ファイルメニュー(フロッピーのアイコン)から、「ハイトマップを開く」を選択します。
開くファイルを選択したら、気候・サイズ・開始年を調整して、作成をクリックしましょう。
これで、マップの土台ができました。0.6.3 以前は角やマップの端は海になるように調整されます。
あとは好きなように街や道路、産業を配置していけば君だけのマップの完成だ(笑)
もちろん、地形の微調整も忘れずに。細かいところまで君のイメージした通りに作れるわけじゃないからね。
ちなみに素材にした地図などの著作権が心配な場合には外部には公開しないほうが無難かも。
著作権法的にはどうなのか良くわからないんで、自己責任でね。
最後だ! って言ったんだけど、やっぱり続きますw