День 8

День 8

1742


Итак, само задание. 

С шапкой сам разберешься, я хуй знает че там 

  

Инструкции. 

  

  •Это проект под PHP. Не надо отправлять нам Python или Ruby. Это не смешно. Понятие "everything" значит только под PHP 

  •Ваша програма должна работать в Chrome той версии, которая установлена в iMac-ах 

  •Задание должно быть выполнено с небольшой толикой эстетизма. Используйте CSS и изображения. 

  •Каждое видео дней 6, 7 и 8 содержит какой-либо концепт, каждый должен быть представлен хотя бы один раз в этом проекте. 

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

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

  •Один уникальный Класс на файл. 

  •Файл, содержащий описание класса не может содержать другого, за исключением require или require_once если необходимо. 

  •Файл, содержащий класс ВСЕГДА должен иметь название ClassName.class.php 

  •Класс всегда должен сопровождаться документацией вида ClassName.doc.txt. Можно копипастить День 6, это не ошибка. 

  •Документация класса должна ВСЕГДА быть полезной и соответствовать реализации. 

  •Класс ВСЕГДА должен иметь статичный метод называемый doc, который возвращает описание класса в строку 

  •Аттрибут или публичный метод, которые не были нужны похерят все задание. Покажите свои познания в необходимости использования открытых классов. 

  •(какая-то муть про родительские классы, сам разберешься. Я реально не знаю, что это все значит.) 

  •Большое и неработающее-плохо. Маленькое и завершенное-хорошо. 

   

  

А ТЕПЕРЬ СУТЬ. 

Тебе нужно написать пошаговую космическую битву. По сути это творческая переработка Dreadfleet из одноименной кампании.

Игра на двух человек, цель-уничтожить флот противника первому. 


  

КУБИКИ. 

1) Используются Д6. 

2) Бросок нескольких кубиков пишется в виде XD6 где X-количество кубиков, учавствующих в броске. 

3) Если требуемые значения являются (к примеру) 3 и выше, то пишется 3+, а не 3, 4, 5, 6. 

 

ИГРОВОЕ ПОЛЕ 

1) Игровое поле имеет размеры 150*100 

2) Каждый игрок стартует со своего угла поля. 

3) На поле должны присутствовать препятствия для маневрирования. 5-6 препятствий по 10 ячеек каждое говорят достаточно. Но все в ваших руках 

4) Расположение препятствий не должно быть случайным 

5) Корабль, покинувший поле или врезавшийся в препятствие считается уничтоженным 

 

ХОДЫ 

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

2) Активация корабля НЕ МОЖЕТ БЫТЬ ОТМЕНЕНА. Корабль можно активировать раз за ход. 

3)Каждый корабль должен выполнить ТРИ обязательных фазы строго в следующей последовательности: Приказ/Передвижение/Стрельба 

4) После того как активируются все корабли, начинается новый ход 

КОРАБЛИ 

У космических табуреток, соборов, тапков и прочей реактивной нечисти есть кипа параметров, список приводится ниже 

ИМЯ: Имя корабля должно быть БЕЗБАШЕННЫМ. В ОБЯЗАТЕЛЬНОМ ПОРЯДКЕ. 

Пример имперских корыт: Гнев Императора, Горе Побежденным, Громовержец, Бич Еретиков, Длань Инквизитора, Праведник, Ярость Макрэйджа... 

Пример орочьих летал: Касмический Ногибатор, Лутало, Жопарвач, Баивая кансерва, Упертый Креисер, Охренительный баивой касмичезкий вагон из Варпа, РУБИ ЛЮДИШЕК, Парневоз, Горк'О'Нюк, ЧОПЧОПЧОП, Залутаный феечный утюх... Тысячи их!! 

 

 РАЗМЕР 

Количество занимаемых клеток. 3*10 для суперкапиталов, 1*2 для скаутов. А дальше-полет фантазии нах 

СПРАЙТ ИЛИ АНАЛОГ 

Визуальное отображение корабля на поле 

КОРПУС 

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

МОЩНОСТЬ ДВИГАТЕЛЯ 

Количество генерируемых кораблем Очков Действия (сокращенно ОД) за ход, тратятся на улучшение ходовых, огневых и прочих характеристик, во время фазы приказа. 10 для средних, 15 для суперкапиталов, 5 для скаутов.

СКОРОСТЬ 

Количество клеток, которое может корабль преодолеть за ход. Может увеличиваться за счет ОД. К примеру, скаут может за ход преодолеть 20 клеток, в то время как СупКат сможет проелозить только 8-10 клеток. 

УПРАВЛЯЕМОСТЬ 

Показатель, который говорит, сколько корабль должен пройти под действием силы инерции, если в предыдущий ход он двигался. Для того, чтобы перейти в положение "Стационарный" корабль должен таки затормозиться, верно? Так же показывает сколько кораблю надо пройти клеток чтобы повернуться влево/вправо. Т.е. он сначала проходит X клеток прямо и только ПОТОМ поворачивается. Как пример, 1-2 у скаута, 5-6 у СК. 

ЩИТЫ 

Количество урона, которое нивелируется щитами, перед повреждениями корпуса. Может улучшаться за счет ОД. 

ВООРУЖЕНИЕ. 

1 слот у разведчиков, 2-3 у СК. Вооружение может быть ЛЮБОЕ, однако, не выходящее за пределы вселенной ВХ. (На самом деле, их овер9000 просто названия могут быть своеобразными) 

ФАЗЫ 

ФАЗА ПРИКАЗОВ 

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

1 ОД в Скорость дает 1Д6 к передвижению 

1 ОД в Щиты дает +1 к поглощению урона на ход 

1 ОД в Оружие дает 1Д6 к заряду оружия (дальше объяснится) 

 

Так же ОД можно тратить на ремонт корпуса. Каждое потраченное ОД на ремонт дает 1Д6. Если выпадает 6, то Корпус полностью восстанавливается. 

 

ФАЗА ДВИЖЕНИЯ 

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

• Корабль проворачивается по самой центральной клетке, из которых состоит корабль 

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

• Корабль может пройти только то количество клеток, которое указано в его скорости(плюс скорость за ОД) 

• Корабль должен пройти равное или большее расстояние чем его Управляемость. 

• Если в течении предыдущего хода корабль прошел клеток ТОЧНО на свою управляемость, то в этом ходу он может остаться на месте. 

•Корабль может стоять на месте сколько угодно. 

• Стационарный корабль может пройти МЕНЬШЕЕ количество клеток, чем его Управляемость.В таком случае в следующий ход он не может остаться стационарным  

• Корабль может поворачиваться каждый раз, когда прошел равнозначное или большее количество клеток чем его управляемость (к примеру скаут, может пройдя 2 клетки повернуть. А потом еще повернуть. И еще. Пока не закончатся клетки передвижения)

• Корабль, врезавшийся в другой корабль, немедленно останавливается и не может двигаться до конца хода. В начале следующего хода он будет считаться Стационарным. К тому же, если корабль прошел клеток больше чем его УПР, каждый корабль получит столько повреждений, сколько имел другой корабль до столкновения. Этот урон может быть поглощен щитами. В этом случае речь идет о таране, зрелищном, непредсказуемом и опасном маневре. (В случае тройничка, инициатор получает дойной урон, цели-одинарный, как по мне. Ну, то есть дважды рассчитываются повреждения для таранящего) 

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

ФАЗА СТРЕЛЬБЫ 

Фаза, во время которой начинается самое веселье. Многокилометровые соборы и летающий металлолом обстреливают друг друга из пушек размером со здание... Спецэффекты впечатляющие. 

У каждой пушки есть своя собственная характеристика: 

Заряд: Изначально, при активации 0 .Каждое ОД, потраченное на вооружение, дает 1 заряд оружию. Каждый заряд дает 1Д6 к стрельбе. Некоторые пушки имеют по дефолту заряд больше ноля, что позволяет стрелять без затрат ОД. 

Короткая, средняя и дальняя дистанции-показатель для каждого оружия, сколько должно выпасть на кубике чтобы снаряд попал в цель. 

Зона поражения: Описание того, как именно распространяется выстрел из этого ствола. Либо линия из носовой батареи, либо залп из бортовой... Нутыпонял 

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

Базовые значения для успешной стрельбы: 

Короткая дистанция: 4+ 

Средняя дистанция: 5+ 

Дальняя дистанция: 6 

Каждый успех приводит к нанесению урона цели/целям. Урон сначала размазывается по щитам, и только потом уходит в броню. 

Каждая пушка стреляет один раз за ход. А может и не стрелять. Но не больше одного раза. А еще, некоторые пушки могут стрелять только из стационарного положения(Как правило это сверхмассивные рельсовики). 

Некоторые орудия могут иметь модификаторы требуемого значения кубика для успешного попадания. 

Так же, если выстрел попадает точно в нос или корму посудины, это приводит к "пронизывающему" выстрелу, наносящему катастрофические повреждения (Так в тексте написано, но я не согласен. У боевых лоханок нос это САМАЯ бронированная часть, она для таранов блять была сконструирована. Так что неканон и кококо. А вот в двигатели попадание критическое-согласен, реально) 

В случае фронтального (кококо) или кормового попадания успех расчитывается как 3+/4+/5+ в зависимости от дистанции 

 

ПРИМЕЧАНИЯ 

Примеры кораблей и оружия найдешь в пдфке, описывать бессмысленно. Уточнение: Bouclier-Щит. Французы блин, не все перевели. 

Ну и оффициальные примечания. 

• Обсудите с вашими товарищами преимущество той или иной парадигмы ООП на PHP. Сеттинг данной игры идеально для этого подходит 

• Ваша цель-не сделать игру а понять принципы ООП. 

• Разнообразие комбинаций корабль-вооружение! Никаких одинаковых лоханок. 

•В среднем должно быть два флота от 5 до 10 корыт в каждом. 

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

• Параметры игры можно изменять, елси это не противоречит канону 

• Картинки отсюда: http://wh40k.lexicanum.com/. Все права принадлежат евреям и Воркшопа 

• Славься, Император! 

 

Report Page