Поддержать проект

QIWI

Yandex MoneY
  - ID: 41001490991387
Web MoneY
  WMR: R395345647142
  WMZ: Z250187916489
  WME: E287835545053
Наша кнопка








сервер wow 2.4.3



warcraft3.org.ua - Всё для Warcraft 3 и DotA

wc3maps.com - Warcraft III Custom Map Database

LifeInArena - Официальный сайт карты для WarCraft 3

nibbits



Dota AllStars - Russian Dota » Мастерская » Защита карты по деталям

Защита карты по деталям

     Mellon  /  11-07-2019, 09:26  /  Просмотрело: 82 чел.  /  Мастерская 

Защита на карте
В этом уроке мы рассмотрим плюсы и минусы защиты карты и с открытым исходным кодом, а также то, что он может сделать с картой.

Во-первых, давайте посмотрим, что делает ваш типичный протектор карты и что означает каждый из этих шагов:

1) удаляем только файлы World Editor
2) запутываем скрипт карты
3) Widgetize-объекты (только некоторые делают это)
4) повреждение файла MPQ (только некоторые делают это)

Удаление Только Файлов World Editor
При создании карты с помощью World Editor существует два типа файлов:
файлы игры и файлы только для редактора.
Пример игры файл "war3map.j" (скрипты) или "war3map.w3u" ПО (подразделения). Эти файлы необходимы для игры, чтобы играть. Если их нет, то игра работать не будет. Однако есть также файлы, созданные только для World Editor в качестве чтения, как war3map.wtg (триггеры GUI). Эти файлы полностью необязательны для WC3 и могут быть безопасно удалены. Это был самый ранний уровень защиты, обнаруженный в WC3: если вы удалите только все файлы WE, карта не откроется в Редакторе World Editor, если они не будут восстановлены.

Проблема с этой формой защиты заключается в том, что... ну, WE-файлы по определению не нужны. Очевидно, что WC3 не нуждается в них, и любой опытный редактор карт тоже. Имейте в виду, что скрипты, объект, импорт и т. д. есть все необходимое. В принципе, удаление этих файлов только ограничивает его открытие в WE и предотвращает использование графического интерфейса.

Это не имеет значения, так как кто-то достаточно опытный, чтобы редактировать чужую карту, сможет написать JASS. И есть инструменты, которые даже лучше, чем редактор мира для написания JASS. Редактирование объектов также довольно легко. Эта форма защиты останавливает только самых ненормальных хакеров, типа, который войдет и изменит автора на свое имя или что-то в этом роде.

Я полагаю, что стоит остановить этих людей, но, честно говоря, любое редактирование, которое они сделают, будет мусором и никогда не будет воспроизводиться над оригиналом в любом случае.

Запутывание скрипта карты
Теперь мы кое-что поняли. Оптимизатор "Vexorian" запутывает сценарий карты, а это значит, что он испортит названия переменных функций, чтобы сделать их бессмысленными и удалить отступы кода. Возьмите фрагмент VJASS такой:
private function onInit takes nothing returns nothing
set deathTrigger = CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(deathTrigger, EVENT_PLAYER_UNIT_DEATH)
call TriggerAddAction(deathTrigger, function dropItems)
call TriggerAddCondition(deathTrigger, Condition(function isUnitEnemy))
endfunction

Надеюсь, это довольно ясно, что этот триггер будет делать. Это спусковой крючок, который срабатывает, когда враг умирает. Теперь, когда мы запутали его, это будет выглядеть примерно так:
private function pqjf takes nothing returns nothing
set ghdn = CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(ghdn, EVENT_PLAYER_UNIT_DEATH)
call TriggerAddAction(ghdn, function jkmv)
call TriggerAddCondition(ghdn, Condition(function Kdms))
endfunction

Теперь смысл полностью утрачен. Теперь этот уровень защиты действительно имеет смысл. Код становится гораздо труднее читать, когда он запутан. Но вот в чем дело: опытный редактор карт все равно сможет это понять. Приведенных выше вызовов функций достаточно, чтобы понять это. Все, что вам нужно сделать, это найти эти функции и записать свои выводы в блокнот, и вы сможете понять, что он делает. Это может удвоить или утроить время, необходимое для редактирования карты, но это не остановит тех, кто хочет изменить его.

