Шестерых тошнит

Vanity of razzle_dazzle
Пожалуй, пришло время и мне рассказать о своих первых игродельческих опытах.

Году эдак в 2005 у меня появился Интернет. Связь была не очень, 20 мегабайт информации из Сети стоили как обед в школьной столовой (т.е. нормальную игру было скачать не то чтобы невозможно, но невероятно дорого), а на первых порах она вообще обрывалась от того, что кто-то на верхнем этаже включал в коридоре лампочку. Короче, решил я, нужно делать игры самому. Скачал Game Maker бородатой версии, поклацал примеры, идущие с игрой, ничего не понял (искать какие-то сайты на русском языке мне тогда было невдомёк) и забросил эту затею.


В старые добрые времена в Интернет необходимо было заходить с помощью данной программы.


Через буквально два-три года доступ в Интернет значительно подешевел и стал безлимитным. Тогда я, кажется, переиграл чуть ли не в каждую выходящую игру, мимоходом проходя классику девяностых, а вот о создании чего-то своего я разве что мечтал, что выражалось в периодической установке-удалении каких-нибудь Delphi и самоучителей к ним. Этого мне вполне хватало для того, чтобы умерить свой разработческий пыл.

На втором курсе я решил взяться за программирование всерьёз, нашёл учебник по Visual Basic и начал заниматься. Калькулятор, проигрыватель (что там ещё из пост-helloworld набора начинающего программиста?) — я продвигался медленно, но верно. Моей главной и единственной оригинальной программой на VB был разблокировщик скрытых фотографий вконтакте. Суть его заключалась в том, что в форму вводился интересующий id, программа автоматически вставляла недостающие знаки для адресной строки и открывала с получившимся адресом браузер. Подобная дыра в защите была широко известна и долгое время не устранялась, но вот беда — когда я сделал эту программу, подобный способ уже не работал. Самоучитель был пройден более чем наполовину и новые термины не хотели лезть в голову, а до полноценной графики ещё было страниц двести. Я не выдержал снова.


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

Как старик из известной пушкинской сказки бросил невод трижды, я с третьего раза таки сумел найти подходящий инструмент, которым снова оказался Game Maker. Научиться передвигать спрайты оказалось не таким сложным делом, с оператором if я уже был знаком и в целом подобный расклад уже был неплохой основой для создания полноценной игры. Я находился в сознательном возрасте третьекурсника, так что свой Фоллаут мне делать не хотелось, я не фанател от ММО, а трёхмерный шутер был мне не по зубам. Но мне нравились (и нравятся) фильмы Дэвида Линча. И я решил сделать игру по его первой короткометражке «Шестерых тошнит» (Six figures getting sick).

 

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

Дэвид Линч

Моя первая полноценная игра была сделана за вечер — факт, которым я невероятно горжусь. Основной технической проблемой было заставить игру воспроизводить видео в качестве фона, чего GM делать не умел и не умеет. Тогда где-то на одном из форумов я столкнулся с подобным вопросом, а решение было предложено следующее — конвертировать в gif. Минутный сэмпл конвертированного видео занимал прямо-таки неприличное количество памяти и отказывался запускаться. Тогда я понизил разрешение до 320 на 240, вставил условия, при которых это видео продвигается — и готово. Рассказывать про игру больше нет смысла — она слишком коротка, да и лучше раз увидеть, чем сто раз прочитать.

Это чем-то напоминает электронную версию берроузовской «Машины сновидений», которая отказывается ею быть, заставляя планомерно выстукивать по Пробелу, который и является единственной клавишей для управления. Впрочем, я уверен, что можно добиться медитативного эффекта, если забыть о долблении пробела и сосредоточиться на том, «как живопись двигается под звук».

drive.google.com/file/d/0B3SZDXPoJrmLZENrYlpHeXN1Vlk/view?usp=sharing

 

Похожие статьи

52 комментария
Xitilon

Для ката в текущем варианте интерфейса нужно юзать кнопку «Разрыв страницы» справа. Поправил.

Что за программка-то для захода в инет? Я такой не припомню.

razzle_dazzle

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

Насколько я понимаю, такая штука используется для доступа из локальных сетей. У нас все местные локалки с доступом к Сети были на нём. Лет 5 назад все дружно перешли на Abills.

