-
İçerik sayısı
451 -
Katılım
-
Son ziyaret
-
Günün Kazananı
62 -
Puan
287 [ Bağış Yap ]
PENTAGRAM kullanıcısının paylaşımları
-
(C++) BetaShield AntiCheat Source!
PENTAGRAM, IndianaPOLIS kullanıcısının konusuna cevap verdi - C++Arkadaşım bak daha detaylı açıklayayım. Server bu işlemde otorite konumundadır. Client cevap vermiyorsa, 's*ktir edersin'. Çünkü client'in cevap verme zorunluluğu vardır. Normal işleyiş bu şekilde olduğu için. Eğer bir anormallik varsa, zaten birisi hile yapmaya, aldığın önlemleri aşmaya çalışıyor demektir. Server taraflı hile önleme, cliente 'birşey' yollamakla olmaz. Hile yapılacak alanları belirleyip, bunların kontrolünü sağlaman lazım. İki tane örnek vereceğim. Birincisi, bütün serverların muzdarip olduğu 'Speedhack' problemi. Problem : Client, hız konusunda karar verici durumda. Server kısmında clientin gerçek hızını hesaplamak için bir mantık yok. Çözüm : Lise 1 Fizik 'Vektörler' konusu. Yapılması gereken şey : İstemci(client) in gönderdiği koordinat ile bir önceki konumu arasındaki mesafeyi hesaplayarak, iki gelen paket arasındaki süreyi göz önünde bulundurduktan sonra, hesaplanan x mesafesinin t süresinde kat edilip edilemeyeceğini belirlemek. Sonuç : Sunucu her zaman clientin gerçek hızını belirleyebilir. Bu sayede speedhack diye bir durum söz konusu olamaz. İkincisi 'wallhack'. Problem : Obje kesişim noktaları (collision mesh) kontrolü yalnızca client tarafında mevcut. Oyuncunun bir obje ile kesişip kesişmediğine yalnızca client karar veriyor. Server tarafında herhangi bir doğrulama yok. Çözüm : Matrix, Interpolasyon, Vektör aritmediği Yapılması gereken şey : Server tarafına da bulunan haritanın collision mesh verisini yükletip, clientin hareket etmek istediği koordinatta bir obje ile kesişmenin söz konusu olup olmadığının belirlenmesi. Sonuç : Client 'ben şuradayım ve burada obje yok' dese dahi, server 'dur bi de ben bakayım.. hııı seni gidi ipne, taşın içindesin' diyeceğinden, objelerin içerisinden geçme gibi bir durum söz konusu olamaz. Bu iki verdiğim örnekten anlayacağın üzere, hile server tarafında engellenir. Client tarafında yapacağın şeyler, yalnızca sökülmüş bir kısmı sürekli dikmeye ve her zaman yırtılmasına göz yummaktan başka birşey değildir. Sağlıcakla.- 77 yanıt
-
- 2
-
-
- (c++)
- betashield
-
(2 tane daha)
İle Etiketeklendi:
-
(C++) BetaShield AntiCheat Source!
PENTAGRAM, IndianaPOLIS kullanıcısının konusuna cevap verdi - C++Artı olarak, senin yapabilen kişileri bilmiyor oluşun, genel geçer kurduğun şu cümleyi geçerli kılmaz. Herşeyi para olarak görüşünüze hayranım. Yakın zamanda açılacak v1534 server'ıma beklerim. Ne demek istediğimi anlayacaksın.- 77 yanıt
-
- 1
-
-
- (c++)
- betashield
-
(2 tane daha)
İle Etiketeklendi:
-
(C++) BetaShield AntiCheat Source!
PENTAGRAM, IndianaPOLIS kullanıcısının konusuna cevap verdi - C++@ IndianaPOLIS, öncelikle DLL'nin ne olduğundan bahsedeyim biraz sana. Olayları karıştırmışsın. DLL, ingilizce açılımı 'dynamic load library' olan, Windows platformu için fonksiyon/sınıf eklenti kütüphanelerine verilen isimdir. DLL dosyalarının çalıştırılabilir (EXE) dosyalardan farkı, birden fazla veya farklı EXE dosyaları ile aynı anda çalışabilmesidir. DLL dosyaları genellikle paylaşımlı kütüphaneler yazarken kullanılır, örneğin soket sistemi, ses eklentileri, 3d render kütüphaneleri (directx vs.) genellikle dll olarak hazırlanır. Elinde ko.exe'nin kaynak kodu olsa dahi, yapabileceklerinin DLL ile yapabileceklerinden HİÇBİR farkı yok. DLL kullanman, seni hiçbir açıdan kısıtlamadığı gibi, exe kaynak koduna yazabileceğin *sihirli* satırların yoksa, aradaki fark = 0. Daha doğrusu, DLL demek aslında senin kaynak koduna 'ek' yapman demek bir nevi. Ha kodu exenin içerisine dahil etmişsin, ha dll üzerinden çalıştırmışsın. Yazacağın/yazabileceğin kod belli. Sana sıralayayım. 1-) Hafıza koruma işlemi, oyun içerisindeki değişkenleri korumak için Win32 API'sini kullanarak belirli başlı fonksiyonları hooklayıp, OpenProcess, TerminateProcess, CreateThread vs. fonksiyonları engellersin. Aynı işi hile yazan bir arkadaş da yapabilir. Bu süreçleri karmaşıklaştırabilirsin, fakat illa ki süreci çözecek birisi çıkacaktır. KARMAŞIKLIK, GÜVENLİK DEĞİLDİR. 2-) Oyun içerisindeki döngülere oyunun gidişatı ile alakalı kontroller ekleyebilirsin,bu ekleyeceğin kontroller de hile yapacak arkadaş tarafından yeniden yönlendirilebilir, logic kontrolleri tersine çevrilebilir veya tamamen kaldırılabilir. 3-) Dosya kontrolleri, yine aynı şekilde. En basitinden, TBL ile yapılabilen hilelerin sebebinin TBL dosyalarının düzenlenebilmesi olarak görüldüğü bir piyasadayız. Asıl problem bu dosyaların düzenlenebilmesi değil, düzenlendiği zaman hile yapılabilmesi. Düzgünce hazırlanmış bir altyapıda böyle birşeyin olması imkansız. 4-) Karakter animasyonları, genel animasyon kontrolleri. Dosya kontrollerinde bahsettiğim gibi, dosyayı kontrol etmiş olman, bu dosyanın düzenlenemeyeceği anlamına gelmiyor. Hile yapacak arkadaş, hafızaya yüklenen değeri değiştirebilir direk. Hile engelleme sistemlerinin aşılma sebebi dll olması veya driver olması vesaire değil. Asıl problem : HİLENİN CLİENT TARAFINDA ENGELLENMEYE ÇALIŞILMASI. Bir hilenin yapılmamasını istiyorsan, hilenin yapılmasını sağlayan şeyi ortadan tamamen kaldırman lazım, bu da ancak SERVER taraflı mümkün olan birşey. Sen hile kontrolü için cliente güvendiğin sürece, senin güvenlik sistemini aşıp bu hileyi yapacak birileri her zaman var olacaktır. Client taraflı hile engellemek, geçilmesini istemediğin bir patikaya tel örgü çekmeye benzer. Veya biraz daha düzgün birşey yazdıysan, beton duvar örmeye benzer. Senin yapman gereken şey, yola engel koymak değil, yolu kaldırmak. Bunu yapmadığın sürece, o yoldan geçen kaçaklar olacaktır. MMORPG geliştirmenin ilk kuralı : 1-) Never trust the client. Umarım yeterince detaylı anlatabilmişimdir.- 77 yanıt
-
- 3
-
-
- (c++)
- betashield
-
(2 tane daha)
İle Etiketeklendi:
-
Yanlışın var. Bu iş için kullanılması gereken protokol FTP, HTTP değil. Arkadaşın FileZilla Server kurması gerekiyormuş sadece.
-
Border Defence War Hakında Bilgi..
PENTAGRAM,YNGkullanıcısının konusuna cevap verdi - Çözülen Konular1534 sürümü ile uğraşıyorum, şimdiye kadar exede mantık hatası ile karşılaşmadım. Bana kalırsa oyunun en güzel sürümü de bu. -
Öncelikle pelerinin veritabanına düzgünce kaydolduğundan emin ol. Clana pelerin aldıktan sonra KNIGHTS tablosundaki CapeID sütununun güncellenmesi lazım. Pelerin almadan önce ve pelerin aldıktan sonra tabloyu kontrol ederek sütunun güncellendiğinden emin ol. Sütun güncellenmiyorsa, veritabanını güncelleyen fonksiyonu bul ve neden güncellemediğini tespit et. Eğer sütun güncelleniyorsa, yeni pelerin idsi veritabanına kaydoluyor, fakat gameserver içerisindeki aktif clana işlenmiyor demektir. Yeni pelerin idsinin clandaki pelerin id değişkenine aktarıldığından emin ol.
-
pkt >> bFlag >> sClanID >> bNation >> strKnightsName >> strChief; satırından hemen sonra bFlag = ClanTypeRoyal1; ekle. Bu şekilde olması lazım.
-
Visual Studio Platform Toolset Hatası
PENTAGRAM,IMOTEBkullanıcısının konusuna cevap verdi - Çözülen KonularProjeye sağ tıkla ve 'Properties' menüsünü seç. Gelen sayfadan yukardan 'Configuration' ayarını All configurations'a getir, Platformu da 'All Platforms' olarak ayarla. Sonrasında 'Platform toolset'i sende olan bir toolset ile değiştir. Apply ve OK diyerek pencereyi kapat. -
Visual Studio Platform Toolset Hatası
PENTAGRAM,IMOTEBkullanıcısının konusuna cevap verdi - Çözülen KonularSolution Explorer kısmından projeyi seçerek sağ tık yaptıktan sonra 'Update VC++ Projects' menüsüne tıkla. -
m_byFlag değeri için '12' -> Royal 1 @ byxox, yapman gereken şey şu, 1-) void CKnightsManager::ReqCreateKnights(CUser *pUser, Packet & pkt) fonksiyonunu bul. 2-) Fonksiyonun son kısmına, pUser->PromoteClan(ClanTypeRoyal1); ekle, veya alternatif olarak pKnights->m_byFlag = bFlag; //satırını pKnights->m_byFlag = ClanTypeRoyal1; // olarak değiştir Bu değişikliği yaptıktan sonra, açılacak bütün clanlar 'Royal 1' olarak açılır.
-
Warp gate yanlış ışınlama sorunu
PENTAGRAM, eqwa11 kullanıcısının konusuna cevap verdi - Çözülemeyen konular@ eqwa11, eğer server dosyaları eski sistemi kullanıyorsa, ışınlanma kapısı listeleri '.smd' dosyaları içerisinde bulunuyor. Veya ikinci olasılık, veritabanında K_WARPINFO tablosu içerisinde de bulunuyor olabilir. Birincisi için, BURADAKİ editörlerin içerisinde warp gate editörü mevcut. Editörü kullanarak, yanlış olan gatenin bulunduğu haritanın '.smd' dosyasını açarak (örneğin luferson için karus2004.smd, moradon için moradon.smd) warp gateyi düzenleyebilirsin. İkincisi için, K_WARPINFO tablosunda hatalı olan satırı bulman ve düzeltmen gerekiyor. -
Forumumuza ait Twitter hesabı @ kodevelopers ismi ile an itibarı ile aktiftir. Artık bizi Twitter'da da takip edebilirsiniz. Forumumuzda gerçekleşen paylaşımlar, önemli olaylar, duyurular bu hesap üzerinden paylaşılacaktır. https://twitter.com/kodevelopers Tweetleyin, retweet edin, paylaşın! :cool:
-
- [13.10.2017]
-
(1 tane daha)
İle Etiketeklendi:
-
PENTAGRAM TBL Editör v1.2 [Tüm versiyonlar]
PENTAGRAM,PENTAGRAMkullanıcısının konusuna cevap verdi - Yardımcı Program PaylaşımlarıArkadaşım, oradaki yorum sana yapılmadı, önce postun kimden alıntılandığına dikkat et. Başkasına iğne göstermeden önce, çuvaldızı kendine batır. Art niyetli olan sensin, "forum kapanırsa programa ne olacak" kadar bencilce bir cümleyi kurduktan sonra, kendi sergilediğin davranışı bana itham ediyorsun. Program buradaki geliştirmeyi seven topluluk için paylaşıldı, bu topluluğun bir parçası olmadan, kendini geliştirmeye çalışmadan zaten program bir işine yaramaz. Çok bir kaybın olmaz üzülme. "eski düşünceleride gördük" gibi bir cümleyi kurabilecek samimiyeti kendinde nerden buluyorsun onu da anlamış değilim. Topluluğun parçası olmayı reddeden, ölücü, sömürücü insanlardan böyle cümleler duymak gülünç. -
[SORU] ASM ile oyun içerisinde işlev gerçekleştirmek.
PENTAGRAM,BurakGozetkullanıcısının konusuna cevap verdi - Çözülen Konularİşi bu kadar karmaşıklaştırmak yerine, var olan ui_cmd mesaj döngüsüne eklediğin butonun idsini karşılayacak bir kod bloğu yazabilirsin. Bu bloktan da oyunun var olan town fonksiyonunu çağırabilirsin. -
Ekran kartı aldım bozuk cikti ödeme olayı Hk
PENTAGRAM, swat26 kullanıcısının konusuna cevap verdi - Serbest KonularSözleşmede bu şekilde belirtilmiş, dolayısıyla ürünü eğer firma hiçbir şekilde tedarik edemezse para iadesini kabul etmekten başka çaren gözükmüyor. -
Ekran kartı aldım bozuk cikti ödeme olayı Hk
PENTAGRAM, swat26 kullanıcısının konusuna cevap verdi - Serbest KonularSatın alırken muhtemelen mesafeli satış sözleşmesi falan kabul etmişsindir onu oku. Orada yazar bütün kabul ettiğin şartlar. -
Ekran kartı aldım bozuk cikti ödeme olayı Hk
PENTAGRAM, swat26 kullanıcısının konusuna cevap verdi - Serbest KonularBu durumda para iadesini reddetmeni öneririm, ellerinde muadil ürün yoksa bir üst modeli vermeliler. Satın almayı dolar üzerinden yapmadığın için fatura tutarı konusunda yapabileceğin pek bir şey yok. Aslında teknik olarak zarara girmiş olmuyorsun, yaptığın kar, geçen 4 ayda senin lehine işleyen birşey. 4 ay önce ödediğin miktarın daha azını verselerdi zararda olurdun :) Tavsiyem stok gelene kadar bekle (gelecekse eğer). Yerinde olsam satıcıya yollamak yerine direkt teknik servise yollardım. Teknik servis bu durumlarda yeni ürün vermek zorunda çünkü. -
Alternatif olarak, forgotten temple sistemini de kullanabilirsin, fakat orjinal fonksiyonda birkaç ufak değişiklik yapman gerekebilir. Veritabanındaki zamanlama tablosuna type sütunu açıp, bu kısmı ebenezere okutup typeye göre değişik zonelere ışınlamasını sağlayabilirsin.
-
SMD ile uzaktan yakından alakası yok. Eventi hangi haritada yapmak istiyorsan, o haritanın SMD'sini kullanman lazım sadece. EVT sistemine yeni bir komut eklemen lazım. Bu komut, hazırlayacağın DLL dosyasındaki, veya ebenezerin içerisine yapacağın asm yamasını tetikleyecek. Bu yamanın içeriği de aşağı yukarı şöyle birşey olacak; { constexpr int ZONE_ID = 72; time_t raw; struct tm *lc; time(&raw); lc = localtime(&raw); /* Event kaydı saat 09:30 da başlasın */ const bool saat_lowerb = lc->tm_hour == 9 && lc->tm_min >= 30); /* Kayıt 09:40'da bitsin */ const bool saat_upperb = (lc->tm_min if(lowerb && upperb){ /* Kayıt serbest.*/ /* isteğe göre class level vs. kontrolleri */ pUser->ZoneChange(ZONE_ID); } }
-
[09.10.2017] - Yeni forum özellikleri
PENTAGRAM,PENTAGRAMkullanıcısının konusuna cevap verdi - DuyurularBugün içerisinde o modu da ekleyeceğim.- 3 yanıt
-
- [09.10.2017]
- yeni
-
(2 tane daha)
İle Etiketeklendi:
-
Harici Ses Kartı için Harici Usb PCI aygıtı
PENTAGRAM, MOMENTUM kullanıcısının konusuna cevap verdi - Serbest KonularO ufak aparat kartı beslemek için gerekli olan gücün aktarımını sağlıyor. Anakarta takmak yerine harici 12V güç kaynağı ile de besleyebilirsiniz. -
Merhabalar arkadaşlar, Bildiğiniz üzere ekip olarak sizlere en sade ve en yararlı platformu sunmak temel amacımız. Bu amaca istinaden, forum altyapısında yaptığımız son güncellemelerden, ve bu güncellemelerden nasıl yararlanabileceğiniz hakkında sizlere kısaca özet geçmek istiyorum. Özellik 1 - Makale görünümü Şu anda "Duyurular","Server Tanıtımı" ve "Geliştirme" bölümünde aktif olan bu özellik, konu içeriğini ön plana çıkartarak okurun dikkatini daha rahat toplamasına yardımcı olur. Örnek görünüm ; Özellik 2 - Konuyu veya mesajı alıntılayarak özel mesaj olarak yollama Bu özellik, forumdaki herhangi bir mesajı alıntılayarak mesaj sahibine özel mesaj atmanıza olanak tanır. Bu özelliği kullanmak için, mesajı gönderen kişinin kullanıcı adına tıklayarak "Bu mesajı alıntılayarak özel mesaj yoluyla X'e gönder" menü linkine tıklayın. Mesajın içeriği otomatik olarak alıntılanarak özel mesaj penceresi açılacaktır. Özellik 3 - Sohbet kutusu yeni konu bildirimleri Forumumuzdaki kullanıcılar tarafından açılan bütün yeni konular, sohbet kutusunda konuyu açan kullanıcı adı , tarih-saat ve konu linki ile beraber yer alacaktır. Bu sayede artık üyelerimizin yeni açtıkları konuların linklerini sohbet alanına kopyalayıp paylaşmalarına lüzum kalmamıştır. Özellik 4 - Yeni konu açarken benzer konuların listelenmesi Artık yeni bir konu açarken, yazdığınız konu başlığı ile alakalı daha önceden açılmış konular otomatik olarak listelenecektir. Bu sayede eğer daha önce aynı konuyu bir kullanıcı açmışsa, var olan içerikten en hızlı şekilde yararlanabilirsiniz. Özellik 5 - Konulara abone olma ve konulara yazılan mesajlardan haberdar olma Bu yeni özellik sayesinde, var olan konu abonelik sistemini biraz daha genişleterek, abone olduğunuz konulara yeni mesaj yazıldığı zaman anasayfa kısmına bildirim düşmesi özelliğini ekledik. Abonelik sistemini aşağıdaki gibi kullanabilirsiniz; 1-) Abone olmak istediğiniz konuya girin ve "Seçenekler" kısmından "Bu konuya abone ol" linkine tıklayın 2-) Abone olmak istediğiniz konu ile ilgili hangi kanallarla bilgi almak istediğinizi seçin ve "Abonelik ekle" butonuna basın. 3-) Artık abone olduğunuz konuya birisi yorum attığında anasayfa bildirimi alacaksınız. Özellik 6 - Geniş ve normal tema arasında geçiş Opsiyonel olarak geniş ve normal forum teması arasında geçiş olanağı ekledik. Geniş tema görünümü : Normal tema görünümü : Temalar arası geçişi anasayfanın en altındaki sol alt kısımda bulunan tema seçimi kutusundan yapabilirsiniz. En son güncellemeler için takipte kalın :cool: İyi forumlar!
- 3 yanıt
-
- 1
-
-
- [09.10.2017]
- yeni
-
(2 tane daha)
İle Etiketeklendi:
-
Harici Ses Kartı için Harici Usb PCI aygıtı
PENTAGRAM, MOMENTUM kullanıcısının konusuna cevap verdi - Serbest KonularPekala, o zaman size "USB PCI express" slotu lazım. Google'a bu şekilde yazarsan bulabilirsin.