 |
Zombot (Клиент для игры Зомби ферма) [Обсуждение] - Свободное обсуждение - Ваши идеи, вопросы и ответы на тему браузерных игр и социальных сетей |
09.12.2013, 00:35
|
#511
|
|
|
|
Разведчик
|
 Регистрация: 09.11.2013
 Сообщений: 2
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 9 раз(а) в 8 сообщениях
|
Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
Автор бота был прав, написал бота и игрушка отпустила. Сделал бота ко второй задротской игрушке. Отличный метод избавления от зависимости. ))
|
|
|
09.12.2013, 02:35
|
#512
|
|
|
|
Разведчик
|
 Регистрация: 30.08.2013
 Сообщений: 0
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 26 раз(а) в 21 сообщениях
|
Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
вместо имени или к имени добавить id в вк - вида количество опыта - id в вк
и всё это в txt документ... *запускается раскомментированием чегонибудь =), в итоге раз в 10 дней сделаешь такое, сравнить изменение опыта и удалить не играющих
это былабы бомба если честно =)
|
|
 |
|
 |
|
Да можно сделать, мне бы только помощь от авторов бота чтобы в нормальном режиме без каких либо проблем эти данные получать. Вообще, по хорошему, было бы не плохо получать данные о друзьях в словарь еще на этапе инициализации игровых данных, загнать его в глобальную переменную, и просто юзать этот словарь при необходимости.
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
в ини добавляете 2й профиль и запускаете
|
|
 |
|
 |
|
Плохой совет, как по мне. Конечно, если в аккаунтах выполнять одно и тоже, то да, сойдет такой вариант (правда у меня выбор акка не срабатывает, вываливается ошибка), а если хоть чем-то действия отличаются, то чревато проблемами или непонятками. Я сделал для каждого акка отдельные файлы main_Ц.py, settings_Ц.ini, settings_Ц.py и game_engine_Ц.py, где Ц - номер акка, сделал в них небольшие исправления, и не знаю проблем. Запускаю все из одной папки. Меняются только game_engine.py и settings.ini при необходимости, остальное все общее.
Кому будет интересно. Получаем максимальный objId на своей ферме.
Код:
loc_inf = self._get_game_state().get_state().locationInfos
max_game_objId = 0
for _i in loc_inf:
if _i.maxGameObjectId > max_game_objId: max_game_objId = _i.maxGameObjectId
Добавляем к max_game_objId единичку и получаем точку отсчета для посадки фруктовых деревьев. Дерзайте.
Последний раз редактировалось dark-dragon; 09.12.2013 в 03:12.
|
|
|
09.12.2013, 02:57
|
#513
|
|
|
|
Разведчик
|
 Регистрация: 18.07.2010
 Сообщений: 14
 Популярность: 10
 Сказал(а) спасибо: 16
Поблагодарили 1 раз в 1 сообщении
|
Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
Zju, а точно не активирован уже проездной? Просто бот и не будет ничего делать, если есть активация.
Если нету активного проездного и бот не создает его, то нужно ставить в CreateTicket промежуточные индикаторы выводом сообщений на экран и отлавливать на чем затуп.
Ошибки, если появляются, то лучше их фиксировать и присылать мне в ЛС или выкладывать тут, для разбора полетов.
Добавлено через 4 минуты
Zju, бот может молчать еще, если не хватает чего-то для создания проездного. Не делал индикатор нехватки компонентов.
|
|
 |
|
 |
|
Да ошибка уже была описана As1x89, несколькими страницами раньше, а именно тут. Причем, при запуске бота проездной прекрасно создавался, но сделав круг по островам и вернувшись на остров с фургончиком бот выдавал то что выше. То есть после создания проездного, при обращении к фургончику выскакивала такая ошибка с итемом. Сейчас модуль не работает вообще.
|
|
|
09.12.2013, 03:02
|
#514
|
|
|
|
Разведчик
|
 Регистрация: 30.08.2013
 Сообщений: 0
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 26 раз(а) в 21 сообщениях
|
Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
Zju, ту ошибку в частном порядке победили вставкой после
Код:
for _item in list(st_items):
проверки
Код:
if hasattr(_item,'item'):
Модуль срабатывает только на домашнем острове, на других островах он не должен вообще реагировать на что-то
|
|
|
09.12.2013, 03:15
|
#515
|
|
|
|
Разведчик
|
 Регистрация: 18.07.2010
 Сообщений: 14
 Популярность: 10
 Сказал(а) спасибо: 16
