Форма входа
 
Приветствуем тебя, корсар Юнга!

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


Купить игры
 



Чат
 
500


Статистика
 
Пользователи, посетившие сайт за текущий день:
Andrey__3010, Ramaloce, Kriogener, ukdouble1
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]

Модератор форума: NikK  
Вопросы по созданию модификаций
ChemshenikДата: Воскресенье, 20.07.2014, 14:57 | Сообщение # 1461
Пороховая обезьяна
Группа: Пират
Сообщений: 17
Награды: 0
Репутация: 0
Статус: В открытом море
Спасибо
MettДата: Воскресенье, 20.07.2014, 20:11 | Сообщение # 1462
Капитан I ранга
Группа: Корсар
Сообщений: 586
Награды: 91
Репутация: 565
Статус: В открытом море
Цитата Chemshenik ()
У меня еще вопрос. Я создал поселение на Терксе, взял модель жемчужного промысла, и удалил оттуда всех граждан, что на жемч. промысле, и хочу добавить туда своих. Вопрос: Нужно создавать каждого НПС и ставить туда, или есть другой способ??

а тут как тебе удобнее
можно написать свой отдельный генератор, а можно каждого перса уникальным сделать

p.s. лично я бы писал генератор персов отдельно для этой локации


Что толку, если не можешь сделать мир лучше.
ChemshenikДата: Понедельник, 21.07.2014, 16:54 | Сообщение # 1463
Пороховая обезьяна
Группа: Пират
Сообщений: 17
Награды: 0
Репутация: 0
Статус: В открытом море
Цитата Mett ()
p.s. лично я бы писал генератор персов отдельно для этой локации

А можешь как-то помочь мне?

Добавлено (21.07.2014, 16:54)
---------------------------------------------
И еще, я создал квест что нужно найти одного перца. Как добавить ветку горожанам, типа: "Не подскажете где найти человека по имени Арно Бодетт?"

MettДата: Понедельник, 21.07.2014, 16:57 | Сообщение # 1464
Капитан I ранга
Группа: Корсар
Сообщений: 586
Награды: 91
Репутация: 565
Статус: В открытом море
Chemshenik, сперва рекомендую глянуть как устроены стандартные генераторы
это функции
void CreateCitizens(aref loc)
void CreateJail(aref loc)
void CreateFortsNPC(aref loc)

и еще некоторые
все они из файла PROGRAM\Loc_ai\LAi_utilites.c

и начинай писать свой генератор, а если будут затруднения, то спрашивай)


Что толку, если не можешь сделать мир лучше.
ChemshenikДата: Понедельник, 21.07.2014, 16:59 | Сообщение # 1465
Пороховая обезьяна
Группа: Пират
Сообщений: 17
Награды: 0
Репутация: 0
Статус: В открытом море
Цитата Mett ()
и начинай писать свой генератор, а если будут затруднения, то спрашивай)

Хорошо, попробую.
NathanielДата: Понедельник, 21.07.2014, 17:01 | Сообщение # 1466
Контр-адмирал
Группа: Капитан
Сообщений: 8036
Награды: 347
Репутация: 1845
Статус: В открытом море
Цитата Chemshenik ()
Как добавить ветку горожанам, типа: "Не подскажете где найти человека по имени Арно Бодетт?"

Например, прописать вот такую ноду в файле диалога горожан:

Код
if (!CheckAttribute(npchar, "quest.имя_квеста"))
    {
     link.l1 = "Не подскажете где найти человека по имени Арно Бодетт?";
     link.l1.go = "Find_Arno";
    }


Я был на краю земли, на краю бескрайних озёр, за горизонтом и на вершинах самых высоких гор.
Но я не нашёл там никого, кто не был бы моим другом!
ChemshenikДата: Понедельник, 21.07.2014, 17:11 | Сообщение # 1467
Пороховая обезьяна
Группа: Пират
Сообщений: 17
Награды: 0
Репутация: 0
Статус: В открытом море
Спасибо

Добавлено (21.07.2014, 17:11)
---------------------------------------------
А что должно быть прописано в кейсе "Find_Arno"?

NathanielДата: Понедельник, 21.07.2014, 17:16 | Сообщение # 1468
Контр-адмирал
Группа: Капитан
Сообщений: 8036
Награды: 347
Репутация: 1845
Статус: В открытом море
Цитата Chemshenik ()
А что должно быть прописано в кейсе "Find_Arno"?

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

Например строка

Код
npchar.quest.имя_квеста = "true";

После этого этот флаг должен быть обработан где-нибудь в quest_reactions.с или в другом месте. Смотрите примеры уже написанных квестов!


Я был на краю земли, на краю бескрайних озёр, за горизонтом и на вершинах самых высоких гор.
Но я не нашёл там никого, кто не был бы моим другом!


Сообщение отредактировал Nathaniel - Понедельник, 21.07.2014, 17:21
ChemshenikДата: Понедельник, 21.07.2014, 20:10 | Сообщение # 1469
Пороховая обезьяна
Группа: Пират
Сообщений: 17
Награды: 0
Репутация: 0
Статус: В открытом море
Ок. Буду разбираться

Добавлено (21.07.2014, 20:10)
---------------------------------------------
что-то не получаеться((
Парни помогайте. Прописываю такой-вот код в диалоге горожан

Код

if (CheckAttribute(npchar, "BedBoys"))  
     {  
      link.l6 = "Не подскажете где найти человека по имени Арно Бодетт?";  
      link.l6.go = "Arno";  
     }

И оно ничего не работает( Ветка не появляеться...
MettДата: Понедельник, 21.07.2014, 20:18 | Сообщение # 1470
Капитан I ранга
Группа: Корсар
Сообщений: 586
Награды: 91
Репутация: 565
Статус: В открытом море
Chemshenik, значит у твоего НПС нет такого атрибута
почитай второй спойлер этой темы


Что толку, если не можешь сделать мир лучше.
ChemshenikДата: Понедельник, 21.07.2014, 20:22 | Сообщение # 1471
Пороховая обезьяна
Группа: Пират
Сообщений: 17
Награды: 0
Репутация: 0
Статус: В открытом море
Mett, А его можно как-то добавить что ли?
MettДата: Понедельник, 21.07.2014, 20:32 | Сообщение # 1472
Капитан I ранга
Группа: Корсар
Сообщений: 586
Награды: 91
Репутация: 565
Статус: В открытом море
конечно можно, и удалить тоже можно
стартуешь квест
вешаешь атрибут на перса, и потом проверяешь

например id твоего НПС будет Vasya
в квесте делаешь так
Код
case "blabla":
sld = CharacterFromId("Vasya");
sld.BadBoys = true;
break;


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


Что толку, если не можешь сделать мир лучше.
ChemshenikДата: Понедельник, 21.07.2014, 21:45 | Сообщение # 1473
Пороховая обезьяна
Группа: Пират
Сообщений: 17
Награды: 0
Репутация: 0
Статус: В открытом море
Mett, Я в этом плоховато разбираюсь. Можешь несколько примеров привести??(если не сложно)
NathanielДата: Понедельник, 21.07.2014, 22:18 | Сообщение # 1474
Контр-адмирал
Группа: Капитан
Сообщений: 8036
Награды: 347
Репутация: 1845
Статус: В открытом море
Цитата Chemshenik ()
Можешь несколько примеров привести?

Chemshenik, если вы работаете со скриптами К:ГПК 1.2.12, обратите внимание на уже написаннные квесты! И я, и Mett вам уже не раз это советовали. Поищите такие конструкции в диалогах и файлах quest_reactions.c, reaction_functions.c.

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


Я был на краю земли, на краю бескрайних озёр, за горизонтом и на вершинах самых высоких гор.
Но я не нашёл там никого, кто не был бы моим другом!
ChemshenikДата: Понедельник, 21.07.2014, 22:22 | Сообщение # 1475
Пороховая обезьяна
Группа: Пират
Сообщений: 17
Награды: 0
Репутация: 0
Статус: В открытом море
Nathaniel, Красиво сказано.
Ну что же, учту
ACTAROTHДата: Вторник, 22.07.2014, 21:18 | Сообщение # 1476
Пороховая обезьяна
Группа: Пират
Сообщений: 5
Награды: 0
Репутация: 0
Статус: В открытом море
Может есть у кого текстуры для ГПК 1.2.12 таких персонажей как Малькольм Шарп(К1) Бельтропа(из тех же К1) и из тех же корсаров первых..не помню как зовут..главарь берегового братства,который всегда находился на пиратском острове в таверне.

Честь превыше всего!
ChemshenikДата: Среда, 06.08.2014, 21:11 | Сообщение # 1477
Пороховая обезьяна
Группа: Пират
Сообщений: 17
Награды: 0
Репутация: 0
Статус: В открытом море
Блин! Парни! Помогите! Хочу поставить начальный корабль у ГГ щебеку. Прописываю вот такой код
Код

         pchar.Ship.Type = (SHIP_XebekVML);
  SetBaseShipData(pchar);
  pchar.Ship.Name = "Быстрый вепрь";

Захожу в игру, начинаю новую, смотрю в корабли, пишет что у меня Форт и нету иконки корабля, а точнее форта.
MettДата: Среда, 06.08.2014, 23:30 | Сообщение # 1478
Капитан I ранга
Группа: Корсар
Сообщений: 586
Награды: 91
Репутация: 565
Статус: В открытом море
Chemshenik, какой файл правишь?
и да, не
Код
pchar.Ship.Type = (SHIP_XebekVML);

а так
Код
pchar.Ship.Type = GenerateShip(SHIP_XebekVML, 0);


Что толку, если не можешь сделать мир лучше.
ChemshenikДата: Четверг, 07.08.2014, 01:02 | Сообщение # 1479
Пороховая обезьяна
Группа: Пират
Сообщений: 17
Награды: 0
Репутация: 0
Статус: В открытом море
Цитата Mett ()
Chemshenik, какой файл правишь?

RPGUtilite.c
Цитата
а так
Код

pchar.Ship.Type = GenerateShip(SHIP_XebekVML, 0);


Все! Получилось! Вот что прописал
Код

pchar.Ship.Type = GenerateShip((SHIP_XebekVML), 1);
  SetBaseShipData(pchar);
  pchar.Ship.Name = "Быстрый вепрь";

Добавлено (07.08.2014, 01:02)
---------------------------------------------
И еще. А где хранятся перки. Всмысле их текстуры и функции.

MettДата: Четверг, 07.08.2014, 04:08 | Сообщение # 1480
Капитан I ранга
Группа: Корсар
Сообщений: 586
Награды: 91
Репутация: 565
Статус: В открытом море
Цитата Chemshenik ()
А где хранятся перки. Всмысле их текстуры и функции.

текстуры в текстурах
расположение картинок в iniшниках (resource/ini/interfaces/pictures.ini ЕМНИП)
а функции разбросаны по всей папке program разными отрывками кода
поисковик винды вам в руки


Что толку, если не можешь сделать мир лучше.
Поиск:

Copyright Pirates-Life.Ru © 2008-2024


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