WoG 3.59 открыт! Набор команды + open source. |
Здравствуйте, гость ( Вход | Регистрация )
WoG 3.59 открыт! Набор команды + open source. |
19 Dec 2013, 11:43
Сообщение
#1
|
|
В миру GrayFace Сообщений: 2 528 Спасибо сказали: 817 раз |
После 5.5+ лет эпизодической работы над WoG 3.59 в рамках CoreWoG у меня наконец есть хорошая промежуточная версия, а также время и желание заново собрать команду.
Итак, альфа-версия WoG 3.59, open source: https://github.com/GrayFace/wog Версию для тестирования можно скачать из Releases. Сразу предупреждаю, что багов там много - новые скрипты ВоГификации почти не тестировались и есть непойманный баг, приводящий к вылету. И еще, элементов новых городов здесь нет. Основные изменения: - Скрипты Lua (с полной поддержкой команд ERM). Новые скрипты рекоммендуется делать на Lua, в том числе для того, чтобы не было конфликтов. В info\AboutLua.txt есть вводная информация про Lua. - Новая система создания диалогов на Lua. Такжде можно изменить любой стандартный диалог. Скриптам ERM эта функциональность недоступна. См. info\Tutorials\dialogs.htm и скрипты, приложенные к нему. - Возможность загружать свои LOD'ы. - Моды. Не финальная версия. - Различные новые команды ERM. Например, GOTO. См. файлы info\ChageLog*.txt. - Новые скрипты, сделанные оригинальной комадой ВоГа. Что еще надо сделать: - Поддержка новых городов. В процессе разработки. - Завершение поддержки модов, загрузка архивов SND и VID и т.п. - Включение HD Mod'а или совместимость с ним. Добавление различных фич из Эры. - Новая графика для меню. В меню компаний теперь есть и компания SoD, поэтому кнопки компаний надо как-то переставить. - Исправить скрипты ВоГификации. Отсортировать их, чтобы в них хоть как-то можно было ориентироваться. - Собственно, новые города. - Обновление ERM Help, соединение с информацией по скриптам Lua. Если Вы хотите участвовать в разработке 3.59 или модов для него, добавляйтесь ко мне в скайп: (мой ник)_grayface. По предыдущему опыту, групповой тектовый чат в Скайпе отлично подходит для общения команды. Напишите мне на мыло или в ЛС, если Skype Вам не подходит по какой-то причине. P.S. отлепленная ветка со старой информацией о 3.59 и ссылкой на ролик с Бастионом: http://forum.df2.ru/index.php?showtopic=12961 -------------------- ДНК банана на 50% состоит из человека.
Спасибо сказали: izrukvruki, Shurup, Vadim_FVE, XEL, fireman, hippocamus, IQUARE, Agar, Чёрный Абишай, magoth, Nestor, Vade Parvis, tolich, AKuHAK, FCst1, lion-killer, Starseeker, hommer, Adept, feanor, dik X.B., StasPV, Throutle, packa, Etoprostoya, Kislolord, Berserker, SerAlexandr, Гры2, Господин Уэф, Axolotl, Maximus, Day7, DemonTwR, Эроласт, ivyl, Hobbit, igrik, Арысь-Поле, Zabuza-san, Corkes, Black Dragon, Theodor, Orzie, AleXXXSC, WWWoWaNuS, Ozymandias II, Grossmaster |
|
|
19 Dec 2013, 11:52
Сообщение
#2
|
|
Immortal Сообщений: 7 869 Спасибо сказали: 16061 раз |
Ну вот, а все вокруг жалуются, что новогоднего настроения нет.
Отпишусь по делу позже - я, как минимум, как никто другой заинтересован в порте The Succession Wars Mod на новую платформу. Луа выглядит куда более приятно и дружелюбно. |
|
|
20 Dec 2013, 00:38
Сообщение
#3
|
|
Choziain Veteras Сообщений: 348 Спасибо сказали: 180 раз |
Уже не верил, но ждал. Дождался!
|
|
|
20 Dec 2013, 22:43
Сообщение
#4
|
|
laughed as one fey Сообщений: 12 166 Спасибо сказали: 20585 раз |
Чем отличаются разные типы хуков, есть ли среди них аналог патчеровского сплайса (подмена функции своей без явного перехвата всех вызовов) и как можно осуществить прямой доступ к структурам в памяти?
А то использование ERM из-под Lua явный костыль. |
|
|
21 Dec 2013, 08:45
Сообщение
#5
|
|
I must gather my party before venturing forth Сообщений: 5 071 Спасибо сказали: 17752 раза |
Создал тему относительно данного спора.
http://forum.df2.ru/index.php?showtopic=32224 Просьба к присутствующим модераторам - перенести этот спор туда, а участников спора, приглашаю соответственно отписываться в даленьнейшем на эти темы там. [DONE] -------------------- |
|
|
21 Dec 2013, 21:53
Сообщение
#6
|
|
В миру GrayFace Сообщений: 2 528 Спасибо сказали: 817 раз |
Чем отличаются разные типы хуков, есть ли среди них аналог патчеровского сплайса (подмена функции своей без явного перехвата всех вызовов) и как можно осуществить прямой доступ к структурам в памяти? Да, hookfunction. Основные: hookfunction - - заменяет функцию с возможностью вызова оригинала. hookcall - так же, но подмена вызова функции. autohook - хук в какое-то место в коде. Эти хуки автоматически вызывают код, затёртый инструкцией call (в случае hookcall это не нужно). Возможности ставить несколько хуков в одно место у меня пока нет. patcher я не использовал и он мне не понятен без сорсов. Хотелось знать, что именно каждый его хук делает. Я набросал их в info\LuaMem.txt, но не написал никаких описаний. Прямой доступ к памяти - скажем, Код local base = mem.u4[0x699538] mem.u1[base+0x1F458] = 1 -- сделать игрока читером u4 - 4-байтовое беззнаковое. i4 - знаковое. u1 - байт и т.п. r8 - double, r4 - single. Для строк: mem.pchar - read-only mem.EditPChar - с редактированием mem.EditConstPChar - для защищённой памяти mem.DynStr - для динамических строк Героев Функция mem.string: -- mem.string(p) - read null-terminated string -- mem.string(p, size) - read null-terminated string not more than 'size' bytes -- mem.string(p, size, true) - read 'size' bytes as string Есть возможность описывать структуры, как в Data\zvs\Lua\structs.lua. MMExtension на этом в основном построен. А то использование ERM из-под Lua явный костыль. В будущем можно сделать API-прослойку с функциями с говорящими именами. Или использовать движок структур с вызовом ЕРМа для установки некоторых значений. -------------------- ДНК банана на 50% состоит из человека.
|
|
|
22 Dec 2013, 07:24
Сообщение
#7
|
|
Boy ♂ Next ♂ Door Сообщений: 647 Спасибо сказали: 609 раз |
Ну раз эта версия WoG последняя, то почему бы не назвать по красивому 3.6?
-------------------- |
|
|
22 Dec 2013, 12:49
Сообщение
#8
|
|
laughed as one fey Сообщений: 12 166 Спасибо сказали: 20585 раз |
Цитата Да, hookfunction. Основные: hookfunction - - заменяет функцию с возможностью вызова оригинала. hookcall - так же, но подмена вызова функции. autohook - хук в какое-то место в коде. hookcall - хук на место вызова функции откуда-то, hookfunction - на адрес функции, autocall - на произвольную инструкцию? Цитата u4 - 4-байтовое беззнаковое. i4 - знаковое. u1 - байт и т.п. r8 - double, r4 - single. ну да, это я понялЦитата Есть возможность описывать структуры, как в Data\zvs\Lua\structs.lua. MMExtension на этом в основном построен. ага, спасибоЦитата В будущем можно сделать API-прослойку с функциями с говорящими именами. Или использовать движок структур с вызовом ЕРМа для установки некоторых значений. Ну вот под это и спрашивал.
|
|
|
25 Dec 2013, 09:02
Сообщение
#9
|
|
В миру GrayFace Сообщений: 2 528 Спасибо сказали: 817 раз |
hookcall - хук на место вызова функции откуда-то, hookfunction - на адрес функции, autocall - на произвольную инструкцию? Да, только autohook, а не autocall. В патчере все они есть? -------------------- ДНК банана на 50% состоит из человека.
|
|
|
25 Dec 2013, 09:05
Сообщение
#10
|
|
Это аргумент Сообщений: 2 655 Спасибо сказали: 2293 раза |
Цитата Ну раз эта версия WoG последняя, то почему бы не назвать по красивому 3.6? Ну нет. 3.59 - это уже нечто овеянное легендами, чего ждут тысячи фанатов по всему миру вот уже почти 10 лет. Кому нужны красивые индексы, может в РЕКВИЗИТ поиграть, оно аж 3.70 -------------------- |
|
|
25 Dec 2013, 10:18
Сообщение
#11
|
|
Immortal Сообщений: 2 412 Спасибо сказали: 4617 раз |
Цитата Возможности ставить несколько хуков в одно место у меня пока нет. patcher я не использовал и он мне не понятен без сорсов. Хотелось знать, что именно каждый его хук делает. так исходники открыты (С++), релизятся в комплекте с библиотекой. На вогфоруме в соответствующей теме на первой странице ссылка. Причем, пожалуйста, делайте любые предложения по улучшению патчера. Цитата Что еще надо сделать: ... - Включение HD Mod'а или совместимость с ним. работать над этим будет в 100500 раз легче после перевода Вог359 на патчер. Я вот, пока Вог не передет на патчер даже не стану над совместимостью работать. ХД через патчер может сказать Вогу, что вот я есть, с такими-то настройками, с такими-то хуками и патчами. А вог то же самое сказать ХД. Лог работы патчера укажет очередность установки всех патчей/хуков и все конфликутующие патчи/хуки Дамп патчера укажет все установленные хуки и патчи (по каким адресам, каких клиентов) Такое взаимодействие через патчер прекрасно работает у ХотА, ХД и плагинов к ХД от WiZarDX_576 (т.е. полная совместимость при относительной независимости разработки) **** У меня претензия к Вогу - одна. Это неотключаемые захардкоденные изменения. (командиры, опыт существ, вогменю и пр.) Вот если бы вог был - СоД+Луа, а все командиры, свистелки и перделки добавлялись скриптами - это был бы идеальный Вог. -------------------- |
|
|
25 Dec 2013, 10:22
Сообщение
#12
|
|
Immortal Сообщений: 6 260 Спасибо сказали: 12647 раз |
У меня претензия к Вогу - одна. Это неотключаемые захардкоденные изменения. (командиры, опыт существ, вогменю и пр.) За вог-меню и пр. не скажу, но командиры и опыт существ - отключаемы, хотя и захардкожены -------------------- |
|
|
25 Dec 2013, 10:53
Сообщение
#13
|
|
laughed as one fey Сообщений: 12 166 Спасибо сказали: 20585 раз |
Не, тут претензия, судя по всему, за испещренный низкоуровневыми хуками код.
Цитата Да, только autohook, а не autocall. В патчере все они есть? И много чего еще есть.
|
|
|
25 Dec 2013, 10:55
Сообщение
#14
|
|
В миру GrayFace Сообщений: 2 528 Спасибо сказали: 817 раз |
Цитата Возможности ставить несколько хуков в одно место у меня пока нет. patcher я не использовал и он мне не понятен без сорсов. Хотелось знать, что именно каждый его хук делает. так исходники открыты (С++), релизятся в комплекте с библиотекой. На вогфоруме в соответствующей теме на первой странице ссылка. Причем, пожалуйста, делайте любые предложения по улучшению патчера. О, хорошо. Я помню, что не нашёл их в первой версии. Цитата Что еще надо сделать: ... - Включение HD Mod'а или совместимость с ним. работать над этим будет в 100500 раз легче после перевода Вог359 на патчер. Собственно, в будущем основным режимом HD мода будут полноценные 32 бита? Эту часть хотелось бы включить в 3.59, чтобы уже для 32 битов делать дефы с полупрозрачностью. У меня претензия к Вогу - одна. Это неотключаемые захардкоденные изменения. (командиры, опыт существ, вогменю и пр.) Вот если бы вог был - СоД+Луа, а все командиры, свистелки и перделки добавлялись скриптами - это был бы идеальный Вог. У меня тоже. Основные я сделал опциональными - кампанию, командиров, проклятия, бонусы богов, новых героев. Кнопка ВоГ опций, конечно, останется - они всегда нужны, любому моду. -------------------- ДНК банана на 50% состоит из человека.
|
|
|
25 Dec 2013, 14:06
Сообщение
#15
|
|
Immortal Сообщений: 2 412 Спасибо сказали: 4617 раз |
Цитата Кнопка ВоГ опций, конечно, останется - они всегда нужны, любому моду. я так не думаю. Считаю в том виде в котором вогопции есть, они должны быть доступны как минимум в особом режиме - только при запуске игры со спец. ключем командной строки. Когда я хочу поиграть мод - я играю. Когда я хочу позаниматься настройкой мода - это уже другое дело. Я понимаю что большинство поклонников вога и эры - это люди из второй категории, те кто любят прежде всего не играть а настраивать. Но основная масса поклонников тройки - это те кто просто хотят поиграть не заморачиваясь с технической частью и тонннами противоречивых, зачастую переворачивающих все с ног на голову опций. Команда хоты это понимает, поэтому я с ними. Цитата Собственно, в будущем основным режимом HD мода будут полноценные 32 бита? Сейчас в ХД есть режим True 32 - это настоящие 32 бита, но без альфаканала (т.е. 32 bit XRGB) но в перспективе есть планы по реализации 32 bit ARGB c альфаблендингом. Если я буду обосабливать этот функционал в отдельный модуль и делиться им, то пока без исходников (по секретным причинам : ) -------------------- |
|
|
25 Dec 2013, 14:35
(Сообщение отредактировал Axolotl - 25 Dec 2013, 14:49)
Сообщение
#16
|
|
I must gather my party before venturing forth Сообщений: 5 071 Спасибо сказали: 17752 раза |
Ну конкретно ключ (как единственный вариант) плох - он не очевиден для всех, некоторые даже не знают, что это такое, и во многих случаях только добавит неудобств для простых людей.
Т.е если человек из первой категории хочет запустить "не заморачиваясь с тоннами настроек" то зачем он нажимает эту кнопку, и собственно зачем он вообще запустил Вог, не затем же, чтобы поиграть в чистый Сод, видимо какой-то функционал именно Вога нужен этому человеку. Напрашивается решение пресетов или чего-то подобного, кстати, например Стартера (по типу например того, который имеется в ХД моде) Про поиграть просто в Мод...ну тут наверное этот самый мод должен еще появиться. Воговские (имеющиеся) опции в принципе не могут быть таковым, в них ведь много даже взаимоисключающих настроек. Если речь о каких-то мелких плюшках, которые пишут люди - то тут видимо, если кто-то хочет воспользоваться именно этой плюшкой на чистом Соде, но ни в коем случае ничем другим, то вот как раз и нужны кнопки/пресеты/стартеры типа "Чистый Сод" а потом уже человек добавляет этот скрипт/мод. Ну или опять же организация модов в папках на примере Эры. Если же это именно целостный мод - таким наверное может быть например какой-то новый город, ну или действительно какая-то продуманная система по изменению оригинальной игры, не допускающая пересечений с другими опциями (не нарушая внутреннего баланса) То опять же нужна какая-то организация - например: как в Эре папками /стартерами/пресетами. Т.е. да, какая-то удобная организация, как мне кажется, очень даже нужна -------------------- |
|
|
25 Dec 2013, 15:15
Сообщение
#17
|
|
Immortal Сообщений: 6 260 Спасибо сказали: 12647 раз |
Если речь о каких-то мелких плюшках, которые пишут люди - то тут видимо, если кто-то хочет воспользоваться именно этой плюшкой на чистом Соде, но ни в коем случае ничем другим, то вот как раз и нужны кнопки/пресеты/стартеры типа "Чистый Сод" а потом уже человек добавляет этот скрипт/мод. Ну или опять же организация модов в папках на примере Эры. Пресет "Чистый СоД" уже есть. Называется - "отключить все настройки" :-) Считаю в том виде в котором вогопции есть, они должны быть доступны как минимум в особом режиме - только при запуске игры со спец. ключем командной строки. Когда я хочу поиграть мод - я играю. Когда я хочу позаниматься настройкой мода - это уже другое дело. Я понимаю что большинство поклонников вога и эры - это люди из второй категории, те кто любят прежде всего не играть а настраивать. Считаю, что в том виде, в котором опции ХД-мода есть, они должны быть доступны как минимум в особом режиме - только при запуске игры со спец. ключом командной строки. Когда я хочу поиграть ХД-мод - я играю. Когда я хочу позаниматься настройкой ХД-мода - это уже другое дело. Я понимаю что большинство поклонников ХД-мода - это люди из второй категории, те кто любят прежде всего не играть а настраивать. Ничего не напоминает? :-) -------------------- |
|
|
25 Dec 2013, 15:24
Сообщение
#18
|
|
Immortal Сообщений: 9 403 Спасибо сказали: 3770 раз |
Цитата(Iv) Считаю, что в том виде, в котором опции ХД-мода есть, они должны быть доступны как минимум в особом режиме - только при запуске игры со спец. ключом командной строки. Когда я хочу поиграть ХД-мод - я играю. Когда я хочу позаниматься настройкой ХД-мода - это уже другое дело. Они и есть в особом режиме - при запуске лончера. |
|
|
25 Dec 2013, 15:34
Сообщение
#19
|
|
Immortal Сообщений: 6 260 Спасибо сказали: 12647 раз |
Они и есть в особом режиме - при запуске лончера. Дык, ярлык-то при установке ставится именно на лончер, не на саму пропатченную игру -------------------- |
|
|
25 Dec 2013, 17:33
Сообщение
#20
|
|
пират с чёрной меткой Сообщений: 23 646 Спасибо сказали: 12923 раза |
Тем самым соблюдается ненарушение авторских прав относительно неприкосновенности кода. Если ты хочешь - сам пропатчишь.
Если честно, никогда не пользуюсь ярлыками, полученными при установке ) -------------------- Давший быка на убой не выпросил и печень на жаркое.
|
|
|
Текстовая версия | Сейчас: 25 April 2024 - 20:19 |
Copyright by Алексей Крючков
Programming by Degtyarev Dmitry |