AtlasInfo Editor
Load, edit and visualise your AtlasInfo.txt map file with a live canvas preview.
Atlasinfo Editor dla serwerów Metin2
Ręczne edytowanie atlasinfo.txt to zadanie, które spotyka każdego administratora serwera Metin2. Zapominasz, która mapa zaczyna się na jakich globalnych współrzędnych, dwa nowe dungeny się nakładają, gracze teleportują się w próżnię, a trzy godziny później wciąż liczysz offsety na papierze. Atlasinfo Editor zamienia całą pracę w przeciągnięcie mapy na siatce 2D i pobranie nowego pliku.
Co atlasinfo.txt naprawdę robi
Każdy serwer Metin2 przechowuje zwykły plik tekstowy o nazwie atlasinfo.txt, który mówi klientowi, gdzie każda mapa znajduje się w globalnym świecie. Każda linia deklaruje nazwę mapy, jej globalny punkt początkowy X/Y oraz szerokość i wysokość. Klient używa tych liczb do interfejsu mapy świata, logiki teleportacji między mapami oraz wszelkich poleceń teleportacji, które odwołują się do współrzędnych globalnych zamiast współrzędnych dla każdej mapy.
Jeśli współrzędne są czyste, wszystko działa niewidocznie. Jeśli się zderzają (dwie mapy, które nakładają się na globalnej siatce), silnik warp zaczyna błędnie kierować graczy, atlas w grze wyświetla się źle, a nawet polecenia takie jak /warp nie lądują tam, gdzie się spodziewasz.
Dlaczego ręczne edytowanie jest bolesne
- Współrzędne są w setkach tysięcy, a ostatnie dwie cyfry to praktycznie ułamki. Każde obliczenie offsetu wymaga dyscypliny z zerami na końcu.
- Rozmiary map muszą być wielokrotnościami rozmiaru chunka silnika. Błędy o jeden bit po cichu łamią widok mapy.
- Dodanie jednej nowej mapy po uruchomieniu zwykle oznacza przesunięcie co najmniej dwóch sąsiednich map, aby zrobić miejsce. Każde przesunięcie to kolejna szansa na błąd w współrzędnych.
- Nie ma wizualnego sprzężenia zwrotnego. Dowiadujesz się o kolizji dopiero wtedy, gdy gracz teleportuje się w ścianę na żywym serwerze.
Co Editor robi inaczej
Atlasinfo Editor ładuje istniejący atlasinfo.txt i renderuje każdą mapę jako prostokąt na siatce 2D, która odpowiada globalnemu systemowi współrzędnych gry. Od tego momentu:
- Przesuń i zmień pozycję dowolnej mapy, klikając ją i przeciągając, lub wybierając ją z listy bocznej i przesuwając strzałkami dla precyzyjnego umieszczenia piksel po pikselu.
- Detekcja kolizji na żywo oznacza wszelkie dwie mapy, które się nakładają. Dotknięte mapy otrzymują czerwoną ramkę, aby problem był widoczny na pierwszy rzut oka, a edytor nie pozwala na sfinalizowanie układu zawierającego kolizje.
- Skala wizualna odpowiada światu w grze, więc względny rozmiar mapy farmy 4×4 w stosunku do wejścia do dungeonu 1×1 to dokładnie to, co widzisz na ekranie.
- Tworzenie mapy przez przeciągnięcie prostokąta do dodawania nowych map. Przeciągnij mysz nad pusty obszar, ustaw rozmiar, nazwij mapę, gotowe. Kolizje są sprawdzane w czasie rysowania.
- Edycja przez podwójne kliknięcie. Podwójne kliknięcie nazwy mapy na liście bocznej otwiera małe okno dialogowe, w którym można ponownie wpisać nazwę i dokładne wymiary, jeśli przeciąganie nie jest wystarczająco precyzyjne.
Pierwsze kroki
- Kliknij Załaduj swój atlasinfo.txt, aby zaimportować bieżący plik z serwera. Siatka natychmiast wypełnia się każdą mapą, którą aktualnie posiadasz.
- Nie masz pliku pod ręką? Kliknij Załaduj przykładowy atlasinfo.txt. Układ referencyjny oparty na standardowej mapie świata Metin2 się ładuje, abyś mógł eksperymentować bez ryzyka dla rzeczywistego serwera.
- Kliknij dowolną mapę lub wybierz ją z listy bocznej, aby ją wybrać. Użyj strzałek, aby ją przesunąć. Przeciągnij mysz, aby utworzyć nową mapę na pustym obszarze siatki.
- Obserwuj wskaźnik kolizji. Każda mapa z czerwoną ramką nakłada się na sąsiada i wymaga dostosowania, zanim układ będzie gotowy do wysłania.
- Gdy układ jest czysty, kliknij Pobierz Atlasinfo.txt, aby wyeksportować nowy plik. Wrzuć go na serwer, uruchom ponownie, gotowe.
Bonus: Eksport ustawień serwera i sztuczka Warp
Obok pobierania atlasinfo znajduje się przycisk Pobierz ustawienia serwera. Eksportuje fragment konfiguracji serwera, który silnik musi znać, aby poznać granice każdej mapy. Wklej go do konfiguracji serwera, a nowy układ wejdzie w życie bez żadnych dalszych ręcznych edycji.
Jedna sztuczka warta zapamiętania do pracy GM: współrzędne wewnątrz atlasinfo.txt są zapisane z dwoma zerami na końcu, których polecenie /warp nie oczekuje. Jeśli plik mówi, że mapa zaczyna się na globalnych 4096700, 5120300 i chcesz się tam teleportować, usuń ostatnie dwie cyfry z każdej wartości i warp do 40967, 51203. Ta sama współrzędna, inna skala.
Typowe błędy, przed którymi Editor Cię chroni
- Nakładanie nowych map na stare. Ręcznie łatwo jest dodać dungeon na tych samych współrzędnych co istniejąca strefa farmy. Editor nie pozwala na zatwierdzenie.
- Błędne wymiary mapy. Ręcznie możesz wpisać szerokość, która nie jest wielokrotnością chunka, a mapa świata renderuje się z połamanymi narożnikami. Editor wymusza rozmiary ważne dla silnika.
- Zapomniana mapa. Linia przypadkowo usunięta z pliku txt usuwa mapę z atlasu bez usunięcia jej z silnika, tworząc niespójny stan. Editor łapie brakujące wpisy, ponieważ nie byłyby na siatce.
- Dryfowanie współrzędnych po wielu edycjach. Dodanie dziesięciu map przez sześć miesięcy ręcznie zwykle pozostawia układ z niezręcznymi lukami i prawie kolizjami. Załadowanie pliku do editora i wizualne ułożenie go ujawnia dryfowanie w sekundy.
Kiedy Editor się opłaca
Jeśli serwer Metin2 będzie stał w miejscu na zawsze, ręczne edytowanie atlasinfo.txt raz jest w porządku. Ale każdy aktywny prywatny serwer ostatecznie dodaje niestandardowe mapy, dzieli popularną strefę lub zmienia pozycję dungeonu, aby zwolnić miejsce dla nowego obszaru eventów. Pierwszy raz, gdy Atlasinfo Editor złapie kolizję, która by złamała warpy na żywym serwerze, narzędzie opłaciło sobie czas, jaki zajęło jego załadowanie.