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

Post Reply 
Threaded Mode | Linear Mode
Исследование героев
» туториал(ы)
Author Message
feanor Offline

Posts: 622
Post: #661

Щас посмотрю.
Есть mip, который указатель на тайл клетки, а есть пакованные координаты.

//здесь - да, пакованные координаты
(This post was last modified: 23.10.2015 19:39 by feanor.)
23.10.2015 19:37
Find all posts by this user Quote this message in a reply
igrik Offline
Administrators

Posts: 2807
Post: #662

это побитовый сдвиг с присваиванием? блин, для меня это темный лес, а можно разжевать для чайника


game bug fixes extended.dll || My Plugins || My GitHub
23.10.2015 23:51
Visit this user's website Find all posts by this user Quote this message in a reply
gamecreator Offline

Posts: 7107
Post: #663

Разве ты с флагами существ не работал?
Вообще у Миханика хорошо рассказано, в предисловии к справке по значениям OB:C. Недавно мелькала тут ссылка на дф2.


When all gods have burnt to ashes in eternity of sorrow,
Demons gonna tear your soul because there is no tomorrow.
24.10.2015 00:32
Find all posts by this user Quote this message in a reply
igrik Offline
Administrators

Posts: 2807
Post: #664

работал, но я всё равно не вижу связи. Ты хочешь сказать, что это вроде проверки &16 или |16?


game bug fixes extended.dll || My Plugins || My GitHub
24.10.2015 00:56
Visit this user's website Find all posts by this user Quote this message in a reply
gamecreator Offline

Posts: 7107
Post: #665

Да. Вот смотри, есть у тебя int:
Code:
□□□□ □□□□ □□□□ □□□□ □□□□ □□□□ □□□□ □□□□
Всего 32 двоичных цифры (то есть 32 бита).
Число твоё - это сумма: (x & 0x3FF) + ((y & 0x3FF) << 16) + ((l & 0xF) << 26).
0x3FF = 11 1111 1111 (10 бит)
0xF = 1111 (4 бита)
Это обычная маска, как в твоём &16.
Теперь смотришь на сдвиг. Значение сдвинуто влево на несколько бит, то есть все его цифры переместились на более старшие позиции. Если сдвинуто влево на 1 бит, то 0-й бит будет пустым, а значение будет начинаться с 1-го бита. Если сдвинуто на 2, то 0-й и 1-й биты пустые, значение начинается со 2-го и т.д.
Значит x начинается с 0-го бита, y - с 16-го, l - с 26-го:
Code:
- □□□□ □□□□ □□□□ □□□□ □□□□ □□□□ □□□□ □□□□
x                            11 1111 1111
y        11 1111 1111
l   11 11
Как видишь, они не пересекаются. Каждое значение на своём месте:
Code:
□□ll llyy yyyy yyyy □□□□ □□xx xxxx xxxx


When all gods have burnt to ashes in eternity of sorrow,
Demons gonna tear your soul because there is no tomorrow.
24.10.2015 01:55
Find all posts by this user Quote this message in a reply
igrik Offline
Administrators

Posts: 2807
Post: #666

я въехал!!! Огромное, огромное мерси! И теперь знаю как это применить...
Ведь int = 4 байта = 32 бита жеж. Вуаля))


game bug fixes extended.dll || My Plugins || My GitHub
24.10.2015 02:21
Visit this user's website Find all posts by this user Quote this message in a reply
igrik Offline
Administrators

Posts: 2807
Post: #667

Окно найма существ/боевых машин героем
Отписываюсь и там и там, ибо df2 имеет свойство не работать


game bug fixes extended.dll || My Plugins || My GitHub
09.11.2015 19:09
Visit this user's website Find all posts by this user Quote this message in a reply
igrik Offline
Administrators

Posts: 2807
Post: #668

Дополним триггер !?CM
Code:
!?CM0 - вызывается при клике ПКМ на карте приключений
!?CM1 - вызывается при клике в окне замка
!?CM2 - вызывается при клике в окне героя
!?CM3 - вызывается при клике в окне обмена между героями
!?CM4 - вызывается при клике на поле боя
!?CM5 !?CM9 - вызываются при клике ЛКМ на карте приключений
!?CM6 - вызывается при одевании артефакта
!?CM7 - при движение мышью в бою
!?CM8 - при движении мышью в городе
!?CM11 - после покупки здания (видимо при обновлении/прорисовке окна города и карты приключений, окна боя), посещение любого объекта на карте,
!?CM12 - при открытии книги заклинаний на карте приключений через кнопку
!?CM13 - при закрытии книги заклинаний на карте приключений через кнопку
!?CM14 - вход в окно покупки зданий в городе
!?CM15 - выход из окна покупки в городе
!?CM30 - открытие окна командира
!?CM31 - закрытие окна командира
триггеры CM10, 16...21 пока не нашёл


