📚 Docs

マップ MOD:フェーズ 2

v252で更新 - 2020年4月 作成者:Marcos Elias

はじめに

Proton Bus マップ MOD システムのフェーズ 2 では、乗客、交通車両、その他多くの要素をゲームに追加できます!これにより、ゲームは別のレベルに引き上げられ、文字通りこの機能の前と後で Proton を分けることができます。まるで新しいゲームのようです!

警告: 時間の制約により、変換や編集プロセスにおける個別のサポートを提供することはできません。ご自身で試し、他のマップがどのように作られているかを確認し、ファイル構造を調査することをお勧めします。質問や関連する問題は Facebook のゲームグループに投稿することをお勧めします。そうすれば、解決策が他のすべての人の役に立ち、他の MOD 製作者もあなたを助けることができます。

まだ登録していない場合は、プロデューサーのチャンネルに参加してください:www.youtube.com/marquinhosxp。いくつかのビデオやチュートリアルがそこに投稿されています。

公式 PBSU Facebook ページ:https://www.facebook.com/protonbusoficial および PBSR:https://www.facebook.com/protonbusrod.oficial/

Facebook グループ

MOD クリエイター専用グループ: https://www.facebook.com/groups/pbsmods/ ただのプレイヤーである場合は、トピック外の投稿(削除されます)で混乱させないように、参加を避けてください!

ユーザー向けグループ: こちらでは、プレイヤーの視点からのスクリーンショット、ヒント、動画、様々なチュートリアルなどを自由に投稿できます:

MOD 用のテクスチャを入手できる良いサイトのヒント: http://www.textures.com


フェーズ 1 に関する注意事項

フェーズ 2 でマップを開始する前に、フェーズ 1 の基本的なレベル制作を習得している必要があります。まだ慣れていない場合でも心配しないでください。サンプルマップと一緒にこのガイドに従うことができます。最大の要件は、Blender の基本的な知識があることです。マップのエクスポートに使用するためです。

フェーズ 1 に関する古いドキュメントはこちら(マップ用): http://blog.protonbus.com.br/2019/09/experimental-mods-de-mapas-no-pbs.html

バス用: http://blog.protonbus.com.br/2018/09/primeira-fase-do-sistema-de-mods-de.html

常に最新バージョンのゲームを使用することをお勧めします!古いバージョンはサポートされておらず、ベータ版は常に進化しているため、常に最新のものを考慮しています。最新のビルドは、都市用は http://pbsu.busmods.com、長距離用は http://pbsr.busmods.com で見つけることができます。

基本的には、Blender 2.79 を使用して風景を作成し、モデルを 3ds 形式でエクスポートし、Proton Bus システム用のフォルダとファイル構造を作成します。

重要:BLENDER 2.79 を使用してください! 現在のゲーム形式に必要なエクスポーターは Blender 2.8 では動作しません。どうやら廃止されており、現在まで誰も更新していません。将来的には再び動作するようになるかもしれません。試みている人もいます。

Blender 2.79 はここからダウンロードできます:https://download.blender.org/release/Blender2.79/ 最新バージョンは通常、名前に「b」がついているものです。プラットフォームは関係なく、お使いのシステム(Windows、Linux、または Mac)とアーキテクチャ(32 または 64 ビット)に依存します。

すでに 2.8 でマップを開始している場合は、2.79 が開くことができる中間形式にエクスポートしてから、そこからゲーム用にエクスポートすることをお勧めします。

重要:PROTON 用に 3DS エクスポーターを変更してください! Blender のデフォルトの 3ds エクスポーターは、オブジェクトとテクスチャの名前を 12 文字で切り捨てます。一部のパーツやテクスチャの名前でエラーが発生するのを避けるために、通常はこれ以上の文字数が必要になります。

エクスポート用の変更された Blender プラグインのダウンロード(Blender 2.79 用ファイル): http://proton.viamep.com/coisas/export_3ds_protonbus_blender279.zip

プラグインの変更方法に関するチュートリアル: https://youtu.be/0EokFmSjGdA

これをダウンロードする代わりに、Blender の scripts\addons\io_scene_3ds フォルダ内の export_3ds.py ファイルを変更することもできます。[:12] を検索し、12999 などの大きな数字に変更します。これが文字数制限です。これを行わないと、ゲームへのエクスポートが失敗する可能性があります。

