Öneri Pack/Root.py Dosyaları Hakkında Detaylı Rehber (Bir Yardımsever Arkadaşımızdan Güzel Bir Kaynak Bekliyoruz)

  • Konuyu açan Konuyu açan emrahdmr47
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 7
  • Gösterim Gösterim 151
Konu sahibi önerilerinizi bekliyor. Konuya yorum yazabilirsiniz.

emrahdmr47

Üye
Üye
Mesaj
135
Çözümler
5
Beğeni
33
Puan
454
Ticaret Puanı
0
Selamün Aleyküm,





Pack/root.py dosyaları hakkında elimizde pek bilgi bulunmuyor. Forumdaki yardımsever arkadaşlarımız sağ olsunlar, destek olmaya çalışıyorlar. Ancak bu dosyaların işlevleri, içeriği ve nasıl kullanılması gerektiği konularında daha detaylı bilgilere ihtiyaç duyuyoruz.

Merak edilen konular şunlardır:

• Hangi .py dosyası ne işe yarar?

• Bu dosyaların içinde neler bulunur ve mantıkları nedir?

• Yeni bir ekleme yapılırken nelere dikkat edilmelidir?

• def fonksiyonları nedir, ne değildir?

• Eklenmesini istediğiniz başka konular varsa, lütfen aşağıya yazınız.

Bu konuda bilgi ve tecrübelerinizi paylaşırsanız çok memnun olurum. Şimdiden emeği geçen herkese teşekkür ederim; hem yardımcı olanlara hem de zaman bulamayıp yardımcı olmak isteyenlere.





( Biliyorum ki forum, her şeyin para olmadığını bilen güzel insanlarla dolu. Bilgi paylaştıkça güzeldir )
 
Alıntıdır:

  • atlasinfo.txt => Map dosylarının bilgileri.
  • colorInfo.py => Oyunda kullanılan renklerin tutulduğu yer.
  • consoleModule.py => Debug console
  • constInfo.py => Global değişkenlerin bulunduğu yer.
  • debugInfo.py => Clientin derlenen debug/release bilgilerini alır.
  • dragonSoulRefineSettings.py => Simya taşlarının geliştirme ayarlarının tutulduğu kısım.
  • emotion.py => Oyundaki duyguların bulunduğu.
  • exception.py => Hata yazdırma.
  • game.py => Tüm py dosyalarının bağlantı olduğu kısım diyebiliriz. Oyunun bulunduğu ana dosya.
  • interfaceModule.py => Pencerelerin verileri burada tutulur.
  • introCreate.py => Karakter oluşturma ekranı.
  • introEmpire.py => Krallık seçme ekranı.
  • introLoading.py => Giriş yaparken veya harita değiştirirken gelen yükleme ekranı.
  • introLogin.py => Oyunu açtığımızda gelen server seçme ve giriş yapma paneli ekranı.
  • introLogo.py => Orijinalde oyuna girişte oynatılan videoların ekranı.
  • introSelect.py => Varolan karakterlerin seçim ekranı.
  • localeInfo.py => Dil dosyalarına erişim için gerekli.
  • mouseModule.py => Fare modülleri.
  • musicInfo.py => Müzik bilgileri.
  • networkModule.py => Oyuna giriş yaparken seçtiğiniz ch, server ve karakter bilgilerini tutar.
  • npclist.txt => Mob, npc gibi karakterlerin modelleme, animasyon dosyalarının bulunduğu klasörler belirtilir.
  • playerSettingModule.py => Karakterlerin yetenek, animasyon gibi bilgilerinin tutulduğu dosya.
  • prototype.py => Uygulama başlatma.
  • serverCommandParser.py => Bazı komutlar ile clientte yapılacak değişiklikler. Örnek: xmas_snow
  • serverInfo.py => Server bilgilerinin bulunduğu dosya.
  • stringCommander.py => Bilinmiyor.
  • system.py => Sistem için gerekli dosyalar. Python yükleme vs.
  • ui.py => Pencereler ve pencerelerde bulunan buton gibi elemanların oluşturulduğu dosya. Uiscript içinde yazılan verilerde burada belirtilen yönergelere göre işleniyor.
  • uiAcce.py => ui.py ile benzer sadece bu dosya kuşak sistemiyle gelmiş.
  • uiAffectShower.py => Sol üst tarafta karakterde bulunan efektleri gösteren dosya. (yang oto toplama, sevgi puanı vs.)
  • uiAttachMetin.py => İtemlere metin taşları (örn: hız taşı) eklerken çıkan pencere.
  • uiAuction.py => Bilinmiyor.
  • uiAutoBan.py => Bilinmiyor.
  • uiCandidate.py => Bilinmiyor.
  • uiCharacter.py => Oyundayken N tuşuna bastığınızda gelen karakter penceresi.
  • uiCharacterDetails.py => Official bonus gösterme sistemi ile gelen pencere.
  • uiChat.py => Ana chat penceresi.
  • uiCommon.py => Ufak bilgi penceresi.
  • uiCube.py => İksir ve kuşak oluştururken gelen pencere.
  • uiDragonSoul.py => Simya penceresi.
  • uiEquipmentDialog.py => Ekipmanların bulunduğu pencere
  • uiEx.py => Extra ui.
  • uiExchange.py => Oyuncu ile yapılan ticaret penceresi.
  • uiGameButton.py => Oyun butonları.
  • uiGameOption.py => Oyun Seçenekleri penceresi.
  • uiGuild.py => Lonca penceresi.
  • uiHelp.py => Yardım penceresi.
  • uiInventory.py => Envanter penceresi. (I)
  • uiMapNameShower.py => Bir yere ışınlandığınızda ana ekranda haritanın ismi.
  • uiMessenger.py => Arkadaşlar listesinin olduğu pencere.
  • uiMinimap.py => Sağ üstte bulunan harita.
  • uiOption.py => Sistem seçenekleri (bu dosya kullanılmıyor.)
  • uiParty.py => Oyuncularla grup oluşturduğunuzda sol tarafta grup üyeleri listesinin bulunduğu pencere.
  • uiPhaseCurtain.py => Bilinmiyor.
  • uiPickMoney.py => Envanterdeki yangları bölerken gelen pencere.
  • uiPlayerGauge.py => Karakterin can, sp gibi değerlerini gösteren çubuk.
  • uiPointReset.py => Bilinmiyor.
  • uiPrivateShopBuilder.py => Pazar kurarken itemleri eklediğimiz pencere.
  • uiQuest.py => Görevlere tıkladığınızda gelen pencere.
  • uiRefine.py => İtemlere +basarken gelen pencere.
  • uiRestart.py => Bilinmiyor.
  • uiSafebox.py => Hesap deposu
  • uiScriptLocale.py => Uiscript dosyalarında kullanılan dil işlemleri için.
  • uiSelectItem.py => Bilinmiyor.
  • uiSelectMusic.py => Sistem Seçeneklerinde müzik değiştirirken gelen pencere.
  • uiShop.py => NPC ve pazarlarda alışveriş yaparken gelen pencere.
  • uiSystem.py => ESC tuşuna bastığınızda gelen ayarlar penceresi.
  • uiSystemOption.py => Sistem seçenekleri.
  • uiTarget.py => Seçtiğiniz varlıklarda üst kısımda gözüken bilgi penceresi.
  • uiTaskbar.py => Alt kısımda hp,sp, ext, yetenek, envanter butonlarının olduğu yer.
  • uiTip.py => Bilgilendirme penceresi.
  • uiTooltip.py => Birşeylerin üzerine geldiğinizde otomatik açılan pencere. (Örn: İtem efsunlarının yazıldığı yer.)
  • uiUploadMark.py => Lonca resmi yüklerken resimleri seçtiğimiz pencere.
  • uiWeb.py => Nesne market tuşuna tıkladığınızda bu dosya çalışır.
  • uiWhisper.py => Fısıltı sohbeti penceresi.
  • utils.py => Bilinmiyor.
  • assassin_m.msm => Ninja erkek zırh, saç, kostüm vs. modellerinin isimleri yazar.
  • assassin_w.msm => Ninja kız zırh, saç, kostüm vs. modellerinin isimleri yazar.
  • shaman_m.msm => Şaman erkek zırh, saç, kostüm vs. modellerinin isimleri yazar.
  • shaman_w.msm => Şaman kız zırh, saç, kostüm vs. modellerinin isimleri yazar.
  • sura_m.msm => Sura erkek zırh, saç, kostüm vs. modellerinin isimleri yazar.
  • sura_w.msm => Sura kız zırh, saç, kostüm vs. modellerinin isimleri yazar.
  • warrior_m.msm => Savaşçı erkek zırh, saç, kostüm vs. modellerinin isimleri yazar.
  • warrior_w.msm => Savaşçı kız zırh, saç, kostüm vs. modellerinin isimleri yazar.
  • wolfman_m.msm => Wolfman kız zırh, saç, kostüm vs. modellerinin isimleri yazar.
 
