Разработка и ромхакинг > Ромхакинг и программирование
[SMD] хакинг Dune: The Battle for Arrakis
<< < (395/447) > >>
Ermac_oo:
С Праздником Вас! Берегите себя и близких, ну и конечно про друзей не забывайте! :)
Razor:
Обновил Dune Razor Missions:

* Вставил большие горы на все миссии
* Вставил баланс из Razor Missions Ultimate
* Вставил новые элементы графики из Razor Missions Ultimate
Скачать
SeregaZ:
а я плевался плевался... так и не смог родить алгоритм по определению модуляции. криво то он определяет, но надо то не криво. кароче пока-что возможность спереть спецэффекты откладывается. окончательно треккер запилю, чтоб с блек джеком и с легкодоступными женщинами, и потом уже буду думать над этой сраной модуляцией.

окно самого треккера в принципе готово. кажись последние косяки седня отловил. в итоге:
главное окно - есть
FM редактор инструмента - есть
PSG редактор инструмента - есть
редактор сэмплов - есть

надо как конструктор лего просто все собрать и научить главное окно экспортировать в папки треков, а потом и импортировать.
Серьба:
А есть ли миссии за Наёмников (Mercenary)?
SeregaZ:
чото ну ваще не тянет программить... так с нового года и не притронулся ниразу. недоделанное висит кароче... вот смотрю на редактор карт :) тоже хочу недоделать, чтоб тоже зависло посередине. и тут чот малость непонятно... в каком виде в файле идут блоки друг за другом? 1024b - там понятно. 32 блока по 32. 64 - тож самое 64 на 64. а вот 128 как? 128 по 128 не катит. в середине не склеивается:

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

Добавлено позже:
по всей видимости недопилено. и выходит он действительно не 128х128, а 64х64 1 экран, потом 3 экран, потом 2 экран и потом 4.

Добавлено позже:
оказалось не совсем туда смотрел. мозаика ненужна. оно по порядку идет. но сами карты 128 все-ж недопилены. это компиляция из 4 64 разных карт по сути, поэтому на стыках не красиво.
M3tro ™:

--- Цитата: SeregaZ от 17 Февраль 2017, 09:43:35 ---а вот 128 как? 128 по 128 не катит. в середине не склеивается:

по всей видимости недопилено. и выходит он действительно не 128х128, а 64х64 1 экран, потом 3 экран, потом 2 экран и потом 4.

это компиляция из 4 64 разных карт по сути, поэтому на стыках не красиво.

--- Конец цитаты ---
Ti_ же писал полтора года назад:

--- Цитата: Ti_ от 14 Июль 2015, 19:17:56 ---изменения r79b->r80

--- Код: ---+ образцы карт x128 - склеены из оригинальных (требуют правки на стыках).
--- Конец кода ---

--- Конец цитаты ---
Готовых карт в *128 нету, готовые есть только в уже собранных хаках ;).
SeregaZ:
не читал  :blush:

Добавлено позже:
а расшифровки по байтам в файлах миссии нет? так то в принципе понятно - в основном это блок из 4 байтов - 1 дом, 2 код, 3-4 значение, но что-то уж много непонятных значений :)

типа квота 02 51 00 04. что за квота еще? - хотя вроде ясно. лимит спайса, который надо собрать.

не понятно применение курсора и тактического чего-то там. точнее понятно что цифра это координата в поле 128х128 - одна цифра, построчно. типа цифра 50 - это 1 строка, 50 столбик. а если это скажем 150 - то 2 строка и 150-128 = 22 столбик. но зачем их две?  я думал курсор это равнозначно положению экрана. а тут получается экран может быть в одном месте, а курсор в другом чтоль?

и я так понимаю в этом же файле миссии лимит старпорта указан, а так-же десанты. причем по десанту хоть и прилетают по 2 юнита скажем, но по сути это получается два разных десанта просто в одно и то-же время.

по заводам пока еще не разобрался, но видимо там по той-же схеме 4 байта - дом, завод, 3-4 координаты.

Добавлено позже:
однако с координатами заводов чот не то :) не 128 в линию, а 64.  соответственно чот в редакторе, при карте 128х128 - не дает выставить домики за пределы 64х64.

Добавлено позже:
ясно. редакторы кривые... в одном хер по карте передвинешься куда надо, но зато 128 карты вроде бы правильно грузит. в другом эти 128 нифига не правильно. в результате в одном редакторе твоя база в правом краю, в другом внизу.

и как вы с такими редакторами миссии пилили? это ж просто п..ц какой-то...
M3tro ™:

--- Цитата: SeregaZ от 18 Февраль 2017, 03:34:02 ---а расшифровки по байтам в файлах миссии нет? так то в принципе понятно - в основном это блок из 4 байтов - 1 дом, 2 код, 3-4 значение, но что-то уж много непонятных значений =)

--- Конец цитаты ---
Читай сообщения Тая, начиная с этого:

--- Цитата: Ti_ от 14 Январь 2015, 14:03:21 ---
--- Цитата: Docm@n от 14 Январь 2015, 14:01:44 ---Ти ай - добавь лучше в DuneAMC - что бы можно было харвестеру начислять загруженность спайса. То есть типа как на "T" меняются хэлсы юнитам - так же через другую команду можно было бы менять загруженность харвестера, что бы например с начала миссии он был не пустой.Очень важная штука - расширит возможности для создания интересных миссий.

--- Конец цитаты ---
AMC он просто редактор. В него нельзя добавлять новые возможности. Он оперирует лишь тем что есть - те возможности которые были в оригинале и некоторые новые добавленные в dunehack.

--- Конец цитаты ---


--- Цитата: SeregaZ от 18 Февраль 2017, 03:34:02 ---и я так понимаю в этом же файле миссии лимит старпорта указан, а так-же десанты. причем по десанту хоть и прилетают по 2 юнита скажем, но по сути это получается два разных десанта просто в одно и то-же время.

--- Конец цитаты ---
Верно всё понимаешь =).


--- Цитата: SeregaZ от 18 Февраль 2017, 03:34:02 ---редакторы кривые… в одном хер по карте передвинешься куда надо, но зато 128 карты вроде бы правильно грузит. в другом эти 128 нифига не правильно. в результате в одном редакторе твоя база в правом краю, в другом внизу.
и как вы с такими редакторами миссии пилили? это ж просто п..ц какой-то…
--- Конец цитаты ---
:D Там всё намного проще, чем ты думаешь)), разве что к картам *128 нужен особый подход :biggrin:. Там, если хочешь, чтоб файл миссии для *64 грузился ровно, то открывай сначала файл миссии, а потом файл *128-карты. Если ты в DuneAMC сначала откроешь большую карту, а потом на ней загрузишь обычную миссию, то здания и юниты этой миссии будут разбросаны по всей верхней части карты.
Только вот зачем по-новой изобретать лесапед, если ныне существуют вполне рабочие DuneAMC и DME3?
NakL3:

--- Цитата: M3tro ™ от 18 Февраль 2017, 14:41:28 --- Только вот зачем по-новой изобретать лесапед, если ныне существуют вполне рабочие DuneAMC и DME3?

--- Конец цитаты ---
Зачем вообще что-то изобретать, когда Дюне-хакинг находится в полу-мёртвом состоянии?
SeregaZ:
а я хочу хочу опяяяять... по крышам бегать голубей гонять...

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

миникарту сделать было тоже не сложно. там просто добавляешь множитель. типа 128х128 множитель как есть 1, 64х64 - множитель 2. то есть там уже не точка, а квадратик 2х2 и 32х32 - квадратики уже по 4 пикселя сторона.

теперь надо будет сделать клик по миникарте, чтоб экран на большой карте передвигался куда нужно...

самое смешное все эти наработки потом опять таки понадобятся :))))
SeregaZ:
а откуда вобще читаются эти блоки земли? сейчас то взял gif'ку из одного из редакторов и в ней по номерам блоки идут. но это несколько не верно :) хочу блоки и палитру для этого читать из игры, чтоб на случай если пользователь что-то менял в игре, то редактор видел эти измененные блоки и мог их рисовать.

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

по второй мысли то в принципе понятно - в сборщике лежат эти вещи отдельно, там другая проблема - размеры. ведь это может быть пехотинец - 8х8, а может быть что пожирнее. и вроде как тип спрайта как раз за это отвечает... но я пока еще не совсем понял про этот тип...

потом градусы поворота юнита. в редакторе... не помню чьем - был момент поворота колесиком мышки. так вот у трайка - 5 вариантов спрайта, а у ланчера три. то есть трайк можно будет повернуть на... ээ... 22 градуса? или сколько там... а ланчер только 0, 45, 90 - то есть промежуточного между 0 и 45 не будет, как у трайка. так-же сам ланчер состоит из трех спрайтов один 2х3, второй 3х3, третий 3х2. рдлорыашгывало *непереводимыйрусскийфольклор. поэтому хотелось бы знать где лежит подобная таблица:
тип: ланчер
спрайт1: файл.бин (мордой вверх)
спрайт1конфиг: 2х3
зеркало1: 0 (спрайт как есть)
спрайт2: empty (так как нет промежуточного между 0 и 45 градусами)
спрайт2конфиг: empty
зеркало2: 0
спрайт3: файл.бин (45 градусов поворот)
спрайт3конфиг: 3х3
зеркало3: 0

