Перейти к содержимому

Как играть в трон по сети

  • автор:

Nuclear Throne

Nuclear Throne

Nuclear Throne – быстрый и красочный «рогалик-шутер» от независимой студии Vlambeer, мастеров простого, но увлекательного геймплея. Тематика игры банальна – выживание в постапокалиптическом мире. Надоевших героев-людей заменяют герои-мутанты и герои-киборги с большими стволами наперевес, а коварных зомби замещают пиксельные монстры-рыбы, кровожадные утки и прочая забавная нечисть.

Игра имеет ряд положительных качеств. Выделяются из всей массы: элементы RPG и top-down геймплей. Главный персонаж – мутант, похожий на ящерицу. Он развивается, убивая врагов и получая с них опыт. Каждый поднятый уровень сопровождается увеличением урона и количеством здоровья. По ходу своего действа герой тысячу раз меняет оружие, пробуя весь арсенал: от обычных пистолетов до ядерно-лазерных установок. Красочное буйство на экране дополняется обширным пулом получаемых способностей.

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

Nuclear Throne получила признание зарубежных игроков — в Steam пользовательская оценка держится на высоком уровне. Оценить игру вы сможете сами, а мы посоветуем пройти ее в кооперативе.

Информация о сетевых режимах:
КООПЕРАТИВ: 2
МУЛЬТИПЛЕЕР: 0

Интернет:
Локальная сеть (LAN):
На одном экране (HotSeat):
Возможность бесплатной игры: (клавиатура+геймпад)

Как играть в трон по сети

Грустно нынче иметь игры без онлайн кооператива/мультиплеера. А трон таковым и является.
Но не теперь. Приветствуем мод на онлайн кооператив с множеством плюх!

2

1

1

1

1

В избранное
В избранном
Поделиться
Этот предмет добавлен в избранное.

YellowAfterlife
Не в сети
kirillyan
Не в сети
29 авг. 2016 в 2:35
29 авг. 2016 в 3:58

7,615 уникальных посетителей
295 добавили в избранное

Оглавление руководства

1) Скачивание, установка и удобная интеграция в Стим.

2) Запуск и первоначальная настройка.

3) Все команды.

4) Частозадаваемые вопросы и ответы на них.

Комментарии
1) Скачивание, установка и удобная интеграция в Стим.

Мод абсолютно целиком и полностью бесплатен, но независимым разработчикам тоже, как это случается, нужно как-то выживать в этом бренном мире жить, поэтому от поддержки рублём долларом никто не откажется. И это совсем не пропаганда, Вам показалось.

Собственно, для загрузки свежей версии переходим сюда [yellowafterlife.itch.io] и жмём кнопку, обведенную в красный.

Целесообразно качать наиболее свежую версию (всегда в самом верху), собственно, делаем это!

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

Далее, распаковываем содержимое архива в папку игры и запускаем NTT-Assemble.exe. Тут может возникнуть маленькая проблемка, некоторые антивирусы недолюбливают приложения, что создают другие приложения, в этом нет ничего страшного.

Установка достаточно быстрая, после неё создаётся два файла:

  • «Жёлтый» — для запуска мода.
  • «Красный» — запуск оригинальной игры.

Лично меня это не устроило, я (да и не только) вышел из этого положения так: бэкап переименовал назад в оригинальный трон, моду дал своё название «NuclearThroneTOGETHER.exe», и интегрировал эту версию в Стим как сторонее приложение.

Всё по своим полочкам, но в этом есть и свои недостатки. Например, нельзя делать скриншоты, что грустно. Бывают очень забавные моменты:

На этом всё, мод установлен!

2) Запуск и первоначальная настройка.

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

Собственно, можно сразу жать кнопку «COOP», ибо в соло ничего интересного. Вру, там есть свои интересные моменты.

Приятно поиграть за скелета с самого начала, а не начинать с 7-1 и умирать от одного прыжка собаки. Но тут есть и свои минусы, например, доступна только одна ультра, вторая (что логично, в кого превращаться, если мы изначально вылупились из яйца?)

Так ладно, мы сюда в кооп играть пришли, а не ребусы скелета разгадывать.

  • 1) Локальный кооператив. Тут всё как и в обычном, но со своими приятными особенностями. Полные ультры, возможность смены цвета, программирование начального оружия. Веселье, долой консерватизм.
  • 2) Реплеи. Достаточно странная функция, которая работает в тестовом режиме. По сути — записывает каждую игру (в синглплеере тоже) и даёт возможность пересмотреть, или даже переиграть (!), но не всегда срабатывает так, как хотелось бы.

