スタンドアロンだと閉じた世界。OSGridやJOGとローカルの間を行き来するにはスタンドアロンでもハイパーグリッドの設定が必要です。
さきの記事は 0.8.0系で記載しています。今回 0.8.1 に沿って、スタンドアロン+HGの設定についてまとめました。0.8.2 や 0.9系もこのこの要領で良いようです。(2018-05-05, 2020-12-23 更新)
外部からアクセスできなければいけないので、
島を公開するためのネットワーク環境は、ここでも必要です。ROBUSTサーバーはポート 8000番台を使いますが、今回ROBUSTサーバーは使わないので、開けるポートは 9000番のTCPと 9000以降、島の数だけのUDPのみです。
既定の初期設定(スタンドアロン)からスタンドアロン+HGへの変更部分は以下のとおりです。
1. OpenSim.ini
bin/OpenSim.ini をテキストエディタ開きます。OpenSim.ini が存在しない場合、OpenSim.ini.example をコピーして OpenSim.ini に名称変更し、それを編集します。
1) [Const] は 0.8.1 で新たに加わった機能です。URLとポートを記述します。PrivatePortはスタンドアロンでは使われません。
コード: 全て選択
[Const]
BaseHostname = "shinobar.server-on.net"
BaseURL = http://${Const|BaseHostname}
PublicPort = "9000"
0.8系では BaseHostnameがありません。代わりに BaseURLを指定してください。
BaseURL = "http://shinobar.server-on.net"
2) [Estates]
必須ではありませんが、デフォルトの Estateを設定しておくと新しく島を作るとき便利です。EMailとPasswordはここで指定しなくてもいいでしょう。
コード: 全て選択
[Estates]
DefaultEstateName = Shinobar Estate
DefaultEstateOwnerName = Shinobar Martinek
; DefaultEstateOwnerEMail = owner@domain.com
; DefaultEstateOwnerPassword = password
3) [NPC]
NPC(Non-Player Character) はデフォルトでは使えない設定となっています。NPCを使うなら Enabled=true とします。
コード: 全て選択
[NPC]
;# {Enabled} {} {Enable Non Player Character (NPC) facilities} {true false} false
Enabled = true
4) [Architecture]のところでStandaloneHypergridを有効にします。
コード: 全て選択
[Architecture]
; Include-Architecture = "config-include/Standalone.ini"
Include-Architecture = "config-include/StandaloneHypergrid.ini"
TCP 9000番を使うなら OpenSim.iniの変更箇所は以上です。9000番以外にポートを変更する場合は上記 [Const]の PublicPort とともに [Network]セクションにある http_listener_port も変更してください。例えば 9000の代わりに 9005を使うならば
[Const]
PublicPort = 9005
[Network]
http_listener_port = 9005
2. StandaloneCommon.ini
このファイルは bin/config-include/StandaloneCommon.ini にあります。よく似た名前のファイルがいくつかあるので間違えないように。テキストエディタで開きます。StandaloneCommon.ini が存在しない場合は StandaloneCommon.ini.example をコピーして StandaloneCommon.ini に名称変更し、それを編集します。
URLを"
http://127.0.0.1:9000" から、グローバルのホスト・ドメイン名とポートに書き換えるべきところ、Open.Ini の[Const]で、BaseURL と PublicPortでこれを設定したので、これはスキップ。
1) [Hypergrid]
初期設定でこのセクションはすべてコメントアウトされています(行頭が「;」)。
次の2行を有効にします。BaseURL、PublicPortは Open.Ini の[Const]で設定されているので、ここで書き換える必要はありません。
コード: 全て選択
[Hypergrid]
HomeURI = "${Const|BaseURL}:${Const|PublicPort}"
GatekeeperURI = "${Const|BaseURL}:${Const|PublicPort}"
2) [GridService]
このセクションに次のような記述があります。
Region_Welcome_Area = "DefaultRegion, FallbackRegion"
これは、何の指定もなくゲートキーパー(この例で
http://shinobar.server-on.net:9000)にアクセスがあったとき、「Welcome Aria」という名のRegion(島 あるいはSIM)に送ることを指定しています。「Welcome Aria」という名のRegionが無い場合、作成した島のうちのどれかを指定してやります。
戸惑うかもしれません。他の変更部分はすべて '=' の右辺を変更するのに対し、ここでは '=' の左辺、Regions_XXX の部分を変更します。
私の場合、Shinobar というRegion なので、次のようにしました。
コード: 全て選択
Region_Shinobar = "DefaultRegion, FallbackRegion"
3) [LoginService]
必須ではありませんが、せっかくなので、ウエルカムメッセージを書き換えておきます。
コード: 全て選択
WelcomeMessage = "Welcome to Shinobar world!"
このセクションに現れるURIは、すでに[Const]で設定されているので、そのままでOKです。
4) [GridInfoService]
グリッド名が初期設定では"the lost continent of hippo"(失われたカバの地?)となっています。自分のグリッド名を決めて変更しておきます。この名前はビューアーのログイン画面でグリッド名として表示されます。
このセクション最後の uas も有効にしておきます。
コード: 全て選択
[GridInfoService]
login = ${Const|BaseURL}:${Const|PublicPort}/
gridname = "Shinobar World"
gridnick = "shinogrid"
uas = "${Const|BaseURL}:${Const|PublicPort}/"
(2015-12-26 訂正) [GatekeeperService] セクションは触る必要はありません。
3. Regions.ini
bin/Regions/Regions.ini をテキストエディタで開きます。
この中にある「ExternalHostName = SYSTEMIP」とあるのを、すべて外部ホスト・ドメイン名に変更します。
コード: 全て選択
ExternalHostName = shinobar.server-on.net
InternalAddress = 0.0.0.0 は、そのままにしておきます。
InternalPort = 9000 この番号は島ごとに違うもの。 UDPを開けておきます。
Opensimサーバー設定の変更は以上です。うまく立ち上がったらビューアーにグリッドを追加します。
3. ビュアーの設定
Firestormを例にグリッドの追加を説明します。
1) あらかじめサーバーを立ち上げておいてください。
2) 次に Firestormを立ち上げ、トップのメニューバーから「ビューアー」>「環境設定」を開きます。
3) タブ 「Opensim」 で「グリッド管理」を開きます。
4) 「グリッドを追加」の入力欄にサーバー名とポートを入力します。私の場合は次のものです。
コード: 全て選択
shinobar.server-on.net:9000
5) 入力欄右横の「適用」をクリックするとグリッドが追加されます。グリッド一覧に、さきに設定した自分のグリッド名(私の場合
Shinobar World)が追加されているはずです。
6) 右下の「OK」で環境設定を閉じます。
これでログイン画面の「グリッド選択」で自分のグリッド名が選べるようになります。