RE:NODE

სახელმძღვანელოები11 წუთის საკითხავი

Valheim crossplay სერვერი და Xbox მოთამაშეები

როგორ მუშაობს Valheim-ის crossplay გამოყოფილ სერვერზე: -crossplay არგუმენტი, join code, ადმინების ID-ები პლატფორმის პრეფიქსით, Xbox-ის კონფიდენციალურობა და მოდები.

0 მკითხველი

იმისათვის, რომ Xbox-ისა და Game Pass-ის მოთამაშეები Valheim-ის გამოყოფილ სერვერზე შემოუშვა, გაუშვი ის -crossplay არგუმენტით. ამის შემდეგ სერვერი Microsoft-ის PlayFab სერვისში არეგისტრირებს სესიას, ლოგში ბეჭდავს ექვსნიშნა join code-ს, და ნებისმიერს Steam-ზე, Microsoft Store-ზე ან Xbox Series X|S-ზე შეუძლია ამ კოდით შემოსვლა. ფასი მცირეა, მაგრამ რეალური: crossplay სესიები relay-ით გადის, ადმინებისა და ბანების სიებს პლატფორმის პრეფიქსიანი ID-ები სჭირდება, join code ყოველ restart-ზე იცვლება, და ნებისმიერი მოდი, რომელიც მოთამაშეებს უნდა დააყენონ, კონსოლის მოთამაშეებს გარეთ ტოვებს. ეს სტატია აღწერს, როგორ მუშაობს ეს, როგორ დააყენო, და როდის ჯობს გამორთული დატოვო.

სერვერის ზოგადი დაყენება - გაშვების არგუმენტები, პორტები, შენახვის საქაღალდე - Valheim-ის გამოყოფილი სერვერის გზამკვლევშია. ეს სტატია მხოლოდ crossplay-ის ნაწილს ეხება.

რას ცვლის სინამდვილეში crossplay#

crossplay-ის გარეშე Valheim-ის გამოყოფილი სერვერი Steam-ის თამაშის სერვერია. ის რეგისტრირდება Steam-ის master server-ზე, ჩანს Steam-ზე დაფუძნებულ community სიაში და Steam-ის კლიენტებისგან კავშირებს პირდაპირ თავის თამაშის პორტზე იღებს. მოთამაშეები მათი 17-ნიშნა SteamID64-ით იდენტიფიცირდებიან.

-crossplay-ით სერვერი გადადის სხვა ქსელურ backend-ზე, რომელიც PlayFab-ზეა აგებული - Microsoft-ის სერვისზე, რომელსაც Xbox-ისა და Microsoft Store-ის ვერსიები მულტიპლეერისთვის იყენებენ. აქედან სამი რამ გამომდინარეობს:

  • ნებისმიერი პლატფორმის მოთამაშეს შეუძლია შემოსვლა. Steam, Microsoft Store და Game Pass PC-ზე და Xbox Series X|S ერთსა და იმავე სერვერს იზიარებენ.
  • Join code მთავარი შესასვლელი ხდება. კონსოლის მოთამაშეებს თამაშში IP მისამართისა და პორტის აკრეფა არ შეუძლიათ, ამიტომ სერვერი მის ნაცვლად მოკლე კოდს აქვეყნებს.
  • იდენტობებს პლატფორმის პრეფიქსი აქვს. სერვერი ხედავს Steam_76561198012345678-ს ან Xbox-ის მომხმარებლის ID-ს თავისი პრეფიქსით და არა შიშველ SteamID-ს, და ყოველმა სიის ფაილმა ეს ფორმა უნდა გამოიყენოს.

რა არ იცვლება: სამყაროს ფაილი, სამყაროს მოდიფიკატორები, ათი მოთამაშის ლიმიტი, პაროლის მოთხოვნა და შენახვის ქცევა. მხოლოდ Steam-ის სერვერზე შექმნილი სამყარო crossplay სერვერზე იტვირთება და პირიქით, კონვერტაციის გარეშე.

UDP 2456ექვსნიშნა კოდიSteam-ის მოთამაშეIP-ით ან კოდითXbox / Game PassკოდითPlayFabსესია და relayValheim სერვერი-crossplayსამყაროს ფაილიუცვლელი
crossplay Valheim სერვერში შესვლის ორი გზა

ჩართვა#

შენს მანქანაზე crossplay ერთი არგუმენტია, რომელიც ჩვეულებრივ გაშვების ხაზს ემატება:

bash
$ ./valheim_server.x86_64 -nographics -batchmode \    -name "Longship Crew" -port 2456 -world "Midgard" \    -password "herring-barrel-42" -public 1 -crossplay

