Перейти к публикации
  • Сейчас на странице   Всего пользователей: 0   (0 пользователей, 0 гостей)

Архивировано

Эта тема находится в архиве и закрыта для публикации сообщений.

sikle

Анатомия доты. Базовый курс.

Рекомендованные сообщения

Vi veni veniversum vivus vici

1. Для начала нам понадобится программа, с помощью которой мы сможем открыть .w3x карту. Её название - RMPQex.

2. Открываем и сразу видим рядом с длинной пустой строчкой кнопку Browse. Ищем путь нашей карты. Далее жмем кнопку Open под строчкой где уже указан путь к карте.

3. Теперь мы видим абсолютно голую карту, т.е здесь всё: от иконок предметов, до анимации снарядов. Внизу жмем кнопку Deobfuscate JASS script... и указываем путь куда нужно распаковать файл в поле Output File - жмем Ок.

4. Мы распаковали общий файл, содержащий скрипты (там триггеры,картинка загрузки,скиллов и вашей мамы).

5. Теперь жмем левее Dump object data и ставим галочки рядом с Unit data, Item data, Ability data, Buff data (можете хоть все галочки поставить, но кому нужно рассматривать код дерева около рошана?). Сделали? Ползем искать файлы. Файлы появятся там, где лежит карта - перетащите её к основному файлу (см.пункт 3). Закрываем.

 

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


0. Предварительно скачайте какой-нибудь совершенный блокнотик, а не юзайте стандартный. Это для корректной и удобной работы. (Я пользуюсь Notepad2)

1. Допустим нам нужно узнать что-нибудь о предмете Ancient Tango of Essifation. Открываем блокнотом файл items.txt, жмем CTRL+F (Найти далее) и вбиваем: "tango", ну или полное название "Ancient Tango of Essifation". Нам подсветили ПОСЛЕДНЮЮ строчку кода предмета, то есть надо подняться выше, чтобы начать сначала. ID предмета должен начинаться с с квадратных скобок. В нашем случае это [i057]

2. Ну тут дело логики, смотрим что нас интересует. Скажем хп предмета. Ага в строчке HP стоит значение 75 (HP=75) (кстати говоря, почти у всех предметов 75 хп, исключение рапира HP=500.000) droppable=1  - значит предмет можно выкинуть етц... Думаю с остальным разберетесь. Цифра 1 после слова это true, собственно 0 - это false.

2. С абилками посложнее будет. Открываем abilities.txt. Будем искать Storm bolt, также вбиваем в поиске и находим id спелла ([A0JB]). Здесь мы увидим лишь небольшую инфу о скилле типа допустимых целей (targs1=air,debris,enemies,ground,neutral,organic). Нам придется открыть главный файлик (который мы вытащили первым ~3.5 MB размера). Открываем и видим кучу букв,цифр и прочую абракадабру  :clown: - это, собственно, вся дота. Копируем наш код [A0JB] и вбиваем в строке поиска. "Текст не найден?" Ну что ж, попробуем строчку ниже айди абилки AHtb (на чем основан скилл. Этот вроде Ability, Human, Thunderbolt). Опа, мы в середине файла. Теперь вы видите все кишки стана свена. Он начинается с надписи function Func2706 takes nothing returns boolean и заканчивается endfunction

full

