Добавлен , опубликован

Описание

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

Последняя публичная версия

Благодаря усилиям Лауры Хендриксон и Юлии Николаевой интерфейс и диалоги переведены на английский язык.
Кроме локализации эта альфа-версия содержит следующие видимые изменения:
  • Перебалансировано управление: червь плавнее набирает скорость, больше скользит и может резко поворачиваться перед прыжком.
  • В существующие уровни добавлены декоративные деревья-бонсай.
  • В GUI в левую часть экрана добавлен индикатор проглатывания и усвоения пищи.
  • Добавлены различные эффекты завершения уровня, индикаторы завершения уровня убраны с центра экрана.
  • Ликвидированы найденные игроками ошибки типа падения игры при переключении по Alt-Tab, несохранения кастомного управления и т.п.
  • Уровень с гонками червей стал немного попроще, также появились маркеры-указатели на цель уровня.
  • Адреналин теперь можно вбрасывать в кровь частями по своему желанию в любой момент.

Последнее рабочее видео

Рабочая демка с только что добавленным рельефным текстурированием. На данный момент освещение существ сильно поменялось, т.к. на видео не очень заметно, но на самом деле шейдер освещения работает совершенно неправильно, направление света меняется в зависимости от поворота звена, спеукуляр не спекулярный, а диффуз малодиффузный. Всё будет совсем не так.
Глитч пойманный в процессе налаживания шейдеров освещения, из-за ошибки в формате вершин в цветовые компоненты спрайта стал вбрасываться угол поворота спрайта.

Поддержать проект

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

Планы