მნიშვნელობა არ აქვს - არგუმენტი ან არის, ან არ არის. მოაშორე და გადატვირთე, რომ მხოლოდ Steam-ის სერვერს დაუბრუნდე. სამყაროს ფაილში არაფერი იწერება იმაზე, რომელ რეჟიმში გაეშვა ბოლოს.

პანელზე დაფუძნებულ ჰოსტინგზე იგივე რამ Startup ჩანართის ველია. RE:NODE-ის Valheim სერვერებზე crossplay უკვე ჩართულია, რადგან ჯგუფების უმეტესობას, ვინც კითხულობს, ერთი ადამიანი მაინც ჰყავს Game Pass-ზე; თუ შენსას არ ჰყავს, გამორთვა Startup ჩანართზე ცვლილება და restart-ია.

როცა სერვერი ჩაირთვება, ლოგში სესიის ხაზს დაელოდე. მასში join code-ია:

code
Session "Longship Crew" with join code 483920 and IP 203.0.113.10:2456 is active with 0 player(s)

ზუსტი ფორმულირება შეიძლება თამაშის ვერსიებს შორის შეიცვალოს, მაგრამ კოდი ყოველთვის მასშია. თუ join code საერთოდ არ არის, სერვერი PlayFab-ში არ დარეგისტრირდა; ქვემოთ პრობლემების მოგვარების ნაწილი ხსნის, რატომ.

შესვლა თითოეული პლატფორმიდან#

ყოველ პლატფორმას ერთსა და იმავე სერვერამდე თავისი გზა აქვს.

პლატფორმაროგორ შეხვიდეშენიშვნები
SteamIP-ით, community სიით ან join code-ითIP ყველაზე საიმედოა
Microsoft Store / Game Pass PCJoin code-ით ან community სიითPlayFab-ის გზას იყენებს
Xbox Series X/SJoin code-ითკონსოლზე IP-ის შეყვანა არ არის

ყველა პლატფორმაზე join code მთავარ მენიუში Join Game-ის ქვეშ შეიყვანება, სერვერის ან კოდის დამატების ველში. შეყვანის შემდეგ მოთამაშეს სერვერის პაროლს სთხოვენ, ზუსტად ისე, როგორც Steam-ზე.

Steam-ის მოთამაშეებს crossplay სერვერზეც შეუძლიათ Add Server-ით 203.0.113.10:2456 შეიყვანონ და პირდაპირ დაუკავშირდნენ. ეს სასარგებლოა, როცა PlayFab ნელია, და ეს ერთ-ერთი მიზეზია, რომ თამაშის პორტები ღია დატოვო, მიუხედავად იმისა, რომ კონსოლის მოთამაშეები მათ პირდაპირ არასდროს ეხებიან. თამაშის სერვერის პორტები ხსნის, რატომ აქვს სერვერს თამაშის პორტიც და query პორტიც და რისთვისაა თითოეული.

Community სია crossplay სერვერებს აჩვენებს, მაგრამ ათასობით ჩანაწერითა და სუსტი ფილტრით ის ყველასთვის ყველაზე არასაიმედო შესასვლელია. ჯგუფს კოდი მიეცი.

Xbox ანგარიშის პარამეტრები, რომლებიც შესვლას ბლოკავს#

crossplay-ზე ყველაზე გავრცელებული საჩივარია "Xbox-ის მოთამაშე შეცდომას იღებს, დანარჩენებს კი ყველაფერი რიგზე აქვთ". მიზეზი თითქმის ყოველთვის Xbox ანგარიშზეა და არა სერვერზე.

  • Cross-network play. Xbox-ის კონფიდენციალურობის პარამეტრებში არის ოფცია, შეუძლია თუ არა ანგარიშს cross-network play-ში მონაწილეობა. თუ დაბლოკილია, მოთამაშე ვერ შევა სესიაში, სადაც PC-ის მოთამაშეები არიან. ის ანგარიშის კონფიდენციალურობისა და ონლაინ უსაფრთხოების პარამეტრებშია, და ზუსტი მენიუს გზა dashboard-ის განახლებებთან ერთად იცვლება.
  • ბავშვის ანგარიშები. Microsoft-ის ოჯახურ ჯგუფში ბავშვის ანგარიშს სჭირდება, რომ მშობელმა დაუშვას მულტიპლეერი და cross-network play. მშობელი ამას ოჯახის პარამეტრებიდან ცვლის და არა იმ კონსოლიდან, რომელსაც ბავშვი იყენებს.
  • Xbox-ის ქსელის სტატუსი. თუ Xbox-ის ქსელის სერვისები შეფერხებულია, crossplay-ის PlayFab-ის მხარე შეიძლება ჩავარდეს, მაშინ როცა IP-ით შემოსულ Steam-ის მოთამაშეებს არაფერი ემართებათ. ეს ნიმუში - Steam-ზე ყველაფერი რიგზეა, დანარჩენებს არ გამოსდით - სერვისზე მიუთითებს და არა შენს სერვერზე.
  • Game Pass PC. Microsoft Store-ისა და Game Pass-ის ვერსიები PC-ზე იმავე PlayFab-ის გზით გადიან, რითაც Xbox, და შესასვლელად Xbox app-ს იყენებენ. თუ Xbox app სხვა ანგარიშით არის შესული, ვიდრე მოთამაშე ელოდება, თამაში იმ ანგარიშს იყენებს.

