ПроектыФорумОцените

HellyCopter - разработка

Страницы: 1 2 3 4 5 6 Следующая »
#0
0:18, 1 апр 2008

Новости проекта:
- релиз !

Название
HellyCopter 1.2

Жанр
2d Action, Logic

Цели проекта
сделать не стандартную игру

Используемый инструментарий, библиотеки
hge, box2d, tinyxml, VS C++

Сайт проекта
http://yarilostudio.ru/


Краткое описание
Задача игрока:
-Убить всех красных колобков;
-Оттащить всех синих колобков в телепорт (телепортов может быть несколько);
-Избегать столкновений с препятствиями;
-После выполнения задания приземлиться на обозначенной платформе (их может быть несколько)


Screenshots:
временно не доступны

#1
0:19, 1 апр 2008

Сюжет

Действие игры происходит на планете Zeedabaro далёкой галактики Jazobo в самый разгар кровопролитных войн между племенами красных и синих колобков. Вы принадлежите племени синих колобков, но Вы не такой как все – Вы избранный колобок! На Ваши отсутствующие плечи возложена очень важная миссия - спасти синих колобков от вымирания. Об этом говорят древние предания.
Следует отметить, что красные колобки обладают – неуравновешенной психикой и злым нравом. Они не раздумывая убивают синих колобков и не испытывают при этом никаких угрызений совести. Синие же колобки напротив отличаются умом и сообразительностью и являются образцом миролюбия и пацифизма. Синие колобки практически не способны постоять за себя в этой жестокой войне. Обычным делом являются потери трёх-четырех синих колобков на одного красного. Поэтому обычно синие колобки берут смекалкой и хитростью.
Вернёмся к Вашему предназначению. С Вашим рождением пришло время к победоносному завершению многовековых конфликтов. Вы единственный колобок, который, согласно преданиям, сможет управлять адской машиной смерти, посланной Богами в начале Времён дабы защитить синее племя. Эта машина громогласно зовётся HellyCopter, и давно пылится в укромной пещере синих. Пришло время действовать. И действительно, запрыгнув в кокпит этого чуда техники божественного происхождения, Вы обнаруживаете, что он поддаётся Вашим мысленным импульсам и вполне сносно управляется! С этого момента начинается игра.
Вам предстоит безжалостно уничтожать красных врагов и спасать синих товарищей. Но сначала необходимо постичь азы управления HellyCopter’ом. В этом Вам поможет бортовой компьютер.

#2
3:10, 1 апр 2008

Эээм, если интересно мнение, то засилье английского угнетает. Почему русский человек не может сделать все названия на русском? И это всякое for fun... ппц, короче.

#3
5:08, 1 апр 2008

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

MaximYarilo
Выглядит прикольно.
Сюжет в жанре "epic mecha" выносит мозг :).

#4
11:28, 1 апр 2008

Shulkin
Просто неоправданное использование английской лексики на российском форуме мне кажется непонятным.

#5
12:03, 1 апр 2008

Я делаю игру на английском языке, т.к. этот язык де факто является международным. И это только моё дело. А то, что на форуме использую английские выражения уж извините, нравится мне так. Могу только посоветовать принимать успокоительные и антидепрессанты. =)

#6
12:28, 1 апр 2008

C помощью редактора уровней можно задавать следующие основные параметры:

1. Polygons configuration;DONE
2. Sky color; DONE
3. gibs position; DONE
4. teleports position; DONE
5. heliports position; DONE
6. Tutorial zones; DONE
7. World edges; DONE
8. kill/save plan. DONE


Пояснение:

1. Конфигурация полигонов. Задаётся расположение полигона в мире и все его вершины. Полигон должен быть выпуклый, вершины следуют друг за другом по часовой стрелке. Также полигону назначается цвет. При рендере полигона в игре этот цвет будет считаться основым и будет незначительно изменяться к вершинам.
Полигону назначается тип ground или background. Первый тип это земля участвующая в обработке столкновений, второй тип декорация заднего плана. С помощью второго типа можно делать, например, секреты и потайные проходы и комнаты.

2. Цвет неба. Задаётся массивом значений цветов состовляющих небо прямоугольников. Цвета плавно переходят друг в друга.

3. Расположение красных и синих колобков. Изначальная позиция колобков в процессе симуляции меняется, т.к. колобки могут перемещаться по полю.

4. расположение телепортов для приёма синих колобков.

5. Вертолётные площадки (начальная и конечные).

6. Tutorial zones; Зона залетая в которую, на экран выводится заданное сообщение. + настроечные параметры - сколько раз показывать сообщение и сколько времени сообщение держится на экране.

7. границы мира

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


На данный момент готовность редактора уровней: 100%

#7
13:17, 1 апр 2008

MaximYarilo
Ладно, уважительно или нет включать много английских слов в сообщения форума - это вопрос спорный. Соглашусь - не моё дело, как пишешь.
Но вот тогда полюбопытствую: хоть проект и любительский, но в него ведь будут играть. И интересно, какая доля будущих игроков русскоязычная, а какая иностранная?

#8
13:26, 1 апр 2008

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

#9
1:31, 2 апр 2008

Управление и орудия

Управление вертолётом:
Стрелка влево или a – лететь влево;
Стрелка вправо или d – лететь вправо;
Стрелка вверх или w – лететь вверх;
Стрелка вниз или s – лететь вниз;
G – выдвинуть/убрать шасси;
Правая кнопка мышки – форсаж.

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

Управление орудиями:
1 –  выдвинуть гарпун;
2 –  выдвинуть пневмопушку;
Мышь – управление прицелом;
Левая кнопка мыши – выстрел текущим выбранным орудием.

Когда гарпун удерживает какой – либо груз управлять вертолётом становится сложнее (используйте форсаж), если же гарпун вонзился в землю вертолёт вообще не сможет перемещаться дальше чем на длину троса гарпуна. С помощью гарпуна также можно перетаскивать колобков.
Пневмопушка расталкивает объекты в зоне попадания. Будьте осторожны, не убейте пневмопушкой синих колобков. С красными напротив можно расправляться.

Прочее:
H – вывести экран помощи;
F3 – начать уровень сначала;
F4 - вывести отладочную информацию (отсутствует в релизе);
F5 - запустить следующий уровень (отсутствует в релизе);
Alt+Enter - вкл./выкл. полноэкранный режим;
Esc, Alt+F4 - выход из игры.

#10
7:55, 2 апр 2008

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

#11
12:27, 2 апр 2008

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


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


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


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

#12
14:37, 2 апр 2008

Royal Penguin
DedoK
kurguru
Че накинулись то?

#13
16:25, 2 апр 2008

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

#14
1:52, 3 апр 2008

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

Уровень создаётся и редактируется в редакторе уровней, см. пост №6. Хранится он в xml. Для загрузки и сохранения уровня из xml служит класс LevelSrc. Он позволяет создать в памяти все сущности (entity) и прочие конфигурационные параметры уровня. На основе LevelSrc создаются игровые объекты - это делает класс Level.
В редакторе используется LevelSrc, а в игре LevelSrc и Level.
Level уже хранит объекты в динамике, т.е. их текущее состояние ( в отличии от LevelSrc, который хранит инициализирующие значения). Любой объект уровня хранит ссылку на соответствующий ему src - объект. По src - данным всегда можно восстановить начальное состояние объекта или получить его конфигурационные параметры.
Level создаёт мир box2d, устанавливает различные лисенеры для него и осуществляет симуляцию физики.

Вот примерный код загрузки уровня в игре:

void Level::LoadLevel(const std::string& str)
{
  // ===== грузим из файла уровень
  levSrc->setFileName(str.c_str());
  levSrc->loadXML();

  CreateWorld(); // создаём мир box2d, при этом внутри используются параметры уровня через levSrc

  // ===== позиция порта и вертолёта
  float xpp = levSrc->getPlayerStartX()*worldScale;
  float ypp = levSrc->getPlayerStartY()*worldScale;
  HELL::viewPortPosition.Set(xpp,ypp); // установка viewport'а на координаты вертолёта
  HellyCopterModel::Instance()->SetPosition(xpp,ypp); // установка вертолёта в определённые координаты 

  // cоздаём прочие объекты
  // ===== create tutorial zones                  
  {
                // create src objects
                ....
    // create game object
  }
  

  // ===== создаём землю и блоки
  {
    std::vector<LevelBlock*> blocks = levSrc->getBlockList(); //src objects
    for(int i = 0; i<blocks.size(); i++)
    {
      if (blocks[i]->bBackground)
      {// земля
        CreateGround( blocks[i] ); // create game objects
      }else
      {// строительный блок
        CreateBlock( blocks[i] ); // create game objects
      }
    }
  }
  // и т.д.
  ....

}

Если что не понятно, спрашивайте.

Страницы: 1 2 3 4 5 6 Следующая »
ПроектыФорумОцените

Тема в архиве.