Jump to content

návod Jak Si Pawnom Neznicit Pocitac


GAMELASTERツ

Recommended Posts

Ahojte :d, mam tu prevas prakticky navod, sice kratky,ale moc dolezity.. :d Stala sa mi mala prihoda v mojom mode, mam tam prasacky kod, a ked som to skusal, zacalo my dimiet s pc :d, takze si treba davat pozor...

 

1) If, else if

hlavna zasada je taka, ze ak mame viac ifov(ako napriklad vo Commandoch), tak nemusime furt davat if.. ale prve bude if a potom furt len else if atd... Zrychluje kompilaciu

 

2) MAX_PLAYERS_EX

 

Ak pouzivate MAX_PLAYERS, je to celkovo nedobre, lebo naco bude cyklus chodit do 500, pritom ked na vasom servere budu hrat max. 30.. Preto je dobre si nadefinovat MAX_PLAYERS_EX z vlastnou hodnotou max hracov... Zrychluje aj kompilaciu

 

3) For je nebezpecne

NIKDY nedavajte vo Fore dalsi For, a ak sa to inak neda, tak maximalne neaky ,ktory moc neublizi... Ja mam tiez takto, a stalo sa mi to iste ako vyssie...

 

Davajte si bacha co robite, lebo aj Pawn dokaze znicit vas pocitac

  • Líbí se mi to! (+1) 3
Link to comment
Share on other sites

1. Jak vidim nemas ani paru o tom ako funguje kompilator a podmienky. To ze bude pouzivat else if nezrychli kompilaciu, znamena to iba tolko ze iba ak sa prva podmienka nerovna tak skoci na dalsiu.

 

3. Neviem ako v pawne ale jak inak by si pristupoval k halde? Inak ani nevidim dovod preco nepouzit vnoreny for vo fore

  • Líbí se mi to! (+1) 1
Link to comment
Share on other sites

  • Majitel

Použití ELSEIF není rychlejší, je to logicky odlišné a prakticky užitečné když chceš šetřit místem.. Pro rychlejší zpracování velkého množství ELSEIFů existuje SWITCH!

 

MAX_PLAYERS_EX je starý známý trik pro RZEčkáře, kterým chodí na server jen bubákovsky malé množství hráčů.. Jelikož jejich FSčka většinou obsahovali hvězdně velké proměnné, začalo se jim vnucovat téhle definice aby tuna filterscriptů nezatěžovala server...

Nějaký smysl to má, ale při tvorbě módu bych to nevyužíval

 

Dva loopy FOR v sobě o velikosti 5 loopů, celkově tedy 25 loopů, nemá moc velký vliv na výkon.. Je třeba si ovšem dávat na dlouhé loopy a velké množství loopů - to tedy znamená, pokud využíváme smyčku ve smyčce, neměli by jsme ve smyčkách provádět velké množství operací, jelikož se celkové množství loopů smyček mezi sebou násobí. A tudíž velké celkov množství loopů může žrát výkon...

 

Tohle téma je zabiják, divím se, že máš olejovou "pawnerskou" barvu o_O

  • Líbí se mi to! (+1) 4
Link to comment
Share on other sites

1) If, else if

hlavna zasada je taka, ze ak mame viac ifov(ako napriklad vo Commandoch), tak nemusime furt davat if.. ale prve bude if a potom furt len else if atd... Zrychluje kompilaciu

 

2) MAX_PLAYERS_EX

 

Ak pouzivate MAX_PLAYERS, je to celkovo nedobre, lebo naco bude cyklus chodit do 500, pritom ked na vasom servere budu hrat max. 30.. Preto je dobre si nadefinovat MAX_PLAYERS_EX z vlastnou hodnotou max hracov... Zrychluje aj kompilaciu

 

3) For je nebezpecne

NIKDY nedavajte vo Fore dalsi For, a ak sa to inak neda, tak maximalne neaky ,ktory moc neublizi... Ja mam tiez takto, a stalo sa mi to iste ako vyssie...

 

1) Pouziti else if urcite nezrychli kompilaci, jedina vyhoda pouziti je ze se nemusi testovat vsechy podminky pokud dojde ke splneni jedne z podminek v retezci podminek. Avsak kazda podminka se musi testovat, narozdil od pouziti switch. Takze uspora CPU nepatrna.

2) Opet nesmysl, kompilaci to nezrychli. Zrychli se pouze beh scriptu, protoze se nebudou muset vykonavat zbytecny cykly. Avsak zrychleni je jen velmi nepatrne. U serveru s vykonnym CPU to nijak prakticky nezaznamenas.

3) Pouziti for ve for neni vubec nebezpecne, pokud umis spravne nadefinovat podminky pro vykonavani cyklu. Muzes klidne pouzit vnorenych 1000 cyklu for a nijak to beh scriptu neovlivni.

 

Ty ze mas titul pawner? :d

Link to comment
Share on other sites

×
×
  • Create New...