ヒント: BLENDER をダウンロードする際、複数のバージョンを同時に保持するために ZIP 形式の「ポータブル」バージョンを選択できます。


マップ MOD のファイル構造

Proton のマップは、いくつかの txt ファイル(プレーンテキスト)といくつかのフォルダで構成されています。基本的な主要構造は、マップ定義 txt とフォルダであり、どちらもゲームの MOD フォルダ内にある maps フォルダ内にあります。

PC での構造例:

フォルダ構造

マップ定義 txt は .map.txt で終わる必要があります(例:Estrada Longa.map.txt)。一意の名前である必要があります!

重要: MOD ファイル名には、アクセント、セディーユ、または特殊文字を絶対に使用しないでください!

この txt 内には、基本構造があります:

[map]
baseDir=Estrada Longe 
; マップのベースフォルダ。.map.txt と一緒に maps 内にあります

modelsDir=Rota 1 
; モデルフォルダ。tiles フォルダ内にあります

textures=textures 
; テクスチャフォルダ

mapModVersion=2 
; フェーズ 2 では数字の 2 を使用してください!

preview=preview.png 
; 選択画面の画像(16:9、例:640x360)

マップのベースフォルダ内には、他のフォルダが存在する必要があります:

ベースフォルダ

  • dest:行先表示とナンバープレートを保存します。
  • skins:マップのバススキンを保存します(skins/0/pbc 内)。
  • textures:テクスチャを保存します。JPG は避け、PNG を使用してください!
  • tiles:必ずこの名前である必要があります。その中にはモデルフォルダ(modelsDir)があります。

重要: PROTON BUS マップ MOD は完全に読み込まれます!重すぎてはいけません。いくつかの長い路線を作る場合は、それらを部分に分けてください。

modelsDir で定義されたフォルダ内には、エクスポートされた .3ds ファイルと設定があります:

Tiles フォルダ

モデルフォルダの内部構造:

モデルサブフォルダ

  • aipeople:歩行者の設定。
  • aitrains:列車の設定。
  • aivehicles:交通の設定。
  • busstops:バス停の設定。
  • entrypoints.txt:高度なエントリーポイント設定。
  • entrypoints_list.txt:エントリーポイントの単純なリスト。

重要: MOD は保護されていません!技術的にはどのゲームも保護されていません。あなたの MOD が編集されたり流出したりしない唯一の方法は、それをリリースしないことです。


エントリーポイントの設定

エントリーポイントは、ゲーム開始時にバスが表示される場所を定義します。一意の名前である必要があります(例:351F-10 TPGaragem Central)。

重要: これらの名前にアクセントや特殊文字を絶対に使用しないでください!スラッシュも使用しないでください。

entrypoints_list.txt

単純なリスト、1行に1つの名前。

エントリーポイントリスト

entrypoints.txt

マップ上の位置と物理的な回転を定義します。

エントリーポイント設定

注意: Blender では Y が前/後、Z が高さです。Unity(ゲーム)では、Y が高さ、Z が前/後です。座標をコピーするときは Y と Z を入れ替えてください!

座標を見つけるには、Blender で Empty オブジェクトを使用します:

Blender の Empty

行先表示と目的地

dest フォルダ内に、txt で定義された entrypoints と全く同じ名前のフォルダを作成します。

Dest フォルダ

各目的地フォルダ内には画像があります:

目的地画像

重要: モバイル向けには 2048 ピクセルを超える画像は避けてください!

行先表示の推奨ファイル名:

  • 1.png, 2.png, 3.png (電子行先表示 1024x128)
  • capelinhaDigital.png, capelinhaPVC.png (256x128)
  • lonaDestino.png, lonaLinha.png (方向幕)
  • placa1.png, placa2.png, placa3.png (側面および前面プレート)

乗客の設定

各停留所には 3D で一意の名前が必要です(例:zzPonto1)。

Blender (3D) で

停留所は以下で構成されます:

  1. 停留所名_trigger という名前の不可視の立方体(トリガー)。
  2. 乗客の位置用の小さなオブジェクト(平面/立方体)、停留所名.000停留所名.001 などと呼ばれます。

