Yardım Rubinum Channel System sorunu

  • Konuyu açan Konuyu açan adv1453
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 15
  • Gösterim Gösterim 1K
Konu sahibi bu konuda soru soruyor. Sorusu ile ilgili bilgisi olanların yanıtlamasını bekliyor.
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.

adv1453

Yardımsever Üye
Yardımsever Üye
MT Üye
Mesaj
442
Çözümler
42
Beğeni
226
Puan
869
Ticaret Puanı
0
db build sırasında aşağıdaki gibi hata veriyor, araştırdım ancak bu durumu yaşayan çok olmuş çözümü yazan olmamış acaba bilen var mı?

ClientManager.h:356: error: 'TPacketChangeChannel' has not been declared

satır böyle

Screenshot_1.webp


sistemi ek dosya olarak ekledim
 

Dosya Eklentileri

TPacketChangeChannel common/tables.h içinde tanmlanmış. Build etmeden önce common dosyalarını da sunucuya attınız mı?

Eğer tables.h içinde bu kodlar varsa tables.h dosyasının en başında service.h isimli dosyanın import edildiğinden emin olunuz.
 
Son düzenleme:
evet cammon dosyası yüklü tables.h dosyasının en üstü bu şekilde

Screenshot_3.webp
 
#include "lenght.h" altına şunu ekler misin? Böylelikle #ifdef ile belirtilen yerler çalışacak.
C++:
Genişlet Daralt Kopyala
#include "service.h"
 
Client/UserInterface/PythonApplicationModule.cpp dosyasında ENABLE_CHANGE_CHANNEL_SYSTEM python modülü tanımlı olması gerek
 
Dosyaya eklemeyi unutmuş olabilirler. root dosyalarında app. ile başlayan bir şey varsa PythonApplicationModule.cpp içindedir.
Aşağıda söylediklerimi uygulayıp clienti build edin;
Ara;
C++:
Genişlet Daralt Kopyala
#ifdef USE_OPENID
    PyModule_AddIntConstant(poModule, "USE_OPENID",    1);

Üstüne bunları ekle;
C++:
Genişlet Daralt Kopyala
#define ENABLE_CHANGE_CHANNEL_SYSTEM
#ifdef ENABLE_CHANGE_CHANNEL_SYSTEM
    PyModule_AddIntConstant(poModule, "ENABLE_CHANGE_CHANNEL_SYSTEM", 1);
#else
    PyModule_AddIntConstant(poModule, "ENABLE_CHANGE_CHANNEL_SYSTEM", 0);
#endif
 
Dosyaya eklemeyi unutmuş olabilirler. root dosyalarında app. ile başlayan bir şey varsa PythonApplicationModule.cpp içindedir.
Aşağıda söylediklerimi uygulayıp clienti build edin;
Ara;
C++:
Genişlet Daralt Kopyala
#ifdef USE_OPENID
    PyModule_AddIntConstant(poModule, "USE_OPENID",    1);

Üstüne bunları ekle;
C++:
Genişlet Daralt Kopyala
#define ENABLE_CHANGE_CHANNEL_SYSTEM
#ifdef ENABLE_CHANGE_CHANNEL_SYSTEM
    PyModule_AddIntConstant(poModule, "ENABLE_CHANGE_CHANNEL_SYSTEM", 1);
#else
    PyModule_AddIntConstant(poModule, "ENABLE_CHANGE_CHANNEL_SYSTEM", 0);
#endif

Şimdide böyle syserr verdi :D neyse hocam bayağı bi eksik paylaşılmış bu başka hızlı ch ekleyeceğim sağolun ilginiz için kusura bakmayın.

Screenshot_3.webp
 
Uiscriptte ki dosyadan ch1_button isimli objeyi bulamıyor. Kodlara bakın var mı böyle bir şey. Yoksa ya kendiniz eklemeniz lazım yada dediğiniz gibi sistemi kaldırabilirsiniz ama ben biraz daha uğraşın derim. Hem yeni yeni şeyler öğrenmiş olursunuz. :)
 
Uiscriptte ki dosyadan ch1_button isimli objeyi bulamıyor. Kodlara bakın var mı böyle bir şey. Yoksa ya kendiniz eklemeniz lazım yada dediğiniz gibi sistemi kaldırabilirsiniz ama ben biraz daha uğraşın derim. Hem yeni yeni şeyler öğrenmiş olursunuz. :)

