- Katılım
- 6 Mayıs 2022
- Mesajlar
- 45,967
Kod biraz eksik ama çalışıyor işinizi görür..
1534 ve 1886 Party Sistemleri ile Knight Online NP Dağıtımında Yeni Dönem
Knight Online özel sunucularında (pserver) oyun içi deneyimi artırmak adına geliştirilen sistemlerden birisi de Party NP Dağıtımı mekanizmasıdır. Özellikle 1534 ve 1886 gibi eski ve klasik Knight Online sunucu yapılarında, oyuncuların grup halinde seyahat etmesi ve ortak düşmanlarla savaşması oldukça yaygındır. Bu süreçte, öldürülen düşmanlardan elde edilen NP (Noblesse Point) puanlarının doğru şekilde paylaşılması, hem adil bir oynanış sağlar hem de oyuncuların birlikte çalışmasını teşvik eder.
1534 Party Sistemi, Knight Online'da NP paylaşımını belirli kurallar çerçevesinde yapmayı amaçlayan bir yapıdır. Bu sistemde, party lideri belirlenen kurala göre NP'yi dağıtabilir. Orijinal sistemde NP paylaşımı, öldürme payı üzerinden yapılır. Ancak modifiye edilmiş sistemlerde, liderin belirlediği kurallara göre eşit veya oransal dağıtım da sağlanabilir. Bu özellik, özellikle büyük gruplar için büyük avantajlar sunar.
1886 Party yapısı ise daha gelişmiş bir NP paylaşım modeli sunar. Bu sistemde NP paylaşımı, sadece öldürme değil, destek ve yardım verme oranlarına göre de yapılır. Bu sayede, sadece son darbeyi vuran kişi değil, tüm grup üyeleri katkılarına göre NP alır. Böylece, herkesin aktif olarak katıldığı bir savaş dinamikası oluşur.
NP Dağıtımında Kullanılan Kodlar
Knight Online özel sunucularında NP dağıtımı genellikle sunucu tarafında kodlanan özel komutlarla yapılır. Bu komutlar, genellikle party.cpp, game.cpp veya npmanager.cpp gibi dosyalarda tanımlanır. Örnek bir NP dağıtım kodu şu şekilde olabilir:
Bu kod parçası, party üyelerine göre hasar oranına göre NP dağıtır. Her özel sunucu geliştiricisi, bu kodları kendi sistemine göre özelleştirebilir. UYARI: Kodlarda yapılan hatalar sunucuda ciddi sorunlara yol açabilir.
Party NP Dağıtımının Avantajları
1534 ve 1886 party sistemlerinde NP dağıtımının sağladığı bazı temel faydalar şunlardır:
- Oyuncular arasında adalet sağlar.
- Grup oynamayı teşvik eder.
- Solo oynayan oyuncuların gruplara katılmalarını kolaylaştırır.
- Sunucularda aktif oynayan oyuncu sayısını artırır.
Knight Lobby gibi siteler, bu tür gelişmeleri takip ederek, kullanıcılarına en güncel bilgileri sunmaktadır. Özel sunucuların gelişimini desteklemek adına hem geliştiricilere hem de oyunculara yardımcı kaynaklar sunulmaktadır. KnightLobby, Knight Online özel sunucu dünyasında güvenilir bir platformdur.
New Era of NP Distribution with 1534 and 1886 Party Systems in Knight Online
In Knight Online private servers (pserver), one of the systems developed to enhance the in-game experience is the Party NP Distribution mechanism. Especially in classic Knight Online server structures like 1534 and 1886, players commonly travel in groups and fight common enemies. In this process, correctly sharing the NP (Noblesse Point) earned from defeated enemies ensures fair gameplay and encourages teamwork among players.
The 1534 Party System is designed to allow NP distribution according to specific rules within Knight Online. In this system, the party leader can distribute NP based on set rules. Originally, NP sharing was done based on kill shares. However, in modified systems, equal or proportional distribution can also be implemented by the leader. This feature offers significant advantages especially for larger groups.
The 1886 Party structure provides a more advanced NP sharing model. In this system, NP distribution is not only based on kills but also considers support and assistance ratios. As a result, not just the player who lands the final blow receives NP, but all group members receive points according to their contribution. This creates a battle dynamic where everyone actively participates.
Codes Used in NP Distribution
NP distribution in Knight Online private servers is usually coded through custom commands on the server-side. These commands are typically defined in files such as party.cpp, game.cpp, or npmanager.cpp. An example NP distribution code might look like this:
This code snippet distributes NP among party members based on damage dealt. Each private server developer can customize these codes according to their own systems. WARNING: Mistakes in the code can lead to serious issues in the server.
Advantages of Party NP Distribution
Some key benefits provided by NP distribution in 1534 and 1886 party systems include:
- Ensures fairness among players.
- Encourages group play.
- Facilitates solo players joining groups.
- Increases the number of active players on servers.
Knight Lobby and similar sites follow these developments, providing users with up-to-date information. To support the growth of private servers, they offer helpful resources both to developers and players. KnightLobby is a reliable platform in the Knight Online private server world.
Kod:
void CUser::LoyaltyDivide(short tid) { int send_index = 0; char send_buff[256]; memset( send_buff, NULL, 256 ); short loyalty_source = 0; short loyalty_target = 0; short loyaltymonthly_source = 0; short loyaltymonthly_target = 0; BYTE total_member = 0; CUser* pUser = NULL; _PARTY_GROUP* pParty = NULL; if( m_sPartyIndex < 0 ) return; pParty = m_pMain->m_PartyArray.GetData( m_sPartyIndex ); if( !pParty ) return; CUser* pTUser = NULL ; if(tid < 0 || tid >= MAX_USER) return; pTUser = (CUser*)m_pMain->m_Iocport.m_SockArray[tid]; if( !pTUser ) return; if(pTUser->m_pUserData->m_bZone == 21) return; for( int i = 0; i < 8; i++ ) { if( pParty->uid[i] != -1 ) { total_member++; } } if( total_member <= 0 ) { return; } loyalty_target = -50; loyaltymonthly_target = -50; if( total_member == 2 ) { loyaltymonthly_source = 36; loyalty_source = 36; } else if( total_member == 3 ) { loyaltymonthly_source = 28; loyalty_source = 28; } else if( total_member == 4 ) { loyaltymonthly_source = 24; loyalty_source = 24; } else if( total_member == 5 ) { loyaltymonthly_source = 22; loyalty_source = 22; } else if( total_member == 6 ) { loyaltymonthly_source = 20; loyalty_source = 20; } else if( total_member == 7 ) { loyaltymonthly_source = 18; loyalty_source = 18; } else if(total_member == 8) { loyaltymonthly_source = 16; loyalty_source = 16; } else { return; } for (int j = 0 ; j < 8 ; j++) { if( pParty->uid[j] != -1) { if( pParty->uid[j] < 0 || pParty->uid[j] >= MAX_USER ) { continue; } pUser = (CUser*)m_pMain->m_Iocport.m_SockArray[pParty->uid[j]]; if( !pUser ) { continue; } pUser->m_pUserData->m_iLoyalty += loyalty_source; pUser->m_pUserData->m_iLoyaltyMonthly += loyaltymonthly_source; if ( pUser->m_pUserData->m_iLoyalty < 0 ) { pUser->m_pUserData->m_iLoyalty = 0; } if ( pUser->m_pUserData->m_iLoyaltyMonthly < 0 ) { pUser->m_pUserData->m_iLoyaltyMonthly = 0; } memset( send_buff, NULL, 256 ); send_index = 0; SetByte( send_buff, WIZ_LOYALTY_CHANGE, send_index ); SetByte( send_buff, 0x01, send_index ); SetDWORD( send_buff, pTUser->m_pUserData->m_iLoyalty, send_index ); SetDWORD( send_buff, pTUser->m_pUserData->m_iLoyaltyMonthly, send_index ); SetDWORD( send_buff, 3, send_index ); // Eksik - Clan save count SetDWORD( send_buff, 3, send_index ); // Eksik - Extra premium amount pUser->Send( send_buff, send_index ); } } pTUser->m_pUserData->m_iLoyalty += loyalty_target; pTUser->m_pUserData->m_iLoyaltyMonthly += loyalty_target; memset( send_buff, NULL, 256 ); send_index = 0; SetByte( send_buff, WIZ_LOYALTY_CHANGE, send_index ); SetByte( send_buff, 0x01, send_index ); SetDWORD( send_buff, pTUser->m_pUserData->m_iLoyalty, send_index ); SetDWORD( send_buff, pTUser->m_pUserData->m_iLoyaltyMonthly, send_index ); SetDWORD( send_buff, 3, send_index ); // Eksik - Clan save count SetDWORD( send_buff, 3, send_index ); // Eksik - Extra premium amount pTUser->Send( send_buff, send_index ); }
1534 ve 1886 Party Sistemleri ile Knight Online NP Dağıtımında Yeni Dönem
Knight Online özel sunucularında (pserver) oyun içi deneyimi artırmak adına geliştirilen sistemlerden birisi de Party NP Dağıtımı mekanizmasıdır. Özellikle 1534 ve 1886 gibi eski ve klasik Knight Online sunucu yapılarında, oyuncuların grup halinde seyahat etmesi ve ortak düşmanlarla savaşması oldukça yaygındır. Bu süreçte, öldürülen düşmanlardan elde edilen NP (Noblesse Point) puanlarının doğru şekilde paylaşılması, hem adil bir oynanış sağlar hem de oyuncuların birlikte çalışmasını teşvik eder.
1534 Party Sistemi, Knight Online'da NP paylaşımını belirli kurallar çerçevesinde yapmayı amaçlayan bir yapıdır. Bu sistemde, party lideri belirlenen kurala göre NP'yi dağıtabilir. Orijinal sistemde NP paylaşımı, öldürme payı üzerinden yapılır. Ancak modifiye edilmiş sistemlerde, liderin belirlediği kurallara göre eşit veya oransal dağıtım da sağlanabilir. Bu özellik, özellikle büyük gruplar için büyük avantajlar sunar.
1886 Party yapısı ise daha gelişmiş bir NP paylaşım modeli sunar. Bu sistemde NP paylaşımı, sadece öldürme değil, destek ve yardım verme oranlarına göre de yapılır. Bu sayede, sadece son darbeyi vuran kişi değil, tüm grup üyeleri katkılarına göre NP alır. Böylece, herkesin aktif olarak katıldığı bir savaş dinamikası oluşur.
NP Dağıtımında Kullanılan Kodlar
Knight Online özel sunucularında NP dağıtımı genellikle sunucu tarafında kodlanan özel komutlarla yapılır. Bu komutlar, genellikle party.cpp, game.cpp veya npmanager.cpp gibi dosyalarda tanımlanır. Örnek bir NP dağıtım kodu şu şekilde olabilir:
Kod:
[COLOR=#0000cc]void DistributeNP(int partyId, int totalNP) { [BR][/BR] foreach(member in party) { [BR][/BR] int share = CalculateShare(member.damage); [BR][/BR] AddNPToPlayer(member.id, share); [BR][/BR] }[BR][/BR]}[/COLOR]
Bu kod parçası, party üyelerine göre hasar oranına göre NP dağıtır. Her özel sunucu geliştiricisi, bu kodları kendi sistemine göre özelleştirebilir. UYARI: Kodlarda yapılan hatalar sunucuda ciddi sorunlara yol açabilir.
Party NP Dağıtımının Avantajları
1534 ve 1886 party sistemlerinde NP dağıtımının sağladığı bazı temel faydalar şunlardır:
- Oyuncular arasında adalet sağlar.
- Grup oynamayı teşvik eder.
- Solo oynayan oyuncuların gruplara katılmalarını kolaylaştırır.
- Sunucularda aktif oynayan oyuncu sayısını artırır.
Knight Lobby gibi siteler, bu tür gelişmeleri takip ederek, kullanıcılarına en güncel bilgileri sunmaktadır. Özel sunucuların gelişimini desteklemek adına hem geliştiricilere hem de oyunculara yardımcı kaynaklar sunulmaktadır. KnightLobby, Knight Online özel sunucu dünyasında güvenilir bir platformdur.
New Era of NP Distribution with 1534 and 1886 Party Systems in Knight Online
In Knight Online private servers (pserver), one of the systems developed to enhance the in-game experience is the Party NP Distribution mechanism. Especially in classic Knight Online server structures like 1534 and 1886, players commonly travel in groups and fight common enemies. In this process, correctly sharing the NP (Noblesse Point) earned from defeated enemies ensures fair gameplay and encourages teamwork among players.
The 1534 Party System is designed to allow NP distribution according to specific rules within Knight Online. In this system, the party leader can distribute NP based on set rules. Originally, NP sharing was done based on kill shares. However, in modified systems, equal or proportional distribution can also be implemented by the leader. This feature offers significant advantages especially for larger groups.
The 1886 Party structure provides a more advanced NP sharing model. In this system, NP distribution is not only based on kills but also considers support and assistance ratios. As a result, not just the player who lands the final blow receives NP, but all group members receive points according to their contribution. This creates a battle dynamic where everyone actively participates.
Codes Used in NP Distribution
NP distribution in Knight Online private servers is usually coded through custom commands on the server-side. These commands are typically defined in files such as party.cpp, game.cpp, or npmanager.cpp. An example NP distribution code might look like this:
Kod:
[COLOR=#0000cc]void DistributeNP(int partyId, int totalNP) { [BR][/BR] foreach(member in party) { [BR][/BR] int share = CalculateShare(member.damage); [BR][/BR] AddNPToPlayer(member.id, share); [BR][/BR] }[BR][/BR]}[/COLOR]
This code snippet distributes NP among party members based on damage dealt. Each private server developer can customize these codes according to their own systems. WARNING: Mistakes in the code can lead to serious issues in the server.
Advantages of Party NP Distribution
Some key benefits provided by NP distribution in 1534 and 1886 party systems include:
- Ensures fairness among players.
- Encourages group play.
- Facilitates solo players joining groups.
- Increases the number of active players on servers.
Knight Lobby and similar sites follow these developments, providing users with up-to-date information. To support the growth of private servers, they offer helpful resources both to developers and players. KnightLobby is a reliable platform in the Knight Online private server world.
