Обсуждение инженерного анализа |
Здравствуйте, гость ( Вход | Регистрация )
Обсуждение инженерного анализа |
26 Sep 2007, 15:32
(Сообщение отредактировал Docent Picolan - 05 Jul 2014, 14:07)
Сообщение
#1
|
|
Чёкнутый Призрак Сообщений: 69 Спасибо сказали: 0 раз |
Думаешь тебе так прямо кто-то и скажет? Чертас-два.
Ну а если серьезно то надо формулировать свой вопрос поконкретнее. Меня к примеру интересует как в вог организована интерпретация ерм команд. -------------------- Больше всего на свете я ненавижу две вещи - манию величия, и жалких клопов называющих себя людьми :)
|
|
|
26 Sep 2007, 17:32
Сообщение
#2
|
|
Яблочный произвол! Сообщений: 11 080 Спасибо сказали: 3988 раз |
Цитата(easy-to-kill @ 26 Sep 2007, 15:32) Меня к примеру интересует как в вог организована интерпретация ерм команд. hard coded |
|
|
26 Sep 2007, 21:15
(Сообщение отредактировал Чёртос-2 (Chortos-2) - 26 Sep 2007, 21:16)
Сообщение
#3
|
|
The Unicode Man Сообщений: 993 Спасибо сказали: 6 раз |
Игродел, твой ответ немного не в тему. Потому что тема как раз таки про то, как игра устроена изнутри. Я вот знаю, что Сергей (который SergRoj) знает, в какой структуре данных хранится информация о существах. В принципе, я хочу собрать всё, что можно — начиная от структур данных и заканчивая адресами этих самых структур данных и функций.
-------------------- |
|
|
26 Sep 2007, 21:46
Сообщение
#4
|
|
Яблочный произвол! Сообщений: 11 080 Спасибо сказали: 3988 раз |
Борн упорно молчит?
|
|
|
30 Sep 2007, 00:22
Сообщение
#5
|
|
муравейка Сообщений: 726 Спасибо сказали: 10 раз |
Господин Irh, а случаем не посещали темку Магические заклинания в WoG? Про заклинания что-нибудь знаете на таком же уровне? (где сидят, как поменять и т.д.)
|
|
|
30 Sep 2007, 00:34
Сообщение
#6
|
|
Immortal Сообщений: 1 137 Спасибо сказали: 269 раз |
Нет, с заклинаниями не разбирался.
sergroj, + Добавлено ([mergetime]1191101640[/mergetime]): Может, стоит сразу разбить тему на две? Данные и обсуждения... А то будет как в остальных - десять страниц, из них 9 - вопросы и обсуждения. Что тоже важно, но когда нужна инфа, искать неудобно. -------------------- |
|
|
30 Sep 2007, 20:17
(Сообщение отредактировал Black Phantom - 30 Sep 2007, 20:18)
Сообщение
#7
|
|
Immortal Сообщений: 1 320 Спасибо сказали: 469 раз |
Цитата(sergroj @ 28 Sep 2007, 22:30) Таблица монстров состоит из таких структур: (одинакова для игры и редактора карт) Код Town: int; Level: int; SoundName: PChar; // 4 буквы, с которых начинаются звуки монстра DefName: PChar; Flags: int; Name: PChar; PluralName: PChar; Features: PChar; // (описание способностей) CostWood: int; CostMercury: int; CostOre: int; CostSulfor: int; CostCrystal: int; CostGems: int; CostGold: int; FightValue: int; AIValue: int; Growth: int; HordeGrowth: int; HitPoints: int; Speed: int; Attack: int; Defence: int; DamageLow: int; DamageHigh: int; Shots: int; Spells: int; AdvLow: int; // ? AdvHigh: int; // ? В файле h3wog.exe таблица стандартных монстров находится по адресу $2703B8, а новые монстры - $31C188. Таблица артефактов (проверял только в редакторе) Код ArTraits: array[0..6] of int; CantAdd: int; ArTraits я не описывал, но он полностью соответствует столбцам файла ArTraits.txt CantAdd - если не 0, то в Редакторе карт артефакт не показывается в списке тех, которые можно дать герою, поставить наградой за задание провидца и т.п. А почему всё-таки никто кроме ZVS не умеет добавлять новых монстров, если структура EXE известна многим? Ведь есть же на форуме много толковых людей хорошо владеющих прграммированием на C++. -------------------- Все на земле боится времени, но время боится Героев Меча и Магии
|
|
|
Гость_Berserker_* |
30 Sep 2007, 20:25
(Сообщение отредактировал Berserker - 30 Sep 2007, 21:38)
Сообщение
#8
|
|
Дело вовсе не в языке программирования. Подойдёт любой язык программирования, который разрешает прямую записаь и чтение из памяти. Чтобы встроить монстра, надо во многих местах ввести дополнительный код, чтобы игра корректно обрабатывала его. Остальное - к ZVS
|
|
|
01 Oct 2007, 13:28
Сообщение
#9
|
|
Чёкнутый Призрак Сообщений: 69 Спасибо сказали: 0 раз |
У меня вопрос насчет пресловутого лимита существ. Кто-нибудь пытался найти ячейку памяти где храниться их кол-во?
Чертас-Два каким дизассемблером пользуешься? Можешь ссылку кинуть? -------------------- Больше всего на свете я ненавижу две вещи - манию величия, и жалких клопов называющих себя людьми :)
|
|
|
01 Oct 2007, 21:14
Сообщение
#10
|
|
В миру GrayFace Сообщений: 2 528 Спасибо сказали: 817 раз |
Лимит существ нигде не хранится. Просто когда номер существа записан в один байт, он никак не может быть больше 255.
Цитата(Berserker @ 01 Oct 2007, 00:25) Чтобы встроить монстра, надо во многих местах ввести дополнительный код, чтобы игра корректно обрабатывала его. Точнее, не дополнительный код, а просто менять существующий в куче мест - везде (!), где используется кол-во монстров и, возможно, везде, где используется ссылка на таблицу монстров. -------------------- ДНК банана на 50% состоит из человека.
|
|
|
01 Oct 2007, 21:41
(Сообщение отредактировал Чёртос-2 (Chortos-2) - 01 Oct 2007, 21:42)
Сообщение
#11
|
|
The Unicode Man Сообщений: 993 Спасибо сказали: 6 раз |
Цитата(easy-to-kill @ 01 Oct 2007, 13:28) Чертас-Два каким дизассемблером пользуешься? Можешь ссылку кинуть? Пользуюсь двумя сразу — одним, встроенным в PE Explorer от компании Heaventools (в свое время я о нём узнал от Bourn’а), который полноценно дизассемблирует весь код, пытаясь эмулировать выполнение кода процессором, и другим, встроенным в Hiew, который дизассемблирует на ходу то, что влезает в буфер, зато позволяет код не только смотреть, но сразу и менять (в том числе, можно писать не только машинный код, но и ассемблерный). [Оба продукта платные, что немного осложняет их использование.] Хочу попробовать IDA, в первую очередь, сравнить его с поделкой Heaventools.
-------------------- |
|
|
02 Oct 2007, 03:12
Сообщение
#12
|
|
Immortal Сообщений: 1 235 Спасибо сказали: 63 раза |
У меня вот такой вопрос: для нового мода людского замка я хотел бы поменять абилки некоторым юнитам, поэтому не мог бы кто нибудь мне рассказать где это меняется? Я уже получил много ответов типа "это невозможно", но ведь разработчики ВоГа сделали нейтральный замок и добились полностью перепотрошить элементалей, поэтому, если кто нибудь из вас что нибудь об этом знает, плиз не утаивайте
-------------------- |
|
|
02 Oct 2007, 08:48
Сообщение
#13
|
|
Чёкнутый Призрак Сообщений: 69 Спасибо сказали: 0 раз |
Цитата Лимит существ нигде не хранится. Просто когда номер существа записан в один байт, он никак не может быть больше 255. Так я и не спрашиваю где лимит монстров хранится. Я спрашиваю где хранится количество монстров. -------------------- Больше всего на свете я ненавижу две вещи - манию величия, и жалких клопов называющих себя людьми :)
|
|
|
02 Oct 2007, 14:56
Сообщение
#14
|
|
Immortal Сообщений: 1 710 Спасибо сказали: 79 раз |
В этом байте и хранится их количество.
-------------------- |
|
|
02 Oct 2007, 15:21
Сообщение
#15
|
|
Чёкнутый Призрак Сообщений: 69 Спасибо сказали: 0 раз |
По какому адресу этот байт?
-------------------- Больше всего на свете я ненавижу две вещи - манию величия, и жалких клопов называющих себя людьми :)
|
|
|
02 Oct 2007, 21:09
Сообщение
#16
|
|
Immortal Сообщений: 1 137 Спасибо сказали: 269 раз |
Где-то в коде программы - в нескольких местах и в различных видах - кроме того, оно влияет на расположение данных. Поэтому поменять его непросто. Точно сказать не могу.
-------------------- |
|
|
02 Oct 2007, 23:13
Сообщение
#17
|
|
The Unicode Man Сообщений: 993 Спасибо сказали: 6 раз |
По просьбам трудящихся открываю отдельную тему для обсуждения инженерного анализа.
-------------------- |
|
|
02 Oct 2007, 23:17
Сообщение
#18
|
|
Сообщений: 29 680 Спасибо сказали: 18134 раза |
может сам анализ прилепить? тема-то важная
|
|
|
03 Oct 2007, 20:13
Сообщение
#19
|
|
В миру GrayFace Сообщений: 2 528 Спасибо сказали: 817 раз |
Цитата(easy-to-kill @ 02 Oct 2007, 12:48) Так я и не спрашиваю где лимит монстров хранится. Я спрашиваю где хранится количество монстров. А про это написано ниже в том же посте Это маленькая константа, поэтому всюду, где она используется, она подставлена своим значением. + для введения новых монстров, вероятно, потребуется менять адрес таблицы монстров, а это еще такая же куча адресов на таблицу. -------------------- ДНК банана на 50% состоит из человека.
|
|
|
12 Oct 2007, 23:06
Сообщение
#20
|
|
Immortal Сообщений: 670 Спасибо сказали: 14 раз |
Адрес (или указатель на) таблицы с героями подскажите плз.
Тоже относится к битве. Интересуют адреса копий героев. (Доступ к которым осуществляется через !!HE-10, !!HE-20) -------------------- |
|
|
Текстовая версия | Сейчас: 19 April 2024 - 14:21 |
Copyright by Алексей Крючков
Programming by Degtyarev Dmitry |