Current time: 20.04.2024, 12:46 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
Программирование ВОГ
Author Message
baratorch Offline

Posts: 197
Post: #91

всем привет.
Сейчас занимаюсь перемещением стеков существ в окне обмена м-ду героями.
добавляю 17 кнопок: кнопку обмена армиями, 2 кнопки передачи армиий от одного героя другому, и под каждым слотом кнопка передачи отряда другому герою.

В связи с этим вопросы: Как узнать уровень существа (не вог-опыта, а существа) зная его тип. Как узнать, грейд/не грейд? Как передать из стека в стек вог-опыт? И по какому принципу вычислять вог-опыт при разделении отрядов и их слиянии?
26.07.2010 02:13
Find all posts by this user Quote this message in a reply
Дьякон Offline

Posts: 392
Post: #92

По адресу 6747B0 находится указатель на структуру монстров. Структура описана в первом посте инженерного анализа на дф2. Оттуда узнаешь грейд/не грейд и уровень существа. А передачу монстров лучше наверное делать через функцию героев, она автоматом все сама посчитает. ИМХО


Страус труп (с) Бьерн
(This post was last modified: 26.07.2010 09:09 by Дьякон.)
26.07.2010 09:09
Find all posts by this user Quote this message in a reply
baratorch Offline

Posts: 197
Post: #93

спасибо большое!

Quote:
Code:
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; // ?
так и не понял как узнать грейд или не грейд монстра...

Quote:А передачу монстров лучше наверное делать через функцию героев, она автоматом все сама посчитает.ИМХО
я реализую умную передачу - то есть монстры передаются по убыванию уровня, если у принимающего уже есть стек с таким типом монстра, то передаваемые добавляются в этот стек, если нет - кидаются в пустой стек. Поэтому мне удобнее непосредственно со стеками работать, а не через функции.
26.07.2010 13:12
Find all posts by this user Quote this message in a reply
SAG Offline

Posts: 173
Post: #94

(26.07.2010 13:12)baratorch Wrote:  так и не понял как узнать грейд или не грейд монстра...
предполагаю что нет понятия грейд/не грейд. Ручками определяется по номеру монстра.
(26.07.2010 13:12)baratorch Wrote:  я реализую умную передачу
ты посмотрел как эти функции работают в ТЕ/WT? там идеально
26.07.2010 13:35
Find all posts by this user Quote this message in a reply
etoprostoya Offline

Posts: 1809
Post: #95

Должна быть таблица, где описано кто чей грейд.
26.07.2010 14:14
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16485
Post: #96

Есть таблица, Бараторч, инфу скоро вышлю в ЛС.


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

Posts: 197
Post: #97

Berserker, cпасибо большое!

...

никто не скажет чтоли как(где) опыт существ передается и распределяется при разделении/слиянии.
А то я уже всё реализовал, но в вог/эре существа у меня перемещаются, а опыт остается привязанным к слоту.
Так же некорректно с опытом работает реализованное мной перемещение последнего стека героя.

(26.07.2010 13:35)SAG Wrote:  
(26.07.2010 13:12)baratorch Wrote:  я реализую умную передачу
ты посмотрел как эти функции работают в ТЕ/WT? там идеально
какие функции? я опять что-то упускаю? В те/вт можно передать армию от одного героя другому (не обменять, а в одностороннем порядке передать)? как?
27.07.2010 00:59
Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16485
Post: #98

baratorch, опыт просто. (КолВоСуществ1 * Опыт1 + КолВоСуществ2 * Опыт2) / (КолВоСуществ1 + КолВоСуществ2). Только нужно юзать двойные int-ы, чтобы переполнения не было.


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

Posts: 1233
Post: #99

(26.04.2010 00:31)etoprostoya Wrote:  Интересно, значит ли это, что файлы в лоде могут иметь имя длиной до 15 символов (с точкой и расширением), вместо 12 стандартных?
Лучше их не использовать. У меня такие файлы читались, но нет полной уверенности.


Вся правда обо мне
27.07.2010 13:19
Find all posts by this user Quote this message in a reply
SAG Offline

Posts: 173
Post: #100

(27.07.2010 00:59)baratorch Wrote:  какие функции? я опять что-то упускаю? В те/вт можно передать армию от одного героя другому (не обменять, а в одностороннем порядке передать)? как?
для удобства, в ТЕ/WT часть операций с армиями не делали кнопками а повесили на клавиши (левые) CTRL, SHIFT , ALT
например:
- для передачи стека целиком от одного героя другому - CTRL+ALT+клик на стек.
CTRL+ALT+SHIFT+клик на стек - разделяет этот стек пропорционально по пустым стекам текущего героя
CTRL+SHIFT+клик на стек - отделяет от стека 1 существо в один пустой стек (единички постоянно требуются в боях для снятия ответного удара)
CTRL+клик на стек - отделяет от стека 1 существо во все пустые стеки
ALT+клик на стек - собирает в кликнутый стек все армии этого типа со всех стеков текущего героя
28.07.2010 11:31
Find all posts by this user Quote this message in a reply
Druin Offline

Posts: 1272
Post: #101

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


Image: pooh_door.gif
28.07.2010 12:06
Visit this user's website Find all posts by this user Quote this message in a reply
MOP Offline
Moderators

Posts: 1468
Post: #102

Да так и есть.
(28.07.2010 11:31)SAG Wrote:  для удобства,
Никогда не понимал, что такого удобного в использовании двух рук вместо одной + требовании держать в голове или бумажке такие извращенские комбинации.


Circle of destruction, hammer comes crushing
Powerhouse of energy
Whipping up a fury, dominating flurry
We create the battery
(This post was last modified: 28.07.2010 13:35 by MOP.)
28.07.2010 13:33
Find all posts by this user Quote this message in a reply
baratorch Offline

Posts: 197
Post: #103

Quote:для удобства, в ТЕ/WT часть операций с армиями не делали кнопками а повесили на клавиши (левые) CTRL, SHIFT , ALT
а вот и не для удобства, а потому что это было самым простым решением.

Quote:(единички постоянно требуются в боях для снятия ответного удара)
Я, между прочим, 9 лет играл в героев, прежде чем начать их модить.

Quote:CTRL+клик на стек - отделяет от стека 1 существо во все пустые стеки
ALT+клик на стек - собирает в кликнутый стек все армии этого типа со всех стеков текущего героя
про эти сочетания я знал, и оценил. Собирался сделать то же самое для сод.

Почему я вообще взялся за управление стеками? Просто я только что, после большого перерыва, поиграл в героев (в СоД есс-но, в другое я не играю) и непосредствеенно почувствовал чего мне не хватает.

Сколько пушей/кликов нужно в те, чтобы передать недельный прирост города от второстепенного героя главному? У меня - 1 клик на кнопку.
29.07.2010 09:34
Find all posts by this user Quote this message in a reply
etoprostoya Offline

Posts: 1809
Post: #104

Есть техническая возможность избавиться от неудобных LOD'ов, заменив их другими архивами, ZIP'ом, например, или свободным gzip?
Было бы просто замечательно! Sm
29.07.2010 09:54
Find all posts by this user Quote this message in a reply
vizit0r Offline

Posts: 17
Post: #105

(29.07.2010 09:54)etoprostoya Wrote:  Есть техническая возможность избавиться от неудобных LOD'ов, заменив их другими архивами, ZIP'ом, например, или свободным gzip?
Было бы просто замечательно! Sm
напиши на форуме VCMI.
впрочем, думаю что-то в этом духе у них уже в проекте есть, должно быть по логике...
(This post was last modified: 29.07.2010 12:37 by vizit0r.)
29.07.2010 12:36
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