Current time: 18.04.2024, 15:58 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
ERA / WOG - сетевая игра и проблемы с ней
» Очень актуальная тема на день её создания
Author Message
ZVS Offline

Posts: 500
Post: #196

Так может легче взять отдельные новые эффекты заклинаний из исходника и только их портировать в небольшой мод, согласованной с текущей моделью ERA?
14.06.2022 19:43
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4338
Post: #197

ZVS, как? 102 Честно говоря, сам по себе плагин отлично работает и для игрока, и для ИИ - осталось лишь подвязать erm, что можно и "вручную" сделать, скажем, через ф-цию в плагине, что сама будет патчить таблицу по воговским адресам - то есть не таблицу будем перемещать, а писать прямо в неё - по адресу 0x7BD2C0,


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
14.06.2022 19:47
Visit this user's website Find all posts by this user Quote this message in a reply
ZVS Offline

Posts: 500
Post: #198

Плагин патчит кучу мест. Безопасно ли и совместимо ли - вопрос. То что выглядит как "отлично работает", может быть лишь видимостью. Если он "трогает" места, на которые завязан патчинг WoG, то проявляться это будет лишь когда именно эту затронутую функциональность WoG тестировать. Естественно сам он работает, но не добавляет ли он багов в WoG?
Я бы не советовал его вообще использовать. Или детально проверять адреса, которые он патчит.
14.06.2022 20:17
Find all posts by this user Quote this message in a reply
XEPOMAHT Offline
Moderators

Posts: 2265
Post: #199

(14.06.2022 19:25)daemon_n Wrote:  в сообщении на HC, ссылку на которое я кинул, содержатся самые последние исходники

Исходники от ноября прошлого года не есть последние реально существующие, но не выложенные Алексом. Исходники Маячка вообще не авторские - это переработка, не лишённая многочисленных ашибок.

(14.06.2022 19:37)daemon_n Wrote:  возможность получать из ГМ заклинания существ, колдовать их.

Из структуры текущего города считывай их через UN:C, так же можно изменять их там с помощью UN:C, если стандартный ERM не катит. Адресация на заклинания гильдии магов давно известна ещё со времён ВоГ.

(14.06.2022 20:17)ZVS Wrote:  Естественно сам он работает, но не добавляет ли он багов в WoG?

Воговские анимации на поле боя он точно подменит. И так вместо абилки духов или блока командира/драколича игрок увидит что-то другое...
(This post was last modified: 14.06.2022 20:38 by XEPOMAHT.)
14.06.2022 20:35
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4338
Post: #200

ZVS, именно поэтому это позиционируется как "мод", который спокойно можно отключить в любой момент. В общем, пока что глухо112

XEPOMAHT, мне кажется, ты скачал не то Dry


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
14.06.2022 20:36
Visit this user's website Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4338
Post: #201

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


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
14.06.2022 20:42
Visit this user's website Find all posts by this user Quote this message in a reply
ZVS Offline

Posts: 500
Post: #202

Спасибо! Со своей стороны скажу, что сильно удивлен тем энтузиазмом, с которым вы все тут занимаетесь развитием проекта. Не думал в свое время, что все это продлится столько - практически уже новое поколение заменило основателей. 177
14.06.2022 20:58
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4338
Post: #203

ВНИМАНИЕ ВСЕМ!

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

В итоге я (мы) могу читать сразу из обеих таблиц, и все проблемы отпадают сами собойYes

То есть воговская таблица всё равно корректно даёт абилки существам, потому никаких проблем с оригинальными эффектами существ не будет. УРА!177


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
15.06.2022 00:24
Visit this user's website Find all posts by this user Quote this message in a reply
ZVS Offline

Posts: 500
Post: #204

Значит Dll загружается после запуска WoG.
И, судя по этому:
#define o_Spell (*(_Spell_**)0x687FA8)
он читает адрес установленный в WoG.

Надо иметь в виду, что копируются WoG заклинания до номера 0x50 (SPELL_ACID_BREATH), не больше.
И таблицы становится две, что не очень хорошо, т.к. WoG про новую таблицу не знает.
15.06.2022 01:17
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4338
Post: #205

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

Тем не менее согласен, что доступ к новой таблице под силу не каждому, но и задача не самая тривиальная - я бы даже сказал, что лишь меня она и беспокоит, потому что чешется всё время где-то исследования заклинаний напрашиваются быть совместимыми с данным модомYes


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
15.06.2022 01:31
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Online
Administrators

Posts: 16477
Post: #206

