RE:NODE

Minecraft13 წუთის საკითხავი

Minecraft-ის web რუკები: Dynmap, BlueMap და squaremap

Dynmap-ის, BlueMap-ისა და squaremap-ის შედარება: ნაგულისხმევი პორტები და რატომ სჭირდება web რუკას მეორე პორტი, რენდერის ფასი, დისკის მოხმარება და ბაზების რუკიდან დამალვა.

0 მკითხველი

web map plugin არის მეორე სერვერი, რომელიც შენი Minecraft სერვერის შიგნით მუშაობს. ის კითხულობს world-ის chunk-ებს, აქცევს მათ სურათის tile-ებად, წერს ამ tile-ებს შენს დისკზე და HTTP-ით აწვდის საკუთარ პორტზე - 8123 Dynmap-ისთვის, 8100 BlueMap-ისთვის, 8080 squaremap-ისთვის ნაგულისხმევად. სწორედ ეს ბოლო ნაწილია ის, სადაც ჰოსტინგზე ინსტალაციების უმეტესობა ჩერდება, რადგან თამაშის გეგმას ერთი პორტის allocation მოჰყვება და ის თამაშისაა. შენ გჭირდება მეორე, და plugin-ს უნდა უთხრა, რომ გამოიყენოს ის ნომერი, რომელსაც panel გაძლევს და არა საკუთარი ნაგულისხმევი. დანარჩენი ყველაფერი იმის საკითხია, რამდენ CPU-სა და დისკს ხარჯავ სურათებზე.

რა არის web რუკა სინამდვილეში#

ერთი სიტყვის "რუკის" უკან ორი განსხვავებული სამუშაოა.

პირველი რენდერია. plugin გადის region ფაილებს ან ჩატვირთულ chunk-ებს, გარკვევს, როგორ გამოიყურება ბლოკების თითოეული სვეტი ზემოდან ან კუთხით, და შედეგს tile-ებად წერს რამდენიმე zoom დონეზე. ეს ძვირია, უმეტესად ერთჯერადია და ეს არის ის ნაწილი, რომელიც დისკს ავსებს.

მეორე მიწოდებაა. პატარა ჩაშენებული HTTP სერვერი ამ tile-ებს ბრაუზერს გადასცემს მოთამაშეების პოზიციების JSON დოკუმენტთან ერთად, რომელიც ყოველ წამში ან ორ წამში ახლდება. ეს იაფია. tile-ების არსებობის შემდეგ ათი მაყურებლის მქონე ცოცხალი რუკა სერვერს თითქმის არაფერი უჯდება.

პირველი სრული რენდერის შემდეგ plugin მხოლოდ იმ tile-ებს ახლიდან რენდერავს, რომელთა chunk-ებიც შეიცვალა, რაც ჩვეულებრივ survival სერვერზე წუთში რამდენიმეა. ამიტომ ფასის პატიოსანი მოდელია: ერთი დიდი წინასწარი ანგარიში, შემდეგ თითქმის არაფერი.

HTTPაწვდისრენდერი კითხულობსბრაუზერიmap.example.com:25580World chunk-ებიregion ფაილებიმეორე allocationემატება Network ჩანართზეMap pluginJava პროცესის შიგნითTile ფაილებიგეგმის დისკზე
web რუკა მეორე სერვერია მეორე პორტზე

Dynmap, BlueMap და squaremap შედარებით#

DynmapBlueMapsquaremap
იერსახე2D ზემოდან და 3D იზომეტრიულინამდვილი 3D ბრაუზერშიმხოლოდ 2D ზემოდან
ნაგულისხმევი პორტი812381008080
სერვერის პროგრამაPaper, Spigot, Fabric, Forge, NeoForgePaper, Spigot, Fabric, Forge, NeoForge, Spongeმხოლოდ Paper
კონფიგურაციაconfiguration.txt და worlds.txtHOCON .conf ფაილებიconfig.yml
პირველი რენდერიყველაზე მძიმემძიმეყველაზე მსუბუქი
დისკი ფართობზეყველაზე მაღალი 3D რუკებითმაღალიყველაზე დაბალი
Marker-ები და APIვრცელი, პლუს web chatmarker-ები, chat-ის გარეშეmarker-ები