Alıntıdır:

  • atlasinfo.txt => Map dosylarının bilgileri.
  • colorInfo.py => Oyunda kullanılan renklerin tutulduğu yer.
  • consoleModule.py => Debug console
  • constInfo.py => Global değişkenlerin bulunduğu yer.
  • debugInfo.py => Clientin derlenen debug/release bilgilerini alır.
  • dragonSoulRefineSettings.py => Simya taşlarının geliştirme ayarlarının tutulduğu kısım.
  • emotion.py => Oyundaki duyguların bulunduğu.
  • exception.py => Hata yazdırma.
  • game.py => Tüm py dosyalarının bağlantı olduğu kısım diyebiliriz. Oyunun bulunduğu ana dosya.
  • interfaceModule.py => Pencerelerin verileri burada tutulur.
  • introCreate.py => Karakter oluşturma ekranı.
  • introEmpire.py => Krallık seçme ekranı.
  • introLoading.py => Giriş yaparken veya harita değiştirirken gelen yükleme ekranı.
  • introLogin.py => Oyunu açtığımızda gelen server seçme ve giriş yapma paneli ekranı.
  • introLogo.py => Orijinalde oyuna girişte oynatılan videoların ekranı.
  • introSelect.py => Varolan karakterlerin seçim ekranı.
  • localeInfo.py => Dil dosyalarına erişim için gerekli.
  • mouseModule.py => Fare modülleri.
  • musicInfo.py => Müzik bilgileri.
  • networkModule.py => Oyuna giriş yaparken seçtiğiniz ch, server ve karakter bilgilerini tutar.
  • npclist.txt => Mob, npc gibi karakterlerin modelleme, animasyon dosyalarının bulunduğu klasörler belirtilir.
  • playerSettingModule.py => Karakterlerin yetenek, animasyon gibi bilgilerinin tutulduğu dosya.
  • prototype.py => Uygulama başlatma.
  • serverCommandParser.py => Bazı komutlar ile clientte yapılacak değişiklikler. Örnek: xmas_snow
  • serverInfo.py => Server bilgilerinin bulunduğu dosya.
  • stringCommander.py => Bilinmiyor.
  • system.py => Sistem için gerekli dosyalar. Python yükleme vs.
  • ui.py => Pencereler ve pencerelerde bulunan buton gibi elemanların oluşturulduğu dosya. Uiscript içinde yazılan verilerde burada belirtilen yönergelere göre işleniyor.
  • uiAcce.py => ui.py ile benzer sadece bu dosya kuşak sistemiyle gelmiş.
  • uiAffectShower.py => Sol üst tarafta karakterde bulunan efektleri gösteren dosya. (yang oto toplama, sevgi puanı vs.)
  • uiAttachMetin.py => İtemlere metin taşları (örn: hız taşı) eklerken çıkan pencere.
  • uiAuction.py => Bilinmiyor.
  • uiAutoBan.py => Bilinmiyor.
  • uiCandidate.py => Bilinmiyor.
  • uiCharacter.py => Oyundayken N tuşuna bastığınızda gelen karakter penceresi.
  • uiCharacterDetails.py => Official bonus gösterme sistemi ile gelen pencere.
  • uiChat.py => Ana chat penceresi.
  • uiCommon.py => Ufak bilgi penceresi.
  • uiCube.py => İksir ve kuşak oluştururken gelen pencere.
  • uiDragonSoul.py => Simya penceresi.
  • uiEquipmentDialog.py => Ekipmanların bulunduğu pencere
  • uiEx.py => Extra ui.
  • uiExchange.py => Oyuncu ile yapılan ticaret penceresi.
  • uiGameButton.py => Oyun butonları.
  • uiGameOption.py => Oyun Seçenekleri penceresi.
  • uiGuild.py => Lonca penceresi.
  • uiHelp.py => Yardım penceresi.
  • uiInventory.py => Envanter penceresi. (I)
  • uiMapNameShower.py => Bir yere ışınlandığınızda ana ekranda haritanın ismi.
  • uiMessenger.py => Arkadaşlar listesinin olduğu pencere.
  • uiMinimap.py => Sağ üstte bulunan harita.
  • uiOption.py => Sistem seçenekleri (bu dosya kullanılmıyor.)
  • uiParty.py => Oyuncularla grup oluşturduğunuzda sol tarafta grup üyeleri listesinin bulunduğu pencere.
  • uiPhaseCurtain.py => Bilinmiyor.
  • uiPickMoney.py => Envanterdeki yangları bölerken gelen pencere.
  • uiPlayerGauge.py => Karakterin can, sp gibi değerlerini gösteren çubuk.
  • uiPointReset.py => Bilinmiyor.
  • uiPrivateShopBuilder.py => Pazar kurarken itemleri eklediğimiz pencere.
  • uiQuest.py => Görevlere tıkladığınızda gelen pencere.
  • uiRefine.py => İtemlere +basarken gelen pencere.
  • uiRestart.py => Bilinmiyor.
  • uiSafebox.py => Hesap deposu
  • uiScriptLocale.py => Uiscript dosyalarında kullanılan dil işlemleri için.
  • uiSelectItem.py => Bilinmiyor.
  • uiSelectMusic.py => Sistem Seçeneklerinde müzik değiştirirken gelen pencere.
  • uiShop.py => NPC ve pazarlarda alışveriş yaparken gelen pencere.
  • uiSystem.py => ESC tuşuna bastığınızda gelen ayarlar penceresi.
  • uiSystemOption.py => Sistem seçenekleri.
  • uiTarget.py => Seçtiğiniz varlıklarda üst kısımda gözüken bilgi penceresi.
  • uiTaskbar.py => Alt kısımda hp,sp, ext, yetenek, envanter butonlarının olduğu yer.
  • uiTip.py => Bilgilendirme penceresi.
  • uiTooltip.py => Birşeylerin üzerine geldiğinizde otomatik açılan pencere. (Örn: İtem efsunlarının yazıldığı yer.)
  • uiUploadMark.py => Lonca resmi yüklerken resimleri seçtiğimiz pencere.
  • uiWeb.py => Nesne market tuşuna tıkladığınızda bu dosya çalışır.
  • uiWhisper.py => Fısıltı sohbeti penceresi.
  • utils.py => Bilinmiyor.
  • assassin_m.msm => Ninja erkek zırh, saç, kostüm vs. modellerinin isimleri yazar.
  • assassin_w.msm => Ninja kız zırh, saç, kostüm vs. modellerinin isimleri yazar.
  • shaman_m.msm => Şaman erkek zırh, saç, kostüm vs. modellerinin isimleri yazar.
  • shaman_w.msm => Şaman kız zırh, saç, kostüm vs. modellerinin isimleri yazar.
  • sura_m.msm => Sura erkek zırh, saç, kostüm vs. modellerinin isimleri yazar.
  • sura_w.msm => Sura kız zırh, saç, kostüm vs. modellerinin isimleri yazar.
  • warrior_m.msm => Savaşçı erkek zırh, saç, kostüm vs. modellerinin isimleri yazar.
  • warrior_w.msm => Savaşçı kız zırh, saç, kostüm vs. modellerinin isimleri yazar.
  • wolfman_m.msm => Wolfman kız zırh, saç, kostüm vs. modellerinin isimleri yazar.
