Показать сообщение отдельно
Старый 19.10.2017, 14:30   #1
modzilla
Подпольщик AA
Аватар для modzilla
OFFLINE
Регистрация: 17.01.2011
Возраст: 34
Сообщений: 300
Благодарностей:
437 всего
Репутация: 1312

Гайд по создание скрипта на пугало


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

по поводу самой темы, сильно не ругайте, критику восприму хорошо.
Тема ориентированная скорее для таких людей как я, кто не знает с чего начать.
Впервые делаю подобную тему, так как сам пришел к созданию скрипта, без каких-либо подсказок, решил и поделиться с вами именно тем путём как начинал делать я.


Картинки буду прятать в оффтопе(что бы были кликабельны) по другому не получается

В данной теме покажу на примере простенький вариант как делать координатный скрипт без мышки bloody\x7.

Я видел много тем где просто делятся, но ниодной где объясняют как сделать без программ.
На моём примере экран 1280х1024, сажать буду мелкие посадки(70 пикселей)но готовых скриптов я давать вам не буду, а сугубо научу делать быстро\просто и покажу как вообще их делать.


Ищем и берём любую программу на воспроизведение x7/bloody макросов.
Использую я вот этот девайс. Прога естественно не моя, аналогов куча.
Скрытый текст (вы должны войти под своим логином или зарегистрироваться и иметь 50 сообщение(ий)):
У вас нет прав чтобы видеть скрытый текст, содержащейся здесь.
Чтобы его прочитать, вы должны заработать сообщения. Как это сделать бесплатно, описано в правилах форума. Как купить доступ, описано в Платных услугах.

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



Итак. Начнем
Прежде всего надо разобрать, что мы хотим от скрипта.
1: посадка
2: сбор
3:комбинированный (сбор+посадка\посадка+сбор)

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

Поиск координат
!Оффтоп
узнаем центр пугала. На 24х24 и 16х16 пугалах ищем центральную точку.

Далее нужно выровнять персонажа по пугалу.
Включаем отображение имён, что бы была полоска здоровья.
Подходим между двух точек, держа, естественно, саженец в руках, выравниваемся (пример ниже)
проще выравниваться при включенной ходьбе, а не беге
Естественно камера должна быть максимально вверх и отдалена

!Оффтоп

Далее просто медленно шагаем влево\вправо по точкам и проверяем ровно ли мы ходим. Если ровно - значит персонажа выровняли.

Ваш персонаж НЕ является центром экрана
на примере 1280x1024 центр экрана будет x 640 Y 512, а на деле это левее "игрового центра экрана", оным будет х640 х518

Абсолютный центр ниже головы персонажа, а является центром голова персонажа.
!Оффтоп

Как узнать? делим х и y вашего разрешение экрана, а далее методом тыка, с включенной функцией (Ходить по мышке)

Проверка центра персонажа:

включаем перемещение по мышке, вбиваем
Код:
MoveA 640 512 
Left Up
Left Down
и ищем вручную ту точку, при которой персонаж тыкая ровно под себя перестанет двигаться.

Делаем шпаргалку себе на будущее

Я остановился на 640 518.Записываем координату
ШАГ 90
Это значит, что между точками будет ровно 90 пикселей (70 занимает малая посадка) вычисляется тоже всё вручную.

!Оффтоп

Код:
MoveA 640 518 центр

MoveA 730 518 вправо (6)
MoveA 730 428 вправо-вверх(9) 
MoveA 640 428 вверх(8)
MoveA 550 428 влево-вверх(7)
MoveA 550 518 влево (4)
MoveA 550 608 влево-вниз(1)
MoveA 640 608 вниз (2)
MoveA 730 608 вправо-вниз(3)
Почему шаг 90пикселей?
При проверке на посадке вокруг себя, вы обнаружите, что бокс вашего персонажа не ровный. (влево\вправо) можно делать отступ по 70 пикселей, а вверх и вниз необходимо брать 80-92 пикселя.
Да и 90 пикселей позволит вам стоять чуть ниже пугала, что бы начинать посадку и в этом варианте при поиске стартовой точки посадка не будет касаться линии.

Теперь непосредственно создание скрипта на посадку


Выше мы имеем как кординаты по кругу, так и научились выравнивать персонажа по пугалу.
Становимся в центр пугала.
Становимся постоянно вот примерно так, что бы ваш персонаж не касался точки:
!Оффтоп

X=горизонталь
Y=вертикаль
Используя координату "ВВЕРХ" MoveA 640 428 мы имеем начало.
Используем шаг 70, так как персонажа на посадке не будет, и нам нужно стоя на месте садить максимально близко.

для того, что бы идти влево, соответственно нужно от первой координаты
отбавлять шаг 70. просчитываем, прописываем в прогу с саженцем в руках и смотрим.
Код:
MoveA 640 428
Delay 1000
MoveA 570 428
Delay 1000
MoveA 500 428
Delay 1000
MoveA 430 428
Delay 1000
MoveA 360 428
Delay 1000
MoveA 290 428
Delay 1000
MoveA 220 428
Delay 999999999
Теперь задача перевести координаты так, что бы Начиналось всё не с середины, а с конца и повторяем просчитывать вправо, не минусуя 70 пикселей у 640 428, а добавляя, получаем.
Код:
MoveA 220 428
Delay 1000
MoveA 290 428
Delay 1000
MoveA 360 428
Delay 1000
MoveA 430 428
Delay 1000
MoveA 500 428
Delay 1000
MoveA 570 428
Delay 1000
MoveA 640 428
Delay 1000
MoveA 710 428
Delay 1000
MoveA 780 428
Delay 1000
MoveA 850 428
Delay 1000
MoveA 920 428
Delay 1000
MoveA 990 428
Delay 1000
MoveA 1060 428
Delay 99999
Координаты первой линии у нас готовы.
выставляем саженец на любую удобную кнопку
вот пример кнопки Е координата\посадка\
Код:
Модуль нажатия на саженец, посадки и ожидания

KeyDown 69
KeyUp 69
Delay 1000
LeftDown
Delay 150
LeftUp
Delay 1200
Где KeyDown 69
KeyUp 69 - кнопка саженца, в самой программе можно нажать кнопку и получить готовый модуль нажатия.
Соответственно добавляя модуль посадки к каждой координаты, мы получаем готовую посадку на линию

добавляем модуль посадки вверх к координатам не удаляя delay 1000 получаем.
Код:
MoveA 220 428
Delay 1000
KeyDown 69
KeyUp 69
Delay 1000
LeftDown
Delay 150
LeftUp
Delay 1200
Повторяем со всеми координатами. получаем Готовый модуль посадки на линию всего пугала.
Для второй линии копируем еще раз, но вместо 428 -(если вверх) отнимаем 70 пикселей, если вниз - добавляем.
Повторяем по необходимости


Мы разобрали базу как создать простенький скрипт на посадку, слегка позже, будет простенький скрипт на сбор к вышеупомянутом скрипту

Последний раз редактировалось modzilla; 19.10.2017 в 16:12.
 
Ответить с цитированием