спрайт7: файл.бин (45 градусный)
спрайт7конфиг: 3х3
зеркало7: 1 (1 зеркало снизу, то есть это 135 градусов) (2 зеркало - слева. типа если это был 90 градусный спрайт, то с таким зеркалом станет 180, 3 зеркало и там и там, то есть если это был 45 градусов в оригинале, то после двух зеркал становится 225)

Добавлено позже:
и совсем вылетело из головы... где брать эти файлы:
при поражении:
LOSTBILD.WSA
LOSTVEHC.WSA

победа
WIN1.WSA
WIN2.WSA

брифинг
HARVEST.WSA
HEADQRTS.WSA
QUAD.WSA
LTANK.WSA
REPAIR.WSA
HVYFTRY.WSA
STANK.WSA  HARKTANK.WSA  ORDRTANK.WSA
PALACE.WSA
SARDUKAR.WSA

и почему на некоторых в конце указания названия файла добавлена какая-то W? по идее она входит в лимит строчки, то есть как здесь указано размер 10 байт. на 8 байт название файла, потом 9 байт пусто и 10 эта сраная W. ошибка при создании игры?
Ti_:

--- Цитата: SeregaZ от 21 Февраль 2017, 06:42:58 ---.WSA

и почему на некоторых в конце указания названия файла добавлена какая-то W?

--- Конец цитаты ---
1) Нету .wsa файлов в md версии, только в ПК.
2) Баг DME.


Добавлено позже:

--- Цитата: SeregaZ от 21 Февраль 2017, 06:42:58 ---точно так-же хочу и юнитов, чтоб названия и внешний вид читался из ресурсов, а не из кода самого редактора. потому как пользователь мог запилить своего юнита со своим внешним видом. вот было бы здорово, если редактор будет это дело читать и использовать на редакторе карт и миссий.

--- Конец цитаты ---
Это не вариант. Хотя блоки можно (game.smd+metatiles.bin), а вот конфиги юнитов если рассматривать rebuild, для старых внутри рома и не редактируются, для новых юнитов редактируются в отдельных файлах. (Разве что к следующей версии).
Лучше сделай просто чтобы редактор загружал картинки png из папки. Так сохранится совместимость с любой версией.
SeregaZ:
так что, можно будет ожидать что эти файлы задних фонов брифингов в конце миссий WSA будут в отдельном виде? ладно там победный и поражение - они как gif - там есть анимация дыма есть и поэтому сложнее, но остальные то статичные. их можно будет увидеть в виде отдельных файлов? просто там несколько глупо будет выглядеть. скажем перерисовал ты орнитоптёр - а на этой картинке он оригинального дизайна. конечно на эти экраны никто не обращает внимание... но все равно хорошо бы эти картинки в виде отдельных файлов и файла палитры к ним :)

а по поводу юнитов - почему старые нельзя? они ж все итак лежат gfx\sprites_std в распакованном, так сказать, виде. так-же там-же tanks_sprcfg.bin лежит - он по видимому как раз и есть та моя таблица с размерами и "зеркалами". правда пока не понятно в каком формате там... вот я к чему и веду, чтоб юнитные спрайты были не цельной фигней, как они сейчас - скажем тот-же трайк где 5 видов в одном файле, а чтоб каждый кадр был отдельно. и чтоб этот каждый кадр был упомянут в том файле с моей таблицей описаний - то есть все... эээ... сколько там может быть вариантов? 17? вот все 17 для каждого юнита. я наверное даже смогу разрезать их на отдельные файлы - ты главное таблицу сделай и чтоб она читалась сборщиком.

по поводу png - можно конечно... но хотелось бы то чтоб читало юниты уже самих ромхакеров :) тут же ведь как - если такая таблица будет доступна для редактирования, то можно будет пехоту перерисовать вообще глобально. то есть если в оригинале она была скажем 8х8, то редактируя эту таблицу ты как бы можешь создать этой пехоте более жирный спрайт 16х16 скажем. естественно это может быть сделано только в разумных пределах - если увеличивать пехоту, то придется скажем отказаться от каких-то юнитов, то есть тайлы тех отказных пойдут в зачет измененного пехотного. или например тот-же трайк - нафига там 22 и 66 градусные тайлы? я понимаю что для плавности, но их можно было бы сэкономить и сделать как на ланчере скажем - вместо 5 кадров там всего 3. 0-45-90, вместо трайковских 0-22-45-66-90

и завершает мой список хотелок - флаги палитры для каждой иконки.

остальные хотелки уже забыл... так-что три пока-что :)
1. отдельные wsa файлы картинок брифингов
2. порезанные спрайты с таблицей их описаний
3. флаги палитры для иконок

Добавлено позже:
я пока демку набросаю о чем я толкую в плане таблицы спрайтов с зеркалами и размерами.

Добавлено позже:
длывазшрныа... все оказалось сложнее и запутанней.

Добавлено позже:
зато понятно что главный параметр это высота. то есть не нужно размеры указывать 3х3, 2х3 - достаточно только высоту. скажем 3 - система сама понимает что данные идут в столбик сверху вниз по 3 тайла до конца файла.

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

помимо высоты и зеркала относительно нового кадра видимо должен быть еще один параметр - зеркало относительно не нового, а оригинального кадра. на примере кериола - там ведь спрайт всего-лишь половинка юнита.

но больше всего меня убивает что эти сраные программеры дюны, когда лепили эту самую дюну - не привели все к единому формату. я то думал если идет спрайт из нескольких спрайтов - то первый всегда 0 градусов - смотрит вверх. второй или 22 или 45. но на примере соника - он, скатина, будучи вторым 135 градусов. что опять таки путает мне все карты.
Ti_:

--- Цитата: SeregaZ от 23 Февраль 2017, 06:03:35 ---так что, можно будет ожидать что эти файлы задних фонов брифингов в конце миссий WSA будут в отдельном виде?

--- Конец цитаты ---
1) Можно. Только wsa файлов нет, есть .smd+.map. И эти картинки не задаются в файлах миссий.


Добавлено позже:

--- Цитата: SeregaZ от 23 Февраль 2017, 06:03:35 ---а по поводу юнитов - почему старые нельзя?

--- Конец цитаты ---

--- Цитата ---конфиги юнитов если рассматривать rebuild, для старых внутри рома и не редактируются, для новых юнитов редактируются в отдельных файлах. (Разве что к следующей версии rebuild)
--- Конец цитаты ---

Добавлено позже:

--- Цитата: SeregaZ от 23 Февраль 2017, 06:03:35 ---я то думал если идет спрайт из нескольких спрайтов - то первый всегда 0 градусов - смотрит вверх. второй или 22 или 45. но на примере соника - он, скатина, будучи вторым 135 градусов. что опять таки путает мне все карты.

--- Конец цитаты ---
1) не вижу такого у соника. 2) В оригинальном роме дюны все спрайты 1 юнита одинакового размера.

Добавлено позже:

--- Цитата: SeregaZ от 23 Февраль 2017, 06:03:35 ---помимо высоты и зеркала относительно нового кадра видимо должен быть еще один параметр - зеркало относительно не нового, а оригинального кадра. на примере кериола - там ведь спрайт всего-лишь половинка юнита.

--- Конец цитаты ---
У орнитоптер конфиг на 3 спрайта, у кэриолл из двух вот и всё.  В оригинале такое у пехоты, у танков. Параметра зеркала половинки не существует.
SeregaZ:

--- Цитата ---И эти картинки не задаются в файлах миссий.
--- Конец цитаты ---
как не задаются? вон жеж на скриншоте они указаны. в начале файла миссии они описаны. или это просто обязательный мусор в файле миссии? осталось в наследство от пкашной? просто в редакторах карт то эти строки редактируются. эффект правда не проверял есть или нет, но они точно в редакторах есть.

по поводу разнобоя в изначальных спрайтах - вот соник и кериол:


может я их в один формат приведу к новому билду? в смысле чтоб если спрайт второй по счету - или в одном спрайте сразу 3 или 5 спрайтов спрятано - чтоб второй всегда был 22 или 45 градусов? вместо того разнобоя что смотрит или вниз-вправо или вниз-влево... чтоб всегда вверх-вправо всегда смотрел.

по поводу харвестера - что-то я не пойму, а чего их так много то спрайтов?
harvester.smd
harvester_spr1.smd
harvester_spr2.smd
harvester_spr3.smd
harvester_spr22.smd

какой сборщиком используется? harvester.smd? и там на 45 градусах точечка черная :) предлагаю её поправить на прозрачный цвет:


Добавлено позже:
а все нашел. harvester_spr1.smd и далее до 3. и опять он не туда мордой смотрит :)

