I tried iModGame on the iOS which I believe uses memory reads. It is not a "bot" but simply cycles through searching for bases using certain thresholds (Gold, Elixir, DE, trophy cups, TH level, player XP level). It is extremely effective, but needs to be updated every time Supercell releases an update. Presumably, this is because the memory addresses change with each update.
So: a memory-read bot will need to be updated with the memory addresses every time Supercell updates the game
The most important aspect of memory-read bot is availability of information. iModGame allows searches based on several perimeters, user-defined in a scripting window. Complicated search criteria can be user-defined, such as:
Code:
G + E > 300000 AND TH_LEVEL < 10
OR
G > 200000 AND XP_LEVEL < 65
OR
DE > 1000 AND CUPS > 30
where iModGame will search for a base that meets the criteria.
I have been messing with the AutoIt code for about a week, changing a few troop deployment settings and base search criteria. I'm trying to get familiar enough with the code to make contributions. It's very straightforward, but it exclusively uses screen observation and comparing the pixels to reference images to obtain information. I can envision using AutoIt to scan the entire screen and obtain more information (number of walls, levels of each wall segment, weapon levels, layout style, etc) but this would be a lot faster/reliable using direct memory reads.
Unfortunately, it appears memory reads must be performed
within the Bluestacks Android environment. It is possible to make memory reads
outside of Bluestacks, for example, using a Windows program that peeks inside of Bluestacks?