Seaward.ru

Здравствуйте, гость ( Вход | Регистрация )

> Для программистов, вопросы по скриптам ПКМ
igor_pol
сообщение Aug 24 2005, 21:00
Сообщение #1


боцман
****


Группа: форумчанин
Сообщений: 140
Регистрация: 3-December 04
Пользователь №: 169



Первое что я хотел написать "АДМИНЫ!!!!" НЕ ЗВЕРЕЙТЕ ЗА "НЕНУЖНУЮ ТЕМУ"
**************************************************
на вопрос зачем создал эту тему отвечу так "Я например НЕ ПРОСТО ЮЗВЕРЬ А КОЕ ЧТО И САМ НАПИСАТЬ МОГУ.
И хотел бы чтобы на форуме была тема для тех кто сам хочет что-то добавить в игру.
На сайте аддона Алекс вікинул ссылку на описание скриптов ПКМ на английском.
Я хотел бы узнать где можно нарыть больше инфы по этом скриптам.
И кстати на каком языке они пишуться.
Если кто-то знает ----- пишите.
И вообще всем програмерам на форуме нужна своя тема.
так что ГОСПОДА ПРОГРАМЕРЫ ВАЛИТЕ СЮДА !!!!
Может из этого что небудь интересное выйдет!!!!!!(Если тему не УТРУТ)
Жду сообщений (может у когот есть идеи на эту тему )

Сообщение отредактировал Догева - Apr 24 2006, 13:36
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
35 страниц V « < 9 10 11 12 13 > »   
Reply to this topicStart new topic
Ответов(200 - 219)
Etien
сообщение Aug 4 2009, 18:06
Сообщение #201


матрос
***


Группа: форумчанин
Сообщений: 51
Регистрация: 23-June 09
Пользователь №: 20,563



ты мне лучше скажи как зовется диалог

Цитата(Etien @ Aug 4 2009, 17:05) *

как называется диалог , " када в таверне нанимаешь офицера" ? (диалог с офицером) dry.gif
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Scatimon
сообщение Aug 4 2009, 18:09
Сообщение #202


...Welcome To Scatlend...
******

Ветеран Форума
Группа: форумчанин
Сообщений: 707
Регистрация: 14-April 05
Из: Москва
Пользователь №: 662



В папке с диалогами. Папку диалоги помогать искать?...
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Etien
сообщение Aug 4 2009, 18:19
Сообщение #203


матрос
***


Группа: форумчанин
Сообщений: 51
Регистрация: 23-June 09
Пользователь №: 20,563



Цитата(Scatimon @ Aug 4 2009, 19:09) *

В папке с диалогами. Папку диалоги помогать искать?...



mad.gif Я, что по твоему совсем кретин!!!!, я как вопрос задал, не где , а как называется!
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
korsar-fan
сообщение Aug 4 2009, 18:21
Сообщение #204


юнга
**


Группа: форумчанин (*)
Сообщений: 13
Регистрация: 29-June 09
Пользователь №: 20,612



Etien, до смеха доходит. Заходишь в папку с диалогами, запускаешь поиск по содержимому файлов, вводишь пару слов из диалога и все!
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Etien
сообщение Aug 4 2009, 18:31
Сообщение #205


матрос
***


Группа: форумчанин
Сообщений: 51
Регистрация: 23-June 09
Пользователь №: 20,563



все нашел , спс
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Black Angel
сообщение Aug 4 2009, 21:57
Сообщение #206


боцман
****


Группа: форумчанин
Сообщений: 252
Регистрация: 19-August 06
Из: Павлово(Нижегородская обл.)
Пользователь №: 3,985



Как перса из группы убрать?
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
ALexusB
сообщение Aug 4 2009, 22:33
Сообщение #207


Разработчик ВМЛ-КВЛ
*******

Seaward TeamЖелезный Профессор
Группа: Admin
Сообщений: 16,224
Регистрация: 2-November 04
Пользователь №: 3



LAi_SetCitizenTypeNoGroup(rChTo);
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Black Angel
сообщение Aug 4 2009, 22:53
Сообщение #208


боцман
****


Группа: форумчанин
Сообщений: 252
Регистрация: 19-August 06
Из: Павлово(Нижегородская обл.)
Пользователь №: 3,985



Цитата(ALexusB @ Aug 4 2009, 23:33) *

LAi_SetCitizenTypeNoGroup(rChTo);

а мне не надо менять тип перса.А какого он типа я сам и не знаю,но надо его отделить от группы.Или просто в новую его перенести,что будет разумнее?
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
navy
сообщение Aug 5 2009, 07:10
Сообщение #209


Hagane no Renkinjutsushi
*******

Seaward TeamВетеран ФорумаЗаслуженный Корсар

Группа: Seaward.Ru Team
Сообщений: 5,970
Регистрация: 15-March 05
Из: Волгоград
Пользователь №: 578



Смотри код этой функции, там где-то аттрибуты труться у перса. Но вроде там еще из объекта группы он удаляется.. короче копай код.
А вообще, должен знать какой тип перса, если уж он в группе. Вроде вот такой аттрибут chr.chr_ai.group = groupName;
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Etien
сообщение Aug 5 2009, 14:09
Сообщение #210


матрос
***


Группа: форумчанин
Сообщений: 51
Регистрация: 23-June 09
Пользователь №: 20,563



а есть какойнибудь мини faq "как правильно прописать квест в пкм" ?
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Ero)(@
сообщение Aug 5 2009, 16:08
Сообщение #211


юнга
**


Группа: форумчанин (*)
Сообщений: 17
Регистрация: 22-June 09
Пользователь №: 20,557



Два вопроса:
1. Как добавить гг в начале игры боевую тартану?
2. Как сделать так что бы корабль нельзя было купить или в море встретить?
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
VladNiP
сообщение Aug 5 2009, 16:34
Сообщение #212


боцман
****


Группа: форумчанин
Сообщений: 270
Регистрация: 23-July 09
Из: Россия. Пермь.
Пользователь №: 20,820



Цитата
1. Как добавить гг в начале игры боевую тартану?

То есть? Чтобы он пересел на тартану или добаить кораблик.
Если первое, то достаточно в файле ПКМ/PROGRAM/Characters/characners_unit.c найти строчку
ch.Ship.Type = SHIP_LUGGER_ENGLAND Заменить на нужный корабль.
Если создать, то в этой теме есть подробный рецепт создания корабля.
Цитата
2. Как сделать так что бы корабль нельзя было купить или в море встретить?

В файле ships_unit.c под нужным кораблем написать: refShip.CanEncounter = false;
А именно, после статов.
К примеру возьму форт. biggrin.gif
Код
FORT
//-------------------------------------------------------------------------
    makeref(refShip,ShipsTypes[SHIP_FORT]);
    refShip.Name            = "Fort";
    refShip.Class           = 1;
    refShip.Cannon          = CANNON_TYPE_CANNON_LBS32;
    refShip.MaxCaliber      = 32;
    refShip.Weight            = Tonnes2CWT(22500);
    refShip.Capacity        = 27000;
    refShip.CannonsQuantity = 68;
    refShip.MaxCrew         = 6500;
    refShip.MinCrew         = 3000;
    refShip.SpeedRate        = 11.2;
    refShip.TurnRate        = 20;
    refShip.Price           = 36000;
    refShip.HP              = 54000;
    refShip.SP              = 100;

    refShip.CanEncounter    = false;

Вот так.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Ero)(@
сообщение Aug 5 2009, 17:42
Сообщение #213


юнга
**


Группа: форумчанин (*)
Сообщений: 17
Регистрация: 22-June 09
Пользователь №: 20,557



Спасибо
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Etien
сообщение Aug 5 2009, 20:15
Сообщение #214


матрос
***


Группа: форумчанин
Сообщений: 51
Регистрация: 23-June 09
Пользователь №: 20,563



хелп! скажите что в коде не правильно
мне надо, чтоб когда в таверну гг зашел, в "актере" подошел к сидящему за столом нпс начился диалог.
а мой гг при входе в таверну начинает стоять , как штопр
Код
//Заведение квеста на диалог с "Portos"в таверне
         pchar.quest.Case1.win_condition.l1 = "location";
         pchar.quest.Case1.win_condition.l1.location = "Redmond_tavern";
         pchar.quest.Case1.win_condition = "Case1";
   //Перемещение Рortosa
    ChangeCharacterAddressGroup(characterFromID("Portos"), "Redmond_tavern", "Sit", "Sit5");
    LAi_SetSitType(characterFromID("Portos"));

    case "Case1":

        //задаем тип поведения Актер ГГ, чтобы не дергался и не свалил куда-нибудь
        LAi_SetActorType(PChar);

        //задаем тип поведения Актер сидящей НПС, чтобы не дергался и не свалил куда-нибудь
        LAi_SetSitType(characterFromID("Portos"));  

        //тут ставим необходимую ноду диалога непися, может быть любая ВАМ необходимая...
        //в данном случаее Первая встреча
        Characters[GetCharacterIndex("Portos")].Dialog.CurrentNode = "First time";

        //(наоборот)указываем второму персонажу <characterFromID("Portos")> следовать к первому pchar
        //по истечении времени 1.0 вызовется квест... тут его нет ""
        LAi_ActorFollow(characterFromID("Portos"), pchar, "dialog_portos", 5.0);
        LAi_ActorFollow(pchar, characterFromID("Portos"), "", 5.0);
        
  break;
        case "dialog_portos":
            //----------------
            LAi_ActorWaitDialog(Pchar, characterFromID("Portos"));
            LAi_ActorDialog(characterFromID("Portos"), Pchar, "", 5.0, 0);
        
  break;

  case "Case2":
        //возвращаем тип Плэйер ГГ
        LAi_SetPlayerType(Pchar);
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
VladNiP
сообщение Aug 5 2009, 20:31
Сообщение #215


боцман
****


Группа: форумчанин
Сообщений: 270
Регистрация: 23-July 09
Из: Россия. Пермь.
Пользователь №: 20,820



К примеру, где у тебя LAi_actor following. ( 2 скрипт ), у тебя там что-то пропушено.
Или так надо? Если хоть одно значение пропушено, то скрипт недействителен.
LAi_ActorFollow(pchar, characterFromID("Portos"), "", 5.0); - этот пропуск так и нужен?
LAi_ActorDialog(characterFromID("Portos"), Pchar, "", 5.0, 0); - аналогично.
Цитата
Эт я сюда на всякий случай впихнул

Зачем?
Скрипты не терпят таких вот "всяких" случаев.
лучше убери, если не предусмотрено.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Etien
сообщение Aug 5 2009, 20:44
Сообщение #216


матрос
***


Группа: форумчанин
Сообщений: 51
Регистрация: 23-June 09
Пользователь №: 20,563



Цитата(VladNiP @ Aug 5 2009, 21:31) *

LAi_ActorFollow(pchar, characterFromID("Portos"), "", 5.0); - этот пропуск так и нужен?


Эт я сюда на всякий случай впихнул

а 2 ой вроде там нужен...
Цитата

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

опираясь на это как сделать правильный код?
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
Scatimon
сообщение Aug 5 2009, 22:02
Сообщение #217


...Welcome To Scatlend...
******

Ветеран Форума
Группа: форумчанин
Сообщений: 707
Регистрация: 14-April 05
Из: Москва
Пользователь №: 662



Портоса заставил идти к ГГ в сидячем положении - не гут. Лана через 5 сек серавно заводица диалог. Но ты заставляешь ГГ слушать диалог портоса, а портоса заводить диалог с ГГ. Делаеца наоборот. Портос ждет диалога, ГГ по подходу должен завести диалог. Причем портоса жеательно тоже ввести в актера и указать сидеть в актере.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
dolphin_sv
сообщение Aug 5 2009, 22:18
Сообщение #218


матрос
***


Группа: форумчанин
Сообщений: 88
Регистрация: 23-May 05
Из: Донецк
Пользователь №: 771



Достаточно вот этого:

Код
case "Case1":

        LAi_SetActorType(PChar);
        ref chr = CharacterFromID("Portos");
        chr.Dialog.CurrentNode = "First time";
        // после диалога выполнится case 2 и ГГ перестанет быть актером
        LAi_ActorDialog(Pchar, chr, "Case2", 5.0, 0.5);
        
break;

case "Case2":
        LAi_SetPlayerType(Pchar);
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
ALexusB
сообщение Aug 5 2009, 22:20
Сообщение #219


Разработчик ВМЛ-КВЛ
*******

Seaward TeamЖелезный Профессор
Группа: Admin
Сообщений: 16,224
Регистрация: 2-November 04
Пользователь №: 3



См мой пост про переменные и лишние циклы по 2000 итераций - у тебя (Etien) жутко неоптимальный код, в каждой строке вызов портоса через метод его поиска (цикл)
User is offlineProfile CardPM
Go to the top of the page
+Quote Post
navy
сообщение Aug 6 2009, 07:04
Сообщение #220


Hagane no Renkinjutsushi
*******

Seaward TeamВетеран ФорумаЗаслуженный Корсар

Группа: Seaward.Ru Team
Сообщений: 5,970
Регистрация: 15-March 05
Из: Волгоград
Пользователь №: 578



Кроме того, как ты представляешь сидящего НПС идущего к твоему ГГ? Не надо пихать все подряд, разберись сначала, что и за что отвечает. Потом пишется ОСОЗНАННЫЙ код, а не набор функций.
User is offlineProfile CardPM
Go to the top of the page
+Quote Post

35 страниц V « < 9 10 11 12 13 > » 
Reply to this topicStart new topic
4 чел. читают эту тему (гостей: 4, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 19th April 2024 - 11:54

Блок рекламы
Яндекс цитирования Rambler's Top100
Rambler's Top100