Merhaba,
Arkadaşım root klasörü içerisindeki bulunan dosyaları söylemiş. Bende naçizane bilgilerimi aktarmak isterim.
Root oyun içerisinde yürütülen pencere işlevler butonlar haraketler vs vs. Aklına gelebilecek ne varsa oyuncuya gösteren kısımdır. Genelde isimlendirmeler sistemlere göre ya da kullanılacağı alana göre isimlendirilir. Örneğin battlepass için uibattlepass.py gibisinden root içerisinde bulunan dosyalarda işlevler olur. Yani 1 butona bastığımızda ne olacağını belirleyen kısım root içerisinde olur. Ancak pencereyi oluşturan kısım ise uiscript kısmıdır. Buradaki dosyalarda aynı şekilde kullanılan alana göre isimlendirilir. Mesela battlepass.py sonu .py uzantılı olması bunun bir python dosyası ya da içerisinde bulunan kodların python dilinde yazılmış olduğunu gösterir ve bilgisayarda ona göre reaksiyon alır.
Ancak bilmen gereken bazı kilit dosyalar var. Örneğin game.py ui.py bunlar genelde sistem dosyaları değildir. Sistemde kullanılan değişkenleri tutan ya da sistemlerin işlevlerini diğer sistemlerle uyarlamak için kullanılan yani bi nevi yardımcı araç gibi kullandığımız yerlerdir. Genellikle oyun sistemlerinin birbirine entegre olduğu ve başlangıç işlemlerinin düzenlendiği merkezi dosyadır. Mesela battlepass için 2 dosyaya ihtiyaç var uiscript içerisinde bulunan battlepass.py de butonlar, resimler bulunur. Kısaca pencere üzerindeki tüm araçlar butonlar vss. Root içerisindeki uibattlepass.py de ise bu resimlerin butonların işlevleri olur. Game.pyde ise mesela f5 ile açılacaksa oraya eklenir. Ya da src kısmına gönderilecek paket varsa burada bulunur. Sistemi açmak kapatma işlevleri gibi. Tabi bunların çeşitli daha öncesinde belirlenmiş kuralları var. Mesela client srcden de bu işlemler yapılabilir. Hatta game.pyye eklenen bi çok kod dosyanın kendisine de eklenebilir. Düzenlemeleri yapıldıktan sonra. Ancak metin2 belirli bir düzende işler çoğu yazılımcı, geliştirici değiştirmez olduğu gibi kullanmayı tercih eder. Ama bazılarıda değiştirir kendi düzenini kurar. Buna en güzel örnek Adalet filesi, metin2 nin düzen konusunu üzerinde uğraştıkça anlıyosunuz. örneğin etc klasöründe sistem görsellerinin olduğunu, localede yazıların geldiğini, hata mesajlarını, bilgilendirme mesajlarının olduğunu, pc ve pc2 de karekter bilgilerinin olduğunu, item kısmında oyuna eklenen itemlerin bulunduğunu, zone de mapların zemin bilgilerinin tutulduğunu gibi gibi üzerinde uğraştıkça pack kısmının düzenini öğreniyosun. Üzerine birde kod bilgin varsa gerisi kolay. :)

