Несыть :: Откорм
20% посетителей вечеринки выпивают 80% пива, а доведение конкурсного проекта до приличного состояния и вовсе в процентах от затраченного ранее времени не вычисляется. Прошло несколько месяцев, а я так и не прикасался к игровой части, всё скачу вокруг да около. Начал с системы игровых настроек и пользовательских аккаунтов, продолжил управляющими менюхами, потом ещё продолжил антуражными персонажами и их диалогами, а конца и края этому всё ещё и не видно — проект раскурочен так, что и показать-то толком нечего.
Логотип, гимн, фирменные цвета
7 января 2012
Пока ничем запускабельным порадовать не могу, сегодня одни картинки. Вот финальный вид логотипа и его выворотки для чёрного фона.
Поначалу я экспериментировал с двумя червями и третьим цветом (красным), но получалось сложновато:

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

Жалко, что ресурсов пока мало и время загрузки на моём компе не превышает пары секунд, черви не успевают сделать даже одного оборота. Может искусственно притормаживать, если машина шустрая? :)
P.S. Не удержался и собрал урезанный релиз, состоящий только из индикатора загрузки, вот: Скачать (1,2 Мб)
ДИАЛОГИ, МОНОЛОГИ, исторические романы
8 января 2012
Приветствие игрока, обучение управлению, ведение сюжета и просто шутки между миссиями — всё это будет выполняться с помощью системы диалогов. В диалогах участвует три персонажа: Профессор — добродушный всезнающий старичок, Жека — угрюмый гик и Шпилька — простодушная блондинка.
Диалоги ведётся в виде комиксов и, вообще говоря, для прохождения игры являются необязательными. На случай спешки их можно скипать отдельными репликами или вовсе целиком.
Демонстрационный релиз содержит всего один диалог, который вы можете подправить по своему желанию (чуть ниже я объясню как) и немножко чудесной музыки Чета Аткинса (Chet Atkins — Trambone).
Одним из важных, но незаметных изменений в проекте стал переход на XML-файлы для пользовательских профайлов, настроек и, конечно, диалогов. Использую открытую бесплатную библиотечку TinyXml, очень удобно!
Если вы откроете файлик chats.xml в любом редакторе (но лучше с подсветкой тэгов, notepad++, например), то увидите, что диалог «welcome» можно без труда подправить по собственному желанию без перекомпиляции (разве что программу перезапустить придётся — файл грузится при запуске).

