Forum in READ ONLY mode! All questions and discussions on Discord official server, invite link: https://discord.gg/VxsGzJ7

Pomogite s Gump

тут можно задать вопрос по скриптингу
admir
Novice
Novice
Posts: 97
Joined: 28.10.2008 20:44

Re: Pomogite s Gump

Post by admir »

Грин - Бауманка, сразу ощущается :)
Чтоб разобраться в его скрипте пришлось залезть в матанализ :)
А как написано - сказка.
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Re: Pomogite s Gump

Post by Vizit0r »

я с налету не осилил, первая часть с выдиранием координат и т.д. - простая, а дальше...

admir, если тебе этот гамп для теста нужен в стелсе (как будто пришедший от сервера) - свисни.
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
admir
Novice
Novice
Posts: 97
Joined: 28.10.2008 20:44

Re: Pomogite s Gump

Post by admir »

Я вчера 4 часа сидел разбирал что как устроено, вырисовывал цифры по точкам.
Добавлю еще пару а может и тройку проверочных точек чтоб уж наверняка (не 90% попаданий а 1000%).
Правда формулу вычисления угла от грина я так и не смог вывести как у него (возможно из-за скудных методов инжекта пришлось ему извращатся), буду делать свою.

Смысл таков:
Каждая цифра антимкроса строится из 11 точек, которые в строго в определенной последовательности записываются в гампе.
Эти точки проходят незначительное изменение в виде рандомного+- по оси х и у (поэтому линии цифр кривые), и окончательный узор из набора точек поворачивается на коэффициент в одну или другую сторону.
Рандомные изменения каждой точки по осям не значительны, поэтому наглядно видно что у каждой цифры есть прямые углы.

Проверка, которую преложил Грин, заключается в том что скажем у цифры 3 и у цифры и у цифры 6 Точки 2-3-4 образуют разный угол.
У цифры 3 это прямой угол а у 6 - тупой.
Задача найти несколько комбинаций точек для каждой из цифр, образующих прямой угол, так что бы для других цифр углы образуемые этими точками были отличные от прямых.
Косинус прямого угла стремится к нулю, когда косинус острых и тупых углов приближается к 1.
Далее у нас есть 3 варианта ответа, и один из них правильный.
Задаем для каждой из 6 цифр свои уникальные комбинации точек с прямыми углами (у Грина для каждой по 2 проверочных угла, в этом и недостаток и ошибки тк например цифра 8 имеет неоднозначные комбинации по отношению к другим).
Далее исходя из того что нам предложили 3 варианта, отсеиваем остальные 3, и вычисляем для каждой цифры по заданным точкам косинусы углов.
Косинус угла 2х векторов равен скалярному произведению этих векторов, деленному на произведение длин этих векторов.
Правильный вариант будет тот чьи косинусы будут наименьшими, стремится к нулю. (углы прямые)




Виз- ок. Кстати неплохая мысль по поводу отладки работы с гампами)
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Re: Pomogite s Gump

Post by Vizit0r »

я эту неплохую мысль уже 2й год использую для теста гампов - куда проще взять пакет, и скормить его стелсу, чем брать чара, заходить, что-то там делать, долго ждать гампа (который по рендому естественно появится через часа 4, и именно в то время, когда у тебя будет дисконнект, или стелс упадет, или логи не будут вестись и т.д.)
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
admir
Novice
Novice
Posts: 97
Joined: 28.10.2008 20:44

Re: Pomogite s Gump

Post by admir »

Скопируй AbyssAntiMacro.pas в папку /scripts/
Чтобы подключить антимакрос, добавь вначале своего скрипта (на рыбалку, рубку и т.д) после Program lalala

Code: Select all

uses AbyssAntiMacro;
---
Пс, если у тебя уже используется SetEventProc(evIncomingGump,'...'); тогда надо встраивать функции в уже используемую функцию обработки гампов.
Attachments
AbyssAntiMacro.pas
(1.66 KiB) Downloaded 345 times
jackblack
Neophyte
Neophyte
Posts: 29
Joined: 08.02.2013 10:53

Re: Pomogite s Gump

Post by jackblack »

Ogromnoe sposibo admir!
Skript rabotaet zamechatelno! :)
User avatar
Vizit0r
Developer
Developer
Posts: 3958
Joined: 24.03.2005 17:05
Contact:

Re: Pomogite s Gump

Post by Vizit0r »

admir wrote:Скопируй AbyssAntiMacro.pas в папку /scripts/
можно и в script/uses если нехочется захламлять папку скриптов.
"Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете". (с) Макконнелл, "Совершенный код".
Post Reply