Поблагодарили 1 раз в 1 сообщении
|
Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
Модуль срабатывает только на домашнем острове, на других островах он не должен вообще реагировать на что-то
|
|
 |
|
 |
|
очевидно, что на домашнем фургончик и должен стоять как на главном о. с которого начинается круг, и на который падает в случае ошибки.
частный вопрос, а что если сменить идентификатор острова
Код:
_loc = self._get_game_state().get_game_loc().get_location_id()
if _loc == u'main':
на ид другого острова Фурго не найдется?)
Частный порядок записал, спасибо, но смущает полный игнор бота на модуль)
|
|
|
09.12.2013, 03:25
|
#516
|
|
|
|
Разведчик
|
 Регистрация: 30.08.2013
 Сообщений: 0
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 26 раз(а) в 21 сообщениях
|
Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
а что если сменить идентификатор острова
на ид другого острова Фурго не найдется?)
Частный порядок записал, спасибо, но смущает полный игнор бота на модуль)
|
|
 |
|
 |
|
Если фургон стоит на том острове, чей id ты указал, то будет там искать его. Но я, когда писал код, не ставил проверки его отсутствия, так что он должен реально там быть. Ошибка, которая выскакивала при проверке компонентов, возникала по причине наличия на складе среди предметов каких-то инородных объектов.
Полный игнор модуля может быть только в случаях:
1. Остров с фургоном отсутствует в списке посещаемых
2. Уже активен проездной
3. Выключен модуль в game_engine.
Если же все пункты исключены, то нужно, как я писал ранее, ставить в модуле маркеры с выводом сообщений на экран, для проверки места затупа. Но модуль работает не только у меня, поэтому более вероятен пунктик из списка.
|
|
|
09.12.2013, 03:42
|
#517
|
|
|
|
Разведчик
|
 Регистрация: 18.07.2010
 Сообщений: 14
 Популярность: 10
 Сказал(а) спасибо: 16
Поблагодарили 1 раз в 1 сообщении
|
Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
|
|
|
09.12.2013, 03:51
|
#518
|
|
|
|
Разведчик
|
 Регистрация: 03.11.2012
 Сообщений: 30
 Популярность: 238
 Сказал(а) спасибо: 26
Поблагодарили 3 раз(а) в 3 сообщениях
|
Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
|
|
|
09.12.2013, 05:07
|
#519
|
|
|
|
Разведчик
|
 Регистрация: 23.08.2013
 Сообщений: 1
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 2 раз(а) в 2 сообщениях
|
Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
в итоге раз в 10 дней сделаешь такое, сравнить изменение опыта и удалить не играющих
|
|
 |
|
 |
|
Ну делал я отслеживание (писал в текстовый файлик дату, если человек "был в игре"). Следил... Пока не сделали "чертиков", которых можно дарить "неиграющим". Теперь просто выписываешь тех, кому можно подарить чертика, ищешь их в игре, и получаешь имя.
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
Да можно сделать, мне бы только помощь от авторов бота чтобы в нормальном режиме без каких либо проблем эти данные получать. Вообще, по хорошему, было бы не плохо получать данные о друзьях в словарь еще на этапе инициализации игровых данных, загнать его в глобальную переменную, и просто юзать этот словарь при необходимости.
|
|
 |
|
 |
|
Этот "словарь" - game state. В крайнем случае можно сделать запрос конкретно по пользователю (не помню синтаксис, но когда ты загружаешь те же подарки, игра перезапрашивает информацию по пользователю). Просто поЧарлите...
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
Плохой совет, как по мне. Конечно, если в аккаунтах выполнять одно и тоже, то да, сойдет такой вариант (правда у меня выбор акка не срабатывает, вываливается ошибка), а если хоть чем-то действия отличаются, то чревато проблемами или непонятками. Я сделал для каждого акка отдельные файлы main_Ц.py, settings_Ц.ini, settings_Ц.py и game_engine_Ц.py, где Ц - номер акка, сделал в них небольшие исправления, и не знаю проблем. Запускаю все из одной папки. Меняются только game_engine.py и settings.ini при необходимости, остальное все общее.
|
|
 |
|
 |
|
Опять не понятно, зачем. У меня на Винде спокойно крутится четыре учетных записи. В Линуксе вообще семь без проблем. Один INI файл, все отлично запускается из одной директории, никаких ошибок не выдает (кроме как если проблемы в игре).
Последний раз редактировалось mike4kz; 09.12.2013 в 05:15.
|
|
|
09.12.2013, 12:26
|
#520
|
|
|
|
Разведчик
|
 Регистрация: 30.08.2013
 Сообщений: 0
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 26 раз(а) в 21 сообщениях
|
Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
Этот "словарь" - game state.
|
|
 |
|
 |
|
Лолшито? Ты хоть больше нигде такую глупость не пиши.
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
В крайнем случае можно сделать запрос конкретно по пользователю (не помню синтаксис, но когда ты загружаешь те же подарки, игра перезапрашивает информацию по пользователю). Просто поЧарлите...
|
|
 |
|
 |
|
Игра ничего не перезапрашивает. Инфа о хотелках друзей получается при входе в игру и не меняется, пока не перезагрузишь её.
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
Один INI файл, все отлично запускается из одной директории, никаких ошибок не выдает (кроме как если проблемы в игре).
|
|
 |
|
 |
|
Оно и понятно, когда ничего не делаешь, а юзаешь готовое. А я допиливаю под себя, плюс в свободное время просто изучаю что и как можно получить в игре через бота. Поэтому постоянно делаю изменения в game_engine одного из аккаунтов, а остальные работают, как и положено.
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
Опять не понятно, зачем.
|
|
 |
|
 |
|
Не удивительно, судя по постам, ты либо тролль, либо просто звездобол. Либо и то и другое. Кроме голословных постов ничего нету.
|
|
|
09.12.2013, 15:39
|
#521
|
|
|
|
Разведчик
|
 Регистрация: 23.08.2013
 Сообщений: 1
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 2 раз(а) в 2 сообщениях
|
Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
Не удивительно, судя по постам, ты либо тролль, либо просто звездобол. Либо и то и другое. Кроме голословных постов ничего нету.
|
|
 |
|
 |
|
Мальчик... У мебя бот ходит по всем друзьям, копает те элементы, которые я хочу, оставляет пряники под елками, когда было нужно, "садился за стол", "пинал тыквы" и т.д. Другая версия ищет секретные клады на всех островах, даже если на них нет прямых переходов. Буду ли я делиться этим? С такими как ты? Однозначно нет. Тот же Реган-46, как я понял, ушел именно из-за таких как ты. Засим и я прощаюсь...
|
|
|
09.12.2013, 15:56
|
#522
|
|
|
|
Разведчик
|
 Регистрация: 30.08.2013
 Сообщений: 0
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 26 раз(а) в 21 сообщениях
|
Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
mike4kz, мальчиком будешь называть своего сына.
Судя по твоим текстам, ты не знаешь как взаимосвязаны между собой файлы бота, не в курсе даже, что содержит в себе GameState, поэтому я очень сомневаюсь, что бот, если он и умеет делать описанное, написал ты собственноручно. И поделиться ничем ты не можешь, потому что не знаешь где оно находится.
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
Тот же Реган-46, как я понял, ушел именно из-за таких как ты
|
|
 |
|
 |
|
Во-первых, какой Реган? Во-вторых, президента Кеннеди тоже по моему заказу завалили. )))
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
Засим и я прощаюсь...
|
|
 |
|
 |
|
Ручкой помахать в след? Ни горячо ни холодно от твоего присутствия в этой ветке форума, ни грамма помощи от тебя никто тут не увидел, как и ни кусочка кода.
Последний раз редактировалось dark-dragon; 09.12.2013 в 16:02.
|
|
|
09.12.2013, 17:12
|
#523
|
|
|
|
Разведчик
|
 Регистрация: 23.08.2013
 Сообщений: 1
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 2 раз(а) в 2 сообщениях
|
Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
Во-первых, я не профессионашьный программист. Да, изучал когда-то, лет двадцать пять назад. Питон изучил буквально недавно, для допиливания данного бота.
Во-вторых, я пишу для себя, для собственного удовольствия. Поэтому у меня не "конечный продукт" как у автора Бота, а "набор прототипов" с кучей комментариев и вспомогательных логов. Поэтому выкладывать его в публичный доступ не буду. Поделиться "ноу-хау" (как это все работает) - могу. Но не более того.
Теперь по претензиям ко мне...
 |
Цитата: |
 |
|
|
|
|
|
|
|
 |
Цитата: |
 |
|
|
|
|
|
|
|
 |
Цитата: |
 |
|
|
|
|
|
|
|
было бы не плохо получать данные о друзьях в словарь еще на этапе инициализации игровых данных, загнать его в глобальную переменную, и просто юзать этот словарь при необходимости. |
|
 |
|
 |
|
Этот "словарь" - game state. |
|
 |
|
 |
|
Ты хоть больше нигде такую глупость не пиши. |
|
 |
|
 |
|
Информация о друзьях хранится в:
Код:
self._get_game_state().get_state().playersInfo
Поставь метку PDB где-нибудь в игре, и посмотри, что там хранится. Там (в get_state()) хранится ВСЕ. Поэтому сохранять отдельную "базу данных" или "переменную" не имеет смысла.
 |
Цитата: |
 |
|
|
|
|
|
|
|
 |
Цитата: |
 |
|
|
|
|
|
|
|
В крайнем случае можно сделать запрос конкретно по пользователю (не помню синтаксис, но когда ты загружаешь те же подарки, игра перезапрашивает информацию по пользователю). Просто поЧарлите... |
|
 |
|
 |
|
Игра ничего не перезапрашивает. Инфа о хотелках друзей получается при входе в игру и не меняется, пока не перезагрузишь её. |
|
 |
|
 |
|
Если ты никогда не отслеживал ВСЕ запросы в игре, это еще не означает, что этого не существует. Игра ПОСТОЯННО перезапрашивает информацию по "друзьям". Даже более того - в начальном запросе ВСЕ друзья зачастую просто не помещаются в начальный ответ (на запрос START), поэтому игра шлет отдельные запросы на получение дополнительной информации или с индивидуальным пользователем, или со списком друзей:
Код:
{
"type":"EVT",
"id":11111111,
"events":[
{
"type":"players",
"id":3,
"action":"getInfo",
"players":[
"99999999","88888888",...]
}
}
И в ответ получат следующее:
Код:
{
"cmd":"EVT",
"id":"22222222",
"events":[
{
"type":"playersInfo",
"id":"3",
"action":"getInfo",
"players":[
{
"id":"99999999",
"name":"John Doe",
"exp":5552400,
"level":64,
"liteGameState":{
"wishlist":[null,null,null,"@CR_25"],
"playerSettings":{"userName":"John Doe","dressId":"CL_SHIRT01_2","hatId":"CL_ROADCONE_DEF"},
"haveTreasure":true},
"playerStatus":"@PS_HUMAN",
"statusByCountedItems":[{"count":1,"item":"@ST_01"}]
}
Причем этот запрос можно посылать когда угодно, и он обновит GameState.
 |
Цитата: |
 |
|
|
|
|
|
|
|
 |
Цитата: |
 |
|
|
|
|
|
|
|
Плохой совет, как по мне. Конечно, если в аккаунтах выполнять одно и тоже, то да, сойдет такой вариант (правда у меня выбор акка не срабатывает, вываливается ошибка), а если хоть чем-то действия отличаются, то чревато проблемами или непонятками. Я сделал для каждого акка отдельные файлы main_Ц.py, settings_Ц.ini, settings_Ц.py и game_engine_Ц.py, где Ц - номер акка, сделал в них небольшие исправления, и не знаю проблем. Запускаю все из одной папки. Меняются только game_engine.py и settings.ini при необходимости, остальное все общее. |
|
 |
|
 |
|
Опять не понятно, зачем. У меня на Винде спокойно крутится четыре учетных записи. В Линуксе вообще семь без проблем. Один INI файл, все отлично запускается из одной директории, никаких ошибок не выдает (кроме как если проблемы в игре). |
|
 |
|
 |
|
Повторюсь... У меня что на Винах, что на Линуксе ОДНОВРЕМЕННО крутятся несколько аккаунтов. Причем безо всяких конфликтов. Процесс запускает свой собственный процесс Питона, со своим статусом, своими адресным пространством и т.д. Файл game_engine.py если и редактируется, то только для "глобальных изменений" (если добавляется какой-то новый бот или комментируется то, что не должно в данный момент запускаться). Поэтому это наименее редактируемый файл. Гораздо чаще редактируются файлы в game_actors_and_handlers (собственно сами боты). Да, я держу "разный функционал" в разных директориях, так как "хождение по собственным остравам" достаточно глупо совмещать с "хождением по друзьям" или "поиском сокровищ"). В этом случае у меня отдельные директории с разными game_engine. Но в случае однотипных действий для разных учетных записей, все отлично функционирует из одной директории.
PS. Что же по-поводу "хождения по друзьям"... Я ни у кого не видел обработчика события "ping1" и "ping2". Это КРИТИЧЕСКИ ВАЖНО, особенно при хождении по чужим островам. Просто к сведению... Переход к другу осуществляется той же функцией "ChangeLocationBot". Естественно, ее нужно модифицировать, чтобы подставлять ID друга, который можно передать или в виде options (как я дела на первых этапах), или сохранять в дополнительном файле статуса (что позволяет "продолжать" хождение по списку без "рестарта с нуля"). Но ответом на "переход к другу" приходит event с ping1, на который нужно отправить пустой event, и тогда в ответ прийдет вся информация об острове друга.
Последний раз редактировалось mike4kz; 09.12.2013 в 17:15.
|
|
|
09.12.2013, 18:21
|
#524
|
|
|
|
Разведчик
|
 Регистрация: 30.08.2013
 Сообщений: 0
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 26 раз(а) в 21 сообщениях
|
Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
Во-первых, я не профессионашьный программист. Да, изучал когда-то, лет двадцать пять назад. Питон изучил буквально недавно, для допиливания данного бота.
|
|
 |
|
 |
|
Аналогично, только на 6 лет позже. И с питоном начал знакомиться только из-за бота. И ковыряюсь чисто для саморазвития.
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
Поэтому выкладывать его в публичный доступ не буду.
|
|
 |
|
 |
|
Так я об этом и не просил. У самого есть идеи, но не хватает знаний воплотить их в реальность, поэтому и просил помощи у знающих. Но вижу, что тут, большей частью, помощи не дождаться. Либо люди вообще не знают ничего, либо на столько загнанные знатоки и программисты, что тяжело даже пару строк написать в теме.
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
Информация о друзьях хранится в:
self._get_game_state().get_state().playersInfo
|
|
 |
|
 |
|
Не знаю у кого она там хранится и где, но нету атрибута такого у меня в gameState. В ВК точно. Может на других сетях есть, не знаю.
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
Если ты никогда не отслеживал ВСЕ запросы в игре, это еще не означает, что этого не существует. Игра ПОСТОЯННО перезапрашивает информацию по "друзьям". Даже более того - в начальном запросе ВСЕ друзья зачастую просто не помещаются в начальный ответ (на запрос START), поэтому игра шлет отдельные запросы на получение дополнительной информации или с индивидуальным пользователем, или со списком друзей:
"action":"getInfo"
|
|
 |
|
 |
|
Ну а как, по твоему, я получал всю инфу, которую указал тут? При этом указал на проблему, которую не могу победить самостоятельно. Но ведь проще знающим промолчать, чем напрягаться.
И с хождением по друзьям разобрался, но имею ту же проблему с отловом событий.
В общем ладно, что знаю, тем помогу просящим, а в остальном просто забью. Мне хватает функционала бота с головой. А клады я уже давно не копаю, только по квестам.
|
|
|
09.12.2013, 19:09
|
#525
|
|
|
|
Разведчик
|
 Регистрация: 23.08.2013
 Сообщений: 1
 Популярность: 10
 Сказал(а) спасибо: 0
Поблагодарили 2 раз(а) в 2 сообщениях
|
Re: Zombot (Клиент для игры Зомби ферма) [Обсуждение]
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
Не знаю у кого она там хранится и где, но нету атрибута такого у меня в gameState. В ВК точно. Может на других сетях есть, не знаю.
|
|
 |
|
 |
|
Ставишь чекпоинт PDB в любом месте бота, и смотришь, какие атрибуты есть в self (>p dir(self)... >p dir(self._get_game_state().get_state())... и т.д.)
 |
Цитата: |
 |
|
|
|
|
|
|
|
|
И с хождением по друзьям разобрался, но имею ту же проблему с отловом событий.
В общем ладно, что знаю, тем помогу просящим, а в остальном просто забью. Мне хватает функционала бота с головой. А клады я уже давно не копаю, только по квестам.
|
|
 |
|
 |
|
Отлов событий делается в game_engine.py. Просто делаешь handle, добавляешь его в обработчик событий и все. Другое дело, что в этом случае "отлавливание" события произойдет только тогда, когда программа выйдет из "бота" (из actor_classes). Поэтому в некоторых случаях я делаю обработку событий прямо в бот-классе. Отправил EVENT, подождал секунды 3-4 для надежности, а потом запускаешь местную копию handleEvent (из game_engine, где-то в конце). Тогда можно обрабатывать события не выходя из процедуры.
Последний раз редактировалось mike4kz; 09.12.2013 в 19:16.
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Заявление об ответственности / Список мошенников
Часовой пояс GMT +4, время: 02:03.
|
 |