v252 ile Güncellendi - Nisan 2020 Yazan Marcos Elias
Proton Bus harita modlama sisteminin 2. Aşaması, oyunda yolculara, trafiğe ve daha fazlasına sahip olmanızı sağlar! Bu, onu başka bir seviyeye taşır, tam anlamıyla Proton'u bu özellikten önce ve sonra diye ayırabilirsiniz. Neredeyse yeni bir oyun gibi!
Uyarı: Zaman kısıtlamaları nedeniyle, dönüştürme ve düzenleme sürecinde bireysel destek sağlamak mümkün değildir. Kendiniz denemenizi, diğer haritaların nasıl yapıldığını görmenizi ve dosya yapılarını keşfetmenizi öneririz. İlgili soruları ve sorunları Facebook oyun gruplarında paylaşmayı tercih edin, böylece çözümler herkese yardımcı olur ve diğer mod yapımcıları da size yardımcı olabilir.
Henüz abone olmadıysanız, yapımcının kanalına katılın: www.youtube.com/marquinhosxp. Bazı videolar ve eğitimler orada yayınlanmaktadır.
Resmi PBSU Facebook Sayfası: https://www.facebook.com/protonbusoficial Ve PBSR: https://www.facebook.com/protonbusrod.oficial/
Mod oluşturucular için özel grup: https://www.facebook.com/groups/pbsmods/ Sadece oyuncuysanız lütfen buna katılmaktan kaçının, konu dışı gönderilerle (silineceklerdir) kalabalık yaratmamak için!
Kullanıcılar için gruplar: Bunlarda, oyuncuların bakış açısından ekran görüntüleri, ipuçları, videolar, çeşitli eğitimler vb. serbest gönderiler:
Modlar için doku almak üzere iyi bir site ipucu: http://www.textures.com
Aşama 2'de bir haritaya başlamadan önce, Aşama 1 için temel düzeyde üretime hakim olmalısınız. Henüz aşina değilseniz endişelenmeyin, bu kılavuzu örnek harita ile birlikte takip edebilirsiniz. En büyük gereksinim, haritaları dışa aktarmak için kullanacağımız temel Blender bilgisine sahip olmaktır.
Haritalar için Aşama 1 ile ilgili eski belgeler burada: http://blog.protonbus.com.br/2019/09/experimental-mods-de-mapas-no-pbs.html
Ve otobüsler için: http://blog.protonbus.com.br/2018/09/primeira-fase-do-sistema-de-mods-de.html
Oyunun en son sürümünde olmak her zaman iyidir! Eskiler artık desteklenmiyor, beta sürekli gelişiyor, bu yüzden her zaman en son sürümü dikkate alıyoruz. Şehir için http://pbsu.busmods.com ve yol için http://pbsr.busmods.com adreslerinde en son derlemeleri bulabilirsiniz.
Temel olarak sahneyi üretmek, modeli 3ds formatında dışa aktarmak ve Proton Bus sistemi için klasör ve dosya yapısını oluşturmak için Blender 2.79 kullanıyoruz.
ÖNEMLİ: BLENDER 2.79 KULLANIN! Mevcut oyun formatı için gereken dışa aktarıcı Blender 2.8 ile çalışmıyor, görünüşe göre durduruldu ve bugüne kadar kimse güncellemedi. Belki gelecekte tekrar çalışır, deneyen insanlar var.
Blender 2.79'u buradan indirebilirsiniz: https://download.blender.org/release/Blender2.79/ En son sürüm genellikle adında bir "b" olan sürümdür. Platform fark etmez, sisteminize (Windows, Linux veya Mac) ve mimarinize (32 veya 64 bit) bağlı olacaktır.
Haritaya 2.8'de başladıysanız, öneri, 2.79'un açabileceği bir ara formata dışa aktarmak ve ardından oradan oyun için dışa aktarmaktır.
ÖNEMLİ: PROTON İÇİN 3DS DIŞA AKTARICIYI DEĞİŞTİRİN! Blender'daki varsayılan 3ds dışa aktarıcı, nesne ve doku adlarını 12 karakterde keser. Bazı parçaların ve/veya dokuların adlarındaki hataları önlemek için normalde bundan fazlasına ihtiyacımız olacak.
Dışa aktarmak için değiştirilmiş Blender eklentisinin indirilmesi (Blender 2.79 için dosya): http://proton.viamep.com/coisas/export_3ds_protonbus_blender279.zip
EKLENTİNİN NASIL DEĞİŞTİRİLECEĞİNE DAİR EĞİTİM: https://youtu.be/0EokFmSjGdA
Bunu indirmek yerine tercih ederseniz, Blender'ınızın scripts\addons\io_scene_3ds klasöründeki export_3ds.py dosyasını değiştirin. [:12] ifadesini arayın ve 12yi 999 gibi çok daha büyük bir sayıyla değiştirin. Karakter sınırıdır. Bu olmadan oyuna dışa aktarma başarısız olabilir.
İPUCU: BLENDER'I İNDİRİRKEN AYNI ANDA BİRDEN FAZLA SÜRÜMÜ TUTMAK İÇİN ZIP İÇİNDEKİ "PORTABLE" SÜRÜMLERİ TERCİH EDEBİLİRSİNİZ.
Proton'daki harita birkaç txt dosyasından (düz metin) ve bazı klasörlerden oluşur. Temel birincil yapı, bir harita tanım txt'si ve bir klasördür, her ikisi de oyunun mod klasöründe bulunan maps klasörünün içinde bulunur.
PC'de yapı örneği:

