Jak začít s moddingem?

Vytváření nových modů není tak obtížné, zkuste si to taky.

Moderátor: Razfallow

Uživatelský avatar
Razfallow
Dabus
Příspěvky: 1373
Registrován: 24.9.2005 22:54
Bydliště: Sigil
Kontaktovat uživatele:

Příspěvek od Razfallow » 23.5.2006 17:08

Nakopíruj weidu.exe a .d soubor do adresáře hry.
Pokud máš Total Commander, Windows Commander atd., tak stačí ho otevřít, najet do adresáře hry. Dole uvidíš (podle toho, kde máš hru naistalovanou):

C:\Program Files\Black Isle\BG2 - SoA\

Do políčka za to napiš weidu zerthan.d

Jiný postup je, Start - Spustit - cmd
Otevře se ti příkazový řádek (takové černé okno).
Pomocí příkazů se dostaň do adresáře s hrou a napiš zase weidu zerthan.d

Kód: Vybrat vše

IF
  Detect([SPAMMER])
THEN
    RESPONSE #100
             ReallyForceSpell(WIZARD_POWER_WORD_KILL,LastSeenBy(Myself))
END
[/size]

Uživatelský avatar
Zorgan Fenrirson
Sigilan
Příspěvky: 22
Registrován: 17.11.2005 8:59

Příspěvek od Zorgan Fenrirson » 23.5.2006 17:14

Razfallow píše:Nakopíruj weidu.exe a .d soubor do adresáře hry.
Pokud máš Total Commander, Windows Commander atd., tak stačí ho otevřít, najet do adresáře hry. Dole uvidíš (podle toho, kde máš hru naistalovanou):

C:\Program Files\Black Isle\BG2 - SoA\

Do políčka za to napiš weidu zerthan.d

Jiný postup je, Start - Spustit - cmd
Otevře se ti příkazový řádek (takové černé okno).
Pomocí příkazů se dostaň do adresáře s hrou a napiš zase weidu zerthan.d
Nemám to nakopírovat do složky override,tam bejvaj uložený soubory .dlg?
We fought your wars with all our hearts,
You sent us back in body parts,
You took our wills with the truth you stole,
We offer prayers for you long lost soul.

Uživatelský avatar
Razfallow
Dabus
Příspěvky: 1373
Registrován: 24.9.2005 22:54
Bydliště: Sigil
Kontaktovat uživatele:

Příspěvek od Razfallow » 23.5.2006 17:16

Ne, stačí adresář hry.
Jak jsi teda vytvořil z .d souboru .dlg, když už ho máš?

Kód: Vybrat vše

IF
  Detect([SPAMMER])
THEN
    RESPONSE #100
             ReallyForceSpell(WIZARD_POWER_WORD_KILL,LastSeenBy(Myself))
END
[/size]

Uživatelský avatar
Zorgan Fenrirson
Sigilan
Příspěvky: 22
Registrován: 17.11.2005 8:59

To byla moje blbost

Příspěvek od Zorgan Fenrirson » 23.5.2006 17:22

Razfallow píše:Ne, stačí adresář hry.
Jak jsi teda vytvořil z .d souboru .dlg, když už ho máš?
Ne,promiň,nechci aby ses do toho kvůli mně pletl stejně jako já :oops: ,předtím sem to normálně přepsal,ale vím,že to byla chyba,zmátlo mě,že v tom tutorialu se jednou psalo o .d a podruhý o .dlg a nikde sem tam nenašel,jak dostanu to .dlg. Ale udělám to jak říkáš.
Použil sem Wincommander a spustilo se dosový okno s nějakým průběhem
We fought your wars with all our hearts,
You sent us back in body parts,
You took our wills with the truth you stole,
We offer prayers for you long lost soul.

Uživatelský avatar
Razfallow
Dabus
Příspěvky: 1373
Registrován: 24.9.2005 22:54
Bydliště: Sigil
Kontaktovat uživatele:

Re: To byla moje blbost

Příspěvek od Razfallow » 23.5.2006 17:28

