{"id":87938,"date":"2020-07-12T01:41:59","date_gmt":"2020-07-11T23:41:59","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/optimizacziya-servera-minecraft"},"modified":"2020-07-12T01:41:59","modified_gmt":"2020-07-11T23:41:59","slug":"optimizacziya-servera-minecraft","status":"publish","type":"post","link":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/optimizacziya-servera-minecraft","title":{"rendered":"Optimalizace Minecraft serveru","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Optimalizace Minecraft serveru\" src=\"\/wp-content\/uploads\/2020\/07\/bbbb6eac1fb8a216bad7723dc31caa60.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nNa na\u0161em blogu jsme ji\u017e <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/selectel\/blog\/231935\/\">psali<\/a><\/noindex>, jak vytvo\u0159it sv\u016fj server Minecraft, ale od t\u00e9 doby ub\u011bhlo 5 let a mnoho se zm\u011bnilo. Sd\u00edl\u00edme s v\u00e1mi aktu\u00e1ln\u00ed zp\u016fsoby, jak vytv\u00e1\u0159et a optimalizovat serverovou \u010d\u00e1st t\u00e9to popul\u00e1rn\u00ed hry.<\/p>\n<p>B\u011bhem sv\u00e9 9let\u00e9 historie (pokud po\u010d\u00edt\u00e1me od data vyd\u00e1n\u00ed) si Minecraft z\u00edskal \u00fa\u017easn\u00e9 mno\u017estv\u00ed fanou\u0161k\u016f i odp\u016frc\u016f jak mezi b\u011b\u017en\u00fdmi hr\u00e1\u010di, tak mezi geeky. Jednoduch\u00fd koncept sv\u011bta z kostek se prom\u011bnil z oby\u010dejn\u00e9 z\u00e1bavy v univerz\u00e1ln\u00ed prost\u0159ed\u00ed pro komunikaci a tvorbu r\u016fzn\u00fdch objekt\u016f z re\u00e1ln\u00e9ho sv\u011bta. <br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nKrom\u011b stav\u011bn\u00ed je ve h\u0159e mo\u017enost vytv\u00e1\u0159et <noindex><a rel=\"nofollow\" href=\"https:\/\/minecraft-ru.gamepedia.com\/%D0%A1%D1%85%D0%B5%D0%BC%D1%8B_%D0%B8%D0%B7_%D0%BA%D1%80%D0%B0%D1%81%D0%BD%D0%BE%D0%B3%D0%BE_%D0%BA%D0%B0%D0%BC%D0%BD%D1%8F\">logick\u00e9 obvody<\/a><\/noindex>, kter\u00e9 umo\u017e\u0148uj\u00ed realizaci plnohodnotn\u00fdch algoritm\u016f uvnit\u0159 Minecraftu. Na YouTube je spousta velmi p\u016fsobiv\u00fdch vide\u00ed, kde lid\u00e9, p\u0159i\u010dem\u017e vynalo\u017eili obrovsk\u00e9 mno\u017estv\u00ed sil a str\u00e1vili nespo\u010det hodin, vytvo\u0159ili kopii n\u011bjak\u00e9ho elektronick\u00e9ho za\u0159\u00edzen\u00ed nebo podrobn\u011b postavili kopii <noindex><a rel=\"nofollow\" href=\"https:\/\/www.planetminecraft.com\/project\/paris---eiffel-tower\/\">existuj\u00edc\u00edch<\/a><\/noindex> a <noindex><a rel=\"nofollow\" href=\"https:\/\/overclockers.ru\/softnews\/show\/101225\/entuziasty-vossozdali-v-minecraft-hogvarts-i-drugie-lokacii-iz-garri-pottera\">fiktivn\u00edch<\/a><\/noindex> architektonick\u00fdch d\u011bl. V\u0161echno je omezeno pouze fantaz\u00ed hr\u00e1\u010de a mo\u017enostmi hern\u00edho univerza.<\/p>\n<p><center><div class=\"youtube-placeholder\" data-id=\"SxG3rydcrwA\" onclick=\"loadVideo(this)\">\r\n        <img decoding=\"async\" src=\"https:\/\/img.youtube.com\/vi\/SxG3rydcrwA\/hqdefault.jpg\" alt=\"P\u0159ehr\u00e1t video\" loading=\"lazy\" width=\"480\" height=\"360\" style=\"width:100%;height:auto;\">\r\n        <div class=\"play-button\"><\/div>\r\n    <\/div><\/center><br \/>\nAle nebudeme d\u00e1le hovo\u0159it o tom, co hr\u00e1\u010di vytv\u00e1\u0159ej\u00ed, a zam\u011b\u0159\u00edme se na serverovou \u010d\u00e1st aplikace a osv\u011btl\u00edme probl\u00e9my (n\u011bkdy velmi slo\u017eit\u00e9), kter\u00e9 mohou nastat p\u0159i z\u00e1t\u011b\u017ei. Hned na za\u010d\u00e1tek si ujasn\u00edme, \u017ee se budeme bavit pouze o Java Edition.<\/p>\n<h2>Typy server\u016f<\/h2>\n<p>\nNejjednodu\u0161\u0161\u00ed variantou je server integrovan\u00fd do klienta hry. Vytvo\u0159ili jste sv\u011bt, stiskli jste jedno tla\u010d\u00edtko a server je nyn\u00ed dostupn\u00fd v lok\u00e1ln\u00ed s\u00edti. Takov\u00e1 varianta nevydr\u017e\u00ed \u017e\u00e1dnou v\u00e1\u017enou z\u00e1t\u011b\u017e, proto se o n\u00ed nebav\u00edme.<\/p>\n<h3>Vanilla<\/h3>\n<p>\nSpole\u010dnost Mojang Studios distribuuje serverovou \u010d\u00e1st hry jako Java aplikaci zdarma <noindex><a rel=\"nofollow\" href=\"https:\/\/www.minecraft.net\/ru-ru\/download\/server\/\">na ofici\u00e1ln\u00edch str\u00e1nk\u00e1ch<\/a><\/noindex>. To umo\u017e\u0148uje vytvo\u0159it si vlastn\u00ed <noindex><a rel=\"nofollow\" href=\"http:\/\/slc.tl\/JZiJs\">vyhrazen\u00fd server<\/a><\/noindex> a osobn\u00ed sv\u011bt, kter\u00fd je p\u0159\u00edstupn\u00fd pro p\u0159ipojen\u00ed z jak\u00e9hokoli m\u00edsta na planet\u011b. Pro ty, kte\u0159\u00ed to d\u011blaj\u00ed poprv\u00e9, je k dispozici skv\u011bl\u00fd <noindex><a rel=\"nofollow\" href=\"https:\/\/minecraft.gamepedia.com\/Tutorials\/Setting_up_a_server\">tutori\u00e1l<\/a><\/noindex>, dostupn\u00fd v p\u0159\u00edslu\u0161n\u00e9 hern\u00ed Wiki.<\/p>\n<p>Tento p\u0159\u00edstup m\u00e1 jeden v\u00e1\u017en\u00fd nedostatek, a to je nedostatek mo\u017enost\u00ed pro snadn\u00e9 p\u0159ipojen\u00ed plugin\u016f, kter\u00e9 by roz\u0161i\u0159ovaly funkce serveru a umo\u017enily automatizaci mnoha proces\u016f a optimalizaci v\u00fdkonu. Krom\u011b toho ofici\u00e1ln\u00ed server spot\u0159ebov\u00e1v\u00e1 pom\u011brn\u011b hodn\u011b opera\u010dn\u00ed pam\u011bti na ka\u017ed\u00e9ho p\u0159ipojen\u00e9ho hr\u00e1\u010de.<\/p>\n<h3>Bukkit<\/h3>\n<p>\nServerov\u00e1 aplikace vytvo\u0159en\u00e1 nad\u0161enci zalo\u017een\u00e1 na Vanilla verzi <noindex><a rel=\"nofollow\" href=\"https:\/\/getbukkit.org\/\">Bukkit<\/a><\/noindex> z\u00e1sadn\u011b roz\u0161\u00ed\u0159ila mo\u017enosti hry t\u00edm, \u017ee podporovala pluginy a mody (modifikace). Umo\u017enilo to nejen p\u0159id\u00e1vat do hern\u00edho z\u00e1\u017eitku nov\u00e9 bloky, ale tak\u00e9 prov\u00e1d\u011bt r\u016fzn\u00e9 manipulace, kter\u00e9 byly standardn\u00edmu softwaru nedostupn\u00e9. Co je zaj\u00edmav\u00e9, tato aplikace vy\u017eadovala v\u00fdrazn\u011b m\u00e9n\u011b pam\u011bti.<\/p>\n<p>Nainstalovat Bukkit nen\u00ed \u017e\u00e1dn\u00fd velk\u00fd probl\u00e9m, odpov\u00eddaj\u00edc\u00ed n\u00e1vod je k dispozici na zdroji <noindex><a rel=\"nofollow\" href=\"https:\/\/bukkit.gamepedia.com\/Setting_up_a_server\">GamePedia<\/a><\/noindex>. To v\u0161ak ned\u00e1v\u00e1 smysl, proto\u017ee od roku 2014 se t\u00fdm Bukkit rozpadl, v\u00fdvoj\u00e1\u0159i projektu se stali zam\u011bstnanci Mojang Studios, a <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/Bukkit\">repuzit\u00e1\u0159e<\/a><\/noindex> byl opu\u0161t\u011bn. T\u00edm p\u00e1dem, Bukkit je v podstat\u011b mrtv\u00fd a m\u00e1 smysl se zam\u011b\u0159it na dva n\u00e1sleduj\u00edc\u00ed projekty.<\/p>\n<h3>SpigotMC<\/h3>\n<p>\nPro usnadn\u011bn\u00ed \u017eivota v\u00fdvoj\u00e1\u0159\u016f plugin\u016f byla pot\u0159eba API pro interakci s hern\u00edm sv\u011btem. Pr\u00e1v\u011b tuto \u00falohu vy\u0159e\u0161ili tv\u016frci <noindex><a rel=\"nofollow\" href=\"https:\/\/getbukkit.org\/download\/spigot\">Spigot<\/a><\/noindex>, kte\u0159\u00ed vzali za z\u00e1klad j\u00e1dro Bukkit a p\u0159epracovali ho pro zaji\u0161t\u011bn\u00ed lep\u0161\u00ed spolehlivosti a v\u00fdkonu. Nicm\u00e9n\u011b, <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/SpigotMC\/Spigot\">Git repozit\u00e1\u0159e<\/a><\/noindex> projekt byl zablokov\u00e1n podle Z\u00e1kona o autorsk\u00fdch pr\u00e1vech v digit\u00e1ln\u00edm v\u011bku (<noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/Digital_Millennium_Copyright_Act#:~:text=DMCA%20(%D0%B0%D0%BD%D0%B3%D0%BB.,%D0%BE%D0%B1%D0%BB%D0%B0%D1%81%D1%82%D0%B8%20%D0%BA%D0%BE%D0%BF%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F%20%D0%B8%20%D1%80%D0%B0%D1%81%D0%BF%D1%80%D0%BE%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B5%D0%BD%D0%B8%D1%8F%20%D0%B8%D0%BD%D1%84%D0%BE%D1%80%D0%BC%D0%B0%D1%86%D0%B8%D0%B8.\">DMCA<\/a><\/noindex>), a sta\u017een\u00ed zdrojov\u00fdch k\u00f3d\u016f odtud nen\u00ed mo\u017en\u00e9.<\/p>\n<p>V sou\u010dasnosti je SpigotMC aktivn\u011b vyv\u00edjen a pou\u017e\u00edv\u00e1n. Podporuje v\u0161echny pluginy vytvo\u0159en\u00e9 pro Bukkit, ale nen\u00ed s nimi zp\u011btn\u011b kompatibiln\u00ed. Aby se obch\u00e1zelo omezen\u00ed DMCA Takedown, byl vynalezen elegantn\u00ed zp\u016fsob nazvan\u00fd BuildTools. Tento n\u00e1stroj eliminuje pot\u0159ebu distribuce zkompilovan\u00e9 aplikace a umo\u017e\u0148uje u\u017eivatel\u016fm prov\u00e9st kompilaci Spigot, CraftBukkit a Bukkit ze zdrojov\u00e9ho k\u00f3du. To v\u0161e \u010din\u00ed omezen\u00ed DMCA k ni\u010demu.<\/p>\n<h3>PaperMC<\/h3>\n<p>\nMohlo by se zd\u00e1t, \u017ee v\u0161echno je skv\u011bl\u00e9, a Spigot se stal vynikaj\u00edc\u00ed volbou. Ale n\u011bkter\u00fdm nad\u0161enc\u016fm se to zd\u00e1lo m\u00e1lo, a tak vytvo\u0159ili svou vlastn\u00ed verzi Spigot \"na steroidech\". Na <noindex><a rel=\"nofollow\" href=\"https:\/\/papermc.io\/\">str\u00e1nce projektu<\/a><\/noindex> Hlavn\u00edm pozitivem je, \u017ee \u201eJe to ohromn\u011b rychl\u00e9\u201c. Vyvinut\u00e9 <noindex><a rel=\"nofollow\" href=\"https:\/\/papermc.io\/community\">komunita<\/a><\/noindex> umo\u017e\u0148uje rychle \u0159e\u0161it vznikaj\u00edc\u00ed ot\u00e1zky a roz\u0161\u00ed\u0159en\u00e9 API \u2013 vytv\u00e1\u0159et zaj\u00edmav\u00e9 pluginy. Spu\u0161t\u011bn\u00ed PaperMC lze prov\u00e9st jedn\u00edm jednoduch\u00fdm p\u0159\u00edkazem, kter\u00fd je uveden v <noindex><a rel=\"nofollow\" href=\"https:\/\/paper.readthedocs.io\/en\/latest\/server\/getting-started.html\">dokumentaci<\/a><\/noindex>. <\/p>\n<p>S kompatibilitou je u PaperMC v\u0161e v po\u0159\u00e1dku, tak\u017ee pluginy napsan\u00e9 pro SpigotMC snadno funguj\u00ed i na PaperMC, i kdy\u017e bez ofici\u00e1ln\u00ed podpory. Z\u00e1rove\u0148 je zaji\u0161t\u011bna zp\u011btn\u00e1 kompatibilita se SpigotMC. Nyn\u00ed, kdy\u017e jsme uvedli r\u016fzn\u00e9 mo\u017enosti vytvo\u0159en\u00ed serveru, p\u0159ejd\u011bme k probl\u00e9m\u016fm s v\u00fdkonem, kter\u00e9 mohou nastat.<\/p>\n<h2>Probl\u00e9my a \u0159e\u0161en\u00ed<\/h2>\n<p>\nHlavn\u00ed, co je t\u0159eba ch\u00e1pat, je, \u017ee v\u0161e, co se t\u00fdk\u00e1 zpracov\u00e1n\u00ed hern\u00edho sv\u011bta, bude zpracov\u00e1v\u00e1no pouze na jednom v\u00fdpo\u010detn\u00edm j\u00e1d\u0159e fyzick\u00e9ho serveru. Tak\u017ee pokud m\u00e1te skv\u011bl\u00fd server s des\u00edtkami v\u00fdpo\u010detn\u00edch jader, bude vyu\u017eito pouze jedno. V\u0161echna ostatn\u00ed budou ve skute\u010dnosti ne\u010dinn\u00e1. Takov\u00e1 je architektura aplikace a nic s t\u00edm neud\u011bl\u00e1te. P\u0159i v\u00fdb\u011bru serveru byste se tedy m\u011bli zam\u011b\u0159it ne na po\u010det jader, ale na taktovac\u00ed frekvenci. \u010c\u00edm vy\u0161\u0161\u00ed, t\u00edm lep\u0161\u00ed v\u00fdkon.<\/p>\n<p>Pokud jde o ot\u00e1zku objemu opera\u010dn\u00ed pam\u011bti, zde bychom m\u011bli vych\u00e1zet z n\u00e1sleduj\u00edc\u00edch ukazatel\u016f:<\/p>\n<ul>\n<li>pl\u00e1novan\u00fd po\u010det hr\u00e1\u010d\u016f;<\/li>\n<li>pl\u00e1novan\u00fd po\u010det sv\u011bt\u016f na serveru;<\/li>\n<li>velikost ka\u017ed\u00e9ho sv\u011bta.<\/li>\n<\/ul>\n<p>\nJe t\u0159eba si pamatovat, \u017ee Java aplikaci v\u017edy pot\u0159ebuje rezervu v opera\u010dn\u00ed pam\u011bti. Pokud o\u010dek\u00e1v\u00e1te spot\u0159ebu pam\u011bti 8 gigabajt\u016f, fakticky byste m\u011bli m\u00edt 12. \u010c\u00edsla jsou orienta\u010dn\u00ed, ale podstata se t\u00edm nem\u011bn\u00ed.<\/p>\n<p>Pro spu\u0161t\u011bn\u00ed serverov\u00e9 \u010d\u00e1sti doporu\u010dujeme vyu\u017e\u00edt flagy uveden\u00e9 v \u010dl\u00e1nku <noindex><a rel=\"nofollow\" href=\"https:\/\/aikar.co\/2018\/07\/02\/tuning-the-jvm-g1gc-garbage-collector-flags-for-minecraft\/\">Tuning the JVM \u2013 G1GC Garbage Collector Flags for Minecraft<\/a><\/noindex>. Tato \u201e\u010dern\u00e1 magie\u201c umo\u017e\u0148uje serveru spr\u00e1vn\u011b nastavit \u201esb\u011bra\u010d odpadu\u201c a optimalizuje vyu\u017eit\u00ed opera\u010dn\u00ed pam\u011bti. Nen\u00ed dobr\u00e9 p\u0159id\u011blovat v\u00edce pam\u011bti, ne\u017e kolik server skute\u010dn\u011b spot\u0159ebov\u00e1v\u00e1 p\u0159i vrcholn\u00e9m provozu hr\u00e1\u010d\u016f.<\/p>\n<h3>Generov\u00e1n\u00ed mapy blok\u016f<\/h3>\n<blockquote><p><i>\u201eOpravdu si mysl\u00edte, \u017ee Luna existuje jen tehdy, kdy\u017e se na ni d\u00edv\u00e1te?\u201c (Albert Einstein)<\/i><\/p><\/blockquote>\n<p>\u00dapln\u011b nov\u00fd server. Jakmile se hr\u00e1\u010d poprv\u00e9 \u00fasp\u011b\u0161n\u011b p\u0159ipoj\u00ed, hern\u00ed postava se objev\u00ed na spole\u010dn\u00e9 spawnovac\u00ed plo\u0161e. Je to jedin\u00e9 m\u00edsto, kde je hern\u00ed sv\u011bt p\u0159edem generov\u00e1n serverem. V tu chv\u00edli se klientsk\u00e1 \u010d\u00e1st pod\u00edv\u00e1 do nastaven\u00ed a kl\u00ed\u010dov\u00fdm parametrem je vzd\u00e1lenost vykreslov\u00e1n\u00ed. M\u011b\u0159\u00ed se v chunk\u00e1ch (oblast mapy 16\u00d716 a v\u00fd\u0161kou 256 blok\u016f). Kolik chunk\u016f je tam uvedeno, tolik bude po\u017eadov\u00e1no od serveru.<\/p>\n<p>Na serveru je ulo\u017eena glob\u00e1ln\u00ed mapa sv\u011bta a pokud v n\u00ed je\u0161t\u011b nejsou generovan\u00e9 bloky na m\u00edst\u011b spu\u0161t\u011bn\u00ed hern\u00ed postavy, server je dynamicky generuje a ukl\u00e1d\u00e1 je k sob\u011b. Nen\u00ed to jenom ot\u00e1zka velk\u00fdch v\u00fdpo\u010detn\u00edch zdroj\u016f, ale tak\u00e9 to neust\u00e1le zvy\u0161uje velikost mapy sv\u011bta. Na jednom z nejstar\u0161\u00edch anarchick\u00fdch server\u016f, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.reddit.com\/r\/2b2t\/\">2b2t<\/a><\/noindex> (2builders2tools) je ji\u017e velikost mapy p\u0159es 8 TB a hranice sv\u011bta proch\u00e1z\u00ed na \u00farovni 30 milion\u016f blok\u016f. S t\u00edmto serverem je spojeno tis\u00edce p\u0159\u00edb\u011bh\u016f a zaslou\u017e\u00ed si vlastn\u00ed \u010dl\u00e1nek v s\u00e9rii \u010dl\u00e1nk\u016f.<\/p>\n<p>Generace sv\u011bta kolem jednoho hr\u00e1\u010de nen\u00ed probl\u00e9m. Generace sv\u011bta kolem stovky hr\u00e1\u010d\u016f zp\u016fsob\u00ed jen m\u00edrn\u00e9 zpomalen\u00ed serveru na kr\u00e1tkou dobu, po kter\u00e9 z\u00e1t\u011b\u017e klesne. Generace sv\u011bta na vzd\u00e1lenost vykreslov\u00e1n\u00ed klienta kolem tis\u00edce hr\u00e1\u010d\u016f u\u017e dok\u00e1\u017ee 'zhodit' server a vyhodit v\u0161echny klienty kv\u016fli timeoutu. <\/p>\n<blockquote><p>V serverov\u00e9m softwaru existuje takov\u00e1 hodnota jako <b>TPS<\/b> (Ticks per Server \u2013 takty za sekundu). Standardn\u011b 1 takt trv\u00e1 50 ms. (1 sekunda skute\u010dn\u00e9ho sv\u011bta odpov\u00edd\u00e1 20 takt\u016fm hern\u00edho sv\u011bta). Pokud zpracov\u00e1n\u00ed jednoho taktu vzroste na 60 sekund \u2013 serverov\u00e1 aplikace se uzav\u0159e a vyhod\u00ed v\u0161echny hr\u00e1\u010de.<\/p><\/blockquote>\n<p>\u0158e\u0161en\u00edm je omezit sv\u011bt ur\u010dit\u00fdmi sou\u0159adnicemi a prov\u00e9st p\u0159edb\u011b\u017enou generaci blok\u016f. T\u00edm se eliminuje pot\u0159eba dynamick\u00e9 generace b\u011bhem hran\u00ed a serveru sta\u010d\u00ed p\u0159e\u010d\u00edst ji\u017e existuj\u00edc\u00ed mapu. Ob\u011b ot\u00e1zky jsou \u0159e\u0161iteln\u00e9 jedn\u00edm jedin\u00fdm pluginem, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.spigotmc.org\/resources\/worldborder.60905\/?__cf_chl_jschl_tk__=d0f9c4723baac27d22ed5a4d6a0adc08a784d221-1591168685-0-Aa76TEnYS274L154Kyt38UoKv_3eODSH8ppWyfcy8S4YlE2p-ambsAYbumtickms5Q0JoSK-cM7PL0SMlPuWOEx2ytqJKKyZXfLbSfiR4SWeF5ytN0k2vazFJUQtvtZe9EzMSgvGNiK5j9Q_sgL7vCLZKLWpByNJKds_hg25oUpdiYewb2rF7qA8n6E5Mr0yHXCaonPsz-tiE5wbIuVcSQBsjgCgBJ27zWqEZLs3_VUVL00yRGpSZKDd-f2eC_8x8e8x7ymOgmgGPjPMJAwmCDz1k1P5BFKAOZ25KEYVfm0EzYnAp-001ExJbj4KAYveVw\">WorldBorder<\/a><\/noindex>.<\/p>\n<p>Nejjednodu\u0161\u0161\u00ed je definovat hranice sv\u011bta ve tvaru kruhu vztahuj\u00edc\u00edmu se k bodu spawnu (a\u010dkoli ji lze vytvo\u0159it v jak\u00e9mkoli tvaru) jedn\u00edm p\u0159\u00edkazem:<\/p>\n<pre><code class=\"plaintext\">\/wb set &lt;\u0440\u0430\u0434\u0438\u0443\u0441 \u0432 \u0431\u043b\u043e\u043a\u0430\u0445&gt; spawn<\/code><\/pre>\n<p>\nPokud se hern\u00ed postava pokus\u00ed p\u0159ekro\u010dit hranici, bude odhozeno zp\u011bt o n\u011bkolik blok\u016f. Pokud to ud\u011blaj\u00ed n\u011bkolikr\u00e1t v omezen\u00e9m \u010dase, pachatel bude nucen\u011b teleportov\u00e1n na spawnovac\u00ed m\u00edsto. P\u0159edb\u011b\u017en\u00e1 generace sv\u011bta se prov\u00e1d\u00ed je\u0161t\u011b jednodu\u0161eji p\u0159\u00edkazem:<\/p>\n<pre><code class=\"plaintext\">\/wb fill<\/code><\/pre>\n<p>\nProto\u017ee tato akce m\u016f\u017ee potenci\u00e1ln\u011b ovlivnit hr\u00e1\u010de na serveru, nezapome\u0148te potvrdit proveden\u00ed:<\/p>\n<pre><code class=\"plaintext\">\/wb confirm<\/code><\/pre>\n<p>\nCelkov\u011b na vygenerov\u00e1n\u00ed sv\u011bta s polom\u011brem 5000 blok\u016f (~40 miliard blok\u016f) trvalo p\u0159ibli\u017en\u011b 2 hodiny na procesoru Intel\u00ae Xeon\u00ae Gold 6240. Pokud tedy chcete spustit pre-generaci v\u011bt\u0161\u00ed mapy, m\u011bjte na pam\u011bti, \u017ee tento proces zabere zna\u010dnou dobu a TPS serveru bude v\u00e1\u017en\u011b sn\u00ed\u017eeno. Nav\u00edc pamatujte, \u017ee i polom\u011br 5000 blok\u016f bude vy\u017eadovat p\u0159ibli\u017en\u011b 2 GB m\u00edsta na disku.<\/p>\n<p>I kdy\u017e byla kone\u010dn\u00e1 verze pluginu vyvinuta pro verzi Minecraft 1.14, bylo empiricky zji\u0161t\u011bno, \u017ee funguje skv\u011ble i na dal\u0161\u00edch verz\u00edch. \u00dapln\u00fd seznam p\u0159\u00edkaz\u016f s vysv\u011btlen\u00edmi je k dispozici <noindex><a rel=\"nofollow\" href=\"https:\/\/www.spigotmc.org\/threads\/worldborder.339635\/#post-3162179\">na f\u00f3ru pluginu<\/a><\/noindex>.<\/p>\n<h3>Probl\u00e9mov\u00e9 bloky<\/h3>\n<p>\nDruh\u016f blok\u016f v Minecraftu je nespo\u010det. R\u00e1di bychom v\u0161ak upozornili \u010dten\u00e1\u0159e na blok, jako je <b>TNT<\/b>. Jak n\u00e1zev nazna\u010duje, tento blok p\u0159edstavuje v\u00fdbu\u0161ninu <i>(pozn\u00e1mka redakce \u2014 toto je hern\u00ed polo\u017eka virtu\u00e1ln\u00edho sv\u011bta a nem\u00e1 nic spole\u010dn\u00e9ho s re\u00e1ln\u00fdmi v\u00fdbu\u0161ninami)<\/i>. Jeho zvl\u00e1\u0161tnost\u00ed je, \u017ee v okam\u017eiku aktivace na n\u011bj za\u010d\u00edn\u00e1 p\u016fsobit s\u00edla gravitace. To nut\u00ed server vypo\u010d\u00edtat v\u0161echny sou\u0159adnice, pokud blok za\u010dne padat.<\/p>\n<p>Pokud je blok\u016f TNT n\u011bkolik, detonace jednoho bloku zp\u016fsob\u00ed detonaci a aktivaci gravitace u sousedn\u00edch blok\u016f, kter\u00e9 rozprsk\u00e1vaj\u00ed v\u0161ude kolem. Cel\u00e1 tato kr\u00e1sn\u00e1 mechanika na stran\u011b serveru vypad\u00e1 jako mno\u017estv\u00ed operac\u00ed pro v\u00fdpo\u010det trajektori\u00ed ka\u017ed\u00e9ho z blok\u016f a jejich interakci se sousedn\u00edmi bloky. \u00dakol je extr\u00e9mn\u011b n\u00e1ro\u010dn\u00fd na zdroje, co m\u016f\u017ee ka\u017ed\u00fd snadno ov\u011b\u0159it. Vygenerujte a odp\u00e1len\u00ed kostku z blok\u016f TNT o velikosti alespo\u0148 30x30x30. A pokud jste si mysleli, \u017ee m\u00e1te dobr\u00fd v\u00fdkonn\u00fd hern\u00ed po\u010d\u00edta\u010d, tak jste se hodn\u011b m\u00fdlili \ud83d\ude09<\/p>\n<pre><code class=\"plaintext\">\/fill ~ ~ ~ ~30 ~30 ~30 minecraft:tnt<\/code><\/pre>\n<p>\n<img decoding=\"async\" alt=\"Optimalizace Minecraft serveru\" src=\"\/wp-content\/uploads\/2020\/07\/9e907406e74f3e773dd49148c8a9f9d8.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nTakov\u00fd \u201eexperiment\u201c na serveru s Intel\u00ae Xeon\u00ae Gold 6240 vedl k v\u00e1\u017en\u00e9mu poklesu TPS a zat\u00ed\u017een\u00ed CPU o 80 % b\u011bhem cel\u00e9 doby detonace blok\u016f. To znamen\u00e1, \u017ee pokud by n\u011bkdo z hr\u00e1\u010d\u016f mohl n\u011bco takov\u00e9ho prov\u00e9st, probl\u00e9m s v\u00fdkonem se t\u00fdk\u00e1 v\u0161ech hr\u00e1\u010d\u016f na serveru.<\/p>\n<p>Je\u0161t\u011b p\u0159\u00edsn\u011bj\u0161\u00ed varianta \u2014 <b>K\u0159i\u0161\u0165\u00e1ly Kraje<\/b>. Pokud TNT skute\u010dn\u011b exploduje sekven\u010dn\u011b, K\u0159i\u0161\u0165\u00e1ly Kraje detonuj\u00ed v\u0161echny sou\u010dasn\u011b, co\u017e teoreticky m\u016f\u017ee \u00fapln\u011b zastavit fungov\u00e1n\u00ed serverov\u00e9 aplikace.<\/p>\n<p>Tomu lze zabr\u00e1nit pouze \u00fapln\u00fdm z\u00e1kazem pou\u017e\u00edv\u00e1n\u00ed t\u011bchto blok\u016f ve hern\u00edm sv\u011bt\u011b. Nap\u0159\u00edklad pomoc\u00ed pluginu <noindex><a rel=\"nofollow\" href=\"https:\/\/dev.bukkit.org\/projects\/worldguard\">WorldGuard<\/a><\/noindex>. V\u0161imn\u011bte si, \u017ee tento plugin s\u00e1m o sob\u011b nefunguje bez jin\u00e9ho pluginu <noindex><a rel=\"nofollow\" href=\"https:\/\/dev.bukkit.org\/projects\/worldedit\/files\/\">WorldEdit<\/a><\/noindex>. Tak\u017ee nejd\u0159\u00edve nainstalujte WorldEdit a potom WorldGuard.<\/p>\n<h2>Z\u00e1v\u011br<\/h2>\n<p>\nOdpov\u011bdn\u00e9 \u0159\u00edzen\u00ed hern\u00edho serveru nen\u00ed jednoduch\u00fd \u00fakol. Obt\u00ed\u017ee a pokles v\u00fdkonu na v\u00e1s \u010dekaj\u00ed na ka\u017ed\u00e9m kroku, zejm\u00e9na pokud nezohledn\u00edte samotnou mechaniku hry. V\u0161e p\u0159edv\u00eddat nelze, proto\u017ee hr\u00e1\u010di jsou n\u011bkdy velmi vynal\u00e9zav\u00ed ve snaze donutit server k proveden\u00ed toho, k \u010demu nebyl ur\u010den. Pouze rozumn\u00e1 rovnov\u00e1ha mezi riziky a nastaven\u00fdmi omezen\u00edmi umo\u017en\u00ed serveru pracovat v nep\u0159etr\u017eit\u00e9m re\u017eimu a nezhor\u0161ovat jeho v\u00fdkon na kritick\u00e9 hodnoty.<\/p>\n<p>Na karant\u00e9n\u011b se n\u011bkte\u0159\u00ed na\u0161i zam\u011bstnanci st\u00fdskali po sv\u00fdch obl\u00edben\u00fdch kancel\u00e1\u0159\u00edch a rozhodli se je znovu vytvo\u0159it uvnit\u0159 Minecraftu. I vy m\u00e1te \u0161anci n\u00e1s nav\u0161t\u00edvit, ani\u017e byste riskovali sv\u00e9 zdrav\u00ed a ztr\u00e1celi \u010das na cestu. <\/p>\n<blockquote><p>K tomu zveme v\u0161echny z\u00e1jemce na n\u00e1\u0161 server <b>minecraft.selectel.ru<\/b> verze klienta 1.15.2, kde byly znovu vytvo\u0159eny datov\u00e9 centra Kv\u011btinov\u00e1-1 a Kv\u011btinov\u00e1-2. Nezapome\u0148te souhlasit se sta\u017een\u00edm dal\u0161\u00edch zdroj\u016f, jsou nezbytn\u00e9 pro spr\u00e1vn\u00e9 zobrazen\u00ed n\u011bkter\u00fdch lokalit.<\/p>\n<p>\u010cekaj\u00ed v\u00e1s questy, promo k\u00f3dy, \u201evelikono\u010dn\u00ed vaj\u00ed\u010dka\u201c a p\u0159\u00edjemn\u00e1 konverzace.<\/p><\/blockquote>\n<p>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/selectel\/blog\/510232\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412 \u043d\u0430\u0448\u0435\u043c \u0431\u043b\u043e\u0433\u0435 \u043c\u044b \u0443\u0436\u0435 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u043b\u0438, \u043a\u0430\u043a \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0441\u0432\u043e\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 Minecraft, \u043e\u0434\u043d\u0430\u043a\u043e \u0441 \u0442\u0435\u0445 \u043f\u043e\u0440 \u043f\u0440\u043e\u0448\u043b\u043e 5 \u043b\u0435\u0442 \u0438 \u043c\u043d\u043e\u0433\u043e\u0435 \u043f\u043e\u043c\u0435\u043d\u044f\u043b\u043e\u0441\u044c. \u0414\u0435\u043b\u0438\u043c\u0441\u044f \u0441 \u0432\u0430\u043c\u0438 \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u043c\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0438 \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u0441\u0442\u043e\u043b\u044c \u043f\u043e\u043f\u0443\u043b\u044f\u0440\u043d\u043e\u0439 \u0438\u0433\u0440\u044b. \u0417\u0430 \u0441\u0432\u043e\u044e 9-\u043b\u0435\u0442\u043d\u044e\u044e \u0438\u0441\u0442\u043e\u0440\u0438\u044e (\u0435\u0441\u043b\u0438 \u0441\u0447\u0438\u0442\u0430\u0442\u044c \u043e\u0442 \u0434\u0430\u0442\u044b \u0440\u0435\u043b\u0438\u0437\u0430) Minecraft \u0437\u0430\u0440\u0430\u0431\u043e\u0442\u0430\u043b \u043f\u043e\u0442\u0440\u044f\u0441\u0430\u044e\u0449\u0435\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u043e\u043a\u043b\u043e\u043d\u043d\u0438\u043a\u043e\u0432 \u0438 \u0445\u0435\u0439\u0442\u0435\u0440\u043e\u0432 \u043a\u0430\u043a \u0441\u0440\u0435\u0434\u0438 \u043e\u0431\u044b\u0447\u043d\u044b\u0445 \u0438\u0433\u0440\u043e\u043a\u043e\u0432, \u0442\u0430\u043a [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":87939,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-87938","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412 \u043d\u0430\u0448\u0435\u043c \u0431\u043b\u043e\u0433\u0435 \u043c\u044b \u0443\u0436\u0435\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/optimizacziya-servera-minecraft\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"cs_CZ\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u041e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f \u0441\u0435\u0440\u0432\u0435\u0440\u0430 Minecraft | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412 \u043d\u0430\u0448\u0435\u043c \u0431\u043b\u043e\u0433\u0435 \u043c\u044b \u0443\u0436\u0435\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/optimizacziya-servera-minecraft\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-07-11T23:41:59+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-07-11T23:41:59+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Optimalizace serveru Minecraft | ProHoster","description":"Na na\u0161em blogu jsme ji\u017e","canonical_url":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/optimizacziya-servera-minecraft","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"cs_CZ","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u041e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u044f \u0441\u0435\u0440\u0432\u0435\u0440\u0430 Minecraft | ProHoster","og:description":"\u0412 \u043d\u0430\u0448\u0435\u043c \u0431\u043b\u043e\u0433\u0435 \u043c\u044b \u0443\u0436\u0435","og:url":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/optimizacziya-servera-minecraft","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-07-11T23:41:59+00:00","article:modified_time":"2020-07-11T23:41:59+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"87938","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 13:40:35","updated":"2022-09-30 12:41:29","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/87938","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/comments?post=87938"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/87938\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media\/87939"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media?parent=87938"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/categories?post=87938"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/tags?post=87938"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}