Harita tanım txt'si .map.txt ile bitmelidir (ör: Estrada Longa.map.txt). Benzersiz bir isim olmalı!
ÖNEMLİ: MOD DOSYA ADLARINDA ASLA AKSAN, ÇENGEL VEYA ÖZEL KARAKTERLER KULLANMAYIN!
Bu txt içinde temel yapıya sahip olacağız:
[map]
baseDir=Estrada Longe
; Haritanın temel klasörü, .map.txt ile birlikte maps içindedir
modelsDir=Rota 1
; Modeller klasörü, tiles klasörünün içindedir
textures=textures
; Dokular klasörü
mapModVersion=2
; Aşama 2'de 2 numarasını kullanın!
preview=preview.png
; Seçim ekranı görüntüsü (16:9, ör: 640x360)
Haritanın temel klasörünün içinde başka klasörler olmalıdır:

dest: Tabelaları ve plakaları saklar.skins: Harita otobüsü kaplamalarını saklar (skins/0/pbc içinde).textures: Dokuları saklar. JPG'den kaçının, PNG kullanın!tiles: Zorunlu olarak bu isme sahip olmalıdır. İçinde modeller klasörü (modelsDir) bulunur.ÖNEMLİ: PROTON BUS HARİTA MODLARI TAMAMEN YÜKLENİR! ÇOK AĞIR OLAMAZLAR. BİRDEN FAZLA UZUN HAT YAPACAKSANIZ, BUNLARI PARÇALARA BÖLÜN.
modelsDir içinde tanımlanan klasörün içinde dışa aktarılan .3ds dosyaları ve yapılandırmalar bulunur:

Modeller klasörünün iç yapısı:

aipeople: Yaya ayarları.aitrains: Tren ayarları.aivehicles: Trafik ayarları.busstops: Otobüs durağı ayarları.entrypoints.txt: Gelişmiş giriş noktası ayarları.entrypoints_list.txt: Giriş noktalarının basit listesi.ÖNEMLİ: MODLAR KORUNMAZ! TEKNİK OLARAK HİÇBİR OYUN KORUNMAZ. MODUNUZUN DÜZENLENMEMESİNİN VEYA SIZDIRILMAMASININ TEK YOLU ONU YAYINLAMAMAKTIR.
Giriş noktaları, oyuna başlarken otobüsün nerede görüneceğini tanımlar. Benzersiz adlara sahip olmalıdırlar (ör: 351F-10 TP, Garagem Central).
ÖNEMLİ: BU ADLARDA ASLA AKSAN VEYA ÖZEL KARAKTER KULLANMAYIN! EĞİK ÇİZGİ DE KULLANMAYIN.
Basit liste, satır başına bir ad.

Haritadaki konumu ve fiziksel dönüşü tanımlar.

Unutmayın: Blender'da Y ön/arka ve Z yüksekliktir. Unity'de (oyun), Y yükseklik ve Z ön/arkadır. Koordinatları kopyalarken Y ve Z'yi ters çevirin!
Koordinatları bulmak için Blender'da bir Empty nesnesi kullanın:

