World of Gothic - Forum

Full Version: Tutorial modding
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
In acest topic am sa va arat cum puteti crea o casca precum cele de paladin pentru Gothic 2.

Pentru inceput veti avea nevoie de un model 3d al unei casti. O sa ii dam import in Blender pentru a aseza coordonatele corespunzatoare.

[Image: 73jybl.jpg]

Dupa ce importati 3d-ul dorit. apasati Numpad5 si apoi Numpad1 pentru a vizualiza Ortho Front.
Casca trebuie sa aiva partea de sus a ochilor la linia rosie(x). Dar depinde si de 3d-ul castii, cel mai bine il asezati dupa un model. Bineinteles va trebui sa ii faceti si marimea corespunzatoare, dar din nou veti avea nevoie de un model, pe care il puteti lua de la armura de paladin.

[Image: 2mgnoqv.jpg]

Dupa ce faceti coordonatele, exportati armura in format 3ds in Gothic II/_work/Data/Meshes/Items/Armor.

[Image: 219qkix.jpg]

In continuare vom pune textura castii, in Gothic II/_work/data/Textures/NPCs/Armor.

[Image: 11jvy3b.jpg]

Acum vom deschide scriptul armurilor din Gothic II/_work/data/Script/CONTENT/Item.

Vom adauga constanta pentru valoarea castii.

Code:
const int VALUE_ITHE_TITAN      =4000;

Acum va trebui sa facem scriptul castii.
Pentru inceput ii vom face instanta, pe care o veti folosi ca sa introduceti obiectul in joc, fie ca e prin cod, fie ca e printr-o misiune.

Code:
instance ITHE_TITAN (C_Item)

Vom pune numele obiectului.

Code:
name                     =    "Titan Helm";

Trebuie sa punem si flagul obiectului(tipul de item).

Code:
mainflag                 =    ITEM_KAT_ARMOR;
    flags                     =    0;

Acum esentialele pentru o armura, adica protectia pe care sa o aiva.

Code:
protection [PROT_EDGE]    =    50;
    protection [PROT_BLUNT] =     50;
    protection [PROT_POINT] =     50;
    protection [PROT_FIRE]     =     50;
    protection [PROT_MAGIC] =     50;

Constanta introdusa mai sus urmeaza a fi folosita aici.Si astfel casca va avea valoare din constanta, dar puteti face fara si sa adaugati pur si simplu valoarea dorita dupa egalul de mai jos.

Code:
value                     =    VALUE_ITHE_TITAN;

La wear veti pune head, pentru ca obiectul sa fie pus ca helm si nu ca altceva.

Code:
wear                     =    WEAR_HEAD;

La vizual veti pune 3ds-ul exportat mai devreme. Materialul va fi metal. Grin

Code:
visual                     =    "ItHe_Titan.3ds";
    visual_skin             =    0;
    material                 =    MAT_METAL;

Restul scriptului este o descriere care va fi la fel ca la celelalte iteme. Grin

Code:
    description                =    name;
    
    TEXT[1]                    =    NAME_Prot_Edge;            
    COUNT[1]                =     protection    [PROT_EDGE];
    
    TEXT[2]                    =    NAME_Prot_Point;        
    COUNT[2]                =     protection    [PROT_POINT];
    
    TEXT[3]                 =    NAME_Prot_Fire;            
    COUNT[3]                =     protection    [PROT_FIRE];
    
    TEXT[4]                    =    NAME_Prot_Magic;        
    COUNT[4]                =     protection    [PROT_MAGIC];
    
    TEXT[5]                    =    NAME_Value;            
    COUNT[5]                =     value;


Si bineinteles sfarsitul scriptului.

Code:
};

Scriptul intreg arata asa.

Code:
// ******************************************************
instance ITHE_TITAN (C_Item)
{
    name                     =    "Titan Helm";

    mainflag                 =    ITEM_KAT_ARMOR;
    flags                     =    0;

    protection [PROT_EDGE]    =    50;
    protection [PROT_BLUNT] =     50;
    protection [PROT_POINT] =     50;
    protection [PROT_FIRE]     =     50;
    protection [PROT_MAGIC] =     50;

    value                     =    VALUE_ITHE_TITAN;

    wear                     =    WEAR_HEAD;

    visual                     =    "ItHe_Titan.3ds";
    visual_skin             =    0;
    material                 =    MAT_METAL;

    description                =    name;
    
    TEXT[1]                    =    NAME_Prot_Edge;            
    COUNT[1]                =     protection    [PROT_EDGE];
    
    TEXT[2]                    =    NAME_Prot_Point;        
    COUNT[2]                =     protection    [PROT_POINT];
    
    TEXT[3]                 =    NAME_Prot_Fire;            
    COUNT[3]                =     protection    [PROT_FIRE];
    
    TEXT[4]                    =    NAME_Prot_Magic;        
    COUNT[4]                =     protection    [PROT_MAGIC];
    
    TEXT[5]                    =    NAME_Value;            
    COUNT[5]                =     value;
};

[Image: ng3qk3.jpg]

Vom deschide Gothic 2 din Gothic 2 Starter si vom bifa "Skripte parsen".

[Image: 29diplh.jpg]

Acum aveti o casca in joc.

[Image: 25apu7d.jpg]

[Image: 10h1s3q.jpg]

Daca vreti sa o folositi cu toate armurile va trebui sa le modificati pe cele care au deja si sa le faceti fara, altfel vor aparea doua casti atunci cand purtati si armura si casca.