ZVS, в сборке, что daemon_n ещё не довыпустил, должно уже быть последнее обновление Эры на сетевую игру. Мы один раз потестировали её с Димой, уже гораздо стабильнее всё работает и эмуляция случайности лучше.

Code:
[+] Rewrote game random number generator (RNG) engine.

  Main changes:
  - All RNGs are not thread safe now. They should be used in the main thread only.
  - There are two main RNGs: the global one (rand/srand/VR:R) and the unique one (VR:T).
  - ERA uses 3 different engines for the global RNG and switches them dynamically to provide qualitative outputs, the same battle obstacles, as they are in original Heroes 3, and network PvP battles stability.
  - VR:T generator cannot be seeded anymore. It serves as the source of unpredictable randomness.
  - At the start of game process, all generators are seeded with cryptographically safe random seeds.
  - Most of the time Xoroshiro128** engine is used for global RNG. It has both excellent speed and qualitative output.
  - The global generator engine is switched to native C rand implementation only for the phase of placing battle obstacles.
  - In network PvP battles the global generator is switched to deterministic one. Deterministic generator uses only the following information: unique battle ID, combat round ID, combat action ID, minimum and maximum value to generate. Thus any attempt to generate a sequence of numbers in the same range will produce the same result for each generation. It's recommended to replace dwarf-style resistence mechanics with golem-style resistence mechanics.
  - Global RNG is seeded with unique value at battle start/replay, thus the first action and autocasted spells are not deterministic anymore.
  - Using random functions in before battle and before battlefield visible phases does not influence battle obstacles placing anymore.
  - Extended "Debug.Rng" setting in "heroes 3.ini". 0 means no debugging, 1 is for seeding, 2 is for seeding and random_range, 3 enables debugging of all rand/srand/random_range calls.
  - rand() is guaranteed to return 0..32767 value, as it does in original Heroes 3. But random_range (VR:R/VR:T) call can return any value in int32 range (-2147483648..2147483647).
  - ERA intercepts all rand/srand calls. Previously a few functions were not tracked.
  - Deterministic RNG for network PvP battles is enabled for the whole battle (excluding obstacles placing stage). Bad morale probability and magic resistence additionaly depend on stack ID, thus producing different results for different stacks. Stack damage calculation additionally depends on iteration counter (game generates up to 10 random values for each stack damage event).


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
15.06.2022 03:46
Find all posts by this user Quote this message in a reply
ZVS Offline

Posts: 500
Post: #207

Berserker, спасибо за инфу. Подожду сборки - потестирую.
15.06.2022 04:06
Find all posts by this user Quote this message in a reply
Гноль Offline

Posts: 22
Post: #208

Тоже очень жду...
17.06.2022 19:14
Find all posts by this user Quote this message in a reply
Видомина Offline

Posts: 988
Post: #209

Сooperative no bugs settings

https://disk.yandex.ru/d/4wDMGiN_333hBQ
Вылеты в мультиплеере и как с ними бороться!
В Эра скрипт отключите всю колонку Изменение существ.
Также опыт существ даёт вылеты.
Это всё выявлено продолжительными кооперативными тестами с другом.
Вот настроенный settings.dat (стабильный мультиплеер - включать что то на свой страх и риск ибо недавно выявлено что какая то из отключённых вог опций вызывает зависание компьютера)
Тестирование в течение многих месяцев онлайна + 30+ кооперативных битв и 25 месяцев одиночной игры без единого вылета.
////////////////////////////////////////////////////////////////
Departures in multiplayer and how to deal with them!
In the Era script, disable the entire column Changing creatures.
Also, the experience of creatures gives departures.
This is all revealed by long cooperative tests with a friend.
Here is the configured settings.dat (stable multiplayer - enable something at your own risk because it was recently revealed that some of the disabled options causes the computer to freeze)
Testing for many months online + 30+ cooperative battles and 25 months of single-player play without a single departure.


ERA HD Edition 0.6.4: ENG / RU
Сooperative no bugs: Yandex / Google

(This post was last modified: 01.11.2022 00:28 by Видомина.)
01.11.2022 00:27
Find all posts by this user Quote this message in a reply
Elmore Offline

Posts: 586
Post: #210

Лучше бы в актуальной версии из Лаунчера играли с любыми настройками и если ловите вылет, то вычислили конкретную опцию приводящую к этому. На сколько я знаю опыт существ давно исправлен.
Разумеется без TUM.


Image: widget.png?style=banner2
01.11.2022 08:26
Find all posts by this user Quote this message in a reply
« Next Oldest | Next Newest »
Post Reply 


Forum Jump:

Powered by MyBB Copyright © 2002-2024 MyBB Group