Majú nesmierny význam takmer vo všetkých oblastiach hry, ktoré sú viditeľné aj pre bežného hráča, bez nich by hra ani nemohla fungovať. Pomocou nich hra napríklad kontroluje, či už môžete nepriateľa zasiahnuť vašou zbraňou, ako ďaleko dostrelí váš šíp či na akej veľkej ploche zasiahne nepriateľov vaša kliatba.
Tento článok je pomerne obsiahly, preto bude na začiatku dobré uviesť jeho základný obsah:
Jednotlivé problematiky sú podrobne rozobrané nižšie a to v uvedenom poradí.
— — — — — — — — — — — — — — — — — — — — — — —
Dosah útokov nablízko (Melee Range)
Základný dosah (útok holými päsťami) každej postavy je 1–3. Dosah je možné zväčšiť nosením zbraní. Každá zbraň má zadefinovanú konštantu zvanú Rangeadder (päste majú 0) , ktorá má rozhodujúce postavenie v tomto vzorci:
- celkový dosah = rangeadder + veľkosť monštra
Monštrá môžu mať veľkosť 1 (malé), 2 (stredné) alebo 3 (veľké), väčšina má veľkosť 2 alebo 3. To znamená, že čím väčší Rangeadder má zbraň a čím väčšie je monštrum, tým z väčšej vzdialenosti ho postava zasiahne. Hodnota dosahu nie je v yardoch, ale v políčkach (Diablo 2 používa izometrickú projekciu, ktorá rozdeľuje horizontálnu hraciu plochu na kosodĺžnikové polia a každé toto pole je zložené z 5×5 spomínaných políčok. Toto políčko sa anglicky nazýva subtile a jeho strany majú dĺžku 2/3 yardu). Napriek tomu, že veľkosť príšer býva rôzna, daná príšera sa vždy nachádza na strednom z políčiek, ktoré zaberá, aj keď ju možno trafiť už keď sa do vašeho dosahu dostane jej krajné políčko.
Hodnoty Rangeadder pre jednotlivé zbrane nájdete v tabuľkách sekcie Normální Předměty.
Jednotlivé veľkosti príšer a ich obsadenie políčok.
Postava ako aj mercovia a summoni majú veľkosť 2. Dosah útoku pri skille Smite a Assassinských Kick skilloch je tiež rátaný na základe Rangeadder konštanty držanej zbrane (teda Assassin s kopijou dokopne ďalej ako s dýkou). Pri skilloch, čo používajú dve zbrane (Double Swing, Frenzy a Dragon Claw), ako aj pri použití druhej zbrane počas Normal Attack, sa používa Rangeadder primárnej zbrane (tá, ktorá bola prvá nasadená a postava ju drží v pravej ruke) pre obe zbrane. Skill Blade Shield má Rangeadder vždy 0 bez ohľadu na držanú zbraň. Pri mercoch a Iron Golemovi použitá zbraň nemá efekt na ich dosah útoku. Merc z druhého aktu, Poison Creeper a Grizzly majú základný dosah 3, Carrion Vine, Solar Creeper a oba druhy vlkov (Wolves) majú základný dosah 2, kým ostatní mercovia a summoni majú základný dosah 1. Narozdiel od postáv, ich dosah v hre mení len veľkosť monštra, základný dosah sa nemení. Vzorec pre mercov a summonov je preto takýto:
- celkový dosah merca/summona = základný dosah merca/summona + veľkosť monštra
Monštrá majú svoju vlastnú Rangeadder konštantu, zvanú MeleeRng. U väčšiny príšer je to 1, ale nájdu sa aj výnimky:
- Izual, Regurgitator, Trapped Soul, Vile Mother a Zealot majú MeleeRng 2.
- Corrupt Rogue Lancer, Duriel, Flying Scimitar, Hell Bovine, Megademon a Oblivion Knight majú MeleeRng 3.
- Baal, Diablo, Mephisto, Minion of Destruction a The Ancients (Madawc, Korlic a Talic) majú MeleeRng 4.
- Blood Lord, Festering Appendage a Frozen Horror majú MeleeRng 5.
- Tentacle Beast má MeleeRng 7.
Pri výpočte ich celkového dosahu sa ale používa ich vlastná veľkosť, nie veľkosť cieľu. Vzorec je teda:
- celkový dosah monštra = MeleeRng + jeho vlastná veľkosť
Pri oslepení nepriateľa (napr. skillom Dim Vision) sa dosah vnímania príšer zmenší práve na tento ich dosah útoku.
Pokrytie plochy (v políčkach) pre jednotlivé hodnoty dosahu útokov nablízko.
— — — — — — — — — — — — — — — — — — — — — — —
Dosah útokov na diaľku (Missile Range)
Zbrane na diaľku (kuše, luky, vrhacie lektvary a vrhacie zbrane (tie len pri hádzaní)) nemajú žiadnu Rangeadder konštantu, pretože útok nimi vyšle strelu (missile). Aj mnohé spelly sú zložené z rôznych striel. Keďže vystrelený šíp, hodený nôž/lektvar je považovaný ako strela, aj ich dosah treba rátať ako pre ostatné strely (skillov). Strela môže byť vystrelená vo všetkých možných smeroch. Aj keď dráha letu strely teda nie je obmedzená na políčka ako útok nablízko, jej zameriavanie takto obmedzené je. Toto spôsobuje, že strela niekedy cieľ nezasiahne, iba sa v ňom stratí, pretože nezasiahla centrálne políčko, na ktorom je cieľ umiestnený, nech je hocijakej veľkosti (ako bolo už vysvetlené skôr). Tiež to aj spôsobuje, že počet smerov, kam môžeme vystreliť je podstatne väčší keď mierime na miesta pri okraji obrazovky ako keď mierime na miesta hneď vedľa postavy.
Každá strela má dve základné parametre, podľa ktorých môžeme vypočítať jej dosah. Sú to:
- rýchlosť– počet pixelov, ktoré strela prejde za 1 frame.
- dolet – počet framov (čas), koľko strela letí. Po uplynutí tohto času strela zmizne.
Celkový dosah sa potom ráta ako dráha a je v pixeloch:
- celkovy dosah = rýchlosť x dolet
Ak chceme dosah v yardoch a nie pixeloch, tak vydelíme celkový dosah číslom 32. Je to dobré prepočítavať na yardy, lebo dosah v yardoch je rovnaký pre všetky smery, kým dosah v pixeloch platí len pre základný (horizontálny) smer, v ostatných smeroch je rozdielny.
Strela skillu Ice Bolt a jej dosah.
Pre väčšinu striel tento vzorec stačí, ale niektoré strely aj menia rýchlosť počas letu. V takom prípade majú zadefinované ešte ďalšie dve parametre:
- zrýchlenie – kladná hodnota spôsobuje zmenu rýchlosti, až kým sa nedosiahne maximálna rýchlosť, záporná hodnota spôsobuje spomaľovanie strely až kým nezastane (rýchlosť = 0) bez ohľadu na zadefinovanú maximálnu rýchlosť.
- maximálna rýchlosť – keď dosiahne strela túto rýchlosť, už viac nezrýchľuje / nespomaľuje.
Normálna rýchlosť zo vzorca je v tomto prípade počiatočná rýchlosť strely. Presný dosah potom nemožno vyrátať, len odmerať priamo v hre, lebo nie je známe, čo presne znamená hodnota toho zrýchlenia, ale každopádne to nie je zmena rýchlosti za 1 frame ako bežné zrýchlenie. Potvrdené je len to, že čím vyššia hodnota, tým strela rýchlejšie zrýchľuje / spomaľuje, ale aby to malo výraznejší účinok, hodnoty zrýchlenia musia byť v stovkách, ale nevie sa čoho, preto nie je ani možné vyrátať dosah.
Dôležité je, že rýchlosť striel má svoj breakpoint, ktorého dosiahnutie spôsobuje, že sa počítanie začína od začiatku, tzn. že breakpointová rýchlosť = rýchlosť 0. Breakpointová rýchlosť je 256 a jej násobky. Je to kvôli tomu, aby ľudské oko bolo ešte schopné strely zaregistrovať. Zaujímavé je, že pri rýchlostiach 172 a vyšších (pri násobkoch = posledný breakpoint + 172) už začínajú strely meniť smer. Najčastejšie idú presne opačne ako boli namierené (teda s výchylkou 180 stupňov), ale niekedy aj s menšou výchylkou (zhruba 90 stupňov), závisí od smeru, kam boli pôvodne mierené.
Ešte treba dodať, že tento vzorec nemožno použiť ani pre strely, ktoré skilly vystreľujú v zložitých pohyboch (napr. kladivá skillu Blessed Hammer), lebo tam by už dráha letu nebola zároveň aj dosah strely.
Rýchlosť a/alebo dolet môžu byť ešte upravené parametrami zvanými VelLev, resp. LevRange. V takom prípade musíme konečnú rýchlosť/dolet vyrátať ešte pred ich použítím vo vzorci pre celkový dosah. Tieto parametre udávajú zmenu rýchlosti/dolet v závislosti od levelu. Vzorce sú nasledovné:
- rýchlosť = základná rýchlosť + VelLev x level
- dolet = základný dolet + LevRange x level
level – ak je strela vystrelená postavou, je to level postavy, ak mercom, tak level merca, ak summonom, tak level daného summoning skillu, ak príšerou, tak level príšery a ak skillom postavy, tak je to level skillu.
Základná rýchlosť/dolet je bežná rýchlosť/dolet, ktorú by sme použili vo vzorci, keby neboli zadané parametre VelLev/LevRange.
— — — — — — — — — — — — — — — — — — — — — — —
Plošný dosah a jeho polomer (Radius)
Skilly s plošným účinkom, kliatby a aury sú najbežnejším príkladom využívania radiusu v hre. Využívaný je samozrejme aj v iných, bežnému hráčovi nie príliš viditeľných efektoch. V hre sa udáva v yardoch a ide o dĺžku polomeru kruhu, ktorého obsah tvorí aktívnu plochu skillu (tzn. že objekty v tomto kruhu budú skillom ovplyvnené, ak tam nie je nejaká výnimka). V skutočnosti (kóde hry) je však radius a aj celá plocha špecifikovaná v políčkach. Ako už bolo skôr spomínané, 1 políčko je štvorec 2/3×2/3 yardu, jeho uhlopriečky však merajú približne 1 yard (to znamená, že ten istý polomer udaný v yardoch obsadzuje v niektorých smeroch viac a v niektorých menej políčok). V hre sa však táto plocha naozaj javí približne ako kruh.
V nasledujúcej ilustrácii je zobrazená celková plocha v políčkach spolu s radiusom v yardoch. Pre lepšiu predstavu sú tam zobrazené aj aktívne plochy niektorých skillov s pevným radiusom:
Pod radius môžeme zaradiť okrem iného aj tieto špecifické podskupiny:
Light Radius
Alebo inak povedané objektom osvetlená plocha je v hre bežný a často nepovšimnutý efekt. Možno ho rozdeliť do nasledovných kategórii:
- Light Radius príšer, mercov, summonov a iných nehrateľných postáv
- Light Radius objektov
- Light Radius striel, skillov a ich efektov
- Light Radius herných postáv a ako vlastnosť v predmetoch
Všetky druhy Light Radiusu majú zadefinované svoje hodnoty. Aj keď má názov radius (polomer), táto hodnota je priemer osvetlenej plochy v políčkach (tzn. že light radius 12 je tak isto veľká plocha ako bežný 6 yardový radius). Nasledujúce riadky sa Vám budú snažiť trochu priblížiť každú kategóriu:
1. kategória – hodnoty sú zadefinované v konfiguračnom súbore s nastaveniami pre príšery, ak nie je zadaný, jeho hodnota je nulová, čiže príšera neosvetľuje žiadnu plochu. Ich Light Radius môže byť sfarbený, závisí, aké hodnoty troch základnych farieb (modrá, červená, zelená) má zadané. Light Radius mercov a Iron Golema nemožno meniť ani použitím predmetov s touto vlastnosťou.
2. kategória – skoro to isté ako 1. kategória, tiež nemusí byť zadaný a môže mať rôznu farbu, jeho hodnoty sú zadefinované v konfiguračnom súbore s nastaveniami pre objekty. Pod pojmom objekt sa myslí všetko, čo sa nachádza na hernej ploche a nie je to postava, merc, summon, monštrum, npc, skill, strela, zlato, drop, predmet z inventáru alebo prostredie. Objekty môžu byť interaktívne ale aj nemusia. Sú to napr. truhlice, portály, mŕtve telá, barely ale aj niektoré kamene či pečate (seals) v Chaos Sanctuary. Najbežnejšie objekty s Light Radiusom sú fakle alebo oheň horiaci na zemi (ten, čo vás aj môže zraniť).
3. kategória – ide o Light Radius striel a efektov a tým pádom aj skillov, ktoré ich využívajú. Medzi efekty napríklad patria symboly prekliatí, pokrikov, aury, poškodení a iné. Hodnoty sú zadefinované v konfiguračných súboroch s nastaveniami pre strely / efekty. Aj táto kategória Light Radiusu môže mať rôzne farby alebo nemusí byť vôbec zadaná.
4. kategória – Light Radius postáv sa od predchádzajúcich kategórii už dosť odlišuje. Je vždy bezfarebný, je vždy aktívny a narozdiel od predchádzajúcich sa môžu jeho hodnoty meniť počas hry. Základný Light Radius postavy má hodnotu 13, jeho maximálna hodnota je 18 (všetky vyššie hodnoty už nemajú žiadny efekt) a minimálna 1, pri ktorej je osvetlené len políčko priamo pod postavou a aj postava je tmavšia. Light Radius je aj vlastnosť, ktorú môžu mať predmety a práve nosením týchto predmetov sa dá meniť Light Radius postavy. Ako jedna z mála vlastností môže mať aj záporné hodnoty, ktorých nosenie ho zmenšuje. Predmetov s touto vlastnosťou je dosť veľa, najvyššie hodnoty majú unikátny charm Hellfire Torch (+8) a unikátny meč Lightsabre (+7), naopak najviac Vám ho zmenšia unikátne helmy Darksight Helm a Veil of Steel (obe –4). Unikátny amulet The Eye of Etlich je jediný predmet v hre, ktorý má túto vlastnosť variabilnú (+1–5).
Napriek svojmu častému výskytu je táto vlastnosť prakticky zbytočná. V mnohých oblastiach si ho ani nevšimnete, jediné svoje opodstatnenie môže mať v jaskyniach, kryptách a iných tmavých oblastiach, počas noci a hlavne po aktivácii questu The Tainted Sun, ktorá spôsobí hustú tmu vo všetkých vonkajších lokáciach vrátane mesta. Vtedy Vám môže vysoký Light Radius uľahčiť život. Zmenšovanie Light Radiusu nemá opodstatnenie, pretože narozdiel od Diabla 1, v tejto hre je Light Radius len čisto osvetlenie plochy a nemá nič spoločné s aktivovaním príšer, takže žiadny Stealth mode týmto nedosiahnete. Malý Light Radius môže mať snáď len jedno využitie a to na dueloch (hlavne v noci), ale len za predpokladu, že súperi nepoužívajú mapu.
Radius spozorovania
Ide o nemennú, dôležitú a dosť veľkú plochu. Jej stredom je vždy postava a jej polomer presahuje polomer viditeľnej plochy (v uhlopriečkách len mierne, kým vertikálne a hlavne horizontálne je presiahnutá vzdialenosť už slušná, keďže dĺžka polomeru tohto radiusu je okolo 21 yardov). Spozorovanie sa myslí v dvoch zmysloch, lebo tento radius má dva druhy z rozličným využitím:
Prvé je, že ak sa príšera ocitne v tomto radiuse, aktivuje sa a väčšinou zaútočí na Vás. Aktivácia platí pre všetky príšery, ale či na Vás aj zaútočí, tak to závisi od jej naprogramovaného správania či inteligenicie, tzv. AI (napr. Zombie na Vás hneď nezaútočia, keď sa dostanú do tohto radiusu, ale začnú sa pohybovať, keďže boli aktivovaní). Ak ste znepriatelený s inou postavou, ktorá má merca a ten sa dostane do tohto radiusu, tiež po Vás pôjde, ale keďže má podobné správanie ako minioni, nezaútočí, kým sa nedostanete do zorného poľa tej postavy. Tento radius neprechádza cez bariéry ako steny, múry a preto napr. neaktivuje príšery vo vedľajšej uzavretej miestnosti (ale pozor, nie všetky typy stien a múrov pôsobia ako bariéra pre tento radius).
Druhé spozorovanie sa týka hernej postavy a to v tom zmysle, že v tomto radiuse už postava spozoruje svoje okolie (aj keď samotný hráč ešte nemusí) a v praxi to znamená, že sa spozorované okolie odkryje na automape. V tomto prípade však radius nie je obmedzený žiadnymi bariérami.
Pozn. Z technickej stránky sú v hre tieto dva druhy radiusu spozorovania zadefinované samostatne (čo je pochopiteľné, keďže každý z nich hra používa inde), ale z tématického hľadiska môžeme oba považovať za radius spozorovania (majú dokonca zhodnú alebo veľmi podobnú vzdialenosť).
— — — — — — — — — — — — — — — — — — — — — — —
Viditeľná herná plocha
Izometrická projekcia (vykreslenie) hernej plochy spôsobuje, že dĺžka smerom zhora dole je o niečo rozdielna ako smerom zľava doprava. Toto sa síce príliš netýka bežnej mierky v yardoch používanej napríklad pri skilloch, ale napríklad takej celkovej viditeľnej plochy už áno.
Keďže políčka sú štvorce 2/3×2/3 yardu, to znamená, že dĺžka prepony pravouhlých trojuholníkov, ktoré vzniknú rozpolením týchto štvorcov ich vlastnou uhlopriečkou je druhá odmocnina čísla 8/9 (2/32 + 2/32), čo je približne 0,943 yardu. Horizontálne sa táto vzdialenosť rovná 32 pixelom, kým vertikálne len 16 pixelom. Z toho vyplývajú nasledujúce údaje:
Rozlíšenie | Viditeľná herná plocha v pixeloch | Viditeľná herná plocha v yardoch |
---|---|---|
640×480 | 640×433 pixelov | 18,86×25,51 yardu |
800×600 | 800×553 pixelov | 23,57×32,59 yardu |
Bez ohľadu na rozlíšenie a zapnutej/vypnutej možnosti Perspective v menu Options, hra vždy zobrazí hernú plochu ako obdĺžnik zložený z malých kosodĺžnikových polí (každé má veľkosť 5×5 políčok). Herný engine prispôsobí všetky efekty v hre tomuto zobrazeniu, preto napríklad skill kruhového tvaru je v hre zobrazený v elipsovitom tvare (viď ilustráciu).
Elipsovité zobrazenie kruhu skillu Frost Nova.
Ďalší dobrý príklad sú strely. Pomocou vzorcu pre dosah striel získame hodnotu dosahu v pixeloch. Vystrelíme teda z luku normálny šíp, ktorého dosah je 960 pixelov, čiže 6/5 dĺžky jednej obrazovky. Z toho logicky vyplýva, že by to malo byť skoro 7/4 šírky jednej obrazovky. Takže na prvý pohľad sa zdá, že vertikálna vzdialenosť by mala byť väčšia ako horizontálna, ale nie je tomu tak. Ako som už spomínal, dosah striel v yardoch získame tak, že počet pixelov vydelíme číslom 32 (dĺžka uhlopriečky políčka v pixeloch, je to 0,943 yardu, ale hra túto vzdialenosť pre skilly zaokrúhľuje na 1 yard). Izometrická projekcia síce vertikálnu uhlopriečku zmenší na 16 pixelov, aby bolo možné vykresliť v dvojrozmernej hernej ploche trojrozmerné objekty a políčko sa potom javí ako kosodĺžnik, ale v skutočnosti ho hra berie ako štvorec s dvoma 32 pixelovými uhlopriečkami. To znamená, že vo vertikálnom smere prejde na obrazovke len polovičnú dĺžku v pixeloch. Dosah bežného šípu je teda 30 yardov, čiže horizontálne prejde zhruba 1,27 obrazovky, ale vertikálne zhruba len 0,92 obrazovky, pretože síce dosah strely je stále rovnaký, ale ako je vyššie uvedené, vertikálna dĺžka viditeľnej hernej plochy je väčšia ako horizontálna (inak povedané, vmestí sa do nej viac yardov). Najväčšia viditeľná vzdialenosť v yardoch je v rohoch obrazovky (uhlopriečky sú najdlhšie), ostatné smery sú dĺžkou rovnaké alebo podobné k najbližšiemu z ôsmych hlavných smerov. Pre lepšiu predstavu si môžete znova pozrieť ilustráciu radiusu a všimnite si, koľko yardov sa na obrazovku vošlo horizontálne a koľko vertikálne. Toto aj vysvetľuje už vyššie spomínané elipsovité vykresľovanie kruhov.
— — — — — — — — — — — — — — — — — — — — — — —
« Zpět do sekce Herní mechanismy.