ImageGrab kütüphanesi çok hızlı ekran görüntüsü almaya yarıyor. Buradaki nesnelerimiz 3 boyutlu değil hareket etmiyor işimiz daha kolay. Her sayının datasını cıkarmaya hiç gerek yok. Tespit etmesi sayıların renk tonları üzerinden oluyor Kabaca örneklersek : sarıyı gördüğünde 2, kırmızıyı görünce 4, beyazı gördüğünde 8'i karşılık getiriyor. Zaten kodu incelerseniz yazılıma başlarken dictionaries bilgisini hatırlayacaksınız. Her satırın 4 sutündan oluştuğunu belirtiyoruz ve taramasını istediğimiz 16 satırın olduğunu belirtiyoruz. 16 kareyi taradıktan sonra kendi hafızasında bir yere koyup bize yazdırıyor. Yani tespti dataset ile degil ekranda gördüğü renk skalasına göre yapıyor. Sendkeyslerim yine win32. Bundan sonra da algoritması devreye giriyor. belli sorguları var. üstten alta doğru gidersek boş bir kare varsa sağ ya da sola sürükler. Boş kareler üzerinden hesap yapıyor.Her defasında her satırı hesaplıyor. ilk önceliği 0 0 değerleri yani 256dan başlayıp aşağıya doğru birleştirme yapıyor. ilk sorgularda en büyük değerleri sorguluyor en büyük değerler üzerinde işlem yapamazsa değer düşürüp yanında üstünde altında o değer varsa işlem yapıyor. Sağ ya da sola hamle yapamadığı zaman kaçış hamlesi ekli aşağıya çeker. Algoritmayı anlamak zaman alabilir. Buradaki odak nokta image graptan verilen sabit renkleri tespit edip yazdırmak. Basitleştirerek algoritmayı anlatmak gerekirse ;
Çok çok basitçe algoritmayı anlatırsak. En büyük değerden başlar sorgulamaya. Daha sonra ekran görüntüsü alıp sorgular bakar A ==B değildir Gecer B ==C Değildir. C == D? bakar degldir yan yana sorguyu geçer Sonra A == E mi bakar Yani A değeri 64 olduğunu var sayalım E 64 ise yukarı oka basıp A ve E'yi birleştirir. degilse her satırı böyle böyle sorgular. B geçer B==F'ye eşit mi valuesi bakar. C == G mi bakar. Yan yana baktıktan sonra altındaki değere bakar eğer bir eşit değer yoksa diğer satıra geçip sorgulamaya devam eder. Algoritmaya giriş için bu mantığı kurmanız gerekmete. Siz nasıl düşünüyorsanız, programında öyle düşünmesini istersenizi ve öyle yazmalısınız. Link: https://github.com/oguzhanyazman/PythonBot-2048
Opencv2 kullanarak aktif pencerenin içinde verdiğimiz nesneyi aratıyoruz. Eşleşme durumu söz konusu olduğu zaman nesnelerin bulunduğu kordinatları yazıyor. Yol göstermesi açısından; Python OpenCv'yi aktif pencere içinde arama yapma, aranan nesnenin dataset oluşturulmadan en basit halde *.jpg ya da *.png formatında nesne eşlemesi yapmasını ve bu nesneyi bulduğunda kordinatını yazdırmasını sağlıyor. Opencv2 Oyunlara Giriş 101 olarak adlandırabiliriz. Temel fonksiyonların basit ve anlaşılır olması bu konu hakkında mantığını oturtmanıza yardımcı olacaktır. Source olarak yer alan kısım sadece nesneyi tespit eder ve kordinat yazdırır. Pyautogui, pydriect, win32api artık ne ile sendkey yollamak istiyorsanız geliştirmesi size kalmış. Sadece tık fonksiyonu aktif edip genie ile anti afk'da farm atabilirsiniz ya da tam anlamıyla geliştirir her yerde farm atarsınız. Ne kadar emek o kadar kazanç. Videoda bulunan Keconbot paylaştığım kodun geliştirilmiş halidir. Botu satmayı düşünmüyorum. Geliştirme aşamalarınızda fikir vermesi açısından kecoonbotun çalışma yapısı multithreading kütüphanesi dahil edilmiştir. Mob-Kordinat Kümesi-Hp/mp kontrol 'ü aynı anda çevirir. Olası bir durum söz konusu olduğunda diğerlerini keser (interrupt fonkisyon). Son olarak olaylar için telepot kütüphanesi dahil ettim tavsiye ederim. Her şeyi haber vermesi güzel bir şey. Oyun yetkilisi sizi teleport ettiği zaman hemen haber alıp reaksiyon vermek gibi..Bot fonksiyonları hakkında daha detaylı bir yazım var onu da websiteye attım göz atmak isterseniz bakarsınız. Link: https://www.youtube.com/watch?v=KecMlLUuiE4&list=PL1m2M8LQlzfKtkKq2lK5xko4X-8EZzFPI https://docs.opencv.org/4.x/d4/dc6/tutorial_py_template_matching.html https://towardsdatascience.com/multithreading-multiprocessing-python-180d0975ab29 https://www.geeksforgeeks.org/multithreading-in-python-set-2-synchronization/?ref=rp
Opencv ile haarcascades kullanmadan tanıtmış olduğumuz anti-afk yazısını tüm afk tagı bulunan monsterlarda kullanıyoruz. Model öğrenmesi, data set toplamaya gerek kalmadan stabil şekilde çalışıyor. 3 Fps olan tespit süresini 7 fps'e bazı nedenlerden dolayı çıkardım. Ciddi bir kaynak kullanımı yaşanmadı. Bu süreçte multithreading kütüphanesini dahil ettim. Bir çok işi aynı anda yapmamızı sağlıyor bu kütüphane. Opencv2 ile nesne tanımasını, mana bar yüzdesini kontrol ettirip pot basmayı, kordinat bazlı gm teleport kontrolünü aynı anda çalıştırabiliyoruz. Normal bir kod dizini yazmış olsaydık. 1- Modu kes 2 - Kutu topla 3- mana kontrol 4- kordinat kontrol tekrar 1234 bu adımlar biraz yavaş çalışacaktı. fakat multithreading kütüphanesi aynı anda bir çok def'e attığımız komutları çalıştırmamıza yaradı. Biz tam monster keserken aniden kordinat değiştiği anda diğer fonksiyonları break yapıp all chata Soru işareti yazıyor ve bize telegramdan mesaj atıyor. Bu süreçte pc başında isek ya da uzak bağlantı ile bakıp oyun yetkilisi ile sohbet edebiliriz :) zaten bizi çektiği anda soru işareti atması ve buyur, sorun nedir gibi şeyler yazdığı anda gamemasterlar kurcalamıyor oyuncu olarak görüyor bizi. Aslında muhattap olduğu şey basit bir yapay zeka :) Bunu burada neden ifşa ediyorum? OCR sistem kullanıyorum yani oyun içi yazılanları text'e çevirip içerdiği kelimelere göre cevap veren bir chatbot bağladım. Yani sizinle allchatten sabaha kadar sohbet eder :D github'a bu kısımda bayılıyorum Bilgisayar çıktısını incelerseniz karakter isminin üstünde + işareti oldugunu göreceksiniz. Şöyle bir deneme çalışmam var kordinatı değiştiği anda tüm fonksiyonları durdurup w s a d ile eski kordinatına gitmesi için bir çalışma yapıyorum. İşi tamamen yapaya dökmeye çalışıyorum. Ek olarak oto kutu kafanızı karıştırmasın.Mobun tespit kordinatı 500, 500 ise mob öldüğünde 550,500'e ceseti düşüyüor ve o kısma bir click atıyoruz. yani kordinatı arttırıp öldüğü noktaya tıklıyoruz. Kutu açılınca da nesne tespit kütüphanesi devreye giriyor. Kutu her zaman aynı x ve y 'de açılmıyor o yüzden nesne tespit gerekli. Telegram anlık haber ya da takip için kullandığım bir kütüphane bunu anlatmaya gerek yok sanırım. Kullanılan kütüphaneler; opencv, win32, pyautogui, ocr tesseract, threading, telepot. Şimdi bunu free paylaşırsam ne olur piyasa fazla karışır. O yüzden python yazılım bilgisi olan ama ben bu oyunda hangi kütüphaneyi kullanacam ne yapacam bilgisi olmayanlara yol göstermesi açısından kütüphaneleri belirtiyorum. Link: https://www.youtube.com/watch?v=KecMlLUuiE4&list=PL1m2M8LQlzfKtkKq2lK5xko4X-8EZzFPI https://towardsdatascience.com/multithreading-multiprocessing-python-180d0975ab29 https://www.geeksforgeeks.org/multithreading-in-python-set-2-synchronization/?ref=rp
Buradaki amacımız oyun oynamak değil yazdığım yapay zekayı test etmektedir. En hızlı ve doğrulamanmış şekilde ilgili nesneyi tespit edip işlemler döngüsüne almak... Oyunu bilmeyenler için kısa bir özet geçeyim; -Oyunun kendi otomatik oynama botu mevcut. Bu bot normal monsterları kesiyor fakat Anti-AFK olan moblara oyuncunun fiziksel click ile seçip saldırı yapması gerekiyor. İşte bu kısımda nesneyi tanıtıp eğer o nesne görüş alanımızda ise seçtiriyoruz. Kalanını oyunun kendi botu yapıyor. Eğer o sistem olmasaydı sendkeys_ ve opencv ile health ve mana bar okuyup pot bastırtabilirdik. Bize lazım olan sistem Anti-Afk seçmesi. Anti-Afk mobların droprateleri yüksek olduğu için kazancı daha yüksek olmakta. Teknik olarak konuşacak olursak; - ortam değişkenleri çok fazla hareketli olmadığı için max fps 3 olarak ayarladım. Nedeni şu çok ani tepki vermesi gereken bir durum yok.Fps oyunlarda olsak cpu ve ramı kullanırdırız fakat buradaki durum olağan sakinlikte nesne tespiti olduğu için cpu ram kaynak kullanımını düşürmek için 3 fps bize yeterli oluyor. Tanıtmak istediğimiz bir nesnenin ortak özelliği var ise videodaki Anti-AFK yazısını örnek verirsek, cascade oluşturmaya hiç gerek yok bunu %60 %70 doğrulukla zaten çok hızlı tespit edecektir. Eğer modellerimiz değişken olsaydı Rise Online monsterları gibi bu defa bir data oluşturup mecburen cascade oluşturmamız gerekecekti. Yazdığınız görüntü işleme projeleri kasıyor ya da kaynak kullanımı maximum ise ilk olarak saniyelik fps'i düşürün sonrada ise aramasını istediğiniz nesnelerin ortak özelliği var mı ona bakın ortak özelliği yok ise opencv cascade oluşturmak yerine yolov7 kullanmanızı şiddetle tavsiye ederim. Gerçek dünya projelerinde kendinizi geliştirmek istiyorsanız oyunlarda bunu simüle edin. Çok fazla değişken mevcut olduğu için yazdığınız projenin hemen eksik noktasını görebiliyorsunuz.
Python | Opencv HP-MP Bar DEMO
python opencv2 arka plandaki pencereyi okuyup. pixel color ya da ocr text üzerinden işlem yapma şimdi bu kısıma gelirsek ocr ile çok sağlıklı olmuyor kaynak kullanımı var o yüzden alan işaretleyip renk tonu sorgulatıyorsunuz. Source: https://github.com/oguzhanyazman/opencv-hp-mpbar
With utilities such as Cheat Engine, gameguardian, where we can see the memory data, we can determine the offset pointer and send packets to that address with the "Python" language without using "C++". The key you need to search on Youtube is "Finding Offset Pointer" All PythonBot Source Fee ; 30 Wemix Tüm Python Bot projelerinin ücreti 30 wemix'tir Cheat Engine, gameguardian gibi memory datasını görebildiğimiz yardımcı programlar ile offset pointerı belirleyip o adrese "C++" kullanmadan "Python" dili ile paket gönderebiliyoruz. Youtube üzerinde arama yapmanız gereken anahtar "Offset Pointer bulma" Oyun kısmına gelirsek ; Memoryhacking ile dünya bossları ıvır zıvır yapılabilir. Hiç ölmediğimiz için farm atabilir. 1 token kasmak için 1 gün uğraştırıyor. 1 Token'ın fiyatı 0.50 - 0.60 $ arası. Multi farma değmeyeceğini düşünüyorum. Kazanç bırakmaz! !!-Videoda paylaştığım offset değil pointer. Sabit bir offset bulmakla uğraşmadım. !!-The pointer I shared in the video is not the offset. I didn't bother finding a fixed offset.
Python BOT - 6 | Play2Earn Crypto Game - ASU on WEMİX AutoQuest v1
FourGods Play2Earn Free2play 100k redstone = 1lux 1lux = 1wemix Features of the bot: Get up when you die and go back to the slot Auto-collection bug fix Alarm system when the game is closed If the vs invitation comes, decline it. contents: Python; Opencv2, ADB Packet
Bildiğimiz knight online'nın mobil versiyonu. Gb fiyatlarında düşüş olmasın hile olmasın diye emulator kısıtlaması getirmişler. Oyunun kendi içinde geine'si mevcut fakat p2w satın almak gerekiyor. Aynı şekilde oto kutu gerekiyor. Emulatorden 8x parti cıkartıp no-pk bir yerde farm atılabilir. Kim telefondan ko oynar demiştik çok kişi oynadığını pknın döndüğünü gördük 07.05.2022 GB fiyatı 65tl. #knightmobile #python #knightempire #pythongamebot #opencv2 #ocr tabii ki source yine satılık :) Ben bu tarz mobil oyunlarda anticheat sistemine girmeden obje -nesne okutarak stabil bir bot kodlamak isteyenler için ; //contents: Python; Opencv2, OCR, ADB Packet
Python BOT - 3 | CS-GO Project. Valve bitmiş
algıma sorununa gelirsek yüksek işlemci kullanımından kaynaklandığını düşünüyorum. Gerekli datayı zaten githubtan pointerları çekiyor güncellemek gerekmiyor.python tabanda temiz temiz çalışıyor. Valve bitmiş Parçalardan gümrükten geldiğinde yeniden test edip kontrolunu sağlarım Edit: Algılama sorunu Deathmatchlarda oluyor ranklı girdiğimizde bu sorun olmuyor. (memoryhacking) ister source kurcala ister al kullan :) //contents: Python; AutoOffset, sendoffset data
Python BOT - 2 | Play2Earn Crypto Game - Yulgang Global Bot v2
the software is not up to date. In the software content, there are image processing artificial intelligence and emulator connection codes with Opencv2. If you want to make bots in emulator games or bots on other platforms, you will find the training you are looking for in the source section.yazılım güncel değil. Yazılım içeriğinde görüntü işleme yapay zeka ve Opencv2 ile emülatör bağlantı kodları bulunmaktadır. Emülatör oyunlarında bot veya diğer platformlarda bot yapmak istiyorsanız aradığınız eğitimi kaynak bölümünde bulacaksınız. //contents: Python; Opencv2, ADB Packet
Python BOT - 1 | Play2Earn Crypto Game - Yulgang Global Bot
Detects whether there is a diamond mine. If not, the server changes. repeats -_- //contents: Python; Opencv2, ADB Packet