Krutzo 1
Krutzo
shrpnl 1
shrpnl
Best Studio 1
Best Studio
D 1
delimuratt
Aliyldrim 1
Aliyldrim
Mt2Hizmet 1
Mt2Hizmet
noisiv 1
noisiv
Manwe Work 1
Manwe Work
melankolıa18 1
melankolıa18
Agora Metin2 1
Agora Metin2
Cannn6161 1
Cannn6161
Hikaye Ekle
Reklam vermek için turkmmo@gmail.com
Kaynak ikonu

Bot Oyuncu Sistemi. 2024-11-03

indirmek için izniniz yok
  • Konuyu başlatan Konuyu başlatan Jack.Wrestler
  • Başlangıç tarihi Başlangıç tarihi
  • Cevaplar Cevaplar 129
  • Görüntüleme Görüntüleme 17K
5.00 yıldız(lar) 4 Değerlendirme Değerlendirenler

ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!

@Jack.Wrestler kodda ufak bir geliştirme
NameList eklendi, namelist'de geçen isimler oyunda varmı kontrolü eklendi varsa o karakter adını atlar
toplu çağırma ve gönderme eklendi testleri yapıldı sorunsuz çalışmakta


[CODE lang="cpp" title="cmd_gm"]ACMD(do_fake_player)
{
char arg1[256], arg2[256];
two_arguments(argument, arg1, sizeof(arg1), arg2, sizeof(arg2));

if (!*arg1 || !*arg2)
{
ch->ChatPacket(CHAT_TYPE_INFO, "usage: fake_player login <name>");
ch->ChatPacket(CHAT_TYPE_INFO, "usage: fake_player logout <name>");
ch->ChatPacket(CHAT_TYPE_INFO, "usage: fake_player fullon <count>");
ch->ChatPacket(CHAT_TYPE_INFO, "usage: fake_player fulloff <count>");
return;
}

const char* names[] = {
"Homeron", "MrGe", "HOPPALA", "xAFFETMEg", "MythArrow", "Shunai", "RzeLy", "GODUMBOZULDU", "CUPPALA",
"Hemera", "Dou", "ASSASIN", "Mangeku", "PADISAH", "BOZKURT", "MUSLERA", "RvsSpeed", "ASL4N", "Ninja",
"Hell", "Olc", "LORD", "DELI", "Seyis", "Paradise", "EFSANE", "BABA", "HeavenFARM", "Speed", "TURUVALI",
"ASDASDASD", "3141592653", "HeddA", "Efsun", "ESDELIDELI", "TrMusallat", "BASKAN", "Wind", "BenGeldim",
"TENNSII", "RaEdEn", "Eda", "HeMRA2", "GAVIROSTA", "Demirci", "HAYYAVRUM", "AyYuzlum", "MEMISxKraL",
"LORDfarm", "HerYerDuman6", "KasarRuski", "BaekLORD", "Volkann", "0R0SPUEDA", "ZALIM", "PsychoSociaL",
"SINCANLIM", "GowtheR", "AVSARBEY", "BABAxDERLER", "Burra", "GARFIELD", "CaptainStag", "ZihinseLPlus",
"RAJON", "benuzulmem", "Pretzel", "EJDER", "Zoe", "Ez4Ence", "KRITIKCI", "TEKILA", "meflud", "NARCOS",
"Eclipse7", "tethyS", "DeliDumrul", "SUMBUL", "ZaMaZoM", "WarWolf", "sisko", "CHIVAS", "pretzell",
"Eclipse77", "NobleStrike", "KekkeiGenkai", "RuhsuzOkcu", "PALANBEYAZ", "lRozeNl", "SANRI", "SeqhilNinja",
"SmokerDAYI", "FizofreN", "SmokerIDAYI", "THANOS", "VATAN", "Kutlusam", "PARMAKDARBE", "SeljukEmpire",
"Sharingan", "SOSYOPAT", "KesBeni", "GODFARM", "Itachi", "YAYGELARTIK", "Maestro", "KafamDuman6",
"OhaKiNG", "XxLeGendxX", "Ramires", "gaddaR", "Hercai", "RedKeys", "Devilish", "p0seid0n", "ASGARD",
"Eye4You", "TurkishPower", "TACSIZKRAL", "SOYLUYUM", "SmithKlineTR", "OTTOMAN", "JaWeL", "MEZARCI34",
"LASTDANCE", "Pailrox", "Hassaki", "xFARKETMEZ", "oVEYTo", "EskiciGeldi", "RowsAgla", "EnginSertkay",
"SIKINTILI", "CaptanJake", "EZEL", "SwangeR", "Archer", "PosionFake", "BabaMerhaba", "ByHefna",
"engntekleyen", "EnginSertkaa", "Furious", "TARZAN", "Indicibus", "SarKopat", "lLoran", "Hassasium",
"TrOnLaR", "OrkunMNTMR", "kutsama1", "Baro", "DioBrando", "D4YI", "POMPA", "Kirwe", "TankerMelda",
"BidonNecmi", "Mayhem", "ScorpionJr", "PerfectDewiL", "ByJamiryoo", "DeliNoyan", "Orkun1910", "Powerade",
"Ryzen", "Muholox58", "Skayres", "TRDrenisH", "Matriks", "KralMetehan", "RaptorBlood", "TRDrenissH",
"TainTed", "BlackBrother", "Eulith", "Sensizim", "Malphite", "G4me0vER", "Pinhani", "AyiABBAS",
"FarketmeezWT", "TylerDurden", "Vaenictas", "AyiKADO", "DeaTLoarD", "vosseL", "xLarge", "andavalemre",
"ITeKKrAlI", "DarkSide", "EternaL", "DIRILISH", "Afrodit", "J3adJ3oy", "Aldarion", "TheMoRe", "AyiCEREN",
"Titanium", "SURAVAR", "Crow", "STALLIZE", "Despina", "Pemions", "AyiBATU", "TestaRossa", "godUZI",
"ReaLxFLU", "Sasurata", "Kutsabebeim", "Eliena", "CakarLaRRR", "Kurosaki", "Rhot", "Ninjayimben",
"Zeors", "SemiGod", "KARASURA", "DELALE", "MagicLord", "Hasecan", "Chupons", "SekoBey", "POSEIDON",
"TEKYUMRUK", "Sekoooo", "WurGunBey", "Invincible", "FRENTE", "RoyaLs", "Serchuva", "EmonG", "ThiweT",
"CardinalRed", "MesquL", "Delpwinzy", "LeuEntrica", "VARLUKHAN", "PATRON", "IPuF", "AVVArutin",
"babafingo", "ZorBaaTR", "KaRaCeLLaT", "UtkuDuman", "InsCnmYa", "Poncik", "MuSaLlat", "Scary", "Elizabet"
};

if (0 == strcmp(arg1, "login"))
{
std::unique_ptr<SQLMsg> pMsg(DBManager::instance().DirectQuery("SELECT name FROM player.player WHERE name = '%s'", arg2));
if (pMsg->Get()->uiNumRows > 0)
return;
TFakePlayerLoginData fakePlayerLoginData;
strlcpy(fakePlayerLoginData.szName, arg2, sizeof(fakePlayerLoginData.szName));
fakePlayerLoginData.lMapIndex = ch->GetMapIndex();
fakePlayerLoginData.lX = ch->GetX();
fakePlayerLoginData.lY = ch->GetY();
fakePlayerLoginData.iRotation = ch->GetRotation();

CFakePlayerManager::Instance().FakePlayerLogin(ch, &fakePlayerLoginData);
}
else if (0 == strcmp(arg1, "logout"))
{
CFakePlayerManager::Instance().FakePlayerLogout(arg2, ch);
}
else if (0 == strcmp(arg1, "fullon"))
{
int count = 1;
if (*arg2 && isnhdigit(*arg2))
{
str_to_number(count, arg2);
count = MINMAX(50, count, 250);
}

const int nameCount = sizeof(names) / sizeof(names[0]);
if (count > nameCount)
{
count = nameCount;
ch->ChatPacket(CHAT_TYPE_INFO, "Only %d names available, adjusting count to match.", nameCount);
}

for (int i = 0; i < count; ++i)
{
std::unique_ptr<SQLMsg> pMsg(DBManager::instance().DirectQuery("SELECT name FROM player.player WHERE name = '%s'", names));
if (pMsg->Get()->uiNumRows > 0)
return;
TFakePlayerLoginData fakePlayerLoginData;
strlcpy(fakePlayerLoginData.szName, names, sizeof(fakePlayerLoginData.szName));
fakePlayerLoginData.lMapIndex = ch->GetMapIndex();
fakePlayerLoginData.lX = ch->GetX() - number(200, 750);
fakePlayerLoginData.lY = ch->GetY() - number(200, 750);
fakePlayerLoginData.iRotation = ch->GetRotation();

CFakePlayerManager::Instance().FakePlayerLogin(ch, &fakePlayerLoginData);
ch->ChatPacket(CHAT_TYPE_INFO, "Fake player %s logged in.", names);
}
}
else if (0 == strcmp(arg1, "fulloff"))
{
int count = 1;
if (*arg2 && isnhdigit(*arg2))
{
str_to_number(count, arg2);
count = MINMAX(1, count, 250);
}

const int nameCount = sizeof(names) / sizeof(names[0]);
if (count > nameCount)
count = nameCount;
for (int i = 0; i < count; ++i)
CFakePlayerManager::Instance().FakePlayerLogout(names, ch);
}
}[/CODE]

Teşekkürler bugün iş çıkışı konuya dahil ederim. 🙏
 
item dupe sorunu var bilginize, eşya mekanizmasını iptal edin create etmesin paket üzerinden gösterim yapsın sadece m_pFakePlayer->SetPart() olarak yoksa olası bir sorun yaşamanız kaçınılmaz
 
valla hocam emeğinize sağlık ama benim gibi hiç bir şeyden anlamayan birisi için çok zor oldu bunu oyuna nasıl eklerim sonrasında putty den çekmem gerekiyor mu ? neler yapmam gerekir vaktiniz olursa anlatırsanız sevinirim
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)

Geri
Üst