Pokaż wiadomości

Ta sekcja pozwala Ci zobaczyć wszystkie wiadomości wysłane przez tego użytkownika. Zwróć uwagę, że możesz widzieć tylko wiadomości wysłane w działach do których masz aktualnie dostęp.


Wiadomości - Vizier

Strony: [1] 2
1
Mógłby ktoś łaskawie wrzucić te spolszczenie na jakiś darmowy serwer.

2
Skrypty / Styl walki grupowej
« dnia: 2013-10-22, 16:39 »
Korzystając z przypływu dobrego nastroju i czasu postanowiłem odkopać swoje skrypty z zamierzchłych czasów. Jest w nich straszny bałagan, ale coś dla braci skrypterów poskładałem. Zrobiłem ze dwa lata temu prototyp stylu grupowego do Gothic II. Cała długość klingi zadaje teraz obrażenia, trzeba tylko trochę to zoptymalizować.
Tu macie parę meshes potrzebnych
http://speedy.sh/zA6mF/triale-do-meshes.rar
Teraz tak:
 do System\VisualFX
{
PROTOTYPE ARMOR_PART_PROTO (CFx_Base)
{
     visname_s = "";
     visalpha = 1;
     emtrjmode_s = "FIXED";
     emtrjoriginnode = "";
     emtrjtargetrange = 0;
     emtrjnumkeys = 0;
     emtrjnumkeysvar = 0;
     emtrjangleelevvar = 0;
     emtrjangleheadvar = 0;
     emtrjeasefunc_s = "NONE";
     emtrjeasevel = 1000;
     emtrjdynupdatedelay = 200;
     emFXCreatedOwnTrj = 1;
     emfxlifespan = -1;
     emselfrotvel_s = "0 0 0";
     secsperdamage = -1;
     emTrjDynUpdateTargetOnly= 0;
     emCheckCollision = 0;
     emInvestNextKeyDuration = 0;
     emTrjTargetAzi = 0;
     emTrjTargetElev = 0;
     emTrjKeyDistVar = 0;
     emFlyGravity = 0;
     emSelfRotVel_S = "0 0 0";
     emFXCreate_S = "BugfixFX";
     emtrjloopmode_s = "LINEAR"; 
     emFXTriggerDelay = 0.02;
     visalphablendfunc_s = "NONE";
      emTrjTargetNode = "";
      emActionCollDyn_S = "";
      emActionCollStat_S = "";
      emFXCollStat_S = "";
      emFXCollDyn_S = "";
      emFXCollStatAlign_S = "";
      emFXCollDynAlign_S = "";
      lightPresetName = "";
      sfxID = "";
      sendAssessMagic = 0;
      secsPerDamage = -1;
      visalpha = 1;
      emfxlifespan = 1;
     //emadjustshptoorigin = 1;

};

///    XXXXXXXXXXXXXXXXXXXXXXXXXXXXX
///    XX  weapon  XX
/// 
INSTANCE av_weapon30_vfx (ARMOR_PART_PROTO)   
{
        emfxlifespan = 1;       
        emTrjOriginNode = "ZS_RIGHTHAND";
        visAlpha  = 0;
        visName_S = "av_weapon30_pfx";
        visalphablendfunc_s = "NONE";
        emtrjmode_s = "FIXED";     
        emtrjloopmode_s = "linear"; 
        emtrjeasefunc_s = "NONE";
        emTrjEaseVel                    = 1000;
        emactioncolldyn_s = "CREATEONCE";
        emActionCollStat_s = "CREATEONCE";
        emcheckcollision = 1;
        sendAssessMagic                 = 0;
emTrjTargetRange = 20;
emTrjTargetElev = 0;
        emFXCreatedOwnTrj       = 1;   
        emFXTriggerDelay        = 0;
        emTrjDynUpdateDelay             = 200;

};
INSTANCE av_weapon40_vfx (ARMOR_PART_PROTO)   
{
        emfxlifespan = 1;       
        emTrjOriginNode = "ZS_RIGHTHAND";
        visAlpha  = 0;
        visName_S = "av_weapon40_pfx";
        visalphablendfunc_s = "NONE";
        emtrjmode_s = "FIXED";     
        emtrjloopmode_s = "linear"; 
        emtrjeasefunc_s = "NONE";
        emTrjEaseVel                    = 1000;
        emactioncolldyn_s = "CREATEONCE";
        emActionCollStat_s = "CREATEONCE";
        emcheckcollision = 1;
        sendAssessMagic                 = 0;
emTrjTargetRange = 20;
emTrjTargetElev = 0;
        emFXCreatedOwnTrj       = 1;   
        emFXTriggerDelay        = 0;
        emTrjDynUpdateDelay             = 200;

};
INSTANCE av_weapon50_vfx (ARMOR_PART_PROTO)   
{
        emfxlifespan = 1;       
        emTrjOriginNode = "ZS_RIGHTHAND";
        visAlpha  = 0;
        visName_S = "av_weapon50_pfx";
        visalphablendfunc_s = "NONE";
        emtrjmode_s = "FIXED";     
        emtrjloopmode_s = "linear"; 
        emtrjeasefunc_s = "NONE";
        emTrjEaseVel                    = 1000;
        emactioncolldyn_s = "CREATEONCE";
        emActionCollStat_s = "CREATEONCE";
        emcheckcollision = 1;
        sendAssessMagic                 = 0;
emTrjTargetRange = 20;
emTrjTargetElev = 0;
        emFXCreatedOwnTrj       = 1;   
        emFXTriggerDelay        = 0;
        emTrjDynUpdateDelay             = 200;

};
INSTANCE av_weapon60_vfx (ARMOR_PART_PROTO)   
{
        emfxlifespan = 1;       
        emTrjOriginNode = "ZS_RIGHTHAND";
        visAlpha  = 0;
        visName_S = "av_weapon60_pfx";
        visalphablendfunc_s = "NONE";
        emtrjmode_s = "FIXED";     
        emtrjloopmode_s = "linear"; 
        emtrjeasefunc_s = "NONE";
        emTrjEaseVel                    = 1000;
        emactioncolldyn_s = "CREATEONCE";
        emActionCollStat_s = "CREATEONCE";
        emcheckcollision = 1;
        sendAssessMagic                 = 0;
emTrjTargetRange = 20;
emTrjTargetElev = 0;
        emFXCreatedOwnTrj       = 1;   
        emFXTriggerDelay        = 0;
        emTrjDynUpdateDelay             = 200;

};
INSTANCE av_weapon70_vfx (ARMOR_PART_PROTO)   
{
        emfxlifespan = 1;       
        emTrjOriginNode = "ZS_RIGHTHAND";
        visAlpha  = 0;
        visName_S = "av_weapon70_pfx";
        visalphablendfunc_s = "NONE";
        emtrjmode_s = "FIXED";     
        emtrjloopmode_s = "linear"; 
        emtrjeasefunc_s = "NONE";
        emTrjEaseVel                    = 1000;
        emactioncolldyn_s = "CREATEONCE";
        emActionCollStat_s = "CREATEONCE";
        emcheckcollision = 1;
        sendAssessMagic                 = 0;
emTrjTargetRange = 20;
emTrjTargetElev = 0;
        emFXCreatedOwnTrj       = 1;   
        emFXTriggerDelay        = 0;
        emTrjDynUpdateDelay             = 200;

};
INSTANCE av_weapon80_vfx (ARMOR_PART_PROTO)   
{
        emfxlifespan = 1;       
        emTrjOriginNode = "ZS_RIGHTHAND";
        visAlpha  = 0;
        visName_S = "av_weapon80_pfx";
        visalphablendfunc_s = "NONE";
        emtrjmode_s = "FIXED";     
        emtrjloopmode_s = "linear"; 
        emtrjeasefunc_s = "NONE";
        emTrjEaseVel                    = 1000;
        emactioncolldyn_s = "CREATEONCE";
        emActionCollStat_s = "CREATEONCE";
        emcheckcollision = 1;
        sendAssessMagic                 = 0;
emTrjTargetRange = 20;
emTrjTargetElev = 0;
        emFXCreatedOwnTrj       = 1;   
        emFXTriggerDelay        = 0;
        emTrjDynUpdateDelay             = 200;

};
INSTANCE av_weapon90_vfx (ARMOR_PART_PROTO)   
{
        emfxlifespan = 1;       
        emTrjOriginNode = "ZS_RIGHTHAND";
        visAlpha  = 0;
        visName_S = "av_weapon90_pfx";
        visalphablendfunc_s = "NONE";
        emtrjmode_s = "FIXED";     
        emtrjloopmode_s = "linear"; 
        emtrjeasefunc_s = "NONE";
        emTrjEaseVel                    = 1000;
        emactioncolldyn_s = "CREATEONCE";
        emActionCollStat_s = "CREATEONCE";
        emcheckcollision = 1;
        sendAssessMagic                 = 0;
emTrjTargetRange = 20;
emTrjTargetElev = 0;
        emFXCreatedOwnTrj       = 1;   
        emFXTriggerDelay        = 0;
        emTrjDynUpdateDelay             = 200;

};
INSTANCE av_weapon100_vfx (ARMOR_PART_PROTO)   
{
        emfxlifespan = 1;       
        emTrjOriginNode = "ZS_RIGHTHAND";
        visAlpha  = 0;
        visName_S = "av_weapon100_pfx";
        visalphablendfunc_s = "NONE";
        emtrjmode_s = "FIXED";     
        emtrjloopmode_s = "linear"; 
        emtrjeasefunc_s = "NONE";
        emTrjEaseVel                    = 1000;
        emactioncolldyn_s = "CREATEONCE";
        emActionCollStat_s = "CREATEONCE";
        emcheckcollision = 1;
        sendAssessMagic                 = 0;
emTrjTargetRange = 20;
emTrjTargetElev = 0;
        emFXCreatedOwnTrj       = 1;   
        emFXTriggerDelay        = 0;
        emTrjDynUpdateDelay             = 200;

};
INSTANCE av_weapon110_vfx (ARMOR_PART_PROTO)   
{
        emfxlifespan = 1;       
        emTrjOriginNode = "ZS_RIGHTHAND";
        visAlpha  = 0;
        visName_S = "av_weapon110_pfx";
        visalphablendfunc_s = "NONE";
        emtrjmode_s = "FIXED";     
        emtrjloopmode_s = "linear"; 
        emtrjeasefunc_s = "NONE";
        emTrjEaseVel                    = 1000;
        emactioncolldyn_s = "CREATEONCE";
        emActionCollStat_s = "CREATEONCE";
        emcheckcollision = 1;
        sendAssessMagic                 = 0;
emTrjTargetRange = 20;
emTrjTargetElev = 0;
        emFXCreatedOwnTrj       = 1;   
        emFXTriggerDelay        = 0;
        emTrjDynUpdateDelay             = 200;

};
INSTANCE av_weapon120_vfx (ARMOR_PART_PROTO)   
{
        emfxlifespan = 1;       
        emTrjOriginNode = "ZS_RIGHTHAND";
        visAlpha  = 0;
        visName_S = "av_weapon120_pfx";
        visalphablendfunc_s = "NONE";
        emtrjmode_s = "FIXED";     
        emtrjloopmode_s = "linear"; 
        emtrjeasefunc_s = "NONE";
        emTrjEaseVel                    = 1000;
        emactioncolldyn_s = "CREATEONCE";
        emActionCollStat_s = "CREATEONCE";
        emcheckcollision = 1;
        sendAssessMagic                 = 0;
emTrjTargetRange = 20;
emTrjTargetElev = 0;
        emFXCreatedOwnTrj       = 1;   
        emFXTriggerDelay        = 0;
        emTrjDynUpdateDelay             = 200;

};
INSTANCE av_weapon130_vfx (ARMOR_PART_PROTO)   
{
        emfxlifespan = 1;       
        emTrjOriginNode = "ZS_RIGHTHAND";
        visAlpha  = 0;
        visName_S = "av_weapon130_pfx";
        visalphablendfunc_s = "NONE";
        emtrjmode_s = "FIXED";     
        emtrjloopmode_s = "linear"; 
        emtrjeasefunc_s = "NONE";
        emTrjEaseVel                    = 1000;
        emactioncolldyn_s = "CREATEONCE";
        emActionCollStat_s = "CREATEONCE";
        emcheckcollision = 1;
        sendAssessMagic                 = 0;
emTrjTargetRange = 20;
emTrjTargetElev = 0;
        emFXCreatedOwnTrj       = 1;   
        emFXTriggerDelay        = 0;
        emTrjDynUpdateDelay             = 200;

};
INSTANCE av_weapon140_vfx (ARMOR_PART_PROTO)   
{
        emfxlifespan = 1;       
        emTrjOriginNode = "ZS_RIGHTHAND";
        visAlpha  = 0;
        visName_S = "av_weapon140_pfx";
        visalphablendfunc_s = "NONE";
        emtrjmode_s = "FIXED";     
        emtrjloopmode_s = "linear"; 
        emtrjeasefunc_s = "NONE";
        emTrjEaseVel                    = 1000;
        emactioncolldyn_s = "CREATEONCE";
        emActionCollStat_s = "CREATEONCE";
        emcheckcollision = 1;
        sendAssessMagic                 = 0;
emTrjTargetRange = 20;
emTrjTargetElev = 0;
        emFXCreatedOwnTrj       = 1;   
        emFXTriggerDelay        = 0;
        emTrjDynUpdateDelay             = 200;

};
INSTANCE av_weapon150_vfx (ARMOR_PART_PROTO)   
{
        emfxlifespan = 1;       
        emTrjOriginNode = "ZS_RIGHTHAND";
        visAlpha  = 0;
        visName_S = "av_weapon150_pfx";
        visalphablendfunc_s = "NONE";
        emtrjmode_s = "FIXED";     
        emtrjloopmode_s = "linear"; 
        emtrjeasefunc_s = "NONE";
        emTrjEaseVel                    = 1000;
        emactioncolldyn_s = "CREATEONCE";
        emActionCollStat_s = "CREATEONCE";
        emcheckcollision = 1;
        sendAssessMagic                 = 0;
emTrjTargetRange = 20;
emTrjTargetElev = 0;
        emFXCreatedOwnTrj       = 1;   
        emFXTriggerDelay        = 0;
        emTrjDynUpdateDelay             = 200;

};
INSTANCE av_weapon160_vfx (ARMOR_PART_PROTO)   
{
        emfxlifespan = 1;       
        emTrjOriginNode = "ZS_RIGHTHAND";
        visAlpha  = 0;
        visName_S = "av_weapon160_pfx";
        visalphablendfunc_s = "NONE";
        emtrjmode_s = "FIXED";     
        emtrjloopmode_s = "linear"; 
        emtrjeasefunc_s = "NONE";
        emTrjEaseVel                    = 1000;
        emactioncolldyn_s = "CREATEONCE";
        emActionCollStat_s = "CREATEONCE";
        emcheckcollision = 1;
        sendAssessMagic                 = 0;
emTrjTargetRange = 20;
emTrjTargetElev = 0;
        emFXCreatedOwnTrj       = 1;   
        emFXTriggerDelay        = 0;
        emTrjDynUpdateDelay             = 200;

};
};

Teraz tworzymy taką funkcje. Zaicjonowanie zmiennych w własnym zakresie.
Func void Operators()
{
NONAME = Hlp_GetNpc (PC_hero);
targetnpc = Hlp_GetNpc(nomoretargetnpc);

ReadyHeroArmor = Npc_GetEquippedArmor(NONAME);
ReadyHeroMeleeWeap = Npc_GetReadiedWeapon(NONAME);heroweaprange = ReadyheroMeleeWeap.range;
EquipHeroMeleeWeap = Npc_GetEquippedMeleeWeapon(NONAME);
ReadyotherMeleeWeap = Npc_GetReadiedWeapon(other);otherweaprange = ReadyotherMeleeWeap.range;

ReadyotherWeap = Npc_GetReadiedWeapon(other);


////////////////////////////
cmouseleft  = MEM_KeyState(MOUSE_BUTTONLEFT);
cmouseright  = MEM_KeyState(MOUSE_BUTTONRIGHT);
ckeyUPar  = MEM_KeyState(KEY_UPARROW);
ckeyRightar  = MEM_KeyState(KEY_RIGHTARROW);
ckeyDownar  = MEM_KeyState(KEY_DOWNARROW);
ckeyLeftar  = MEM_KeyState(KEY_LEFTARROW);
ckeySPACE = MEM_KeyState(KEY_SPACE);
ckeyA  = MEM_KeyState(KEY_A);
ckeyB  = MEM_KeyState(KEY_B);
ckeyC  = MEM_KeyState(KEY_C);
ckeyD  = MEM_KeyState(KEY_D);
ckeyW  = MEM_KeyState(KEY_W);
ckeyP  = MEM_KeyState(KEY_P);
ckeyT  = MEM_KeyState(KEY_T);
ckeyG  = MEM_KeyState(KEY_G);
ckeyO  = MEM_KeyState(KEY_O);
ckeyZ  = MEM_KeyState(KEY_Z);
ckeyV  = MEM_KeyState(KEY_V);
Nkey0  = MEM_KeyState(KEY_NUMPAD0);
Nkey1  = MEM_KeyState(KEY_NUMPAD1);
Nkey2  = MEM_KeyState(KEY_NUMPAD2);
Nkey3  = MEM_KeyState(KEY_NUMPAD3);
Nkey4  = MEM_KeyState(KEY_NUMPAD4);
Nkey5  = MEM_KeyState(KEY_NUMPAD5);
Nkey6  = MEM_KeyState(KEY_NUMPAD6);
Nkey7  = MEM_KeyState(KEY_NUMPAD7);
Nkey8  = MEM_KeyState(KEY_NUMPAD8);
Nkey9  = MEM_KeyState(KEY_NUMPAD9);
Nkeyrowne  = MEM_KeyState(KEY_NUMPADEQUALS);
Nkeyminus  = MEM_KeyState(KEY_MINUS);
Nkeyplus  = MEM_KeyState(KEY_ADD);
NkeyCOMMA  = MEM_KeyState(KEY_LBRACKET);
NkeySTOP  = MEM_KeyState(KEY_RBRACKET);
};

Trzeba użyć pokladkową funkcje. Kto juz  ma ten nie się cieszy, reszta niech poszuka instrukcji.Było gdzieś na stronie. Poklatkowiec wymagał chyba umieszczenia triggera w zenie. Pewnie są inne metody by to wywołać, ja więcej o tym nie myślałem. 

func void PERFRAMEAD()
{   
Wld_SendTrigger ("PERFRAMEAD");
if(PerFrameADCallTrigger_Init)
{
perfra = MEM_SearchVobByName ("PERFRAMEAD");
MEM_AssignInst (triggerAD, perfra);
PerFrameADCallTrigger_Init=FALSE;
};
triggerAD._zCVob_nextOnTimer = MEM_ReadInt(MEMINT_zTimer_Address+8);

Operators();

//-------------------------------------------LICZNIK ATAKU-(DO POPRAWY)--
if (otherhit == 0) && (otherhitsecury == 1)
{

attackhero = 0;
otherhit = 0;
otherhitsecury = otherhitsecury - 1;
};
if (C_BodyStateContains (hero, BS_HIT) ) && (otherhitsecury == 0)
{

otherhit = 0;
otherhit = otherhit + 21;

memorydamageTotal = ReadyHeroMeleeWeap.damageTotal;
otherhitsecury = otherhitsecury + 1;
};
if (otherhit >= 1)
{
otherhit = otherhit - 1;
};
if otherhit == 10
{
staminareduction(2);
};
if otherhit > 5 && otherhit < 15
{
attackhero = 1;
};
if otherhit == 15
{
attackhero = 2;
};
if otherhit == 16
{
attackhero = 0;
};

//---------------------------------------------LICZNIK PARADY-(DO POPRAWY)--
if (heroparade < 1) && (heroparadesecury == 2)
{
heroparade = 0;
heroparadesecury = 1;
};
if (C_BodyStateContains (hero, BS_Parade)) && (heroparadesecury == 1)
{
heroparadesecury = 2;
heroparade = 0;
heroparade = heroparade + 30;

};
if (heroparade >= 1)
{
heroparade = heroparade - 1;
};


//--------------------------------------------OBRAŻENIA Z TRIALA---------------------------------
if (ckeyO == KEY_PRESSED)
{
if FIGHTSTYLE < 1
{
Print ("Styl grupowy");
FIGHTSTYLE = FIGHTSTYLE + 1;
}
else if FIGHTSTYLE >= 1
{
Print ("Styl pojedynkowy");
FIGHTSTYLE = FIGHTSTYLE - 1;
};
};



if FIGHTSTYLE >= 1
{
if (otherhitsecury == 1)
{
ReadyHeroMeleeWeap.damageTotal = 0;
};
if attackhero == 1
{
if (ReadyHeroMeleeWeap.range < 40)
{
Wld_PlayEffect("av_weapon30_vfx",hero,hero,0,obrazeniaslimweapon,DAM_blunt,false);
}
else if (ReadyHeroMeleeWeap.range >= 40) && (ReadyHeroMeleeWeap.range < 50)
{
Wld_PlayEffect("av_weapon40_vfx",hero,hero,0,obrazeniaslimweapon,DAM_blunt,false);
}
else if (ReadyHeroMeleeWeap.range >= 50) && (ReadyHeroMeleeWeap.range < 60)
{
Wld_PlayEffect("av_weapon50_vfx",hero,hero,0,obrazeniaslimweapon,DAM_blunt,false);
}
else if (ReadyHeroMeleeWeap.range >= 60) && (ReadyHeroMeleeWeap.range < 70)
{
Wld_PlayEffect("av_weapon60_vfx",hero,hero,0,obrazeniaslimweapon,DAM_blunt,false);
}
else if (ReadyHeroMeleeWeap.range >= 70) && (ReadyHeroMeleeWeap.range < 80)
{
Wld_PlayEffect("av_weapon70_vfx",hero,hero,0,obrazeniaslimweapon,DAM_blunt,false);
}
else if (ReadyHeroMeleeWeap.range >= 80) && (ReadyHeroMeleeWeap.range < 90)
{
Wld_PlayEffect("av_weapon80_vfx",hero,hero,0,obrazeniaslimweapon,DAM_blunt,false);
}
else if (ReadyHeroMeleeWeap.range >= 90) && (ReadyHeroMeleeWeap.range < 100)
{
Wld_PlayEffect("av_weapon90_vfx",hero,hero,0,obrazeniaslimweapon,DAM_blunt,false);
}
else if (ReadyHeroMeleeWeap.range >= 100) && (ReadyHeroMeleeWeap.range < 110)
{
Wld_PlayEffect("av_weapon100_vfx",hero,hero,0,obrazeniaslimweapon,DAM_blunt,false);
}
else if (ReadyHeroMeleeWeap.range >= 110) && (ReadyHeroMeleeWeap.range < 120)
{
Wld_PlayEffect("av_weapon110_vfx",hero,hero,0,obrazeniaslimweapon,DAM_blunt,false);
}
else if (ReadyHeroMeleeWeap.range >= 120) && (ReadyHeroMeleeWeap.range < 130)
{
Wld_PlayEffect("av_weapon120_vfx",hero,hero,0,obrazeniaslimweapon,DAM_blunt,false);
}
else if (ReadyHeroMeleeWeap.range >= 130) && (ReadyHeroMeleeWeap.range < 140)
{
Wld_PlayEffect("av_weapon130_vfx",hero,hero,0,obrazeniaslimweapon,DAM_blunt,false);
}
else if (ReadyHeroMeleeWeap.range >= 140) && (ReadyHeroMeleeWeap.range < 150)
{
Wld_PlayEffect("av_weapon140_vfx",hero,hero,0,obrazeniaslimweapon,DAM_blunt,false);
}
else if (ReadyHeroMeleeWeap.range >= 150) && (ReadyHeroMeleeWeap.range < 160)
{
Wld_PlayEffect("av_weapon150_vfx",hero,hero,0,obrazeniaslimweapon,DAM_blunt,false);
}
else if (ReadyHeroMeleeWeap.range >= 160)
{
Wld_PlayEffect("av_weapon160_vfx",hero,hero,0,obrazeniaslimweapon,DAM_blunt,false);
};

};

};

if (heroparadesecury == 1) && (hitinframe == 1)
{
Npc_PercEnable(hero,PERC_ASSESSDAMAGE,B_ASSESSDAMAGE);
};

}

Za pomocą keya O zmieniamy na grupowy. Jak pisalem mam w skryptach bałagan, ale chyba wszystkie potrzebne funkje załączyłem. Owocnego rozkminiania.

3
Dziedzictwo / Dziedzictwo - Dyskusja ogólna
« dnia: 2012-03-09, 12:00 »
Przeglądam tak co modderzy nowego nawtykali do gothica i widzę, że pojawia się wiele nowych mechanik. Nie mogę nie pogratulować, że doszliście do tej metody na duale. Myślałem, że póki co tylko mi się to udało. Oby tak dalej.

4
Archiwum / Gothic: Czas Zapłaty [beta]
« dnia: 2012-03-04, 10:22 »
Jeśli chodzi o pięciu nowych członków dla obozu Rebeliantów to znalazłem czworo:
pod małym wodospadem wypływającym z nowego obozu jest Jack Aligator,
w jaskini na schodkowym zboczu poniżej przyszłego wulkanu jest Scorpion ze znajomym (wywalało mnie tam z naście razy),
w jaskini pod tym samym wulkanem od strony jeziora jest kowal Crimson.

5
Pytania i problemy / Fabuła i świat G1na silniku G2
« dnia: 2012-01-03, 14:36 »
Jeśli kopiowanie skryptów dialogów i misji z G1 do G2 jest nielegalne, to muszę zrezygnować z przedstawienia pobytu Bezimiennego w Kolonii Karnej, co zabija mój zarys systemu konsekwencji z decyzji tam podjętych. Dalej idąc za Returning, w fabule po upadku bariery można wprowadzać pancerze, postaci i usunięte fragmenty Kolonii. Czy tak tęż są jakieś zaostrzenia?
Wracając jeszcze do G1, to czy dało by się wyeksportować po ukończeniu jedynki jakiś plik ze wstępnymi parametrami do dwójki?

