Skip to content

Данные: server.xml → data/server.json (награды квестов, требования, таймеры) - #43

Merged
devAsmodeus merged 2 commits into
mainfrom
server-xml
Sep 29, 2026
Merged

devAsmodeus merged 2 commits into
mainfrom
server-xml

Conversation

@devAsmodeus

Copy link
Copy Markdown
Owner

Что сделано

  • tools/parse_config.py разбирает config/server.xml тем же многодокументным загрузчиком, что и config.xml. parse_config(name) пишет data/<name>.json и data/<name>_sections.json.
  • data/server.json (11 МБ) и data/server_sections.json: 21 секция, 11 782 сущности:
    • actions — 2 431 действие, награды всех 2 355 квестов (число совпадает с разбором libinferno.so);
    • requirements (5 105), timings (1 329), contracts (896);
    • серверные варианты buildings, soldiers, units, behaviors;
    • league_stage_technologies, tickers и др.
  • Тесты:
    • синтетический server.xml с атрибутом server="1", config и server не смешиваются;
    • в test_data.py — сводка и эталон v1.3.12 для обоих файлов (21 / 11 782 / 2 431).
  • README: описание server.json и абзац о server.xml в «Модели данных».

Зачем

Задачи экономики (#13) и квестов (#26) теперь можно делать без raw/: данные лежат в git.

Как проверено

  • config.json, config_sections.json и локали после пересборки байт в байт прежние.
  • ruff check . проходит, 78 тестов зелёные.

Первый пункт #30 закрыт. Связка действий с квестами и требованиями остаётся в задаче.

Refs #30

🤖 Generated with Claude Code

devAsmodeus and others added 2 commits September 29, 2026 15:25
…аймеры)

parse_config.py разбирает и server.xml — та же склейка документов
inferno (477 штук) с серверной частью данных, которую читает встроенный
в клиент сервер игры: 21 секция, 11 782 сущности, в том числе 2 431
действие — награды всех квестов. config.json и локали не изменились.
Тесты: синтетический server.xml и эталонные итоги v1.3.12.

Refs #30

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@devAsmodeus
devAsmodeus merged commit 3cccc83 into main Sep 29, 2026
3 checks passed
@devAsmodeus
devAsmodeus deleted the server-xml branch September 29, 2026 12:30
devAsmodeus added a commit that referenced this pull request Sep 30, 2026
…аймеры) (#43)

parse_config.py разбирает и server.xml (477 документов inferno): 21 секция, 11 782 сущности, из них 2 431 действие — награды всех квестов. config.json и локали не изменились. Тесты на синтетике и эталон v1.3.12.

Refs #30
devAsmodeus added a commit that referenced this pull request Sep 30, 2026
…аймеры) (#43)

parse_config.py разбирает и server.xml (477 документов inferno): 21 секция, 11 782 сущности, из них 2 431 действие — награды всех квестов. config.json и локали не изменились. Тесты на синтетике и эталон v1.3.12.

Refs #30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant