Перейти к публикации
Alex

Программа "Батарея! Огонь!"

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

4-я батаре-я-я-я-я! Приготовитс - я-я-я!

Осколочно-фугасным!

Дальность, 30 ! Прицел, 180 ! По противнику!  По команде!  Из всех орудий!

ОГОНЬ!!!!!! :D

 

 

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

 

Я решил компенсировать этот "недостаток" игры. Думаю многие знают, что в Японии в каждом учреждении официально есть комнаты психологической разгрузки, где висит чучело босса (начальника) и на обеденном перерыве можно пойти его и попинать, поплеваться и выместить всю злобу, а на рабочее место вернуться счастливым.

 

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

 

В 1.7.10 есть интересная фича у командного блока (setblock c параметрами) Мы можем с помощью ПК и комблока засетить у среза ствола по направлению оружия активированный динамит с параметрами скорости и направления движения и временем подрыва.

 

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

 

Самих зомби сетят ванильные схемы (спавнеры, раздатчики и прочее) но нужно их ставить в маленьких бункерах или в потолке, куда не может помасть динамит.  Лучше выбрать вариант сетинга ком.блоком программно на определенных случайных координатах тира по площади или в глубину направления атаки.  Варианты сетинга врага и вероятность появления тех или иных зомби зашиваем в программку (конфиг) Это может быть как группа криперов из 10-15 человек, так и полсотни зомби, или с редкой вероятностью сам босс Иссушитель.

 

Мир на сервере я создал отдельный, маленький, ПвП отключено. ТП через варп точку  /warp War.  Тир запривачен админкой.

 

Описание программки:

  • Игрок, одолеваемый жаждой мести, берет с собой пару алмазиков и варпается к тиру.
  • На мониторчике он видит слово PAY
  • Возле монитора есть воронка, в которую он кидает алмазики.
  • При первом же алмазике слово PAY меняется на PLAY и над словом висит или количество алмазиков или выстрелов.
  • Чем больше кинешь, дольше поиграешь.
  • При нажатии на сенсорную кнопку экрана PLAY - понеслась жара!
  • Комблок сетит определенное время суток в мире War, передний край тира подсвечен, зомби на нем не спавнятся.
  • Так же ком.блок чистит мир от излишков зомби в радиусе (/butcher)
  • Стартует таймер игры в зависимости от количества кинутых алмазиков время разное (1алмаз - мин. игры, например, не важно пока)
  • так же начинает работать функция сетинга монстров в глубине тира по направлению атаки.
  • На экран выводится 4 кнопки (прицел  ВВЕРХ ВНИЗ ВПРАВО ВЛЕВО и ОГОНЬ) Есть вариант гашетку вывести на нажимную плиту возле пушки, тогда пушка стреляет, пока есть сигнал. Интервал между выстрелами, 0.2-0.3 секунды.  Кулдаун пушки после 60 выстрелов на 10 секунд с выводом на экран о перезарядке. Во время перезарядки кнопок корректировки огня нет. Кнопки огонь тоже. Пушка остывает.
  • По окончании кулдауна сстреляемдальше.
  • При нажатии на кнопочки ВЛЕВО ВПРАВО ВВЕРХ ВНИЗ   ПК меняет параметр отклонения полета снаряда.
  • Нажатие на кнопку огонь - ПК делает 5 выстрелов и ждет клика опять. При стоянии на плите например - вылетает весь боезапас магазина, пока есть редстоун сигнал.
  • Сверху игрок видит текущие значения отклонения по горизонтали и вертикали.  Изменить их больше чем допустимые, НЕЛЬЗЯ!!!!
  • По окончании таймера ПК переходит в начальное состояние, мир чиститься от монстров, значение коичества алмазиков в автомате устанавливается на 0, параметры отклонения устанавливаются в 0, горит слово PAY.

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

 

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

 

Экран корректировки стрельбы:

 

TzogHSU.png

 

Установка:

АМИ, ком.блок., ПК, сенсорный монитор, трубы БК, воронка, гейт на детектор пролета алмазика, фильт(алмазная труба)

 

Награда:

Медаль "Помощник Администрации" и медаль "На крыльях славы" 2 месяца на команду Полет, Еда, Здоровье. Программа в Зал Славы, если будет работать так, как оговорено.  Заявка в хелперы  без голосования. Пак дорогих ресурсов в игре.

 

Как это все будет выглядеть:

 

2MEqcx4.png

 

X110rXb.png

 

tz9amyp.png

 

xMgK9zE.png

 

HHx4Ujo.png

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


Ссылка на сообщение
Поделиться на других сайтах

Интересно.

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


Ссылка на сообщение
Поделиться на других сайтах

Ну это вроде как не сложно, к КБ команды готовые все у Кронда взять можно.

Кстати, предлагаю вместо пушки использовать мортиру, т.к. её принцип работы и поинтереснее, да и сложность задания увеличится (будет требоваться умная формула, по которой надо расчитывать длительность полёта в зависимости от угла, дальности и т.д. => расчитывать через сколько должен взорваться тнт).

Вот видео для ознакомления:

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


Ссылка на сообщение
Поделиться на других сайтах

Кстати, предлагаю вместо пушки использовать мортиру, т.к. её принцип работы и поинтереснее, да и сложность задания увеличится (будет требоваться умная формула, по которой надо расчитывать длительность полёта в зависимости от угла, дальности и т.д. => расчитывать через сколько должен взорваться тнт).

 

 

Да можно хоть Катюшу сделать или установку залпового огня Град, стреляющую из 12-ти стволов одновременно эдак блоков на 100-150 по толпищам зомбей. Для программиста добавить две кнопки интерфейса (для изменения задержки подрыва) - дело двух минут. И строчку команды КБ поменять. Это же компьютерное управление пушкой, а не компараторами.

 

Вопрос в том, будет ли кто-то делать эту программульку? Вот что меня беспокоит.

  • Like 1

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


Ссылка на сообщение
Поделиться на других сайтах

Долго думал, как сделать ствол орудия поворачивающимся. Не придумал ничего лучше, чем нарисовать его в голопроекторе.

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


Ссылка на сообщение
Поделиться на других сайтах

Долго думал, как сделать ствол орудия поворачивающимся. Не придумал ничего лучше, чем нарисовать его в голопроекторе.

 

Вариант. Но все равно же он там будет немного кубическим и визуальная точность положения ствола будет недостаточной. Да и точку начала моушена динамита все время придется пересчитывать относительно текущего положения среза ствола.

 

Кронд там стреляет в видосе, то дискомфорта при просмотре от того что мортира или пушка не поворачивается, вроде не чувствуется. 

Это уже на усмотрение программистов-гуру, поворачивать ствол или нет.  :D

 

Задача №1 - просто нанести сокрушительный удар по зомбям и снять стресс. B-)

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


Ссылка на сообщение
Поделиться на других сайтах

Долго думал, как сделать ствол орудия поворачивающимся. Не придумал ничего лучше, чем нарисовать его в голопроекторе.

 Можно сделать 3-4 паттерна пушки. Если бы я делал пушку исключительно на КБ, то я бы так и сделал, и хранил паттерны в мире. А с компами круче. Компьютер - это своего рода огромный носитель информации в одном блоке, куда можно занести все паттерны. Если КБ блок компьютером обновляется достаточно быстро, то можно весь тир сделать с помощью одного КБ и одного компьютера.

 Игрок майнкрафта вряд ли будет расстроен пушкой из блоков. Это как старые пиксельные игры: на экране нарисовано два или три пиксела с двумя кадрами анимации, а воспринимаются они как полноценное "высокодетализированное" оружие. И этого достаточно. Стреляешь вправо - пушка вправо, влево - пушка влево, где то по центру - пушка по центру.

 Голопроектор же, скорее будет восприниматься как HD модель, и следовательно требования будут предъявляться к нему жестче. Неосознанно глаз будет цепляться за такие моменты как малое количество вокселей, недостаточности анимации, детализации и бог знает чего еще. По аналогии с тем, что было написано в предыдущем абзаце, голопроектор можно сравнить с новыми играми где одна мутная текстурка в углу уровня портит впечатление от всего игрового левела. А если учесть, что делать анимацию, детализацию, раскраску и прочее нужно вручную, т.е. писать кучу кода, а это еще и множество технических сложностей, по типу сжатия кадров анимации или просчета поворота модельки, да и время разработки такого чуда может затянуться черт знает на сколько.

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


Ссылка на сообщение
Поделиться на других сайтах

 

 

Ну это вроде как не сложно, к КБ команды готовые все у Кронда взять можно.
Кстати, предлагаю вместо пушки использовать мортиру, т.к. её принцип работы и поинтереснее, да и сложность задания увеличится (будет требоваться умная формула, по которой надо расчитывать длительность полёта в зависимости от угла, дальности и т.д. => расчитывать через сколько должен взорваться тнт).

Пытаюсь в сингле выполнить при помощи КБ команды, показанные в видео - реакция нулевая. Может какие то для них разрешения нужны?

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


Ссылка на сообщение
Поделиться на других сайтах

Пытаюсь в сингле выполнить при помощи КБ команды, показанные в видео - реакция нулевая. Может какие то для них разрешения нужны?

В сингле разрешения для КБ не нужны, только режим креатива. Если на сервере то нужен режим креатива, опка и разрешение в конфиге.

 

Кстати, в КБ при малейшей ошибке в NBT данных всяк команда перестает работать. Может где запятую не поставил или закрывающую скобку. В длинных командах можно и пропустить нечаянно. Или просто кусочек реда пропустил, из-за чего вся система КБ не пашет.

Есть вопрос. Какая именно команда не пашет? Или ни одна не работает?

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


Ссылка на сообщение
Поделиться на других сайтах

Дима! От обычной кнопки возле КБ моушен выполняется?  Тильды типа ~ ~ ~ это коры x z y относительно КБ вроде. То есть ~ ~ 5 это координата над КБ вверх плюс 5.  Может там динамит фиг знает, где сетится и не может никуда полететь?

 

П.С. Надо сюда в тему, кстати, накидать все что известно о командах КБ и прочее, сетинге мобов и т.п. Чтобы программист не ломал себе голову этой чепухой, а работал именно над алгоритмом.

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


Ссылка на сообщение
Поделиться на других сайтах

Я экспериментировал с командой summon. Я так понимаю, эту же команду можно вводить и через консоль? Так вот, консоль отвечает "неизвестная команда". Я пробовал на версии майна 1.5. Может дело в версии?

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


Ссылка на сообщение
Поделиться на других сайтах

Я экспериментировал с командой summon. Я так понимаю, эту же команду можно вводить и через консоль? Так вот, консоль отвечает "неизвестная команда". Я пробовал на версии майна 1.5. Может дело в версии?

Именно в версии. /summon появился в 1.7

Изменено пользователем Netins

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


Ссылка на сообщение
Поделиться на других сайтах

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

Могу ли я изменить интерфейс программы на свое усмотрение?

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


Ссылка на сообщение
Поделиться на других сайтах

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

Могу ли я изменить интерфейс программы на свое усмотрение?

 

Конечно можно. Это просто вариант мордочки программы.

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


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

Могу ли я изменить интерфейс программы на свое усмотрение?

могу помочь

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


Ссылка на сообщение
Поделиться на других сайтах

могу помочь

В общем то, всё уже сделано давно. Вопрос только в том, что выстрел производится по нажатию кнопки, а кнопка в админпривате не нажимается. Ни каменная, ни деревянная.

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


Ссылка на сообщение
Поделиться на других сайтах

В общем то, всё уже сделано давно. Вопрос только в том, что выстрел производится по нажатию кнопки, а кнопка в админпривате не нажимается. Ни каменная, ни деревянная.

 

Поставим карпентеровскую, она вроде не ломается, но нажимается в привате. Разрешить можно именно нажатие, но не слом и ванильной деревянной кнопки в привате, но опасно. Беспечные игроки на вход в домик часто ее ставят, если вообще конечно дверь у них есть, а не коммунистический проход, заезжай трактором, бери чО хош :D

 

В идеале, конечно сделать сенсорные кнопки на экране (одиночный,  очередь)

 

Дима, вчера смотрел артиллерию, крутая штука, но нужен экшн. Нужно поиграться со скорострельностью и скоростью подрыва снаряда, если это возможно. Много уходит времени на прицеливание и корректировку, и нет сокрушительной мощи, 2-3 выстрела в секунду хотя бы при стрельбе очередями. Это возможно отбалансить? Полчища врага вроде идут, а скорость стрельбы, как из мушкета. А хочется именно выпустить 5-6 снарядиков очередью в толпу зомбей и разнести их в щепки.

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


Ссылка на сообщение
Поделиться на других сайтах

могу помочь

Сябро, сможешь реализовать стрельбу очередями?

И время подрыва снаряда сейчас постоянная. Нужно исходя из наклона орудия и начальной скорости оценить время полета и подрывать снаряд в момент падения.

  • Like 1

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


Ссылка на сообщение
Поделиться на других сайтах

