Регистрация Главная Сообщество
Сообщения за день Справка Регистрация

Zombot (Клиент для игры Зомби ферма) [Обсуждение]

-

Свободное обсуждение

- Ваши идеи, вопросы и ответы на тему браузерных игр и социальных сетей

Ответ
 
Опции темы
Старый 28.09.2014, 22:43   #3346
 Разведчик
Аватар для Shurup240
 
Shurup240 никому не известный тип
Регистрация: 04.02.2013
Сообщений: 0
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]

Цитата:
Сообщение от Lion1000+Посмотреть сообщение
мне показалось или защиту обновили?

Хз, вроде работает)
  Ответить с цитированием
Старый 29.09.2014, 00:30   #3347
 Разведчик
Аватар для dreamerag2
 
dreamerag2 никому не известный тип
Регистрация: 29.07.2014
Сообщений: 0
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
 
Smile SIGSERVER.py

Цитата:
Сообщение от megabyte0Посмотреть сообщение
Он нужен? Соль нормально генерируется и в клиенте. Кросплатформенно без "левых sigов". На линуксе уже запускали, отзывы есть что всё нормально.

да в общем то и не нужен уже, когда всем у всех желающих уже есть клиентский генератор соли. просто с технической стороны интересно по чему плохо работает...

sigsvr.py
PHP код:
from read_swf import swf2functions
import urllib2
import socket
import os
.path

sock 
socket.socket(socket.AF_INETsocket.SOCK_STREAM)
sock.bind((""30002))
sock.listen(1)
dic = {}
saltx = {}
while 
True:
  try:
    
connaddr sock.accept()
    
#print "Connect: "+ str(addr[0])
    
    
data conn.recv(1024).decode().split(":-:")
    
#for prt in data:
    #    print prt
    
    
evt str(len(dic))+" "+data[0]
    
    if 
len(data) > 2:
        
opener urllib2.build_opener()
        
response opener.open(data[1], 'postfix='+data[2], timeout=8)
        if 
response:
            
content response.read()
            
response.close()
        else:
            
evt += "Cannot load salt swf"
        
evt += "\t\tCreate Function"
        
#print len(dic)
        
dic[data[0]] = swf2functions(content,data[2])
        for 
f in dic[data[0]]:
            
salt_sig f(data[3])
    else:
        
evt += "\t\tExec Function"
        
#print len(dic)
        
for f in dic[data[0]]:
            
salt_sig f(data[1])
    
#print salt_sig
    
conn.send(salt_sig.encode('UTF-8''ignore').encode())
    if 
data[0in saltx.keys() and saltx[data[0]] != salt_sig: print evt; print '-'*79
    elif data
[0in saltx.keys(): saltx[data[0]] = salt_sig
    
else: saltx[data[0]] = salt_sig
    
#salt_sig = salt_sig.encode('UTF-8')
    
if os.path.isfile('msg.txt'): salt_sig += u':-:'+open('msg.txt').read().decode('UTF-8')
    print 
salt_sig
    
#conn.send(salt_sig.encode('UTF-8', 'ignore').encode())
    
conn.close()
  
except: print "\t\tError" 
message_factory.py
PHP код:
    def calcSig(self,sessionKeyrequestIdauthKey):
        
#print "Connect to SIG"
        
userID str(self.__session.getUserId())
        
postfix sessionKey.split(':')[1]
        
sig sessionKey str(requestId) + authKey
        saltFunction_sig 
sig
        
if not hasattr(self,'postfix') or self.postfix != postfix:
            
#print "\t\tPOSTFIX"
            
self.postfix postfix
            url 
base_redirect_url+'/salt'
            
result self.get4snd(':-:'.join([userID,url,postfix,sig]))
        else:
            
#print "\t\t ReGen SIG"
            
result self.get4snd(':-:'.join([userID,saltFunction_sig]))
        
        if 
result.find(":-:") > 0:
            
result result.split(":-:")
            
salt_sig result[0]
            print 
result[1]
        else: 
salt_sig result
        
        sig 
+= salt_sig.lower()
        
sig hashsum._md5hash(sig)
        return 
sig 
  Ответить с цитированием
Старый 29.09.2014, 01:55   #3348
 Разведчик
Аватар для megabyte0
 
megabyte0 никому не известный тип
Регистрация: 29.07.2014
Сообщений: 0
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 8 раз(а) в 5 сообщениях
 
По умолчанию Re: SIGSERVER.py

Цитата:
Сообщение от dreamerag2Посмотреть сообщение
Код:
        for f in dic[data[0]]:
            salt_sig = f(data[3])
    else:
        evt += "\t\tExec Function"
        #print len(dic)
        for f in dic[data[0]]:
            salt_sig = f(data[1])

Мне кажется, корректнее было бы
Код:
        salt_sig = data[3]
    else:
        evt += "\t\tExec Function"
        #print len(dic)
        salt_sig = data[1]
    for f in dic[data[0]]:
        salt_sig = f(salt_sig)
, потому что нужно применить функции f последовательно, результат предыдущей в следующую.
Дальше, мне не нравится sig += salt_sig.lower() , именно этот .lower()
А вообще я пока что сильно не вчитывался.
  Ответить с цитированием
Старый 29.09.2014, 20:15   #3349
 Разведчик
Аватар для GirlKris
 
GirlKris никому не известный тип
Регистрация: 17.02.2014
Сообщений: 0
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 3 раз(а) в 3 сообщениях
 
По умолчанию Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]

Набросала альтернативу SellBot, может кому пригодится. Принцип работы такой:
Составляем список продаваемых элементов, указываем минимальное и максимальное количество денег. Когда количество монет достигает минимума, бот продаёт из списка элементы, чтобы денег стало максимум.
Для тех, кто хочет подкопить денег на чёрный день.

Добавляем класс в storage.py
Код:
class SellEconom(BaseActor):

    def perform_action(self):
        
        min_money = 50000000
        max_money = 100000000
        sell_item = [
                    'S_51',	    	#Красные яблоки		
                    'S_52',	    	#Вишня	
                    'S_40',	    	#Мозговница
                    ]
        
        if self._get_game_state().get_state().gameMoney < min_money:
            intent = False
            gain =  max_money - min_money
            for sell in sell_item:
                sell_count = self._get_game_state().count_in_storage('@'+sell)
                if sell_count > 0:    
                    gain_sell = self._get_item_reader().get(sell).sellCoins*sell_count
                    if gain_sell > gain:
                        sell_count = gain/self._get_item_reader().get(sell).sellCoins
                        intent = True
                    sell_event = GameSellItem(count=long(sell_count), itemId = unicode(sell))
                    self._get_events_sender().send_game_events([sell_event])
                    self._get_game_state().remove_from_storage('@'+sell,sell_count)
                    count=self._get_game_state().count_in_storage('@'+sell)
                    self._get_game_state().get_state().gameMoney += self._get_item_reader().get(sell).sellCoins*sell_count
                    logger.info(u"Продали %d '%s' осталось %d"%((sell_count),self._get_item_reader().get(sell).name,count))
                    if intent: break
в движок
Код:
from game_actors_and_handlers.storage import SellBot, SellEconom
Код:
actor_classes = [
            SellEconom,          
        ]
Ну и чтобы в посейке шёл учёт монет
Код:
            if len(all_event)>0:
                self._get_events_sender().send_game_events(buy_events)
                self._get_game_state().get_state().gameMoney -= self._get_item_reader().get(seed_item.id).buyCoins*len(all_event)
                logger.info(u'Посеяли %d "%s"'%(len(all_event),seed_item.name))
  Ответить с цитированием
Старый 30.09.2014, 03:59   #3350
 Разведчик
Аватар для Lion1000+
 
Lion1000+ никому не известный тип
Регистрация: 03.07.2014
Сообщений: 0
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]

видел недавно торги с монетами, дублонами, каруселями(ачива) в чём прикол? это же ботом ставится торг????
  Ответить с цитированием
Старый 30.09.2014, 13:09   #3351
 Разведчик
Аватар для KORTEG
 
KORTEG никому не известный тип
Регистрация: 11.02.2010
Сообщений: 0
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]