function Func2706 takes nothing returns boolean

  local trigger loc_trigger01=GetTriggeringTrigger()

  local integer loc_integer01=GetHandleId(loc_trigger01)

  local unit loc_unit01=(LoadUnitHandle(hashtable001,(loc_integer01),(2)))

  local unit loc_unit02=(LoadUnitHandle(hashtable001,(loc_integer01),(17)))

  local integer loc_integer02=GetUnitAbilityLevel(loc_unit01,'AHtb')

  if GetTriggerEventId()!=EVENT_UNIT_DAMAGED then

    call FlushChildHashtable(hashtable001,(loc_integer01))

    call Func0035(loc_trigger01)

  elseif GetEventDamageSource()==loc_unit01 and GetEventDamage()==0 then

    call FlushChildHashtable(hashtable001,(loc_integer01))

    call Func0035(loc_trigger01)

    set loc_trigger01=CreateTrigger()

    set loc_integer01=GetHandleId(loc_trigger01)

    call TriggerRegisterTimerEvent(loc_trigger01,1,true)

    call TriggerAddCondition(loc_trigger01,Condition(function Func2705))

    call SaveUnitHandle(hashtable001,(loc_integer01),(2),(loc_unit01))

    call SaveUnitHandle(hashtable001,(loc_integer01),(17),(loc_unit02))

    call SaveInteger(hashtable001,(loc_integer01),(5),(loc_integer02))

    call SaveEffectHandle(hashtable001,(loc_integer01),(32),(AddSpecialEffectTarget("EnvironmentLargeBuildingFireLargeBuildingFire1.mdl",loc_unit02,"chest")))

    call SetPlayerAbilityAvailable(GetOwningPlayer(loc_unit02),'A1VS',false)

    call Func0179(loc_unit02,'A1VS')

  endif

  set loc_trigger01=null

  set loc_unit01=null

  set loc_unit02=null

  return false

endfunction

. Что дальше? Да ничего, здесь нужны знания триггеров и прочих плохих слов, которые вы можете поискать в гугле, а так пробуйте догадаться по смыслу, как пытаюсь я  :fuckyea:.


 

С остальными файликами тоже самое, желаю удачи  :palevo:


 

 

Почти все стандартные способности зашифрованы подобным образом:

AHbz

A - Ability

H - раса' date=' где применяется способность, в данном случае Human

bz - сокращение обозначаемого спелла, в данном случае Blizzard

ANic - Incinerate

AEev - Evasion

и т.д.[/quote']


Статьи по теме:

 

- Статья о AEfk коде (Ability, Elf, Fan of Knives)


1. Играю на Чене, 9.2k ММР: https://www.twitch.tv/sikle
2. Группа ВК с анонсами и интересной инфой (нет): https://www.vk.com/sikleq

3. Ещё лучше - https://t.me/sikleqq

С августа 2022 рад быть частью Team Spirit в качестве аналитика.

Поделиться сообщением


Ссылка на сообщение

Стена теста. Думаю ни о чем. Не читал.

Поделиться сообщением


Ссылка на сообщение

Спасибо за статью, но у многих пользователей продоты стоит старая "светлая" тема

 

Вот как выглядят твои разноцветные шрифты на такой теме

300939.png

 

Поделиться сообщением


Ссылка на сообщение

Помогло.Благодарю.


R.I.P. Zrya

 

Эклипсес не шутит

Все модераторы - пидарасы.

 

 

 

Он и есть мой бог

АХАХАХА

Вот я весь год пданился и нихуя не делал, ты весь год бегал за какой то пиздой, в итоге нам обоим не дали. И кто тут король?

 

Поделиться сообщением


Ссылка на сообщение

ты бы лучше объяснил как запаковать это всё обратно с изменениями, чтобы корректно работало  :fuckyea:

Поделиться сообщением


Ссылка на сообщение

а ты видимо про, раз уж 2ой день знаешь как код посмотреть  :fuckyea:

 

:palevo::clown::pray:

 


 

<3

Gquevedo-1024x814.jpg

 

 

<3<3

photo.jpg

 

Поделиться сообщением


Ссылка на сообщение

Стена теста. Думаю ни о чем. Не читал.

Думаю, рак. :fuckyea:

 

Автор, не поленился, молодец :palevo:

Поделиться сообщением


Ссылка на сообщение

Спасибо за статью, но у многих пользователей продоты стоит старая "светлая" тема

 

Вот как выглядят твои разноцветные шрифты на такой теме

300939.png

 

розовый заменил на синий

желтый на зеленый

лучше?


1. Играю на Чене, 9.2k ММР: https://www.twitch.tv/sikle
2. Группа ВК с анонсами и интересной инфой (нет): https://www.vk.com/sikleq

3. Ещё лучше - https://t.me/sikleqq

С августа 2022 рад быть частью Team Spirit в качестве аналитика.

Поделиться сообщением


Ссылка на сообщение

Спасибо за статью, но у многих пользователей продоты стоит старая "светлая" тема

 

Вот как выглядят твои разноцветные шрифты на такой теме

300939.png

 

розовый заменил на синий

желтый на зеленый

лучше?

теперь на черном нихуя не видно

Поделиться сообщением


Ссылка на сообщение

Заменил вырвиглазный Blue на Royalblue


Поделиться сообщением


Ссылка на сообщение

ты бы лучше объяснил как запаковать это всё обратно с изменениями, чтобы корректно работало  :fuckyea:

не умею


а ты видимо про, раз уж 2ой день знаешь как код посмотреть  :palevo:

 

:clown::pray: :pray:

 

я знаю ни больше, чем тут написано


1. Играю на Чене, 9.2k ММР: https://www.twitch.tv/sikle
2. Группа ВК с анонсами и интересной инфой (нет): https://www.vk.com/sikleq

3. Ещё лучше - https://t.me/sikleqq

С августа 2022 рад быть частью Team Spirit в качестве аналитика.

Поделиться сообщением


Ссылка на сообщение

О, спасибо, сикл.  :palevo:

Ща будем разбирать  :fuckyea:


Торжество разума в том, чтобы уживаться с теми, у кого этого разума нет. Вольтер.
Чтобы хорошо высыпаться, нужно спать 8 часов в день. И еще столько же ночью.

Поделиться сообщением


Ссылка на сообщение

Почти все стандартные способности зашифрованы подобным образом:

AHbz

A - Ability

H - раса, где применяется способность, в данном случае Human

bz - сокращение обозначаемого спелла, в данном случае Blizzard

ANic - Incinerate

AEev - Evasion

и т.д.


Поделиться сообщением


Ссылка на сообщение

ааааааааа

если в деобфускаторе убрать галки "превращать названия в Func#" и тп, то там еще больший пиздец

все переменные FQ, RT, MP и тд  :fuckyea:

 

 

Я надеюсь, что фрог пишет нормально, а потом прогой перегоняет в такое говно. Иначе  :palevo:


Торжество разума в том, чтобы уживаться с теми, у кого этого разума нет. Вольтер.
Чтобы хорошо высыпаться, нужно спать 8 часов в день. И еще столько же ночью.

Поделиться сообщением


Ссылка на сообщение

и это будет в конкурсе? :palevo::fuckyea:


5980bc8cf716.png

 

Мой Хвост

327558.gif

 

Поделиться сообщением


Ссылка на сообщение

и это будет в конкурсе? :palevo::fuckyea:

что-то связанное с этим

считай это за подсказку


1. Играю на Чене, 9.2k ММР: https://www.twitch.tv/sikle
2. Группа ВК с анонсами и интересной инфой (нет): https://www.vk.com/sikleq

3. Ещё лучше - https://t.me/sikleqq

С августа 2022 рад быть частью Team Spirit в качестве аналитика.

Поделиться сообщением


Ссылка на сообщение

интересно. Спасибо автору

Поделиться сообщением


Ссылка на сообщение

Спасибо за статью, но у многих пользователей продоты стоит старая "светлая" тема

 

Вот как выглядят твои разноцветные шрифты на такой теме

300939.png

 

розовый заменил на синий

желтый на зеленый

лучше?

Да теперь на светлой теме смотрится идеально.

Спасибо, если и на черной смотрится также.

Поделиться сообщением


Ссылка на сообщение

ааааааааа

если в деобфускаторе убрать галки "превращать названия в Func#" и тп, то там еще больший пиздец

все переменные FQ, RT, MP и тд  :fuckyea:

 

 

Я надеюсь, что фрог пишет нормально, а потом прогой перегоняет в такое говно. Иначе  :clown:

jasscraft же  :palevo:


1. Играю на Чене, 9.2k ММР: https://www.twitch.tv/sikle
2. Группа ВК с анонсами и интересной инфой (нет): https://www.vk.com/sikleq

3. Ещё лучше - https://t.me/sikleqq

С августа 2022 рад быть частью Team Spirit в качестве аналитика.

Поделиться сообщением


Ссылка на сообщение

×
×
  • Создать...