Zorgan Fenrirson píše: Použil sem Wincommander a spustilo se dosový okno s nějakým průběhem
A objevil se ti tam ten .dlg?

Kód: Vybrat vše

IF
  Detect([SPAMMER])
THEN
    RESPONSE #100
             ReallyForceSpell(WIZARD_POWER_WORD_KILL,LastSeenBy(Myself))
END
[/size]

Uživatelský avatar
Zorgan Fenrirson
Sigilan
Příspěvky: 22
Registrován: 17.11.2005 8:59

.dlg

Příspěvek od Zorgan Fenrirson » 23.5.2006 17:35

Jo je tam,jak se dá změnit jméno v nearinfinity?když dám u souboru .cre edit (mám jej otevřený v okně) tak u položky name mám napsáno: no such index,co to znamená(žádný takový index?)-to to nenalezlo jméno?Mám soubor .char před přetáhnutím do .cre upravit v shadowkeepru?
We fought your wars with all our hearts,
You sent us back in body parts,
You took our wills with the truth you stole,
We offer prayers for you long lost soul.

Uživatelský avatar
Razfallow
Dabus
Příspěvky: 1373
Registrován: 24.9.2005 22:54
Bydliště: Sigil
Kontaktovat uživatele:

Re: .dlg

Příspěvek od Razfallow » 23.5.2006 17:39

Zorgan Fenrirson píše:Jo je tam,jak se dá změnit jméno v nearinfinity?když dám u souboru .cre edit (mám jej otevřený v okně) tak u položky name mám napsáno: no such index,co to znamená(žádný takový index?)-to to nenalezlo jméno?Mám soubor .char před přetáhnutím do .cre upravit v shadowkeepru?
Jméno postavy:
1) použiješ nějaké existující
2) přidáš ho při kompilaci modu (nejjednodušší bude, když si stáhneš nějakou One-Day NPC a podíváš se na TP2)

Kód: Vybrat vše

IF
  Detect([SPAMMER])
THEN
    RESPONSE #100
             ReallyForceSpell(WIZARD_POWER_WORD_KILL,LastSeenBy(Myself))
END
[/size]

Uživatelský avatar
Tokkar
Dabus
Příspěvky: 1737
Registrován: 26.9.2005 11:28
Bydliště: cerna O.....a cerna

Příspěvek od Tokkar » 24.5.2006 9:52

No asi by to chtělo udělat nějaký step-by-step návod od A až do Z, jak jsme se o tom kdysi bavili. Nezkusíš něco zkompilovat Razi?
The Oldest King's Knight At Realm is like a shadow on Sigil's street at moonless night.

Uživatelský avatar
Razfallow
Dabus
Příspěvky: 1373
Registrován: 24.9.2005 22:54
Bydliště: Sigil
Kontaktovat uživatele:

Příspěvek od Razfallow » 24.5.2006 10:11

Tokkar píše:No asi by to chtělo udělat nějaký step-by-step návod od A až do Z, jak jsme se o tom kdysi bavili. Nezkusíš něco zkompilovat Razi?
Ten přeložený návod obsahuje prakticky vše základní i instalaci pomocí weidu.

Kód: Vybrat vše

IF
  Detect([SPAMMER])
THEN
    RESPONSE #100
             ReallyForceSpell(WIZARD_POWER_WORD_KILL,LastSeenBy(Myself))
END
[/size]

Uživatelský avatar
Vlasák
Sigilan
Příspěvky: 3017
Registrován: 26.9.2005 7:56
Bydliště: Praha
Kontaktovat uživatele:

Re: .dlg

Příspěvek od Vlasák » 24.5.2006 10:47

Zorgan Fenrirson píše:Jo je tam,jak se dá změnit jméno v nearinfinity?když dám u souboru .cre edit (mám jej otevřený v okně) tak u položky name mám napsáno: no such index,co to znamená(žádný takový index?)-to to nenalezlo jméno?Mám soubor .char před přetáhnutím do .cre upravit v shadowkeepru?
Ano, nenalezlo to jméno, protože jména herních postav se neukládají mezi texty hry v dialog.tlk (ne, s dialogem, coby rozhovorem to nemá nic společného - je tam vše od popisů zbraní, kouzel, po dialogy). Když z herní postavy uděláš .cre, tak to hledá v herních textech a samozřejmě to nic nenajde.

To ale ničemu nevadí...

Je třeba pochopit základní mechaniku WeiDU - na jakém principu pracuje a v čem je ta jeho síla. Jak už bylo řečeno, všechny texty hry jsou v jednom souboru. Kdybys teda dělal mod s distribucí používající prosté kopírování ,byl by koncept následující:

- vše, co bys udělal, bys dělal finálně na svojí hře. Vznikly by ti tam nové soubory, upravil bys dialog.tlk svými texty dialogů dialogy, jmény postav a popisem zbraní, 2da soubory svými doplňky. Ten, kdo by si ten mod chtěl stáhnout, by musel stáhnout všechny soubory, na které jsi sáhnul - tj. jak ty tebou vytvořené, tak ty celé, které jsi jen upravil a doplnil.

Dialog.tlk je jednak docela velký, ale hlavně - nastala by kolize v situaci, kdy by se sešly dva mody. Použil bys dialog.tlk z prvního, ale co s druhým? Uříznout z něj tu část, která z něj patří druhému modu a doplnit ji k prvnímu dialogu? To je problém - každý text má svoje číslo a musel bys ty přilepené změnit, aby se netřískaly s těmi z prvního. Každý soubor (cre, dlg) má v sobě navíc pevné odkazy na tyto texty. Takže, když bys sice vyřešil to slepení .tlk a vyřešení kolizí jejich čísel textů, musel bys i řešit ten problém, že musíš přepsat všechny pevné odkazy v dlg, cre a kdovíjakých dalších souborech... A to všechno je práce pomalu delší než samotná tvorba modu ;-)

Zkrátka a dobře, takhle ne...

A tak postupem doby vznikly jiné koncepty, z nichž se nejvíce ujalo WeiDU. Ty tvoříš mod v jakési "polotovarové" verzi. Soubory .d (pakliže si je na svém pc nezkompiluješ do hry) se tvé hry a tvého dialog.tlk nijak nedotýkají. Vše je uloženo textově pouze v nich. Cre soubor, který s modem posíláš jaksi skutečně nemá jméno (on ho totiž nemá vlastně nikdy - obsahuje pouze odkaz na text v .tlk), má pouze nějaký odkaz, který odkazuje na *něco* (je úplně jedno co) v tvém dialog.tlk... A tak je to se vším - distribuuješ jednak netextové struktury (cre, itm, spl,...), u nichž neřešíš, na jaké texty v .tlk se odkazují, a pak "patche" (část obsahu tp2) či polotovary (d).

WeiDU při instalaci modu zkopíruje ty netextové struktury a do nich vloží ty své "patche" - jméno postavy, jméno a popis předmětu/kouzla atp.. Podobně z textových .d souborů polotovarů dialogů se vytvoří herní .dlg. A fígl je v tom, že veškeré texty, které v patchích a polotovarech máš, se díky weidu dokáží správně přilepit k existujícímu dialog.tlk a k tomu se správně aktualizují i ony odkazy v netextových strukturách.

Distribuce modu tak obsahuje méně dat a lze instalovat mody pohodlně a několik najednou.

Takže, abych se vrátil... Tvoje cre skutečně jméno nemá a pokud se mi podařilo vysvětlit princip weidu, tak už víš, že to skutečně ničemu nevadí - jméno své postavě totiž "vnutíš" až při instalaci modu - až na tom hráčově počítači se jméno přiřadí mezi herní texty a přilepí k tvé postavě.

Samozřejmě svůj mod asi chceš nějak testovat v průběhu tvorby, a tak si tam to jméno dodáš, aby ve hře nějak bylo vidět - ale to už nebude mít, pakliže budeš tvořit čistě weidu, žádný vliv na mod.
Infinity forever! - Baldur's Gate II add-on CZ
Fórum plné RPG - RPG fórum


Obrázek

Uživatelský avatar
Zorgan Fenrirson
Sigilan
Příspěvky: 22
Registrován: 17.11.2005 8:59