Перерисовываем всю живность, очень хочется успеть сделать это в течение апреля, т.к. к маю заканчивается Канобу-джем и приходит время сдачи работ на Intel LevelUp 2015. В данный момент переделали экран загрузки и я пинаю ногами шейдер освещения.
`
ОЖИДАНИЕ РЕКЛАМЫ...
2
32
9 лет назад
2
проект пока тонет среди тонны других проектов - разработчиков нынче гораздо больше, чем игроков. Хоть на зиму маринуй.
не надо заморачиваться на этом. just do it
странным управлением
оно как в Effing Worm?
а, увидел. ништяк
0
14
9 лет назад
Отредактирован Kozinaka
0
Fakov, кроме раскачиваний червя сейчас есть прыжок - давишь стрелку назад и он начивает сжиматься как пружина. После того как отпускаешь, червь прыгает. Дольше сжимаешься - дальше летишь. Эта штука, в отличии от извилин, работает хорошо. А вот самое тяжкое - режим резких поворотов: чтобы ползать клёвыми траекториями с резкими поворотами и петлями нужно использовать стрелку вперёд, она уменьшает радиус поворота червя, получается резкий вираж. Вот эту штуку сразу никто не вкуривает, сейчас в туториале я упоминание о ней в конец засунул, когда червь отъедается, становится толстым и резкие повороты ему очень нужны. Но не знаю, пока немногочисленные видео прошлых версий сделанные не мной показывают, что все обходятся двумя стрелками и не парятся с "лишними" примочками.
3
33
9 лет назад
3
Kozinaka, наверное, срабатывает рефлекс на игровой процесс «змейки», в неё-то все играли. У тебя туториал как сделан? Если это полноценная обучающая миссия, в которой в уровне созданы ситуации для использования игровых возможностей, а при необходимости появляются текстовые подсказки с объяснением, то проблем быть не должно.
2
14
9 лет назад
Отредактирован Kozinaka
2
Кет, cначала туториала вообще не было, потом был растянутый на три уровня. В последней версии сделал один обучающий уровень, но перегрузил его заданиями и лишними репликами. Сейчас вот сделал с минимум информации обучающую миссию, привесил даже мигающие подсказки чё на клавиатуре нажимать или как шевелить мышкой. Надеюсь, сработает. В этом плане бесценны отзывы от людей, которые не играли в игру раньше. Так что не играй пожалуйста в прошлую альфу, там плохое обучение. :)
Вот ещё, чтобы не скучно было, плакатик с новой перерисованной кормушкой.
Кормушка производит существ определённого вида и следит за тем, живые они или нет.
Индикаторы на крышке показывают наличие живого корма на карте. Если кого-то съели, то кормушка выдаёт нового.
Загруженные файлы
0
32
9 лет назад
0
круто, кто моделит?
2
14
9 лет назад
Отредактирован Kozinaka
2
Weilard (Андрей Ляпичев) - weilard.deviantart.com/gallery
Недавно год был, как он к проекту присоединился. Конечно, он не постоянно это делает, я у него так, побочный проект. :) Но, кажется, чем дальше, тем больше он втягивается в затею с червяками. Это добрый знак. :) По мере того, как мой движок начинает быть готовым принимать новый арт, я машу флагами и набросками по поводу того, что мне нужно.
2
26
9 лет назад
2
А как вообще организовано передвижение сегментов? В свое время долго мучился над внятной реализацией змейки с возможностью поворота на все 360 градусов.
16
14
9 лет назад
Отредактирован Kozinaka
16
lentinant, относительно просто - никакой физики, никаких импульсов. Червь, по сути, это голова, которая едет по своей траектории и запоминает путь в виде связанных линейных отрезочков. Дальше на каждой итерации голова расставляет по траектории звенья хвоста как вагончики. Есть эталонное расстояния между звеньями, которое корректируется на размер текущего звена, это расстояние отмеряется по траектории. Траектория - набор прямых отрезков, единственная сложность - отмеряя расстояние найти нужную точку на нужном отрезке. После установки текущего звена от точки его установки по траектории отмечается расстояние до следующего звена.
Звенья уменьшаются по направлению к хвосту, расстояние между ними тоже уменьшается. Каждое следующее звено смотрит на центр предыдущего, кончик хвоста и шея позиционируются немного сложнее, там усредняются несколько точек траектории, чтобы червя не переламывало и хвост не дёргался.
Белая кривая на картинке - траектория, пройденный головой путь. Зелёные круги - габаритные окружности звеньев. Они вообще у всех объектов в игре имеются, по ним обработка столкновений осуществляется.
Если любопытно:
  • серые окружности - габариты отрисовки (если они попадают на экран, то объект рисуется).
  • большие зелёные круги - области остлеживания настенными лампами объектов, чтобы автоматом включаться.
  • большой желтый круг вокруг головы червя - область раскрытия червём челюстей при приближении к съедобным штукам
  • голубой круг около головы червя - область детектящая препятствия, при натыкании на них червь отворачивается (он не может резко остановиться)
  • два красных круга около головы червя - область кусания, если есть контакт с едой и область проглатывания, если получилось еду ухватить (она поменьше)
Загруженные файлы
4
32
9 лет назад
4
афигеть. ваще. вот, человеческий программерский расчет. круто ж ваще.
1
29
9 лет назад
1
единственная сложность - отмеряя расстояние найти нужную точку на нужном отрезке
интерполяцию использовал или как?
4
14
9 лет назад
Отредактирован Kozinaka
4
Fakov, alexprey, ага, если точнее, то это просто пропорциональное деление отрезка. :) Задача по сути такая: на ломаной цепочке связанных отрезков отмерить расстояние в n попугаев. Идешь по отрезкам и суммируешь их длины. Если текущий отрезок даст длину больше, чем искомая, то нужно разделить его в том же отношении, в каком остаток от требуемого нам расстояния относится к длине отрезка. Это и будет точка, в которую нужно поставить текущее звено червя. А дальше всё повторяется для следующего звена начиная с этой точки. Разве что расстояние станровится чуть поменьше с каждым звеном. Червей рисовать - не ракеты в космос запускать. Достаточно школьной математики. :)
...правда дело усложняется тем, что червь может в этот момет сжиматься для или после прыжка, он может откладывать яйцо (тогда по телу волной идёт вздутие от яйца), часть тела червя может находиться в воздухе - все эти эффекты влияют на расстояние между звеньями и их размер и высоту, поэтому на практике кода для расстановки тела червя довольно жирный.
1
29
9 лет назад
1
Kozinaka, ну это не интерполяция уже получается) Хотя в целом в принципе выглядит достаточно годно и работать шустро должно. Просто при интрполяции выглядило бы все куда плавнее
0
14
9 лет назад
0
alexprey, "интерполяция", это просто название приёма, когда по имеющимся точечным данным восстанавливают новые данные внутри диапазона. А сами алгоритмы конечно разные, в моём случае вполне хватает такой вот примитивной арифметики, ты прав. Я уменьшил размер отрезков так, чтобы не было заметно углов в траектории.
0
29
9 лет назад
0
Kozinaka, а ну если у тебя достаточно малый шаг, то да.
Kozinaka:
"интерполяция", это просто название приёма, когда по имеющимся точечным данным восстанавливают новые данные внутри диапазона.
со сглаживанием! :D
0
26
9 лет назад
Отредактирован lentinant
0
Червь, по сути, это голова, которая едет по своей траектории и запоминает путь в виде связанных линейных отрезочков. Дальше на каждой итерации голова расставляет по траектории звенья хвоста как вагончики.
Оу, у меня использовался практически такой же метод, только я его не довел до вменяемого вида (позиция головы запоминалась при прохождении ею определенной дистанции, ну а звенья просто передвигались к определенной позиции из числа запомненных).
0
29
9 лет назад
Отредактирован alexprey
0
звенья просто передвигались к определенной позиции из числа запомненных).
наверное в этом и проблема не точности и кривизны была
0
14
9 лет назад
0
lentinant, если хочешь, я могу на C++ кусочком кода поделиться, который звенья расставляет.
1
24
9 лет назад
1
Когда будет альфа-тест и когда можно будет, примерно, на него записаться?
6
14
9 лет назад
6
darkowlom, на следующей неделе. У меня сейчас есть пять демонстрационных уровней из восьми запланированных, на каждый уровень уходит где-то один-два дня. Сейчас уровень с гонкой червей на время скриптую:
Думаю где-то во вторник-среду на следующей неделе опубликую демку. Не надо записываться, я просто выложу билд игры в открытом доступе. :D Спасибо за такое деликатное внимание к проекту, очень приятно! Буду очень благодарен, если ты найдёшь немного времени поиграть и написать отзыв по альфа-тесту.
Загруженные файлы
2
26
9 лет назад
2
это же шедевр, едрена макарона!
1
20
9 лет назад
1
Действительно впечатляет. Еще бы подделать рисовку червей под окружение и сделать, чтобы они оставляли след, то уже будет не к чему придраться (в плане графики).
Проект пилю уже несколько лет и чувствую, что ещё столько же допиливать буду. :(
Да вроде же играбельный проект.
0
14
9 лет назад
Отредактирован Kozinaka
0
Praytic, от играбельности до завершенности пролегает чёртова мариинская впадина.
А зачем червям оставлять следы? Пыльные типа? Вообще забавно, просто делается и, возможно, эффектно выглядит. Я попробую.
Есть ещё какие-нибудь идеи?
1
34
9 лет назад
1
Есть ещё какие-нибудь идеи?
Ну можно поддержку шейдеров сделать, и сильно расширить качество графики и эффектов. Если уж рисовать графику по новой, то добавить к мультяшному стилю немного реальных свойств окружения. Например можно сделать шейдер для шкуры змеи (отрожение цвета, света, поглощение с изменением освещения, мягкое рассеивание и кожа в клеточку или полоску). Зависит от типа змеи.
Можно также реализовать эффект DoF (у тебя есть паралакс на сколько я вижу, т.е карта из разных уровней грубины). Например "нижний" уровень можно будет замылить слабым блуром.
Потом можно сделать bloom+softshadows, первое делает свет более мягким, второе рисует мягкие тени под объектами (но не реальные тени а просто копирует спрайт, красит черным и размывает его а потом рисует ровно под этим же спрайтом). Получается затенение внизу объекта.
Потом можно сделать skyshadow shader. Он будет рисовать плавные тени от облаков. Это самое простое, рисуется карта облаков, потом мы её двигаем и чем светлее пиксель на текстуре, тем более насыщенная тень отбрасывается ка карту. Вся текстура предварительно размывается блуром.
Еще можно сделать сурфейс (невидимую текстуру на которой змеи будут рисовать след). Т.е бесконечный след на карте, он будет всегда оставаться. Этот сурфейс рисуется поверх текстуры земли, но с использованием шейдера warp. Он рисует черную (распаханную землю, а края этой текстуры покрыты обычной землей в том месте, но раздвинутой в стороны эффектом warp)
0
14
9 лет назад
0
Шейдер пока только один - радиал блюр который включается на замедлении времени:
Червь во время еды копит адреналин, типа. Когда шкала адреналина заполнена игрок может по кнопке запустить временное замедление времени. На видео это есть.
Тени как раз сейчас из спрайтов со сдвигом и блендингом делаются. Размываются только тени прыгающих или летящих существ, когда они высоту набирают. Вот видосик с тестом размытия теней от мух: www.youtube.com/watch?v=AjR9AyzA1ok
Мылить нижний уровень интересная тема! Надо попробовать, спасибо.
Загруженные файлы
2
20
9 лет назад
Отредактирован Praytic
2
Мне кажется, что шкала адреналина, располагающаяся под другой картинкой не очень смотрится. Что если ее перенести на саму картинку? То есть вот этот белый червь будет заполнятся красным, а когда заполнится полностью, то будет немного подсвечиваться и пульсировать.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.