Dynmap ყველაზე ძველია და ყველაზე მრავალფუნქციური. მისი marker API არის მიზეზი, რის გამოც თითქმის ყველა plugin, რომელსაც რუკაზე რაიმეს დახატვა უნდა - claim-ები, მაღაზიები, warp-ები, ქალაქები - ჯერ Dynmap-თან ინტეგრირდება. მისი იზომეტრიული "surface" რუკა ასევე ამ პოსტში ყველაზე ძვირი რამაა.

BlueMap ის არის, რასაც ხალხი იმიტომ აყენებს, რომ მისმა სქრინშოტმა დაარწმუნა. ის world-ს ბრაუზერს ბრტყელი სურათების ნაცვლად 3D გეომეტრიად აწვდის, ამიტომ მასში ფრენა შეგიძლია. საპირწონე უფრო მძიმე პირველი რენდერია და დამოკიდებულება, რომელსაც ხალხი არ ელის: BlueMap-ს ბლოკის ტექსტურებისთვის ოფიციალური Minecraft-ის client jar სჭირდება და მას არ ჩამოტვირთავს, სანამ config-ში ამას არ ეტყვი.

squaremap Pl3xMap-ის fork-ია, მხოლოდ Paper-ისთვის, მხოლოდ ზემოდან ხედვით და განზრახ პატარა. ის სხვა ორზე უფრო სწრაფად რენდერავს და ყველაზე პატარა tile ხეს აწარმოებს. 2 GB ან 4 GB გეგმაზე ჩვეულებრივ სწორი პასუხია, ხოლო მის წინააღმდეგ ერთადერთი რეალური არგუმენტი ისაა, რომ ბრტყელი რუკები ნაკლებად შთამბეჭდავია.

დამაბნეველია, რომ Dynmap-ის configuration.txt გაფართოების მიუხედავად YAML-ია. დაარედაქტირე ისეთივე სიფრთხილით, როგორც ნებისმიერი YAML ფაილი: ჰარები და არა tab-ები, და ერთი არასწორი გადაწევა plugin-ის ჩატვირთვას აჩერებს.

დამატებითი პორტი, hostname-ები და რას ვერ აკეთებს DNS#

RE:NODE-ზე Minecraft-ის გეგმას ერთი allocation მოჰყვება და ეს თამაშის პორტია. map plugin-ის web სერვერს საკუთარი სჭირდება, რომელსაც panel-ის Network ჩანართზე დაამატებ. აქედან ორი რამ გამომდინარეობს და ორივე ხალხს ერევა:

  • ნომერს panel გაძლევს. შენ არ აარჩევ 8123-ს იმიტომ, რომ plugin-ის დოკუმენტაცია ასე ამბობს. აიღე ის, რასაც ახალი allocation აჩვენებს და ეს ნომერი ჩაწერე plugin-ის config-ში.
  • გამოუყოფელი პორტი მიუწვდომელია, შიგნიდანაც კი. თუ Dynmap-ს 8123-ზე დატოვებ, ის სიამოვნებით ჩაირთვება, ლოგში დაწერს, რომ მისი web სერვერი უსმენს, და ინტერნეტიდან უხილავი იქნება. საპოვნელი შეცდომა არ არის, რადგან სერვერის მხარეს არაფერი არასწორად წასულა.

ამრიგად, თანმიმდევრობა ასეთია: დაამატე allocation, ჩაიწერე პორტი, plugin-ის პორტი მას დაუმთხვიე, მისი bind address 127.0.0.1-ის ნაცვლად 0.0.0.0-ზე დააყენე, გადატვირთე და შემდეგ საკუთარი მანქანიდან შეამოწმე:

bash
$ curl -I http://203.0.113.10:25580/HTTP/1.1 200 OK