Добавлено позже:
на этом харвестере 3 тайла пустые - просто так тратятся :(

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


Добавлено позже:
хотя я тут думаю - а если харвестер распилить, как орнитоптёр скажем - это можно все 4 тайла же выиграть? системе же не обязательно чтоб в 0х0 начинался тайл спрайта? она может же, как тот-же скажем кериол, когда склеивает и скажем кериол смотрит влево мордой - то получается первый тайл у него пустой.
Ti_:

--- Цитата: SeregaZ от 23 Февраль 2017, 09:55:21 ---или это просто обязательный мусор в файле миссии? осталось в наследство от пкашной?

--- Конец цитаты ---
именно.

Добавлено позже:

--- Цитата: SeregaZ от 23 Февраль 2017, 09:55:21 ---
Добавлено позже:
на этом харвестере 3 тайла пустые - просто так тратятся :(

--- Конец цитаты ---
Понятно. У соника и харвестера перевернутые и сдвинутые от центра тайлы, потому что я так сделал. Как раз наоборот - они тратятся. Прозрачные тайлы в конце одного спрайта совмещаются с прозрачными тайлами начала другого спрайта. И это могут быть спрайты разных юнитов. Возможно, я это уберу для удобства редактирования, правда свободной памяти поменьше будет тогда.
Насчёт сегментации ты можешь разрезать харвестер хоть на 10 спрайтов размером 8x8.  Просто сильно не режут из-за лимита спрайтов и нагрузки на процессор. http://gendev.spritesmind.net/forum/viewtopic.php?f=7&t=1371
SeregaZ:
ссылка не открылась. ну да ладно. все равно не люблю читать официальные доки - мало что понимаю :)

то есть для удобства редактирования нынешние спрайты будут дополнены пустыми тайлами? то есть на том-же харвестере уже не будет черного пустого тайла в конце файла? понятно что размер файла увеличится при этом на 32 байта. (8х8 = 64 / 2 = 32 = потому что по 4 бита цвет, то есть в 1 байте 2 точки) и тогда получается все спрайты станут с четным количеством тайлов.

демку еще не доделал. но там будет показано о какой таблице я толкую. то есть 17 строк, а в них инфа по каждому углу поворота.

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

--- Цитата: SeregaZ от 23 Февраль 2017, 16:13:59 ---ссылка не открылась. ну да ладно. все равно не люблю читать официальные доки - мало что понимаю :)

--- Конец цитаты ---
там нет доков и ничего читать не надо. просто пара картинок.

Добавлено позже:

--- Цитата: SeregaZ от 23 Февраль 2017, 16:13:59 ---то есть для удобства редактирования нынешние спрайты будут дополнены пустыми тайлами? то есть на том-же харвестере уже не будет черного пустого тайла в конце файла? понятно что размер файла увеличится при этом на 32 байта.

--- Конец цитаты ---
Думаю да. Ведь даже сейчас, в некоторых спрайтах при перерисовке, надо ориентироваться на оригинальную картинку, и не изменять другие пустые тайлы, иначе в другом спрайте может графика поломаться.

Добавлено позже:

--- Цитата: SeregaZ от 23 Февраль 2017, 16:13:59 ---и тогда получается все спрайты станут с четным количеством тайлов.

--- Конец цитаты ---
Не станут. 1x1; 1x3, 3x1 никто не отменял.  :)


Добавлено позже:

--- Цитата: SeregaZ от 23 Февраль 2017, 16:13:59 ---то есть крыло 8х8 надо лепить к базовому спрайту в знакоместо, но выходит нифига не в знакоместо, а может быть ниже или выше на несколько пикселов, а не строго по тайлу..

--- Конец цитаты ---
Всё правильно. Потому что спрайты могут располагаться как угодно. Ты можешь даже так разрезать, размещая друг на друге с частичным пересечением, в некоторых ситуациях можно так выиграть в размере.
SeregaZ:
облом. халтуру тут подсунули... придется над ней посидеть какое-то время. и тем не менее - правильно ли я понимаю, что в файле tanks_sprcfg.bin как раз и находится та моя таблица с четким описанием спрайтов для каждого юнита? если да - можно где-то взять структуру этого файла?

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



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

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

плюс еще надо будет предусмотреть сдвиги этих спрайтов, как в случае с орнитоптером. тут вобще жопа как подумаю об этом :)
Ti_:

--- Цитата: SeregaZ от 24 Февраль 2017, 10:57:54 ---если да - можно где-то взять структуру этого файла?

--- Конец цитаты ---
Формат конфигов спрайтов для всех один. Смотри файл new_spr_75.asm.  Что касается танков там по 128 разных конфигов (8 корпус*8 башня*2положения башни при выстреле).  В hurricane_srp.asm тоже самое что в tanks_spr.bin, только 64 конфига.
Навигация
Главная страница сообщений
Следующая страница
Предыдущая страница

Перейти к полной версии