Автор Тема: [SMD] хакинг Dune: The Battle for Arrakis  (Прочитано 1400999 раз)

0 Пользователей и 8 Гостей просматривают эту тему.

Оффлайн M3tro ™

  • Пользователь
  • Сообщений: 698
  • Пол: Мужской
  • I’m not afraid, and yall don’t be afraid either…
    • Facebook
    • ВКонтакте
    • Steam
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6810 : 30 Октябрь 2015, 23:43:35 »
Можно попросить Razor проверить миссию на проходимость? У меня пока не получается, но по-моему у меня просто скилла не хватает.

Сценарий: удерживать оборону базы. Затем понемногу скидывается подкрепление (8, 12, 15-18 минуты), с его помощью нужно идти на штурм. Десантные волны врага кончаются на 22 минуте, но там ещё есть заводы. Победа: Уничтожить все здания и юнитов врага. Поражение: потерять все здания.
Да. Вот пруфики, если кому сильно интересно :lol:. A так, я думаю, зря ты ослабил сложность этой миссии, она ведь проходима. Насчёт спайцухи - можно дать её в ограниченных кол-вах.

Оффлайн Alexandr7

  • Пользователь
  • Сообщений: 285
  • Пол: Мужской
  • Багровые Небеса - Прекрасная пиксельная игра
    • ВКонтакте
    • Steam
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6811 : 31 Октябрь 2015, 04:55:23 »
В шапке битая ссылка на разогнанный эмулятор. Может ктонибудь исравит.

Оффлайн Animamundi

  • Пользователь
  • Сообщений: 87
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6812 : 31 Октябрь 2015, 09:57:47 »
Выявил причину "невидимости" зданий. Там как-то забаговалась карта, правда так и не понятно почему  :neznayu:...
в общем, любое здание на этом блоке карты становится невидимым для войск. Такое же здание/другое здание на соседней клетке видится войсками и уничтожается.

А вы знали, что если захватить CY противника, то можно будет строить доступные ему заводы, а на заводах технику его фракции?
Я даже не подозревал об этом, а тут захватил, построил там от него завод, а в нём строится суперлаунчер  :wow:
Срочно сделать CY обратно незахватываемым!

__

Превратил девиатор в пехотинца, он ремонтируется в заводе. Это не лечится.
А взрывчик при смерти пехотинцу, видимо, никак не прописать. Если скрипт не $02 и не $05, то исчезает в никуда просто.



Онлайн Razor

  • Пользователь
  • Сообщений: 1781
  • Пол: Мужской
  • Gotta Go Fast!
    • ВКонтакте
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6813 : 31 Октябрь 2015, 10:49:52 »
Цитата
А вы знали, что если захватить CY противника, то можно будет строить доступные ему заводы, а на заводах технику его фракции?
Так же и в оригинале было, если что.
Цитата
Превратил девиатор в пехотинца, он ремонтируется в заводе. Это не лечится.
Ну так Ti_  делал, чтобы именно юнит пехоты нельзя чинить было, а не Девиатор с другим спрайтом. :lol:
Цитата
В шапке битая ссылка на разогнанный эмулятор. Может ктонибудь исравит.
Прилепил к сообщению

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3265
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6814 : 31 Октябрь 2015, 12:13:54 »
Так же и в оригинале было, если что.Ну так Ti_  делал, чтобы именно юнит пехоты нельзя чинить было, а не Девиатор с другим спрайтом. :lol:Прилепил к сообщению
Чтобы нельзя было чинить, используя баги.  А просто чтобы чинить можно любой юнит настроить, только это делается и в файле ремонтного завода и  самого юнита (в самом юните вроде указывается только о том, что юнита будет кэриолл забирать на ремонт).   В файле ремонтного завода, указываются юниты которые могут заехать в ремонтный завод, только редактора нету этого, только через hex.

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2498
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6815 : 31 Октябрь 2015, 12:35:31 »
repair.bin? какая в нем структура?
Offset      0  1  2  3  4  5  6  7   8  9  A  B  C  D  E  F

00000000   00 00 00 00 00 00 00 00  00 00 00 00 00 80 00 80           
00000010   07 08 00 03 00 4D 02 BC  00 14 00 05 00 04 02 08       
00000020   1C 00 00 00 00 00 00 00  00 00 00 00 00 0E 00 00                   
00000030   00 4B 3F 00 78 03 FF 80  00 00 00 14 00 05 00 16   
00000040   00 00 00 00 00 00 00 00  00 00 00 00 FF FF FF FF     
00000050   FF FF FF FF FF FF FF FF  FF FF FF FF FF FF FF FF
00000060   00 00 00 00 00 00                             

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3265
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6816 : 31 Октябрь 2015, 12:57:10 »
С 0x34 по 0x37 =  78 03 FF 80   (01111000000000111111111110000000)
32 бита - для каждого юнита 0 - нельзя , 1 - может заехать.


Кстати, у refinery также, только там один харвестер.

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2498
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6817 : 31 Октябрь 2015, 13:15:05 »
то есть 32 юнита? а порядок соответствует файлу unit_names_eng.asm? то есть как они там по очереди идут, так и здесь?

а хотя видимо не соответствует... 01111000
CARRYALL_eng:   dc.b   'Carryall',0  0
THOPTER_eng:   dc.b   $27,'Thopter',0  1
INFANTRY_eng:   dc.b   'Infantry',0  1
TROOPERS_eng:   dc.b   'Troopers',0 1
SOLDIER_eng:   dc.b   'Soldier',0             1  вся эта пехота ж не ремонтируется :)
TROOPER_eng:   dc.b   'Trooper',0
SABOTEUR_eng:   dc.b   'Saboteur',0
LAUNCHER_eng:   dc.b   'Launcher',0

где тогда можно взять порядок?

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3265
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6818 : 31 Октябрь 2015, 14:32:47 »
то есть 32 юнита? а порядок соответствует файлу unit_names_eng.asm? то есть как они там по очереди идут, так и здесь?

а хотя видимо не соответствует... 01111000
CARRYALL_eng:   dc.b   'Carryall',0  0
THOPTER_eng:   dc.b   $27,'Thopter',0  1
INFANTRY_eng:   dc.b   'Infantry',0  1
TROOPERS_eng:   dc.b   'Troopers',0 1
SOLDIER_eng:   dc.b   'Soldier',0             1  вся эта пехота ж не ремонтируется :)
TROOPER_eng:   dc.b   'Trooper',0
SABOTEUR_eng:   dc.b   'Saboteur',0
LAUNCHER_eng:   dc.b   'Launcher',0

где тогда можно взять порядок?
Не в ту сторону считаешь просто, младшие биты - справа.
То есть bit#0 - это 0 (carryal)
#1 - -       это 10 (thopter)
#2 -       это 100 (infantry)

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2498
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6819 : 31 Октябрь 2015, 17:07:46 »
там ошибки в игре нет? в английском варианте топтер начинается с кавычек - "THOPTER

Rocket, ARocket, GRocket, MiniRocket, Bullet в том списке, я так понимаю что это все не совсем юниты, а скорее снаряды в игре являются "юнитами" :)

в итоге что-то я не нашел в каких миссиях и за кого найти следующие юниты:
Frigate, RocketQuad, Laser Tank и Orka

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3265
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6820 : 31 Октябрь 2015, 17:19:30 »
там ошибки в игре нет? в английском варианте топтер начинается с кавычек - "THOPTER

Rocket, ARocket, GRocket, MiniRocket, Bullet в том списке, я так понимаю что это все не совсем юниты, а скорее снаряды в игре являются "юнитами" :)

в итоге что-то я не нашел в каких миссиях и за кого найти следующие юниты:
Frigate, RocketQuad, Laser Tank и Orka
Так " это сокращение, полное название не влезало видимо.

Rocket и прочее скажем так - это объекты. И юниты и оружие являются одним видом объектов.
Здания это уже другой вид объектов.

Frigate это транспортник из космоса, привозит юниты в космопорт.
RocketQuad, Laser Tank и Orka -  на любых, какие им пропишешь. А также добавь их в заводы.

Оффлайн Animamundi

  • Пользователь
  • Сообщений: 87
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6821 : 31 Октябрь 2015, 17:23:38 »
Ага, а ещё есть такой баг, что "new_units", ховертанк например, не считаются юнитом для переменной "потеряны все юниты" - у меня оставался целый ховертанк, когда засчитали поражение по условию потери юнитов.

______________________

Ti_ Всезнающий, а не расскажешь ли, где что подкрутить в хексе, чтобы тяж.танк тоже стрелял лазером?

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3265
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6822 : 31 Октябрь 2015, 17:36:51 »
Ага, а ещё есть такой баг, что "new_units", ховертанк например, не считаются юнитом для переменной "потеряны все юниты" - у меня оставался целый ховертанк, когда засчитали поражение по условию потери юнитов.

______________________

Ti_ Всезнающий, а не расскажешь ли, где что подкрутить в хексе, чтобы тяж.танк тоже стрелял лазером?
1) Ок. Поправим потом.

2) Тип повреждений снаряда ставить как у лазер танка. Вроде следующее значение после типа юнита-оружия.

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2498
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6823 : 31 Октябрь 2015, 20:16:48 »
THOPTER_rus:   dc.b   'Орнитоптер',0

THOPTER_eng:   dc.b   $27,'Thopter',0

так накой эта кавычка то? :) $27 в русском то варианте нету...


а те юниты так и невдуплил как их "включать". ладно фиг с ними - я большие иконки взял, вместо тех что на заводе должны были бы показываться. мне не критично в принципе :)



еще я подозреваю в этом листе не хватает пехоты атрейдисов из дворца...

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3265
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6824 : 31 Октябрь 2015, 22:11:25 »
так накой эта кавычка то? :) $27 в русском то варианте нету...
Так " это сокращение, полное название не влезало видимо.

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3265
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6825 : 31 Октябрь 2015, 22:13:20 »
еще я подозреваю в этом листе не хватает пехоты атрейдисов из дворца...
Это не отдельный юнит.  Статы как у фремен труперов, только жизней в 2 раза больше.  Кстати фремены тоже не отдельный юнит, а просто трупер с другой иконкой.  Но в сборке можно настроить некоторые статы для фременских и сардукарских труперов отдельно.

Добавлено позже:
а те юниты так и невдуплил как их "включать".
В buildings\can_build.asm   какие юниты может строить завод.

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2498
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6826 : 31 Октябрь 2015, 22:17:11 »
с орнитоптером понял наконец - должно было быть на английском орнитоптер? а мы типа сократили до Топтера? я думал топтер это уже нормальное название и все никак понять не мог на кой черт кавычка :)

и с названием своего файла напутал... repair... а я его repear назвал каламэне :)))))

Добавлено позже:
ща тада попробуем включить их и исправить иконки в моем редакторе... только орка по всей видимости уже был включен:
dc.b   new_unit5 ; new_unit5-orka - но для какого он дома то был предусмотрен? тоже самое для тех двух юнитов я их добавил:
dc.b new_unit2   ; new_unit2-rocketquad
dc.b new_unit3   ; new_unit3-lasertank
но к какому дому это относится?

Добавлено позже:
орку нашел :) сфотографировал. терь те два остались...
« Последнее редактирование: 31 Октябрь 2015, 22:44:47 от SeregaZ »

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2498
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6827 : 31 Октябрь 2015, 23:16:14 »
все. теперь правильные иконки :) пробуйте!

Онлайн Razor

  • Пользователь
  • Сообщений: 1781
  • Пол: Мужской
  • Gotta Go Fast!
    • ВКонтакте
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6828 : 01 Ноябрь 2015, 00:33:56 »
Удобная прога получилась. Теперь ради прикола и пацанов чинибельными можно сделать. :thumbup:

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2498
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6829 : 01 Ноябрь 2015, 01:08:16 »
лучше было бы конечно если она брала бы иконки из самой сборки и так-же названия оттуда-же, ведь ромхакер мог изменить какие-то названия и иконки... потом будет морщить лоб вспоминая какие оригинальные юниты соответствуют его измененным :) надо будет подумать над этим... если там не слишком сложно графика запакована - то можно попробывать.

Оффлайн M3tro ™

  • Пользователь
  • Сообщений: 698
  • Пол: Мужской
  • I’m not afraid, and yall don’t be afraid either…
    • Facebook
    • ВКонтакте
    • Steam
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6830 : 01 Ноябрь 2015, 02:58:06 »
А просто чтобы чинить можно любой юнит настроить, только это делается и в файле ремонтного завода и  самого юнита (в самом юните вроде указывается только о том, что юнита будет кэриолл забирать на ремонт).   В файле ремонтного завода, указываются юниты которые могут заехать в ремонтный завод, только редактора нету этого, только через hex.
А в файле юнита по какому оффсэту менять и на какое значение, чтоб за ним кэрриал прилетал?

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3265
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6831 : 01 Ноябрь 2015, 08:33:29 »
А в файле юнита по какому оффсэту менять и на какое значение, чтоб за ним кэрриал прилетал?
0x0C   , bit #0.
То есть пример: у танка прописано $25 (00100101) ; у пехоты $24 (00100100).

Добавлено позже:
лучше было бы конечно если она брала бы иконки из самой сборки и так-же названия оттуда-же, ведь ромхакер мог изменить какие-то названия и иконки... потом будет морщить лоб вспоминая какие оригинальные юниты соответствуют его измененным :) надо будет подумать над этим... если там не слишком сложно графика запакована - то можно попробывать.
Так и сборка может измениться.  :lol:

Добавлено позже:
но к какому дому это относится?
Открой файлы юнитов в редакторе DuneUnitBuilds - увидишь их свойства (с какого уровня, какому дому, сколько апгрейдов надо).
Также ещё надо смотреть  misc\upgrades.asm .

Добавлено позже:
а мы типа сократили до Топтера?
Не мы, а разрабы.

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2498
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6832 : 01 Ноябрь 2015, 12:09:12 »
Так и сборка может измениться.  :lol:
то есть если сейчас 102 байта файл завода ремонтного, то потом он может поменятся? точно так-же и с иконками - если сейчас они по одним адресам, в новой версии могут лежать по другим?

Открой файлы юнитов в редакторе DuneUnitBuilds - увидишь их свойства (с какого уровня, какому дому, сколько апгрейдов надо).
Также ещё надо смотреть  misc\upgrades.asm .
да я побыстрому коды вбивал на 9 миссию всех домов по очереди, сплургеолу и строил базу и смотрел.

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3265
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6833 : 01 Ноябрь 2015, 12:39:36 »
то есть если сейчас 102 байта файл завода ремонтного, то потом он может поменятся? точно так-же и с иконками - если сейчас они по одним адресам, в новой версии могут лежать по другим?
да я побыстрому коды вбивал на 9 миссию всех домов по очереди, сплургеолу и строил базу и смотрел.
1) размер нет - менять нету необходимости.
2) в каждой сборке практически всё собирается в другие адреса.
Подразумевалось, что могут измениться пути или названия файлов или папок иконок.

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2498
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6834 : 01 Ноябрь 2015, 12:52:43 »
так если вовремя отслеживать новые версии - то думаю можно будет этот момент предусмотреть :)

