Lonca Skor Tablosu Yeni @a99

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

Admin

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

Hello işinizi görürse ne mutlu :) yorum atmayı unutmayın


r0gLO1.png




Kod:
Root aç : uiguild .py aç arat :   class GuildWarScoreBoard(ui.ThinBoard): kod blogunu altakiyle değiştir     class GuildWarScoreBoard(ui.ThinBoard):     def __init__(self):         ui.ThinBoard.__init__(self)         self.Initialize()     def __del__(self):         ui.ThinBoard.__del__(self)     def Initialize(self):         self.allyGuildID = 0         self.enemyGuildID = 0                 self.allyDataDict = {}         self.enemyDataDict = {}     def Open(self, allyGuildID, enemyGuildID):         self.allyGuildID = allyGuildID         self.enemyGuildID = enemyGuildID         self.SetPosition(100, wndMgr.GetScreenHeight() - 300)         mark = ui.MarkBox()         mark.SetParent(self)#xantomaxa         mark.SetIndex(allyGuildID)         mark.SetPosition(10, 10 + 18*0)         mark.Show()         scoreText = ui.TextLine()         scoreText.SetParent(self)         scoreText.SetPosition(30, 10 + 18*0)         scoreText.SetHorizontalAlignLeft()         scoreText.Show()                 scoreText1 = ui.TextLine()         scoreText1.SetParent(self)         scoreText1.SetPosition(30, 10 + 18*0)         scoreText1.SetHorizontalAlignLeft()         scoreText1.Show()                 self.allyDataDict["NAME"] = guild.GetGuildName(allyGuildID)         self.allyDataDict["SCORE"] = 0         self.allyDataDict["MEMBER_COUNT"] = -1         self.allyDataDict["MARK"] = mark         self.allyDataDict["TEXT"] = scoreText         self.allyDataDict["SCORE1"] = scoreText1         mark = ui.MarkBox()         mark.SetParent(self)         mark.SetIndex(enemyGuildID)         mark.SetPosition(100, 10 + 18*0)         mark.Show()                 scoreText = ui.TextLine()         scoreText.SetParent(self)         scoreText.SetPosition(115, 10 + 18*0)         scoreText.SetHorizontalAlignLeft()         scoreText.Show()                 scoreText1 = ui.TextLine()         scoreText1.SetParent(self)         scoreText1.SetPosition(30, 10 + 18*0)         scoreText1.SetHorizontalAlignLeft()         scoreText1.Show()                 self.enemyDataDict["NAME"] = guild.GetGuildName(enemyGuildID)         self.enemyDataDict["SCORE"] = 0         self.enemyDataDict["MEMBER_COUNT"] = -1         self.enemyDataDict["MARK"] = mark         self.enemyDataDict["TEXT"] = scoreText         self.enemyDataDict["SCORE1"] = scoreText1         self.slotImage = ui.MakeImageBox(self, "d:/ymir work/ui/pattern/genisbutton2xa.tga", 80, 10)         self.slotImage.AddFlag("not_pick")         self.__RefreshName()         self.Show()     def __GetDataDict(self, ID):         if self.allyGuildID == ID:             return self.allyDataDict         if self.enemyGuildID == ID:             return self.enemyDataDict         return None     def SetScore(self, gainGuildID, opponetGuildID, point):         dataDict = self.__GetDataDict(gainGuildID)         if not dataDict:             return         dataDict["SCORE"] = point         self.__RefreshName()     def UpdateMemberCount(self, guildID1, memberCount1, guildID2, memberCount2):         dataDict1 = self.__GetDataDict(guildID1)         dataDict2 = self.__GetDataDict(guildID2)         if dataDict1:             dataDict1["MEMBER_COUNT"] = memberCount1         if dataDict2:             dataDict2["MEMBER_COUNT"] = memberCount2         self.__RefreshName()     def __RefreshName(self):         nameMaxLen = max(len(self.allyDataDict["NAME"]), len(self.enemyDataDict["NAME"]))         if -1 == self.allyDataDict["MEMBER_COUNT"] or -1 == self.enemyDataDict["MEMBER_COUNT"]:             self.SetSize(30+nameMaxLen*6+8*20, 80)             self.allyDataDict["TEXT"].SetText(str(self.allyDataDict["NAME"]))             self.allyDataDict["SCORE1"].SetFontName("Tahoma:23")             self.allyDataDict["SCORE1"].SetText(str(self.allyDataDict["SCORE"]))             self.allyDataDict["SCORE1"].SetPosition(60,30)                                     self.enemyDataDict["TEXT"].SetText(str(self.enemyDataDict["NAME"]))             self.enemyDataDict["SCORE1"].SetFontName("Tahoma:23")             self.enemyDataDict["SCORE1"].SetText(str(self.enemyDataDict["SCORE"]))             self.enemyDataDict["SCORE1"].SetPosition(60+60,30) # sağ sol / yukarı aşa kordinat         else:             self.SetSize(30+nameMaxLen*6+8*20, 80)             self.allyDataDict["TEXT"].SetText("%s(%d)" % (self.allyDataDict["NAME"], self.allyDataDict["MEMBER_COUNT"]))             self.allyDataDict["SCORE1"].SetFontName("Tahoma:23")             self.allyDataDict["SCORE1"].SetText(str(self.allyDataDict["SCORE"]))             self.allyDataDict["SCORE1"].SetPosition(60,30)             self.enemyDataDict["TEXT"].SetText("%s(%d)" % (self.enemyDataDict["NAME"], self.enemyDataDict["MEMBER_COUNT"]))             self.enemyDataDict["SCORE1"].SetFontName("Tahoma:23")             self.enemyDataDict["SCORE1"].SetText(str(self.enemyDataDict["SCORE"]))             self.enemyDataDict["SCORE1"].SetPosition(60+60,30) # sağ sol / yukarı aşa kordinat

