Перейти к содержимому


Фотография

Файл реплея


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 12

#1 Formular

Formular

    Администратор

  • Администраторы
  • Cообщений: 359
  • ГородСидней

Отправлено 09 Август 2018 - 23:55

Парни надо разбирать файл реплея...

А то всё делалось для ZH, надо переделывать.

Вот пример реплея:

GENREP\…l[јЊl[ј            >A;54=89  >2B>@  в PP r o j e c t   R a p t o r   9 . 1 . 1 3   [ Z e r o   H o u r   1 . 4 ]   2 0 1 7   O c t   1 7   2 0 0 5   1 7 : 3 1 : 2 5    K+Ъfщ.њUS=1;M=03userdata/maps/snow feud +;MC=C0475F6C;MS=283281;SD=14663953;C=100;SR=1;SC=10000;O=N;S=H927AVIApolk,1968334E,8088,TT,3,-1,-1,-1,1:HFORMULAR,194D60CC,8088,TT,1,-1,-1,-1,1:HAkuma_rus,1952D072,8088,TT,7,-1,0,-1,1:HGen_Tao,190CC70B,8088,TT,-1,-1,2,-1,1:HGans,1933E3E5,8088,TT,5,-1,-1,-1,1:X:X:X:; 2 

 

Тут отображается:

Байт    Описание
----------------------------
0-5    Буквы GENREP, сигнатура
----------------------------
6-9    Начало игры, в секундах, начинается с 1 января 1970 по UTC (день рождения юникс?)
A-D    Конец игры, в секундах, начинается с 1 января 1970 по UTC (день рождения юникс?)
E-F    хз, чето значит
10-1B    хз, вродь как нули
----------------------------
1C->x    Внутреннее имя реплея, похоже на Unicode (текст по 2 байта на букву), кончается нулем байтов
x->y    хз, чето непонятное, кончается началом версии
y->z    Версия игры, в которой был снят реплей, Unicode, кончается нулем байт
z->q    Дата выпуска версии игры (патча), Unicode, кончается нулем байт
+4байта    хз, вродь постоянно
+4байта    хз, вродь постоянно
+4байта хз, вродь меняется
-----------------------------
US = <число>;    хз, бывает 0, 1 или хз
M = <число>    хз, иногда 07, иногда другое
maps/<карта>;    имя карты, на котороый играется реплей
MC=<хекс>;    CRC32 файла карты, 0 если QM
MS=<размер>;    длина файла карты, 0 если QM
SD=<число>;    число генерации рандома
C=100;        хз, вродь постоянно
SR=<чисто>;    хз, бывает 0, 1 или хз
SC=<баксы>;    стартовый капитал
O=N;        хз, вродь постоянно
-----------------------------
S=        начало списка игроков, перечисляются 8 игроков, отделяемых через ":", конец - ";"
{
H/C/X/O        H=живой игрок, C=бот, X=нет игрока, O=хз
 
H:
<ник>,        ник игрока
<хекс>,        IP адрес в хексе
<число>,    порт коннекта
TT / FT,    TT, если игра не QM, FT если QM
<цвет>,        цвет игрока, -1=рандом
<фракция>,    армия игрока, -1=рандом :(
<позиция>,    индекс позиции игрока на мапе, -1=рандом
<команда>,    тим игрока, -1=team none
<число>        хз, вродь меняется
 
E/M/H,        e=easy, m=medium, h=hard
<цвет>,        цвет бота, -1=рандом
<фракция>,    армия бота, -1=рандом :(
<позиция>,    индекс позиции бота на мапе, -1=рандом
<команда>,    тим бота, -1=team none
 
X:
 
O:
 
}
-----------------------------
+1байт        нулевой байт
+1байт        индекс игрока, записавшего реплей

Вот название генералов

$this->gzhreparmy[-2] = 'Observer';
$this->gzhreparmy[-1] = 'Random';
$this->gzhreparmy[2] = 'USA';
$this->gzhreparmy[3] = 'China';
$this->gzhreparmy[4] = 'GLA';
$this->gzhreparmy[5] = 'USA SW'; 
$this->gzhreparmy[6] =  'USA Laser';
$this->gzhreparmy[7] = 'USA Air'; 
  $this->gzhreparmy[8] = 'China Tank';
$this->gzhreparmy[9] = 'China Inf';
$this->gzhreparmy[10] = 'China Nuke';
$this->gzhreparmy[11] = 'GLA Toxin';
$this->gzhreparmy[12] = 'GLA Demo';
$this->gzhreparmy[13] = 'GLA Stealth';
 
Цвета
$this->gzhrepcolor[-1] = '#000000';
$this->gzhrepcolor[0] = '#DDE20D';
$this->gzhrepcolor[1] = '#FF0000';
$this->gzhrepcolor[2] = '#4368FE';
$this->gzhrepcolor[3] = '#3ED12E';
$this->gzhrepcolor[4] = '#FFA019';
$this->gzhrepcolor[5] = '#32D7E6';
$this->gzhrepcolor[6] = '#9600C8';
$this->gzhrepcolor[7] = '#FF96FF';
 
Уровень бота
$this->gzhrepbottype['H'] = 'Hard';
$this->gzhrepbottype['M'] = 'Medium';
$this->gzhrepbottype['E'] = 'Easy';

  • 927AVIApolk, shmiga092, GulliesGes и 2 другим это нравится

#2 Formular

Formular

    Администратор

  • Администраторы
  • Cообщений: 359
  • ГородСидней

Отправлено 10 Август 2018 - 01:29

Итак я выбирал цвета

Красный

Зеленый

Голубой

Фиолтеовый

Синий

Оранжевый

Розовый

Желтый

 

Реплей выдал:

желтый

Красный

Синий

Зеленый

Оранжевый

Голубой

Фиолетовый

Розовый

Название файла Дата игры Длительность Стартовый капитал
00000000.rep 09.08.2018 22:28 0:00:28 10 000$
Sand Storm (corrected) V1
Formular Random Team 1
Hard Random Team None
Hard Random Team None
Hard Random Team None
Hard Random Team None
Hard Random Team None
Hard Random Team None
Hard Random Team None

Прикрепленные файлы



#3 Formular

Formular

    Администратор

  • Администраторы
  • Cообщений: 359
  • ГородСидней

Отправлено 10 Август 2018 - 01:27

После TT идет цвет. надо перепрвоерить.

У меня они так обозначены.

$this->gzhrepcolor[-1] = '#000000'; черный
$this->gzhrepcolor[0] = '#DDE20D'; желтый 
$this->gzhrepcolor[1] = '#FF0000'; красный
$this->gzhrepcolor[2] = '#4368FE'; голубой
$this->gzhrepcolor[3] = '#3ED12E'; зеленый
$this->gzhrepcolor[4] = '#FFA019'; оранжевый
$this->gzhrepcolor[5] = '#32D7E6'; морской волны
$this->gzhrepcolor[6] = '#9600C8'; фиолетовый
$this->gzhrepcolor[7] = '#FF96FF'; розовый


#4 Formular

Formular

    Администратор

  • Администраторы
  • Cообщений: 359
  • ГородСидней

Отправлено 10 Август 2018 - 01:35

Иногда выдается цвет черный, не знаю почему, это значение -1 после TT

Вот пример реплея, я его почему то даже посмотреть не могу...

Полк проверь ты?

Я закидываю его в папку и он даже не отображается...

Название файла Дата игры Длительность Стартовый капитал
Pobeda akumi.rep 10.08.2018 05:04 0:35:17 10 000$
Snowflake [rotr][tao]
Gen_Tao Random Team None
Akuma_rus Random Team 0
Gans Random Team None

Прикрепленные файлы



#5 Formular

Formular

    Администратор

  • Администраторы
  • Cообщений: 359
  • ГородСидней

Отправлено 10 Август 2018 - 11:54

#ebf0f3F

названия карт в нижний регистр. class_genzhreplay.php закомметил строки 176-178, и добавил 179



#6 927AVIApolk

927AVIApolk

    Отдел по информационной войне

  • Модераторы
  • Cообщений: 972
  • ГородЗасекречен

Отправлено 10 Август 2018 - 12:01

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



#7 Formular

Formular

    Администратор

  • Администраторы
  • Cообщений: 359
  • ГородСидней

Отправлено 10 Август 2018 - 12:30

Картинки по умолчанию теперь не будут отображаться в реплее, а будут отображаться только в том случае, если preview присутствует на сервере.

Когда добавим все картинки, во всех старых релеях, которые были загружены ранее - картинки появятся. 

Название файла Дата игры Длительность Стартовый капитал
1v1v1 2018.04.28 23.24 927AVIApolk vs iskander m vs Resident.rep 28.04.2018 20:24 0:39:21 10 000$
Raraku Island Zh V2(revised)
927AVIApolk China Team None
iskander m Random Team None
Resident Random Team None

Прикрепленные файлы



#8 927AVIApolk

927AVIApolk

    Отдел по информационной войне

  • Модераторы
  • Cообщений: 972
  • ГородЗасекречен

Отправлено 30 Ноябрь 2018 - 16:36

я взял реплей специально с США открыл код и не могу там найти $this->gzhreparmy[2] = 'USA, у меня вопрос в каком положении строк тебе удается понять что это был США? пробовал вбивать в поиск слово gzhreparmy и USA никаких результатов

Название файла Дата игры Длительность Стартовый капитал
gans 1 p.rep 16.11.2018 19:13 0:29:59 10 000$
Td Nobugs Zh V1
927AVIApolk USA Team 2
Gans Random Team None

Прикрепленные файлы



#9 Formular

Formular

    Администратор

  • Администраторы
  • Cообщений: 359
  • ГородСидней

Отправлено 30 Ноябрь 2018 - 18:51

Это мой текст, я могу что угодно написать.

Тебе надо смотреть на цифры!

 

Вот название генералов

$this->gzhreparmy[-2] = 'Observer';
$this->gzhreparmy[-1] = 'Random';
$this->gzhreparmy[2] = 'USA';
$this->gzhreparmy[3] = 'China';
$this->gzhreparmy[4] = 'GLA';
$this->gzhreparmy[5] = 'USA SW'; 
$this->gzhreparmy[6] =  'USA Laser';
$this->gzhreparmy[7] = 'USA Air'; 
  $this->gzhreparmy[8] = 'China Tank';
$this->gzhreparmy[9] = 'China Inf';
$this->gzhreparmy[10] = 'China Nuke';
$this->gzhreparmy[11] = 'GLA Toxin';
$this->gzhreparmy[12] = 'GLA Demo';
$this->gzhreparmy[13] = 'GLA Stealth';


#10 927AVIApolk

927AVIApolk

    Отдел по информационной войне

  • Модераторы
  • Cообщений: 972
  • ГородЗасекречен

Отправлено 30 Ноябрь 2018 - 19:04

))) а зачем тогда он этот список если ты сам его составил?

ты не знаешь по каким строчкам, та формула которая у тебя есть на данный момент, каким образом она определяет различия генералов? мне нужно это  чтобы я мог отслеживать босса и ополчение, нужно увидеть какой то конкретный пример, чтобы я понимал в каком уровне строчек примерно, происходят изменения. А то придется полностью все сначала изучать

 

у тебя же есть какой то алгоритм, по которому скрипты находят в файле реплея, нужных генералов из ZH, он единый цельный? или там свалено все в 1 кучу? или есть какаето разбивка, по генералам? может есть отступы пробелы, между генералами?


Сообщение отредактировал 927AVIApolk: 30 Ноябрь 2018 - 19:06


#11 Formular

Formular

    Администратор

  • Администраторы
  • Cообщений: 359
  • ГородСидней

Отправлено 30 Ноябрь 2018 - 22:04

Ты вообще читал моё первое сообщение в этой теме?) там вся расшифоровка файла реплея. Но она не точная. Надо выяснять закономерность.

В файле релея нет никаких названий генералов, там только цифры! и какие-то цифры с расположением соответствуют какому то генералу.

Как проверять?

Создаешь игру именно сетевую, с одним условием - далее сохраняешь реплей. Потом создаешь еще одну игру, но например изменив цвет или генерала - опять сохраняешь репелей и смотришь что изменилось. И так надо сделать очень много раз... Я бы давно сделал это, если бы знал закономерность  и мне кто-то помогал бы. Одному это делать пипец как долго. 


  • TeckMiX это нравится

#12 927AVIApolk

927AVIApolk

    Отдел по информационной войне

  • Модераторы
  • Cообщений: 972
  • ГородЗасекречен

Отправлено 30 Ноябрь 2018 - 22:29

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

 

вот есть такой сайт онлайн сравнение текстов. надо будет попробовать может через его что то отсортировать удастся и найти отличия

 

http://text.num2word.ru/


Сообщение отредактировал 927AVIApolk: 30 Ноябрь 2018 - 22:32


#13 927AVIApolk

927AVIApolk

    Отдел по информационной войне

  • Модераторы
  • Cообщений: 972
  • ГородЗасекречен

Отправлено 30 Ноябрь 2018 - 22:39

пробую открывать, не через блокнот, а через IDA Pro

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

 

2018-11-30_22-37-40.jpg


Сообщение отредактировал 927AVIApolk: 02 Декабрь 2018 - 21:10





Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных