Flash játék botot hogyan érdemes írni?
Van egy flash játék, amihez szeretnék botot írni. Elég egyszerű dologról van szó, tower defense, 5 féle torony közül lehet választani minden körben. 2, 3 vagy 4 lerakott toronyból össze lehet kombinálni egy speciálisat, ami erősebb, mint a normál. Szerencsés esetben egy leosztásban lejön az a kombináció, amiből speciálisat lehet összerakni. Lehet új leosztást kérni, ami pénzbe kerül. Van hozzá egy sandbox mode, amiben rengeteg pénzt ad az elején, szóval ez a része nem akadály. Azt mondják, hogy van egy speciális tower, amit csak úgy lehet lerakni, ha egy leosztásban 4 ugyanolyan perfect feljön. Erre számításaim szerint 40960000:1 az esély, amit érthető okokból nem szeretnék összekattintani.
A helyzet az, hogy én egyáltalán nem értek a flash-hez. Az egész kb annyi lenne, hogy le kellene szimulálni 5 kattintást bizonyos helyekre, ellenőrizni az eredményt, utána meg repicket kérni egy újabb kattintással, ha nem stimmel. Ha stimmel, akkor meg valami riasztást kiadni repick helyett. Kódban ez néhány sor lehet. A kérdés az, hogy erre mi a legalkalmasabb eszköz?
Pillanatnyilag én kb ott tartok, hogy létezik olyan, hogy external interface flash-nél, amin keresztül talán-talán elérhető ami nekem kell, és akkor nem kell képfelismerő algoritmusokra hagyatkoznom. Ezen kívül tudom, hogy van greasemonkey userscript és firefox plugin. Mindkettőt szívből gyülölöm, de az utóbbit ha lehet még jobban, mert annyira gáz az API, és annyira nehéz debuggolni. Bármi ötlet még ezeken kívül, ami talán alkalmas a fejlesztésre?
■ A helyzet az, hogy én egyáltalán nem értek a flash-hez. Az egész kb annyi lenne, hogy le kellene szimulálni 5 kattintást bizonyos helyekre, ellenőrizni az eredményt, utána meg repicket kérni egy újabb kattintással, ha nem stimmel. Ha stimmel, akkor meg valami riasztást kiadni repick helyett. Kódban ez néhány sor lehet. A kérdés az, hogy erre mi a legalkalmasabb eszköz?
Pillanatnyilag én kb ott tartok, hogy létezik olyan, hogy external interface flash-nél, amin keresztül talán-talán elérhető ami nekem kell, és akkor nem kell képfelismerő algoritmusokra hagyatkoznom. Ezen kívül tudom, hogy van greasemonkey userscript és firefox plugin. Mindkettőt szívből gyülölöm, de az utóbbit ha lehet még jobban, mert annyira gáz az API, és annyira nehéz debuggolni. Bármi ötlet még ezeken kívül, ami talán alkalmas a fejlesztésre?
Tudomásom szerint az
A firefox addonok debuggolhatósága rengeteget javult (én legalábbis elegendőnek érzem már). A régi API tényleg elég macerás, de legalább rugalmas, és szinte mindent meg lehet benne oldani (nem úgy mint az elvileg jobb Addon SDK-ban (bár itt még elérhetők a low level API-k); a Chrome féle WebExtension-ről meg ne is beszéljünk (szép api, amivel alig elérhető valami (egyelőre?), amiért anno elkezdtem ismerkedni az extension fejlesztéssel).
Ja nekem is ez rémlett, azért
Hát én anno próbáltam egy kiterjesztést chrome-ról átvinni firefox addon sdk-ra sikertelenül. Elvileg csak pár dolgot kellett átírni benne, a gyakorlatban viszont nem működött a dolog, nem jöttem rá, hogy miért, hiányoztak a debug eszközök, lehet, hogy nem néztem utána elég alaposan, hogy mik vannak, de én nem találtam semmit. Ilyesmik voltak, amik kellettek volna:
abszolút URL elkérése
Két program
Gondoltam erre is,
Sikulit most nézem, az a gond
AutoHotKey ahogy nézem tud átlátszó képeket is, kipróbálom, hátha össze tudom hozni azzal.
Egyszer írtam for fun egy
Én anno utána néztem, nekem az jött le, hogy semmilyen kommunikációs lehetőség nincs a meglévő flash programmal (de lehet, hogy csak én nem voltam elég alapos).
Hát én bízok a
Működőtt a botod a háttérben is? Elvileg a sikuli csak vm-ben tud a háttérben futni, én meg nem szeretnék vm-es megoldást, az már tényleg kicsit túlzás lenne egy játék miatt, az addon ezért szimpatikusabb.
Megvan még a kódja? Nem nagyon találok tutorialt a témában, gondolom melós dokumentáció alapján összehozni.
Közben jobban utánajártam a
(Ami vicces, hogy zend encoded php-t is tud decompile-olni a linkelt weboldal. Nem valami sokat ér a fizetős titkosítás sem. :D)