Xitilon
Когда я увидел это окно, я подумал было, что кто-то сделал какую-то бредовую программу, аналогично нашей крегуздантской ШП. С первого взгляда кажется, что элементы формы расставлены как-то беспорядочно — размер контейнера статистики выставлен нерационально, там же всего три строки, а ярко-красный цвет выставлен для бредовости, да и в каком-то странном месте, плюс «за сессию» ссылается на сессию в ВУЗе, а для остатка денег нет вообще ни текстовой формы, ни отображения чего-нибудь вроде «0 руб.», или «сейчас неизвестно». При этом всём внизу версия аж 2.55.7, а выглядит как сляпанное На Коленке.
Xitilon

Здорово рассказал, понравилось.

Минутный сэмпл конвертированного видео занимал прямо-таки неприличное количество памяти и отказывался запускаться.

Кстати это интересный вопрос, сколько же там было, и почему оно отказывалось запускаться. По моим расчётам:
640 x 480 x 25 кадров в секунду x 60 секунд = 460,800,000 ~ 460 МБ
Лимит для размера файла FAT32 вроде бы не превышен, а для самого GM никакого подобного лимита я не знаю. Насколько бородатая версия была, 4.x? Ну вряд ли 3.

Зачем там этот CleanMem.dll?

razzle_dazzle

Восьмая — это же 2012 год! Возможно, есть ограничения на размер одного спрайта, я не помню. Изначально это был 1 сплошной спрайт.

Нашёл своё старое письмо другу, которому показывал данную игру, там написано следующее:

   Хорошие новости для обладателей слабых компьютеров — я освоил элементарную библиотеку cleanmem и теперь даже «Шестерых тошнит зе гейм» поглощает не больше 40 Мб памяти (раньше было 750).

Т.е. 750 метров при 320 на 240! Опять-таки, это не панацея, потому что для загрузки игры всё равно нужно 750 Мб памяти, насколько я понимаю.

Не факт, кстати, что сэмпл длился ровно минуту.

Xitilon
«Прошёл» игру. Довольно артовая поделка, недурно. Напомнило игру Дрейка на текущий джем. Но долбёж по пробему больше ассоциируется с Prehistorik, конечно…
Логин

Название нра.

Дийкстра был ещё тот тролль: «Попытки же превратить программирование в простое занятие, доступное каждому, обречены на провал.» Об-ре-че-ны. :)

Xitilon
Ты мне что ли говоришь?
shevtsov200
Он про это.
Xitilon
Ну так это ж не Хейзера.
shevtsov200
Ой, да.
Hrenzerg

А теперь расскажи где я говорил что мне по душе идея превратить программирование в простое занятие доступное каждому?

Моя идея всегда была в том, что более продвинутый инструментарий позволяет заниматься непосредственно РАЗРАБОТКОЙ игр, а не написанием КОДА.

Xitilon
Собственно это и моя идея.
Логин

«превратить программирование в простое занятие»

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

Hrenzerg

Ты совсем поехавший?

Ты вообще гамак-то хоть раз видел? Пробовал при помощи него вести разработку? Или ты так говоришь, со слов от лица всех недовольных?

«превратить программирование в простое занятие»

Это идея гамака.

Ну нет. Это твоя интерпретация идеи гамака. На самом деле идея гамака:

Гамак (фр. hamac, от исп. hamaca; заимствовано из языка карибских индейцев) — предмет мебели, ложе для сна и отдыха, представляющее собой подвешенный за два противоположных конца прямоугольный кусок ткани или плетёной сетки.  Отличается относительной лёгкостью изготовления, установки и переноски, возможностью сворачивания, лёгкостью чистки.

А идея GameMaker (из офф источников, а не из домыслов Сергея Боброва)

Сделать разработку казуалок простой и доступной для любого человека без навыков программирования.
Облегчить процесс разработки игр для более сложных проектов, снижая время разработки(по сравнению с нативными ЯП) на 80%.
Обеспечить кроссплатформенность используя только один ЯП, собственно GML.

Логин

Нет. Нахрена пробовать, ведь старые и очевидные истины не перестали работать. Представь себе шкалу, на одном краю кнопка «сделать крутую игру», на другом краю пускай ассемблер. Чем твой инструмент ближе к первому, тем на меньшее ты можешь повлиять, тем больше сделано до тебя и за тебя. Чем ближе ко второму краю шкалы, тем полнее твой контроль но и больше затрат по времени.

 

Xitilon
Нахрена пробовать
Нет, ты не прав. GML это вполне хороший баланс между контролем и бесполезностью. И давай на этом закончим. В доказательствах должны быть только игры.
Логин

Зачем заканчивать интересный разговор? А он и тебе интересный, вон сам ввязался. Синдром вахтёра во все поля.

 

Xitilon
Он интересен мне тем, что он не уместен. На месте razzle_dazzle я бы уже убрал это третьесортное перемалывание из пустого в порожнее из комментариев к душевной байке из жизни насчёт его первого проекта.
Hrenzerg

«превратить программирование в простое занятие»

Это идея гамака.

Ну нет. Это твоя интерпретация идеи гамака. На самом деле идея гамака:

Гамак (фр. hamac, от исп. hamaca; заимствовано из языка карибских индейцев) — предмет мебели, ложе для сна и отдыха, представляющее собой подвешенный за два противоположных конца прямоугольный кусок ткани или плетёной сетки.  Отличается относительной лёгкостью изготовления, установки и переноски, возможностью сворачивания, лёгкостью чистки.

А идея GameMaker (из офф источников, а не из домыслов Сергея Боброва)

Сделать разработку казуалок простой и доступной для любого человека без навыков программирования.
Облегчить процесс разработки игр для более сложных проектов, снижая время разработки(по сравнению с нативными ЯП) на 80%.
Обеспечить кроссплатформенность используя только один ЯП, собственно GML.

Hrenzerg
Обнаружен КОСЯК. Ctr+Enter публикует новые коммент. Даже если оно нажато при РЕДАКТИРОВАНИИ коммента
Hrenzerg

Обнаружен КОСЯК. Ctr+Enter публикует нов

ый коммент. Даже если оно нажато при РЕДАКТИРОВАНИИ коммента

Xitilon
По-моему это не косяк, так и задумано. Кроме того, не надо писать об этом прямо в комментарии к посту. Поудалял дубли.
Логин

«А идея GameMaker» Обведи красным, куда смотреть. Разницы то нет.

 

Xitilon
Прекращайте уже. Оба из вас по-своему правы, но в данной ветке комментариев это уже тупо препирательства. Оба из вас умеют при этом делать игры — так вам шашечки, или ехать? Спорить или геймдевить?
Логин

В сеть ходят общаться, да. И спорить, да, люди любят спорить. Ксит, для тебя это новость?

 

Xitilon
Сеть сетью. Создай свой пост. А то понабегаешь абсолютно куда попало, и начинаешь заводить свою шарманку где бы то ни было.
Логин

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

 

Логин

«что более продвинутый инструментарий позволяет заниматься непосредственно РАЗРАБОТКОЙ игр, а не написанием КОДА.»

Ну ты себе что хочешь думай, но сейчас компьютерные игры неотделимы от кода. Если изложить кратко, вот ты хочешь делать игру без написания кода, в этом случае кто-то должен сделать её за тебя. А тебе предоставить ну что-то вроде удобного редактора уровней, в котором ты без кодинга будешь «делать игру». По хорошему говоря, это ближе к модмейкерству.

 

Xitilon
Игра != движок, писать движок != делать игру. И завязывай оффтопить. Создай лучше отдельный пост, в котором раз и навсегда раскритикуй наше ИМХО, и там можно продолжить сей крайне продуктивный, интересный и животрепещущий разговор.
Hrenzerg

Основной технической проблемой было заставить игру воспроизводить видео в качестве фона, чего GM делать не умел и не умеет.

А вот это наглая ложь! В 2008-ом я делал в своей игре воспроизведение видео без извращений с гифами. Думаю, сейчас достаточно средств в виде DLL библиотек которые умеют воспроизводить видео бэкграундом.

razzle_dazzle

Почему же наглая? Тем более что GM без библиотек этого действительно не умеет делать.

 

Увы, тогда я не нашёл ничего подходящего.

Hrenzerg

Знаешь что?

Без библиотек вообще ничто ничего не умеет делать. Хоть GM, хоть Си, хоть Юнити.

Другое дело, что где-то они дефолтные, а где-то их нужно явно подключать.

Наглая, потому что уже в 201X был такой вот замечательный сайт: www.gmtoolbox.com/

Xitilon
Не ложь, что GM не умеет отображать видео из коробки конкретно так, чтобы кроме видео что-то ещё происходило в окне.
Hrenzerg

Ложь. Не было в изначальной формулировке ничего про коробку.

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

Xitilon
Не было в изначальной формулировке
Моё утверждение было уже отдельным от этого, как патч на то, что было высказано ранее, который бы сделал это более осмысленным и правдивым высказыванием, хотя и другим. Мне кажется, автор имел в виду именно это, только выразил это неточно.
razzle_dazzle

Осталось только понять, что такое коробка и чем она отличается от не-коробки, согласно замечаниям Хейзера, умеющей воспроизводить видео как фон...

Никакого сарказма, мне действительно интересно.

Xitilon
Ну как. «Из коробки» это устойчивое выражение среди программистов для всего того, что движок (или, в некоторых случаях, язык программирования), может выполнять без докручивания к нему других компонентов, которые не являются его неотделимой или необходимой частью. Например, реализация языка C# на платформе .NET умеет из коробки (что в данном случае означает «из BCL») читать и писать файлы в ряде кодировок, но не умеет из коробки читать и писать файлы в какой-нибудь экзотической кодировке из сдампленных картриджей для GameBoy Advance. Так же и GM/GML умеет воспроизводить анимации, состоящие из кадров, но не умеет воспроизводить mp4/avi-файлы на фоне основных действий.
Hrenzerg
Не только среди программистов. Вообще среди пользогвателей ПО. Так что в общем случае — возможности ПО без лишних телодвижений типа плагинов, библиотек, а в случае операционок и без доп. программ. По факту, возможности «из коробки» обычно весьма скудны. Тот же фаерфокс приходится расширять плагинами, даже Unity приходится расширять скачивая заготовленные компоненты и скрипты.
shevtsov200
А за что столько комментов потёрли?
Логин

Смотри стартовый коммент, Дийкстра их затралел, лал.

А если серьёзно, это орден тишины. Не хотят обсуждения и общения, хотят молчать. Помолчим и мы с ними.

 

Мурка
Вот вот. Хоть собственный блог создавай, в котором можно будет по душам потолковать. С блек джеком и оскорблениями.
Hrenzerg
За долбоебизм и мудачество Борьбова. Который до сих пор почему-то всем пытается доказать каких-то метафизических сферических коней в вакууме.
razzle_dazzle

Поскольку комментарии имели характер каких-то личных разборок и к написанному мной отношения не имели (упоминание GM у меня и в дискуссии в комментариях было лишь поводом для холивара), а данный блог всё-таки называется  vanity of razzle_dazzle, мне кажется, что я имел и имею правоудалить лишнее.

Создал альтернативный блог, который может использоваться для разборок. Обещаю комментарии там не удалять. http://kolenka.su/blog/resistance/

Надеюсь на ваше понимание.

Xitilon

За оффтоп и личные выпады.

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

Хейз, извини, но твоё оффтоповое кормление тролля тоже совсем излишне. Мы всё равно удалим и то и другое.

Логин

Следующий подкол Хейзера [] начнёт череду банов

Ты сделал мой день. :) Как строго то. Он принцесса? Благородная девица? С ним может вообще нельзя разговаривать, а то расстроится, плакать будет. Ну ок, давай, охраняй его.

razzle_dazzle

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

 

Xitilon

Как это… Мы же все принцессы… Ты что, не принцесса?! Это сайт принцесс! Забанен на неделю, и чтоб через неделю превратился в принцессу!

Желательно в принцессу-воина, как мы.

Неверный

Дурак ты, Ксит. Тут же вся туса из пяти семи человек, старые знакомые все. А ты банить, визг этот про нарушения.

 

Xitilon

За что боролись, на то и напоролись!

И вот тут я не понимаю: почему не повеселиться?

Регистрацию на третий уровень мультоводства объявляю открытой!

Hrenzerg

Хейз, извини, но твоё оффтоповое кормление тролля тоже совсем излишне. Мы всё равно удалим и то и другое.

Несправедливо! Он же был почти домашним! Из рук ел! А вы… А вы… А вы осокрбляете МОИ ЧУВСТВА! Как не стыдно!

Неверный
осокрбляете МОИ ЧУВСТВА! Как не стыдно!

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

 

Hrenzerg
Причём здесь гамак то? Я буду прибегать как подорванный на любую несправделивость связанную с любым игровым движком! Не люблю я, когда люди бесятся только потому что не смогли освоить инструментарий.
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.