Правьте по аналогии и будет у вас свой лунапарк. Если получится что-нибудь интересное и смешное — присылайте пожалуйста мне, пригодится! ;)
Тэги
<chats/> - Корневой тэг документа
<chat/> - Диалог. В данной демке запускается только диалог c title=«welcome».
<prof/> — Действие с Профессором.
<jeka/> - Действие с Жекой.
<shpilka/> - Действие со Шпилькой.
<pause/> - Пауза (задаётся атрибутом delay)
<wait/> — Пауза с ожиданием реакции игрока (ENTER, SPACE)
<hide-replics/> — Убирание всех реплик (персонажи остаются)
<hide-all/> - Убирание всех реплик и скрытие персонажей
Атрибуты
title - имя диалога
action - тип действия с персонажем, может принимать следующие значения: show-center-right, show-center-left, show-corner-left, show-corner-right, hide. Соответственно это появление персонажа в одной из четырёх точек или его уход оттуда, где он был.
delay — задержка в секундах ПОСЛЕ действия тэга, может использоваться со всеми управляющими тэгами, значение может быть дробным — 1.5, 0.2 и т.д.
emotion - аналог аттрибута action, переключающий у персонажа эмоцию, может принимать следующие значения: usual, blink, special, angry, smile (чуть ниже таблица с эмоциями).
Эмоций у каждого персонажа пять, но мигание (blink) работает автоматически время от времени, так что использовать его явно не обязательно. Специальная эмоция (special) у каждого персонажа своя, остальные соответствуют своему названию (usual - обычное состояние, angry - злость, smile - улыбка). Вот иллюстрированная таблица эмоций персонажей:
Ещё в тексте реплики перенос картки делается вот такой штукой а если часть текста заключить в фигурные скорбки { }, то он будет выделен красным цветом.
Кстати, если глянете в ресурсы, то увидите, что каждый персонаж отрендерен в четырёх размерах, каждый со своим набором физиономий. Сделано это для того, чтобы использовать картинки персонажей без масштабирования. Аналогичная ситуация со шрифтами. Если попробуете порастягивать окошко (в оконном режиме само собой), то заметите, что есть три различных набора спрайтов и шрифтов под разные габариты области вывода.
МЕНЮ, НАСТРОЙКИ и ЧЕРВИ ПОД СТЕКЛОМ
10 января 2012
Прикрутил главное меню, регистрацию пользовательских аккаунтов, различные диалоги настроек (пока не работают, только щелкаются), хинты подсказки на старте. При первом запуске проигрывается приветственный диаложик, в последующие уже открывается заведённый пользовательский аккаунт.
Пришлось отказаться от эффекта за который я очень долгое время держался — чересстрочного затемнения. Бэкграунд главного меню динамический — маленький уровень с пятью красными червями и бесконечными овцами (генерящимися за пределами видимости), камера плавно перемещается по кругу. В комбинации с чересстрочным затемнением на разных кусках траектории получались разные неприятные стробоскопические эффекты — от мерцания, до подёргивания.
Заменил чересполосицу на полупрозрачное стекло. Спасибо любезной незнакомке Sienna32 за безвозмездно предоставленную текстурку (чутка, правда, подрезал и затайлил, вытер читающееся слово ART из царапин :). На скрине не очень заметно, это в динамике надо глядеть — довольно забавный эффект.
Меню пока настроек игры не меняет и на мышь не реагирует (обязательно будет делать и то, и другое). Будете назначать клавиши в управлении — не смущайтесь, что отображаются не те, которые вы нажимаете. Я переделал систему работы с пользовательстким вводом и поменялась таблица кодов клавиш. Раньше я DirectInput'ом пользовался, теперь на обработку сообщения WM_INPUT перешел, говорят это круче. :)
Музычку пока оставил с прошлого релиза, поленился. Интересное кино на заднем плане не обещаю — всё каждый раз по-разному. Иногда бывает, что и вообще пару минут ни одного червя в кадре, а иногда весь обзор жирными телами застят. Черви не регенерируются, если подохли — запускайте демку снова.
Прошу к столу: скачать (6.1 Mb)
ПРЕДВАРИТЕЛЬНЫЕ ЛАСК НАСТРОЙКИ
11 января 2012
Сегодня негусто. Набросал вчерне конфигуратор(прелоадер), заставил его выводиться перед загрузкой приложения и выводить поддерживаемые текущим монитором разрешения экрана. WinAPI это клёво, но подзабыл уже чё и как. Вот весь вечер, собственно, и вспоминал.
Релиз выкладывать не буду, всё равно пока целиком не работает.
UPD: Считываю, если ли у пользователя русский язык среди раскладок клавиатуры. Для русских вывожу локализованную версию конфигуратора, а остальным англоязычную. Русскую пришлось раздвинуть, т.к. по-русски всё как-то длиннее пишется. :)
НАБОР КУБИКОВ для творчества
12 января 2012
Смотрите, какие штуки собрал nosefu по сабжевым мотивам!

Чтобы облегчить героический труд творческой сублимации я собрал небольшой пакет разработчика комиксов: Скачать (2,27 Мб). Пачка PNG'шек с персонажами, эталоны цветов, бэкграунд и облачка-реплики + два векторных исходника: cdr и svg (советую Inkscape, этот редактор простой, мощный и бесплатный).
А вот ещё ссылочка от nosefu: PSD с персонажами и картинки побольше.
МУЗЫКА, НАСТРОЙКИ и ДОМАШНИЕ НАСТОЙКИ
20 января 2012
Результатом плотного сотрудничества (организаторского нажима по большей части) со stada явились три музыкальных трэка: тема для главного меню (слушать), тема яйцменов (слушать) и маленькая аудио-заставочка для экрана загрузки. Наконец-то я могу избавиться от чужой музыки-заглушки!
При первом запуске теперь работает конфигуратор (не забудьте выставить комфортную громкость). При последующих настройки меняются уже в игровом меню.
Наконец, я сделал экран загрузки, куски которого выкладывал в самом начале! Вопрос с быстрой загрузкой решил так: индикатор загрузки работает по-чесноку, но если ресурсы загрузились быстрее, чем 8 секунд, то заставка с логотипом продолжает висеть до окончания этого времени. При этом её можно скипнуть с клавиатуры. Это достаточно деликатно?
Бэкграунд взят отсюда.
Само меню визуально поменялось не очень сильно: для большей выразительности добавил ко всем надписям и персонажам тени. Зато теперь работают настройки! Все, кроме переназначения управления.
Пока всё: Скачать (6.8 Мб)
КУРСОРЫ и пора заканчивать
12 февраля 2012
Приделал, наконец, управление меню с помощью мыши и поправил систему назначения управления. Это последний релиз в этом посте, дальше мы будем заниматься созданием звуковых эффектов и параллельным изменением уже игровой части. Пока подпольно.
Спасибо за внимание и поддержку!
- 07 января 2012, 01:12
- 038
Ура, еще один релиз! Все круче и круче.
Начнем с начала: теперь с баллонами нормально (может, вместо отползания сделать их просто исчезающими?). Момент ввода имени напряг слегка, так как поле ввода выделено только курсором (и змейкой, которая в меню замечательно смотрится, а тут не очень). Зачем-то имя под название игры ставится (Получается Несыть. Азат), странно как-то. Слишком вправо меню сдвинуто. Звук разбивания яйца похож на звук электрической искры (в воздухе).
В меню выбора уровней как-то неочевидно меняются эти хлебные крошки. И кнопка «Назад» не влезла в экран целиком (он у меня широкоформатный, да не совсем). Вроде все :-)
Я поменял курсор на вводе имени игрока - зацени. :)
Балоны отползают, чтобы можно было почитать предыдущее, если не успел. Чтобы меньше память напрягать игрока и не бесить его выдёргиванием текста из под носа.
С меню я экспериментировал, центрировать получается квейк, если как есть сдвигать влево, то на скринах с настройками надо опять вправо разделение двигать. Остановился на варианте как в контре поначалу было в и как ща в Alien Swarm - нессиметрично, зато с претензией на оригинальность и стиль. В моём случае я буллет с червём выделяю и единообразно организовываю главное меню и все настройки (звука, графики, управления).
Про хлебные крошки надо подумать - чего-нибудь подсокращу.
Какое у тебя разрешение? По идее должно влезать, просто должны были включиться спрайты меньшего размера. Я по вертикали в 600 умещаюсь в самом маленьком варианте.
Отползание баллонов, в принципе, дружественно к игроку.
В меню справа пустое место остается — дисгармония. Но там, внизу, бегают черви, так что...
Разрешение — 1440 на 900. Вроде не очень стандартно. Надпись «Назад» видна наполовину.
Да, и еще.
В меню с настройками не лучше ли сделать так:
Игрок 1: Влево
Вправо
Ускорение
Остановка
Игрок 2: Влево
Вправо
Ускорение
Остановка
Чтобы слева от условной вертикальной линии были надписи «Игрок 1» и «Игрок 2», а справа — сами настройки.
А значения кнопок куда? Как придётся клеить? :)
Черт, действительно не подумал.
Но четыре скобки в столбик - не есть хорошо. Может, надписи «Игрок 1» и «Игрок 2» — по левому краю экрана, а остальное — как сейчас? И небольшой промежуток горизонтальный между колонками.
Да, «маневр» — как-то гуглтранслейтом отдает. Может, все же «Ускорение»? :-)
Корабли лавировали, лавировали да не вылавировали. Честно говоря не знаю как назвать эту функцию корректнее - кнопка вперёд не ускоряет, а уменьшает угол поворота, позволяет червю делать резкие смены направлений, кольца и прочие манёвры. Двойное нажатие на эту же кнопку будет запускать бросок червя головой вперёд за счет распрямления тела.
Надписи "Игрок 1" и "Игрок 2" идея хорошая, но требующая отдельного подхода к каждому экрану настроек и страдающая от рваного левого края колонки с названиями функций. Мне как программисту хочется, честно говоря, обойтись унифицированными видами меню как сейчас - три режима: главное, настройки, выбор уровня, в которых можно использовать фиксированный набор полей: родительский пункт, полоса настройки, управляющая кнопка и т.д.
Я хочу соблюсти совково-олдовый колорит менюхи а ля квейк или дум, так что давай оставим пока как есть ("манёвр" конечно стоит заменить). ;)
Лучше вот что мне скажи - что ты думаешь по поводу конфигуратора перед запуском игры для выбора громкости и разрешения?
Конфигуратор — вещь неплохая, да (у любой игры на Юнити есть, например, или еще где). Но фишка в том, что когда я вижу такие конфигураторы, всегда думаю: «А не будет ли тормозить на моем разрешении? А не будет ли все мелким?»
А нету способа узнать разрешение экрана программно, и подстроиться автоматически?
Тонкий психологический момент. :) В случае Несыти мелким ничто не будет - всё масштабируется и в разных разрешениях имеет одинаковый размер, разница в гладкости.
Конечно есть способ! Сейчас я устанавливаю то разрешение, которое уже стоит на машине. Я тебя понял. Дроп с режимами будет выглядеть так:
1. В окне
2. 1024 х 768 (текущее)
3. 800 х 600 (4:3)
4. 640 x 480 (4:3)
....
А если сделать 2 вкладки в меню: "Игрок 1" , "Игрок 2"?
Ещё можно сделать два трёхмерных коридора, а в конце каждого по красивой полуголой девушке с татушкой "Игрок X" на попе. :)
Думаю "игрок x" будет не против. :3