Выше есть скриншот, этот момент там обведен в синенький.

  • DELAY: 33 — идеально. Игра будет протекать подобно локальному кооперативу.
  • DELAY: 67/DELAY: 100/DELAY: 133 — почти идеально. Может местами фризить, но это скорее редкость.
  • DELAY: 167/DELAY: 200 — дела-то в гору идут. Частенько будет фризить, но в целом — играбельно.
  • DELAY: 233/DELAY: 267/DELAY: 300/DELAY: 333 — добро пожаловать в ад!

3) Все команды.

Команды можно вводить в чате, чат доступен в лобби и во время игры (одиночной в том числе). Логично написать тут, ведь вложенные текстовики в архивах мало кто читает, правда?

/color — изменяет цвет игрока. Касается обводки, рамки со здоровьем, прицела. Синтаксис поддерживает как прямые названия цветов на английском, так и коды. Например: /color red. /color #89F09

/color2 — тоже самое, но только для второго игрока в локальном мультиплеере.

/stat — отображает ФПС и количество объектов.

/sepview — отключает раздельный просмотр. Возврат к истокам оригинального кооператива.

/cwep — меняет стартовое оружие. Поддерживает и номера, и индексы. Например: /cwep 40, /cwep guitar

/bwep — меняет второе стартовое оружие (которого нет по умолчанию ни у кого кроме Стероида)

/pwep — меняет оружие в прото-сундуке, но не на текущем забеге.

/ccrown — меняет стартовую корону. Например: /ccrown crown of blood, /ccrown 10

/hardmode — врубает хардмод.

/timeout [seconds] — время, которое игра будет ожидать отклика от игрока. По умолчанию — .

/outlines — включает/отключает цветную обводку.

/wscale [factor] — меняет размер окна в оконном режиме — на случай, если хочется ровно 2х\3х\4х масштаб окна (особо полезно с встроенными видеокартами, что очень странно рисуют нецелочисленный масштаб).

/wtips [delay in frames] — регулирует время до появления всплывающей подсказки с названием оружий. Например, /wtips 60 поставит задержку в 2 секунды.

/mtips [delay in frames] — регулирует время до появления всплывающей подсказки с описанием мутации. Например, /wtips -3 отключит подсказку вообще.

/portalfx — отключает/включает портальные эффекты при загрузке уровня.

/die — убивает вашего персонажа (если есть Strong Spirit — понижает до 1 ХП)

/revmode [mode name] — меняет систему воскрешения. Синтаксис: default — классическое, игрока можно воскресить, потеря здоровья при «просрочке», soft — упрощенное, игрока можно восресить, но «просрочки» не будет, hard — , legacy — необходимо найти медкит (тот, что спавнится вместо канистры с радиацией если здоровья игрока меньше/равно половине его максимального здоровья) для воскрешения.

/ultras [mode name] — меняет систему ультра-мутаций. Синтаксис: coop — только кооперативные мутации (Gun Bond, Blood Bond), own — только собственные мутации персонажей (при этом если два одинаковых — только один выбор), all — оба выбора (кооперативные предлагаются вместе с первым выбором, если брать их — второго не будет)

/savegame [file name] — сохраняет текущее прохождение в .sav файл (прогресс открытия персонажей, корон и прочие статистики), который можно передать кому-либо.

/loadgame [file name] — загружает .sav файл. Создано для совместного прохождения.

/sideload — включает возможность загружать кастомную графику.

/loadsprite [sprite name] [file name] — заменяет спрайт (должен предварительно быть в steamapps\common\Nuclear Throne\images).

/loadimage [sprite name] [frame index] [file name] — как и предыдущее, но для более тонкой работы с фреймами.

/unloadsprite [sprite name] — отменяет загрузку спрайта.

/savesprite [sprite name] [file name] — сохраняет спрайт (в steamapps\common\Nuclear Throne\images, имя даётся автоматически)

/saveimage [sprite name] [frame index] [file name] — опять же, углубление в фреймы.

/loadtext [filename] — загружает содержимое файла как сообщения чата. Изначально будет смотреть папку с игрой, если там нет — будет искать в steamapps\common\Nuclear Throne\images)

4) Частозадаваемые вопросы и ответы на них.
Поддержка 4-х игроков.

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

Возможно, в этом была бы доля веселья, но опять же, игра «склёпана» с расчётом не ранить игроков их же стволами. С этим будет много проблем, поэтому это смело можно считать сомнительным источником веселья.

Сохранения.

NTT использует отдельный файл сохранения, в котором по умолчанию всё открыто в кооперативе, но не в сингле отныне. Если есть желание открывать что-то совместно — можно использовать /savegame и /loadgame.

Мутации персонажей из оригинального NT.

Вводим /ultras all и радуемся жизни.

Ошибки запуска.

Всё упирается в ошибки при использовании Steam API. На почве этого и в оригинале были траблы с Daily/Weekly, решается перезапуском Стима.

Стабильная ошибка «Connection timeout» в лобби.

Если вы часто/всегда видите эту ошибку — проблема в файле Steamworks.gml, в каждой версии мода он свой, они несовместимы. Решение — убедится что и вы, и оппонент, действительно заменили файл при распаковке модификации. В более новых версиях игра сама уведомит вас о сломанном файле.

«Connection timeout» в игре.

Если выкинуло — назад нет пути. А выкидывает только спустя 30 секунд отсутствия отклика. Если изначально чувствуется, что будет проблема — можно ввести /timeout 666, потенциально всё будет не так плохо.

NTT-Assemble — вирус!

  • Обновить базы антивирусной программы.
  • Добавить в «белый список», дабы запустить его.
  • Иметь человека, который отправит вам распакованные файлы мода (они никогда не будут определяться вирусом).
  • Скомпилировать патчер самостоятельно по исходнику [bitbucket.org] , необходим Visual Studio.

Игра «Трон» на Flash (AS 2.0)

Счетчик PR-CY.Rank

В данном уроке мы с вами сами с «нуля» создадим игру «Трон» на Flash. Данный урок я реализовывал во Flash CS4 с использованием Action Script 2.0.

Ну я думаю, что если у вас CS3 или CS5, то особых проблем не возникнет.

Создание проекта

Создадим отдельную папочку «tron», в ней мы будем хранить все файлы нашей игры (сам файл игры + файлы классов).

Создадим проект: File —> New. —> Flash Project. В выпадающем меню выберем «New Project. «:

  • Project name: tron
  • Root folder:
  • ActionScript version: ActionScript 2.0

Далее создадим основной файл игры: кликаем по пиктограмме «New File» в нижней части окна «PROJECT», имя задаем как «index», тип «Flash File», галочу открытия сразу после создания оставляем активной. Итак, окно «PROJECT» у нас сейчас выглядит так:

Окно PROJECT

Зададим настройки нашему главному файлу. Для этого надо кликнуть мышкой при активном инструменте «Selection Tool» на пустом месте рабочей области и в перейти в панель «Properties»:

  • FPS (частота кадров): 24
  • Size (размер сцены): 500 x 500 px.

Небольшое отступление: если я в дальнейшем буду упоминать какую-либо панель или окно и не буду говорить где её найти, то знайте: все панели во Flash находятся в верхнем выпадающем меню «Windows».

Создание объектов

Прежде чем приступить к программированию нам надо создать объекты, которыми мы будем управлять, а именно:

  • Игрок 1
  • Игрок 2
  • След игрока 1
  • След игрока 2

Перейдем в библиотеку (окно «Library») и кликнем по пиктограмме «New Symbol. «, имя зададим как «Игрок 1», тип «Movie Clip», кликнем OK, откроется окно создания МувиКлипа. Первый игрок у нас будет синяя мигающая точка, её и создаем:

Выберем инструмент «Oval Tool», нарисуем круг, в панели «Properties» зададим ему настройки:

Окно PROPERTIES

Теперь сделаем так, чтобы наш круг моргал:

  • Выделим наш круг, вызовем контекстное меню и выберем «Convert to Symbol».
  • Нажмем OK.
  • На панеле «Time Line» встанем в кадр 5 и создадим в нем ключевой кадр-копию (F6).
  • Выделим наш круг, в панели «Properties» в категории «Color Effect» выберем «Alpha» и зададим значение 0.
  • Кликнем правой кнопкой на кадре 1 и выберем «Copy Frames».
  • Кликнем правой кнопкой на кадре 10 и выберем «Paste Frames».
  • Кликнем правой кнопкой на кадре 1 и выберем «Create Classic Tween».
  • Кликнем правой кнопкой на кадре 5 и выберем «Create Classic Tween».

Панель «Time Line» для МувиКлипа «Игрок 1» у нас выглядит так:

Панель TIMELINE

Вернемся к сцене, кликнув по ссылке «Scene 1» (она видна на рисунке выше).

По аналогии сами создайте МувиКлип «Игрок 2», отличие его будет лишь в том, что его цвет будет красным.

Перейдем в библиотеку (окно «Library») и кликнем по пиктограмме «New Symbol. «, имя зададим как «След игрока 1», тип «Movie Clip», кликнем OK, откроется окно создания МувиКлипа. След игрока 1 у нас будет синяя точка, её и создаем:

Выберем инструмент «Rectangle Tool», нарисуем прямоугольник, в панели «Properties» зададим ему настройки:

Панель TIMELINE

Вернемся к сцене, кликнув по ссылке «Scene 1».

По аналогии сами создайте МувиКлип «След игрока 2», отличие его будет лишь в том, что его цвет будет красным.

Написание кода

Определим то, что у нас должны «уметь» объекты.

  • Всегда двигаться.
  • Поворачивать по воле пользователя.
  • Оставлять после себя след в виде экземпляра класса след.
  • Реагировать на событие прикосновения к себе кого-нибудь из игроков и заканчивать игру.

Приступим к реализации.

Для игроков мы не будем создавать отдельные классы, т.к. их у нас будет всего два и проще весь код запихать внутрь самих объектов.

Переместим на сцену из библиотеки по одному экземпляру каждого игрока (просто перетищив их мышкой из библиотеки на сцену) и зададим им следующие настрокий в панеле «Properties» (выделяя важдый из них):

Теперь выделим первый кадр на панели Time Line (собственно и единственный) и нажмем F9, откроется панель «Actions» (для программирования в кадре), здесь мы напишем следующий код:

Панель ACTIONS

Закроем панель «Actions».

Теперь выделим игрока 1 и нажмем F9, откроется панель «Actions» (для программирования внути объекта), здесь мы напишем следующий код:

Панель ACTIONS

Закроем панель «Actions».

Игрок 2 у нас будет рулить уже не стрелочками, а кнопками W-S-A-D (в обработчике события Key.isDown() следует использовать их ASCII код), также его начальное местоположение немного изменится, поэтому для него код будет выглядеть так (вставьте его в игрока 2):

Панель ACTIONS

Закроем панель «Actions».

Поздравляю! Теперь вы можете запустить проект (Ctrl + Enter) и увидеть, что оба игрока уже могут управлять своими «Мотоциклами».

Полезное примечание: когда вы находитесьв панеле «Actions» и уже хотите её закрыть (код написан), не поленитесь нажать кнопку в виде синей галочки «Sheck syntax», она попробует найти ошибки в вашем коде и подскажет как их исправить. При нажатии на эту кнопку, если есть ошибки, то они отображаются в панеле «Compilel Errors».

Можно сказать что половина игры написана. Далее мы будем дорабатывать полученное.

Промежуточный результат: скачать .swf (правой кнопкой —> «сохранить объект по ссылке как. «)

Оставление следа

Теперь нам надо создать сласс следа для одного из игроков. Откроем окно «Project» (Window —> Other Panels —> Project) и создадим новый класс, кликнув по пиктограмме «Create Class«. Зададим классу имя «Sled1» и кликнем «Create class«.

Перед нами файл, описывающий класс следа для игрока 1. Изменим его следующим образом:

Класс следа

Теперь перейдем в библиотеку, кликнем правой кнопкой по символу «След игрока 1» и выберем «Properties. «. Нам необходимо привязаь след к классу, который мы только что создали:

Настройки мувиклипа След игрока 1

Далее мы создадим еще один класс, он будет хранить все наши следы игрока 1. Т.е. в нем мы заведем массив, в котором будут храниться наши следы. Также в этом классе мы предусмотрим функцию, которая будет добавлять следы игрока 1. Для этого снова в панели «Project» создадим новый класс, который назовем «MassivSled1«. Выглядеть он у нас будет следующим образом:

Класс группы следов игрока 1

Теперь в пером кадре добавим несколько строк кода, инициирующих появение класса следов 1:

Код кадра 1

Нам надо добавлять появление следа после каждого движения игрока 1. Для этого в код игрока 1 добавим следующее:

Код добавления следа для игрока 1

Весь алгоритм оставления следа мы с вами проработали. По аналогии сами реализуйте оставление следа игроком 2. Примите во внимание, что переменная «i1«, созданная для определения идентификатора каждого следа игрока 1, началась с нуля и увеличивается при каждом следе. Поэтому стоит переменную «i2» (для следа игрока 2) создать и сразу приравнять не к нулю, а к 100000, к примеру.

Промежуточный результат: скачать .swf (правой кнопкой —> «сохранить объект по ссылке как. «)

Ограничение для игроков

Нам нужно ограничить игрока в передвижении. А именно: если игрок двигется вперед, то нам надо запретить ему двигаться назад, даже если он нажал кнопку движения назад. Аналогично со всеми другими сторонами. Зайдем в код игрока 1 (Выделим его и нажмем F9) и немного откорректируем код, создадим небольшие проверки:

Код игрока 1

Аналогично измените код игрока 2.

Немного интересного (отзеркаливание)

Теперь давайте сделаем так, что если игрок врезается в стенку, то появляется с другой стороны. Для этого в код функции, отвечающей за движение игроков добавим проверку. Также заметим, что теперь нам не надо проверять края экрана для движения объекта, ведь двигаться у нас он будет всегда:

Код кадра 1

Небольшая оптимизация игры

Сейчас наша игра написана немного неправильно. Если вы поиграете в неё 2-3 минуты, то все начнет тормозить. Происходит это из-за того что у нас обьектов (следов) становится очень много и у каждого есть событие «onClipEvent (enterFrame)» — оно очень сильно загружает процессор. Давайте вынесем его в отдельную функцию и будем её вызывать из самих игроков.

Из класса следа это событие удалим полностью:

Код класса След 1

Аналогично измените класс следа 2.

В первом кадре создадим функцию, которая будет производить проверку:

Функцию проверяющая соприкосновение объектов 1

Осталось вызвать эту функцию из игроков, передав в неё нужные параметры:

Вызов функции из игрока 1

Для игрока 2 пропишите те же самые строки когда, но в качестве второго параметра передайте двойку.

Ну вот, наша игра стала полегче. Однако, все равно, если долго играть, то она будет «виснуть» — слишком уж много объектов на сцене появляется (следов), а здесь уже дело не в процессоре, а в оперативной памяти. Другими словами: чем больше у пользователей свободной оперативной памяти, тем дольше они смогут играть в игру. Ну ладно — наша с вами задача не оптимизировать игры, а пока что, только научиться их делать.

Проигрыш

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

Давайте в кодах игроков зададим эту самую проверку:

Код игрока 1

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

Сообщение о проигрыше

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

Динамическое текстовое поле 1

Теперь запишем в него сообщение, если кто-то проиграл. Сделать это можно из любого объекта, но правильней это будет сделать из функции, которая проверяет столкновения (находится она у нас в первом кадре):

Код кадра 1

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

Итоговый результат: скачать .swf (правой кнопкой —> «сохранить объект по ссылке как. «)

Заключение

На этом мы остановимся. Игра готова, играть можно, а самое главное, можно играть вдвоем и это куда интереснее. Если вы все поняли, то ,я думаю, для вас не составит труда её доработать. Как? Ну например:

  • Сделать очки для каждого игрока: колчество выйгрышей, а после того, как кто-то проиграл надо нажать «Replay», чтобы играть еще раз.
  • Добавить черную дыру, которая бы появлялась на экране, а если игрок в неё попадает то оказывается в каком-либо другом месте (так сказать телепорт).
  • И т.д.

Ну вот и все. Собственно, это все, что я хотел вам рассказать. Если есть какие-то вопросы — готов на них ответить — задавайте.

Понравилась или помогла статья? Самое лучшее, что ты можешь сделать — это поделиться ею в любой из своих соцсетей (даже если ты поделишься в твиттере или google+, которыми ты не пользуешься — это очень поможет развитию моего блога). Спасибо! А если ты еще и оставишь любой комментарий снизу в обсуждениях, то это будет двойное СПАСИБО!

Игра Трон Когама

Трон Когама

Игры Онлайн

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *