Script to play Winterbells (<a href="http://www.ferryhalim.com/orisinal/g3/bells.htm" rel="nofollow">http://www.ferryhalim.com/orisinal/g3/bells.htm</a>) based on pydroid:<p><pre><code> import pydroid
INIT_COLOR = 473428
BELL_COLORS = set([12702690, 8950940, 9016477, 9017249, 9018536, 12505567,
12505568, 11715538, 10862803, 12965603, 12439776, 12834019,
14411502, 8953000, 5401724])
def find_init_color(screen, xr, yr):
for x in xr:
for y in yr:
if screen.get_color(x, y) == INIT_COLOR:
return (x, y)
def init():
while True:
screen = pydroid.bitmap.capture_screen()
first = find_init_color(screen, xrange(0, screen.width), xrange(0, screen.height))
last = find_init_color(screen, xrange(screen.width - 1, -1, -1), xrange(screen.height - 1, -1, -1))
if first is not None and last is not None:
return first, last
def check(first, last):
screen = pydroid.bitmap.capture_screen()
for y in xrange(last[1] - 1, first[1], -1):
for x in xrange(first[0] + 1, last[0]):
if screen.get_color(x, y) in BELL_COLORS:
return pydroid.mouse.move(x, y)
def main():
print 'Searching for Winterbells...'
first, last = init()
print 'Found at %s, %s. Running.' % (first, last)
while True:
check(first, last)
if __name__ == '__main__':
main()
</code></pre>
It's far from perfect, but it's a good start. To run it, execute the script, then open the game in a resolution large enough such that the whole game is visible.<p>All it does is find pixels with colors unique to the bells and moves the mouse there. I made the same script in C# a while ago. This script is faster (even though it's Python!) and far more concise. It was astonishingly easy to make too thanks to pydroid. The only time-consuming bit was finding the bell colors. Kudos for the nice library!