Blender の停留所

ヒント: ポリゴンを節約するために、乗客には単純な平面を使用してください。

正しいトリガー:

正しいトリガー

適切に配置されたトリガーの例:

トリガーの例

不適切に配置されたトリガーの例(ダメです!):

間違ったトリガー

重なっている(ダメです!):

重なっているトリガー

反対側の停留所で正しい例:

反対側の停留所

デバッグモードでの可視化:

デバッグモード

.txt ファイル (busstops) で

busstops フォルダに停留所と同じ名前の txt を作成します。

Busstop Txt

[busstop]
name=広場停留所
isLeft=0
paxAmount=15

[from_3d]
readFrom3D=1
prefix=zzPonto1
maxPathsToCheck=30
defPaxRotY=90
  • prefix:3D で使用される名前(.000 の前)と完全に一致する必要があります。
  • defPaxRotY:デフォルトの乗客の回転(0, 90, 180, -90 をテストしてください)。

歩行者の設定

停留所と同様に機能します:パス (path) を定義する一連のオブジェクト。 例:xxCalcada1.000xxCalcada1.001 など。

歩行者パス Blender 歩行者

aipeople フォルダに txt を作成します:

歩行者 Txt

[automatic_setup]
enabled=1
loop=0
reverse=0

[defaults]
isSpawner=1
spawnInterval=5
allowBicycle=0
  • loop=1:最後のポイントが最初のポイントに接続します(円形)。
  • loop=0:パスは最後のポイントで終了します(線形)。

交通車両の設定

歩行者と全く同じです! aivehicles フォルダ。

交通 Txt

  • isBusSpawner=1:バスを表示させるため。
  • spawnInterval:交通量を減らすには値を増やします。
  • speedMultiplier:速度を変更します(例:0.5 半分、2 倍)。

マップのバススキンの設定

スキン (PNG) を skins/0/pbc に配置します。ゲームはランダムに選択します。 PBC スキンベース:http://omsi.viamep.com/proton/base-skins-pbc-protonbussimulator.zip


列車の設定

同じロジックです、aitrains フォルダ。 推奨:defaults で isSpawner=0 にし、間隔を空けて手動スポナーを定義します。

列車 Txt

  • randomTimeToWaitAtStart=1:ランダムな時間で開始します。
  • spawnTimeInterval:列車間の間隔(例:120秒)。

重要: 列車は止まりません!すべてを轢いていきます。踏切を作らないでください。


3D モデル内の特別なコマンドと名前

  • 透明度: オブジェクト名に _transparent_ を使用します(例:grade_transparent_)。
  • コライダー: 自動コライダーを生成するには _gencol_ を使用します(道路、歩道)。控えめに使用してください!
  • 不可視コライダー: _gencol_invisible_ を使用します(例:barreira_gencol_invisible_)。
  • 発光: 常に点灯しているオブジェクトには _emissive_ を使用します。
  • 低速ゾーン: ターミナル用のオブジェクト _low_speed_zone_(苦情を避けるため)。

Low Speed Zone

  • 強制終了: 終点近くのオブジェクト _force_exit_

Force Exit

  • 追加詳細: 3DS ファイルを _det1.3ds で終了します(例:arvores_det1.3ds)。ユーザーが「追加詳細」を有効にした場合のみ読み込まれます。

きらめくテクスチャの設定

地面でテクスチャが点滅(Zファイティング/フリッカリング)するのを避けるために、テクスチャの横に .config.txt ファイルを作成します。 例:asfalto.png.config.txt

Config Txt


追加 - 最適化のヒント

  • 小さなテクスチャ: 繰り返しテクスチャには 256x256 または 512x512 を使用します。
  • 最大 2048px: モバイル向けには 2048px より大きいテクスチャを絶対に使用しないでください!

テクスチャ警告

  • コライダー: 複雑なコライダーは避けてください。_gencol_ は地面と主要な壁にのみ使用してください。
  • マテリアル: 同じオブジェクトに多くのマテリアルを使用しないでください。
  • オブジェクトの結合: ドローコールを減らすために、同じマテリアルを持つ近くの木を結合します。

今のところは以上です!楽しんでください!