začátek s tvořením npc


Sigilan Uživatelský avatar
Registrován: 8.1.2007 20:51
Bydliště: pláž v Nikdyzimě

Příspěvek Napsal: 20.3.2007 20:10

začátek s tvořením npc

jak mám udělat jednoduché npc? podle razova návodu jsem napsal *.d, vytvořil *.cre a v NI si otevřel script lokace AR1000.bsc a když tam přidám



IF
Global("PinHeadexistuje","AR1000",0)
THEN
RESPONSE #100
SetGlobal("PinHeadexistuje","AR1000",1)
CreateCreature("PinHead",[9137.2046],3)
END

tak mi to napíše při kompilování error Resource not found: S:NewObject* - "PinHead" Kam ten soubor mám zkopírovat?

a ještě jak mám vytvořit *.tp2 a co má být jeho obsahem?
Miluju ŠPENDLÍKY A HLAVY!!!!!!!!!!!
Adun Toridas!
offline  • 
ICQ
 •  Zobrazit profil uživatele

Dabus Uživatelský avatar
Registrován: 24.9.2005 22:54
Bydliště: Sigil

Příspěvek Napsal: 20.3.2007 20:55

Skript nemůže najít tvou postavu, kterou chceš daným blokem vytvořit.

Jednoduché tp2:

Kód: Vybrat vše, Rozšířit náhled
BACKUP ~PinHeadNPC/backup~
AUTHOR ~PinHead~

BEGIN ~PinHead NPC~
//text za těmito odrážkami je při kompilaci ignorován
//nejdříve dialog
COMPILE ~PinHeadNPC/pinhead.d~ //změň si jméno souboru podle sebe

//kompilace skriptů
EXTEND_BOTTOM ~ar1000.bcs~ ~PinHeadNPC/pinhead.baf~ //změň si jméno souboru podle sebe

//kopírování postavy
COPY ~PinHeadNPC/pinhead.cre~ ~override~
SAY NAME1 ~PinHead~
SAY NAME2 ~PinHead~
WRITE_ASCII 0x2cc ~PINHEAD~ #8 //přiřazení dialogu; opět změn jméno, aby to sedělo s tvým


Vytvoř složku PinHeadNPC, v ní další složku backup. Do PinHeadNPC nakopíruj své soubory - cre, d, baf, tp2
Stáhni si weidu, rozbal ho a weidu.exe si nakopíruj do hlavního adresáře a změň název na Setup_PinHeadNPC.exe.
.tp2 pojmenuj pouze PinHeadNPC.tp2

Baf - je nekompilovaný skript. Otevři si nějaký textový editor, začni nový file a vlož do něj svůj blok pro vytvoření postavy v oblasti. Pak ten texťák ulož s příponou .baf.
Kód: Vybrat vše, Rozšířit náhled
IF
  Detect([SPAMMER])
THEN
    RESPONSE #100
             ReallyForceSpell(WIZARD_POWER_WORD_KILL,LastSeenBy(Myself))
END
offline  • 
Zobrazit autorovy stránkyICQ
 •  Zobrazit profil uživatele

Sigilan Uživatelský avatar
Registrován: 8.1.2007 20:51
Bydliště: pláž v Nikdyzimě

Příspěvek Napsal: 20.3.2007 21:19

Razfallow píše:

WRITE_ASCII 0x2cc ~PINHEAD~ #8 //přiřazení dialogu; opět změn jméno, aby to sedělo s tvým[/code]


jaky typ souboru mam nahradit svym nazvem
Miluju ŠPENDLÍKY A HLAVY!!!!!!!!!!!
Adun Toridas!
offline  • 
ICQ
 •  Zobrazit profil uživatele

Dabus Uživatelský avatar
Registrován: 24.9.2005 22:54
Bydliště: Sigil

Příspěvek Napsal: 20.3.2007 21:36

PinHead píše:
Razfallow píše:

WRITE_ASCII 0x2cc ~PINHEAD~ #8 //přiřazení dialogu; opět změn jméno, aby to sedělo s tvým[/code]


jaky typ souboru mam nahradit svym nazvem


Tady jde o jméno dlg, které se vytvoří kompilací .d souboru. Tvůj .d soubor začíná např. takto:

BEGIN ~PINHEAD~

A právě PINHEAD bude jméno vytvořeného dlg.
Kód: Vybrat vše, Rozšířit náhled
IF
  Detect([SPAMMER])
THEN
    RESPONSE #100
             ReallyForceSpell(WIZARD_POWER_WORD_KILL,LastSeenBy(Myself))
END
offline  • 
Zobrazit autorovy stránkyICQ
 •  Zobrazit profil uživatele

Sigilan Uživatelský avatar
Registrován: 8.1.2007 20:51
Bydliště: pláž v Nikdyzimě

Příspěvek Napsal: 22.3.2007 21:33

ještě se chci zeptat kde prřesně bude muj pinhead stát ve vládní čtvrti nebo z čeho to poznám, nemůžu ho najít

Kód: Vybrat vše, Rozšířit náhled
CreateCreature("PinHead",[9137.2046],3)
Miluju ŠPENDLÍKY A HLAVY!!!!!!!!!!!
Adun Toridas!
offline  • 
ICQ
 •  Zobrazit profil uživatele

Dabus Uživatelský avatar
Registrován: 24.9.2005 22:54
Bydliště: Sigil

Příspěvek Napsal: 22.3.2007 22:01

Souřadnice se ve hře zobrazí klávesou X.
Kód: Vybrat vše, Rozšířit náhled
IF
  Detect([SPAMMER])
THEN
    RESPONSE #100
             ReallyForceSpell(WIZARD_POWER_WORD_KILL,LastSeenBy(Myself))
END
offline  • 
Zobrazit autorovy stránkyICQ
 •  Zobrazit profil uživatele

Sigilan Uživatelský avatar
Registrován: 8.1.2007 20:51
Bydliště: pláž v Nikdyzimě

Příspěvek Napsal: 22.3.2007 22:08

to vím, taky jsem to zkoušel, jenže v ty oblasti mapy byly max. 5k...takze ten 1 bod to teda asi nesplnuje...asi to hodim primo pred budovu vlady aby bylo jasno....... :think: :think: :think:
Miluju ŠPENDLÍKY A HLAVY!!!!!!!!!!!
Adun Toridas!
offline  • 
ICQ
 •  Zobrazit profil uživatele

Dabus Uživatelský avatar
Registrován: 24.9.2005 22:54
Bydliště: Sigil

Příspěvek Napsal: 23.3.2007 8:29

PinHead píše:to vím, taky jsem to zkoušel, jenže v ty oblasti mapy byly max. 5k...takze ten 1 bod to teda asi nesplnuje...asi to hodim primo pred budovu vlady aby bylo jasno....... :think: :think: :think:

No tak si ve hre najdi misto, kde bys chtel, aby byl, a pouzij souradnice toho mista.
Kód: Vybrat vše, Rozšířit náhled
IF
  Detect([SPAMMER])
THEN
    RESPONSE #100
             ReallyForceSpell(WIZARD_POWER_WORD_KILL,LastSeenBy(Myself))
END
offline  • 
Zobrazit autorovy stránkyICQ
 •  Zobrazit profil uživatele

Sigilan Uživatelský avatar
Registrován: 8.1.2007 20:51
Bydliště: pláž v Nikdyzimě

Příspěvek Napsal: 23.3.2007 13:23

existuje někdě nějaký návod na weidu (jak pridat dialogy na situace, scripty atd) abych se tady nemusel na všechno ptát ;-)
Miluju ŠPENDLÍKY A HLAVY!!!!!!!!!!!
Adun Toridas!
offline  • 
ICQ
 •  Zobrazit profil uživatele

Sigil Team Uživatelský avatar
Registrován: 24.9.2005 22:28
Bydliště: Jihlava, Czech Republic

Příspěvek Napsal: 23.3.2007 15:38

PinHead píše:existuje někdě nějaký návod na weidu (jak pridat dialogy na situace, scripty atd) abych se tady nemusel na všechno ptát ;-)
Návod nevím, ale docela pěkně zpracovaná dokumentace + nějaké příklady jsou přímo ve WeiDU balíčku (anglicky).
Žralok, který štěká, nekouše.
offline  • 
Zobrazit autorovy stránky
 •  Zobrazit profil uživatele

Sigilan Uživatelský avatar
Registrován: 8.1.2007 20:51
Bydliště: pláž v Nikdyzimě

Příspěvek Napsal: 23.3.2007 19:56

ách jo :-( pořád mi to nejde, instalace proběhne bez potíží a přesto se tam to npc neobjevuje :cry: už nevím kde může být chyba....přitom když do ar1000.bcs napisu, aby se objevil rudy drak, tak se objevi, ale postava nikde :-( .......a když to npc zkusím vyvolat pres konzoli, tak se objeví jakysi bojovník, kterého jsem už dávno smazal a nahradil jiným *.cre ( v scriptech jsem to samozdřejmě opravil)
Miluju ŠPENDLÍKY A HLAVY!!!!!!!!!!!
Adun Toridas!
offline  • 
ICQ
 •  Zobrazit profil uživatele

Sigil Team Uživatelský avatar
Registrován: 24.9.2005 22:28
Bydliště: Jihlava, Czech Republic

Příspěvek Napsal: 23.3.2007 20:16

Pokud bys ho opravdu smazal, tak tam není. To, co se objeví ve hře, najdeš ve složce override. To, co instaluješ pomocí tp2 souboru máš ve složce modu. Pokud změníš soubor v override, hra se změní hned (v případě cre stačí znovu nahrát pozici). Jenže po instalaci se ti změny ztratí.
Žralok, který štěká, nekouše.
offline  • 
Zobrazit autorovy stránky
 •  Zobrazit profil uživatele

Sigilan Uživatelský avatar
Registrován: 8.1.2007 20:51
Bydliště: pláž v Nikdyzimě

Příspěvek Napsal: 23.3.2007 20:25

tak uz jsem ted pokročil; sice se neobjeví hned, ale po konzoli ano. Jenže se objevil nový problém; ten týpek mě pořád zdravím (když myslím pořád tak pořád; cca každe 3 sec dialogem, takže to vylučuje jakkékoliv hraní :-( je nějaký script aby postava nemohla mluvit? (a abych s ni ale mohl mluvit o pridani\vyhozeni z druziny)
Miluju ŠPENDLÍKY A HLAVY!!!!!!!!!!!
Adun Toridas!
offline  • 
ICQ
 •  Zobrazit profil uživatele

Sigilan Uživatelský avatar
Registrován: 26.9.2005 7:56
Bydliště: Praha

Příspěvek Napsal: 24.3.2007 20:25

PinHead: ve scriptech je třeba používat scripting name (death variable) a ne název .cre souboru. To není zrovna případ CreateCreature akce, ale některých podmínek či akcí ano.

S těmi dialogy - postupuj fakt dle toho návodu, co psal Raz ;-) Tam to NPC má script tento ;-)

Kód: Vybrat vše, Rozšířit náhled
IF
See([PC])
NumTimesTalkedTo(0)
THEN
RESPONSE #100
Dialogue(Nearest([PC]))
END


Abys chápal, v čem je problém - tvůj script má nějakou podmínku, která je zřejmě stále splněna (např. pouhé See([PC])). Musíš tam dodat jistou logiku, která zajistí, že podmínka bude splněna pouze jednou (tj. např. ono NumTimesTalkedTo(0) - což znamená, že počet dialogů, které postava vedla, je 0 - toto je samozřejmě splněné pouze do prvního dialogu a pak už ne ;-) ; anebo test na nulovost proměnné, kterou v zápětí v související akci nastavíš na nenulové číslo). Ve scriptech je nutno dávat pozor i na tu globální sémantiku celého scriptu a pravidla průchodu scriptem - tj. jak často se jednotlivé bloky mají provádět a co se ve scriptu vlastně děje.

Na WeiDU samotné existuje ta dokumentace, která je velmi dobrá. Na konkrétní věci pak musíš následovat konkrétní tutorialy - weidu je pouze prostředek.

Kupříkladu
Úplný průvodce scriptováním
Průvodce AI scriptováním
Infinity forever! - Baldur's Gate II add-on CZ
Fórum plné RPG - RPG fórum


Obrázek
offline  • 
Zobrazit autorovy stránkyICQ
 •  Zobrazit profil uživatele

Sigilan Uživatelský avatar
Registrován: 29.9.2005 1:19
Bydliště: Šedozem

Příspěvek Napsal: 16.10.2007 12:22

Můžete mi někdo prosim Vás poradit v čem mám chybu?

Kód: Vybrat vše, Rozšířit náhled
BEGIN T1Taya

IF ~NumTimesTalkedTo(0)~ THEN BEGIN Prvnisetkani

SAY ~Hmm, *prohlíží si ho* bud zdráv.~

IF ~~ THEN REPLY ~Zdravím, kdopak jsi?~ GOTO Uvitani

IF ~~ THEN REPLY ~Trhni si ty běhno!~ GOTO Trhnisi

END

IF ~~ THEN BEGIN Uvitani

SAY ~*Ušklíbne se*, říkají mi Taya~

IF ~~ THEN REPLY ~Hmm Tayo, a co tu u Devíti pekel děláš?!~ GOTO cotudelas

END

IF ~~ THEN BEGIN Carodej

SAY ~Co myslíš, že asi v téhle blbé kleci dělám!Ten čarofuk mě zajal...~

IF ~~ THEN REPLY ~Aha, jasně...co bys řekla tomu spojit síly a najít společně cestu ven?~ GOTO cesta

IF ~~ THEN REPLY ~Hehe, blbý co?~ GOTO Blby

END

IF ~~ THEN BEGIN Parta

SAY ~Hmm, proč ne...~

IF ~~ THEN REPLY ~Eh, vlastně ne, nepotřebuju tě, ale nikam nechod!*smeje se*~ GOTO fuckoff

IF ~~ THEN REPLY ~Tak jdem, vypadneme odsud~ DO ~SetGlobal("Tayasepridala","LOCALS",1)

JoinParty()~ EXIT


END

IF ~NumTimesTalkedToGT(0)~ THEN BEGIN Rozhovorponavratu

SAY ~Ha!Takže mě tu přece jenom nenecháš zhnít!~

IF ~~THEN REPLY ~No jo tak teda pojd...~ DO ~SetGlobal("Tayasepdirada","LOCALS",1)
JoinParty()~ EXIT

IF ~~THEN REPLY ~Tak to se pleteš děvče...~ GOTO Odmitnuta

IF ~~THEN EXIT

END
















...There is no path too perilous, or hazard too great.
The specter of death does not daunt me...for I am already dead...
Giving birth to this nightmare is my most coveted dream.
I will see them all burn!
As my pain ends...theirs begins.
offline  • 
ICQ
 •  Zobrazit profil uživatele
Další

Uživatelé procházející toto fórum: Žádní registrovaní uživatelé a 1 návštěvník