Dialog problem 8165 21

O temacie

Autor Konios

Zaczęty 30.01.2011 roku

Wyświetleń 8165

Odpowiedzi 21

Konios

Konios

Użytkownicy
posty19
Propsy1
  • Użytkownicy
Witam

Mam problem ktorego sam nie potrafie rozwiazac ( jestem poczatkujacy w modowaniu) tzn. dzieki programowi NPC maker stworzylem maga i chce zrobic do niego dialog. Do tego celu sciagnalem Easy Dialog Makera i wszystko bylo by dobrze ale spacer wykrywa jakis blad. Nie potrafie go zlokalizowac a dla was jak sadze nie bedzie to trudne zadanie.

Skrypt postaci(chyba wszystko ok):

instance KDF_1500_Altus (Npc_Default)
{

//----------Info ogolne----------

name = "Altus";
Npctype = Npctype_Main;
guild = GIL_KDF;
level = 50;
voice = 4;
id = 1500;

//----------Statystyki----------

attribute[ATR_STRENGTH] = 11;
attribute[ATR_DEXTERITY] = 11;
attribute[ATR_MANA_MAX] = 1111;
attribute[ATR_MANA] = 1111;
attribute[ATR_HITPOINTS_MAX] = 1212;
attribute[ATR_HITPOINTS] = 1212;

//----------Wyglad----------

Mdl_SetVisual (self,"HUMANS.MDS");
Mdl_ApplyOverlayMds (self,"Humans_Mage.mds");
Mdl_SetVisualBody (self,"hum_body_naked0",2, 1,"Hum_Head_Psionic",110, 1,KDF_ARMOR_H);
B_Scale (self);
Mdl_SetModelFatness(self,0);

//----------Umiejetnasci----------

Npc_SetTalentSkill (self, NPC_TALENT_MAGE,6);

//----------Ekwipunek----------
CreateInvItems  (self,ItArRuneFirestorm,1);
//----------Pozostale----------
fight_tactic = FAI_HUMAN_Mage;
daily_routine = Rtn_start_1500;
};

FUNC VOID Rtn_start_1500 ()
{
TA_Smoke (09,00,12,45,"WP_INTRO_W106");
TA_Smoke (12,45,9,00,"WP_INTRO_W106");
};

Skrypt dialogu:

// *Script was make in Easy Dialog Maker (EDM)

//========================================
//-----------------> OPCJA *KONIEC*
//========================================

INSTANCE DIA_Altus_EXIT(C_INFO)
{
npc             = KDF_1500_Altus;
nr              = 999;
condition = DIA_Altus_EXIT_Condition;
information = DIA_Altus_EXIT_Info;
permanent = TRUE;
description     = "KONIEC";
};

FUNC INT DIA_Altus_EXIT_Condition()
{
return TRUE;
};

FUNC VOID DIA_Altus_EXIT_Info()
{
AI_StopProcessInfos (self);
};

//========================================
//-----------------> HELLO1
//========================================

INSTANCE DIA_Altus_HELLO1 (C_INFO)
{
   npc          = KDF_1500_Altus;
   nr           = 1;
   condition    = DIA_Altus_HELLO1_Condition;
   information  = DIA_Altus_HELLO1_Info;
   permanent = FALSE;
   description = "Kim jesteś?";
};

FUNC INT DIA_Altus_HELLO1_Condition()
{
    return TRUE;
};

FUNC VOID DIA_Altus_HELLO1_Info()
{
    AI_Output (other, self ,"DIA_Altus_HELLO1_15_01"); //Kim jesteś?
    AI_Output (self, other ,"DIA_Altus_HELLO1_03_02"); //Jestem Altus Mag Ognia
};

//========================================
//-----------------> HELLO2
//========================================

INSTANCE DIA_Altus_HELLO2 (C_INFO)
{
   npc          = KDF_1500_Altus;
   nr           = 2;
   condition    = DIA_Altus_HELLO2_Condition;
   information  = DIA_Altus_HELLO2_Info;
   permanent = FALSE;
   description = "Moze ci w czyms pomoc ?";
};

FUNC INT DIA_Altus_HELLO2_Condition()
{
    if (Npc_KnowsInfo (other, DIA_Altus_HELLO1))
    {
    return TRUE;
    };
};


FUNC VOID DIA_Altus_HELLO2_Info()
{
    MIS_Altus_ruda = LOG_RUNNING;

    Log_CreateTopic            (CH1_Altus_ruda, LOG_MISSION);
    Log_SetTopicStatus       (CH1_Altus_ruda, LOG_RUNNING);
    B_LogEntry                     (CH1_Altus_ruda,"Altus chce bryłkę rudy");
};

//========================================
//-----------------> HELLO3
//========================================

INSTANCE DIA_Altus_HELLO3 (C_INFO)
{
   npc          = KDF_1500_Altus;
   nr           = 3;
   condition    = DIA_Altus_HELLO3_Condition;
   information  = DIA_Altus_HELLO3_Info;
   permanent = FALSE;
   description = "Mam brylke";
};

FUNC INT DIA_Altus_HELLO3_Condition()
{
    if (Npc_KnowsInfo (other, DIA_Altus_HELLO2))
    && (Npc_HasItems (other, ItMiNugget) >=1)
    {
    return TRUE;
    };
};


FUNC VOID DIA_Altus_HELLO3_Info()
{
    B_GiveInvItems (other, self, ItMi_Gold, 1);
    B_LogEntry                     (CH1_Altus_ruda,"Przynioslem Altusowi brylke rudy");
    Log_SetTopicStatus       (CH1_Altus_ruda, LOG_SUCCESS);
    MIS_Altus_ruda = LOG_SUCCESS;

    B_GiveXP (300);
    CreateInvItems (self, KDF_ARMOR_H, 1);
    B_GiveInvItems (self, other, KDF_ARMOR_H, 1);
};

PS: pewnie zrobilem jakis glupi blad ale prosze o wyrozumialosc
wersja Easy Dialog Makera 3.3_7
 

Graveir

Graveir

Użytkownicy
Avatar Twilight Sparkle / Pożeracz serc
posty1275
Propsy235
ProfesjaGracz
  • Użytkownicy
  • Avatar Twilight Sparkle / Pożeracz serc
Podaj treść błędu,bo jasnowidzami to my nie jesteśmy:)
 
Mój obecny sprzęt PC:
Intel core i5-4590
8 gb ram
Geforce GTX 1050Ti

Konios

Konios

Użytkownicy
posty19
Propsy1
  • Użytkownicy

Konios

Dialog problem
#2 2011-01-30, 12:14(Ostatnia zmiana: 2011-01-30, 12:20)
kk to bedzie tak:

U:PAR: Redefined identifier : Mis_Altus_RUDA (line 379)
U:PAR: Redefined identifier : RTN_START_1500 (line 63)
\_WORK\DATA\SCRIPTS\STORY\MISSIONS\DIA_KDF_1500_Altus.D: unknown identifier : ITMI_GOLD
 

Pawexball

Pawexball

Użytkownicy
posty51
Propsy2
  • Użytkownicy
nie napisałeś dialogu do zadania tylko description napisz dialog i będzie git
 

Konios

Konios

Użytkownicy
posty19
Propsy1
  • Użytkownicy

Konios

Dialog problem
#4 2011-01-30, 12:22(Ostatnia zmiana: 2011-01-30, 12:24)
Dziekuje zrobie od nowa zeby miec pewnosc w razie problemow napisze ;]

Mam jeszcze jedno pytanie co mam wpisac w NPC maker zeby nosil szate ktora sam zrobilem tzn. w ter rubryczce jak dam zbroja wlasna
 

Pawexball

Pawexball

Użytkownicy
posty51
Propsy2
  • Użytkownicy
to masz tam taki szit wpisz instancje zbroi i tam wpiszesz i masz
 

Graveir

Graveir

Użytkownicy
Avatar Twilight Sparkle / Pożeracz serc
posty1275
Propsy235
ProfesjaGracz
  • Użytkownicy
  • Avatar Twilight Sparkle / Pożeracz serc

Graveir

