Jump to content

Extra tools/ru: Difference between revisions

From DDraceNetwork
Lolipod (talk | contribs)
Created page with "''Доступно с версии: DDNet 9.0''"
No edit summary
 
(125 intermediate revisions by 6 users not shown)
Line 1: Line 1:
<languages/>
<languages />
'''''Дополнительные утилиты''''' предназначены для некоторых задач, не связанных с игровым процессом, по типу оптимизации карт для мапперов, или отладки и тестирования для разработчиков. Эти утилиты должны запускаться из command-line интерфейса (вроде Командной строки в Windows или Терминала в системах на базе ядра Linux) either by adding their containing directory to the PATH variable or by running directly from the containing directory.


'''''Дополнительные утилиты''''' предназначены для некоторых задач, не связанных с игровым процессом, по типу оптимизации карт для мапперов, или отладки и тестирования для разработчиков. Эти утилиты должны запускаться из консольного интерфейса (вроде Командной строки в Windows или Терминала в системах на базе ядра Linux) либо путем добавления содержащего их каталога в системную переменную PATH, либо путем запуска непосредственно из содержащего каталога.


<div lang="en" dir="ltr" class="mw-content-ltr">
<span id="Getting_the_extra_tools"></span>
== Getting the extra tools ==
== Получение дополнительных инструментов ==
</div>


Эти утилиты '''не''' поставляются в комплекте с бинарными файлами DDNet со [https://ddnet.org/downloads/страницы загрузки]. Having that said, extra tools mapping-related can be download for different platforms in the Downloads page, under the name "Graphics Tools".
Эти утилиты '''не''' поставляются в комплекте с бинарными файлами DDNet со [https://ddnet.org/downloads/ страницы загрузки]. При этом дополнительные инструменты, связанные с маппингом, можно скачать для различных платформ на странице "Загрузки" под названием "Графические инструменты".


<div lang="en" dir="ltr" class="mw-content-ltr">
Эти и другие дополнительные инструменты (перечисленные ниже) можно найти на [https://github.com/ddnet/ddnet GitHub] в каталоге [https://github.com/ddnet/ddnet/tree/master/src/tools src/tools].
These and other extra tools (listed below) can be found on the [https://github.com/ddnet/ddnet DDNet source code] under [https://github.com/ddnet/ddnet/tree/master/src/tools src/tools] directory.
</div>


<span id="List_of_extra_tools"></span>
== Список дополнительных инструментов ==


<div lang="en" dir="ltr" class="mw-content-ltr">
Смотрите ниже список и описание инструментов.
== List of extra tools ==
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
<span id="config_retrieve"></span>
See below the list and description of the tools.
=== config_retrieve ===
</div>
 
config_retrieve ''Имя_карты''
 
Извлекает конфигурацию, встроенную в файл карты DDNet ''map_file'' и сохраняет ее в файле конфигурации карты DDNet с тем же именем (например, "Kobra 4.map" возвращает "Kobra 4.cfg").
 
''Доступно с версии: DDNet 9.0''


<span id="config_store"></span>
=== config_store ===


<div lang="en" dir="ltr" class="mw-content-ltr">
config_store ''Имя_Карты''
=== config_retrieve ===
</div>


  <div lang="en" dir="ltr" class="mw-content-ltr">
Сохраняет конфигурацию из файла конфигурации карты в файл ''map_file''.  Оба файла конфигурации и карты должны иметь одинаковое имя в одном каталоге, иначе операция завершится неудачей.
config_retrieve ''map_file''
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Если нет разницы между конфигурацией для сохранения и конфигурацией, встроенной в карту, то операция будет отменена с сообщением <code>configs coincide, not updating map</code>.
Retrieves configuration embedded in a DDNet map file ''map_file'' and stores it in a DDNet map configuration file with same filename (e.g. "Kobra 4.map" returns "Kobra 4.cfg")
</div>


''Доступно с версии: DDNet 9.0''
''Доступно с версии: DDNet 9.0''


<span id="crapnet"></span>
=== crapnet ===


<div lang="en" dir="ltr" class="mw-content-ltr">
crapnet
=== config_store ===
 
</div>
Проверяет соединение, устанавливая локальное соединение клиент–сервер и запуская ping между ними. Сообщает об отброшенных пакетах с сообщением <code>dropped packet</code> и об успехах с <code>cfg = "number"</code>, где "number" варьируется от 0 до 2.
 
===demo_extract_chat===
 
demo_extract_chat ''демо_файл''
 
Экспортирует все сообщения из демо-файла, вывод осуществляется в консоль.
 
chat: *** 'nameless tee' entered and joined the game
chat: nameless tee: Hello!
broadcast: Welcome!
teamchat: brainless tee: Hello team!
whisper: -> nameless tee: Hi!


  <div lang="en" dir="ltr" class="mw-content-ltr">
''Available since: DDNet 17.4''
config_store ''map_file''
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
===dilate===
Stores configuration from a map's configuration file into the ''map_file''.  Both configuration and map files must have the same filename in the same directory, otherwise the operation will fail.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
dilate ''image_file1'' [''image_file2'' ... ]
If there is no difference between the configuration to stored and the configuration embedded in the map, then operation will be canceled with message <code>configs coincide, not updating map</code>.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Это графический инструмент, в основном полезный для мапперов. Он заботится о прозрачных областях, чтобы предотвратить появление черных/белых контуров вокруг ваших изображений в игре, что позволяет избежать проблем со смешиванием и mipmap. Более подробную информацию можно найти в разделе [http://wiki.polycount.com/wiki/Edge_padding Edge padding].
''Available since: DDNet 9.0''
</div>


Обратите внимание, что это работает только с файлами изображений RGBA (например, PNG файлы). В файлах JPEG это не будет работать.


<div lang="en" dir="ltr" class="mw-content-ltr">
===dummy_map===
=== crapnet ===
</div>


  <div lang="en" dir="ltr" class="mw-content-ltr">
dummy_map
crapnet
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Создаёт фиктивную, небольшую пустую карту, используемую для ванильной антиспуф-функции (<code>sv_vanilla_antispoof</code>). Подробнее можно посмотреть по ссылке: [https://github.com/ddnet/ddnet/blob/a66379918832e5ad93332bbe0475394b156b5c24/src/engine/shared/network_server.cpp#L371].
Tests connection by setting a client–server connection locally and running ping between them. Reports dropped packets with message <code>dropped packet</code> and successes with <code>cfg = ''number''</code>, where ''number'' varies from 0 to 2.
</div>


===map_convert_07===


<div lang="en" dir="ltr" class="mw-content-ltr">
map_convert_07 ''src_map_file'' ''dest_map_file''
=== dilate ===
</div>


  <div lang="en" dir="ltr" class="mw-content-ltr">
Делает файл <code>''dest_map_file''</code> совместимым с версией Teeworlds 7.x, тогда как иначе он был бы совместим только с версией 6.x. В случае успешного выполнения создаётся корректная карта, совместимая с 07-версией; в противном случае возвращается одно из следующих значений:
dilate ''image_file1'' [''image_file2'' ... ]
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
* Сообщение об использовании, если предоставлены неверные аргументы
It is a graphics tool, mainly useful for mappers. It takes care of transparent areas to prevent black/white outlines around your images ingame, therefore avoiding blending and mipmap issues. See [http://wiki.polycount.com/wiki/Edge_padding Edge padding] for more info.
* <code>failed to open source map</code>, если при открытии карты источников произошла ошибка
</div>
* <code>failed to open destination map</code> если при открытии карты назначения произошла ошибка
* <code>error loading storage</code> если по какой-то причине не удалось открыть хранилище
* <code>failed to open image file</code> если произошла ошибка при открытии PNG-изображения
* <code>invalid image format</code> при неправильном форматировании PNG.


<div lang="en" dir="ltr" class="mw-content-ltr">
''Доступно с версии: DDNet 12.9''
Note this works only in RGBA image files (e.g. PNG files). So, it will fail in e.g. JPEG files.
</div>


===map_create_pixelart===


<div lang="en" dir="ltr" class="mw-content-ltr">
map_create_pixelart <image.png> <img_pixelsize> <input_map> <layergroup_id> <layer_id> <pos_x> <pos_y> <quad_pixelsize> <output_map> [optimize=0|1] [centralize=0|1]
=== dummy_map ===
</div>


  <div lang="en" dir="ltr" class="mw-content-ltr">
Создаёт карту с пиксель-артом на основе квадов из изображения.
dummy_map
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Примечание: используйте тайлы слоя назначения для определения позиций и пиксели для размеров.
Creates a dummy, small empty map to be used to start a server. See [https://github.com/ddnet/ddnet/blob/a66379918832e5ad93332bbe0475394b156b5c24/src/engine/shared/network_server.cpp#L371] for more info.
</div>


Примечание: установите значение img_pixelsize в 0, чтобы использовать максимально возможный размер.


<div lang="en" dir="ltr" class="mw-content-ltr">
Примечание: установите значение quad_pixelsize в 0, чтобы использовать то же значение, что и img_pixelsize.
=== fake_server ===
</div>


  <div lang="en" dir="ltr" class="mw-content-ltr">
Примечание: если у image.png нет идеальной пиксельной сетки, результат может быть некорректным; вручную измените img_pixelsize для улучшения.
fake_server
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Опция optimize пытается уменьшить общее количество квадов (по умолчанию: 1).
Creates a fake server for testing.
</div>


Опции: centralize размещает все точки поворота (пивоты) в одной позиции (значение по умолчанию: 0).


<div lang="en" dir="ltr" class="mw-content-ltr">
===map_diff===
=== map_convert_07 ===
</div>


  <div lang="en" dir="ltr" class="mw-content-ltr">
map_diff ''map_file1'' ''map_file2''
map_convert_07 ''src_map_file'' ''dest_map_file''
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Сравнивает два файла карт и выводит один из следующих результатов:
Makes <code>''dest_map_file''</code> compatible with Teeworlds version 7.x that otherwise it would be compatible '''only''' with Teeworlds version 6.x. If successfully, it creates a valid 07-compatible destination map; otherwise, it returns one of the following:
*нет отличий — означает, что карты идентичны
</div>
*<code>different layer numbers</code> — если в одной карте больше слоёв, чем в другой
*<code>different tile layers</code> — если количество слоёв совпадает, но хотя бы один слой отличается
*в противном случае — индексы и позиции флагов, которые различаются.


<div lang="en" dir="ltr" class="mw-content-ltr">
Если карты идентичны, возвращает 0; в противном случае возвращает 1.
* an usage message if incorrect arguments are provided
* <code>failed to open source map</code> if an error happens when opening the source map
* <code>failed to open destination map</code> if an error happens when opening the destination map
* <code>error loading storage</code> if failed to open storage for some reason
* <code>failed to open image file</code> if error happens on opening PNG image
* <code>invalid image format</code> if incorrectly formatted PNG.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
===map_extract===
''Available since: DDNet 12.9''
</div>


map_extract ''map_file'' [''directory'']


<div lang="en" dir="ltr" class="mw-content-ltr">
Извлекает содержимое файла ''map_file'' в указанную ''directory''. Если дополнительный аргумент ''directory'' не указан, извлекает в текущую директорию.
=== map_diff ===
</div>


  <div lang="en" dir="ltr" class="mw-content-ltr">
===map_find_env===
map_diff ''map_file1'' ''map_file2''
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
map_find_env <input_map> <env_number>
Compares two map files, reporting one of the follow:
* no diff output, meaning the maps are the same
* <code>different layer numbers</code>, if one map has more layers than another
* <code>different tile layers</code>, if the number of layers is the same, but at least one layer is different
* lastly, the index and flags positions that differ.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Находит квады по заданной оболочке и выводит их индекс и позицию в консоль.
If there is no difference between maps, returns 0; otherwise, returns 1.
</div>


Примечание: позиции найденных квадов указаны относительно их слоёв.


<div lang="en" dir="ltr" class="mw-content-ltr">
===map_optimize===
=== map_extract ===
</div>


  <div lang="en" dir="ltr" class="mw-content-ltr">
map_optimize ''source_map_filepath'' [''dest_map_filepath'']
map_extract ''map_file'' [''directory'']
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Оптимизирует файл карты в указанном <code>''source_map_filepath''</code> (см. [https://github.com/ddnet/ddnet/pull/3201 как это работает]) и сохраняет результат в заданном <code>''dest_map_filepath''</code>; если <code>''dest_map_filepath''</code> не указан, путь по умолчанию — <code>out/''source_map_filename''.map</code>, с удалением пути и расширения исходного файла.
Extracts contents from ''map_file'' into the ''directory''. If optional argument ''directory'' is not provided, extracts to the current directory.
</div>


Обрати внимание, что имя встроенных оптимизированных изображений изменяется с <code>''originalname''</code> на <code>''originalname''*cut*''newSHA256''</code> (где <code>''newSHA256''</code> — это новый sha256 встроенного оптимизированного изображения). Оно переименовывается, чтобы было понятно, что изображение было оптимизировано, потому что этот инструмент '''действительно''' вносит изменения в mapres, используемые файлом карты.


<div lang="en" dir="ltr" class="mw-content-ltr">
При неудачном открытии исходного или целевого файла возвращает -1.
=== map_optimize ===
</div>


  <div lang="en" dir="ltr" class="mw-content-ltr">
''Доступно с:'' DDNet 15.5.4
map_optimize ''source_map_filepath'' [''dest_map_filepath'']
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
===map_replace_area===
Optimizes the map file in the <code>''source_map_filepath''</code> given (see [https://github.com/ddnet/ddnet/pull/3201 how it works]) and stores the output in the given <code>''dest_map_filepath''</code>; if <code>''dest_map_filepath''</code> is unset, output path defaults to <code>out/''source_map_filename''.map</code>, stripping the path and the extension of the source file.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
map_replace_area <from_map> <from_x> <from_y> <to_map> <to_x> <to_y> <width> <height> <output_map>
Note the name of the embedded images optimized is changed from <code>''originalname''</code> to <code>''originalname''_cut_''newSHA256''</code> (where <code>''newSHA256''</code> is the new sha256 of the embedded optimized image). It is renamed is to make clear it was optimized because this tool '''will''' make changes in the mapres used by the map file.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Заменяет область одной карты на область из другой карты.
If failed to open source or target file, returns -1.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Примечание: используйте тайлы игрового слоя в качестве ориентира для координат и размеров.
''Available since:'' DDNet 15.5.4
</div>


===map_replace_image===


<div lang="en" dir="ltr" class="mw-content-ltr">
map_replace_image ''map_file1'' ''map_file2'' ''imagename'' ''image_file''
=== map_replace_image ===
</div>


  <div lang="en" dir="ltr" class="mw-content-ltr">
Заменяет изображение ''imagename'', находящееся в карте с именем файла ''map_file1'', на изображение из файла ''image_file'' и сохраняет в карту с именем файла ''map_file2.map''.
map_replace_image ''map_file1'' ''map_file2'' ''imagename'' ''image_file''
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Обрати внимание:
Replaces the image ''imagename'' currently inside the map filename ''map_file1'' with the image filepath ''image_file'', and save into the map filename ''map_file2.map''.
*Оба имени файла карты должны быть указаны относительно папки DDNet по умолчанию пользователя
</div>
*Путь к новому изображению может быть абсолютным или относительным к текущему каталогу


<div lang="en" dir="ltr" class="mw-content-ltr">
===map_resave===
Please note:
* Both map filenames must be relative to user default DDNet folder
* New image filepath can be absolute, or relative to the current directory
</div>


map_resave ''source_map.map'' ''destination_map.map''


<div lang="en" dir="ltr" class="mw-content-ltr">
Считывает карту ''source_map.map'' и записывает её обратно в ''destination_map.map'' с использованием последнего формата карты.
=== map_resave ===
</div>


  <div lang="en" dir="ltr" class="mw-content-ltr">
===packetgen===
map_resave ''map_file'' ''image_file''
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
packetgen
Updates the map file ''map_file.map'' with the provided file ''image_file''.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Генерирует и отправляет сетевые пакеты на 127.0.0.1:8303 (localhost, в порт сервера по умолчанию) для проверки связи с локальным экземпляром сервера.
The error status 255 is returned if 1) a number of arguments different from 2 is provided, 2) if the ''map_file.map'' is not valid, or 3) if ''image_file'' is not a valid image file (e.g. it is a text file); otherwise, return 0.
</div>


===stun===


<div lang="en" dir="ltr" class="mw-content-ltr">
stun ''address''
=== packetgen ===
</div>


  <div lang="en" dir="ltr" class="mw-content-ltr">
Отправляет запрос [[wikipedia:STUN|STUN]] на сервер и проверяет ответ.
packetgen
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
===twping===
Generates and sends network packets to 127.0.0.1:8303 (localhost, in default server port) to test communication with a local server instance.
</div>


twping ''server''[:''port'']


<div lang="en" dir="ltr" class="mw-content-ltr">
Измеряет пинг до сервера teeworlds, запрашивая информацию о сервере. Значение ''port'' по умолчанию — 8303.
=== unicode_confusables ===
</div>


  <div lang="en" dir="ltr" class="mw-content-ltr">
===unicode_confusables===
unicode_confusables ''string1'' ''string2''
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
unicode_confusables ''string1'' ''string2''
Compares ''string1'' with ''string2'' and report if they are "confusable", i.e. if the characters are "equal" and could cause confusion. For this to work, the characters with accents or other things around them are considered the "confusable" with the base character. Therefore, ''aa'' and ''aá'' are confusable (''á'' was considered as ''a''), while ''aa'' and ''ab'' are not.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Сравнивает ''string1'' с ''string2'' и сообщает, являются ли они «путающимися», то есть «равными» символами, которые могут вызвать путаницу. Для этого символы с акцентами или другими элементами вокруг них считаются «путающимися» с базовым символом. Таким образом, ''aa'' и ''aá'' являются путающимися (''á'' считается как ''a''), тогда как ''aa'' и ''ab'' — нет.
If they are confusable, it returns <code>not_confusable=0</code>, otherwise, returns <code>not_confusable=1</code>.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Если они являются путающимися, возвращает <code>not_confusable=0</code>, в противном случае возвращает <code>not_confusable=1</code>.
''Available since: DDNet version 10.3.5''
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
''Доступно с версии: DDNet 10.3.5''
''New in DDNet version 12.9:'' Unicode 12.0 support and the tool name was renamed from ''confusables'' to ''unicode_confusables''.
</div>


''Новое в DDNet 12.9:'' поддержка Unicode 12.0, и имя инструмента было переименовано с ''confusables'' в ''unicode_confusables''.


<div lang="en" dir="ltr" class="mw-content-ltr">
===uuid===
=== uuid ===
</div>


  <div lang="en" dir="ltr" class="mw-content-ltr">
uuid ''name''
uuid ''name''
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Выводит uuid для заданного ''name''.
Prints uuid for the provided ''name''.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Система uuid была реализована так, чтобы её могли легко расширять независимые разработчики без коллизий, чего не позволяла старая система с возрастающими целыми числами. Это работает для сообщений движка и игры, элементов снимков и событий.
The uuid system was implemented to be easily extended by independent authors without collisions, something that the old system – with increasing integers – did not allow. This works for engine and game messages, snapshot items and events.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
Завершает работу с кодом ошибки 255, если ''name'' не указан.
Exits with error status 255 if ''name'' is not provided.
</div>


<div lang="en" dir="ltr" class="mw-content-ltr">
''Доступно с версии: DDNet 10.6.1''
''Available since: DDNet 10.6.1''
</div>

Latest revision as of 14:00, 15 June 2025

Дополнительные утилиты предназначены для некоторых задач, не связанных с игровым процессом, по типу оптимизации карт для мапперов, или отладки и тестирования для разработчиков. Эти утилиты должны запускаться из консольного интерфейса (вроде Командной строки в Windows или Терминала в системах на базе ядра Linux) либо путем добавления содержащего их каталога в системную переменную PATH, либо путем запуска непосредственно из содержащего каталога.

Получение дополнительных инструментов

Эти утилиты не поставляются в комплекте с бинарными файлами DDNet со страницы загрузки. При этом дополнительные инструменты, связанные с маппингом, можно скачать для различных платформ на странице "Загрузки" под названием "Графические инструменты".

Эти и другие дополнительные инструменты (перечисленные ниже) можно найти на GitHub в каталоге src/tools.

Список дополнительных инструментов

Смотрите ниже список и описание инструментов.

config_retrieve

config_retrieve Имя_карты

Извлекает конфигурацию, встроенную в файл карты DDNet map_file и сохраняет ее в файле конфигурации карты DDNet с тем же именем (например, "Kobra 4.map" возвращает "Kobra 4.cfg").

Доступно с версии: DDNet 9.0

config_store

config_store Имя_Карты

Сохраняет конфигурацию из файла конфигурации карты в файл map_file. Оба файла конфигурации и карты должны иметь одинаковое имя в одном каталоге, иначе операция завершится неудачей.

Если нет разницы между конфигурацией для сохранения и конфигурацией, встроенной в карту, то операция будет отменена с сообщением configs coincide, not updating map.

Доступно с версии: DDNet 9.0

crapnet

crapnet

Проверяет соединение, устанавливая локальное соединение клиент–сервер и запуская ping между ними. Сообщает об отброшенных пакетах с сообщением dropped packet и об успехах с cfg = "number", где "number" варьируется от 0 до 2.

demo_extract_chat

demo_extract_chat демо_файл

Экспортирует все сообщения из демо-файла, вывод осуществляется в консоль.

chat: *** 'nameless tee' entered and joined the game
chat: nameless tee: Hello!
broadcast: Welcome!
teamchat: brainless tee: Hello team!
whisper: -> nameless tee: Hi!

Available since: DDNet 17.4

dilate

dilate image_file1 [image_file2 ... ]

Это графический инструмент, в основном полезный для мапперов. Он заботится о прозрачных областях, чтобы предотвратить появление черных/белых контуров вокруг ваших изображений в игре, что позволяет избежать проблем со смешиванием и mipmap. Более подробную информацию можно найти в разделе Edge padding.

Обратите внимание, что это работает только с файлами изображений RGBA (например, PNG файлы). В файлах JPEG это не будет работать.

dummy_map

dummy_map

Создаёт фиктивную, небольшую пустую карту, используемую для ванильной антиспуф-функции (sv_vanilla_antispoof). Подробнее можно посмотреть по ссылке: [1].

map_convert_07

map_convert_07 src_map_file dest_map_file

Делает файл dest_map_file совместимым с версией Teeworlds 7.x, тогда как иначе он был бы совместим только с версией 6.x. В случае успешного выполнения создаётся корректная карта, совместимая с 07-версией; в противном случае возвращается одно из следующих значений:

  • Сообщение об использовании, если предоставлены неверные аргументы
  • failed to open source map, если при открытии карты источников произошла ошибка
  • failed to open destination map если при открытии карты назначения произошла ошибка
  • error loading storage если по какой-то причине не удалось открыть хранилище
  • failed to open image file если произошла ошибка при открытии PNG-изображения
  • invalid image format при неправильном форматировании PNG.

Доступно с версии: DDNet 12.9

map_create_pixelart

map_create_pixelart <image.png> <img_pixelsize> <input_map> <layergroup_id> <layer_id> <pos_x> <pos_y> <quad_pixelsize> <output_map> [optimize=0|1] [centralize=0|1]

Создаёт карту с пиксель-артом на основе квадов из изображения.

Примечание: используйте тайлы слоя назначения для определения позиций и пиксели для размеров.

Примечание: установите значение img_pixelsize в 0, чтобы использовать максимально возможный размер.

Примечание: установите значение quad_pixelsize в 0, чтобы использовать то же значение, что и img_pixelsize.

Примечание: если у image.png нет идеальной пиксельной сетки, результат может быть некорректным; вручную измените img_pixelsize для улучшения.

Опция optimize пытается уменьшить общее количество квадов (по умолчанию: 1).

Опции: centralize размещает все точки поворота (пивоты) в одной позиции (значение по умолчанию: 0).

map_diff

map_diff map_file1 map_file2

Сравнивает два файла карт и выводит один из следующих результатов:

  • нет отличий — означает, что карты идентичны
  • different layer numbers — если в одной карте больше слоёв, чем в другой
  • different tile layers — если количество слоёв совпадает, но хотя бы один слой отличается
  • в противном случае — индексы и позиции флагов, которые различаются.

Если карты идентичны, возвращает 0; в противном случае возвращает 1.

map_extract

map_extract map_file [directory]

Извлекает содержимое файла map_file в указанную directory. Если дополнительный аргумент directory не указан, извлекает в текущую директорию.

map_find_env

map_find_env <input_map> <env_number>

Находит квады по заданной оболочке и выводит их индекс и позицию в консоль.

Примечание: позиции найденных квадов указаны относительно их слоёв.

map_optimize

map_optimize source_map_filepath [dest_map_filepath]

Оптимизирует файл карты в указанном source_map_filepath (см. как это работает) и сохраняет результат в заданном dest_map_filepath; если dest_map_filepath не указан, путь по умолчанию — out/source_map_filename.map, с удалением пути и расширения исходного файла.

Обрати внимание, что имя встроенных оптимизированных изображений изменяется с originalname на originalname*cut*newSHA256 (где newSHA256 — это новый sha256 встроенного оптимизированного изображения). Оно переименовывается, чтобы было понятно, что изображение было оптимизировано, потому что этот инструмент действительно вносит изменения в mapres, используемые файлом карты.

При неудачном открытии исходного или целевого файла возвращает -1.

Доступно с: DDNet 15.5.4

map_replace_area

map_replace_area <from_map> <from_x> <from_y> <to_map> <to_x> <to_y> <width> <height> <output_map>

Заменяет область одной карты на область из другой карты.

Примечание: используйте тайлы игрового слоя в качестве ориентира для координат и размеров.

map_replace_image

map_replace_image map_file1 map_file2 imagename image_file

Заменяет изображение imagename, находящееся в карте с именем файла map_file1, на изображение из файла image_file и сохраняет в карту с именем файла map_file2.map.

Обрати внимание:

  • Оба имени файла карты должны быть указаны относительно папки DDNet по умолчанию пользователя
  • Путь к новому изображению может быть абсолютным или относительным к текущему каталогу

map_resave

map_resave source_map.map destination_map.map

Считывает карту source_map.map и записывает её обратно в destination_map.map с использованием последнего формата карты.

packetgen

packetgen

Генерирует и отправляет сетевые пакеты на 127.0.0.1:8303 (localhost, в порт сервера по умолчанию) для проверки связи с локальным экземпляром сервера.

stun

stun address

Отправляет запрос STUN на сервер и проверяет ответ.

twping

twping server[:port]

Измеряет пинг до сервера teeworlds, запрашивая информацию о сервере. Значение port по умолчанию — 8303.

unicode_confusables

unicode_confusables string1 string2

Сравнивает string1 с string2 и сообщает, являются ли они «путающимися», то есть «равными» символами, которые могут вызвать путаницу. Для этого символы с акцентами или другими элементами вокруг них считаются «путающимися» с базовым символом. Таким образом, aa и являются путающимися (á считается как a), тогда как aa и ab — нет.

Если они являются путающимися, возвращает not_confusable=0, в противном случае возвращает not_confusable=1.

Доступно с версии: DDNet 10.3.5

Новое в DDNet 12.9: поддержка Unicode 12.0, и имя инструмента было переименовано с confusables в unicode_confusables.

uuid

uuid name

Выводит uuid для заданного name.

Система uuid была реализована так, чтобы её могли легко расширять независимые разработчики без коллизий, чего не позволяла старая система с возрастающими целыми числами. Это работает для сообщений движка и игры, элементов снимков и событий.

Завершает работу с кодом ошибки 255, если name не указан.

Доступно с версии: DDNet 10.6.1