Ghoulbb
19 February 2013 | 19:08
Товарищи, киньте ссылку с описанием, как поставить нового криттера?
Всё сделал, однако у нового криттера полностью отсутствуют звуки.
Думал почитать, возможно этот вопрос уже решён...
Wasteland Ghost
19 February 2013 | 20:30
Ищи ошибку. С криттерами проблем как раз нет никаких.
Ghoulbb
19 February 2013 | 23:01
Хм.. Ошибку??
Попытаюсь описать мои манипуляции по порядку:
Новый криттер Робот (наподобие тех, что с ракетницами и пулемётами, только другого цвета)
\data\art\critters
Поставил все файлы анимации нового робота: MAROBBAA.FRM и т.п.
Далее добавил в конец critters.lst строку:
marobb,66 (по аналогии с оригинальным роботом. что значат цифры не в курсе)
ПОТОМ:
\data\proto\critters
Добавил новый 00000485.pro
Зарегил его в конце файла critters.lst
Потом добавил описание в:
data\text\english\game\pro_crit.msg
Всё работает нормально, ток немой он получился.
Чёт забыл я сделать?
Wasteland Ghost
20 February 2013 | 08:17
Откуда ж мне знать, как выглядит твой "новый 00000485.pro". :) Читай доку по про-файлам с TeamX, проверяй значения. Про "66" инфу ищи в форматах идентификаторов ФРМ by Anchorite.
Я как-то переносила в Ф2 Гизмо из Ф1. Проблем не припомню.
Nordan
20 February 2013 | 19:00
Начнем по порядку...
Что такое 66:
На форуме Team X обсуждалось это.
Это очень важная переменная, от нее зависит:
1. Какая картинка будет появляться при прицельном выстреле по этому нпс.
Т.е. если стоит 66, то реальная строчка будет 67 (поскольку описание анимаций в critter.lst начинается со 2-ой строки), идем в critter.lst, находим 67 строчку: marobt. Прибавляем суффикс "na"(движек его сам прибавляет), получаем название графического файла с изображением робота marobtna.frm.
2. По этой переменной вычисляется индекс в MSG файл с подписями:
Hit Locations = 1000 + art_num_alias * 10 + body_part_num.
3. Также эта переменная является идентификатором для некоторых видов смертей (плазма, огонь).
Плюс: после этой переменной через запятую может стоять "единица" эта единица "разрешает" криттеру, к которому привязана эта анимация, бегать. Т.е. если не написать ее, то этот криттер не будет бегать никогда.
На счет ошибки:
Если не знаешь где, попробуй методом тыка вычеркнуть то, в чем нет ошибки.
Я бы начал с анимации, можно подставить эту анимацию какому нибудь БИСовскому криттеру, и посмотреть, все ли с ним нормально...
Ghoulbb
21 February 2013 | 01:08
Про робота всё верно я хотел поставить такого же робота, что и оригинальный, только чтоб был другого цвета.
С анимацией ошибки нету. Всё проигрывается и работает.
Проблема с тем, что у него нет никакой озвучки.
Всё остальное в полном порядке криттер появляется в игре, корректно выполняет все положенные функции. Толлько молча :(
По моим догадкам, в каком-то файле идёт привязка звуков к конкретному типу "тела" существа.... Вот там то я похоже и не прописал новый криттер и не привязал к нему уже имеющиеся звуки.
Насчёт ПРОшника для робота там всё то же, что и в оригинальном ПРОшнике для страж-бота, изменён только :
ID number, PID number и спрайт (картинка нового тела)
Nordan
21 February 2013 | 07:58
А от АИ пакета звуки, случаем, не зависят?
А может для каждой анимации нужен свой отдельный звук не знаю, с криттерами почти не работал. :(
Я щас просто не дома, пишу с телефона, проверить не могу.
Wasteland Ghost
21 February 2013 | 10:44
От АИ-пакета зависят сообщения в бою.
"Тело" существа определяется параметром Body Type в прошнике.
Nordan
21 February 2013 | 19:58
QUOTE |
От АИ-пакета зависят сообщения в бою. |
Ну это то, да, просто я помню, что там еще какие то настройки были. :)
Я тут порылся немого, в общем звуки от данных протатипа вообще не зависят, только от самой анимации, точнее даже не от самой анимации, а от ее "параметров".
Т.е. формат файлов анимации имеет вид: HANPWRВС.frm
H для кого эта анимация (H Hero, N NPC, M Mutant(да и вообще все существа, которые не могут разговаривать));
A "пол" анимации (A All, M Male, F Female);
B 1 суффикс для анимации(означает категорию);
C 2 суффикс для анимации(означает подкатегорию);
Вот все эти вещи нужны для звуков.
А "NPWR" это краткое описание анимации (Т.е. то что написано в critter.lst только без первых 2-х букв), вот эта информация звукам не нужна.
Соответственно, звуковые файлы для анимации имеют такие названия: HAXXXXBC.ACM, HAXXXXBD.ACM и т.д.
Когда начинает проигрываться анимации, движок считывает нужные параметры с проигрываемого файла анимации, и определяет какой звуковой файл воспроизводить. Т.е. звуки "общедоступны", их не нужно нигде привязывать, единственное что нужно это только правильные имена файлов анимации.
Upd: Еще немного покопавшись во внутренностях фолла :), я заметил очень важную вещь.
Краткое описание не нужно только ГГ (H), остальным оно ой-как-нужно, причем, как я еще писал выше, для каждой анимации свой набор звуков. Вот собственно и ответ на вопрос, звуки не проигрываются, потому что их просто нету. :)
Я так понимаю ты создал отдельную анимацию и зарегал ее в critter.lst, вот для нее еще нужен свой набор звуков.
Ghoulbb
21 February 2013 | 20:55
Я сделал новую анимацию, всё зарегал, звуков нету. Всё верно, как ты и писАл.
Только тогда мне становится непонятным вот какой момент.
Неужели фоллу требуется новый набор звуков для КАЖДОГО типа анимаций?
Ведь взять, к примеру людей они и дикари, и в робах, и в кожаной броне и в боевой и еще негры и прочие... И что, к каждому отличному от других типу человеков дублируются, в общем-то, одинаковые наборы звуков?
Nordan
21 February 2013 | 21:12
Свой набор звуков не нужен только анимациям главного героя (Hero).
С неписями пока не ясно, для них тоже есть отдельные пакеты звуков, но не для всех...далеко не для всех. Скажем так, отдельный пакет звуков есть только у "эксклюзивных" неписей(к примеру Гизмо). :)
А вот для "мутантов" реально отдельные наборы звуков, потому что мутантами Фолл считает не только самих мутантов, но и роботов и т.п. Если не делать отдельные наборы, то роботы просто бы издавали звуки мутантов или наоборот. :)
В принципе, добавить новый пакет звуков не составляет особого труда, формат звуковых файлов такой же как и у графических, только расширение ACM. А вот регать их нужно
специальной прогой. Можно, конечно, и ручками, но тогда запасайся кофе, ибо эта работа на всю ночь. :)
Работать с этой прогой очень легко. Ее нужно только скопировать в папку со звуками (sound\sfx\). Для нее нужны только оригинальный SNDLIST.LST и новые звуковые файлы все это нужно тоже кинуть в папку со звуками. Потом просто жмакаешь по программе и она регистрирует новые звуки.
Ну а сами звуки, ессно, делать не надо, просто скопируй уже существующие marobt*.acm и исправь у них имя на свое.
Wasteland Ghost
22 February 2013 | 09:21
Фол, вроде бы, сам регит новые звуки. Не пробовала, но АБель (автор regsnd) утверждал. :)
Ghoulbb
22 February 2013 | 12:31
Нет, не регит. Нужна прога от Абеля.
Я, кстати, раз о звуках речь зашла, ради интереса наделал новых звуков к оружию :) Потом прогой этой зарегал, всё нормально работает.
Wasteland Ghost
22 February 2013 | 12:42
Вот.
А вот, кстати, и про привязку звуков к криттерам:
тыц.
Поиск таки рулит. ;)
Nordan
22 February 2013 | 15:05
QUOTE |
Поиск таки рулит. ;) |
Таки да, но с ним не интерессно. :)
Я ж люблю все изобретать... особенно велосипеды. :D
QUOTE |
Фолл умеют восстанавливать удалённый sndlist.lst (если его удалить и из master.dat, и с диска). Таким образом, необходимость программы RegSnd ставится под вопрос (учитывая постоянство, с которым в ней обнаруживаются разные глюки ;) |
Я лично еще ниодного глюка не заметил (мб, из-за того что я ей пользовался мало :) ).
Ghoulbb
22 February 2013 | 22:12
Всё, со звуками разобрался. Теперь есть новый криттер с работающими звуками.
А, кстати, чтобы с криттера шмотки снимать (залезать в инвентарь) нужно скрипт править или про-шник самого криттера?
Nordan
22 February 2013 | 23:37
QUOTE |
шмотки снимать (залезать в инвентарь) |
В смысле? Кража чтоль? За нее отвечает тоже движок, не парься. :)
Ghoulbb
23 February 2013 | 00:14
не, не кража.
я о том вообще, чтоб лут с трупов снимать можно было.
Например, хочу, чтоб с трупа Френка Хорригана можно было нож и пистолет взять после его кончины.
Nordan
23 February 2013 | 01:34
Размести криттера на карте, выдели его, нажми снизу "Edit", в появившемся окне жмакаешь по кнопке "Add to inventory", ну и добавляешь предметы ему в инвентарь, после его экстерминатуса лут должен остаться в инвентаре.
Ghoulbb
23 February 2013 | 11:38
Должен. И остаётся. Но взять его невозможно.
Nordan
23 February 2013 | 14:38
Только что проверил, с трупов можно забрать все, что ты им запихнул в инвентарь, что в игре, что и в мэппере.
Wasteland Ghost
24 February 2013 | 20:16
Чтобы криттера можно было обыскать, в про-файле должен стоять флаг pickup, если я правильно помню. Уточни в доке про прошникам с сайта ТеамХ.
Ghoulbb
24 February 2013 | 23:18
Насчёт прошников криттеров только тут упоминается:
http://www.teamx.ru/site_arc/docs/pro_format.7zНо там особо полезного ничего нет.
Или имеется ввиду другой какой документ?
Wasteland Ghost
25 February 2013 | 13:12
Ну, если там для вас нет ничего полезного, о великий гуру модостроения, я умываю руки...
PS Флаг Drop ещё проверь. Про него там всё ж таки есть. Плюс можно поискать по старому форуму.
Nordan
25 February 2013 | 21:00
После экспериментов с флагами установлено:за возможность обыска трупа отвечает флаг _steal (собственно, кража). Кто бы мог подумать?.. :)
П.С. Сия ситуация напомнила мне упражнение под названием "Счет Чингисхана", типа нефиг искать "заковырки", когда кража она и в Африке кража, неважно забираем мы вещи с живого или с мертвого криттера... ;)
Ghoulbb
26 February 2013 | 01:54
Флаги хекс-эдитором ставил? Если да, то по какому адресу?
Криттер эдитор такие вещи не видит...
Nordan
26 February 2013 | 08:40
QUOTE |
Флаги хекс-эдитором ставил? |
Ды нет, они ставятся в любых редакторах прошников, лично я ставил в БИС мэппере.
Wasteland Ghost
26 February 2013 | 17:29
Ghoulbb
27 February 2013 | 10:48
Всё , конечно, хорошо с новым криттером. Только...
Маппер Димса стал вылетать на картах , где размещен новый криттер с сообщением LIST INDEX OUT OF BOUNDS :(
Та же ошибка, когда с помощью этого маппера пытаешься прокрутить до существа нового список.... Что за хрень?
Отправлено: 27 фев 13 10:55
Через 4 минуты... Сам же себя и поправил.
Это всё оттого, что какой-то из эдиторов криттеров оставил в Daata\... свой critters.lst
Убрал, и маппер нормально распознаёт нового криттера.
Далее... А вот БИС-овский маппер почему-то не видит (отображает пустые места в списке) новые элементы SCENERY.
Причём установленные новые такие элементы с помощью маппера Димса на карте таки показывает.
Забавный баг.
Nordan
27 February 2013 | 11:39
Ты на файлах прошников поставил флаг «только чтение»? Без него Фолл будет удалять их. Из-за этого могут образовываться «пустые» места.
Ghoulbb
27 February 2013 | 13:20
Ставил, конечно :)
Я вообще-то с патчем работал. Там они запакованы все...
Ну это не страшно всё.
Wasteland Ghost
27 February 2013 | 14:04
В смысле, с патчем ты работал? Изменённые прошники сами собой никуда не запаковываются, есличо. И вообще, одно из первых действий йуного модификатора распаковка и избавление от patch000.dat. Ибо чревато ловлей таких вот забавных багов.
Ghoulbb
28 February 2013 | 23:16
В том смысле, что я сразу запаковываю все модифицированные ресурсы обратно в patch000.dat, поэтому всё, что и создаётся, на процесс никакого влияния не оказывает.
Отправлено: 28 фев 13 23:23
Кстати, есть где раздел про мод от B-Team по смене внешнего вида партийцев от надетой на них брони?
Нашел несколько неприятных багов, возможно их как-то удалось уже решить. Хочу поглядеть...
Отправлено: 28 фев 13 23:28
Спрашивал у Гугла, всё старьё одно попадается (в смысле старая версия скриптов)
Nordan
1 March 2013 | 07:29
На сайте Team X вроде
последняя версия.ПС. Постить гиперссылки с телефона тот еще изврат. :)
Wasteland Ghost
1 March 2013 | 08:46
Nordan, ты дал ссылку на мод TeamX для F1. Это не то. Мод B-Team для F2 и радикально иначе сделан. На TeamX его нет.
Nordan
1 March 2013 | 11:25
Ой, точняк, не обратил внимания на раздел...
А по поводу "нужного" мода:
вот страница на vault-tec labs.QUOTE |
The most recent version is 2.1. |
Сам мод, в принипе, уже "бородат", так что фиксы для него больше делать не будут, ИМХО.
Ghoulbb
1 March 2013 | 12:00
Да сам мод я нашел :)
Думал почитать кой-какие статьи на форумах.
Наверняка у кого то похожие проблемы были (слетают уровни у Ленни и не даётся 6-ой уровень Сулику)
А если были обсуждения, возможно, есть рекомендации, как это всё пофиксить. А дальше уж и я сам попробую ручками :)
Wasteland Ghost
1 March 2013 | 12:58
Проблема слёта уровней у напарников обсуждалась неоднократно, в том числе и здесь. Для корректной работы прошники напарников должны быть запакованы в мастер.дат. Других решений пока не найдено.
Если 6 уровень глючит только у Сулика, значит, накосячено где-то в Сулике. Можно почитать
туториал по созданию партийца, пройтись по Сулику и попытаться найти проблему.
Никто из напарников не получает уровень больше пятого. Проблема давно известная, но решение до сих пор не найдено.
Wasteland Ghost
1 March 2013 | 21:59
Емнип, какое-то решение этого вопроса всё-таки находилось.
Ghoulbb
1 March 2013 | 22:35
QUOTE |
Проблема слёта уровней у напарников обсуждалась неоднократно, в том числе и здесь. Для корректной работы прошники напарников должны быть запакованы в мастер.дат. Других решений пока не найдено.
Если 6 уровень глючит только у Сулика, значит, накосячено где-то в Сулике. Можно почитать туториал по созданию партийца, пройтись по Сулику и попытаться найти проблему.
|
Я по этой теме старый архив перерыл, нашел только:
http://www.teamx.ru/site_arc/ikonboard/top...amp;start=0.htmи вот:
http://www.teamx.ru/site_arc/ikonboard/top...amp;start=0.htmОсобой информативности нету :(
Может, я что-то упустил?
По поводу 6-го уровня ни Кэссиди, Ни Сулик их не получают. Но это всё пол беды, и я готов на это хвостом махнуть. Но вот слёт уровня Ленни э то уже серьёзно.
Запаковывать обязательно именно в MASTER.DAT?? В патч уже не катит?
И эта.... с остальными то всё партийцами ОК... Хоть они и не в мастер-дате...
Я ошибся. В sfall есть фикс проблемы 6 уровня.
QUOTE |
;Set to 1 to enable party members with level 6 protos to reach level 6 NPCStage6Fix=0
|
Ghoulbb
1 March 2013 | 23:28
Возможно, в Сфол это и есть, но я бы не хотел прибегать к его помощи....
Надо как-то найти причину сброса уровней у Ленни...
Nordan
2 March 2013 | 00:45
Sfall правит движок, следовательно и ошибка с 6-ым левелом тоже где-то в движке...
Ghoulbb
2 March 2013 | 01:24
Я про Sfall прочитал, но не готов использовать его в своём моде. Пока не готов.
6-ой левел пока пусть и остаётся недоступен. Основная задача сейчас понять, что творится с Ленни...
Wasteland Ghost
2 March 2013 | 10:31
Про Ленни уже сказано: запаковать все прошники в мастер.дат. Именно в мастер.дат и только в мастер.дат. Запакуй, из других мест удали и проверь.
Решение это обнаружил Майнах и применил в своём моде АЛ.
Не хочешь применять сфалл исправь сам движок в нужном месте. Каком ищи на НМА или спроси там же.
Wozrogdenec
2 March 2013 | 11:32
QUOTE (Ghoulbb) |
Я по этой теме старый архив перерыл, нашел только:... |
Wasteland Ghost (возможно) имела ввиду обсуждения и на здешнем форуме поищи.
Ghoulbb
2 March 2013 | 12:10
Нет. Не надо ничего запаковывать.
Опытным путём и методом отсева удалось локализовать баг с Ленни: во всём виноват какой-то файл криттера. Сейчас пытаюсь методом просеивания найти его.
Отправлено: 2 мар 13 12:14
А насчёт недостижения 6-го уровня Суликом и Виком я подправил party.txt, теперь он просто перескакивает с 4 го на 6ой срзу и всё.
Отправлено: 2 мар 13 12:36
Нашёл. Всё из-за базового файла Ленни. Я его поменял.
Получается, что если изменяется базовый файл напарника, то это приводит к слёту уровней в дальнейшей перспективе.
Плохо. Но тоже не проблема.
Может быть под этим и имелась ввиду запаковка именно БАЗОВОГО файла криттера в... мастер.дат??
Так или иначе, проблема решена.
Wasteland Ghost
2 March 2013 | 18:16
QUOTE |
Может быть под этим и имелась ввиду запаковка именно БАЗОВОГО файла криттера в... мастер.дат?? |
Да. Именно.
Ghoulbb
2 March 2013 | 21:09
Ну ты же понимаешь, что самостоятельно этого делать никто не будет, ради того, чтобы мой мод у него заработал. А выкладывать в дистрибутив с модом еще и мастер дат будет слишком жирно.
Так что самое верное решение не трогать самого криттера :)