evet var systemdialog.py

Python:
Genişlet Daralt Kopyala
import uiScriptLocale

ROOT = "d:/ymir work/ui/public/"

window = {
    "name" : "SystemDialog",
    "style" : ("float",),

    "x" : (SCREEN_WIDTH  - 200) /2,
    "y" : (SCREEN_HEIGHT - 288 + 30) /2,

    "width" : 200,
    "height" : 288 + 30,

    "children" :
    (
        {
            "name" : "board",
            "type" : "thinboard",

            "x" : 0,
            "y" : 0,

            "width" : 200,
            "height" : 288 + 30,

            "children" :
            (
                {
                    "name" : "ch1_button",
                    "type" : "button",

                    "x" : 10,
                    "y" : 17,

                    "text" : "CH1",

                    "default_image" : ROOT + "small_Button_01.sub",
                    "over_image" : ROOT + "small_Button_02.sub",
                    "down_image" : ROOT + "small_Button_03.sub",
                },
                {
                    "name" : "ch2_button",
                    "type" : "button",

                    "x" : 55,
                    "y" : 17,

                    "text" : "CH2",

                    "default_image" : ROOT + "small_Button_01.sub",
                    "over_image" : ROOT + "small_Button_02.sub",
                    "down_image" : ROOT + "small_Button_03.sub",
                },
                {
                    "name" : "ch3_button",
                    "type" : "button",

                    "x" : 100,
                    "y" : 17,

                    "text" : "CH3",

                    "default_image" : ROOT + "small_Button_01.sub",
                    "over_image" : ROOT + "small_Button_02.sub",
                    "down_image" : ROOT + "small_Button_03.sub",
                },
                {
                    "name" : "ch4_button",
                    "type" : "button",

                    "x" : 145,
                    "y" : 17,

                    "text" : "CH4",

                    "default_image" : ROOT + "small_Button_01.sub",
                    "over_image" : ROOT + "small_Button_02.sub",
                    "down_image" : ROOT + "small_Button_03.sub",
                },
                {
                    "name" : "help_button",
                    "type" : "button",

                    "x" : 10,
                    "y" : 17 + 30,

                    "text" : uiScriptLocale.SYSTEM_HELP,

                    "default_image" : ROOT + "XLarge_Button_01.sub",
                    "over_image" : ROOT + "XLarge_Button_02.sub",
                    "down_image" : ROOT + "XLarge_Button_03.sub",
                },
                {
                    "name" : "mallbox_button",
                    "type" : "button",

                    "x" : 10,
                    "y" : 57 + 30,

                    "text" : uiScriptLocale.SYSTEM_MALLBOX,
                    "text_color" : 0xffF8BF24,

                    "default_image" : ROOT + "XLarge_Button_02.sub",
                    "over_image" : ROOT + "XLarge_Button_02.sub",
                    "down_image" : ROOT + "XLarge_Button_02.sub",
                },

                {
                    "name" : "system_option_button",
                    "type" : "button",

                    "x" : 10,
                    "y" : 87 + 30,

                    "text" : uiScriptLocale.SYSTEMOPTION_TITLE,

                    "default_image" : ROOT + "XLarge_Button_01.sub",
                    "over_image" : ROOT + "XLarge_Button_02.sub",
                    "down_image" : ROOT + "XLarge_Button_03.sub",
                },
                {
                    "name" : "game_option_button",
                    "type" : "button",

                    "x" : 10,
                    "y" : 117 + 30,

                    "text" : uiScriptLocale.GAMEOPTION_TITLE,

                    "default_image" : ROOT + "XLarge_Button_01.sub",
                    "over_image" : ROOT + "XLarge_Button_02.sub",
                    "down_image" : ROOT + "XLarge_Button_03.sub",
                },
                {
                    "name" : "change_button",
                    "type" : "button",

                    "x" : 10,
                    "y" : 147 + 30,

                    "text" : uiScriptLocale.SYSTEM_CHANGE,

                    "default_image" : ROOT + "XLarge_Button_01.sub",
                    "over_image" : ROOT + "XLarge_Button_02.sub",
                    "down_image" : ROOT + "XLarge_Button_03.sub",
                },
                {
                    "name" : "logout_button",
                    "type" : "button",

                    "x" : 10,
                    "y" : 177 + 30,

                    "text" : uiScriptLocale.SYSTEM_LOGOUT,

                    "default_image" : ROOT + "XLarge_Button_01.sub",
                    "over_image" : ROOT + "XLarge_Button_02.sub",
                    "down_image" : ROOT + "XLarge_Button_03.sub",
                },
                {
                    "name" : "exit_button",
                    "type" : "button",

                    "x" : 10,
                    "y" : 217 + 30,

                    "text" : uiScriptLocale.SYSTEM_EXIT_2,

                    "default_image" : ROOT + "XLarge_Button_01.sub",
                    "over_image" : ROOT + "XLarge_Button_02.sub",
                    "down_image" : ROOT + "XLarge_Button_03.sub",
                },
                {
                    "name" : "cancel_button",
                    "type" : "button",

                    "x" : 10,
                    "y" : 247 + 30,

                    "text" : uiScriptLocale.CANCEL,

                    "default_image" : ROOT + "XLarge_Button_01.sub",
                    "over_image" : ROOT + "XLarge_Button_02.sub",
                    "down_image" : ROOT + "XLarge_Button_03.sub",
                },
            ),
        },
    ),
}
 