Тоесть просто вызывать функцию выстрела 6 раз в цикле с задержкой в 0.2 сек?

 

Отправлено с моего AP-104

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


Ссылка на сообщение
Поделиться на других сайтах

Создать пушку? Мы работаем над этим.

 

 

1LDmJhO.png

89IS5Z6.png

D6nWvaj.png

 

 

Изменено пользователем MineUbuntu

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


Ссылка на сообщение
Поделиться на других сайтах

Создать пушку? Мы работаем над этим.

 

Видать, по ночам работаете. Ничего невидно

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


Ссылка на сообщение
Поделиться на других сайтах

Ну с паралелью я умею раотать... только обьясни функции смены напрвления выстрела и самого выстрела...

Хотя сомтри... В фоне, при нажатии кнопки "Выстрел очередью", запускается функция выстрела очередью, как таки не странно, при этом основной интерфейс работает и может изменять координаты полета блока динамита, при изменение новый динами в выстреле полетит в новые координаты. также при нажатии на выстрел очередью кнопки, если они сенсорные, должны посиреть тем самым показывать что стрелять пока нельзя... думаю все...

И еще идея появилась! С каждым выстрелом очереди увеличивается рандомный разброс! Как такая идея?

Допустим рандом по х от 0.1 до 0.5 (также в зависимости от сложности можно сделать) тогда 4 выстрел очереди будет давать погрешность по х = 0.2 * 4 = 0.8

хм... сейчас подумал и пока не придумал как в фоне запустить ф-цию... тоесть там запускается 2 > функций паралельно. а как просто запустить еще одну паралельно с уже запущеной... на OC там так как нужно... запусткатся в фоне с уже запущеной прогой

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


Ссылка на сообщение
Поделиться на других сайтах

Для организации мнгопоточности можно использовать библиотеку thread. Она позволяет запускать функции параллельно основной программе и принудительно прерывать параллельные потоки. 

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


Ссылка на сообщение
Поделиться на других сайтах
Для организации мнгопоточности можно использовать библиотеку thread. Она позволяет запускать функции параллельно основной программе и принудительно прерывать параллельные потоки.

Да, уже посмотрел хорошая штука! Определенно нам подойдет!

И тут у меня появилась идея! В CC есть клавиатура... т.е. просто клавиатура которая просто ставится и просто используется без экрана... все очень просто :) так вот, даем жертве снайперу игроку очки он тыкает на клаву, нажимает, например, "Enter" на очках появляется прицел, все движения миши игнорируются хотя если бы сделать управление мишью было бы вообще айс! а клавиши стрелок управляют направлением полета также можно показывать разброс и получится целое орудие с прицельным огнем

только нужно что бы жертва игрок смотрел на определенный блок дабы центрировать прицел

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


Ссылка на сообщение
Поделиться на других сайтах

Заявка всё ещё актуальна?

 

Дмитрий (Zer0Galaxy)  программу сделал на 99%  Необходимо только было подкрутить скорость стрельбы и добавить экшена. Гашетка была только механическая. Сенсора не было. Ну и весь затык на том, что пушка на КК, с которым у нас ведется война. Проблемно стало кидать алмы черепахе или ПК, так как отрезали билдкрафт. А также врап-модемы не приватятся КК-шные, их легко вырубить правым кликом и соответственно произойдет краш программы.

 

Прога то сделана, и пушка стреляет. Но беды с КК и вынужденная реорганизация модов приостановили немного процесс. Сделать бы  это на ОС и подключить стрельбу к банковскому счету, то и робота не надо, который всасывает алмы за игровую стрельбу. Напиши Зеро в ЛС, что там да как, и меня подключи к разговору.

 

Но Дима, Крутой и Нео сейчас заняты титаническим трудом с глобальной сетью ОпенНЕТ и DNS серверами, и скорее всего, им не до пушки пока.

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


Ссылка на сообщение
Поделиться на других сайтах

К сожалению, Нео нам не помогает. Так бы мы за день всё закончили. Может он пушкой займется?

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


Ссылка на сообщение
Поделиться на других сайтах

Я могу заняться. Всё равно делать нечего.

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


Ссылка на сообщение
Поделиться на других сайтах

Я тоже займусь. Функция выстрела уже готова

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


Ссылка на сообщение
Поделиться на других сайтах

Я тоже займусь. Функция выстрела уже готова

Давай. Попадёшь в вайтлист, а мне помощник нужен. :)

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


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

×