რუკა თამაშის პორტზე არასოდეს მიუთითო. Minecraft-ის პროტოკოლი HTTP არ არის და მათ შორის პორტის გაზიარება ისეთი რამ არ არის, რაც შეიძლება იმუშაოს. გეიმ სერვერის პორტები ახსნილი მოიცავს, რატომ სჭირდება თითოეულ სერვისს საკუთარი და რისთვის არის query port.

როცა ის იმუშავებს, IP-სა და ხუთნიშნა პორტზე უკეთესი მისამართი მოგინდება. DNS ამის ნახევარს გაძლევს. A ჩანაწერი, რომელიც map.example.com-ს სერვერის მისამართზე მიუთითებს, ნიშნავს, რომ ხალხს შეუძლია აკრიფოს http://map.example.com:25580, რაც უკეთესია. რას ვერ აკეთებს DNS, არის პორტის გადატანა: A ჩანაწერი სახელს მისამართზე ასახავს და სხვა არაფერს. SRV ჩანაწერები პორტებს ატარებენ, სწორედ ამიტომ მუშაობენ ისინი ასე კარგად თვითონ თამაშისთვის - იხილე SRV ჩანაწერები Minecraft-ისთვის - მაგრამ ბრაუზერები ჩვეულებრივი web მოთხოვნებისთვის SRV ჩანაწერებს არ ეძებენ, ამიტომ აქ ისინი არ გეხმარება.

URL-დან პორტის მოცილებას და მასთან ერთად HTTPS-ს ის სჭირდება, რომ წინ რაღაც TLS-ს ამთავრებდეს და რუკაზე გადასცემდეს. ეს არის ის, რასაც reverse proxy აკეთებს, და RE:NODE-ის აპლიკაციისა და web გეგმები მოიცავს proxy სლოტს, რომელიც სერტიფიკატს ავტომატურად გასცემს და ანახლებს, როგორც კი A ჩანაწერი მასზე მიუთითებს. თამაშის გეგმაზე web რუკა უბრალო HTTP-ა პორტზე და უმეტესი სერვერისთვის ეს კარგია. უბრალოდ იცოდე, რას ნიშნავს ეს:

რას აკეთებს reverse proxy და ქვედომენები სერვერებისთვის სახელდების მხარეს სათანადოდ გადის.

Dynmap-ის ინსტალაცია და კონფიგურაცია#

ატვირთე jar plugins/-ში, გაუშვი სერვერი ერთხელ, რომ მან თავისი ფაილები ჩაწეროს, გააჩერე და შემდეგ დაარედაქტირე plugins/dynmap/configuration.txt. პარამეტრები, რომლებიც ჰოსტინგზე მნიშვნელოვანია:

plugins/dynmap/configuration.txt
webserver-bindaddress: 0.0.0.0webserver-port: 25580disable-webserver: falsemax-sessions: 30image-format: jpg-q85timesliceinterval: 0.2maxchunkspertick: 120zoomoutperiod: 30tileupdatedelay: 30

ამათგან სამი მთავარ საქმეს აკეთებს.

  • timesliceinterval და maxchunkspertick არის სიჩქარის შემზღუდველი. პირველი პაუზას ამატებს რენდერის ნაჭრებს შორის, მეორე ზღუდავს, რამდენი chunk მუშავდება tick-ზე. ნაგულისხმევი მნიშვნელობები მანქანისთვისაა მორგებული, რომელსაც სათადარიგო ბირთვები აქვს; 1-2 vCPU-იან გეგმაზე 0.2 და 120 სრულ რენდერს tick-ის ბიუჯეტს მძევლად არ აყენებინებს.
  • image-format დისკის მოხმარების ყველაზე დიდი ბერკეტია. png უდანაკარგოა და უზარმაზარი; jpg-q85 რელიეფისთვის ვიზუალურად კარგია და ზომის მცირე ნაწილია.
  • zoomoutperiod და tileupdatedelay სამუშაოს ჯგუფავს და არა იმ წამს აკეთებს, როცა ბლოკი იცვლება.

