Stránka 2 z 2

Napsal: 17. 7. 2009 12.06
od The_Balrog
Nachjuamifiči píše:Třeba budu postiženej a nepovedenej experiment nějakyho nekromanta. Přicestuju z daleka až k vám ve snaze najít nějaký lék či způsob, jak ze sebe ,,něco" udělat...
Prosím tě..

Ne.…

Napsal: 17. 7. 2009 12.09
od Nachjuamifiči
The_Balrog píše:
Nachjuamifiči píše:Třeba budu postiženej a nepovedenej experiment nějakyho nekromanta. Přicestuju z daleka až k vám ve snaze najít nějaký lék či způsob, jak ze sebe ,,něco" udělat...
Prosím tě..

Ne.…
Ber to jako narychlo splácany něco :bleh:

Napsal: 17. 7. 2009 12.11
od Jon
Ono právě takovýhle "narychlo splácaný něco" bývá vždycky kamenem úrazu.

Napsal: 17. 7. 2009 12.13
od hoodedskull
Nachjuamifiči píše:
The_Balrog píše:
Nachjuamifiči píše:Třeba budu postiženej a nepovedenej experiment nějakyho nekromanta. Přicestuju z daleka až k vám ve snaze najít nějaký lék či způsob, jak ze sebe ,,něco" udělat...
Prosím tě..

Ne.…
Ber to jako narychlo splácany něco :bleh:
A kdyz uz neco zajimavyho vymyslis, tak to nepis sem, ale nech to na IC odhalení ve hře!

Napsal: 17. 7. 2009 12.15
od kokosak
The_Balrog píše:
Nachjuamifiči píše:Třeba budu postiženej a nepovedenej experiment nějakyho nekromanta. Přicestuju z daleka až k vám ve snaze najít nějaký lék či způsob, jak ze sebe ,,něco" udělat...
Prosím tě..

Ne.…
Ale ano, prosímtě, ANO *brousí si svůj Holy Avenger* :dribble:

Napsal: 17. 7. 2009 12.25
od Nachjuamifiči
hoodedskull píše:
Nachjuamifiči píše:
The_Balrog píše: Prosím tě..

Ne.…
Ber to jako narychlo splácany něco :bleh:
A kdyz uz neco zajimavyho vymyslis, tak to nepis sem, ale nech to na IC odhalení ve hře!
Tak už víš proč sem narychlo splácal něco? :biggrin:

Napsal: 17. 7. 2009 12.25
od kokosak
hoodedskull píše:A kdyz uz neco zajimavyho vymyslis, tak to nepis sem, ale nech to na IC odhalení ve hře!
Mi připomíná experta co přišel do hospody, sedl si a začal vykládat na celé okolí, že je vlastně upír :biggrin:

Napsal: 17. 7. 2009 12.40
od darmian
Nachjuamifiči píše: Tak nic. Předmět tam je ale bez účinku. Udělal sem vše jaks napsal.…
-Předmět má být v inventáři, nebo se tim musím vybavit?
-A má přidělovat permanentně XP, i když třeba prodávám?
-Když sem vyvtořil nový xpgiver (prsten např.) nepřidělím mu ve vlastnostech žádny odkazy na tento skript nebo nějaky zvláštní nastavení?
Ten předmět nemusíš mít vybavený. Skript na něj navážeš už tím, že ho vyhledáváš podle tagu - proto tag musí být přesně "xpgiver" bez úvozovek.
Dále ten předmět může být jakýkoliv - třeba nějakej nepatrnej šutřík, aby nezabíral moc místa v inventáři.
Hele otevři si ten modul -> úpravy -> vlastnosti modulu -> události -> OnHeartbeat. Zmáčkni tlačítko "uprav" ( je napravo ). Otevře se ti okno skript editoru -> tam vlož následující upravený skript.

Kód: Vybrat vše

void main()
{
object oPC=GetFirstPC();
int nCounterXP=GetLocalInt(GetItemPossessor(GetObjectByTag("xpgiver")),"counter_XP")+1;

if(nCounterXP==1 && GetIsObjectValid(oPC)==TRUE)
{
GiveXPToCreature(GetItemPossessor(GetObjectByTag("xpgiver")),100);
nCounterXP=0;
oPC=GetNextPC();
}
SetLocalInt(GetItemPossessor(GetObjectByTag("xpgiver")), "counter_XP", nCounterXP);
}
A ulož to jako třeba "skript_xp". Pamatuj ale, že jestliže hrajete kampaň, tak ta má asi milion modulů, takže tenhle postup musíš udělat v každém z těch modulů. Moduly kampaně by v Heartbeatu nic mít neměli... A co se týče těch předmětů, tak samozřejmě rozdat jenom v počáteční lokaci...
BTW: tenhle skript je jiný,než ten první. Ale nechápu, proč ti to nefungovalo. Ten skript je v pořádku, akorát, že to vyhledalo jenom prvního s tímhle předmětem a pak mu to dávalo XP - nemám server, tak si to řádně nemůžu ověřit na vícero lidech, leda na sobě a to jaksi pro multiplayer není úplně ideálně, ale tohle by fungovat mohlo.

Napsal: 17. 7. 2009 12.49
od Nachjuamifiči
darmian píše:
Nachjuamifiči píše: Tak nic. Předmět tam je ale bez účinku. Udělal sem vše jaks napsal.…
-Předmět má být v inventáři, nebo se tim musím vybavit?
-A má přidělovat permanentně XP, i když třeba prodávám?
-Když sem vyvtořil nový xpgiver (prsten např.) nepřidělím mu ve vlastnostech žádny odkazy na tento skript nebo nějaky zvláštní nastavení?
….

A ulož to jako třeba "skript_xp". Pamatuj ale, že jestliže hrajete kampaň, tak ta má asi milion modulů, takže tenhle postup musíš udělat v každém z těch modulů. Moduly kampaně by v Heartbeatu nic mít neměli... A co se týče těch předmětů, tak samozřejmě rozdat jenom v počáteční lokaci...
BTW: tenhle skript je jiný,než ten první. Ale nechápu, proč ti to nefungovalo. Ten skript je v pořádku, akorát, že to vyhledalo jenom prvního s tímhle předmětem a pak mu to dávalo XP - nemám server, tak si to řádně nemůžu ověřit na vícero lidech, leda na sobě a to jaksi pro multiplayer není úplně ideálně, ale tohle by fungovat mohlo.
Právě já to zkoušel jenom přes SP, hráče nemám teď k dispozici :biggrin: Ale mělo by to jet i v SP, ne? Ok, vyzkouším druhou variantu. Ještě mi bylo doporučeno změnit ve vlastnostech modulu koeficient násobku přidělovaných XP, ale nemůžu ho tam nějak najít. Toolset mám v češtině.

EDIT: V modulu kampaní už OnHeartbeat skript má. Mám ho přepsat, nebo řádky vložit pod něj?

Napsal: 17. 7. 2009 12.58
od darmian
V Single Playeru ten první funguje na 100%.

Napsal: 17. 7. 2009 13.02
od darmian
Jestli tam nějaký skripty v události OnHeartbeat jsou, tak je určitě nepřepisuj, jenom to na jejich konec přidej...
Mělo by to mít výslednou formu asi takovou:

Kód: Vybrat vše

void main()  // -> tady může být i něco jiného, než void main. Třeba HeartBeat() atp., ale to neřeš.
{
.
.
.
nějaký skript
.
.
.
object oPC=GetFirstPC();
int nCounterXP=GetLocalInt(GetItemPossessor(GetObjectByTag("xpgiver")),"counter_XP")+1;

if(nCounterXP==1 && GetIsObjectValid(oPC)==TRUE)
{
GiveXPToCreature(GetItemPossessor(GetObjectByTag("xpgiver")),100);
nCounterXP=0;
oPC=GetNextPC();
}
SetLocalInt(GetItemPossessor(GetObjectByTag("xpgiver")), "counter_XP", nCounterXP); 
}
Ale nějak nevidím v žádným z modulů kampaně v OnHeartbeat žádné skripty. Jak se ten modul, který upravuješ, jmenuje?

EDIT: jo už tu nějaký skript vidím, ok...

Napsal: 17. 7. 2009 13.04
od darmian
A koeficient můžeš upravit v "úpravy -> vlastnosti modulu -> rozšířené" Tam je "měřítko zkušeností". S posuvníkem si dělej co chceš -> bude to dávat víc zkušeností z těch bestií třeba... Tendle skript dělá něco jinýho. Ten permanentně za určitý časový úsek dává XP ať děláš, co děláš.

Napsal: 17. 7. 2009 13.07
od Nachjuamifiči

Kód: Vybrat vše

void main()
{
    if (GetLocalInt(GetModule(),"NW_G_M2MainPlotActive") > 0)
    {
       SetLocalInt(GetModule(),"NW_G_M2MainPlotActive",GetLocalInt(GetModule(),"NW_G_M2MainPlotActive") - 1);
    }
    if (GetLocalInt(GetModule(),"NW_G_M2MainPlotDelay") > 1)
    {
       SetLocalInt(GetModule(),"NW_G_M2MainPlotDelay",GetLocalInt(GetModule(),"NW_G_M2MainPlotDelay") - 1);
    }
    else if (GetLocalInt(GetModule(),"NW_G_M2MainPlotDelay") == 1)
    {
        if (GetLocalInt(GetModule(),"NW_G_M2Q6MainPlot") < 4)
        {
            SetLocalInt(GetModule(),"NW_G_M2Q6MainPlot",4);
        }
    }
    int nCounterXP=GetLocalInt(GetItemPossessor(GetObjectByTag("xpgiver")),"counter_XP")+1;

    if(nCounterXP==1)
    {
    GiveXPToCreature(GetItemPossessor(GetObjectByTag("xpgiver")),100);
    nCounterXP=0;
    }
    SetLocalInt(GetItemPossessor(GetObjectByTag("xpgiver")), "counter_XP", nCounterXP);
}
Takto by měl vypadat OnHeartbeat?

Napsal: 17. 7. 2009 13.12
od darmian
Jak sem psal už dřív - myslím, že ten můj první skript bude fungovat jenom pro prvního hráče, který ten item bude mít, takže zkuste i tohle:

Kód: Vybrat vše

void main()
{
    if (GetLocalInt(GetModule(),"NW_G_M2MainPlotActive") > 0)
    {
       SetLocalInt(GetModule(),"NW_G_M2MainPlotActive",GetLocalInt(GetModule(),"NW_G_M2MainPlotActive") - 1);
    }
    if (GetLocalInt(GetModule(),"NW_G_M2MainPlotDelay") > 1)
    {
       SetLocalInt(GetModule(),"NW_G_M2MainPlotDelay",GetLocalInt(GetModule(),"NW_G_M2MainPlotDelay") - 1);
    }
    else if (GetLocalInt(GetModule(),"NW_G_M2MainPlotDelay") == 1)
    {
        if (GetLocalInt(GetModule(),"NW_G_M2Q6MainPlot") < 4)
        {
            SetLocalInt(GetModule(),"NW_G_M2Q6MainPlot",4);
        }
    }
    object oPC=GetFirstPC();
int nCounterXP=GetLocalInt(GetItemPossessor(GetObjectByTag("xpgiver")),"counter_XP")+1;

if(nCounterXP==1 && GetIsObjectValid(oPC)==TRUE)
{
GiveXPToCreature(GetItemPossessor(GetObjectByTag("xpgiver")),100);
nCounterXP=0;
oPC=GetNextPC();
}
SetLocalInt(GetItemPossessor(GetObjectByTag("xpgiver")), "counter_XP", nCounterXP); 
}

Napsal: 17. 7. 2009 13.14
od Sethiel
Já jsem jen chtěl říct, aby ses nedivil, že pak budeš sám, pokud budeš hrát něco takovýho. A hrát na online serveru sám je podle mě pěkná pruda. Nejkrásnější věci jdou právě z toho, že hraješ s ostatními … což si jako nemrtvý nedokážu představit.

Řekl bych, že tohle začátečníci nevnímají (já to taky nevnímal, chtěl jsem si na začátku udělat nějakou drsňáckou postavu) … ale samotářské postavy to nemají jednoduché. Ať už jsou sami z přesvědčení, nebo jim nic jiného nezbývá.

Napsal: 17. 7. 2009 13.57
od KaTo
Sethiel píše:Já jsem jen chtěl říct, aby ses nedivil, že pak budeš sám, pokud budeš hrát něco takovýho. A hrát na online serveru sám je podle mě pěkná pruda. Nejkrásnější věci jdou právě z toho, že hraješ s ostatními … což si jako nemrtvý nedokážu představit.
Řekl bych, že tohle začátečníci nevnímají (já to taky nevnímal, chtěl jsem si na začátku udělat nějakou drsňáckou postavu) … ale samotářské postavy to nemají jednoduché. Ať už jsou sami z přesvědčení, nebo jim nic jiného nezbývá.
...jojo, to pak jednoho potkají Dx (občas i) killy a rady, ať si najdeš nějaké hráčské uskupení :megalol: .
Btw hrát "dlouhodobě" zrovna nemrtvého či drowa bez podpory Dx je, vzhledem k nastavení EQ, řekněme VELMI krátkodobá záležitost.
Opravdu ti doporučuji - zahraj si nějakou plechovku/barda, aspoň do 12-15tého lvlu. Rozkoukej se jak tu funguje svět, lidi (jak PC, tak NPC) a systémy výdělku/expů/smrti/a milion dalších a pak si polož znovu otázku:
Mám na to hrát (tady) nemrtvého?! :crazy: :yes:

Napsal: 17. 7. 2009 13.59
od Nachjuamifiči
Tak jsem to vyřešil tím XP sliderem. XP je víc, funguje jak má...
darmianovi díky za trpělivost :bigwink:

A poslední dotaz. Když hrajeme ten multiplayer tři, někdo zabije skřeta, za kteryho je v SP např. 12 XP, rozdělí se to přesně mezi nás 3? Dostaneme každej 4 XP nebo záleží na tom kdo udělí poslední ránu, jak sme od sebe vzdálení atp.?

KaTO, Sethiel: Opakuju, byl to jen výkřik do tmy :bigwink: