GTAMulti.com - Türkiye'nin Türkçe GTA Sitesi
28 Kasım 2024, 23:50:37

Anti Money Hack

Başlatan Jawié, 15 Ekim 2017, 10:48:54

« önceki - sonraki »

0 Üye ve 5 Ziyaretçi konuyu incelemekte.

Jawié

Alıntı yapılan: Cybert! - 12 Aralık 2017, 23:03:26

Alıntı yapılan: Jawié - 15 Ekim 2017, 10:48:54

Anti Money Hack

Sadece 5 satırlık bir kod ile para hilesini engelleyebileceğinizi biliyor muydunuz? Bu kodları modunuzun bir köşesine fırlatarak kimsenin para hilesinin "h" harfini dahi söyleyemeyeceğini? (Jawie bu yazıdan sonra reklam işlerine girer.)

new jawiePara[MAX_PLAYERS]; // sadece bunu modun başına alttakileri modun sonuna fırlatın
stock ParaAyarla(playerid, pera) { ResetPlayerMoney(playerid); GivePlayerMoney(playerid, pera); jawiePara[playerid] = pera; return 1; }
stock ParaVer(playerid, pera) { GivePlayerMoney(playerid, pera); jawiePara[playerid] += pera; return 1; }
stock ParaSifirla(playerid) { jawiePara[playerid] = 0; ResetPlayerMoney(playerid); return 1; }
stock ParaOgren(playerid) return jawiePara[playerid];


Bunun mantığı paranın sunucu taraflı bir değişkene kayıtlı olması. Biz ne kadar parası olduğuna değil, değişkende neyin olduğuna bakıyoruz.

» Örnek Kullanımları:

PAWN Kodu: Seç
if(ParaOgren(playerid) < 50) return 1; // parası 50den küçükse aşağıdakileri hiçe sayıp uçağımızı çağırıyoruz
ParaVer(playerid, 454353535); // para veriyoruz
ParaSifirla(playerid); // sıfırlıyoruz
ParaAyarla(playerid, 1); // parasını 1 olarak değiştiriyoruz


Bu yöntem ile gereksiz timer fazlalığından da kurtulmuş olacaksınız. Include vs. kullanmanıza hiç gerek yok. Direkt modun içine enjekte edebilirsiniz. Ha, ben yine para barını güncel tutmak istiyorum diyorsanız onplayerupdate callbackine aşağıdaki kodu ekleyebilirsiniz.

if(ParaOgren(playerid) != GetPlayerMoney(playerid)) ResetPlayerMoney(playerid), ParaVer(playerid, ParaOgren(playerid));

Ama dediğim gibi timer bir kalabalık, bırakın hile yaptığını sansın hekır okan.  :sigara:

» Dikkat Etmeniz Gerekenler:

  • GetPlayerMoney fonksiyonu yerine ParaOgren kullanmak,

  • GivePlayerMoney fonksiyonu yerine Paraver kullanmak,

  • ResetPlayerMoney yerine ParaSifirla kullanmak.



stock ParaSifirla(playerid) { jawiePara[playerid] = 0; ResetPlayerMoney(playerid); return 1; }
/parasifirla komutunu mu veriyor ?


Hayır, ResetPlayerMoney(oyuncu ıd) yerine ParaSifirla(oyuncu ıd); yapacaksın.


ace


Jizzy

Eline Sağlık güzel anlatım. :helal:


FelleR