Всем привет!
Прочитал все темы по данному сабу.
Учёл все замечания, наставления, советы и прочее.
Питон работает, среда прописана, бот запускается, авторизация проходит.
Но при загрузке острова вылетает на ошибке в файле mrutils.py.
Строка довольно важная, и ,думаю, её закомментировать не будет смысла.

Цитата:
File "C:\Program Files (x86)\python2.7.8\src\mrutils.py", line 38, in get_game
_params
params['ext_perm']=params['ext_perm'].replace('%2C',',')
TypeError: 'NoneType' object has no attribute '__getitem__'

Кто может помочь по вопросу?
P.S. Пробую версии файлов бота от разных авторов.
  Ответить с цитированием
Старый 30.09.2014, 14:53   #3352
 Разведчик
Аватар для dark-dragon
 
dark-dragon никому не известный тип
Регистрация: 30.08.2013
Сообщений: 0
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 26 раз(а) в 21 сообщениях
 
По умолчанию Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]

Цитата:
Сообщение от KORTEGПосмотреть сообщение
Строка довольно важная, и ,думаю, её закомментировать не будет смысла.

1. Откуда такая уверенность в важности строки? [Ссылки могут видеть только зарегистрированные пользователи. ] как оказалось Первая же ссылка выводит на описание.
Беспонтовый параметр для бота.
2. Не попробовав завести двигатель - не поедешь точно.


Цитата:
Сообщение от KORTEGПосмотреть сообщение
Кто может помочь по вопросу?
P.S. Пробую версии файлов бота от разных авторов.

См. выше
  Ответить с цитированием
Старый 30.09.2014, 15:17   #3353
 Разведчик
Аватар для KORTEG
 
KORTEG никому не известный тип
Регистрация: 11.02.2010
Сообщений: 0
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]

Написал так потому, что пробовал )
Комментирую, всплывает следующая ошибка, строка 42, 44, 46 и т.д.
Поэтому в замешательстве.
  Ответить с цитированием
Старый 30.09.2014, 15:18   #3354
 Разведчик
Аватар для mike4kz
 
mike4kz никому не известный тип
Регистрация: 23.08.2013
Сообщений: 1
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 2 раз(а) в 2 сообщениях
 
По умолчанию Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]

Цитата:
Сообщение от KORTEGПосмотреть сообщение
Написал так потому, что пробовал )
Комментирую, всплывает следующая ошибка, строка 42, 44, 46 и т.д.
Поэтому в замешательстве.

Возьми пример нормального трафика Чарли, и сравни с тем, что у тебя происходит в Боте.
  Ответить с цитированием
Старый 30.09.2014, 16:08   #3355
 Разведчик
Аватар для dark-dragon
 
dark-dragon никому не известный тип
Регистрация: 30.08.2013
Сообщений: 0
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 26 раз(а) в 21 сообщениях
 
По умолчанию Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]

Цитата:
Сообщение от KORTEGПосмотреть сообщение
Написал так потому, что пробовал )
Комментирую, всплывает следующая ошибка, строка 42, 44, 46 и т.д.
Поэтому в замешательстве.

Ну так выходит, что у тебя не получает бот данные в строке
PHP код:
params self.getAppParams('609744'
Нужно смотреть функцию getAppParams, и почему она коряво работает. Скорее всего проблема в строке получения matcher. Я не юзаю MR, но кажись должно быть так.
PHP код:
matcher re.compile('.*zombiefarm.html\?(.*?)"'
  Ответить с цитированием
Старый 30.09.2014, 18:03   #3356
 Пехотинец
Аватар для vintets
 
vintets скоро будет известенvintets скоро будет известенvintets скоро будет известен
Регистрация: 01.08.2012
Сообщений: 95
Популярность: 255
Сказал(а) спасибо: 28
Поблагодарили 54 раз(а) в 38 сообщениях
 
По умолчанию Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]

Цитата:
Сообщение от KORTEGПосмотреть сообщение
Всем привет!
Прочитал все темы по данному сабу.
Учёл все замечания, наставления, советы и прочее.
Питон работает, среда прописана, бот запускается, авторизация проходит.
Но при загрузке острова вылетает на ошибке в файле mrutils.py.
Строка довольно важная, и ,думаю, её закомментировать не будет смысла.

Кто может помочь по вопросу?
P.S. Пробую версии файлов бота от разных авторов.

Я могу помочь.
У тебя не приходят данные от сервера. Потому, что в mail в декабре 2013 изменился порядок авторизации в игре.
Я тут весь январь боролся и всех просил помочь. В итоге поковырявшись и получив опухшую голову переписал часть mrutils. Обращайся.

Там ещё особенность со списком друзей, но это нужно только для имён или для копателя.

P.S. +бонус первому позвонившему
анализ активности друзей с выводом в таблицу для excel (сразу как в excel ХЗ) и дальнейшей возможностью сортировать по любым параметрам:
Имя, id, ник, установлена ли ферма, уровень, баня,
последнее замеченное посещение (по возможности копать/стукам в наши ёлки/закопка нашего медведя)
+наличие перрона от копателя. И со ссылками на дом страницы для ручного выковыривания неугодных.
Вся эта красота дописана на 90%

Последний раз редактировалось vintets; 30.09.2014 в 18:16.
  Ответить с цитированием
Старый 30.09.2014, 23:02   #3357
 Разведчик
Аватар для KORTEG
 
KORTEG никому не известный тип
Регистрация: 11.02.2010
Сообщений: 0
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]

Цитата:
Сообщение от vintetsПосмотреть сообщение
Я могу помочь.
... переписал часть mrutils. Обращайся.

Если это не сложно, то поделись mrutils.py
  Ответить с цитированием
Старый 01.10.2014, 02:44   #3358
 Разведчик
Аватар для Lion1000+
 
Lion1000+ никому не известный тип
Регистрация: 03.07.2014
Сообщений: 0
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
 
По умолчанию Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]

[Ссылки могут видеть только зарегистрированные пользователи. ][Ссылки могут видеть только зарегистрированные пользователи. ]
подскажите в чём тут конкретно образовалась проблема? и как это "вылечить" ?
  Ответить с цитированием
Старый 01.10.2014, 23:30   #3359
 Разведчик
Аватар для megabyte0
 
megabyte0 никому не известный тип
Регистрация: 29.07.2014
Сообщений: 0
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 8 раз(а) в 5 сообщениях
 
По умолчанию Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]

Цитата:
Сообщение от Lion1000+Посмотреть сообщение
подскажите в чём тут конкретно образовалась проблема? и как это "вылечить" ?

Вопрос к тому, у кого Вы брали message_factory.py .
У меня такой строчки нет. Используйте стабильные работающие правки, а не eval(data). )
  Ответить с цитированием
Старый 01.10.2014, 23:50   #3360
 Разведчик
Аватар для dark-dragon
 
dark-dragon никому не известный тип
Регистрация: 30.08.2013
Сообщений: 0
Популярность: 10
Сказал(а) спасибо: 0
Поблагодарили 26 раз(а) в 21 сообщениях
 
По умолчанию Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]

Цитата:
Сообщение от megabyte0Посмотреть сообщение
Вопрос к тому, у кого Вы брали message_factory.py .
У меня такой строчки нет. Используйте стабильные работающие правки, а не eval(data). )

Да это еще из первоначальной версии, где писались файлы keys.txt и sig.txt. Вот и возник вопрос.
А по сути. Написано же "unexpected EOF (end of file)" = "неожиданный конец файла". Вариантов несколько, но самый вероятный - пустая строка где-то в файле sig.txt в неположенном месте или он вообще пустой

Правленный конечный вариант фунциклирует на ура. Юзайте его.
  Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Программа] Zombot (Клиент для игры Зомби ферма) AnonProger Баги игр ВКонтакте 189 26.08.2014 15:50
[Статья] Небольшие секреты игры зомби ферма haussuper Баги игр ВКонтакте 11 26.01.2013 10:54
[Информация] Зомби Ферма dekirillov Баги игр ВКонтакте 40 22.10.2011 18:25

Заявление об ответственности / Список мошенников

Часовой пояс GMT +4, время: 06:01.

Пишите нам: [email protected]
Copyright © 2024 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net