locale/tr/ui içindeki systemdialog.py dosyasına da sistem kodlarını ekleyin.
Orijinal Metin2'de ülkeden ülkeye farklı özellikler sunduğu için root dosyasında bazı gui kodları locale altında ki script dosyalarını alıyor.
 
locale/tr/ui içindeki systemdialog.py dosyasına da sistem kodlarını ekleyin.
Orijinal Metin2'de ülkeden ülkeye farklı özellikler sunduğu için root dosyasında bazı gui kodları locale altında ki script dosyalarını alıyor.

Bilgi için teşekkür ederim, bu sefer böyle syserr verdi :D ne syserr miş be

Screenshot_4.webp
 

Dosya Eklentileri

Hocam öncelikle selam, eklemeye çalıştığınız kanal değiştirme sisteminin Vegas isimli developerin yaptığını söyleyen birkaç konu okudum.
Yukarıda bu sistemin kaynak dosyalarını eklemişsiniz, onları açıp inceledim. uisystem.py için
GetObject("mallbox_button").SAFE_SetEvent(self.__ClickMallBoxButton)
kod bloğu bittikten sonra eklenmesi gerektiği yazılmış. Sizden istediğim uisystem.py'nin içerisinde yukarıdaki kod yok. Kanal değiştirme sisteminin sizin altyapı server filesinizde çalışması için yukarıdaki koda ihtiyaç duymadığınızın farkındayım ama dikkatinizi çekmek istediğim konu bu sistemin bir server files için oluşturulduğu. O server files de büyük ihtimalle Vegas'ın kendi server filesi. Belki ücretli satıyor, belki de warez veya Vegas tarafından paylaşılmıştır. Sorunun, sizin server dosyalarınızda olmayan bazı kodlardan kaynaklandığını düşünüyorum, yukarıda bazı sorunları @Whistle 'ın yardımıyla çözmüşsünüz, belki bu sysseri de çözersiniz ve bundan sonra gelecekleri de ama oyun içinde bu sistem ile ilgili bir bug oluşursa bu sizin için çok kötü olabilir. Üzerinde testlerin yapıldığı, çalıştığına dair kanıtların eklendiği kanal değiştirme sistemlerini kullanmanızı öneririm. Bilginiz var ise paylaşılan server fileslerden de sökebilirsiniz ama benim önerim paylaşılan dosyaları kullanmanız. Sökmek emeğe saygısızlık olabilir :oops:

edit: Şunu da söylemek isterim, paylaşılan dosyalar sorunsuz ise ve siz eklerken bir yanlış yaptıysanız da bu sysserleri alıyor olabilirsiniz :D
Kontrol ederek bir kez daha eklemeyi deneyin derim.
edit2: Bununla ilgili bir sistem paylaşacağım, sadece biraz zamana ihtiyacım var. :rolleyes:
 
Son düzenleme:
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.
Geri
Üst