Купить Tempest - Pirate City Tempest - игра о пиратах Семь Футов под Килем Семь Футов под Килем
Форма входа
 
Приветствуем тебя, корсар Юнга!

Гость, мы рады вас видеть. Пожалуйста зарегистрируйтесь или авторизуйтесь!
Логин:
Пароль:


Купить игры
 



Чат
 
500


Статистика
 
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]

Модератор форума: NikK  
Форум » Ад-доны для игр серии Корсары » FAQ по модам - "Сделай мод сам" » Вопросы по созданию модификаций
Вопросы по созданию модификаций
mcleod-sДата: Воскресенье, 31.05.2020, 22:52 | Сообщение # 2441
Матрос
Группа: Пират
Сообщений: 39
Награды: 0
Репутация: 0
Статус: В открытом море
Цитата Мартышка ()
sld=characterFromID("Milton_Maydes"); // с кем работает

А если тот ,с кем работаем , будет рандомный персонаж с заранее неизвестным ID ...как тогда?

да и не убирать труп 200 секунд не так важно )
МартышкаДата: Понедельник, 01.06.2020, 10:43 | Сообщение # 2442
Мичман
Группа: Корсар
Сообщений: 103
Награды: 4
Репутация: 14
Статус: В открытом море
mcleod-s, никак. Нужно сохранить id в какую либо переменную А потом подставить.
mcleod-sДата: Понедельник, 01.06.2020, 11:21 | Сообщение # 2443
Матрос
Группа: Пират
Сообщений: 39
Награды: 0
Репутация: 0
Статус: В открытом море
Цитата Мартышка ()
Нужно сохранить id в какую либо переменную

ну или к какой либо группе подставить . к банде например . но как это - фиг знает )
МартышкаДата: Понедельник, 01.06.2020, 11:28 | Сообщение # 2444
Мичман
Группа: Корсар
Сообщений: 103
Награды: 4
Репутация: 14
Статус: В открытом море
mcleod-s, к группе никак. Работать можно лишь с одним нпс за раз.
Смотрите момент найма офицеров в таверне. Там как раз есть пример работы с неизвестным id.
mcleod-sДата: Понедельник, 01.06.2020, 17:58 | Сообщение # 2445
Матрос
Группа: Пират
Сообщений: 39
Награды: 0
Репутация: 0
Статус: В открытом море
Цитата Мартышка ()
к группе никак.

только что проверил . выделить главного в группе ( как пример - кораблекрушенцы ) и дать ему сторту . всё работает .при убийстве пиратов сторта сохраняется на главном из группы.

if(model[iMassive] != "")
{
chr = GetCharacter(NPC_GenerateCharacter("PirateOnUninhabited_" + i, model[iMassive], "man", "man", iRank, PIRATE, -1, true, "marginal"));
SetFantomParamFromRank(chr, iRank, true);
locator = GetAttributeName(GetAttributeN(grp, i));
ChangeCharacterAddressGroup(chr, location.id, encGroup, locator);
//ChangeCharacterAddressGroup(chr, location.id, "goto", "goto" + (i + 1));
chr.dialog.filename = "GenQuests_Dialog.c";
chr.dialog.currentnode = "First time";
chr.greeting = "robinzons_1"; // Enc_Raiders
LAi_SetImmortal(chr, true); // До поры нельзя убить
LAi_SetActorTypeNoGroup(chr);

if(i == 0)
{
GiveItem2Character(chr, "blade_29"); // Дать предмет персонажу
chr.SaveItemsForDead = true;// сохранять на трупе вещи

LAi_ActorDialog(chr, PChar, "", -1, 0.0);
}
else
{
LAi_ActorFollow(chr, PChar, "", -1);
}

LAi_Group_MoveCharacter(chr, "PiratesOnUninhabitedGroup");
LAi_Group_SetRelation("PiratesOnUninhabitedGroup", LAI_GROUP_PLAYER, LAI_GROUP_NEITRAL);

i++;
model[iMassive] = "";
}


Сообщение отредактировал mcleod-s - Понедельник, 01.06.2020, 18:24
МартышкаДата: Понедельник, 01.06.2020, 19:14 | Сообщение # 2446
Мичман
Группа: Корсар
Сообщений: 103
Награды: 4
Репутация: 14
Статус: В открытом море
mcleod-s, это не группа, а очередь персонажей.
mcleod-sДата: Понедельник, 01.06.2020, 20:01 | Сообщение # 2447
Матрос
Группа: Пират
Сообщений: 39
Награды: 0
Репутация: 0
Статус: В открытом море
Цитата Мартышка ()
это не группа, а очередь персонажей.

а для чего нужна очередь персонажей? для формирования группы , которую можно поссорить с группой игрока. а вот и ID этой группы "PirateOnUninhabited_" . В общем мы говорим об одном и том же..думаю ответ на вопрос - как дать оружие трупу - дан ))
МартышкаДата: Понедельник, 01.06.2020, 20:35 | Сообщение # 2448
Мичман
Группа: Корсар
Сообщений: 103
Награды: 4
Репутация: 14
Статус: В открытом море
mcleod-s, фактически просто уменьшает кол-во строк в файле, ведь каждого персонажа не нужно прописывать отдельно. PirateOnUninhabited_ это не id группа, а маска по которой задаются id персонажей. Группа в данном случае: PiratesOnUninhabitedGroup

Добавлено (10.07.2020, 14:33)
---------------------------------------------
Подскажите мне два момента:
1) Не могу понять: какой кусок кода подсвечивает сохранение золотым?
2) Сделал маленькое окно, которое открывается поверх интерфейса настроек. Все работает, кроме одного: окошко не закрывается по нажатию esc. А крестик работает.

zzoldateДата: Понедельник, 03.08.2020, 13:22 | Сообщение # 2449
Пороховая обезьяна
Группа: Пират
Сообщений: 1
Награды: 0
Репутация: 0
Статус: В открытом море
Всем добрый день!
Хочу создать мод на два дополнительных перка, на + к регенерации выносливости и на + к шансу критического удара. Добавил сами перки в perks_init, добавил действие перков в LAi_fightparams. Для выносливости я скопировал перк Tireless и он работает нормально, но когда копирую SwordplayProfessional, то при запуске выдает ошибку

COMPILE ERROR - file: Loc_ai\LAi_fightparams.c; line: 573
Duplicate variable name: attack

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

Если кто-то знает решение данной проблемы, то я буду очень признателен. Заранее спасибо.
МартышкаДата: Понедельник, 03.08.2020, 13:56 | Сообщение # 2450
Мичман
Группа: Корсар
Сообщений: 103
Награды: 4
Репутация: 14
Статус: В открытом море
zzoldate, нарушили пару фигурных скобок скорее всего. Все условия и функции используют их, чтобы указывать границы выполняемого кода. Где то поставили лишнюю скобку или наоборот нехватка. За деталями - ко мне в ЛС.

Добавлено (26.08.2020, 14:31)
---------------------------------------------
Прописал нового четвертого абордажника, все работает кроме одного. Новая ячейка абордаже в меню сохранения не хочет принимать портрет самого НПС. Там вечно 2 скрещенных сабли. Как это исправить? Спасибо.

MalleusДата: Четверг, 24.09.2020, 19:26 | Сообщение # 2451
Пороховая обезьяна
Группа: Корсар
Сообщений: 13
Награды: 5
Репутация: 17
Статус: В открытом море
Господа, подскажите как заменить экипировку и инвентарь квестовых нпс ( остинцы и джа престон по кондотьеру)?
kacatikДата: Четверг, 08.10.2020, 08:21 | Сообщение # 2452
Мичман
Группа: Корсар
Сообщений: 88
Награды: 1
Репутация: -21
Статус: В открытом море
error

Сообщение отредактировал kacatik - Пятница, 09.10.2020, 05:26
TimonzinДата: Вторник, 27.10.2020, 19:31 | Сообщение # 2453
Пороховая обезьяна
Группа: Пират
Сообщений: 1
Награды: 0
Репутация: 0
Статус: В открытом море
Доброго времени суток! Подскажите пожалуйста какой файл в игре отвечает за иконку на загрузочном экране (справа внизу) ?? Обычно это череп в дефолтной версии или книппель в ГПК. Не нашёл отдельного мода для замены.
korsar01Дата: Четверг, 26.11.2020, 17:07 | Сообщение # 2454
Мичман
Группа: Корсар
Сообщений: 184
Награды: 6
Репутация: 46
Статус: В открытом море
Timonzin, RESOURCE\Textures\Loading\progress.tga.tx
Loggsies236Дата: Вторник, 22.12.2020, 15:48 | Сообщение # 2455
Пороховая обезьяна
Группа: Пират
Сообщений: 8
Награды: 0
Репутация: 0
Статус: В открытом море
Приветствую всех, есть вопрос по кодингу диалогов, надеюсь кто поможет. Суть проблемы заключается в следующем, нужно чтоб НПС в процессе разговора выбирал случайный кейс диалога из 2 доступных. Это нужно для диалога подкупа, то есть ГГ предлагает НПС взятку, НПС рандомно выбирает кейс диалога с принятием взятки или отказом. Смотрел пример подкупа патруля во время контрабанды, но там оказывается завязка на скиллы героя, а я бы хотел полный рандом. Есть ещё функция диалога LinkRandPhrase если не ошибаюсь, но это не совсем то что нужно, так как выдаёт рандомную фразу из пула, а не запускает кейс. Есть у кого-то идеи на этот счёт? Заранее благодарен за помощь.
МартышкаДата: Вторник, 22.12.2020, 16:01 | Сообщение # 2456
Мичман
Группа: Корсар
Сообщений: 103
Награды: 4
Репутация: 14
Статус: В открытом море
Loggsies236, условие будет таким

if(rand (1) == 0)

тут вероятность 50 на 50

if(rand (2) == 0)

33 процента

Ну и так далее.
Loggsies236Дата: Вторник, 22.12.2020, 16:54 | Сообщение # 2457
Пороховая обезьяна
Группа: Пират
Сообщений: 8
Награды: 0
Репутация: 0
Статус: В открытом море
Ладно, предыдущий вопрос решён, раз уж на форуме по прежнему отвечают задам ещё один вопрос который меня волнует уже очень давно. Не знаю у меня одного такое или же у всех, столкнулся с проблемой, что error log работает правильно через раз, то есть иногда он действительно указывает правильно где и в чем ошибка, а иногда и чаще всего нет. К примеру лог ссылается на ошибку синтаксиса в строке которая вообще не редактировалась и ошибки там быть не может, так как это родной код игры. Чаще всего пишет что пропущена ")" хотя она в строке либо есть либо её там и не должно быть, а реальная ошибка совсем в другом. Есть ли способ заставить лог работать как надо? Насколько я понимаю он пишется движком и тогда сделать ничего нельзя, но может есть какие-то советы по этому поводу, так как крайне неудобно проверять работоспособность каждой строчки сразу после её добавления или же писать сразу большие куски кода, а потом недоумевать в чем проблема из-за того что лог выдаёт какой-то бред

Сообщение отредактировал Loggsies236 - Вторник, 22.12.2020, 16:56
МартышкаДата: Вторник, 22.12.2020, 17:01 | Сообщение # 2458
Мичман
Группа: Корсар
Сообщений: 103
Награды: 4
Репутация: 14
Статус: В открытом море
Loggsies236, нет. Вот тут то особенность в том, что все проверяется по закрывающей скобке как правило. Если работаешь с кодом в notepad ++ смотри чтобы боковые линии были корректными. Или покопайся в настройках notepad ++ там можно включить сразу парные скобки и кавычки. Смотри раздел "Автозавершение"

Сообщение отредактировал Мартышка - Вторник, 22.12.2020, 17:03
Loggsies236Дата: Вторник, 22.12.2020, 17:15 | Сообщение # 2459
Пороховая обезьяна
Группа: Пират
Сообщений: 8
Награды: 0
Репутация: 0
Статус: В открытом море
Мартышка, точно знаю что ошибка не в этом, а именно в неправильной работе лога, без понятия почему так, но сталкивался с таким не один раз, лог пишет что ошибка в синтаксисе строки которая никак не редактировалась мной, а по факту ошибка например совсем в другой строке и суть ошибки в том что не объявлена какая-то функция или она она вообще некоректно прописана. В notepad у меня и так включены парные скобки и кавычки. А вот насчёт боковых линий возможно я не понял тебя правильно, так как я не программист и код корсаров изучают путём опытов. Если ты имеешь ввиду саму так сказать разметку кода типа соответствие отступов в строках чтоб они были в рамках кейса типа case и break были на одном уровне, то с этим тоже проблем нет, проблема в самом логе.
МартышкаДата: Вторник, 22.12.2020, 17:22 | Сообщение # 2460
Мичман
Группа: Корсар
Сообщений: 103
Награды: 4
Репутация: 14
Статус: В открытом море
Loggsies236,

Смотри когда ты ставишь { или } появляются линии сбоку рядом с номер строки. Если Где то скобки порушены - линия оборвет.
Форум » Ад-доны для игр серии Корсары » FAQ по модам - "Сделай мод сам" » Вопросы по созданию модификаций
Поиск:

Copyright Pirates-Life.Ru © 2008-2021


Семь Футов под Килем - Бухта Корсаров и Пиратов!