dest klasöründe, txt'de tanımlanan entrypoints ile TAMAMEN aynı ada sahip klasörler oluşturun.

Her hedef klasörünün içinde görüntüler bulunur:
ÖNEMLİ: MOBİL TELEFONLAR İÇİN 2048 PİKSELDEN BÜYÜK GÖRÜNTÜLERDEN KAÇININ!
Tabelalar için önerilen dosya adları:
1.png, 2.png, 3.png (Elektronik tabelalar 1024x128)capelinhaDigital.png, capelinhaPVC.png (256x128)lonaDestino.png, lonaLinha.png (Rulo tabelalar)placa1.png, placa2.png, placa3.png (Yan ve ön plakalar)Her durağın 3D'de benzersiz bir adı olmalıdır (ör: zzPonto1).
Durak şunlardan oluşur:
durakadı_trigger adlı görünmez bir küp (tetikleyici).durakadı.000, durakadı.001 vb. adlı küçük nesneler (düzlemler/küpler).
İPUCU: Çokgen tasarrufu yapmak için yolcular için basit düzlemler kullanın.
Doğru Tetikleyici:

İyi konumlandırılmış tetikleyici örneği:

Kötü konumlandırılmış tetikleyici örneği (olamaz!):

Örtüşen (olamaz!):

Karşı duraklarda doğru:

Hata Ayıklama Modunda Görselleştirme:

busstops klasöründe durakla aynı ada sahip bir txt oluşturun.

[busstop]
name=Meydan Durağı
isLeft=0
paxAmount=15
[from_3d]
readFrom3D=1
prefix=zzPonto1
maxPathsToCheck=30
defPaxRotY=90
prefix: 3D'de kullanılan adla tam olarak eşleşmelidir (.000'dan önce).defPaxRotY: Varsayılan yolcu dönüşü (0, 90, 180, -90 test edin).Duraklara benzer şekilde çalışır: bir yolu (path) tanımlayan bir nesne dizisi.
Örnek: xxCalcada1.000, xxCalcada1.001, vb.

aipeople klasöründe bir txt oluşturun:

[automatic_setup]
enabled=1
loop=0
reverse=0
[defaults]
isSpawner=1
spawnInterval=5
allowBicycle=0
loop=1: Son nokta ilk noktaya bağlanır (dairesel).loop=0: Yol son noktada biter (doğrusal).Yayalarla tamamen aynı! aivehicles klasörü.

isBusSpawner=1: Otobüslerin görünmesini sağlamak için.spawnInterval: Trafiği azaltmak için artırın.speedMultiplier: Hızı değiştirin (ör: 0.5 yarım, 2 çift).Kaplamaları (PNG) skins/0/pbc içine yerleştirin. Oyun rastgele seçer.
PBC kaplama tabanı: http://omsi.viamep.com/proton/base-skins-pbc-protonbussimulator.zip
Aynı mantık, aitrains klasörü.
Öneri: defaults içinde isSpawner=0 ve aralıklı manuel spawner'lar tanımlayın.

randomTimeToWaitAtStart=1: Rastgele zamanda başlar.spawnTimeInterval: Trenler arası aralık (ör: 120 saniye).ÖNEMLİ: TRENLER DURMAZ! HER ŞEYİ EZERLER. HEMZEMİN GEÇİT YAPMAYIN.
_transparent_ kullanın (ör: grade_transparent_)._gencol_ kullanın (sokaklar, kaldırımlar). İdareli kullanın!_gencol_invisible_ kullanın (ör: barreira_gencol_invisible_)._emissive_ kullanın._low_speed_zone_ nesnesi (şikayetleri önler).
_force_exit_ nesnesi.
_det1.3ds ile bitirin (ör: arvores_det1.3ds). Yalnızca kullanıcı "Ekstra Detaylar"ı etkinleştirirse yüklenir.Yerde titreyen dokuları (z-fighting/flickering) önlemek için dokunun yanında bir .config.txt dosyası oluşturun.
Ör: asfalt.png.config.txt.


_gencol_'ü yalnızca yerde ve ana duvarlarda kullanın.Şimdilik bu kadar! İyi eğlenceler!