სერვერის ლოგიდან აქედან არაფერი ჩანს, გარდა იმისა, რომ დაკავშირების მცდელობა არ არის. თუ Xbox-ის მოთამაშის მცდელობა ლოგში საერთოდ არ ჩნდება, ჯერ მის ანგარიშს შეხედე და მერე შენს სერვერს.

ადმინები, ბანები და allow სიები პლატფორმის ID-ებით#

მხოლოდ Steam-ის სერვერზე adminlist.txt, bannedlist.txt და permittedlist.txt შიშველ SteamID64-ებს შეიცავს. crossplay სერვერზე სერვერი მოთამაშეებს პლატფორმის პრეფიქსიანი ID-ებით ცნობს, და სიის ფაილები უნდა ემთხვეოდეს.

adminlist.txt
// Steam player on a crossplay serverSteam_76561198012345678// Xbox or Game Pass player, as it appears in the server logXbox_2535412345678901

ID-ის სწორად მიღების ყველაზე უსაფრთხო გზაა, რომ მეხსიერებიდან არ აკრიფო. სთხოვე თითოეულ მოთამაშეს ერთხელ შემოვიდეს, შემდეგ კი მისი ID სერვერის ლოგიდან წაიკითხე, სადაც ყოველი კავშირი იმ იდენტობით იწერება, რომელსაც სერვერი შეადარებს. დააკოპირე ზუსტად, პრეფიქსიანად. თუ სერვერი crossplay-სა და მხოლოდ Steam-ის რეჟიმებს შორის გადადის, Steam-ის ადმინის ID-ის ორივე ფორმა შეინახე ფაილში, რომ უფლებები ორივე შემთხვევაში შეუნარჩუნდეს.

ფაილები სერვერის მუშაობისას ხელახლა იკითხება, ამიტომ ადმინის დამატებას restart არ სჭირდება. არაცარიელი permittedlist.txt სერვერს ყველასთვის, ყველა პლატფორმაზე allow სიად აქცევს; პრივატული ჯგუფისთვის ეს გონივრული არჩევანია, მაგრამ Xbox-ის მოთამაშეების ID-ების დამატების დავიწყება მათი შეუმჩნევლად გარეთ დატოვების გავრცელებული გზაა.

თავად ადმინის უფლებები vanilla-ს მოკლე სიაა: kick, ban, unban, banned, save და კიდევ რამდენიმე, რომლებიც F5-ით გახსნილ თამაშის კონსოლში იკრიფება. ეს კონსოლი PC-ზე კლავიატურის საქმეა - Steam-ზე ის -console გაშვების ოფციით უნდა ჩაირთოს - ამიტომ პრაქტიკაში ადმინის სამუშაოს PC-ის მოთამაშე აკეთებს, ძირითადად Xbox-ის სერვერზეც კი. ბრძანებების სრული ცხრილი გამოყოფილი სერვერის გზამკვლევშია.

მოდები და crossplay#

ეს არის კომპრომისი, რომელიც ჯგუფების უმეტესობისთვის გადამწყვეტია.

Xbox-ის მოთამაშეებს მოდების დაყენება არ შეუძლიათ, ხოლო Microsoft Store-ისა და Game Pass PC-ის ვერსიების მოდირება საუკეთესო შემთხვევაშიც უხერხულია. Valheim-ის მოდების ეკოსისტემა BepInEx-ზე მუშაობს, და გეიმპლეის შემცვლელი მოდების უმეტესობა სერვერზეც და კლიენტზეც ერთი და იმავე ვერსიით უნდა იყოს დაყენებული. ასე რომ:

მოდის ტიპიმუშაობს Xbox-ის მოთამაშეებთან?
მხოლოდ სერვერის მხარე (backup-ები, Discord-ის ხიდები, სერვერის ხელსაწყოები)კი - კონსოლის მოთამაშეები მათ ვერასდროს ხედავენ
მხოლოდ კლიენტის მხარე (UI, რუკის ცვლილებები)კი - ყოველი PC-ის მოთამაშე თავად ირჩევს
ორივე მხარე (კონტენტი, წესები, ახალი ნივთები)არა - კონსოლის მოთამაშეები სიას ვერ დაემთხვევიან
ვერსიის კონტროლი (მოდების შემოწმება შესვლისას)არა - მოდების გარეშე კლიენტს უარყოფს

მოდების ბიბლიოთეკები, რომლებიც შესვლისას ვერსიების დამთხვევას ამოწმებენ, მოდების გარეშე Xbox-ის მოთამაშეს მაშინვე გააგდებენ. თუ კონსოლის მოთამაშეებიან ჯგუფს მოდები უნდა, ერთადერთი მუშა მიდგომაა, მხოლოდ სერვერის მხარის სვეტი დატოვო და მეტი არაფერი. Valheim-ის მოდები BepInEx-ით სერვერზე აღწერს, რომელი მოდი რომელ სვეტში ხვდება და როგორ დააყენო ისინი.

თუ შენი ჯგუფი მთლიანად PC-ზეა, ეს კომპრომისი ქრება, და მასთან ერთად crossplay-ის გაშვების მიზეზების უმეტესობაც.

წარმადობა და რა უჯდება relay#

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

მნიშვნელობა აქვს Valheim-ის ზონების მფლობელობის მოდელში: მოთამაშე, რომელიც ადგილას პირველი შედის, მას ყველასთვის ასიმულირებს. Xbox-ის მოთამაშე relay-ით კავშირზე, რომელიც ბოსის არენაზე პირველი შევიდა, ახლა ყველა დანარჩენისთვის ყოველი მონსტრის მოძრაობის წყაროა. თუ ბრძოლა "რბილად" მხოლოდ კონკრეტული მოთამაშის ყოფნისას იგრძნობა, ეს არის მექანიზმი, და პრაქტიკული გამოსავალია, რომ საუკეთესო კავშირის მქონე მოთამაშე დატვირთულ ადგილებში პირველი შევიდეს. Valheim სერვერის ლაგი ზონების მფლობელობას დეტალურად ხსნის.

მხოლოდ Steam-ის ჯგუფი crossplay-ით არაფერს იგებს და ცოტას კარგავს: დამატებით backend-ს, პრეფიქსიან ID-ებს და restart-ზე დამოკიდებულ join code-ს. თუ ჯგუფში არავინაა Xbox-ზე ან Game Pass-ზე, გამორთული დატოვე.

ვერსიების შეუსაბამობა პლატფორმებს შორის#

Valheim-ის სერვერი და მისი კლიენტები ზუსტად ერთი და იმავე ვერსიის თამაშზე უნდა მუშაობდნენ. crossplay სერვერზე ეს ნიშნავს, რომ Steam-ის, Microsoft Store-ისა და Xbox-ის კლიენტები ყველა იმ ვერსიაზე უნდა იყვნენ, რომელზეც სერვერი მუშაობს.

Iron Gate პატჩებს ჩვეულებრივ ყველა პლატფორმაზე ერთდროულად უშვებს, მაგრამ Xbox-ისა და Microsoft Store-ის build-ები შეიძლება Steam-ზე გვიან მოვიდეს, თუ სერტიფიცირებას მეტი დრო დასჭირდა. ამ შუალედში ან Steam-ის მოთამაშეები, ან Xbox-ის მოთამაშეები ვერ დაუკავშირდებიან, იმის მიხედვით, რომელ ვერსიაზე მუშაობს სერვერი. პრაქტიკული წესი: პატჩის დღეს შეამოწმე, რომ ყოველ პლატფორმას აქვს განახლება, სანამ სერვერს მასზე გადატვირთავ.

ვერსიის მეორე ხაფანგი public test branch-ია. Public test build-ზე განახლებული სერვერი მხოლოდ იმავე test build-ზე მყოფ მოთამაშეებს იღებს, რომლის მიღებაც კონსოლის მოთამაშეებს არ შეუძლიათ. crossplay სერვერი ნაგულისხმევ branch-ზე დატოვე.

ნებისმიერ განახლებამდე გააკეთე backup. RE:NODE-ზე backup-ის სლოტები ყოველ Valheim-ის გეგმაში შედის და აღდგენა ერთი ღილაკია, ამიტომ განახლება, რომელიც ჯგუფს ყოფს, ტიკეტის გარეშე შეიძლება გაუქმდეს - სრული რუტინისთვის იხილე Valheim სერვერის backup-ები და სამყაროს დაზიანება.

პრობლემების მოგვარება#

ლოგში join code არ არის. სერვერი PlayFab-ში არ დარეგისტრირდა. შეამოწმე, რომ -crossplay ნამდვილად არის გაშვების ხაზში (პანელზე - რომ ცვლადი შეინახა), შემდეგ გადატვირთე. თუ მაინც არ გამოდის, PlayFab-ის სერვისი შეიძლება შეფერხებული იყოს; ამასობაში Steam-ის მოთამაშეებს IP-ით შემოსვლა მაინც შეუძლიათ.

Xbox-ის მოთამაშე ზოგად კავშირის შეცდომას იღებს. შეამოწმე მისი cross-network play-ის კონფიდენციალურობის პარამეტრი, შემდეგ - ბავშვის ანგარიშია თუ არა, შემდეგ - Xbox-ის ქსელის სტატუსი. თუ მისი მცდელობა სერვერის ლოგამდე ვერასდროს აღწევს, ბლოკი მის მხარესაა.

ადმინმა crossplay-ის ჩართვის შემდეგ უფლებები დაკარგა. ადმინების სიაში შიშველი SteamID-ია. დაამატე Steam_ პრეფიქსიანი ფორმა სერვერის ლოგიდან.

Join code გუშინ მუშაობდა და დღეს არა. სერვერი გადაიტვირთა და კოდი შეიცვალა. ახალი ლოგიდან ან პანელის კონსოლიდან წაიკითხე.

Steam-ის მოთამაშეები უკავშირდებიან, დანარჩენები არა. ეს ნიმუში PlayFab-ის გზაზე მიუთითებს: სერვისზე ან Xbox ანგარიშებზე. შენი პორტები რიგზეა, თორემ Steam-ის მოთამაშეებიც ვერ შემოვიდოდნენ IP-ით.

Xbox-ის მოთამაშე დაკავშირებისთანავე გააგდეს. სერვერზე მოდი კლიენტის მოდების სიას მოითხოვს. მოაშორე ვერსიის შემმოწმებელი მოდები, ან მიიღე, რომ სერვერი მხოლოდ PC-სთვისაა.

FAQ#

სჭირდებათ თუ არა Xbox-ის მოთამაშეებს რამე განსაკუთრებული crossplay სერვერზე შესასვლელად?

მათ სჭირდებათ თამაშის მიმდინარე ვერსია, ექვსნიშნა join code, სერვერის პაროლი და Xbox ანგარიში, რომელიც cross-network play-ს უშვებს. არაფერი ყენდება, და კონსოლზე მოდები შეუძლებელია.

შემიძლია სერვერს ფიქსირებული join code მივცე?

არა. კოდი ყოველ ჯერზე გენერირდება, როცა სერვერი სესიას არეგისტრირებს, და restart-ზე იცვლება. Steam-ის მოთამაშეებს ყოველთვის შეუძლიათ მისამართი გამოიყენონ; კონსოლის მოთამაშეებს მიმდინარე კოდი სჭირდებათ.

ანელებს თუ არა crossplay სერვერს?

თავად სერვერისთვის არა გაზომვადად. relay-ით შემოსულ მოთამაშეებს შეიძლება ოდნავ მაღალი დაყოვნება ჰქონდეთ, რაც ყველაზე მეტად მაშინ მნიშვნელოვანია, როცა ისინი დატვირთულ ზონას ფლობენ. მხოლოდ Steam-ის ჯგუფმა crossplay გამორთული უნდა დატოვოს, რადგან არაფერს იგებს.

შეიძლება Xbox-ის მოთამაშე ადმინი იყოს?

მისი ID შეიძლება adminlist.txt-ში იყოს და სერვერი უფლებებს მიანიჭებს, მაგრამ ადმინის კონსოლი კლავიატურის ღილაკით იხსნება და სინამდვილეში PC-ის ფუნქციაა. პრაქტიკაში kick-ებსა და ბანებს PC-ის მოთამაშე აკეთებს.

შემიძლია ჩვენი Xbox-ის სამყარო გამოყოფილ სერვერზე გადავიტანო?

არა ისე მარტივად, როგორც Steam-ის სამყარო. Xbox-ისა და Game Pass-ის save-ები კონტეინერულ ფორმატში ინახება და არა ჩვეულებრივ .db და .fwl ფაილებად. როგორ ატვირთო Valheim-ის save აღწერს, რა არის შესაძლებელი და სად შეამოწმო მიმდინარე მეთოდი.


კომენტარები

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

0/2000