Dialog problem
#6 2011-01-30, 12:49(Ostatnia zmiana: 2011-01-30, 12:49)
Cytuj
U:PAR: Redefined identifier : Mis_Altus_RUDA (line 379)
U:PAR: Redefined identifier : RTN_START_1500 (line 63)
\_WORK\DATA\SCRIPTS\STORY\MISSIONS\DIA_KDF_1500_Altus.D: unknown identifier : ITMI_GOLD
Dwa pierwsze błędy oznaczają,że chcesz użyć funkcji/wpisu już istniejącego,natomiast ostatni błąd oznacza,że nieznany przedmiot/instancja przedmiotu.
 
Mój obecny sprzęt PC:
Intel core i5-4590
8 gb ram
Geforce GTX 1050Ti

Bucik

Bucik

Użytkownicy
posty182
Propsy128
Profesjabrak
  • Użytkownicy
1. Pewnie bawisz się w G1 - tam nie ma ItMi_Gold - zamień na ItMiNugget
2. Znajdź plik Story_Globals.d i zobacz na samym końcu czy nie masz dwa razy deklaracji zmiennej 'Mis_Altus_RUDA' - jeśli tak - usuń jedną
 

Konios

Konios

Użytkownicy
posty19
Propsy1
  • Użytkownicy
Jesli chodzi o brylke to miales racje bucik pomylilem sie oto skrypt bardzo podobny juz z poprawionymi bledami :

// *Script was make in Easy Dialog Maker (EDM)

//========================================
//-----------------> OPCJA *KONIEC*
//========================================

INSTANCE DIA_Mag_EXIT(C_INFO)
{
npc             = KDF_1500_Mag;
nr              = 999;
condition = DIA_Mag_EXIT_Condition;
information = DIA_Mag_EXIT_Info;
permanent = TRUE;
description     = "KONIEC";
};

FUNC INT DIA_Mag_EXIT_Condition()
{
return TRUE;
};

FUNC VOID DIA_Mag_EXIT_Info()
{
AI_StopProcessInfos (self);
};

//========================================
//-----------------> HELLO1
//========================================

INSTANCE DIA_Mag_HELLO1 (C_INFO)
{
   npc          = KDF_1500_Mag;
   nr           = 1;
   condition    = DIA_Mag_HELLO1_Condition;
   information  = DIA_Mag_HELLO1_Info;
   permanent = FALSE;
   description = "Kim jesteś?";
};

FUNC INT DIA_Mag_HELLO1_Condition()
{
    return TRUE;
};

FUNC VOID DIA_Mag_HELLO1_Info()
{
    AI_Output (other, self ,"DIA_Mag_HELLO1_15_01"); //Kim jesteś?
    AI_Output (self, other ,"DIA_Mag_HELLO1_03_02"); //Jestem Magiem a ty ?
    AI_Output (other, self ,"DIA_Mag_HELLO1_15_03"); //Jestem...
    AI_Output (self, other ,"DIA_Mag_HELLO1_03_04"); //Nie interesuje mnie kim jestes
};

//========================================
//-----------------> HELLO2
//========================================

INSTANCE DIA_Mag_HELLO2 (C_INFO)
{
   npc          = KDF_1500_Mag;
   nr           = 2;
   condition    = DIA_Mag_HELLO2_Condition;
   information  = DIA_Mag_HELLO2_Info;
   permanent = FALSE;
   description = "Moge cos dla ciebie zrobic ?";
};

FUNC INT DIA_Mag_HELLO2_Condition()
{
    if (Npc_KnowsInfo (other, DIA_Mag_HELLO1))
    {
    return TRUE;
    };
};


FUNC VOID DIA_Mag_HELLO2_Info()
{
    AI_Output (other, self ,"DIA_Mag_HELLO2_15_01"); //Moge cos dla ciebie zrobic ?
    AI_Output (other, self ,"DIA_Mag_HELLO2_15_02"); //hmmm, tak
    AI_Output (self, other ,"DIA_Mag_HELLO2_03_03"); //przynies mi 1 brylke rudy
    MIS_Mag_RUDA = LOG_RUNNING;

    Log_CreateTopic            (CH1_Mag_RUDA, LOG_MISSION);
    Log_SetTopicStatus       (CH1_Mag_RUDA, LOG_RUNNING);
    B_LogEntry                     (CH1_Mag_RUDA,"Mam orzyniesc magowi 1 brylke rudy");
};

//========================================
//-----------------> HELLO3
//========================================

INSTANCE DIA_Mag_HELLO3 (C_INFO)
{
   npc          = KDF_1500_Mag;
   nr           = 3;
   condition    = DIA_Mag_HELLO3_Condition;
   information  = DIA_Mag_HELLO3_Info;
   permanent = FALSE;
   description = "Mam rude";
};

FUNC INT DIA_Mag_HELLO3_Condition()
{
    if (Npc_KnowsInfo (other, DIA_Mag_HELLO2))
    && (Npc_HasItems (other, ItMiNugget) >=1)
    {
    return TRUE;
    };
};


FUNC VOID DIA_Mag_HELLO3_Info()
{
    AI_Output (other, self ,"DIA_Mag_HELLO3_15_01"); //Mam rude
    AI_Output (self, other ,"DIA_Mag_HELLO3_03_02"); //to dobrze
    B_GiveInvItems (other, self, ItMiNugget, 1);
    B_LogEntry                     (CH1_Mag_RUDA,"Dalem magowi brylke rudy.");
    Log_SetTopicStatus       (CH1_Mag_RUDA, LOG_SUCCESS);
    MIS_Mag_RUDA = LOG_SUCCESS;

    B_GiveXP (300);
    AI_Output (self, other ,"DIA_Mag_HELLO3_03_03"); //Nalezy ci sie nagroda, masz wez ta szate
    CreateInvItems (self, KDF_ARMOR_L, 1);
    B_GiveInvItems (self, other, KDF_ARMOR_L, 1);
};

wyskakuje blad:
U:PAR: Expected '(' (line 42)
 

Graveir

Graveir

Użytkownicy
Avatar Twilight Sparkle / Pożeracz serc
posty1275
Propsy235
ProfesjaGracz
  • Użytkownicy
  • Avatar Twilight Sparkle / Pożeracz serc
Jesteś pewien,że line 42?Bo w skrypcie dialogu w tamtej linii nie ma żadnego błędu.
 
Mój obecny sprzęt PC:
Intel core i5-4590
8 gb ram
Geforce GTX 1050Ti

Konios

Konios

Użytkownicy
posty19
Propsy1
  • Użytkownicy
jestem pewien, pozniej wyskakuje blad z 2 nawiasem pozniej z ; itd.
Nie widzisz tam rzadnego bledu ?
nie wiem moze moglbys sprawdzic , zrobic taki dialog u siebie(bardzo mi zalezy)
 

Bucik

Bucik

Użytkownicy
posty182
Propsy128
Profesjabrak
  • Użytkownicy

Bucik

Dialog problem
#11 2011-01-30, 19:39(Ostatnia zmiana: 2011-01-30, 19:45)
Nie wiem w czym jest problem, ale w skrypcie postaci masz jeszcze mały błąd:
FUNC VOID Rtn_start_1500 ()
{
TA_Smoke (09,00,12,45,"WP_INTRO_W106");
TA_Smoke (12,45,9,00,"WP_INTRO_W106");
};

Zamień na:
FUNC VOID Rtn_start_1500 ()
{
TA_Smoke (09,00,12,45,"WP_INTRO_W106");
TA_Smoke (12,45,09,00,"WP_INTRO_W106");
};

Ten błąd z linią 42 najprawdopodobniej nie odnosi się do tego dialogu co pokazałeś.
 

Konios

Konios

Użytkownicy
posty19
Propsy1
  • Użytkownicy

Konios

Dialog problem
#12 2011-01-30, 19:54(Ostatnia zmiana: 2011-01-30, 19:57)
po tym bledzie U:PAR: Expected '(' (line 42)
jest cala seria bledow tzn nastempny jest 2 ) pozniej ; itd. po czym pojawia blad: U:PAR : Synax Error WP_INTRO_W106 (line 44) z tego co mysle to znaczy ze cos jes z waypointem ale sprawdzalem i nie pomylilem sie w wpisywanium, i znowu wyskakuja bledy typu )

PS: poprawilem, nic nie dalo
 

Bucik

Bucik

Użytkownicy
posty182
Propsy128
Profesjabrak
  • Użytkownicy
Zobacz na końcu Story_Globals.d czy nie masz powtórzonych deklaracji.
Niestety nie widzę tu innych możliwych błędów...
 

Konios

Konios

Użytkownicy
posty19
Propsy1
  • Użytkownicy

Konios

Dialog problem
#14 2011-01-31, 16:33(Ostatnia zmiana: 2011-01-31, 16:43)
//------------------------------------------------------------------------
//   Allgemeine Hilfsvariablen
//------------------------------------------------------------------------

var int LeftyDead;
var int MIS_Mag_RUDA;

to sa ostatnie linijki

Upewnie sie jeszcze :

Aby polaczyc dialog i postac przez spacera nie trzeba miec w nim nic zmienione od nowosci ?
postac wklejamy do : D:\Program Files (x86)\Piranha Bytes\Gothic\_Work\Data\Scripts\Content\Story\NPC
a dialog do: D:\Program Files (x86)\Piranha Bytes\Gothic\_Work\Data\Scripts\Content\Story\MISSIONS
 

Tomaj

Tomaj

Użytkownicy
posty107
Propsy13
  • Użytkownicy

Tomaj

Dialog problem
#15 2011-01-31, 16:44(Ostatnia zmiana: 2011-01-31, 16:47)
Po tym jak robiłem skrypty dialogów w Dialog Makerze to też wyskakiwały mi błędy, których tak naprawdę nie było. Nie jestem pewien ale wtedy (chyba) pomagało wyrzucenie i  skopiowanie do jakiegoś zewnętrznego pliku, w twoim przypadku tego
FUNC INT DIA_Mag_HELLO1_Condition()
{
    return TRUE;
};
a nastepnie ponowne wklejenie. Nie jestem pewien czy to zadziała, ewentualnie możesz spróbowac zrobić tak z całą opcją dialogową, ale tak jak powiedziałem nie daję gwarancji, że to zadziała jednak nie zaszkodzi spróbować.

EDIT:Nie wiem jak jest w gothic 1 ale w gothic 2 nk dialog należy wrzucić do
D:\Program Files (x86)\Piranha Bytes\Gothic\_Work\Data\Scripts\Content\Story\Dialoge
 

Konios

Konios

Użytkownicy
posty19
Propsy1
  • Użytkownicy
tzn. napisz prosciej jak mowilem jestem jeszcze bardzo slaby w modowaniu:

mam skopjowac i usunac dialog z pliku gothica poczym co ?
wkleic go jeszcze raz ?

PS:Sory za glupie pytania
 

Tomaj

Tomaj

Użytkownicy
posty107
Propsy13
  • Użytkownicy

Tomaj

Dialog problem
#17 2011-01-31, 16:50(Ostatnia zmiana: 2011-01-31, 16:51)
Nie, chodziło mi o to, że wycinasz opcję dialogową lub funkcję, w której jest "błąd", wklejasz do innego pliku(może być jakiś np. na pulpice), kopiujesz z tego pliku, do którego to wkleiłeś(tego na pulpicie) i wklejasz do pliku z dialogiem w to samo miejsce gdzie było poprzednio.
Inaczej nie potragfiętego wytłumaczyć.
 

Konios

Konios

Użytkownicy
posty19
Propsy1
  • Użytkownicy
zrobilem ta:
wyciolem to i wkleilem sobie na pulpit to pliku z notatnika japisalem oba pliki poczym wyciolem z notatnika i wkleilem spowrotem we wlasciwe miejsce. To nic nie dalo.
 

Tomaj

Tomaj

Użytkownicy
posty107
Propsy13
  • Użytkownicy
Mówiłem, że niczego nie obiecuję, musisz kombinować.
 


0 użytkowników i 1 Gość przegląda ten wątek.
0 użytkowników
Do góry