GTAMulti - GTA Türkiye

San Andreas Multiplayer => PAWN Kodlama => Anlatımlar => Konuyu başlatan: Jawié - 15 Ekim 2017, 10:48:54

Başlık: Anti Money Hack
Gönderen: 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:

Başlık: Ynt: Anti Money Hack
Gönderen: Zoxy - 15 Ekim 2017, 12:01:38
Başarılı anlatım olmuş, eline sağlık.
Başlık: Ynt: Anti Money Hack
Gönderen: gardiyantr - 15 Ekim 2017, 12:02:59
 :hm:
Başlık: Ynt: Anti Money Hack
Gönderen: LanceX - 15 Ekim 2017, 12:57:39
Alıntı yapılan: gardiyantr - 15 Ekim 2017, 12:02:59

:hm:
Başlık: Ynt: Anti Money Hack
Gönderen: Klaus Mikaelson - 15 Ekim 2017, 15:45:15
Başarılı ! :helal:
Başlık: Ynt: Anti Money Hack
Gönderen: FrankTR - 15 Ekim 2017, 19:28:43
Elinden gelse tüm kodları tek satıra yazacaksın değil mi? :D Eline sağlık, paylaşım için teşekkürler
Başlık: Ynt: Anti Money Hack
Gönderen: pag - 15 Ekim 2017, 19:43:16
Basit ama kullanışlı eline sağlık.
Başlık: Ynt: Anti Money Hack
Gönderen: Hades - 15 Ekim 2017, 20:55:08
Ellerine sağlık.
Başlık: Ynt: Anti Money Hack
Gönderen: Can Demir - 15 Ekim 2017, 20:57:36
ellerine sağlık
Başlık: Ynt: Anti Money Hack
Gönderen: Excision - 15 Ekim 2017, 21:52:07
if(ParaOgren(playerid) != GetPlayerMoney(playerid)) ResetPlayerMoney(playerid), ParaVer(playerid, ParaOgren(playerid));Böyle olmalı, eline sağlık  :helal:
Başlık: Ynt: Anti Money Hack
Gönderen: Jawié - 15 Ekim 2017, 22:22:42
Alıntı yapılan: Excision - 15 Ekim 2017, 21:52:07

if(ParaOgren(playerid) != GetPlayerMoney(playerid)) ResetPlayerMoney(playerid), ParaVer(playerid, ParaOgren(playerid));Böyle olmalı, eline sağlık  :helal:


İki saattir nerede yanlış yaptım diye bakıyorum, parantezi unutmuşsun desene yahu.  :kahkaha:




Gerekli ve gereksiz yorumlar için teşekkürler.
Başlık: Ynt: Anti Money Hack
Gönderen: Excision - 15 Ekim 2017, 23:12:17
Alıntı yapılan: Jawié - 15 Ekim 2017, 22:22:42

Alıntı yapılan: Excision - 15 Ekim 2017, 21:52:07

if(ParaOgren(playerid) != GetPlayerMoney(playerid)) ResetPlayerMoney(playerid), ParaVer(playerid, ParaOgren(playerid));Böyle olmalı, eline sağlık  :helal:


İki saattir nerede yanlış yaptım diye bakıyorum, parantezi unutmuşsun desene yahu.  :kahkaha:




Gerekli ve gereksiz yorumlar için teşekkürler.
Orası da var evet, ResetPlayerMoney olmalıydı onu söyledim.
Başlık: Ynt: Anti Money Hack
Gönderen: Jawié - 22 Ekim 2017, 13:41:24
Alıntı yapılan: Excision - 15 Ekim 2017, 23:12:17

Alıntı yapılan: Jawié - 15 Ekim 2017, 22:22:42

Alıntı yapılan: Excision - 15 Ekim 2017, 21:52:07

if(ParaOgren(playerid) != GetPlayerMoney(playerid)) ResetPlayerMoney(playerid), ParaVer(playerid, ParaOgren(playerid));Böyle olmalı, eline sağlık  :helal:


İki saattir nerede yanlış yaptım diye bakıyorum, parantezi unutmuşsun desene yahu.  :kahkaha:




Gerekli ve gereksiz yorumlar için teşekkürler.
Orası da var evet, ResetPlayerMoney olmalıydı onu söyledim.


Evet, resetplayermoney olmadığı için orijinal değişkene kayıtlı olan parası da silinmiş olur. Düzeltme için teşekkürler.
Başlık: Ynt: Anti Money Hack
Gönderen: 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 ?
Başlık: Ynt: Anti Money Hack
Gönderen: Pablo - 13 Aralık 2017, 02:11:38
Ellerine Saglık :D
Başlık: Ynt: Anti Money Hack
Gönderen: Jawié - 23 Aralık 2017, 11:40:57
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.
Başlık: Ynt: Anti Money Hack
Gönderen: ace - 26 Aralık 2017, 22:03:38
Alıntı yapılan: Zoxy - 15 Ekim 2017, 12:01:38

Başarılı anlatım olmuş, eline sağlık.
Başlık: Ynt: Anti Money Hack
Gönderen: Jizzy - 06 Ocak 2018, 13:54:02
Eline Sağlık güzel anlatım. :helal:
Başlık: Ynt: Anti Money Hack
Gönderen: FelleR - 27 Haziran 2019, 01:36:26
Yararlı. :P