GTAMulti - GTA Türkiye

San Andreas Multiplayer => PAWN Kodlama => Mod Galerisi => Konuyu başlatan: _Code - 13 Mart 2021, 12:58:28

Başlık: Anti Wall Shoot (Duvardan Sıkma) ~ Colandreas - Alternatif
Gönderen: _Code - 13 Mart 2021, 12:58:28
Bu eklentiyi kullanmak için oyun modunuzun colandreas plugini kullanması gerekir.
Scripti test edecek zaman bulamadım ama teorik olarak çalışır vaziyette.



Duvardayim(forplayer,playerid)
{
if(GetPlayerInterior(forplayer) != 0) return 1;
new Float:x, Float:y, Float:z, Float:endx, Float:endy,Float:endz;

new Float:fPX, Float:fPY, Float:fPZ, Float:fVX, Float:fVY, Float:fVZ;
           

const Float:fScale = 2.0;

GetPlayerCameraPos(playerid, fPX, fPY, fPZ);
GetPlayerCameraFrontVector(forplayer, fVX, fVY, fVZ);

x = fPX + floatmul(fVX, fScale);
y = fPY + floatmul(fVY, fScale);
z = fPZ + floatmul(fVZ, fScale);
       

GetPlayerPos(playerid,endx,endy,endz);


if(CA_RayCastLine(x, y, z, endx, endy, endz, fPX, fPX, fPX)) return 0; //Eğer attığımız ışın bir engele çarptıysa yani ateş eden oyuncunun önünde duvar varsa

return 1;
}

public OnPlayerDamage(&playerid, &Float:amount, &issuerid, &weapon, &bodypart) //OnPlayerTakeDamage'de olur
{

if((weapon > 21 && weapon != 35 && weapon != 42 && weapon < 47) && issuerid != INVALID_PLAYER_ID) //ateşli silahlar
{
if(!Duvardayim(issuerid,playerid)) return 0;
}
return 1;
}

Alternatif (Colandreas Olmadan):

Kamera(playerid)
{
new Float:fPX, Float:fPY, Float:fPZ;
GetPlayerCameraPos(playerid, fPX, fPY, fPZ);
if(IsPlayerInRangeOfPoint(playerid,5.0, fPX, fPY, fPZ)) return 1;
return 0;
}

public OnPlayerDamage(&playerid, &Float:amount, &issuerid, &weapon, &bodypart) //OnPlayerTakeDamage'de olur
{

if(issuerid != INVALID_PLAYER_ID)
{
if(!Kamera(issuerid)) return 0;
}

return 1;
}

İşe yaramayana kadar alternatifi kullanmanızı öneririm.

