Программы
Предназначение:
Работа с картами

pw3i Batcher - Пакетный парсер w3x w3m метаданных (из war3map.w3i war3map.wts)

Автор pw3i.exe v1.02: Hodor
Автор pw3i Batcher 1.0: Firstrun70
v1.0 [25.12.2019]
Требуется pw3i.exe v1.02
Автоматически парсит всю информацию из карты - например Автор, Название, Описание, Количество игроков и т.д.
Методы работы:
1 - работает из текущей папки. Перед запуском нужно скопировать bat файл в папку с картами.
2 - работает с прямым указанием папок. Запускаются из любого другого места.
В программе есть скрытые методы работы 11 12 13 21 22 23 (11=1 21=2), методы 12 13 22 23 выполняются альтернативно с другим логированием работы.
pw3i 1.02 работает только с File format = 18 25 28 и не работает с File format = 8 10 11 15 23 24 26 27 31
Пример работы программы с картой TFT 1.26a ru-(2)EchoIsles.w3x
File format = 25
Number of saves = 31
Editor version = 6051
Map name = TRIGSTR_004 = {Острова Эхо
}
Map author = TRIGSTR_007 = {Blizzard Entertainment
}
Map description = TRIGSTR_006 = {На этих островах, затерянных в бурном море, живут те, кому не нашлось места на материке. Им нечего терять. Не рассчитывайте на теплый прием.
}
Players recommended = TRIGSTR_005 = {1х1
}
Camera bounds:
{
  -6912
  -5376
  6912
  4864
  -6912
  4864
  6912
  -5376
}
Map playable area = 116
Map playable area = 84
Map width = 128
Map height = 96
Flags:
{
  Hide minimap in preview screens = 0
  Modify ally priorities = 0
  Melee map = 1
  Playable map size was large and has never been reduced to medium = 0
  Masked area are partially visible = 1
  Fixed player setting for custom forces = 0
  Use custom forces = 0
  Use custom techtree = 0
  Use custom abilities = 0
  Use custom upgrades = 0
  Map properties menu opened at least once since map creation = 1
  Show water waves on cliff shores = 1
  Show water waves on rolling shores = 1
  Unknown = 0
  Unknown = 1
  Unknown = 1
}
Map main ground type = 76
Loading screen background number = -1
Path of custom loading screen model = 
Map loading screen text = 
Map loading screen title = 
Map loading screen subtitle = 
Used game data set = 0
Prologue screen path = 
Prologue screen text = 
Prologue screen title = 
Prologue screen subtitle = 
Uses terrain fog = 0
Fog start z height = 3000
Fog end z height = 5000
Fog density = 0.5
Fog red value = 0
Fog green value = 0
Fog blue value = 0
Fog alpha value = 255
Global weather id = 1919697234
Custom sound environment = 
Tileset id of the used custom light environment = 0
Custom water tinting red value = 255
Custom water tinting green value = 255
Custom water tinting blue value = 255
Custom water tinting alpha value = 255
Number of players = 2
Players:
{
  Player 1:
  {
    Status = Human
    Race = Human
    Fixed start position (0/1) = 0
    Player name = TRIGSTR_001 = {Игрок 1
}
    Start position X = -5184
    Start position Y = 2944
    Priorities:
    {
      Player 1 = No
      Player 2 = High Priority
      Player 3 = No
      Player 4 = No
      Player 5 = No
      Player 6 = No
      Player 7 = No
      Player 8 = No
      Player 9 = No
      Player 10 = No
      Player 11 = No
      Player 12 = No
      Player 13 = No
      Player 14 = No
      Player 15 = No
      Player 16 = No
      Player 17 = No
      Player 18 = No
      Player 19 = No
      Player 20 = No
      Player 21 = No
      Player 22 = No
      Player 23 = No
      Player 24 = No
    }
  Player 2:
  {
    Status = Human
    Race = Orc
    Fixed start position (0/1) = 0
    Player name = TRIGSTR_003 = {Игрок 2
}
    Start position X = 4672
    Start position Y = 2944
    Priorities:
    {
      Player 1 = High Priority
      Player 2 = No
      Player 3 = No
      Player 4 = No
      Player 5 = No
      Player 6 = No
      Player 7 = No
      Player 8 = No
      Player 9 = No
      Player 10 = No
      Player 11 = No
      Player 12 = No
      Player 13 = No
      Player 14 = No
      Player 15 = No
      Player 16 = No
      Player 17 = No
      Player 18 = No
      Player 19 = No
      Player 20 = No
      Player 21 = No
      Player 22 = No
      Player 23 = No
      Player 24 = No
    }
}
Number of teams = 1
Teams:
{
  Team 1:
  {
    Flags:
    {
      Allied = 0
      Share victory = 0
      Share advanced unit control = 0
      Share vision = 0
      Share unit control = 0
    }
    Players:
    {
      Player 1
      Player 2
    }
    Team name = TRIGSTR_002 = {Сторона 1
}
  }
}
Полезные ссылки по теме:
Защита www.zezula.net/en/mpq/war3maps.html
filelist www.zezula.net/en/mpq/namebreak.html
Парсинг xgm.guru/p/wc3/parsing-w3x
WinMPQ Batcher 1.0 xgm.guru/p/wc3/winmpq-batcher
pw3i Batcher 1.0 xgm.guru/p/wc3/pw3i-batcher
Скачать: pw3i Batcher 1.0
`
ОЖИДАНИЕ РЕКЛАМЫ...
0
37
4 года назад
0
Если будет для линукса - мб пригодится для движка xgm =)
0
6
4 года назад
0
Где это можно применить?
1
18
4 года назад
1
там косяк с флагами карты и помоему ещё кое где
а вообще сурс надо переписать полностью и сделать поддержку json

ScorpioT1000:
Если будет для линукса - мб пригодится для движка xgm =)
у меня лежит готовый w3xlib с API на STL, но я публиковать не хочу, т.к нужно писать API на си чтобы можно было распространять как .dll
если интересно могу в личку скинуть (но я ещё не делал полных тестов рабостопособности)
0
37
4 года назад
0
Можно на си++, да и это только для линковки

А можешь через стандартный ввод-вывод через жсон и не париться с либамм, тут не нужен очень высокий перформанс
0
8
4 года назад
Отредактирован Firstrun70
0
надо переписать полностью и сделать поддержку json
Возможно эти ссылки будут полезны:
Чтобы оставить комментарий, пожалуйста, войдите на сайт.