по поводу иконок - я так понимаю размер, что показывает DuneUnitEditorRUSbin.exe (шикарная вещь, кстати, разве что за исключением кнопки эвакуации кериолом :) - кто эту программу делал? он не сможет её обновить для этой кериол-опции?), правильный? то есть в игре она такая и есть? 32х24? то есть 768, но размер файла иконки 384 - ровно в два раза меньше. "совпадение? не думаю" (с) Киселев. видимо в одном байте лежат две точки. и видимо именно точки, я бы сказал маркеры на цвет - а не сами координаты цвета (типа RGB 255 255 255 - в 1111 три раза по 255 однако не влезет :))

техническим языком не владею - написал уж как сам понял.

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3265
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6835 : 01 Ноябрь 2015, 13:00:40 »
так если вовремя отслеживать новые версии - то думаю можно будет этот момент предусмотреть :)

по поводу иконок - я так понимаю размер, что показывает DuneUnitEditorRUSbin.exe (шикарная вещь, кстати, разве что за исключением кнопки эвакуации кериолом :) - кто эту программу делал? он не сможет её обновить для этой кериол-опции?), правильный? то есть в игре она такая и есть? 32х24? то есть 768, но размер файла иконки 384 - ровно в два раза меньше. "совпадение? не думаю" (с) Киселев. видимо в одном байте лежат две точки. и видимо именно точки, я бы сказал маркеры на цвет - а не сами координаты цвета (типа RGB 255 255 255 - в 1111 три раза по 255 однако не влезет :))

техническим языком не владею - написал уж как сам понял.
Иконки все открываются с помощью yy-chr (smd-файлы) + подгрузить палитру из game.pal.
DuneUnitEditorRUSbin автор пропал,  но добавлять  в неё опцию "увозит кэриолл" - глупость.  , Ну хотя бы потому что в файле юнита есть еще около 15-25 свойств, которых в редакторе нет.

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2498
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6836 : 01 Ноябрь 2015, 14:32:10 »
так... со схемой графики разобрался вроде. там оказывается шли квадратики 8х8 и строить их надо было по вертикали. теперь надо разобраться с этой цветностью...

1111 это видимо 16 цветов. каждому цвету по 3 параметра - если это RGB. ну предположим что RGB - получается 16 х 3 = 48 байт. однако game.pal это 768 байт. как-то не ясно где цвета брать...

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3265
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6837 : 01 Ноябрь 2015, 15:58:26 »
так... со схемой графики разобрался вроде. там оказывается шли квадратики 8х8 и строить их надо было по вертикали. теперь надо разобраться с этой цветностью...

1111 это видимо 16 цветов. каждому цвету по 3 параметра - если это RGB. ну предположим что RGB - получается 16 х 3 = 48 байт. однако game.pal это 768 байт. как-то не ясно где цвета брать...
game.pal  - это игровая палитра  - в ней 4 ряда по 16 цветов.  И то что 768 ничего не значит.  Там заюзано 192 байта.
И это вообще не собирается в ром, а нужно для yy-chr'а.  В ром идут из gfx\palettes\gamepal.asm.  Только там еще 4 комбинации разные в зависимости от домов.
А малые иконки почти все используют вроде последний (4-ый) ряд палитры.

Оффлайн SeregaZ

  • Пользователь
  • Сообщений: 2498
  • Пол: Мужской
  • ливнул с форума
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6838 : 01 Ноябрь 2015, 16:37:09 »
ну осталось теперь фигня - понять в какой системе эти числа :) RGB - там было бы 6 знаков, а тут всего 3 $EEE...

Оффлайн Ti_

  • Пользователь
  • Сообщений: 3265
  • Пол: Мужской
    • ВКонтакте
    • Youtube
    • Просмотр профиля
[SMD] хакинг Dune: The Battle for Arrakis
« Ответ #6839 : 01 Ноябрь 2015, 17:54:45 »
ну осталось теперь фигня - понять в какой системе эти числа :) RGB - там было бы 6 знаков, а тут всего 3 $EEE...
0= 0  ; 2=36; 4=72; 6=109; 8 = 145; A =  181;  C = 219; E =255.   BGR