Başlık: Ynt: Anti Wall Shoot (Duvardan Sıkma) ~ Colandreas
Gönderen: Bilinmeyen Bey - 13 Mart 2021, 13:40:00
Paylaşım için çok sağol :helal: , duvardan vuran kişiler sinirbozucu oluyor. :helal:
Başlık: Ynt: Anti Wall Shoot (Duvardan Sıkma) ~ Colandreas
Gönderen: zhecknn - 13 Mart 2021, 14:52:10
Paylaşım için teşekkürler
Başlık: Ynt: Anti Wall Shoot (Duvardan Sıkma) ~ Colandreas
Gönderen: Belkide Gameover - 13 Mart 2021, 15:21:13
Paylaşım için teşekkürler, Code yapıyor bu sporu Survival Dayz modun çok iyi eline sağlık
Başlık: Ynt: Anti Wall Shoot (Duvardan Sıkma) ~ Colandreas
Gönderen: Radless - 13 Mart 2021, 15:21:30
ColAndreas gerçekten yararlı bir eklenti, kullanmasını bilen anti hile konusunda bir çok şey yapabilir.
Başlık: Ynt: Anti Wall Shoot (Duvardan Sıkma) ~ Colandreas
Gönderen: squarepants - 13 Mart 2021, 15:50:06
Paylaşım için teşekkürler, ancak bu biraz uzun bir yol ve colandreas biraz ağır bir eklenti olduğu için her sunucu için kullanışlı olduğunu sanmıyorum. Bunu kontrol edebilmek için mermi bitiş koordinatları arasındaki mesafeyi hesaplamak yeterli olacaktır:
stock wKontrol(playerid, hedef, Float:tolerans = 0.5)
{
    new Float:basX, Float:basY, Float:basZ, Float:bitX, Float:bitY, Float:bitZ;
    GetPlayerLastShotVectors(playerid, basX, basY, basZ, bitX, bitY, bitZ);
    if(IsPlayerRangeOfPoint(hedef, tolerans, bitX, bitY, bitZ)) return 0;
    return 1;
}
public OnPlayerGiveDamage(playerid, damagedid, Float:amount, weaponid, bodypart)
{
    if(wKontrol(playerid, damagedid)) return Kick(playerid);
    return 1;
}
Başlık: Ynt: Anti Wall Shoot (Duvardan Sıkma) ~ Colandreas
Gönderen: kaan. - 13 Mart 2021, 17:49:03
Eline sağlık, paylaşım için teşekkürler.
Başlık: Ynt: Anti Wall Shoot (Duvardan Sıkma) ~ Colandreas
Gönderen: SpawN - 15 Mart 2021, 23:22:16
ColAndreas'a gerek yok, başka forumda açık açık paylaşmıştım, tekrardan burayada atayım, yaptığın sistem de WallShot işler sadece bir
mermi, vector copy yapmak yeterli bunu aşmak için.  OnPlayerTakeDamage, Weaponconfig var ise OnPlayerDamage ve weaponidleri weapon yapabilirsniz.
PAWN Kodu: Seç
        new Float:xcamera, Float:ycamera, Float:zcamera;
        GetPlayerCameraPos(issuerid, xcamera, ycamera, zcamera);
    if(weaponid >= 22 && weaponid <= 38 && !IsPlayerInRangeOfPoint(issuerid, 3.0, xcamera, ycamera, zcamera))
    {
        return 0; // WallShot
    }
Başlık: Ynt: Anti Wall Shoot (Duvardan Sıkma) ~ Colandreas
Gönderen: _Code - 15 Mart 2021, 23:58:10
Alıntı yapılan: SpawN - 15 Mart 2021, 23:22:16
ColAndreas'a gerek yok, başka forumda açık açık paylaşmıştım, tekrardan burayada atayım, yaptığın sistem de WallShot işler sadece bir
mermi, vector copy yapmak yeterli bunu aşmak için.  OnPlayerTakeDamage, Weaponconfig var ise OnPlayerDamage ve weaponidleri weapon yapabilirsniz.
PAWN Kodu: Seç
        new Float:xcamera, Float:ycamera, Float:zcamera;
        GetPlayerCameraPos(issuerid, xcamera, ycamera, zcamera);
    if(weaponid >= 22 && weaponid <= 38 && !IsPlayerInRangeOfPoint(issuerid, 3.0, xcamera, ycamera, zcamera))
    {
        return 0; // WallShot
    }

Tamda paylaşacaktım teşekkür ederim.
Ama bir gün bu hilenin farklı bir alternatifi çıkarsa colandreas'dan başka çaremiz olmayabilir.

Başlık: Ynt: Anti Wall Shoot (Duvardan Sıkma) ~ Colandreas
Gönderen: _Code - 16 Mart 2021, 00:03:45
Alıntı yapılan: Radless - 13 Mart 2021, 15:21:30
ColAndreas gerçekten yararlı bir eklenti, kullanmasını bilen anti hile konusunda bir çok şey yapabilir.

Airbreak gibi hilelerinde önüne geçilebilir.
Bu eklentiyle çok güzel işler çıkartılabilir tek eksi yanı ağır bir eklenti olması.
Başlık: Ynt: Anti Wall Shoot (Duvardan Sıkma) ~ Colandreas - Alternatif
Gönderen: SpawN - 16 Mart 2021, 00:55:47
Alıntı yapılan: _Code - 15 Mart 2021, 23:58:10
Alıntı yapılan: SpawN - 15 Mart 2021, 23:22:16
ColAndreas'a gerek yok, başka forumda açık açık paylaşmıştım, tekrardan burayada atayım, yaptığın sistem de WallShot işler sadece bir
mermi, vector copy yapmak yeterli bunu aşmak için.  OnPlayerTakeDamage, Weaponconfig var ise OnPlayerDamage ve weaponidleri weapon yapabilirsniz.
PAWN Kodu: Seç
        new Float:xcamera, Float:ycamera, Float:zcamera;
        GetPlayerCameraPos(issuerid, xcamera, ycamera, zcamera);
    if(weaponid >= 22 && weaponid <= 38 && !IsPlayerInRangeOfPoint(issuerid, 3.0, xcamera, ycamera, zcamera))
    {
        return 0; // WallShot
    }

Tamda paylaşacaktım teşekkür ederim.
Ama bir gün bu hilenin farklı bir alternatifi çıkarsa colandreas'dan başka çaremiz olmayabilir.


Ben teşekkür ederim, zaten SA-MP packetlerden oluşan bir bağlantı aracı, Rak-Net de siz ne yapsanız 3.parti yazılım developerları tam tersini yapabilir, en iyisi herşeyi kendinize bırakmak sır olarak kalırsa bulamazlar ama bakıyor bir 3.parti yazılım developeri cameraposa bakmış bide vec3copy atalım cameraposunda gözükelim der :)
Başlık: Ynt: Anti Wall Shoot (Duvardan Sıkma) ~ Colandreas - Alternatif
Gönderen: squarepants - 16 Mart 2021, 12:44:32
@_Code merhabalar, alternatif fonksiyon çalışmayacaktır, ilk nedeni her iki durumda da 1 değerini döndürmesi, ikinci nedeni ise oyuncu kimliğine ait kamera pozisyon koordinat noktaları alındı ve daha sonra ise aynı oyuncu için alınan kamera koordinat noktasının 5.0 değeri için kapsama alanı içerisinde olup olmadığı kontrol edildi, bu durumda oyuncu kendisi ile çelişmiş olacak ve her zaman için kendi kamera noktasına yakın duracaktır. Bu durumda fonksiyon yine düzgün çalıimayacak. Aslında yukarıda yazmış olduğum kod bloğunu inceleyebilirsin, ne demek istediğim belki daha net anlaşılabilir. Tekrardan paylaşım için teşekkürler, iyi forumlar.
Başlık: Ynt: Anti Wall Shoot (Duvardan Sıkma) ~ Colandreas - Alternatif
Gönderen: Hata - 16 Mart 2021, 17:35:15
Yararlı.
Başlık: Ynt: Anti Wall Shoot (Duvardan Sıkma) ~ Colandreas - Alternatif
Gönderen: _Code - 16 Mart 2021, 18:09:38
Alıntı yapılan: ThePosition - 16 Mart 2021, 12:44:32
@_Code merhabalar, alternatif fonksiyon çalışmayacaktır, ilk nedeni her iki durumda da 1 değerini döndürmesi, ikinci nedeni ise oyuncu kimliğine ait kamera pozisyon koordinat noktaları alındı ve daha sonra ise aynı oyuncu için alınan kamera koordinat noktasının 5.0 değeri için kapsama alanı içerisinde olup olmadığı kontrol edildi, bu durumda oyuncu kendisi ile çelişmiş olacak ve her zaman için kendi kamera noktasına yakın duracaktır. Bu durumda fonksiyon yine düzgün çalıimayacak. Aslında yukarıda yazmış olduğum kod bloğunu inceleyebilirsin, ne demek istediğim belki daha net anlaşılabilir. Tekrardan paylaşım için teşekkürler, iyi forumlar.

Evet fark ettim hatayı hocam bu detayı yakaladığın için teşekkürler. :helal:
Başlık: Ynt: Anti Wall Shoot (Duvardan Sıkma) ~ Colandreas - Alternatif
Gönderen: Harun - 18 Mart 2021, 08:24:00
Duvardan sıkma diye bir şey mi var SA:MP'ta
Başlık: Ynt: Anti Wall Shoot (Duvardan Sıkma) ~ Colandreas - Alternatif
Gönderen: _Code - 19 Mart 2021, 22:08:24
Alıntı yapılan: Harun - 18 Mart 2021, 08:24:00
Duvardan sıkma diye bir şey mi var SA:MP'ta

https://www.youtube.com/watch?v=QSMufKHhTe8

Videonun sonuna özellikle bak.
Başlık: Ynt: Anti Wall Shoot (Duvardan Sıkma) ~ Colandreas - Alternatif
Gönderen: Necip - 17 Temmuz 2022, 18:25:57
Her ikisini de denedim, yorumlardaki kodları da denedim. İşlevsiz.