Да. Там в числе файлов будет набор текстур вида deck, dekk, dek1 и прочие однокоренные. Именно они являются текстурами палуб исключительно всех кораблей. Поэтому и лежат там. Ещё там иногда лежат фонарики корабельные, некоторые узорчатые элементы обшивки кораблей и т.п.
Откройте модель корабля в GM Viewer и запишите себе в блокнот список всех текстур, используемых моделью. Потом ищите...
Спасибо! Будет время, попробую поиграюсь.
Добавлено (08.06.2015, 00:28) --------------------------------------------- Nathaniel, спасибо за помощь, дружище! Все получилось, Вы мне очень помогли!
Чувство, когда тебя ночью обнимают и сквозь сон притягивают к себе, не передаваемо... Особенно, когда живешь один - вообще обоср#ться можно!
Народ, добавляю кораблик строго по описанию. при запуске выдает ошибку COMPILE ERROR - file: scripts\ShipsUtilites.c; line: 955 Undeclared identifier: Veinard в чем проблема может крыться?
Английский переводчик вам в помощь! Это значит, что Вы забыли описать идентификатор. Забыли прописать тип переменной или описание идентификатора корабля. В частности, в этом файле есть процедура под названием SetShipyardStore(), которую многие используют для размещения корабля в продаже на верфи. Скорее всего, Вы неверно указали идентификатор именно там.
Если уж указывать идентификатор, он должен быть в формате SHIP_VEINARD. Этот же идентификатор должен быть обязательно прописан в: - ships_init.c; - ships.h; Я был на краю земли, на краю бескрайних озёр, за горизонтом и на вершинах самых высоких гор. Но я не нашёл там никого, кто не был бы моим другом!
Народ, возникла проблема. Корабли добавил правильно, новую игру начал. В бета-тесте на верфи все добавленные кораблики есть, но если отключить бета-тест, то ни в море не встречаются ни на верфи не появляются. Подскажите где я мог ошибиться? Чувство, когда тебя ночью обнимают и сквозь сон притягивают к себе, не передаваемо... Особенно, когда живешь один - вообще обоср#ться можно!
Сообщение отредактировал Jared_Stark - Среда, 24.06.2015, 09:35
Точно так же и у меня. Всё сделал по инструкции, но в игре корабля нет. И ещё вопрос: как сделать чтобы корабль продавался на ОДНОЙ определённой верфи, а не на всех. Чтобы был уникальным. Или же как заменить созданным кораблём корабль в квесте ПС "Предательство Грифо Сайфуса", чтобы вместо шебеки получить его? На абордаж!
Или же как заменить созданным кораблём корабль в квесте ПС "Предательство Грифо Сайфуса", чтобы вместо шебеки получить его?
Это тоже очень просто. Нужно найти код в скриптах К:ПС, именно в коде данного квеста, в котором инициализируется эта конкретная шебека, и просто заменить идентификатор и описание на соответствующее. Я был на краю земли, на краю бескрайних озёр, за горизонтом и на вершинах самых высоких гор. Но я не нашёл там никого, кто не был бы моим другом!
Сообщение отредактировал Nathaniel - Пятница, 18.09.2015, 16:16
Странно, вот я вставил идентификатор нового корабля в первый квест, где герой получает люггер после убийства Томми Толстяка. По идее я теперь вместо люггера должен получить Синко Льягас, там даже была отдельная строка с названием корабля, который я изменил, но всё равно в игре я получаю люггер "Бешеное корыто". Видимо я слишком глуп для этого. На абордаж!
всё равно в игре я получаю люггер "Бешеное корыто"
Начнём с того, что я не смотрел скрипты К:ПС и не знаю вообще ничего о том, как они устроены. Но по своему личному опыту я не вижу никакой сложности в этом. Я уже написал о самом простом способе... Повторю ещё раз: 1) найдите с помощью встроенного поиска Windows строку с названием корабля (это строка, тип переменной string, так что ищите в кавычках); 2) осмотрите часть кода, в которых генерируется такое название, функций может бють несколько; 3) убедитесь в том, что контрольное сохранение, с которого вы загружаетесь, сделано до вызова функции создания корабля;
Немного по последнему пункту... Предположим, корабль генерируется в момент начала новой игры... Такое бывает. Значит - начинаем новую игру. Предположим, корабль генерируется в момент высадки на берег (я не проходил К:ПС - не знаю) в начале игры. Предположим, корабль сгенерируется после какого-то другого события... Так вот, найдите функцию или процедуру, в теле которой генерируется этот корабль. И поищите, откуда эта функция вызывается! Возможно, она вызывается из какого-то диалога, файла quest_reactions или reaction_functions. Или любого другого. Искать вызов рекомендую, опять же, с помощью встроенного поиска операционной системы по ключевым словам. Объект поиска - имя функции/процедуры, но без аргументов и скобок.
Пример функции - void GenerateMyQuest(); объект поиска же - слово "GenerateMyQuest"! Понятно, надеюсь, и то, что искать нужно в папке со скриптами, её задавайте местом поиска? Я был на краю земли, на краю бескрайних озёр, за горизонтом и на вершинах самых высоких гор. Но я не нашёл там никого, кто не был бы моим другом!
Сообщение отредактировал Nathaniel - Пятница, 18.09.2015, 21:26
Добавлено (21.09.2015, 16:19) --------------------------------------------- После долгих попыток пришёл в выводу что в Проклятые Судьбой не читаются скрипты из папки Program. Эту папку скачал с постороннего ресурса, а сам аддон установлен на чистую ГПК. Изменил подход. Установил ГПК, оба патча и кряк, открыл скрипты и установил аддон. В итоге в скриптах есть все данные из ГПК, но скриптов из ПС нет. Надоело возиться с этим и просто забил.
Установил ГПК, оба патча и кряк, открыл скрипты и установил аддон
Тем самым Вы просто-напросто открыли скрипты К:ГПК версии 1.2.12, а скрипты ПС, очевидно, нужно подключать к игре. Теперь подробности... Скрипты К:ГПК 1.2.12 благодаря кряку имеют свойство считываться из папки Program без их переименования. Все остальные скрипты любого другого аддона считываются напрямую из файла stormex2.dll, поэтому для их считывания нужно:
1. В прилагаемой папке со скриптами переименовать все имена файлов и все ссылки на эти файлы внутри самих файлов. Полагаю, Вы знакомы с этим. 2. В файле engine.ini в качестве стартовой указать папку со скриптами К:ПС в строке:
Код
run = seadogs.c
указать другое название этого файла, в зависимости от того, как переименованы файлы.
P. S.
Я просматривал бегло скрипты К:ПС, загруженные на веб-сайт Playground. Они не подготовлены для чтения из сторонней папки, поэтому Вам предстоит ещё один этап - переименование всех файлов. Традиционно мы для этого выбираем префикс "x_", но можно выбрать любой другой.
Вот как это должно выглядеть примерно так, как на скриншоте ниже... Если хотите, чтобы изменения были доступны и в диалогах, нужно править ссылки на файлы диалогов и скрипты внутри многих файлов. Например, искать все строки типа ref.dialog.filename = "<имя_файла>" и менять всё там.
я сейчас предложу самый простой способ (у меня в К3СМ прокатило) вместо переименовывания всех файлов просто меняете program_directory = PROGRAM на program_directory = PROGRAM2 в engine.ini папку со скриптами тоже переименовываете в PROGRAM2, никакие файлы переименовывать не надо Что толку, если не можешь сделать мир лучше.
Мне этот простой способ невыгоден по той причине, что файлы оригинала и изменённые очень легко перепутать при работе с ними, т.к. название у них одинаковое. Я был на краю земли, на краю бескрайних озёр, за горизонтом и на вершинах самых высоких гор. Но я не нашёл там никого, кто не был бы моим другом!
Сделал всё согласно плану, но при запуске: http://firepic.org/?v=6.2015-09-21_1z1y0q0ectba.png Хм.. ищу ошибку.
Добавлено (21.09.2015, 21:40) --------------------------------------------- Метод с изменением названия папки не работает. Полная лажа с этими скриптами в аддоне.
На абордаж!
Сообщение отредактировал PsychoShooter - Понедельник, 21.09.2015, 20:48
Включите отладочные логи, если ещё не включили. FAQ, вопрос 7. Искать станет проще! Я был на краю земли, на краю бескрайних озёр, за горизонтом и на вершинах самых высоких гор. Но я не нашёл там никого, кто не был бы моим другом!
Включите отладочные логи, если ещё не включили. FAQ, вопрос 7. Искать станет проще!
Ок, спасибо. Ошибка была связаны с items. Сейчас проверяю связь между файлами, потому что если запустить x_MainLine вместо MainLine, то пишет это: COMPILE ERROR - file: lugger\MainLine.c; line: 4 Function [StartDamnedDestiny] already declared in: lugger\x_MainLine.c line 3 Уверен что справлюсь сам. Спасибо за помощь. Кстати, может вынести всё это в отдельную тему в разделе ПС? Вдруг у кого-то будут те же заморочки.
Добавлено (22.09.2015, 14:16) --------------------------------------------- Перепроверил все файлы и.. о, чудо! Все изменения, которые я вносил теперь отражены в игре. Теперь могу свободно получить Синко Льягас по квесту. Каким-то мистическим образом скрипты перестали ругаться на ошибки и заработали.. боюсь здесь не обошлось без индейских обрядов Натаниэля.. спасибо, корсар!
Каким-то мистическим образом скрипты перестали ругаться на ошибки и заработали
Там всё начинается с одного-единственного первого файла seadogs.c. И по цепи загружаются все остальные. Если на первом этапе возникает ошибка из-за не обнаружения файла, процедуры или функции - дальше может быть всякое. У меня иной раз в лог вываливало до 1,5 тысячи строк. Поэтому важно отслеживать такие ошибки в самом начале.
ЦитатаPsychoShooter ()
Function already declared in...
И такое было тоже очень часто. И ещё у меня даже при стабильной работе игры выбивает в лог непонятные строки типа: "Invalid function argument..." "Function 'AddStr2Array' stack error..."
Они не критические, но вылезают постоянно и без конца.
Я после дешифровки скриптов несколько часов просидел, чтобы сцепить всё это воедино и заставить эти файлы считываться. У меня в лог написало однажды несколько сотен строк ошибок, а всё потому, что я забыл переименовать один из файликов внутри папки, в котором содержались важные для движка функции, без которых дальнейшая обработка скриптов невозможна...
Я был на краю земли, на краю бескрайних озёр, за горизонтом и на вершинах самых высоких гор. Но я не нашёл там никого, кто не был бы моим другом!
Сложно точно ответить на этот вопрос. Но если игра запускается и работает без критических вылетов - всё нормально. Там много ошибок и строк будет записываться. Не только в error.txt, а и в system.txt и compile.exe. Там можно находить ошибки тоже. Я несколько раз нашёл там пару критических ошибок, когда переносил локации в игру из другой. Я был на краю земли, на краю бескрайних озёр, за горизонтом и на вершинах самых высоких гор. Но я не нашёл там никого, кто не был бы моим другом!