- Katılım
- 29 Haz 2025
- Konular
- 12
- Mesajlar
- 53
- Çözüm
- 2
- Online süresi
- 12d 11h
- Reaksiyon Skoru
- 11
- Altın Konu
- 0
- TM Yaşı
- 11 Ay 13 Gün
- Başarım Puanı
- 36
- MmoLira
- 2,135
- DevLira
- 0
ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!
Elinde bu sistemden olan veya hangi fileste olduğunu bilen varsa yardımcı olursa çok sevinirim.
Ekli dosyalar
- Katılım
- 23 Haz 2010
- Konular
- 62
- Mesajlar
- 330
- Online süresi
- 1mo 1d
- Reaksiyon Skoru
- 208
- Altın Konu
- 0
- Başarım Puanı
- 149
- Yaş
- 28
- MmoLira
- 4,661
- DevLira
- 51
[CODE title="char.h"]#ifdef UNVAN_SYSTEM
private:
int m_titleID;
public:
void SetTitleID(int id);
int GetTitleID() const;
void ApplyTitleBonus();
void RemoveTitleBonus();
#endif[/CODE]
[CODE title="char.cpp içinde: Constructor içinde başlat:"]#ifdef UNVAN_SYSTEM
m_titleID = 0;
#en#endifODE]
Fonksiyon tanımları:
[CODE title="char.cpp"]#ifdef UNVAN_SYSTEM
void CHARACTER::SetTitleID(int id)
{
// Eski bonusları sil
RemoveTitleBonus();
m_titleID = id;
// Yeni bonusları uygula
ApplyTitleBonus();
}
int CHARACTER::GetTitleID() const
{
return m_titleID;
}
void CHARACTER::ApplyTitleBonus()
{
switch (m_titleID)
{
case 1: // Boss Avcısı
AddAffect(AFFECT_UNVAN, POINT_ATTBONUS_BOSS, 10, AFF_NONE, INFINITE_AFFECT_DURATION, 0, true);
break;
case 2: // General
PointChange(POINT_MAX_HP, 1000);
break;
case 3: // Gladyatör
AddAffect(AFFECT_UNVAN, POINT_CRITICAL_PCT, 10, AFF_NONE, INFINITE_AFFECT_DURATION, 0, true);
break;
case 4: // Şövalye
AddAffect(AFFECT_UNVAN, POINT_PENETRATE_PCT, 10, AFF_NONE, INFINITE_AFFECT_DURATION, 0, true);
break;
case 5: // Metin Avcısı
AddAffect(AFFECT_UNVAN, POINT_ATTBONUS_METIN, 10, AFF_NONE, INFINITE_AFFECT_DURATION, 0, true);
break;
case 6: // Patron Avcısı
AddAffect(AFFECT_UNVAN, POINT_ATTBONUS_MONSTER, 10, AFF_NONE, INFINITE_AFFECT_DURATION, 0, true);
break;
case 7: // Şampiyon
AddAffect(AFFECT_UNVAN, POINT_ATTBONUS_HUMAN, 10, AFF_NONE, INFINITE_AFFECT_DURATION, 0, true);
break;
}
}
void CHARACTER::RemoveTitleBonus()
{
RemoveAffect(AFFECT_UNVAN);
// HP gibi direkt verilen puanları sıfırlamak için login sırasında yeniden yükleme gerekir
}
#endif[/CODE]
item.cpp#endifiklikleri
// bull
void CItem::Use(LPCHARACTER ch, DWORD dwDestCell)
[CODE title="item.cpp"]#ifdef UNVAN_SYSTEM
// Ünvan parşömeni örneği
if (GetVnum() == 50000) // Boss Avcısı parşömeni
{
ch->ChatPacket(CHAT_TYPE_INFO, "Boss Avcısı unvanını kazandınız!");
ch->SetTitleID(1); // 1 = Boss Avcısı
ITEM_MANAGER::instance().RemoveItem(this); // Item sil
// Client'e paket gönder
TPacketGCTitleUpdate p;
p.header = HEADER_GC_TITLE_UPDATE;
p.dwVID = ch->GetVID();
p.titleID = ch->GetTitleID();
ch->GetDesc()->Packet(&p, sizeof(p));
return;
}
#endif[/CODE]
[CODE title="packet.h"]#ifdef#endif_SYSTEM
#define HEADER_GC_TITLE_UPDATE 210
#endif
s#defineacket_* tanımlarının olduğu #endifkle
#ifdef UNVAN_SYSTEM
typedef struct packet_gc_tit#ifdefate
{
BYTE header;
DWORD dwVID; // Karakterin VID'si
DWORD titleID; // Aktif unvan ID
} TPacketGCTitleUpdate;
#endif[/CODE]
[CODE title="packet_info.cpp Pa[HASH=3]#endif[/HASH]yutunu ve yönünü tanımla:"]#ifdef UNVAN_SYSTEM
Set(HEADER_GC_TITLE_UPDATE, sizeof(TPacketGCTitleUpdate), DESC_TYPE_CHAR, true);
#endif[/CODE]
client src
[CODE title="GameType.h#endifef UNVAN_SYSTEM
DWORD m_dwTitleID;
#endif[/CODE]
[CODE title="nstanceBase.h"]// CInsta#endife class’ına unvan alanı ekle:
#ifdef UNVAN_SYSTEM
private:
DWORD m_dwTitleID;
publ#ifdef void SetTitleID(DWORD id) { m_dwTitleID = id; }
DWORD GetTitleID() const { return m_dwTitleID; }
#endif[/CODE]
[CODE title="PythonNetworkStreamPhaseGame#endif// Paket handler ekle:
#ifdef UNVAN_SYSTEM
void CPythonNetworkStream::RecvTitle#ifdef()
{
TPacketGCTitleUpdate p;
if (!Recv(sizeof(p), &p))
return;
CPythonCharacterManager& rkChrMgr = CPythonCharacterManager::Instance();
CInstanceBase* pInstance = rkChrMgr.GetInstancePtr(p.dwVID);
if (pInstance)
pInstance->SetTitleID(p.titleID);
}
#endif[/CODE]
Ve paket register kısmına ekle:
[CO#endifle="InstanceBase::RenderName Karakter ismini çizen fonksiyonun altına unvan yazısı ekle:"]#ifdef UNVAN_SYSTEM
if (m_dwTitleID > 0)
{
const char* szTitleName = GetTitleNameByID(m_dwTitleID); // Bunu senin tanımlaman lazım
if (szTitleName)
{
RenderText(szTitleName, x, y - 15, D3DXCOLOR(1.0f, 0.8f, 0.0f, 1.0f)); // Sarı renkte
}
}
#endif[/CODE]
[CODE title="GetTitleNameByID fonksiyonu basit bir[HASH=3]#endif[/HASH]h-case olabilir:"]#ifdef UNVAN_SYSTEM
const char* CInstanceBase::GetTitleNameByID(DWORD id)
{
switch (id)
{
case 1: return "Boss Avcısı";
case 2: return "General";
case 3: return "Gladyatör";
case 4: return "Şövalye";
case 5: return "Metin Avcısı";
case 6: return "Patron Avcısı";
case 7: return "Şampiyon";
default: return nullptr;
}
}
#endif[/CODE]
[CODE title="Paket Yapısı (Packet.h)"]#ifdef UNVAN_SYSTEM
t#endif struct packet_gc_title_update
{
BYTE header;
DWORD dwVID;
DWORD titleID;
} TPacketGCTitleUpdate;
#endif
// ve game src de verdiğiniz değeride eklemeyide unutmayın bizim verd#endif10 ordan alın entegre edin
[/CODE]
[CODE title="persomen1.quest"]quest unvan_bossavcisi begin
state start begin
when 50000.use begin
if pc.getqf("unvan") == 1 then
syschat("Zaten Boss Avcısı unvanına sahipsiniz!")
return
end
pc.setqf("unvan", 1)
cmdchat("TITLE_UPDATE 1")
affect.add_collect(apply.STR, 5, 60*60*24*365*60) -- +5 STR kalıcı
pc.remove_item(50000, 1)
syschat("Tebrikler! Boss Avcısı unvanını kazandınız!")
end
end
end[/CODE]
[CODE title="persomen2.quest"]quest unvan_general begin
state start begin
when 50001.use begin
if pc.getqf("unvan") == 2 then
syschat("Zaten General unvanına sahipsiniz!")
return
end
pc.setqf("unvan", 2)
cmdchat("TITLE_UPDATE 2")
affect.add_collect(apply.DEX, 5, 60*60*24*365*60) -- +5 DEX
pc.remove_item(50001, 1)
syschat("Tebrikler! General unvanını kazandınız!")
end
end
end[/CODE]
[CODE title="persomen3.quest"]quest unvan_gladyator begin
state start begin
when 50002.use begin
if pc.getqf("unvan") == 3 then
syschat("Zaten Gladyatör unvanına sahipsiniz!")
return
end
pc.setqf("unvan", 3)
cmdchat("TITLE_UPDATE 3")
affect.add_collect(apply.HP, 500, 60*60*24*365*60) -- +500 HP
pc.remove_item(50002, 1)
syschat("Tebrikler! Gladyatör unvanını kazandınız!")
end
end
end[/CODE]
[CODE title="persomen4.quest"]quest unvan_sovalye begin
state start begin
when 50003.use begin
if pc.getqf("unvan") == 4 then
syschat("Zaten Şövalye unvanına sahipsiniz!")
return
end
pc.setqf("unvan", 4)
cmdchat("TITLE_UPDATE 4")
affect.add_collect(apply.DEF_GRADE_BONUS, 50, 60*60*24*365*60) -- +50 Def
pc.remove_item(50003, 1)
syschat("Tebrikler! Şövalye unvanını kazandınız!")
end
end
end[/CODE]
[CODE title="persomen5.quest"]quest unvan_metinavcisi begin
state start begin
when 50004.use begin
if pc.getqf("unvan") == 5 then
syschat("Zaten Metin Avcısı unvanına sahipsiniz!")
return
end
pc.setqf("unvan", 5)
cmdchat("TITLE_UPDATE 5")
affect.add_collect(apply.ATTBONUS_METIN, 10, 60*60*24*365*60) -- Metin taşı hasar +10%
pc.remove_item(50004, 1)
syschat("Tebrikler! Metin Avcısı unvanını kazandınız!")
end
end
end[/CODE]
[CODE title="persomen6.quest"]quest unvan_patronavcisi begin
state start begin
when 50005.use begin
if pc.getqf("unvan") == 6 then
syschat("Zaten Patron Avcısı unvanına sahipsiniz!")
return
end
pc.setqf("unvan", 6)
cmdchat("TITLE_UPDATE 6")
affect.add_collect(apply.ATTBONUS_BOSS, 10, 60*60*24*365*60) -- Boss hasar +10%
pc.remove_item(50005, 1)
syschat("Tebrikler! Patron Avcısı unvanını kazandınız!")
end
end
end[/CODE]
[CODE title="persomen7.quest"]quest unvan_sampiyon begin
state start begin
when 50006.use begin
if pc.getqf("unvan") == 7 then
syschat("Zaten Şampiyon unvanına sahipsiniz!")
return
end
pc.setqf("unvan", 7)
cmdchat("TITLE_UPDATE 7")
affect.add_collect(apply.ATTBONUS_HUMAN, 5, 60*60*24*365*60) -- İnsan hasar +5%
pc.remove_item(50006, 1)
syschat("Tebrikler! Şampiyon unvanını kazandınız!")
end
end
end[/CODE]
private:
int m_titleID;
public:
void SetTitleID(int id);
int GetTitleID() const;
void ApplyTitleBonus();
void RemoveTitleBonus();
#endif[/CODE]
[CODE title="char.cpp içinde: Constructor içinde başlat:"]#ifdef UNVAN_SYSTEM
m_titleID = 0;
#en#endifODE]
Fonksiyon tanımları:
[CODE title="char.cpp"]#ifdef UNVAN_SYSTEM
void CHARACTER::SetTitleID(int id)
{
// Eski bonusları sil
RemoveTitleBonus();
m_titleID = id;
// Yeni bonusları uygula
ApplyTitleBonus();
}
int CHARACTER::GetTitleID() const
{
return m_titleID;
}
void CHARACTER::ApplyTitleBonus()
{
switch (m_titleID)
{
case 1: // Boss Avcısı
AddAffect(AFFECT_UNVAN, POINT_ATTBONUS_BOSS, 10, AFF_NONE, INFINITE_AFFECT_DURATION, 0, true);
break;
case 2: // General
PointChange(POINT_MAX_HP, 1000);
break;
case 3: // Gladyatör
AddAffect(AFFECT_UNVAN, POINT_CRITICAL_PCT, 10, AFF_NONE, INFINITE_AFFECT_DURATION, 0, true);
break;
case 4: // Şövalye
AddAffect(AFFECT_UNVAN, POINT_PENETRATE_PCT, 10, AFF_NONE, INFINITE_AFFECT_DURATION, 0, true);
break;
case 5: // Metin Avcısı
AddAffect(AFFECT_UNVAN, POINT_ATTBONUS_METIN, 10, AFF_NONE, INFINITE_AFFECT_DURATION, 0, true);
break;
case 6: // Patron Avcısı
AddAffect(AFFECT_UNVAN, POINT_ATTBONUS_MONSTER, 10, AFF_NONE, INFINITE_AFFECT_DURATION, 0, true);
break;
case 7: // Şampiyon
AddAffect(AFFECT_UNVAN, POINT_ATTBONUS_HUMAN, 10, AFF_NONE, INFINITE_AFFECT_DURATION, 0, true);
break;
}
}
void CHARACTER::RemoveTitleBonus()
{
RemoveAffect(AFFECT_UNVAN);
// HP gibi direkt verilen puanları sıfırlamak için login sırasında yeniden yükleme gerekir
}
#endif[/CODE]
item.cpp#endifiklikleri
// bull
void CItem::Use(LPCHARACTER ch, DWORD dwDestCell)
[CODE title="item.cpp"]#ifdef UNVAN_SYSTEM
// Ünvan parşömeni örneği
if (GetVnum() == 50000) // Boss Avcısı parşömeni
{
ch->ChatPacket(CHAT_TYPE_INFO, "Boss Avcısı unvanını kazandınız!");
ch->SetTitleID(1); // 1 = Boss Avcısı
ITEM_MANAGER::instance().RemoveItem(this); // Item sil
// Client'e paket gönder
TPacketGCTitleUpdate p;
p.header = HEADER_GC_TITLE_UPDATE;
p.dwVID = ch->GetVID();
p.titleID = ch->GetTitleID();
ch->GetDesc()->Packet(&p, sizeof(p));
return;
}
#endif[/CODE]
[CODE title="packet.h"]#ifdef#endif_SYSTEM
#define HEADER_GC_TITLE_UPDATE 210
#endif
s#defineacket_* tanımlarının olduğu #endifkle
#ifdef UNVAN_SYSTEM
typedef struct packet_gc_tit#ifdefate
{
BYTE header;
DWORD dwVID; // Karakterin VID'si
DWORD titleID; // Aktif unvan ID
} TPacketGCTitleUpdate;
#endif[/CODE]
[CODE title="packet_info.cpp Pa[HASH=3]#endif[/HASH]yutunu ve yönünü tanımla:"]#ifdef UNVAN_SYSTEM
Set(HEADER_GC_TITLE_UPDATE, sizeof(TPacketGCTitleUpdate), DESC_TYPE_CHAR, true);
#endif[/CODE]
client src
[CODE title="GameType.h#endifef UNVAN_SYSTEM
DWORD m_dwTitleID;
#endif[/CODE]
[CODE title="nstanceBase.h"]// CInsta#endife class’ına unvan alanı ekle:
#ifdef UNVAN_SYSTEM
private:
DWORD m_dwTitleID;
publ#ifdef void SetTitleID(DWORD id) { m_dwTitleID = id; }
DWORD GetTitleID() const { return m_dwTitleID; }
#endif[/CODE]
[CODE title="PythonNetworkStreamPhaseGame#endif// Paket handler ekle:
#ifdef UNVAN_SYSTEM
void CPythonNetworkStream::RecvTitle#ifdef()
{
TPacketGCTitleUpdate p;
if (!Recv(sizeof(p), &p))
return;
CPythonCharacterManager& rkChrMgr = CPythonCharacterManager::Instance();
CInstanceBase* pInstance = rkChrMgr.GetInstancePtr(p.dwVID);
if (pInstance)
pInstance->SetTitleID(p.titleID);
}
#endif[/CODE]
Ve paket register kısmına ekle:
Kod:
#ifdef UNVAN_SYSTEM
Set(HEADER_GC_TITLE_UPDATE, CPythonNetworkStream::RecvTitleUpdate);
#endif
[CO#endifle="InstanceBase::RenderName Karakter ismini çizen fonksiyonun altına unvan yazısı ekle:"]#ifdef UNVAN_SYSTEM
if (m_dwTitleID > 0)
{
const char* szTitleName = GetTitleNameByID(m_dwTitleID); // Bunu senin tanımlaman lazım
if (szTitleName)
{
RenderText(szTitleName, x, y - 15, D3DXCOLOR(1.0f, 0.8f, 0.0f, 1.0f)); // Sarı renkte
}
}
#endif[/CODE]
[CODE title="GetTitleNameByID fonksiyonu basit bir[HASH=3]#endif[/HASH]h-case olabilir:"]#ifdef UNVAN_SYSTEM
const char* CInstanceBase::GetTitleNameByID(DWORD id)
{
switch (id)
{
case 1: return "Boss Avcısı";
case 2: return "General";
case 3: return "Gladyatör";
case 4: return "Şövalye";
case 5: return "Metin Avcısı";
case 6: return "Patron Avcısı";
case 7: return "Şampiyon";
default: return nullptr;
}
}
#endif[/CODE]
[CODE title="Paket Yapısı (Packet.h)"]#ifdef UNVAN_SYSTEM
t#endif struct packet_gc_title_update
{
BYTE header;
DWORD dwVID;
DWORD titleID;
} TPacketGCTitleUpdate;
#endif
// ve game src de verdiğiniz değeride eklemeyide unutmayın bizim verd#endif10 ordan alın entegre edin
[/CODE]
[CODE title="persomen1.quest"]quest unvan_bossavcisi begin
state start begin
when 50000.use begin
if pc.getqf("unvan") == 1 then
syschat("Zaten Boss Avcısı unvanına sahipsiniz!")
return
end
pc.setqf("unvan", 1)
cmdchat("TITLE_UPDATE 1")
affect.add_collect(apply.STR, 5, 60*60*24*365*60) -- +5 STR kalıcı
pc.remove_item(50000, 1)
syschat("Tebrikler! Boss Avcısı unvanını kazandınız!")
end
end
end[/CODE]
[CODE title="persomen2.quest"]quest unvan_general begin
state start begin
when 50001.use begin
if pc.getqf("unvan") == 2 then
syschat("Zaten General unvanına sahipsiniz!")
return
end
pc.setqf("unvan", 2)
cmdchat("TITLE_UPDATE 2")
affect.add_collect(apply.DEX, 5, 60*60*24*365*60) -- +5 DEX
pc.remove_item(50001, 1)
syschat("Tebrikler! General unvanını kazandınız!")
end
end
end[/CODE]
[CODE title="persomen3.quest"]quest unvan_gladyator begin
state start begin
when 50002.use begin
if pc.getqf("unvan") == 3 then
syschat("Zaten Gladyatör unvanına sahipsiniz!")
return
end
pc.setqf("unvan", 3)
cmdchat("TITLE_UPDATE 3")
affect.add_collect(apply.HP, 500, 60*60*24*365*60) -- +500 HP
pc.remove_item(50002, 1)
syschat("Tebrikler! Gladyatör unvanını kazandınız!")
end
end
end[/CODE]
[CODE title="persomen4.quest"]quest unvan_sovalye begin
state start begin
when 50003.use begin
if pc.getqf("unvan") == 4 then
syschat("Zaten Şövalye unvanına sahipsiniz!")
return
end
pc.setqf("unvan", 4)
cmdchat("TITLE_UPDATE 4")
affect.add_collect(apply.DEF_GRADE_BONUS, 50, 60*60*24*365*60) -- +50 Def
pc.remove_item(50003, 1)
syschat("Tebrikler! Şövalye unvanını kazandınız!")
end
end
end[/CODE]
[CODE title="persomen5.quest"]quest unvan_metinavcisi begin
state start begin
when 50004.use begin
if pc.getqf("unvan") == 5 then
syschat("Zaten Metin Avcısı unvanına sahipsiniz!")
return
end
pc.setqf("unvan", 5)
cmdchat("TITLE_UPDATE 5")
affect.add_collect(apply.ATTBONUS_METIN, 10, 60*60*24*365*60) -- Metin taşı hasar +10%
pc.remove_item(50004, 1)
syschat("Tebrikler! Metin Avcısı unvanını kazandınız!")
end
end
end[/CODE]
[CODE title="persomen6.quest"]quest unvan_patronavcisi begin
state start begin
when 50005.use begin
if pc.getqf("unvan") == 6 then
syschat("Zaten Patron Avcısı unvanına sahipsiniz!")
return
end
pc.setqf("unvan", 6)
cmdchat("TITLE_UPDATE 6")
affect.add_collect(apply.ATTBONUS_BOSS, 10, 60*60*24*365*60) -- Boss hasar +10%
pc.remove_item(50005, 1)
syschat("Tebrikler! Patron Avcısı unvanını kazandınız!")
end
end
end[/CODE]
[CODE title="persomen7.quest"]quest unvan_sampiyon begin
state start begin
when 50006.use begin
if pc.getqf("unvan") == 7 then
syschat("Zaten Şampiyon unvanına sahipsiniz!")
return
end
pc.setqf("unvan", 7)
cmdchat("TITLE_UPDATE 7")
affect.add_collect(apply.ATTBONUS_HUMAN, 5, 60*60*24*365*60) -- İnsan hasar +5%
pc.remove_item(50006, 1)
syschat("Tebrikler! Şampiyon unvanını kazandınız!")
end
end
end[/CODE]
- Katılım
- 29 Haz 2025
- Konular
- 12
- Mesajlar
- 53
- Çözüm
- 2
- Online süresi
- 12d 11h
- Reaksiyon Skoru
- 11
- Altın Konu
- 0
- TM Yaşı
- 11 Ay 13 Gün
- Başarım Puanı
- 36
- MmoLira
- 2,135
- DevLira
- 0
Kanka hem SRC yi hem Questi yoracak bir sistem bu chatgpt değil çalışan bir sistem lazım bana. Teşekkür ederim yinede.
- Katılım
- 23 Haz 2010
- Konular
- 62
- Mesajlar
- 330
- Online süresi
- 1mo 1d
- Reaksiyon Skoru
- 208
- Altın Konu
- 0
- Başarım Puanı
- 149
- Yaş
- 28
- MmoLira
- 4,661
- DevLira
- 51
çalışan sistem kardeşim sen herşeyi elle yazılıyormu sanıyorsun gördüğün herşey yapay zekadan çıkma zaten rica ederim. kod mantığı doğru ekelrsen çalışırKanka hem SRC yi hem Questi yoracak bir sistem bu chatgpt değil çalışan bir sistem lazım bana. Teşekkür ederim yinede.
- Katılım
- 20 Eki 2017
- Konular
- 468
- Mesajlar
- 9,380
- Çözüm
- 271
- Online süresi
- 11mo 27d
- Reaksiyon Skoru
- 8,233
- Altın Konu
- 47
- TM Yaşı
- 8 Yıl 7 Ay 21 Gün
- Başarım Puanı
- 326
- Yaş
- 25
- MmoLira
- 97,156
- DevLira
- 242
Item Title System
Önizleme: Öğeyi görmek için üye olmalısınız. Color: Öğeyi görmek için üye olmalısınız.
İtem Giymeli Tittle Sistemi
Merhaba uzun zaman kendim aradım fakat bulamadım. Bir filesten söktüm fakat denemedim test edip dönüş yaparsanız eksinleri ayarlayalım. İçerisinde sade şekilde anlatım var game.py eklemenize gerek yok You must be registered for see element.
Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)
Benzer konular
- Cevaplar
- 4
- Görüntüleme
- 132
- Cevaplar
- 6
- Görüntüleme
- 159
- Cevaplar
- 5
- Görüntüleme
- 264
- Cevaplar
- 2
- Görüntüleme
- 94