6
Pytania i problemy / Fabuła i świat G1na silniku G2
« dnia: 2012-01-03, 04:12 »
Chciałbym zapytać jak wygląda sytuacja z licencjami między obiema częściami gry. Jestem w trakcie robienia modyfikacji do dwójki i zastanawiam się czy z prawnego punktu widzenia mógłbym rozegrać jej pierwsze rozdziały w trakcie fabuły z G1.

7
MDS i animacje / Nowy mob
« dnia: 2011-12-18, 13:26 »
Musicie przypisać animacje w HUMANS.MDS. Zakładam, że w anims plik nazywa się Brewery_Table. Prykładem niech bedzie alchemia. Tam nazwa przedmiotu to jest LAB_PSI. W MDS to wersy
ani        ("T_LAB_STAND_2_S0"                1               "S_LAB_S0"                    0.1 0.0  M. "HUM_ALCHEMIE_A01.ASC"                         F  0   5)                    
ani        ("S_LAB_S0"                        1               "S_LAB_S0"                    0.0 0.0  M. "HUM_ALCHEMIE_A01.ASC"                         F  5   5)                    
ani        ("T_LAB_S0_2_STAND"                1               ""                            0.1 0.1  M. "HUM_ALCHEMIE_A01.ASC"                         R  0   5)                    
ani        ("T_LAB_S0_2_S1"                   1               "S_LAB_S1"                    0.0 0.0  M. "HUM_ALCHEMIE_A01.ASC"                         F  5   40)                    
{
*eventTag (21 "DEF_INSERT_ITEM" "ZS_RIGHTHAND")            
*eventSFX (39 "RELEASECORK"     R:1000          EMPTY_SLOT)
}
ani        ("T_LAB_S1_2_S0"                   1               "S_LAB_S0"                    0.1 0.1  M. "HUM_ALCHEMIE_A01.ASC"                         R  5   40)                    
{
*eventTag (21 "DEF_DESTROY_ITEM")                  
*eventSFX (39 "RELEASECORK"       R:1000 EMPTY_SLOT)
}
ani        ("S_LAB_S1"                        1               "S_LAB_S1"                    0.0 0.0  M. "HUM_ALCHEMIE_A01.ASC"                         F  40  160)                  
{
*eventPFX (45  1                            "PSILAB_GLOW2" "ZS_RIGHTHAND" ATTACH)
*eventSFX (70  "MOB_ALCHEMY_SHAKELIQUID"    R:1000         EMPTY_SLOT)          
*eventSFX (112 "PSILAB_PLACEBOTTLE"         R:1000         EMPTY_SLOT)          
*eventSFX (152 "MOB_ALCHEMY_NOISYINGEDIENT" R:1000         EMPTY_SLOT)          
*eventSFX (156 "PSILAB_BOILING"             R:1000         EMPTY_SLOT)          
}
Należy wiedzieć, że pierwszy człon nazwy LAB_PSI "LAB" decyduje o animacji dla moba.
Musicie dodać do HUMANS.MDS wersy zamieniająć  "LAB" na "Brewery".
Sam ostatnio robiłem nowy Mob (Warsztat, jednak jeszcze bez tekstury), jak to nie tajemnica to wstawcie zdjęcie jak wam wyszedł.