Widgetizing объекты
Я включаю это только для полноты картины. Очень немногие люди делают это. В основном это включает в себя затемнение объектов путем размещения их в электронных таблицах вместо обычных по типу ".w3u" ПО и т. д. файлов, что удивительно, WC3 возможно. Но люди придумали dewidgetizer не только для этого.

Кроме того, он вводит глюки в вашей карте, которая является основной причиной; это редко используется в нынешнее время.

Повреждение файла MPQ
MPQ-это формат файла .w3 и .файлы w3m. Некоторые очень умные люди нашли некоторые конкретные шестнадцатеричные адреса, которые вы можете редактировать в файле MPQ, чтобы сделать наиболее распространенные инструменты чтения MPQ сбоя на нем. Это действительно помешает этим библиотекам открыть MPQ вашей карты. Но, WC3 должен быть в состоянии прочитать карту, чтобы играть. WC3 использует библиотеку storm, которая может открыть любой допустимый файл MPQ. И люди узнали, как использовать эту библиотеку в своих инструментах. Что это значит:

Любые карты, WC3 можно открыть и играть, кто угодно может открыть и прочесть их содержимое

Люди потратили годы на разработку инструмента "corrupted-MPQ", только чтобы был смещён штормом, который уже существовал. Выполнение этого метода только замедлит редактор в течение приблизительно 10 минут, в то время как они реконструируют MPQ или восстанавят его в шестнадцатеричном редакторе. Это может привести к потере импортированных файлов (см. раздел: о формате MPQ), но если кто-то взламывает вашу карту, он не заботится о потере пары импортов.

Комментарии 1

 
/
, , . : -


--------------------
2Ктпн 25 (Ктпн 25ква)

Информация
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.
    Авторизуйтесь со своей учетной записи, чтобы комментировать темы и настроить отображение материалов

Warcraft III: Reforged
Storm Peak's Patch 1.31
alt
Далеко в мирных землях, на вершине Ледяного пика, только снег и мертвая тишина. Но слишком долго замерзшие земли были в мире.
Blizzard Dota (euL)

Скачать: ссылка 1   ссылка 2

Играйте в подлинную версию 4.5c
WoW Footmen 1.20 Patch 1.31
alt
Данная версия достигла альфы
Starcraft II

Данная версия в разработке

Данная версия в разработке

Данная версия в разработке

Данная версия в разработке
alt
На данный момент карта находится в режиме Открытого Бета-Тестирования и доступна на US и EU серверах.
alt
На данный момент карта находится в режиме Открытого Бета-Тестирования и доступна на US и EU серверах.
alt
На данный момент карта находится в режиме Открытого Бета-Тестирования и доступна на US и EU серверах.
alt
На данный момент карта находится в режиме Открытого Бета-Тестирования и доступна на US и EU серверах.
World of Warcraft
alt
На данный момент сервер проекта закрыт и мы в поисках нового сервера.
Warcraft III
Russian Dota 5 BETA 14

Скачать: карта .w3x

Форум: обсуждение   описание

Тестим версию от Maniac

Russian Dota 4.65 BETA 19

Скачать: карта .w3x

Форум: обсуждение   баги

Тестим версию от Mellona Davidova
Данная версия не поддерживается
Russian Dota Arena

Герой: Оленёнок (Хранитель Леса)
Герой: Жрица (Хранитель Озера)
Герой: Иллидарк (Демон Власти)
Герой: Samuro (Мастер Клинка)

Описание: обсуждение   баги

Отличительные черты

Моды: -mm -duel -switch

Тестим версию от Mellona Davidova
Данная версия в разработке
Russian Dota Reborn 1.03

Скачать: карта .w3x   архив .rar

Форум: обсуждение   баги

Играйте в версию от MaSera на 1.24
Russian Dota Classic 1.0

Скачать: ссылка 1   ссылка 2

Играйте в подлинную версию 4.5c
alt
Данная версия достигла альфы
alt
Данная версия достигла релиза
Diablo II
alt
Данная версия достигла релиза
Russian Dota Server
  - Подключиться
Starcraft II
Mellon в SC2: Mellon Davidov 865
Maniac в SC2: Марат Шагиахметов

Diablo III
Mellon в D3: Mellon Davidov 2983

Heroes of the Storm
Mellon в HOTS: Mellon Davidov 2983