თითოეული world-ის რუკების განსაზღვრებები worlds.txt-ში ცხოვრობს და templates საქაღალდის შაბლონებიდან აიგება. ნაგულისხმევი ნაკრები თითოეულ world-ს აძლევს ბრტყელ 2D რუკას, იზომეტრიულ "surface" რუკასა და გამოქვაბულების რუკას. იზომეტრიული ამ ოჯახის ძვირი წევრია როგორც რენდერის დროით, ისე დისკზე tile-ებით, ამიტომ თუ მხოლოდ მიმოხილვა გინდოდა, წაშალე ის world-ის განსაზღვრებიდან და ბრტყელი რუკა დატოვე. მარტო ამ გადაწყვეტილებას შეუძლია იყოს განსხვავება რამდენიმე ასეულ მეგაბაიტსა და რამდენიმე გიგაბაიტს შორის.

რენდერი კონსოლიდან იმართება:

bash
$ dynmap fullrender world$ dynmap radiusrender 3000$ dynmap cancelrender world$ dynmap pause all$ dynmap stats

radiusrender წრეს რენდერავს შენს პოზიციასთან, რაც თითქმის ყოველთვის ის არის, რაც სინამდვილეში გინდა - შეუზღუდავი world-ის სრული რენდერი გაგრძელდება მანამ, სანამ დისკი არ შეივსება. pause all ჩერდება როგორც სრულ, ისე ინკრემენტულ რენდერს, რაც გადაუდებელი მუხრუჭია, როცა რენდერი ცოცხალ სერვერს აზიანებს.

Dynmap-ს ასევე შეუძლია tile-ების ფაილურ სისტემაში შენახვის ნაცვლად მონაცემთა ბაზაში შენახვა. თამაშის გეგმაზე, ერთი ბაზის სლოტითა და მილიონობით პატარა tile-ით, ეს ფასს გადააქვს და არ აქრობს და იშვიათად არის სწორი კომპრომისი. მისი web chat კომპონენტი უმეტეს build-ში ნაგულისხმევად გამორთულია და უნდა დარჩეს ასეთად, თუ მას ვინმე არ მოდერირებს; საჯარო URL-ზე ავტენტიფიკაციის გარეშე chat ყუთი ზუსტად იმას იზიდავს, რასაც მოელი.

BlueMap-ის ინსტალაცია და კონფიგურაცია#

BlueMap პირველ გაშვებაზე განზრახ უარს იტყვის რამის კეთებაზე. მას ბლოკის ტექსტურებისთვის ოფიციალური Minecraft-ის client jar სჭირდება და ნებართვის გარეშე მას არ მოიძიებს:

plugins/BlueMap/core.conf
accept-download: truerender-thread-count: 1metrics: true

დააყენე accept-download true-ზე, გადატვირთე და ის რესურსებს ჩამოტვირთავს და დაიწყებს. render-thread-count განსაზღვრავს, რამდენი thread აკეთებს რენდერს. ის ნაგულისხმევად ბევრბირთვიანი მანქანისთვის გონივრულ მნიშვნელობაზეა და container-ზე, რომელსაც CPU-ს მკაცრი ლიმიტი აქვს, ეს ნაგულისხმევი არასწორია: ეს thread-ები იმავე წილ CPU-ს ხარჯავენ, რომელიც game thread-ს სჭირდება. 1-2 vCPU-ზე დააყენე 1 და შეეგუე, რომ პირველი რენდერი უფრო დიდხანს გაგრძელდება.

web სერვერი ცალკეა:

plugins/BlueMap/webserver.conf
enabled: trueport: 25581webroot: "bluemap/web"

პორტი შენს მეორე allocation-ზე დააყენე და bind address 0.0.0.0-ზე - ამის გასაღების სახელი მთავარ ვერსიებს შორის შეიცვალა, ამიტომ ფორუმის პოსტიდან კოპირების ნაცვლად ფაილში კომენტარები წაიკითხე.

თითოეული world-ი maps/-ის ქვეშ ფაილს იღებს და იქ ორი პარამეტრი უფრო მეტ სამუშაოს ზოგავს, ვიდრე რაიმე სხვა. min-inhabited-time გამოტოვებს chunk-ებს, რომლებშიც არავის რეალურად დროს არ გაუტარებია, რაც შესწავლილ, მაგრამ ცარიელ world-ზე რენდერის უმეტესობას აშორებს. ვერტიკალური დიაპაზონის შეზღუდვა მინიმალური და მაქსიმალური Y პარამეტრებით BlueMap-ს უშლის ხელს, ააგოს გეომეტრია bedrock-ისა და ცის, რომელსაც არავინ შეხედავს.

ბრძანებები /bluemap-ის ქვეშაა. მისი მარტო გაშვება ბეჭდავს რენდერის პროგრესსა და ქვებრძანებების სიას, რომელსაც შენი ვერსია მხარს უჭერს; reload, freeze (რუკის განახლების შეჩერება მისი წაშლის გარეშე) და purge (რუკის დარენდერებული მონაცემების წაშლა) ისინია, რომლებსაც გამოიყენებ. რადგან რენდერი მთავარი thread-იდან გარეთ მუშაობს, BlueMap ჩვეულებრივ MSPT-ში არ გამოჩნდება, მაგრამ CPU-ში გამოჩნდება - ამიტომ თუ TPS რენდერისას ეცემა, გააკეთე profiling --thread *-ით, როგორც აღწერილია Minecraft-ის lag-ის დიაგნოსტიკა spark-ით-ში.

squaremap, იაფი ვარიანტი#

squaremap მხოლოდ Paper-ისთვისაა და მხოლოდ ბრტყელია და ისე ინსტალირდება, როგორც ნებისმიერი სხვა plugin. მისი კონფიგურაცია ჩვეულებრივი YAML-ია:

plugins/squaremap/config.yml
settings:  internal-webserver:    enabled: true    bind: 0.0.0.0    port: 25582

თითოეული world-ის პარამეტრები იმავე ფაილში ქვემოთ ცხოვრობს default ბლოკისა და თითო world-ის ბლოკის ქვეშ, ამიტომ შეგიძლია overworld დარენდერო და end გამოტოვო. ბრძანებები Dynmap-ის იმავე ნიმუშს მიჰყვება:

bash
$ squaremap fullrender world$ squaremap radiusrender 3000$ squaremap cancelrender world$ squaremap resetmap world$ squaremap reload

resetmap world-ის tile-ებს შლის და ჯერ დადასტურებას ითხოვს, რაც არასწორი პარამეტრებით გაკეთებული რენდერიდან გამოსასწორებლად სწორი გზაა. თუ შენი გეგმა Starter ან Standard დონისაა და ძირითადად გინდა ნახო, სად არის ყველა და რამდენად გაიშალა ბაზების გავრცელება, ეს არის plugin, რომელიც უნდა დააინსტალირო. ის იმავე ფართობს გაცილებით სწრაფად დარენდერებს და world-სთვის დისკს დაგიტოვებს.

რა ჯდება რენდერი CPU-ში, მეხსიერებასა და დისკზე#

სამი ცალკე ბიუჯეტი, და ხალხი ჩვეულებრივ მხოლოდ ერთზე ფიქრობს.

CPU. პირველი რენდერი ძვირი ნაწილია. Dynmap სერვერის thread-ებზე რენდერავს კონფიგურირებადი throttle-ით; BlueMap და squaremap საკუთარს იყენებენ. container-ზე განსხვავება ნაკლებად მნიშვნელოვანია, ვიდრე ჩანს, რადგან CPU-ს ლიმიტი მთელ პროცესზე ვრცელდება: რასაც რენდერის thread-ები იყენებენ, იმავე წილიდან იღება, რომელიც game thread-ს უნდა. ეს არ არის web რუკის თავიდან არიდების მიზეზი, ეს არის მიზეზი, რენდერი მაშინ გააკეთო, როცა არავინ თამაშობს.

