Çözüldü ! Bağırma sohbetinin süresini kısaltmak?

Bu konu çözüme ulaştırılmıştır. Çözüm için konuya yazılan tüm yorumları okumayı unutmayın. Eğer konudaki yorumlar sorununuzu çözmediyse yeni bir konu açabilirsiniz.
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.

bqofficial

Üye
Üye
Mesaj
103
Çözümler
2
Beğeni
23
Puan
39
Ticaret Puanı
0
! Bağırma sohbetindeki 15 saniye süre sınırını düşürmek istiyorum.
Bağırma levelinin ayarlandığı input_main.cpp üzerinde biraz göz gezdirdim ve passes_per_sec değerini gördüm.
Ancak bu değerde değişiklik yaptığım zaman süreyi etkilemediğini fark ettim, nereden değiştirebiliriz?

Ekran Alıntısı.PNG
 
Çözüm
Src de yaptıklarınıza ek olarak bir de şu fonksiyonu düzenleyin.

root>uichat.py;
Python:
    def __SendShoutChatPacket(self, text):

        if 1 == len(text):
            self.RunCloseEvent()
            return

        if app.GetTime() < self.lastShoutTime + 15: -----BURAYI DA SRC İLE AYNI DEĞERDE DÜZENLEYİN
            chat.AppendChat(chat.CHAT_TYPE_INFO, localeInfo.CHAT_SHOUT_LIMIT)
            self.__ResetChat()
            return

        self.__SendChatPacket(text[1:], chat.CHAT_TYPE_SHOUT)
        self.__ResetChat()

        self.lastShoutTime = app.GetTime()
TurkmmoSF alt yapısını kullanıyorum ancak configte göremedim :)
Aslında değiştirdiğiniz kısım bağırma süresininin zaman ayarı fakat neden etki etmemiş garip. Newstuff ifdefiyle marty asmalarda bu tür değerler diğer confige ayarlanıyor. Şu kapatılan kodu aktif edip aktif koduda kapatıp derlemeyi denesene.
Limitlevel ile bağırma levelini confige ayarlanmış dediğim kısımdaki kodu aktif edersen bağırma süreside config üzerinden ayarlanabilir.
 
Son düzenleme:
if (pinfo->type == CHAT_TYPE_SHOUT)
{
// const int SHOUT_LIMIT_LEVEL = 15;

if (ch->GetLevel() < g_iShoutLimitLevel)
{
ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("¿ÜÄ¡±â´Â ·¹º§ %d ÀÌ»ó¸¸ »ç¿ë °¡´É ÇÕ´Ï´Ù."), g_iShoutLimitLevel);
return (iExtraLen);
}

if (thecore_heart->pulse - (int) ch->GetLastShoutPulse() < passes_per_sec * g_iShoutLimitTime)
// if (thecore_heart->pulse - (int)ch->GetLastShoutPulse() < passes_per_sec * 15)
return (iExtraLen);

ch->SetLastShoutPulse(thecore_heart->pulse);

TPacketGGShout p;

p.bHeader = HEADER_GG_SHOUT;
p.bEmpire = ch->GetEmpire();
strlcpy(p.szText, chatbuf, sizeof(p.szText));

P2P_MANAGER::instance().Send(&p, sizeof(TPacketGGShout));

SendShout(chatbuf, ch->GetEmpire());

return (iExtraLen);
}

Bu şekilde mi? Evet configte level ayarı mevcut ancak saniye ile ilgili bir kod göremedim.
 
Evet. Bu şekilde derle. Configede bunu ekle g_iShoutLimitTime sonrasında süreyide belirtirsin yanına.
 
Evet. Bu şekilde derle. Configede bunu ekle g_iShoutLimitTime sonrasında süreyide belirtirsin yanına.
Şu anda derliyorum ancak benim bildiğim kadarıyla normalde bu görseldeki:

123.PNG


config ayarlarının ch klasörlerinin içerisindeki CONFIG dosyasında olması gerekiyor ancak burada değiller.

1234.PNG


Biraz göz gezdirdim ancak nerede olduklarını bulamadım, yine de buraya

g_iShoutLimitTime: ?

olarak ekleme sağlayım mı? @melihalbayrak

Derleme işlemi yaparken şöyle bir hata aldım.
 

Dosya Eklentileri

  • 123.PNG
    123.PNG
    19,2 KB · Gösterim: 135
Şu anda derliyorum ancak benim bildiğim kadarıyla normalde bu görseldeki:

7063 eklentisini görüntüle

config ayarlarının ch klasörlerinin içerisindeki CONFIG dosyasında olması gerekiyor ancak burada değiller.

7064 eklentisini görüntüle

Biraz göz gezdirdim ancak nerede olduklarını bulamadım, yine de buraya

g_iShoutLimitTime: ?

olarak ekleme sağlayım mı? @melihalbayrak

Derleme işlemi yaparken şöyle bir hata aldım.
Hmm. Anlaşıldı neden o kodu kapattıkları tamamlanmamış ya da config.cpp kısımları ekli değil. O zaman yine kapattığın kodu tekrar aktif et. Oradaki 15 değeri 15 second olarak tanımlı yani 15 saniye neden çalışmadığı konusunda fikrim yok garip. Kodu aktif ettirtmemin nedeni belki bir hata yapıp kapatmışlardır diye düşünmüştüm ama öyle değilmiş.
 
