Wake of Gods Forum | Форум Во Имя Богов

Full Version: ERA II
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
igrik, поверь, тянуть в ядро всё, что можно реализовать вне его — это антипаттерн, порочная практика, которой не один серьёзный продукт с историей не следует. Ядро должно дать функциональные возможности (именованные переменные, константы, функции) и приемлемую скорость. Только так код может эволюционировать. А то, что ты предлагаешь — мелкая частность, которых вносить можно сотнями на каждую структуру игры, а затем не иметь возможности править этот груз.

Мне осталось решить вопрос со скином/кампанией, чтобы зарелизить 3.0.0, но для тестов уже рабочую dll могу загрузить.

Ребята, если у вас есть вопросы/предположения, о том, как лучше организовать тут или иную функцию, пишите. Я не вижу ни одной нерешаемой проблемы и проблемы сейчас вообще.
Если делать по уму, то по уму и делайте. Предложения поместить код в dll плохие. В любой системе модов будут моды зависимые и моды-основы или моды-библиотеки. В сборках эти основы присутствуют. В одиночных релизах в json-файлах мода и описании указываются.
----------------------------
Так, я тут подумал. Пишите сюда самые необходимые функции, вроде тех, что игрик привёл. Можно будет часть из них прямо в скриптах с Эрой и распространять. Что-то напишу я. Например, GetOpt и AccessMem (UN:C на стероидах с поддержкой перенесённых структур). Сейчас UN:C тоже вызывает GetRealAddr, но только в рамках размеров старых структур.
(05.03.2020 16:00)igrik Wrote: [ -> ]К тому же библиотека может быть отключена в любой момент, потому что она не является базой игры.
Скрипты сейчас тоже не являются базой игры 118
Но так-то я, если что, только за расширение базовых возможностей ERM

(05.03.2020 16:13)Berserker Wrote: [ -> ]если сделаем с игриком новую систему опций...

Quote:- Когда у Вас в последний раз был секс?
- Доктор, меня пугает слово "последний" в вашем вопросе...
https://dropmefiles.com/DMtmo
Era 3.0.0 альфа, только dll
(05.03.2020 16:13)Berserker Wrote: [ -> ]Если перенесёт, то вызовет RedirectMemoryBlock. Тогда в функции сделай !!SN:F^GetRealAddr^/старый адрес/?новый адрес. И такая команда переживёт всех.

Нет, думаю, что в случае с переносом таблицы героев это работать не будет (т.к. в самой игре физически никакой таблицы героев на самом деле нет, а есть базовая структура, которая в случае увеличения количества героев не переносится, а... расширяется 148 . И как я должен сказать ЭРЕ о том, что расширена базовая структура игры и переставлены в разные места её структурные компоненты??? 148 ).

Ещё один момент: обращение к данным героев возможно (и работает в коде Третьих Героев) напрямую от базового адреса без всяких поучений промежуточного адреса структуры героев (использование адреса структуры героев сделано только для удобства компиляции кода и не является необходимостью) - и как такие вещи должны решаться с помощью RedirectMemoryBlock???

(05.03.2020 16:21)Berserker Wrote: [ -> ]Предложения поместить код в dll плохие.

За примерами, которые уже есть в ERA далеко ходить не надо - receiver pa.era и receiver qu.era. И это не часть какой-то сборки ЭРЫ, а базовая комплектация. Почему же плохо добавлять плагины на новые ERM-команды?
Я еще раз хочу донести, что я не вижу смысла создавать библиотеку (будь то ERM или dll) для этих трех функций.
Посмотрите тему по UN:C -> львиная доля кода там указана для структуры героев и боевых стеков, а после этого использует смещения для чтения или записи инфы.
Кроме этих 3х функций больше то и не нужно никаких других, ибо эти несут в себе максимум универсальности в наиболее часто используемой массе.

Библиотека хуков - да, она уже будет на ERM. Но она опять же всегда! использует UN:C со смещением и достаточно часто получение этих двух структур. Все остальное ERM и сам потянет.
Тем более, что появились побитовые сдвиги для ERM, и нормальная работа с битами чисел Ab

Berserker, 173
я тебя очень прошу - внеси эти 3 функции в ядро ЭРЫ, до начала производства работ над Lua, а то я за себя не ручаюсь 173

(05.03.2020 16:31)Berserker Wrote: [ -> ]Era 3.0.0 альфа, только dll

С ERA PLUS несовместимо. В MapItem_ChangeLoopSoundState получает ноль в этом месте: 41836Е: mov ecx, [edi+eax*4+248h]. А там должны быть адреса звуков, которые, видимо, третьей версией ERA не загрузились (или кто-то неудачно перенёс их список - я пока не трогал, но если что, в Тифоне оно на очереди).
(05.03.2020 16:31)Berserker Wrote: [ -> ]https://dropmefiles.com/DMtmo
Era 3.0.0 альфа, только dll

Что, простите? 36
(05.03.2020 18:52)daemon_n Wrote: [ -> ]
(05.03.2020 16:31)Berserker Wrote: [ -> ]https://dropmefiles.com/DMtmo
Era 3.0.0 альфа, только dll

Что, простите? 36
Это пока что расширенный ERM:
$xTest$, $yBest$, $zBest$ и т.д. переменные.

d-модификаторы и сдвиги,
d~16 убрать флаг 16
d%7 остаток от деления
d>>2 сдвиг вправо без переноса знака
и т.д.

i^hello^ везде. Даже в вог командах, i^...^ в условиях и s^...^ в условиях
XEPOMAHT, ни в звуках, ни в map item-ах ничего не менял от слова совсем.
с удовольствием и интересом почитал последние 2 страницы темы,132, вам бы так по чаще вместе собираться он-лайн где-нить и предлагать, обсуждать, спорить и решать, так хоть и разраб получает сильных отклик для своих идей и планов, и конечные потребители продукта дают понять ну'жды и ожидания от творца
главное не увлекаться, а то рассоритесь и как лебедь-рак-щука уйдёте от Общего .

всем респект за все ваши работы и старания :pray:
Berserker, в Моде Wog Rus 2.9.12
zutorial.tut находится в Mods\WoG Rus\Maps\Resources вместо Mods\WoG Rus\Maps
Возможно, вместо него ты положил туда cave of gerfrex (rus).h3m

И не понимаю, почему для RU кампаний 6 папок, а для EN - 4 105
Bes, теперь ты видишь, под каким прессом я живу. Даже на форуме неиллюзорно бензопилою намекают в случае отказа Fie

daemon_n, я тоже. Кто-нибудь знает, почему русских файлов кампаний 6, а английских 4?
zc1.h3c..zc6.h3c против zc1.h3c..zc4.h3c?

Quote:Berserker, в Моде Wog Rus 2.9.12
zutorial.tut находится в Mods\WoG Rus\Maps\Resources вместо Mods\WoG Rus\Maps
Ну это igrik виноват, он теперь главный по моду 116
igrik, Здесь "d" лишняя. Просто 100 как смещение.
https://dropmefiles.com/7y4F7
BM:Z, HE:Z, UN:C на стероидах (автовыполнение GetRealAddr по базовому адресу, поддержка d-модификаторов).
112 173
Reference URL's