Перейти до змісту

Валідатор карт (Map Validator)

Валідатор карт — це вбудований у nEditor інструмент глибокої діагностики, створений для виявлення прихованих помилок у файлах карт симулятора OMSI 2.

Багато критичних збоїв в OMSI 2 проявляються лаконічними помилками (наприклад, відомою Fehler bei Bereichsprüfung — помилкою виходу за межі масиву), порожнім журналом (logfile.txt) або тайлами, що не завантажуються. Валідатор аналізує структуру файлів карти й точно вказує на конкретні рядки та причини збоїв.

Вікно інструмента Map Validator


1. Запуск та використання

  1. У головному меню nEditor натисніть кнопку Map Validator.
  2. У вікні, що відкрилося, натисніть Select OMSI 2 Map Folder.
  3. Оберіть каталог із картою (наприклад, .../OMSI 2/maps/НазваКарти).
  4. Редактор автоматично виконає багаторівневу перевірку та відобразить звіт у консолі з поділом на інформацію, попередження ([WARN]) та критичні помилки ([ERROR]).

2. Перелік перевірок

A. Цілісність структури каталогів

  • Перевіряє наявність головного файлу конфігурації global.cfg.
  • Перевіряє наявність каталогу TTData (розклади, маршрути та зупинки).

B. Перевірка тайлів [map] та дублікатів

  • Підрахунок тайлів: Перевіряє фізичну наявність на диску всіх файлів .map, оголошених у global.cfg.
  • Виявлення дублікатів: Знаходить повторювані координати (X, Y) у секції [map].
  • Попередження про ризик дедуплікації (Deduplication Risk): > [!WARNING] Чому дублікати тайлів небезпечні? > У багатьох старих картах у global.cfg є дублікати тайлів. Якщо сторонні утиліти видаляють їх, список тайлів скорочується. Якщо розклади в TTData посилаються на вищі індекси, гра відразу аварійно завершується з помилкою Fehler bei Bereichsprüfung!

C. Точки входу [entrypoints] та кватерніони

  • Валідація 3D-кватерніонів обертання:
    • Просторові кватерніони (X, Y, Z, W) мають утворювати одиничний вектор із нормою 1.0.
    • Виявляє пошкоджені значення та компоненти за межами діапазону [-1.0, 1.0].
  • Коректність індексу тайла (tileIndex): Перевіряє, що точка входу вказує на дійсний тайл.
  • Номер об'єкта: Перевіряє, щоб objectNumber не перевищував фактичну кількість об'єктів на тайлі.

D. Узгодженість розкладів та зупинок (TTData)

  • Файл Busstops.cfg: Перевіряє, щоб tileIndex кожної зупинки був у дозволених межах (0 .. ЧислоТайлів - 1).
  • Файл StnLinks.cfg: Перевіряє зв'язки [stnlink] та сегменти [stnlink_entry], виявляє неприв'язані тайли (tileIndex = -1) та перевіряє зупинки from_id і to_id.
  • Файли рейсів *.ttp: Підтверджує наявність усіх станцій у Busstops.cfg.

E. Масштаб текстур землі [groundtex]

  • Виявляє текстури в global.cfg із масштабом понад 255 (наприклад, 300), що спричиняють помилку Fehler bei Bereichsprüfung.

3. Підсумок перевірки

Після завершення сканування відображається підсумок із кількістю критичних помилок (CRITICAL ERRORS), попереджень (Warnings) та підтвердженням успішної перевірки (All checks PASSED).