Hmm. Anlaşıldı neden o kodu kapattıkları tamamlanmamış ya da config.cpp kısımları ekli değil. O zaman yine kapattığın kodu tekrar aktif et. Oradaki 15 değeri 15 second olarak tanımlı yani 15 saniye neden çalışmadığı konusunda fikrim yok garip. Kodu aktif ettirtmemin nedeni belki bir hata yapıp kapatmışlardır diye düşünmüştüm ama öyle değilmiş.
Aktif ederek 6 saniyeye düşürüp derledikten sonra tekrar denedim ama tam 15 saniye, buradan değilse nereden çekiyor merak ettim.
 
Src de yaptıklarınıza ek olarak bir de şu fonksiyonu düzenleyin.

root>uichat.py;
Python:
    def __SendShoutChatPacket(self, text):

        if 1 == len(text):
            self.RunCloseEvent()
            return

        if app.GetTime() < self.lastShoutTime + 15: -----BURAYI DA SRC İLE AYNI DEĞERDE DÜZENLEYİN
            chat.AppendChat(chat.CHAT_TYPE_INFO, localeInfo.CHAT_SHOUT_LIMIT)
            self.__ResetChat()
            return

        self.__SendChatPacket(text[1:], chat.CHAT_TYPE_SHOUT)
        self.__ResetChat()

        self.lastShoutTime = app.GetTime()
 
Çözüm
Src de yaptıklarınıza ek olarak bir de şu fonksiyonu düzenleyin.

root>uichat.py;
Python:
    def __SendShoutChatPacket(self, text):

        if 1 == len(text):
            self.RunCloseEvent()
            return

        if app.GetTime() < self.lastShoutTime + 15: -----BURAYI DA SRC İLE AYNI DEĞERDE DÜZENLEYİN
            chat.AppendChat(chat.CHAT_TYPE_INFO, localeInfo.CHAT_SHOUT_LIMIT)
            self.__ResetChat()
            return

        self.__SendChatPacket(text[1:], chat.CHAT_TYPE_SHOUT)
        self.__ResetChat()

        self.lastShoutTime = app.GetTime()
İşte şimdi oldu, harikasın.
 
Src de yaptıklarınıza ek olarak bir de şu fonksiyonu düzenleyin.

root>uichat.py;
Python:
    def __SendShoutChatPacket(self, text):

        if 1 == len(text):
            self.RunCloseEvent()
            return

        if app.GetTime() < self.lastShoutTime + 15: -----BURAYI DA SRC İLE AYNI DEĞERDE DÜZENLEYİN
            chat.AppendChat(chat.CHAT_TYPE_INFO, localeInfo.CHAT_SHOUT_LIMIT)
            self.__ResetChat()
            return

        self.__SendChatPacket(text[1:], chat.CHAT_TYPE_SHOUT)
        self.__ResetChat()

        self.lastShoutTime = app.GetTime()
Tekrar selam, gün içerisinde slotlardan ve normal olarak yere atılan itemlerin sürelerini kısaltmıştım.

asdasd.PNG


Tüm işlemleri doğru yapmama rağmen hiç bir değişiklik olmamıştı o yüzden eski haline çevirmiştim, acaba bunlarında pack ile alakası olabilir mi?

İsim kaybolma süresi 10 olmasına rağmen 30 saniyede isimsize düşmeden isimli bir şekilde kalkıyor.
Yere düşen eşyada () bir şey yazmıyordu 3 yaptım tekrar bir değişiklik göremedim en az 5 dakika yerde kalıyor.
 
En son bir moderatör tarafından düzenlenmiş:
Tekrar selam, gün içerisinde slotlardan ve normal olarak yere atılan itemlerin sürelerini kısaltmıştım.

Tüm işlemleri doğru yapmama rağmen hiç bir değişiklik olmamıştı o yüzden eski haline çevirmiştim, acaba bunlarında pack ile alakası olabilir mi?

İsim kaybolma süresi 10 olmasına rağmen 30 saniyede isimsize düşmeden isimli bir şekilde kalkıyor.
Yere düşen eşyada () bir şey yazmıyordu 3 yaptım tekrar bir değişiklik göremedim en az 5 dakika yerde kalıyor.
Pack kaynaklı değil aynısı bendede olmuştu. Ayarlamayı şuradan yapacaksın. config.cpp içinde g_aiItemDestroyTime[ITEM_DESTROY_TIME_MAX] bunu arat. Yanında yazıyor zaten süreler ve neyin süresi olduğu.
 
En son bir moderatör tarafından düzenlenmiş:
Pack kaynaklı değil aynısı bendede olmuştu. Ayarlamayı şuradan yapacaksın. config.cpp içinde g_aiItemDestroyTime[ITEM_DESTROY_TIME_MAX] bunu arat. Yanında yazıyor zaten süreler ve neyin süresi olduğu.
Teşekkür ederim. :)
Sorun çözüldü.
 
En son bir moderatör tarafından düzenlenmiş:
Konu çözüldüğüne göre konuyu kilitliyorum, iyi çalışmalar. ;)
 
Durum
İçerik kilitlendiği için mesaj gönderimine kapatıldı.
Geri
Üst