Diğer bir konu def ler. Def ler defineden gelir bir fonksiyon ya da işlev oluşturmak için kullanılır. Bunları kullanabilmek için oluşturabilmek için elbetteki kodlama bilgisine ihtiyaç var. Nr yaptığını bilmen için. Aşağıda bir örnek vereyim daha iyi anlaşılmak adına.

Python:
Genişlet Daralt Kopyala
def topla(a, b):
    return a + b

print(topla(3, 5))  # Çıktı: 8

Gördüğün gibi topla adında fonksiyon oluşturdum. Def kullanarak ve bu fonksiyonuda aşağıda tekrar çağırdım. A ya 3 atadı b ye 5 atadı ve topladı sonuç 8 oldu return ile geri dönderdi ve printle yazdırdı. Bu arada bu fonksiyon parametre almadığı için def kullandık. Def yerine başka şeylerde kullanılabilir. Kodun işlevine göre, dediğim gibi bunu yazabilmek için bir kodlama dili bilgisine ihtiyacınız var. Zaten kodlama öğrendiğinizde tüm dosyaların ne işe yaradığını nereye neyi yazman gerektiğini öğreniyosun. Genel olarak söyleyebileceklerim benim açımdan bu kadar, bu yazı kendi bilgilerim ve tecrübelerim doğrultusunda hazırlanmıştır. Başka bir arkadaş farklı düşünebilir. Ya da unuttuğum bir kısım olabilir. Bu konuda farklı görüşler veya ek bilgiler sunacak arkadaşlardan da katkılar beklerim. Hem bende daha çok şey öğrenirim. Umarım söylediklerimin bi faydası olur. İyi çalışmalar kolay gelsin.
 
Son düzenleme:
Alıntıdır:

  • atlasinfo.txt => Map dosylarının bilgileri.
  • colorInfo.py => Oyunda kullanılan renklerin tutulduğu yer.
  • consoleModule.py => Debug console
  • constInfo.py => Global değişkenlerin bulunduğu yer.
  • debugInfo.py => Clientin derlenen debug/release bilgilerini alır.
  • dragonSoulRefineSettings.py => Simya taşlarının geliştirme ayarlarının tutulduğu kısım.
  • emotion.py => Oyundaki duyguların bulunduğu.
  • exception.py => Hata yazdırma.
  • game.py => Tüm py dosyalarının bağlantı olduğu kısım diyebiliriz. Oyunun bulunduğu ana dosya.
  • interfaceModule.py => Pencerelerin verileri burada tutulur.
  • introCreate.py => Karakter oluşturma ekranı.
  • introEmpire.py => Krallık seçme ekranı.
  • introLoading.py => Giriş yaparken veya harita değiştirirken gelen yükleme ekranı.
  • introLogin.py => Oyunu açtığımızda gelen server seçme ve giriş yapma paneli ekranı.
  • introLogo.py => Orijinalde oyuna girişte oynatılan videoların ekranı.
  • introSelect.py => Varolan karakterlerin seçim ekranı.
  • localeInfo.py => Dil dosyalarına erişim için gerekli.
  • mouseModule.py => Fare modülleri.
  • musicInfo.py => Müzik bilgileri.
  • networkModule.py => Oyuna giriş yaparken seçtiğiniz ch, server ve karakter bilgilerini tutar.
  • npclist.txt => Mob, npc gibi karakterlerin modelleme, animasyon dosyalarının bulunduğu klasörler belirtilir.
  • playerSettingModule.py => Karakterlerin yetenek, animasyon gibi bilgilerinin tutulduğu dosya.
  • prototype.py => Uygulama başlatma.
  • serverCommandParser.py => Bazı komutlar ile clientte yapılacak değişiklikler. Örnek: xmas_snow
  • serverInfo.py => Server bilgilerinin bulunduğu dosya.
  • stringCommander.py => Bilinmiyor.
  • system.py => Sistem için gerekli dosyalar. Python yükleme vs.
  • ui.py => Pencereler ve pencerelerde bulunan buton gibi elemanların oluşturulduğu dosya. Uiscript içinde yazılan verilerde burada belirtilen yönergelere göre işleniyor.
  • uiAcce.py => ui.py ile benzer sadece bu dosya kuşak sistemiyle gelmiş.
  • uiAffectShower.py => Sol üst tarafta karakterde bulunan efektleri gösteren dosya. (yang oto toplama, sevgi puanı vs.)
  • uiAttachMetin.py => İtemlere metin taşları (örn: hız taşı) eklerken çıkan pencere.
  • uiAuction.py => Bilinmiyor.
  • uiAutoBan.py => Bilinmiyor.
  • uiCandidate.py => Bilinmiyor.
  • uiCharacter.py => Oyundayken N tuşuna bastığınızda gelen karakter penceresi.
  • uiCharacterDetails.py => Official bonus gösterme sistemi ile gelen pencere.
  • uiChat.py => Ana chat penceresi.
  • uiCommon.py => Ufak bilgi penceresi.
  • uiCube.py => İksir ve kuşak oluştururken gelen pencere.
  • uiDragonSoul.py => Simya penceresi.
  • uiEquipmentDialog.py => Ekipmanların bulunduğu pencere
  • uiEx.py => Extra ui.
  • uiExchange.py => Oyuncu ile yapılan ticaret penceresi.
  • uiGameButton.py => Oyun butonları.
  • uiGameOption.py => Oyun Seçenekleri penceresi.
  • uiGuild.py => Lonca penceresi.
  • uiHelp.py => Yardım penceresi.
  • uiInventory.py => Envanter penceresi. (I)
  • uiMapNameShower.py => Bir yere ışınlandığınızda ana ekranda haritanın ismi.
  • uiMessenger.py => Arkadaşlar listesinin olduğu pencere.
  • uiMinimap.py => Sağ üstte bulunan harita.
  • uiOption.py => Sistem seçenekleri (bu dosya kullanılmıyor.)
  • uiParty.py => Oyuncularla grup oluşturduğunuzda sol tarafta grup üyeleri listesinin bulunduğu pencere.
  • uiPhaseCurtain.py => Bilinmiyor.
  • uiPickMoney.py => Envanterdeki yangları bölerken gelen pencere.
  • uiPlayerGauge.py => Karakterin can, sp gibi değerlerini gösteren çubuk.
  • uiPointReset.py => Bilinmiyor.
  • uiPrivateShopBuilder.py => Pazar kurarken itemleri eklediğimiz pencere.
  • uiQuest.py => Görevlere tıkladığınızda gelen pencere.
  • uiRefine.py => İtemlere +basarken gelen pencere.
  • uiRestart.py => Bilinmiyor.
  • uiSafebox.py => Hesap deposu
  • uiScriptLocale.py => Uiscript dosyalarında kullanılan dil işlemleri için.
  • uiSelectItem.py => Bilinmiyor.
  • uiSelectMusic.py => Sistem Seçeneklerinde müzik değiştirirken gelen pencere.
  • uiShop.py => NPC ve pazarlarda alışveriş yaparken gelen pencere.
  • uiSystem.py => ESC tuşuna bastığınızda gelen ayarlar penceresi.
  • uiSystemOption.py => Sistem seçenekleri.
  • uiTarget.py => Seçtiğiniz varlıklarda üst kısımda gözüken bilgi penceresi.
  • uiTaskbar.py => Alt kısımda hp,sp, ext, yetenek, envanter butonlarının olduğu yer.
  • uiTip.py => Bilgilendirme penceresi.
  • uiTooltip.py => Birşeylerin üzerine geldiğinizde otomatik açılan pencere. (Örn: İtem efsunlarının yazıldığı yer.)
  • uiUploadMark.py => Lonca resmi yüklerken resimleri seçtiğimiz pencere.
  • uiWeb.py => Nesne market tuşuna tıkladığınızda bu dosya çalışır.
  • uiWhisper.py => Fısıltı sohbeti penceresi.
  • utils.py => Bilinmiyor.
  • assassin_m.msm => Ninja erkek zırh, saç, kostüm vs. modellerinin isimleri yazar.
  • assassin_w.msm => Ninja kız zırh, saç, kostüm vs. modellerinin isimleri yazar.
  • shaman_m.msm => Şaman erkek zırh, saç, kostüm vs. modellerinin isimleri yazar.
  • shaman_w.msm => Şaman kız zırh, saç, kostüm vs. modellerinin isimleri yazar.
  • sura_m.msm => Sura erkek zırh, saç, kostüm vs. modellerinin isimleri yazar.
  • sura_w.msm => Sura kız zırh, saç, kostüm vs. modellerinin isimleri yazar.
  • warrior_m.msm => Savaşçı erkek zırh, saç, kostüm vs. modellerinin isimleri yazar.
  • warrior_w.msm => Savaşçı kız zırh, saç, kostüm vs. modellerinin isimleri yazar.
  • wolfman_m.msm => Wolfman kız zırh, saç, kostüm vs. modellerinin isimleri yazar.
ilginiz alakanız için cok teşekür ediyoeum bunu görmüstüm
birazda iclerinden def foksiyonları ve
düzenlerken neye dikkat edilmeli örnek vb. örnekler olsa
güzel olur diye düsünüyorum form adınada sürekli konu acıp soru sorulmasın

Merhaba,
Arkadaşım root klasörü içerisindeki bulunan dosyaları söylemiş. Bende naçizane bilgilerimi aktarmak isterim.
Root oyun içerisinde yürütülen pencere işlevler butonlar haraketler vs vs. Aklına gelebilecek ne varsa oyuncuya gösteren kısımdır. Genelde isimlendirmeler sistemlere göre ya da kullanılacağı alana göre isimlendirilir. Örneğin battlepass için uibattlepass.py gibisinden root içerisinde bulunan dosyalarda işlevler olur. Yani 1 butona bastığımızda ne olacağını belirleyen kısım root içerisinde olur. Ancak pencereyi oluşturan kısım ise uiscript kısmıdır. Buradaki dosyalarda aynı şekilde kullanılan alana göre isimlendirilir. Mesela battlepass.py sonu .py uzantılı olması bunun bir python dosyası ya da içerisinde bulunan kodların python dilinde yazılmış olduğunu gösterir ve bilgisayarda ona göre reaksiyon alır.
Ancak bilmen gereken bazı kilit dosyalar var. Örneğin game.py ui.py bunlar genelde sistem dosyaları değildir. Sistemde kullanılan değişkenleri tutan ya da sistemlerin işlevlerini diğer sistemlerle uyarlamak için kullanılan yani bi nevi yardımcı araç gibi kullandığımız yerlerdir. Genellikle oyun sistemlerinin birbirine entegre olduğu ve başlangıç işlemlerinin düzenlendiği merkezi dosyadır. Mesela battlepass için 2 dosyaya ihtiyaç var uiscript içerisinde bulunan battlepass.py de butonlar, resimler bulunur. Kısaca pencere üzerindeki tüm araçlar butonlar vss. Root içerisindeki uibattlepass.py de ise bu resimlerin butonların işlevleri olur. Game.pyde ise mesela f5 ile açılacaksa oraya eklenir. Ya da src kısmına gönderilecek paket varsa burada bulunur. Sistemi açmak kapatma işlevleri gibi. Tabi bunların çeşitli daha öncesinde belirlenmiş kuralları var. Mesela client srcden de bu işlemler yapılabilir. Hatta game.pyye eklenen bi çok kod dosyanın kendisine de eklenebilir. Düzenlemeleri yapıldıktan sonra. Ancak metin2 belirli bir düzende işler çoğu yazılımcı, geliştirici değiştirmez olduğu gibi kullanmayı tercih eder. Ama bazılarıda değiştirir kendi düzenini kurar. Buna en güzel örnek Adalet filesi, metin2 nin düzen konusunu üzerinde uğraştıkça anlıyosunuz. örneğin etc klasöründe sistem görsellerinin olduğunu, localede yazıların geldiğini, hata mesajlarını, bilgilendirme mesajlarının olduğunu, pc ve pc2 de karekter bilgilerinin olduğunu, item kısmında oyuna eklenen itemlerin bulunduğunu, zone de mapların zemin bilgilerinin tutulduğunu gibi gibi üzerinde uğraştıkça pack kısmının düzenini öğreniyosun. Üzerine birde kod bilgin varsa gerisi kolay. :)

Diğer bir konu def ler. Def ler defineden gelir bir fonksiyon ya da işlev oluşturmak için kullanılır. Bunları kullanabilmek için oluşturabilmek için elbetteki kodlama bilgisine ihtiyaç var. Nr yaptığını bilmen için. Aşağıda bir örnek vereyim daha iyi anlaşılmak adına.

Python:
Genişlet Daralt Kopyala
def topla(a, b):
    return a + b

print(topla(3, 5))  # Çıktı: 8

Gördüğün gibi topla adında fonksiyon oluşturdum. Def kullanarak ve bu fonksiyonuda aşağıda tekrar çağırdım. A ya 3 atadı b ye 5 atadı ve topladı sonuç 8 oldu return ile geri dönderdi ve printle yazdırdı. Bu arada bu fonksiyon parametre almadığı için def kullandık. Def yerine başka şeylerde kullanılabilir. Kodun işlevine göre, dediğim gibi bunu yazabilmek için bir kodlama dili bilgisine ihtiyacınız var. Zaten kodlama öğrendiğinizde tüm dosyaların ne işe yaradığını nereye neyi yazman gerektiğini öğreniyosun. Genel olarak söyleyebileceklerim benim açımdan bu kadar, bu yazı kendi bilgilerim ve tecrübelerim doğrultusunda hazırlanmıştır. Başka bir arkadaş farklı düşünebilir. Ya da unuttuğum bir kısım olabilir. Bu konuda farklı görüşler veya ek bilgiler sunacak arkadaşlardan da katkılar beklerim. Hem bende daha çok şey öğrenirim. Umarım söylediklerimin bi faydası olur. İyi çalışmalar kolay gelsin.
öncelikle bu saatte beni cok mutlu ettiniz
insan okumaya üşeniyor siz yazdınız ekmek verdiniz
bu degerli yorumunuz için çok teşekür ederim
yapay zeka ya düzenletip paylasmak istedim cok degerli bir yorum



Metin2 Root ve Dosya Yapısı Hakkında Bilgilendirme​

Arkadaşımın aktardığı root klasörü bilgilerine ek olarak naçizane kendi bilgilerimi de paylaşmak isterim.

Root Nedir?​

Root, oyun içerisinde gerçekleştirilen pencere işlevleri, butonlar, hareketler ve oyuncuya gösterilen tüm bileşenlerin işlendiği kısımdır. Dosya isimlendirmeleri genellikle sistemin türüne veya kullanım alanına göre yapılır. Örneğin, battlepass sistemi için uibattlepass.py gibi bir dosya bulunur. Bu dosya, bir butona basıldığında ne olacağını belirleyen işlevleri içerir.

Ancak, pencerenin oluşturulması ise uiscript klasöründeki dosyalarda yapılır. Bu dosyalar da kullanılan alana göre isimlendirilir. Örneğin battlepass.py, pencere üzerinde bulunan butonları ve görselleri tanımlar. .py uzantısı, bu dosyanın Python dilinde yazıldığını gösterir.

Kilit Dosyalar​

Bazı önemli dosyalar şunlardır:

  1. game.py: Bu dosya genellikle sistem dosyası değildir. Değişkenleri tutar ve sistemlerin birbirleriyle entegrasyonunu sağlar. Başlangıç işlemlerini düzenleyen merkezi bir dosyadır.
  2. ui.py: Yardımcı araç işlevi görür ve genellikle sistemlerle ilgili genel işlevleri içerir.
Örnek: Battlepass sistemi eklemek için iki dosya gerekir:

  • uiscript/battlepass.py: Butonlar ve görseller burada tanımlanır.
  • root/uibattlepass.py: Butonların ve görsellerin işlevleri burada tanımlanır.
game.py dosyasına ise örneğin F5 tuşuyla pencere açma işlemi eklenebilir.

Düzen ve Yapı​

Metin2’nin dosya yapısı belirli kurallar çerçevesinde işler. Çoğu geliştirici bu yapıyı değiştirmez ve olduğu gibi kullanmayı tercih eder. Ancak bazıları, kendi düzenlerini oluşturur. Örneğin, Adalet Filesi bu konuda güzel bir örnektir.

Metin2 üzerinde çalıştıkça şu klasör yapıları hakkında daha fazla bilgi sahibi olursun:

  • etc: Sistem görselleri burada bulunur.
  • locale: Yazılar, hata mesajları ve bilgilendirme mesajları burada tutulur.
  • pc / pc2: Karakter bilgileri burada yer alır.
  • item: Oyuna eklenen eşyaların tanımları burada yapılır.
  • zone: Haritaların zemin bilgileri burada tutulur.
  • pack: Oyunun düzeni ve paketlenmiş dosyalar burada yer alır.
Kodlama bilgin arttıkça bu yapıları daha iyi anlayabilir ve değiştirebilirsin.

def​

Def, Python'da define (tanımlama) kelimesinden gelir ve fonksiyon oluşturmak için kullanılır. Bir işlev veya işlem yapmak istediğinde def kullanarak fonksiyon tanımlayabilirsin. İşte bir örnek:

Python:
Genişlet Daralt Kopyala
def topla(a, b):
    return a + b

print(topla(3, 5))  # Çıktı: 8
Bu örnekte topla adında bir fonksiyon oluşturduk ve a ile b parametrelerini topladık. return ile sonucu geri döndürdük ve print ile ekrana yazdırdık.


Bu bilgiler kendi tecrübelerime dayanarak hazırlanmıştır. Başka arkadaşların eklemek istedikleri veya farklı düşündükleri noktalar olabilir. Her türlü katkıya açığım; böylece hep birlikte daha fazla öğrenebiliriz.

Umarım faydalı olur! 😊
İyi çalışmalar ve kolaylıklar dilerim.
 
öncelikle bu saatte beni cok mutlu ettiniz
insan okumaya üşeniyor siz yazdınız ekmek verdiniz
bu degerli yorumunuz için çok teşekür ederim
yapay zeka ya düzenletip paylasmak istedim cok degerli bir yorum



Metin2 Root ve Dosya Yapısı Hakkında Bilgilendirme​

Arkadaşımın aktardığı root klasörü bilgilerine ek olarak naçizane kendi bilgilerimi de paylaşmak isterim.

Root Nedir?​

Root, oyun içerisinde gerçekleştirilen pencere işlevleri, butonlar, hareketler ve oyuncuya gösterilen tüm bileşenlerin işlendiği kısımdır. Dosya isimlendirmeleri genellikle sistemin türüne veya kullanım alanına göre yapılır. Örneğin, battlepass sistemi için uibattlepass.py gibi bir dosya bulunur. Bu dosya, bir butona basıldığında ne olacağını belirleyen işlevleri içerir.

Ancak, pencerenin oluşturulması ise uiscript klasöründeki dosyalarda yapılır. Bu dosyalar da kullanılan alana göre isimlendirilir. Örneğin battlepass.py, pencere üzerinde bulunan butonları ve görselleri tanımlar. .py uzantısı, bu dosyanın Python dilinde yazıldığını gösterir.

Kilit Dosyalar​

Bazı önemli dosyalar şunlardır:

  1. game.py: Bu dosya genellikle sistem dosyası değildir. Değişkenleri tutar ve sistemlerin birbirleriyle entegrasyonunu sağlar. Başlangıç işlemlerini düzenleyen merkezi bir dosyadır.
  2. ui.py: Yardımcı araç işlevi görür ve genellikle sistemlerle ilgili genel işlevleri içerir.
Örnek: Battlepass sistemi eklemek için iki dosya gerekir:

  • uiscript/battlepass.py: Butonlar ve görseller burada tanımlanır.
  • root/uibattlepass.py: Butonların ve görsellerin işlevleri burada tanımlanır.
game.py dosyasına ise örneğin F5 tuşuyla pencere açma işlemi eklenebilir.

Düzen ve Yapı​

Metin2’nin dosya yapısı belirli kurallar çerçevesinde işler. Çoğu geliştirici bu yapıyı değiştirmez ve olduğu gibi kullanmayı tercih eder. Ancak bazıları, kendi düzenlerini oluşturur. Örneğin, Adalet Filesi bu konuda güzel bir örnektir.

Metin2 üzerinde çalıştıkça şu klasör yapıları hakkında daha fazla bilgi sahibi olursun:

  • etc: Sistem görselleri burada bulunur.
  • locale: Yazılar, hata mesajları ve bilgilendirme mesajları burada tutulur.
  • pc / pc2: Karakter bilgileri burada yer alır.
  • item: Oyuna eklenen eşyaların tanımları burada yapılır.
  • zone: Haritaların zemin bilgileri burada tutulur.
  • pack: Oyunun düzeni ve paketlenmiş dosyalar burada yer alır.
Kodlama bilgin arttıkça bu yapıları daha iyi anlayabilir ve değiştirebilirsin.

def​

Def, Python'da define (tanımlama) kelimesinden gelir ve fonksiyon oluşturmak için kullanılır. Bir işlev veya işlem yapmak istediğinde def kullanarak fonksiyon tanımlayabilirsin. İşte bir örnek:

Python:
Genişlet Daralt Kopyala
def topla(a, b):
    return a + b

print(topla(3, 5))  # Çıktı: 8
Bu örnekte topla adında bir fonksiyon oluşturduk ve a ile b parametrelerini topladık. return ile sonucu geri döndürdük ve print ile ekrana yazdırdık.


Bu bilgiler kendi tecrübelerime dayanarak hazırlanmıştır. Başka arkadaşların eklemek istedikleri veya farklı düşündükleri noktalar olabilir. Her türlü katkıya açığım; böylece hep birlikte daha fazla öğrenebiliriz.

Umarım faydalı olur! 😊
İyi çalışmalar ve kolaylıklar dilerim.
Rica ederim. Genel bir anlatım yapmak istediğim. Dediğim gibi uğraştıkça daha çok anlıyo ve öğreniyosunuz. Boza çöze boza çöze. Tüm yapıya hakim oluyosunuz. Sadece packda değil srclerde bi nevi öyle. Bu arada harbiden çok yazmışım. Yazarken hiç anlamıyorum tekrar okudum. Yapay zeka daha güzel yazmış. Hem yazıyı toparlamış. Umarım bişeyler katmıştır. İyi geceler. ( Ben uyumaya kaçar sabah iş var. 😂😂 )
😇👋
 
En son bir moderatör tarafından düzenlenmiş:
Root içeriğini şöyle düşünebilirsin kısaca, oyuncunun ekranında gördüğü her element root içerisinde tanımlanıyor. Örnekleri çok fazla burada daha iyi öğrenebilmek adına kendine bir sistem seçebilirsin.

Örneğin mesela envanteri seçecek olursan root içerisinde uiinventory.py bulunur. Burada envanter ile alakalı tüm logic kısımları yazılıdır. Oyuncunun gördüğü pencere tasarımıda uiscript/inventory.py içerisinde bulunur. Bu diğer tüm ui elementleri için geçerli( karakter ekranı, minimap, simya ekranı vs.)

Ek olarak game.py, ui.py gibi dosyalarda ise verilen örnekteki gibi mesela hangi tuşla açıldığı game.py içerisinde. Mesela herhangi bir ui tasarımı yaparken bir buton özelliği kullanıyorsan bu özellikler ui.py içerisinde tanımlı oluyor. Bazen sistem eklerken python kısmında hata alındığında genelde kullanılan özellikler ui.pyda ekli olmayabiliyor mesela orayı atlıyor çoğu kişi.

Genel olarak az çok kod okuyabiliyorsan ve bolca sistem eklediysen zaten yapıyı öğreniyorsun.
 
Cok iyi ben bukadar zamandır bunu nasıl görmedim 🙁 cok tesekürler

Root içeriğini şöyle düşünebilirsin kısaca, oyuncunun ekranında gördüğü her element root içerisinde tanımlanıyor. Örnekleri çok fazla burada daha iyi öğrenebilmek adına kendine bir sistem seçebilirsin.

Örneğin mesela envanteri seçecek olursan root içerisinde uiinventory.py bulunur. Burada envanter ile alakalı tüm logic kısımları yazılıdır. Oyuncunun gördüğü pencere tasarımıda uiscript/inventory.py içerisinde bulunur. Bu diğer tüm ui elementleri için geçerli( karakter ekranı, minimap, simya ekranı vs.)

Ek olarak game.py, ui.py gibi dosyalarda ise verilen örnekteki gibi mesela hangi tuşla açıldığı game.py içerisinde. Mesela herhangi bir ui tasarımı yaparken bir buton özelliği kullanıyorsan bu özellikler ui.py içerisinde tanımlı oluyor. Bazen sistem eklerken python kısmında hata alındığında genelde kullanılan özellikler ui.pyda ekli olmayabiliyor mesela orayı atlıyor çoğu kişi.

Genel olarak az çok kod okuyabiliyorsan ve bolca sistem eklediysen zaten yapıyı öğreniyorsun.
formda sık sık adınızı duyuyorum çok teşekürler verdiginiz örnekte güzel 😍
 
En son bir moderatör tarafından düzenlenmiş:
Geri
Üst