8
MDS i animacje / Animacje zdolne do kompilacji
« dnia: 2011-11-22, 03:17 »
Aż głupio mi prosić o coś tak podstawowego, ale już mi nerwy siadają. Potrzebuję plików animacji asc_humans oraz human overlay zdolnych do poprawnej kompilacji(lub _compiled z którego takie mogę uzyskać). Przeinstalowałem grę a błędy się mnożą. Z mojej wersji gry chyba już tego nie uzyskam. Mógłby ktoś zrobić mi upload na jakimś serwerze.



Edit
Temat można zamknąć. Nauczyłem się już poprawnie obchodzić z animacjami. Opanowałem też pewnej sztuczki, aby dodawać nowe obiekty dla human. Za parę dni może wykonam testy i jakiś toturial napiszę.

9
MDS i animacje / ARMOR_RANGER_ADDON.ASC
« dnia: 2011-11-08, 02:23 »
Tak GothicSourcerem, jak pisałem podejrzałem plik .MSB i nie ma tam ich wypisanych.To pewnie jakaś felerna wersja gry czy coś. Właśnie znalazłem na forum paczkę z pancerzami i tam jest to mi wystarczy. Temat można zamknąć

10
MDS i animacje / ARMOR_RANGER_ADDON.ASC
« dnia: 2011-11-08, 01:48 »
Dla pewności sprawdziłem i nie. Ogólnie mają podobne elementy ale to nie to, no i w pliku zbroi jest visual podany.

11
MDS i animacje / ARMOR_RANGER_ADDON.ASC
« dnia: 2011-11-08, 01:33 »
Ostatnio chciałem przerobić zbroje wodnego kręgu ale po dekompilacji plików Nocy Kruka nie powstał plik .asc. Podejrzałem  HUMANS.MSB ale są tam np zbroje pirackie ale Kręgu nie ma. Jest po niej tylko ślad w postaci ARMOR_RANGER_ADDON.MDM. Czy jest jakaś metoda by ją wyciągnąć albo czy już ktoś to zrobił i może przesłać.

12
Dla praktyki sam sobie wczoraj zrobiłem pułapki jako npc i jako item (tak dało radę).
Oba typy mają swoje wady. Dla Npc nie umiem przypisać wp, aby nie znikały poza tym są sprawne. Itemy pozostają na stałe tam gdzie leżą; ale nie można na nich wywołać efektu( trzeba bezpośrednio na ofiarach); nie mam też pomysłu na odrzut w nich.
Na wstępie potrzeba zastawu funkcji sprawdzającego ikarusem wszystkie potencjalne ofiary.Po sprawdzeniu dystansów miedzy wszystkimi a pułapkami ikarus zamienia parametr detonacji na "w trakcie" i dla wszystkich w zasięgu rażenia wywołuje efekt bomby.

13
"userstring" i "visalpha" są z pliku Scripts\System\VisualFX\VisualFxInst.d. Trzeba by stworzyć nowe bazując na gotowym efekcie. I nie słyszałem o metodzie z przedmiotem. Akurat z tym nie pomogę nie mam pod ręką takiego skryptu, ale robi się przedmiot z funkcja która zapamięta wp potem stworzy npc w nim i usunie przedmiot. Podobno inni robią npc o wyglądzie przedmiotu, a on ma dialog którym można usunąć npc i stworzyć w ekwipunku przedmiot

14
Musisz użyć coś w stylu Wld_PlayEffect("spellFX_Firestorm", self, self, 0, SPL_Damage_Windfist, DAM_Fly, false ); i Wld_PlayEffect("spellFX_Firestorm", self, self, 0, 1000, DAM_fire, false ); ( na przykład oba z userString[1]= "300 300"; a jedno z nich z visAlpha = 0; )
w epicentrum powinien być jakiś npc (self)można go pomniejszyć i zrobić niewidzialnego

15
Skrypty / Wykrycie npc na pewnym obszarze
« dnia: 2011-10-21, 20:09 »
Przypomniało mi się że robiłem jakieś skrypty na zmysłach u zwierząt. Wykorzystam SENSE_SMELL, tylko muszę pozabezpieczać, aby ludzie nie stali się zbyt czuli na wszystko inne. Temat można zamknąć.

16
Skrypty / Wykrycie npc na pewnym obszarze
« dnia: 2011-10-21, 18:17 »
Próbuję uzyskać wykrycie npc przez innego npc na pewnym obszarze. Nie znam się na skryptach związanych z percepcion, a inaczej nie mam pomysłu. Szukam jakiejś porady, mógłby mi ktoś coś zasugerować.

17
Skrypty / Zmienne liczbowe powyżej 10 znaków
« dnia: 2011-10-17, 11:52 »
Napisałem ostatnio bazę zmiennych do g2nk i gdy zmienne były do 10 znaków było dobrze, ale jak sobie zaszalałem i poszedłem dalej to zamiast moich cyfr zrobiła się jakaś sieczka. Da się coś z tym zrobić? Może coś z float ?

18
Jeśli wykonałeś ich model o daj screeny (nawet bez tekstury prosto z programu). Domyślam się, że brak im animacji ale model to już jakieś osiągnięcie. A ta jazda na zwierzętach to mówimy o animacji konia z dołączonym modelem jeźdźca, czy może posunąłeś się do dołączenia animacji postaci?

19
Może już starczy tej nagonki. Za każdym razem gdy pojawia się mowy temat jest tak samo. Ten kto modduje niech krytykuje, reszta na spacerek do działu z toturialami i uczyć się. A zwracając się do twórcy tego moda poradzę wstawiaj tylko to co będzie na pewno się pojawi. Jeszcze odnosząc się do tego co wcześniej pisałem, wysokopoziomowe nowości wstawiaj jak już je masz i możesz to udowodnić.

20
Te opisane nowości to już lekka przesada. Po 30 nowych potworów i nowych czarów oraz jeżdżenie na zwierzętach to wymaga zaawansowanego grafika/animatora (chociaż niżej piszesz, że dopiero szukacie grafika). Resztę nowości albo mam zrobioną albo jest do zrobienia w parę dni, więc nie będę się nad tym znęcał. Jeśli chcesz by ktoś uwierzył w ten projekt daj jakieś przykłady na te trzy wyżej wymienione przeze mnie nowości.

Strony: [1] 2
Do góry