Для входа на форум нажмите здесь
Новые комментарии
Датамайнинг клиента игры
Автор темы: nORb Dragon_renamed_41442_28082025
Дата создания: 30.04.2019 09:25
Аватар для nORb Dragon_renamed_41442_28082025
Предводитель
Датамайнинг клиента игры
Ссылки на полезные ресурсы:
Публичный архив изменений по датамайну на «E7 Vault»

Ссылки на полезные посты:
потрошилки пакетов/архивов:
data.pack (скрипты на python) - https://forums.goha.ru/showthread.ph...#post159273387 (версия 2.7 от 2021.12.02)
*.bank (скрипты на python, только под Windows) - https://forums.goha.ru/showthread.ph...#post159275908
описание потрошения звуковых файлов (.bank) - https://forums.goha.ru/showthread.ph...#post158649085
конверсия формата файлов:
db-файл в csv-формат (скрипты на python) - https://forums.goha.ru/showthread.ph...#post159274578
(ВНИМАНИЕ! поддерживается пока только старый формат, использовавшийся до патча от 2021.06.10)
scsp-файл в json-формат (скрипты на python) - https://forums.goha.ru/showthread.ph...#post159272975
(ВНИМАНИЕ! поддерживается пока только старый формат, использовавшийся до патча от 2021.06.10)


Если у кого есть мысли, идеи, предложения или даже конкретные "программные продукты" для датамайна Epic Seven - пишем, не стесняемся. Открытый код - приветствуется!

В случае, если есть что обсудить со мной, но лень регистрироваться на гохе, меня можно найти и на reddit: /u/nORbDragon

not an Ordinary Rainbow Dragon - анахроничный танцующий с лезвиями дракон

Epic Seven, сводки с полей:
набор в гильдию «NightHawks» (свободных мест нет)
Последний раз редактировалось nORb Dragon_renamed_41442_28082025; 12.01.2022 в 00:11.
1 пользователь оценил это сообщение: Показать
Аватар для nORb Dragon_renamed_41442_28082025
Предводитель
Re: Датамайнинг клиента игры
Сообщение от Rejiqu:
Но попробую внести пару копеек
Вообще, неплохая находка для дальнейшего анализа.

Добавлено через 24 минуты

Сообщение от nORb Dragon:
Обнаружил, что e7herder юзает тоже самописный формат для склейки модели.
Поправлю себя.

Движок e7herder настолько стар, что поддерживает только формат spine v.2.1.27. В этом его сила и его слабость.

Сила: он читает и показывает модельки, сделанные в v.2.1.27.

Слабость: не поддерживает формат spine v.3.x.xx


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

Часть блоков в скинах и анимации я тупо выкинул при конверсии как "не поддерживается в e7herder".


Нашёл на официальном сайте spine официальный веб-плеер (упоминал выше) - http://en.esotericsoftware.com/spine-player

Его плюсы: поддерживает полностью все форматы, начиная с 3.x

Минус: НЕ поддерживает формат 2.1.27


Думаю над конвертером, который будет хреначить инфу по старым моделькам сразу в формат 3.8.x... И выкинуть в окно старый e7herder, как "устаревший морально и физически". Возможно, что автор e7herder поэтому и забил на свой проект.

Добавлено через 32 минуты

Сообщение от Rejiqu:
пару копеек
Вообще, выглядит очень интересно. Выглядит как 9 блоков по 8 байт, где первые два байта - хз что, а следующие 6 байтов - одинаковые для обоих вариантов.

Код:
f9 c2 e4 3d 85 99 16 3e 9a 64 64 3e ff 95 95 3e 92 96 aa 3e e6 3a dd 3e 74 ef e1 3e 55 4d 10 3f 6d e7 0b 3f 3d 0a 2f 3f 54 e3 25 3f c4 03 4a 3f 64 b4 3e 3f 82 69 60 3f 8f 23 56 3f 10 6b 71 3f c8 f9 6b 3f 07 38 7c 3f
d1 b4 e4 3d 85 99 16 3e 6f 4b 64 3e ff 95 95 3e cc 7d aa 3e e6 3a dd 3e b4 c9 e1 3e 55 4d 10 3f d9 ce 0b 3f 3d 0a 2f 3f 04 c7 25 3f c4 03 4a 3f 7c 97 3e 3f 82 69 60 3f 63 0a 56 3f 10 6b 71 3f d9 e9 6b 3f 07 38 7c 3f
x     ^                 x     ^                 x     ^                 x     ^                 x     ^                 x     ^                 x     ^                 x     ^                 x     ^
9 * 6 = 54 байта. На 4 это не делится.

Ладно, если отсеем "мусор" (?) получим такой набор байтов:
Код:
e4 3d 85 99 16 3e 
64 3e ff 95 95 3e 
aa 3e e6 3a dd 3e 
e1 3e 55 4d 10 3f 
0b 3f 3d 0a 2f 3f 
25 3f c4 03 4a 3f 
3e 3f 82 69 60 3f 
56 3f 10 6b 71 3f 
6b 3f 07 38 7c 3f
Осталось в них найти нужные нам [ 0.372, 0.48, 0.751, 1 ].

Но это может быть неправильным решением. Возможно, что это был не мусор, а просто "очень плавающая точка", которая при округлении даёт то же самое значение.

not an Ordinary Rainbow Dragon - анахроничный танцующий с лезвиями дракон

Epic Seven, сводки с полей:
набор в гильдию «NightHawks» (свободных мест нет)
Последний раз редактировалось nORb Dragon_renamed_41442_28082025; 13.12.2021 в 15:54. Причина: Добавлено сообщение
Аватар для nORb Dragon_renamed_41442_28082025
Предводитель
Re: Датамайнинг клиента игры
Вы мне таки не поверите. Но в процессе ковыряния над форматом json spine v.3 обнаружил, что там используется 16 значений с плавающей точкой, а не упомянутые по всей документации spine - 4 floats.

Возможно, что истина где-то рядом... Ковыряюсь дальше.

not an Ordinary Rainbow Dragon - анахроничный танцующий с лезвиями дракон

Epic Seven, сводки с полей:
набор в гильдию «NightHawks» (свободных мест нет)
Аватар для Rejiqu_renamed_1455499_20032025
Читатель
Регистрация:
04.11.2019
Re: Датамайнинг клиента игры
Решил свою пальму еще потрясти и упало еще несколько закономерностей. Что они означают подумаю потом (а лучше пусть другие подумают, хехе)
Код:
{"good": [ 0.265, 0, 0.617, 0.42 ],"bad": "
7d 99 a8 3d 2c 9a 4e 3c 12 8a 2d 3e d3 d9 49 3d
f3 af 85 3e aa bc dd 3d 13 bb b6 3e 22 59 40 3e 
5f ba e9 3e 5d 8f 92 3e e6 40 0f 3f 7e b3 cd 3e 
a8 72 2a 3f 71 5a 08 3f 71 5c 46 3f bd 57 2d 3f 
3b e8 62 3f 9a 5f 55 3f" },
    {"good": [ 0.264, 0, 0.617, 0.42 ],   "bad": "
15 1a a8 3d 2c 9a 4e 3c 68 25 2d 3e d3 d9 49 3d
25 76 85 3e aa bc dd 3d 73 82 b6 3e 22 59 40 3e 
37 89 e9 3e 5d 8f 92 3e 06 2e 0f 3f 7e b3 cd 3e 
45 66 2a 3f 71 5a 08 3f 26 56 46 3f bd 57 2d 3f 
75 e6 62 3f 9a 5f 55 3f" },
    {"good": [ 0.262, 0, 0.617, 0.43 ],   "bad": "
49 1b a7 3d 2c 9a 4e 3c 16 5c 2c 3e d3 d9 49 3d
8c 02 85 3e aa bc dd 3d 36 11 b6 3e 22 59 40 3e 
ec 26 e9 3e 5d 8f 92 3e 48 08 0f 3f 7e b3 cd 3e 
81 4d 2a 3f 71 5a 08 3f 93 49 46 3f bd 57 2d 3f 
ee e2 62 3f 9a 5f 55 3f" },
    {"good": [ 0.266, 0, 0.617, 0.42 ],   "bad": "
e3 18 a9 3d b5 2d 4a 3c bb ee 2d 3e 30 eb 45 3d 
c0 e9 85 3e c0 dd d9 3d b2 f3 b6 3e 26 66 3d 3e
85 eb e9 3e d6 a3 90 3e c5 53 0f 3f 40 7d cb 3e
0a 7f 2a 3f 6c 39 07 3f ba 62 46 3f 12 5c 2c 3f
fe e9 62 3f 56 c0 54 3f" },
    {"good": [ 0.255, 0, 0.619, 0.46 ],   "bad": "
c7 bb a3 3d 05 4c 60 3c c4 cd 29 3e 5b 94 59 3d 
77 9f 83 3e 48 38 ed 3d 56 d0 b4 3e 08 25 4c 3e 
26 31 e8 3e 71 3d 9a 3e c6 bc 0e 3f 6a 8c d6 3e 
98 30 2a 3f 7f de 0c 3f db 4f 46 3f 5f 46 31 3f
62 f6 62 3f 9d dc 57 3f" },
1 пользователь оценил это сообщение: Показать
Аватар для nORb Dragon_renamed_41442_28082025
Предводитель
Re: Датамайнинг клиента игры
Попытка конвертнуть 2.1.27 формат в 3.8.хх (не для слабонервных!) - https://www.norbdragon.com/uploads/epic7/spine/


not an Ordinary Rainbow Dragon - анахроничный танцующий с лезвиями дракон

Epic Seven, сводки с полей:
набор в гильдию «NightHawks» (свободных мест нет)
Аватар для Rejiqu_renamed_1455499_20032025
Читатель
Регистрация:
04.11.2019
Re: Датамайнинг клиента игры
Так мило моргает :D
Аватар для nORb Dragon_renamed_41442_28082025
Предводитель
Re: Датамайнинг клиента игры
Сообщение от Rejiqu:
Так мило моргает :D
Залил более свежий вариант. Теперь он не только моргает!

not an Ordinary Rainbow Dragon - анахроничный танцующий с лезвиями дракон

Epic Seven, сводки с полей:
набор в гильдию «NightHawks» (свободных мест нет)
Аватар для Darkmor
Мастер
Регистрация:
23.01.2019
Джентльмен Медаль "1К лайков"
Re: Датамайнинг клиента игры
Сообщение от nORb Dragon:
не для слабонервных
Это шедеврально.
Тебе надо эти фейлы собирать в отдельную директорию, а потом продавать права на фильм ужасов
Аватар для nORb Dragon_renamed_41442_28082025
Предводитель
Re: Датамайнинг клиента игры
Натянул вроде сову на глобус. Формат 2.1.27 конвертнул своими силами в 3.8.хх. Но есть, как обычно в таких случаях, ньюанс:
- e7herder - https://www.norbdragon.com/e7herder/...ype=5,id=c1018
- глобус - https://www.norbdragon.com/uploads/epic7/spine/

Рекомендую открыть эти две странички отдельно, понаблюдать за анимацией на обеих, чтоб понять о чём я. Подсказка: смотреть в глаза.

Проблема та же, что и с обрезанной анимацией из 3.8 в сторону старого e7herder. Формат для Bézier curve плавной анимации изменился. И я нигде не могу найти документации касаемо его изменений.

Размышляю теперь над "гибридным" вариантом. В зависимости от версии модельки показывать на экране или кусок от e7herder (spine v2.1.27) или свежий веб-плеер (spine v.3.8.xx).

Не хотел я ковыряться глубоко в коде скриптов сайта e7herder, но видно придётся.

not an Ordinary Rainbow Dragon - анахроничный танцующий с лезвиями дракон

Epic Seven, сводки с полей:
набор в гильдию «NightHawks» (свободных мест нет)
Аватар для nORb Dragon_renamed_41442_28082025
Предводитель
Re: Датамайнинг клиента игры
Сообщение от Darkmor:
Тебе надо эти фейлы собирать в отдельную директорию, а потом продавать права на фильм ужасов
Посмотрел, у меня всё выкинуто в утиль.

Пока не удалил, закинул сегодняшний шедевр сюда - https://www.norbdragon.com/uploads/epic7/spine3/

Ну и этот шедевр ещё сохранился - https://www.norbdragon.com/e7herder/...=5,id=norb0000

not an Ordinary Rainbow Dragon - анахроничный танцующий с лезвиями дракон

Epic Seven, сводки с полей:
набор в гильдию «NightHawks» (свободных мест нет)
Аватар для nORb Dragon_renamed_41442_28082025
Предводитель
Re: Датамайнинг клиента игры
@Darkmor

Хочешь интересную вещь, которую я обнаружил щаз ковыряясь в коде сайта e7herder?

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

Код:
                    if (
                        ((this.awakened = n),
                        (this.grade = e.Utils.Clamp(t, this.data.grade, 6)),
                        (this.level = e.Utils.Clamp(a, 1, 10 * this.grade)),
                        (this.attack = ~~(0.6 * this.data.bra * (this.level / 6 + 1) * (1 + 0.075 * (this.grade - 1)))),
                        (this.health = ~~((50 + 1.4 * this.data.int) * (this.level / 3 + 1) * (1 + 0.075 * (this.grade - 1)))),
                        (this.speed = ~~(60 + this.data.des / 1.6)),
                        (this.defense = ~~((30 + 0.3 * this.data.fai) * (this.level / 8 + 1) * (1 + 0.075 * (this.grade - 1)))),
                        (this.crit_rate = 0.15),
                        (this.crit_dmg = 1.5),
                        (this.eff = 0),
                        (this.eff_res = 0),
                        (this.coop = 0.05),
                        this.awakened && e7data.awakenings[this.data.awakening])
                    ) {
                        for (var s = {}, l = e7data.awakenings[this.data.awakening].stages, r = 0; r < this.grade; r++)
                            for (var i = 0; i < 3; i++) {
                                var c = l[r][0][i],
                                    o = l[r][1][i];
                                switch (c) {
                                    case 0:
                                    case 2:
                                    case 1:
                                    case 3:
                                    case 4:
                                    case 5:
                                    case 6:
                                    case 7:
                                    case 8:
                                        s[c] || (s[c] = 0), (s[c] += o);
                                        break;
                                    case 9:
                                    case 11:
                                    case 10:
                                        s[c] || (s[c] = 1), (s[c] += o);
                                }
                            }
                        (this.attack = ~~(this.attack * (s[9] || 1) + (s[0] || 0))),
                            (this.health = ~~(this.health * (s[11] || 1) + (s[2] || 0))),
                            (this.defense = ~~(this.defense * (s[10] || 1) + (s[1] || 0))),
                            (this.speed += s[3] || 0),
                            (this.crit_rate += s[4] || 0),
                            (this.crit_dmg += s[5] || 0),
                            (this.eff += s[6] || 0),
                            (this.eff_res += s[7] || 0),
                            (this.coop += s[8] || 0);
                    }
                    this.combat_power = ~~(((1.6 * this.attack + 1.6 * this.attack * this.crit_rate * this.crit_dmg) * (1 + 0.02 * (this.speed - 45)) + this.health + 9.3 * this.defense) * (1 + (this.eff_res + this.eff) / 4));
bra, int, des, fai <- эти столбцы есть в файле character_player.db. Много раз мы возвращались к тому, что возможно это оно, но не было на руках формулы расчёта. Теперь... Она есть у нас, но... файлы зашифрованы.

not an Ordinary Rainbow Dragon - анахроничный танцующий с лезвиями дракон

Epic Seven, сводки с полей:
набор в гильдию «NightHawks» (свободных мест нет)
Аватар для Darkmor
Мастер
Регистрация:
23.01.2019
Джентльмен Медаль "1К лайков"
Re: Датамайнинг клиента игры
Сообщение от nORb Dragon:
файлы зашифрованы.
как обычно :)
Аватар для nORb Dragon_renamed_41442_28082025
Предводитель
Re: Датамайнинг клиента игры
Я не знаю, сам ли писал "это" хозяин сайта e7herder, или он просто как-то умудрился склеить чужие наработки... но там очень жёсткие ява-построения. Наверное уровня так на 2 выше моих знаний.

У него html-страница состоит из одного (!) div-элемента. В котором ява-скриптами обновляется контент, в зависимости от выбранного пункта меню. Весь контент сидит в ява-скрипте. Хардкод. В функциях в функции по имени функции... И (как вишенка на торт): имена для всех функций, функций в функциях, переменных и т.д. сведены до одной (!) буквы латинского алфавита.

Он там весь интерфейс страницы генерирует ява-скриптами.


Кое-как вырезал из одного ява-файла всё ненужное (?), чтоб генерировался только один объект на экране - канва, на которой рисуется изображение. Теперь думаю, как вообще избавиться от этой вязанки хвороста из "функция в функции".

Не, кто это написал - это однозначно гений яваскриптинга. Но у меня сейчас острое желание дать этому гению в промежность с левой ноги.

not an Ordinary Rainbow Dragon - анахроничный танцующий с лезвиями дракон

Epic Seven, сводки с полей:
набор в гильдию «NightHawks» (свободных мест нет)
Аватар для Rejiqu_renamed_1455499_20032025
Читатель
Регистрация:
04.11.2019
Re: Датамайнинг клиента игры
Насколько я помню там исходников как таковых нет, а только уже минимизированный результат, поэтому и функции однобуквенные, и т.п.
Аватар для nORb Dragon_renamed_41442_28082025
Предводитель
Re: Датамайнинг клиента игры
Он вот эту херню ещё юзает - https://mithril.js.org/route.html

Щаз буду раскуривать, можно ли это как-то выкинуть в окно.

Добавлено через 25 минут

У меня де-жа-вю. Кажется, мне уже кто-то писал, что он на этой хрени сайт построил.

В принципе, щаз ковыряюсь, некоторые вещи в мифриле удобно сделаны.

not an Ordinary Rainbow Dragon - анахроничный танцующий с лезвиями дракон

Epic Seven, сводки с полей:
набор в гильдию «NightHawks» (свободных мест нет)
Последний раз редактировалось nORb Dragon_renamed_41442_28082025; 14.12.2021 в 19:43. Причина: Добавлено сообщение
Аватар для nORb Dragon_renamed_41442_28082025
Предводитель
Re: Датамайнинг клиента игры
Набрасываю базовый интерфейс для будущей замены e7herder. Решил сильно не выпендриваться, подстраиваюсь под цветовую гамму оригинального e7herder.






Для сравнения, линк на мой e7herder-клон - https://www.norbdragon.com/e7herder/

not an Ordinary Rainbow Dragon - анахроничный танцующий с лезвиями дракон

Epic Seven, сводки с полей:
набор в гильдию «NightHawks» (свободных мест нет)
1 пользователь оценил это сообщение: Показать
Аватар для Sloyka s Povidlom_renamed_1461782_09082025
Гигант мысли
Регистрация:
21.05.2020
Re: Датамайнинг клиента игры
Я бы написал "please write to me" или "dm me" вместо "please wrote me".
Но качество моего английского легендарно и меметично в узких кругах.
Аватар для nORb Dragon_renamed_41442_28082025
Предводитель
Re: Датамайнинг клиента игры
Сообщение от Sloyka s Povidlom:
Я бы написал "please write to me" или "dm me" вместо "please wrote me".
Я спешил, написал тупо отсебятину на временную заглушку.

Поменяю на "please find me".

not an Ordinary Rainbow Dragon - анахроничный танцующий с лезвиями дракон

Epic Seven, сводки с полей:
набор в гильдию «NightHawks» (свободных мест нет)
Аватар для nORb Dragon_renamed_41442_28082025
Предводитель
Re: Датамайнинг клиента игры
Для любителей страдать хренью и наблюдать за тем, как из "нафинга" появляется "что ты такое?!".

Ссылка - https://www.norbdragon.com/e7tanyta/?lang=ru

Там реально пока "нафинг". Собрал пока только "базовый функционал сайта" (меню, поддержку страничек, переключение языка). И css-стили описал пока только для 1700+ ширины окна браузера. То бишь, если вы браузер обычно не разворачиваете на весь экран и у вас экран не в районе 1980х1080, то там будет полный бред.

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

not an Ordinary Rainbow Dragon - анахроничный танцующий с лезвиями дракон

Epic Seven, сводки с полей:
набор в гильдию «NightHawks» (свободных мест нет)
Аватар для nORb Dragon_renamed_41442_28082025
Предводитель
Re: Датамайнинг клиента игры
Интернет на работе только дали, поэтому... если кто ждал сегодня чего-то интересного - хрен вам.

Я обычно экспериментирую сразу на сервере. Локально на компе "локалхост" не поднимаю.

not an Ordinary Rainbow Dragon - анахроничный танцующий с лезвиями дракон

Epic Seven, сводки с полей:
набор в гильдию «NightHawks» (свободных мест нет)
Аватар для nORb Dragon_renamed_41442_28082025
Предводитель
Re: Датамайнинг клиента игры
Медленно но верно собираю "поиск персонажа" для гляделки моделей.

Так как я помню много жалоб на реддите касаемо сложностей "найти нужного персонажа" когда ты не знаешь даже, как его звать ( ), решил пойти сразу "более серьёзным путём".

Будет три варианта поиска:
1) стандартный по имени;
2) стандартный по id (вдруг кто прошаренный и владеет айдишниками нужных ему персов?);
3) ... тупо полный список всей "базы", отсортированный по дате завоза в игру / обновлению модельки.

Для третьего поиска я немножко слихачил, "подрисовал" даты некоторым НПЦ, дата появления которых в игре точно неизвестна. Но не думаю, что кто-то будет это дело рассматривать под микроскопом. Основная суть этого поиска: глянуть "свежак" не заморачиваясь с поиском имён и id персонажей/нпц.

Выглядеть будет как-то так:



"Светофор" для ориентирования, что это за моделька:
- синяя плашка - игровой персонаж;
- зелёная плашка - скин для персонажа;
- оранжевая плашка - НПЦ;
- розовая плашка - хренька-импринт для определённого персонажа (Баск, Юна, Мерседес, Рас, Адин)№
- красная плашка - монстр, которому запилили отдельный портрет.

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

not an Ordinary Rainbow Dragon - анахроничный танцующий с лезвиями дракон

Epic Seven, сводки с полей:
набор в гильдию «NightHawks» (свободных мест нет)
Аватар для Darkmor
Мастер
Регистрация:
23.01.2019
Джентльмен Медаль "1К лайков"
Re: Датамайнинг клиента игры
У тебя там интерфейс перехода на персонажа еще не работает? Или это у меня не кликается?
Аватар для nORb Dragon_renamed_41442_28082025
Предводитель
Re: Датамайнинг клиента игры
Когда что-нибудь будет работать, я обязательно напишу об этом.

not an Ordinary Rainbow Dragon - анахроничный танцующий с лезвиями дракон

Epic Seven, сводки с полей:
набор в гильдию «NightHawks» (свободных мест нет)
Аватар для nORb Dragon_renamed_41442_28082025
Предводитель
Re: Датамайнинг клиента игры
Сообщение от Darkmor:
У тебя там интерфейс перехода на персонажа еще не работает? Или это у меня не кликается?
Очень баааааааааааааазовый функционал прикрутил.

https://www.norbdragon.com/e7tanyta/model-viewer.html

Персонаж теперь кликается. Слева ещё можно тыкать в списке дат патчей для быстрого перехода к ~нужной дате.

После выбора персонажа запускается гляделка с e7herder. Пока оттуда выдрано всё, кроме канвы. Над переключением скина, анимации, зума и т.д. - буду думать завтра. Ещё надо будет прикрутить возможность "двигать персонажа" по канве. Её я тоже пока вырезал.

После того, как отлажу всё со старой гляделкой, начну колдовать над новым форматом spine и его официальной гляделкой. Надеюсь получится сделать так, что разницы в "гляделках", которые будут запускаться в зависимости от выбранного персонажа (старый/новый), никто особо "на глаз" замечать не будет.

Добавлено через 3 минуты

М. Где в комментариях написано "вариант потерял актуальность с таким-то патчем" - не тести их. Это заглушки на будущее. Надо будет потом "ближе к релизу" заморочиться, достать из датамайнов "старьё" и залить их.

not an Ordinary Rainbow Dragon - анахроничный танцующий с лезвиями дракон

Epic Seven, сводки с полей:
набор в гильдию «NightHawks» (свободных мест нет)
Последний раз редактировалось nORb Dragon_renamed_41442_28082025; 20.12.2021 в 01:57. Причина: Добавлено сообщение
1 пользователь оценил это сообщение: Показать
Аватар для nORb Dragon_renamed_41442_28082025
Предводитель
Re: Датамайнинг клиента игры
Прикрутил автоматическое открытие персонажа по ссылке. Классический стиль вида:
Код:
https://www.norbdragon.com/e7tanyta/model-viewer.html?id=c1001
где после id указываем айди нужного персонажа.


Ещё прикрутил два варианта ссылок на открытие окна поиска персонажа по предварительно заданным параметрам:
  1. на закладку "поиск по дате", автоматическая прокрутка списка персонажей до указанной даты патча
    Код:
    https://www.norbdragon.com/e7tanyta/model-viewer.html?stab=0&patch=20210819
    stab=0 - обязательный маркер закладки, ибо данная прокрутка касается только этой закладки;
    patch - дата патча, до которой необходимо докрутить список на экране.
  2. автоматическая прокрутка списка персонажей до указанного персонажа + выделение его в этом списке
    Код:
    https://www.norbdragon.com/e7tanyta/model-viewer.html?stab=0&id=c1113
    stab - обязательный маркер закладки, на которой необходимо выполнить прокрутку (пока есть только закладка "0");
    id - айди персонажа, до которой необходимо докрутить список на экране + выбрать его автоматически.

Если указать сразу и id и patch, приоритет будет на прокрутку по id.

Эти два варианта - "скрытый" функционал. Предназначен скорее для меня лично.

Типа "надатамайнил новых персов - вот вам ссылка". Или "не можешь найти перса в поиске? странно, а я - нашёл".

not an Ordinary Rainbow Dragon - анахроничный танцующий с лезвиями дракон

Epic Seven, сводки с полей:
набор в гильдию «NightHawks» (свободных мест нет)
Аватар для nORb Dragon_renamed_41442_28082025
Предводитель
Re: Датамайнинг клиента игры
Ещё хрен организуешь прямой "внешний" доступ к функционалу движка e7herder... Гений писал. Понаделал классов в классах, понавстраивал объектов внутрь класса, и сверху это чудо ещё через мифрил генерирует.

Кое-как щаз нащупал довольно "костыльный" вариант тупо спрятать интерфейс e7herder'а, раздать ему id и передавать на эти id команды от своего интерфейса.

Как минимум кнопка "пауза" заработала.

not an Ordinary Rainbow Dragon - анахроничный танцующий с лезвиями дракон

Epic Seven, сводки с полей:
набор в гильдию «NightHawks» (свободных мест нет)
Ваши права в разделе