dialog přiřazen

Příspěvek od Zorgan Fenrirson » 25.5.2006 15:35

Dialog už u postavy mám,teď bych potřeboval vědět,co je to death variable a co s tím mám dělat...v tutorialu je:Jakmile je to ve formátu .cre, můžete mu přiřadit Death Variable, Dialog, Skripty (pokud nějaké), a Jméno. Jak jsi ale poznamenal ty,jméno mu přiřadit nemohu,to až v konečné fázi(resp. můžu,ale dá to hodně práce:o)
Co ovlivňuje ten Death variable?Na co tam je a co dělá?
Položka enemy-ally znamená chování,jaké vykazuje postava při setkání s playerem?
We fought your wars with all our hearts,
You sent us back in body parts,
You took our wills with the truth you stole,
We offer prayers for you long lost soul.

Uživatelský avatar
Vlasák
Sigilan
Příspěvky: 3017
Registrován: 26.9.2005 7:56
Bydliště: Praha
Kontaktovat uživatele:

Příspěvek od Vlasák » 25.5.2006 16:32

Death Variable je jednak identifikátor postavy používaný ve scriptech, druhak se death variable při smrti postavy použije tak, že je vytvořena globální proměnná ve tvaru SPRITE_IS_DEATH_DEATHVARIABLE udávající smrt.

Jinými slovy - přiřaď tam nějaký jedinečný identifikátor tvé postavy (pokud si jseš jistý, že nic takového ve hře použité už není, může to být jméno tvé postavy... zpravidla se tady ale používá nějaký prefix, který používáš buď ty, anebo případně název modu... Jmenuje-li se tvoje postava Severinius, tak její Death variable může být zf_severinius (zf jako Zorgan Fenrirson ;-)).

Až pak budeš psát nějaké scripty (používá se to i jinde), v nichž nějakým způsobem bude vystupovat tvá postava, tak ji označuješ právě tímto jménem.
Infinity forever! - Baldur's Gate II add-on CZ
Fórum plné RPG - RPG fórum


Obrázek

Uživatelský avatar
Zorgan Fenrirson
Sigilan
Příspěvky: 22
Registrován: 17.11.2005 8:59

bezpředmětné

Příspěvek od Zorgan Fenrirson » 25.5.2006 17:54

Ale jak to tam dostanu,v near infinity(dále NI)mi to nedává žádnou možnost k editaci,táké nevím proč se mi v NI v položce CRE neukazuje moje Zerthan.cre.Je něco špatně nebo ne,nehledá se to zase podle nějakejch odkazů na texty,nebo něco takovýho,nebo jo? :-o :roll:
We fought your wars with all our hearts,
You sent us back in body parts,
You took our wills with the truth you stole,
We offer prayers for you long lost soul.

Uživatelský avatar
drake127
Sigil Team
Příspěvky: 2358
Registrován: 24.9.2005 22:28
Bydliště: Jihlava, Czech Republic
Kontaktovat uživatele:

Re: bezpředmětné

Příspěvek od drake127 » 25.5.2006 17:57

Zorgan Fenrirson píše:Ale jak to tam dostanu,v near infinity(dále NI)mi to nedává žádnou možnost k editaci,táké nevím proč se mi v NI v položce CRE neukazuje moje Zerthan.cre.Je něco špatně nebo ne,nehledá se to zase podle nějakejch odkazů na texty,nebo něco takovýho,nebo jo? :-o :roll:
V NI to najdeš v zálžce override (protože ta tvoje postava není součástí hry a je tam jaksi "navíc").
Žralok, který štěká, nekouše.

Uživatelský avatar
Zorgan Fenrirson
Sigilan
Příspěvky: 22
Registrován: 17.11.2005 8:59

death various

Příspěvek od Zorgan Fenrirson » 25.5.2006 18:22

Jak mám změnit v NI death various,když mu NI nedává žádnou možnost na editaci? :evil:
We fought your wars with all our hearts,
You sent us back in body parts,
You took our wills with the truth you stole,
We offer prayers for you long lost soul.

Odpovědět

Zpět na „Infinity Engine“