Arkadaş Sistemi[LUA]

  • Konbuyu başlatan Konbuyu başlatan Admin
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 0
  • Görüntüleme Görüntüleme 100

Admin

Metin2Lobby
Yönetici
Founder
Katılım
6 Mayıs 2022
Mesajlar
52,647
Ticaret : 1 / 0 / 0
Merhabalar,

Arkadaş Sistemi, arkadaş listenizde ekli olan arkadaşlarınızın seviye atladıklarında anlık olarak yeni seviyesini görmenizi sağlar.



Arkadaş Sistemi - Tanıtım





Arkadaş Sistemi - Dosyalar







Kodları incelemek isteyenler için:

Kod:
quest arkadas_sistemi begin     state start begin         when login begin             loop_timer("arkadas_kontrol_et",1)         end -- when login begin endi                when levelup begin             pc.setqf("seviye_aldim",1)             seviye_oyuncu_isim = pc.get_name()             seviye_arkadas_ara = mysql_query("select * from player.messenger_list where account='"..seviye_oyuncu_isim.."' ")             seviye_arkadas_ara_say = tonumber(table.getn(seviye_arkadas_ara))         end                when logout begin             cleartimer("arkadas_kontrol_et")         end -- when logout begin  endi                when arkadas_kontrol_et.timer begin             oyuncu_isim = pc.get_name()             arkadas_ara = mysql_query("select * from player.messenger_list where account='"..oyuncu_isim.."' ")             oyuncu_arkadas_dizi = { }             seviye_arkadas_dizi = { }             arkadas_ara_say = tonumber(table.getn(arkadas_ara))             if arkadas_ara_say > 0 then                 for i=1,arkadas_ara_say,1 do                     oyuncu_arkadas_dizi[i] = arkadas_ara[i][2]                     arkadas_isim = oyuncu_arkadas_dizi[i]                     arkadas_oyunda_mi = find_pc_by_name(arkadas_isim)                     if arkadas_oyunda_mi != 0 then                         arkadas_id = pc.select(arkadas_oyunda_mi)                             if seviye_arkadas_ara_say > 0 then                                 seviye_atladim = pc.getqf("seviye_aldim")                                 if seviye_atladim == 1 then                                     arkadas_seviye = pc.get_level()                                     for z=1,seviye_arkadas_ara_say,1 do                                         seviye_arkadas_dizi[z] = seviye_arkadas_ara[z][2]                                         seviye_arkadas_isim = seviye_arkadas_dizi[z]                                         seviye_arkadas_oyunda_mi = find_pc_by_name(seviye_arkadas_isim)                                         if seviye_arkadas_oyunda_mi != 0 then                                             s_a_id = pc.select(seviye_arkadas_oyunda_mi)                                                 syschat("Sistem: "..seviye_oyuncu_isim.." isimli arkadaşınız seviye atlamıştır. Yeni seviyesi: "..arkadas_seviye..".Seviye")                                             pc.select(s_a_id)                                         end -- if seviye_arkadas_oyunda_mi != 0 then endi                                     end -- for z=1,seviye_arkadas_ara_say,1 do endi                                         pc.setqf("seviye_aldim",0)                                 end --    if seviye_atladim == 1 then endi                             end -- if seviye_arkadas_ara_say > 0 then endi                         pc.select(arkadas_id)                     end -- if arkadas_oyunda_mi != 0 then endi                 end -- for i=1,arkadas_ara_say,1 do endi             end -- if arkadas_ara_say > 0 then endi         end -- when arkadas_kontrol_et.timer begin endi            end -- state start begin endi end -- quest arkadas_sistemi begin endi



NOT: Sistem şuanlık sadece arkadaşın seviye atlayışını gösteriyor. Boş vaktim olmadığı için devam edemedim. Boş vaktim olur ve geliştirebilirsem, arkadaşın lonca kurup kurmadığını, loncaya girip girmediğini ya da bayrağını değiştirip değiştirmediğini gösteren özellikler de ekleyeceğim.
Metin2'de Arkadaş Sistemi LUA ile Geliştirme

Metin2 Lobby, oyuncuların oyun içi deneyimlerini zenginleştirmek için birçok özelleştirilmiş sistem sunmaktadır. Bu sistemlerden biri de arkadaş sistemi olarak bilinen Arkadaş Sistemi LUA scriptidir. Bu yazıda, Metin2 sunucularında nasıl arkadaş sistemi kurulabileceği, LUA scriptlerinin nasıl çalıştığı ve bu sistemin oyun içindeki rolü hakkında detaylı bilgiler vereceğiz.

Arkadaş Sistemi Nedir?

Oyunlarda arkadaşlık, sosyal etkileşimi artırmak ve oyuncuların bir araya gelmesini sağlamak için önemli bir özelliktir. Metin2'de arkadaş sistemi sayesinde oyuncular birbirlerini ekleyebilir, durumlarını takip edebilir ve oyun içi etkinliklerde birlikte hareket edebilirler. Bu sistemin arkasında ise genellikle LUA dili ile yazılmış olan komutlar yatar.

LUA ile Arkadaş Sistemi Nasıl Çalışır?

Metin2 oyun motoru, özellikle sunucu tarafında LUA dili üzerinden birçok sistemi desteklemektedir. Arkadaş sistemi de bu sistemlerden biridir. Genellikle client ve game core arasında çalışan bu sistem, oyuncuların birbirlerini eklemelerine, istek göndermelerine ve arkadaş listesini görüntülemelerine olanak tanır.

Özellikler:
- Arkadaş ekleme/silme işlemleri
- Online/offline durumu gösterimi
- Oyuncuya hızlı ulaşım
- Arkadaşla birlikte görev yapabilme

Arkadaş Sistemi LUA Script Yapısı

Arkadaş sistemi için geliştirilen LUA scriptleri genellikle iki ana bileşenden oluşur: client-side ve server-side. Client-side, oyuncunun kendi arayüzünde yapılan değişiklikleri kapsar. Server-side ise sunucuda veri tabanı işlemleri, istek gönderme/alma gibi işlemler için kullanılır.

Client-side Örnek:
Arkadaş penceresi açıldığında, client tarafında bir arayüz oluşturulur. Bu arayüzde, kullanıcı adı, online durumu ve ekleme/seçme butonları yer alır. Bu işlem genellikle ui.interface üzerinden yapılır.

Server-side Örnek:
Sunucu tarafında ise, bir oyuncu diğerini arkadaş olarak eklediğinde, bu bilgi veri tabanına işlenir. Sunucu, her oyuncunun arkadaş listesini güncel tutar ve online durumunu yansıtır.

Arkadaş Sistemi ile Görev (Quest) Entegrasyonu

Metin2'de arkadaş sistemi yalnızca sosyal amaçlı değil aynı zamanda görev sistemleriyle entegre edilebilir. Örneğin, bir görevin tamamlanması için oyuncunun bir arkadaşını davet etmesi istenebilir. Bu gibi sistemler, oyuncuları daha aktif hale getirir ve sosyal etkileşimi teşvik eder.

Not: Bu tür entegrasyonlar için doğru LUA bilgisi ve quest yazma becerisi gereklidir. Hatalı kodlama, sunucu çökmelerine veya hatalı veri akışına neden olabilir.

Arkadaş Sistemi Hata Ayıklama (Debug)

Arkadaş sistemi geliştirilirken karşılaşılan hatalar genellikle LUA scriptlerindeki küçük eksikliklerden kaynaklanır. Örneğin, bir fonksiyon tanımlanmadan kullanılmışsa veya veri tabanı bağlantısı sağlanamıyorsa hata alınabilir. Debug işlemleri sırasında log dosyaları incelenerek hatalar tespit edilebilir.

Sonuç

Metin2'de arkadaş sistemi LUA ile geliştirildiğinde, hem oyun içi sosyal yapı güçlenir hem de oyuncuların sunucuya olan bağlılığı artar. Doğru geliştirilmiş bir sistem, oyuncuların daha fazla zaman harcamasına ve oyun içinde daha aktif olmasına yardımcı olur. Metin2 Lobby olarak bizler, bu tür gelişmiş sistemleri sunucularınıza entegre etmek için buradayız.


Friend System LUA in Metin2

Metin2 Lobby offers many customized systems to enhance players' in-game experiences. One of these systems is the friend system known as Friend System LUA. In this article, we will provide detailed information on how to set up a friend system in Metin2 servers, how LUA scripts work, and the role of this system within the game.

What is the Friend System?

In games, friendship plays an important role in increasing social interaction and bringing players together. With the friend system in Metin2, players can add each other, track their status, and act together during in-game activities. Behind this system lie commands usually written in the LUA language.

How Does Friend System Work with LUA?

The Metin2 game engine supports many systems through the LUA language, especially on the server side. The friend system is one of them. Usually working between the client and the game core, this system allows players to add each other, send requests, and view friend lists.

Features:
- Adding/removing friends
- Online/offline status display
- Quick access to players
- Playing quests together with friends

Friend System LUA Script Structure

LUA scripts developed for the friend system generally consist of two main components: client-side and server-side. Client-side covers changes made by the player in their own interface. Server-side handles database operations such as sending/receiving requests.

Client-side Example:
When the friend window opens, an interface is created on the client side. This interface includes username, online status, and add/select buttons. This process is usually handled via ui.interface.

Server-side Example:
On the server side, when a player adds another as a friend, this information is stored in the database. The server maintains the friend list for each player and reflects their online status.

Integration of Friend System with Quests

The friend system in Metin2 isn’t only used for social purposes; it can also be integrated with quest systems. For example, completing a quest might require inviting a friend. Such systems encourage more active participation and promote social interaction among players.

Note: Correct LUA knowledge and quest scripting skills are required for such integrations. Incorrect coding may cause server crashes or faulty data flow.

Debugging the Friend System

Errors encountered while developing the friend system often stem from minor mistakes in LUA scripts. For instance, if a function is used without being defined or database connection fails, errors may occur. During debugging, log files can be examined to detect errors.

Conclusion

When the friend system in Metin2 is developed using LUA, both the in-game social structure strengthens and players’ attachment to the server increases. A properly developed system helps players spend more time in the game and become more active. As Metin2 Lobby, we are here to help you integrate these advanced systems into your servers.
 

Şuan Bu Konuyu Görüntüleyen Kullanıcılar (Toplam : 0, Üye : 0, Misafir : 0)

Benzer konular

Geri
Üst Alt