Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
Цитата:
Сообщение от parnas
Ребят, подскажите, после 2-3 часов работы периодически выскакивает ошибка.
Ошибка в message_factory.ry в class Response , нашел строку, но не пойму в чем проблема...
[IMG][Ссылки могут видеть только зарегистрированные пользователи. ][/IMG]
вот код на всякий случай:
class Response():
'''
This class represents a response
'''
def __init__(self, response_string):
if '$' in response_string:
crc, response = response_string.split("$", 1)
if(calcCRC(response) != crc):
raise ValueError("CRC is invalid: " + crc)
else:
response = response_string
self.__response = json.loads(response)
def getDict(self):
return self.__response
Хотелось бы беспрерывной работы =)
А фиг его знает.
Скорее всего переменная response_string возвращается типом None.
А по None не хочет искать вхождение символа '$'
Попробуй проверять переменную на None, вот только что с ней дальше делать? Ну пускай обрабатывается по else
измени строку 200 так:
PHP код:
if response_string != None and '$' in response_string:
Но поможет или нет не знаю. Может нужно задать пустой ответ "" или если ответ None то ошибка по любому, т.к. сервер не ответил.
Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
Цитата:
Сообщение от vintets
А фиг его знает.
Скорее всего переменная response_string возвращается типом None.
А по None не хочет искать вхождение символа '$'
Попробуй проверять переменную на None, вот только что с ней дальше делать? Ну пускай обрабатывается по else
измени строку 200 так:
PHP код:
if response_string != None and '$' in response_string:
Но поможет или нет не знаю. Может нужно задать пустой ответ "" или если ответ None то ошибка по любому, т.к. сервер не ответил.
Разобрался, спасибо, с начало ошибку выдавало, так как перед if' ом стер много отступов. Сейчас работает нормально, но вот будет выбивать или нет... Буду ждать...
Последний раз редактировалось parnas; 27.03.2014 в 14:57.
Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
Цитата:
Сообщение от dark-dragon
Нет, нет и нет. Не о секретках речь, а о простом копании. Секретки - отдельная тема для разбора.
Просто речь шла о кладах, поэтому я и написал. В обычном ежедневном копании я это дело тоже игнорирую, так как шанс нарваться на клад при копании определенной декорации - минимален.
Цитата:
Сообщение от dark-dragon
А как отслеживаешь? Программно не удалось - единственное, что пришло в голову, так это отслеживать переходы (но опять же это очень ГЕМОРРОЙНО). Да и, как по мне, не стОят секретки такого напряга.
В целом "целенаправленным кладоискательством" я тоже занимаюсь достаточно редко - времязатрат много, а "выхлоп" относительно небольшой. Хотя когда на нескольких учетных записях нужно накопать по 100-150 факелов, это достаточно полезная штука.
Что же по-поводу отслеживания... Я завел файл, где веду "учетные записи" друзей в виде:
... и так далее. Таким образом я выбираю друга из списка, проверяю date, если посещал его менее чем 5 дней назад, выбираю следующего. Если к другу можно зайти, то иду по списку островов. Если счетчик для острова равен нулю (я никогда его не анализировал), то захожу, считаю объекты, обновляю запись. Если не нулевой, то решаю, заходить или нет.
Единственная "проблема", которую я решил "дешевым и сердитым" способом - если заходишь на остров, который у друга не открыт, то бот вываливается с ingame_error. Соответственно пришлось перед заходом на остров копировать его название в clipboard (буфер обмена в Виндах), потом параллельно запускать Sikuli на отлов строчки ingame error, и запускать маленький скриптик, который у этого пользователя обновляет запись для этого острова с "очень большим числом".
Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
Полная ерунда творится, я ничего не понимаю.
Провожу опыты над одним фейком.
haveRemoteFertilizeFruit = True в не зависимости есть не созревшие, нет не созревших, я не поливал, я поливал.
У него 16 деревьев 1 собранное и 15 созревших
перебираю объекты
PHP код:
if object.type == "fruitTree":
print 'fertilized = ', object.fertilized
Он мне выдал 7 - True и 9 - False
Как будто о стену бьюсь. Единственное что работает - мои параметры
remoteFertilizeFruitTree список, кому я удобрил.
Добавлено через 46 минут
плюнул и проверил параметр object.jobFinishTime на "положительность"
Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
кто то поможет настроить бот на копку что бы он ишёл к другу вичислял есть ли декор и можно ли ещё копать
если можно копать то копает а если уже всё выкопано или игрок давно не заходил то переходит к другому пользователю!=)
а то он у меня идёт к другу! если есть декор то сразу копает воздух воздухом тратя 40 секунд времени в "5 точку" ..
Последний раз редактировалось PriKolist666; 27.03.2014 в 21:46.
Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
Долго ли писать модуль по установке/покупке чего-либо на свободное место острова? И можно ли переделать модуль по посадке деревьев к примеру в модуль по созданию грядок или установке зомби-рабочих?
Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
Цитата:
Сообщение от zw[ty
Долго ли писать модуль по установке/покупке чего-либо на свободное место острова? И можно ли переделать модуль по посадке деревьев к примеру в модуль по созданию грядок или установке зомби-рабочих?
Меняешь название на GROUND.
Рабочих тоже можно, но считаю маразм. Сколько их там нужно.
Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
Цитата:
кто то поможет настроить бот на копку что бы он ишёл к другу вичислял есть ли декор и можно ли ещё копать
если можно копать то копает а если уже всё выкопано или игрок давно не заходил то переходит к другому пользователю!=)
а то он у меня идёт к другу! если есть декор то сразу копает воздух воздухом тратя 40 секунд времени в "5 точку" ..
Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
Цитата:
Сообщение от Fin-2014
3 страницы засрал
сгинь пожалуйста)!
ПРосто уже сколько прошу помочь,обяснить подробнее как ето сделать
если б помогли то я бы уже давно отсюда слился..
Неужели так сложно сказать: в файле "N" помеять местами,дописать удалить логарифм "В"
и всё.. клавиатура не поламается помочь чеовеку нуждающемуся в помощи..
Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
Цитата:
Сообщение от vintets
Попробуй проверять переменную на None, вот только что с ней дальше делать? Ну пускай обрабатывается по else
измени строку 200 так:
PHP код:
if response_string != None and '$' in response_string:
Но поможет или нет не знаю. Может нужно задать пустой ответ "" или если ответ None то ошибка по любому, т.к. сервер не ответил.
vintets, еще раз спасибо за помощь, твой совет очень помог, проработал целую ночь и не выдало ни единой ошибки. Но есть еще два маленьких нюанса, которые не дают покоя. Уж очень хочется, чтоб программа была полностью дееспособной...
1) На прочь отказывается продавать указанный материал. Вписал в setting.ini строку на продажу тюльпанов sell_item = {u'P_50':1000} разкомментил в game engine.py SellBot, работает все отлично, ни единой ошибки (в командной строке указывается, что продать и сколько оставить), но ни в какую не хочет продавать (на складе было 890 шт. возросло до 14 500 шт. ). Уже вначале пробовал и в ручную продать и изменял storage.py по стандарту стояла продажа красных яблок (если правильно понял, то эти строки не обязательно изменять ), но безрезультатно. Есть вариант, что начнет продавать, после того, как закончатся монеты, но к сожалению проверить не получилось, т.к монеты почти не убавляются. Может чего не знаю?
2) При добычи ресурсов палочками-выручалочками, мигает командная строка и выскакивает ошибка...
[Ссылки могут видеть только зарегистрированные пользователи. ]
ресурсы добываются, т.к зайдя в игру можно видеть оставленные сундуки.
вот код:
PHP код:
if not resource:
logger.info("Все ресурсы уже добываются")
else:
for _ in range(resource.materialCount):
gain_event = {"action":"magic","type":"item","objId":resource.id}
logger.info("Добываем палочкой: %s",resource.type)
self._get_events_sender().send_game_events( [gain_event] )
resource.gainStarted = True
else:
logger.info("Не осталось ресурсов для добычи")
Хотелось бы убрать этот недуг и видеть лог, а немигающую ком.строку=)