game bug fixes extended.dll || My Plugins || My GitHub
12.11.2015 03:53
Visit this user's website Find all posts by this user Quote this message in a reply
feanor Offline

Posts: 622
Post: #669

о_О
шо, правда?
12.11.2015 04:29
Find all posts by this user Quote this message in a reply
feanor Offline

Posts: 622
Post: #670

А, отставить офигевать.

Сравни с списком (erm.cpp)
Quote:// 30310 mouse click на карте (правый) !?CM0
// 30311 mouse click в Городе !?CM1
// 30312 mouse click in hero screen !?CM2
// 30313 mouse click it two heroes screen !?CM3
// 30314 mouse click in battlefield !?CM4
// 30315 игрок снял артифакт
// 30316 игрок одел артифакт
// 30317 mouse move over battlefield
// 30318 mouse move over townscreen
// 30319 mouse click на карте (левый) !?CM5
// 30320 MP3 music
// 30321 WAV and M82 Sound 3.58
// 30322 Magic cast (adv. map) (pre-trigger)
// 30323 Magic cast (adv. map) (post-trigger)
// 30324 Go to Town Hall Screen 3.58 !?TH0
// 30325 Leave Town Hall Screen 3.58 !?TH1
// 30330 MP before sending data before battle
// 30331 MP after receiving data before battle
// 30332 MP before sending data after battle
// 30333 MP after receiving data after battle
// 30334 MP received data during a battle
// 30340 CO Перед открытием диалога Командира
// 30341 CO После закрытия диалога Командира
// 30342 CO После покупки Командира в городе
// 30343 CO После воскрешения Командира в городе
12.11.2015 04:36
Find all posts by this user Quote this message in a reply
igrik Offline
Administrators

Posts: 2807
Post: #671

млинн, точно!


game bug fixes extended.dll || My Plugins || My GitHub
12.11.2015 23:48
Visit this user's website Find all posts by this user Quote this message in a reply
igrik Offline
Administrators

Posts: 2807
Post: #672

Что то не могу найти в exe: по какому адресу лежит "avwphx.def".
Да и вообще с подменой дефа феникса жуткие траблы. Не меняются дефы, хоть убей. Приходится изменять название через патч экзешника. С основным дефом и озвучкой разобрался. Но вот деф на карте не могу найти

или что такое?
_int_ advmap_low;
_int_ advmap_high;


game bug fixes extended.dll || My Plugins || My GitHub
04.12.2015 17:34
Visit this user's website Find all posts by this user Quote this message in a reply
feanor Offline

Posts: 622
Post: #673

Дефы на карте в объектных текстовиках.
05.12.2015 00:18
Find all posts by this user Quote this message in a reply
feanor Offline

Posts: 622
Post: #674

Генерация рандомных артов - это 004C9190

(25.12.2015 02:34)Algor Wrote:  Кто в курсе, как разрешить генерацию WoG-артефактов, например, артефактов командира, на карте (на месте случайных артефактов...)?
(25.12.2015 12:18)igrik Wrote:  Может можно через UN:C расширить кол-во артов. Мож там функция типа "_random[7,125]" и можно ее сделать "_random[7,255]"?

да, там надо в двух местах поправить константу (=144) на сколько надо.
Там есть нюанс - оно заодно обращается к двум таблицам (запрета артов и уже наличествующих артов), которые имеют фиксированный размер и, что хуже, лежат в очень динамической памяти
25.12.2015 14:06
Find all posts by this user Quote this message in a reply
igrik Offline
Administrators

Posts: 2807
Post: #675

На DF2 зашел разговор о телекинезе, делать было нечего, поэтому начал накидывать, но потом что-то стало влом.
Короче, функция посещения героем любого объекта удалённо (даже самого себя):


game bug fixes extended.dll || My Plugins || My GitHub
06.02.2016 03:35
Visit this user's website 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