tga bu dizine atmayı unutmayınız : d:/ymir work/ui/pattern/genisbutton2xa.tga", 80, 10)




Lonca Skor Tablosu Yeni @a99


Metin2 özel sunucularında kaliteli oyun deneyimi sunmak için birçok sistem geliştirilmektedir. Bu sistemlerden birisi de Lonca Skor Tablosu olarak bilinen yapıdır. Özellikle PvP odaklı sunucularda, loncaların gelişimini ve güçlerini görsel ve sayısal olarak takip edebilmek oldukça önemlidir. Bu yazıda, @a99 tarafından geliştirilen yeni Lonca Skor Tablosu sisteminden bahsedeceğiz. Bu sistem, Metin2 lobby sunucularında C++ tabanlı game core üzerine inşa edilmiş olup, hem estetik hem de fonksiyonellik açısından önemli yenilikler sunmaktadır.

Yeni Lonca Skor Tablosunun Özellikleri

@a99 tarafından geliştirilen Lonca Skor Tablosu, oyuncuların ve loncaların performansını daha net gözlemlemesini sağlar. Bu sistem sayesinde her loncanın sahip olduğu skorlar, PvP ve PvE aktivitelerine göre dinamik olarak hesaplanır. Sistem, C++ dilinde yazılmış olup, server src üzerinde kolayca entegre edilebilir. Ayrıca DB Core ile uyumlu çalışarak veritabanındaki lonca verilerini anlık olarak güncel tutar.

Sistem Nasıl Çalışır?

Her lonca, belirli eylemlerle puan kazanabilir. Örneğin:
- Rakip loncaya saldırma
- Lonca savaşları kazanma
- Belirli seviye üstü boss öldürme
- Etkinliklere katılım

Bu gibi eylemler sonucunda her lonca için bir skor hesaplanır ve bu skorlar canlı olarak Lonca Skor Tablosu’nda gösterilir. Oyuncular, bu tabloyu inceleyerek hangi loncanın güçlü olduğunu ve hangi loncanın yükseldiğini takip edebilirler. Python GUI tabanlı arayüz sayesinde kullanıcı dostu bir yapı sunulmuştur.

Neden Yeni Bir Sistem Gereklidir?

Geleneksel Metin2 sistemlerinde loncalar genellikle sadece üye sayısı veya lider seviyesi üzerinden değerlendirilirdi. Ancak bu yöntem, loncanın gerçek gücünü yansıtmazdı. @a99'nın sunduğu yeni sistem, loncanın etkinliğini, PvP başarısını ve sunucudaki rolünü çok daha doğru şekilde ortaya koyar. Bu da oyuncuların daha aktif ve rekabetçi olmasına neden olur.

Kurulum ve Entegrasyon

Bu sistem, game server programming bilgisi olan geliştiriciler tarafından kolayca kurulabilir. Gerekli source edit işlemleri yapıldıktan sonra, auth ve game sunucularında çalışan bu modül, db üzerinden veri alışverişinde bulunur. Martysama tarzı development araçlarıyla birlikte kullanıldığında, Metin2Dev süreci hızlanır.

Özetle

Lonca Skor Tablosu Yeni @a99, Metin2 özel sunucularında PvP deneyimini artırmak için geliştirilmiş modern ve etkili bir sistemdir. Hem teknik hem de oyun içi açıdan önemli yenilikler sunar. Bu tür sistemler, Metin2 lobby gibi platformlarda Metin2 development sürecine büyük katkı sağlar. C++ ve Python tabanlı altyapısıyla, hem core hem de client src tarafında kolayca entegre edilebilir.


Guild Scoreboard New @a99


In Metin2 private servers, many systems are developed to provide a high-quality gaming experience. One of these systems is the Guild Scoreboard. Especially in PvP-focused servers, visually and numerically tracking guilds' progress and strength is highly important. In this article, we will discuss the new Guild Scoreboard system developed by @a99. This system, built on a C++ based game core for Metin2 lobby servers, offers significant updates both aesthetically and functionally.

Features of the New Guild Scoreboard

The Guild Scoreboard developed by @a99 allows players and guilds to better observe their performance. Thanks to this system, each guild's scores are dynamically calculated based on PvP and PvE activities. The system, written in C++, can be easily integrated into server src. Additionally, it works in harmony with DB Core to keep guild data up-to-date in real-time within the database.

How Does the System Work?

Each guild can earn points through certain actions such as:
- Attacking rival guilds
- Winning guild wars
- Killing high-level bosses
- Participating in events

As a result of these actions, a score is calculated for each guild and displayed live on the Guild Scoreboard. Players can monitor which guilds are strong and which are rising by examining this table. A user-friendly interface is provided thanks to the Python GUI-based design.

Why Is a New System Needed?

In traditional Metin2 systems, guilds were typically evaluated based only on member count or leader level. However, this method did not reflect the actual strength of the guild. The new system offered by @a99 more accurately reflects a guild’s activity, PvP success, and role on the server. This encourages players to become more active and competitive.

Installation and Integration

This system can be easily installed by developers familiar with game server programming. After necessary source edit procedures, the module runs on both auth and game servers, exchanging data via db. When used alongside Martysama-style development tools, the Metin2Dev process accelerates.

In Summary

Guild Scoreboard New @a99 is a modern and effective system developed to enhance the PvP experience in Metin2 private servers. It brings important innovations both technically and gameplay-wise. Such systems contribute significantly to the Metin2 development process on platforms like Metin2 lobby. With its C++ and Python base, it can be easily integrated into both core and client src sides.
 

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

Benzer konular

Geri
Üst Alt