მეხსიერება. სამივე იმავე Java პროცესის შიგნით მუშაობს, რომელშიც სერვერი, ამიტომ მათი სამუშაო ნაკრები იმავე heap-იდან და იმავე container-ის ლიმიტიდან მოდის. 2 GB გეგმაზე world-სა და plugin-ებს ზემოდან tile renderer-ისთვის ადგილი არ არის და ჩავარდნის რეჟიმი არ არის "რუკა ნელია", არამედ "სერვერმა მეხსიერების ლიმიტს მიაღწია და გადაიტვირთა". ზომის შერჩევა არის რამდენი RAM სჭირდება Minecraft სერვერს-ში.

დისკი. ეს არის ის, რომელიც კბენს. tile ხეები რენდერირებული ფართობის პროპორციულად იზრდება და არა მოთამაშეების რაოდენობის, ხოლო world-ს, რომელსაც border არ აქვს, ზედა ზღვარი არ აქვს. 10,000 x 10,000 ბლოკიანი ფართობი 400 region ფაილია; მისგან დარენდერებული tile-ები შეიძლება იყოს რამდენიმე ასეული მეგაბაიტიდან ბრტყელი JPEG რუკით რამდენიმე გიგაბაიტამდე 3D რუკებით PNG ხარისხში. ეს დიაპაზონი მართლა ასეთი ფართოა, რის გამოც სწორი ნაბიჯია, ჯერ პატარა რადიუსი დარენდერო, საქაღალდის ზომა ნახო და ექსტრაპოლაცია გააკეთო.

ოპერაციების თანმიმდევრობა, რომელიც ამ ყველაფერს თავიდან აგარიდებს:

  1. დააყენე world border და pregenerate გააკეთე მის შიგნით, რომ თვითონ world-ს ცნობილი ზომა ჰქონდეს. World border და pregeneration შეიცავს Chunky-ის ბრძანებებს.
  2. გადაწყვიტე, რომელი რუკები გჭირდება სინამდვილეში. მხოლოდ ბრტყელი, მხოლოდ overworld-ისთვის, ლეგიტიმური პასუხია.
  3. გაუშვი 1,000 ბლოკიანი radiusrender და გაზომე, რა შექმნა.
  4. გაზარდე border-მდე, მშვიდ საათზე, throttle-ის ჩართვით.

ბაზებისა და მოთამაშეების რუკიდან დამალვა#

საჯარო ცოცხალი რუკა griefing-ის იარაღია სერვერზე claim-ების გარეშე. ის URL-ის მქონე ნებისმიერს ეუბნება, სად არის ყველა ბაზა და ვინ არის ამჟამად მათგან შორს. პოლიტიკა რენდერამდე გადაწყვიტე და არა მას შემდეგ, რაც ვინმეს საცავი ოთახი დაცარიელდება.

რას გაძლევს თითოეული plugin:

  • Dynmap-ს აქვს /dynmap hide და /dynmap show ცალკეული მოთამაშეებისთვის, ხილვადობისა და დამალული region-ების ლიმიტები თითო world-ზე worlds.txt-ში, რომ ფართობი მთლიანად გამორიცხო, და არჩევითი web login, რომ რუკა ყველასთვის ღია არ იყოს.
  • squaremap-ს აქვს /squaremap hide და /squaremap show და თითო world-ის პარამეტრები იმის გასაკონტროლებლად, რომელი მოთამაშეები ჩანს.
  • BlueMap-ის plugin.conf შეიცავს გადამრთველების ნაკრებს გაუჩინარებული, ქურდულად მოძრავი, დამკვირვებელი და უხილავი მოთამაშეების დასამალად, და ცოცხალი მოთამაშეების ფენა შეიძლება მთლიანად გამოირთოს.

მოთამაშეების დამალვა მარტივი ნახევარია. რელიეფის დამალვა უფრო რთულია, რადგან tile-ები უკვე დარენდერებულია და სტატიკურ ფაილებად მიეწოდება - დამალული region რენდერამდე უნდა გამოირიცხოს, ან მის შემდეგ purge-ით წაიშალოს. თუ შენს სერვერს ბაზების საიდუმლოდ დარჩენა სჭირდება, რეალისტური ვარიანტებია ბრტყელი დაბალი zoom-ის რუკა, რომელიც დეტალს არ აჩვენებს, spawn region-ით შეზღუდული რუკა, ან საერთოდ საჯარო რუკის გარეშე, პერსონალის რენდერით, რომელსაც ლოკალურად ნახავ.

უმეტესი community-სთვის უკეთესი პასუხი საიდუმლოება კი არა, დაცვაა. რუკა პლუს claim plugin პლუს ბლოკების ლოგირება ჯანსაღი კომბინაციაა; მარტო რუკა დაუცველ სერვერზე ცუდი კვირის მომლოდინე პრობლემაა. გრიფინგისგან დაცვა და anti-cheat ამ მხარეს მოიცავს, ხოლო plugin-ების სიის ზოგადი ჰიგიენა არის Paper-ის ოპტიმიზაციის გზამკვლევში.

FAQ#

რომელი web რუკა დავაყენო?

squaremap, თუ შენი გეგმა პატარაა ან ძირითადად მიმოხილვა გინდა. BlueMap, თუ რუკა შენი community-ის გასაყიდი არგუმენტია და მისთვის CPU და დისკი გაქვს. Dynmap, თუ შენ გჭირდება მისი marker API, რადგან სხვა plugin მასზე claim-ებს, ქალაქებს ან მაღაზიებს ხატავს.

შეაფერხებს web რუკა ჩემს სერვერს?

პირველი სრული რენდერი შეაფერხებს, თუ throttle არ დააყენე და მაშინ არ გაუშვი, როცა ვერავინ არის შიგნით. ინკრემენტული განახლებები შემდეგ უმნიშვნელოა და მაყურებლებისთვის tile-ების მიწოდება თითქმის არაფერი ჯდება. ხანგრძლივი ფასი დისკია და არა tick-ის დრო.

შემიძლია რუკა 80-ე პორტზე გავუშვა, რომ URL-ში პორტი არ იყოს?

თამაშის გეგმაზე არა. შენ panel-ის დიაპაზონიდან allocation-ს იღებ და plugin მას უნდა იყენებდეს. URL-დან პორტის მოცილებისთვის წინ რაღაც უნდა ამთავრებდეს HTTPS-ს და რუკაზე გადასცემდეს, რისთვისაც აპლიკაციის ან web გეგმაზე reverse-proxy სლოტია განკუთვნილი.

შემიძლია ქვედომენი რუკაზე მივუთითო?

დიახ, A ჩანაწერით სერვერის მისამართზე, მაგრამ პორტი URL-ში რჩება, რადგან DNS პორტებს არ ატარებს. SRV ჩანაწერები ატარებს და ბრაუზერები მათ იგნორირებენ.

რამდენ დისკს დაიკავებს tile-ები?

ეს დამოკიდებულია რენდერირებულ ფართობზე, renderer-ზე და იმაზე, დატოვე თუ არა 3D რუკები. დარენდერე 1,000 ბლოკის რადიუსი, გაზომე საქაღალდე და გაამრავლე. world border-ის წინასწარ დაყენება არის ის, რაც პასუხგაუცემელ კითხვას პასუხგაცემადად აქცევს.

მუშაობს web რუკები მოდებთან და არა plugin-ებთან?

Dynmap-სა და BlueMap-ს ორივეს აქვს Fabric, Forge და NeoForge build-ები. squaremap მხოლოდ Paper-ის plugin-ია. Paper სერვერზე სამივე plugin-ია და ერთნაირად ინსტალირდება, ფაილების მენეჯერით ან SFTP-ით.


კომენტარები

სრულიად ანონიმურად: ანგარიშის, ელფოსტის და cookie-ის გარეშე. ინახება მხოლოდ სახელი, ტექსტი და დრო - სხვა არაფერი. ბმულების რაოდენობა ლიმიტირებულია.

0/2000