Как сделать клиентскую игру
Создание браузерной игры. Как заработать миллион?
К браузерным играм не привыкли относиться всерьез, но на самом деле – это неплохой бизнес для небольшой команды друзей, у которых нет денег, но есть светлые мысли. А если еще и деньги есть, то тогда все значительно упрощается.
На самом деле создать браузерную онлайн игру может любой, у кого есть желание учиться, но не думайте, что вас ждет легкая прогулка. Даже если вы мастер на все руки (программист и дизайнер в одном флаконе), то придется потратить уйму времени. Если же вы не владеете ни кодом, ни карандашом, то затраты будут финансовыми.
Как создать браузерную игру ничего не изучая?
Ответ – никак. Для начала нужно будет выучить HTML – язык разметки, который работает в связке с каскадной таблицей стилей – CSS. Эти языки располагают текст и изображения на странице, собирая картинку из множества фрагментов. Поскольку вы намерены сделать именно браузерную игру, то ей обязательно понадобится сайт, желательно красивый и функциональный. Поэтому не обойтись без JavaScript – самого простого способа визуализировать вашу игру на стороне геймера. Этот язык позволяет менять местами элементы страницы без ее перезагрузки. По сути, JavaScript управляет элементами CSS и HTML в реальном времени.
Для создания браузерной игры придется выучить HTML, CSS, PHP и JavaScript, так что бессонные ночи вам гарантированы
Язык программирования PHP нужен для создания движка игры. Он используется на сервере для обработки данных, поступающих от разных геймеров. Это – ядро, которое приводит в действие все внутренние механизмы.
Я не хочу ничего учить, но у меня есть деньги
Поздравляем, вы избежали многих проблем. И тут же получили новые. Чтобы сделать браузерную игру хорошего качества (в плохую никто играть не будет) нужно иметь хорошую команду разработчиков, а хорошие спецы стоят денег. Если брать по минимуму, то вам необходимы:
Если у вас нет личных знакомств, то придется обращаться к аутсорсингу. Обычно такие ребята трутся на биржах фрилансеров, самой популярной их которых является www.fl.ru/.
Всех необходимых работников можно найти на биржах фрилансеров
Правда, в этом случае нужно быть очень осторожным, поскольку фрилансеры привыкли регулярно срывать сроки. Как говорят опытные руководители, можно бесконечно смотреть на 3 вещи: как течет память, как горит дедлайн и как не работает фрилансер.
Во сколько обойдется разработка?
Во столько, сколько у вас есть денег. Вот здесь приведены примерные выкладки и структура расходов на создание среднестатистической браузерки. Итоговая сумма – 25 миллионов рублей. Однако не стоит пугаться этой цифры. В статье автор посчитал расходы на разработку по максимуму, так что при желании эту сумму модно уменьшить в разы и даже десятки раз. Или увеличить, если ваш папа – прокурор. Безусловно, такие проекты, как Drakensang Online или City of Steam требуют сумм как минимум с шестью нулями, но простую табличную браузерку можно сделать за пару десятков тысяч рублей.
В конце концов, вы всегда можете обратиться к краудфандингу. Пути Кикстартера неисповедимы, взлететь там может любой проект. Главное правильно подать блюдо.
Этапы разработки
Создание браузерной игры с нуля можно разделить на несколько этапов:
1. Поиск идеи
Поскольку у вас вряд ли есть 25 миллионов рублей и вы вряд ли являетесь гением в программировании и дизайне, единственное, чем вы можете зацепить пользователя, это необычный сеттинг. Даже пресловутая кампания из эльфов, орков, людей и гномов способна увлечь клиента, если погрузить их в необычную среду или заставить делать странные вещи. Например, игра Ботва Онлайн была написана «по приколу» четырьмя людьми в свободное от работы время, но благодаря своему необычному сеттингу быстро стала успешным бизнес проектом.
2. Разработка сюжета
Сюжет очень важен (если конечно, вы не делаете стратегию). Если у самого воображения не хватает, наймите кого-нибудь, у кого оно есть. В крайнем случае, обратитесь к аутсорсингу и найдите толкового копирайтера, у которого уже есть опыт создания квестов.
3. Создание игры
Даже если вы выучили вдоль и поперек JavaScript и CSS, вы все еще ничего не знаете о том, как создать браузерную игру. Это примерно то же самое, как если бы вы выучили теорию плавания, ни разу не побывав в бассейне. Лучший выход в этом случае – воспользоваться самоучителем. Вот здесь можно многое узнать о разработке игр, причем не только браузерных.
Скорее всего, ваша первая браузерка будет выглядеть так. Это – легендарный Бойцовский Клуб
4. Продвижение проекта
Последний этап, на котором дело в свои руки берут комьюнити-менеджер и специалист по маркетингу (если таковой имеется). В крупных компаниях на долю рекламы уходит примерно 60% бюджета, поэтому на эту статью денег лучше не жалеть. Если же ваши финансы поют романсы, то тогда не остается ничего другого, как самому перепахивать игровые форумы и завлекать геймеров всеми возможными способами.
Как создать браузерную игру с помощью конструктора
Оказывается, ушлые программисты уже давно создали кучу конструкторов MMO, которые могут помочь новичку создать браузерную онлайн игру бесплатно. Это не значит, что вы можете успокоиться и удалить все закладки по программированию, но с помощью конструктора можно здорово ускорить процесс.
Популярный игровой конструктор Construct 2
Большой популярностью пользуется MMO Constructor – отечественный продукт, в котором можно создать все элементы полноценной браузерной RPG. Взамен авторы требуют совсем ничего – 50% от прибыли проекта. Разобраться в конструкторе непросто, но добрые люди уже написали гайды. Также чтобы создать браузерную игру, можно воспользоваться такими программами, как Construct Classic, Eclipse, FPS Creator.
Больше информации о конструкторах можно узнать на форуме Gcup, где тусуются все: и продвинутые геймдевы, и зеленые новички.
Так что там насчет миллиона?
Любая, даже мобильная игра должна приносить прибыль. Иначе нет никакого смысла тратить свое и чужое время. Дабы сделать свой проект финансово успешным, нужно слушать, что говорят опытные разработчики и делать то же самое:
Напоследок хочется сказать – не так страшен черт, как его малюют. Даже лучшие геймдевы когда-то начинали с нуля, и кто знает, может быть именно вы станете следующим Джоном Кармаком или Ричардом Гэрриотом?
Руководство для начинающих создателей MMORPG игры.
Эта статья описывает первые шаги в создании массивно-многопользовательской онлайновой игры. Она предназначена для независимых разработчиков игр, которые обладают ограниченными ресурсами и небольшим опытом. После прочтения данной статьи Вы будете знать, что нужно для начала, и получите несколько советов относительно того, что стоит и чего не стоит делать.
Автор: Radu Privantu
Предисловие от переводчика
В последнее время очень широкое распространение в мире игр получили многопользовательские онлайновые игры (MMOG — massive multiplayer online game), которые рассчитаны на огромно-большое количество игроков. Конечно, все слышат только об успешных проектах, которые собирают серьезные финансовые доходы. Это и привлекает большинство новичков в игрострое в этот жанр. Однако, мало кто реально представляет себе, какие проблемы и задачи стоят при создании такого рода игр, какими знаниями надо обладать и т.п.
В результате – взявшись сразу за создание такого проекта, новичок быстро понимает насколько все сложно и запутанно. И бросает все, разочаровавшись.
Цель данной статьи – дать начальное представление желающим сделать свою игру в стиле MMOG, о том, какими знаниями надо обладать, что нужно уметь и к чему быть готовым. Ведь не секрет, что если человек пробует что-то раз и результат отрицательный — то повторно возвращаться он к этому вряд ли будет. Поэтому хотелось бы предостеречь еще раз желающих окунуться в мир создания таких игр и предложить им еще раз все обдумать и взвесить. Может, стоит начать с более простых игр, чтобы просто получить требуемый минимальный опыт?
Статью такого типа мне хотелось написать уже давно, но я не обладал достаточным опытом в этой сфере. В просторах Интернета мне попалась статья Radu Privantu, который является основателем и руководителем проекта Eternal Lands (www.eternal-lands.com). С его письменного разрешения я перевел эту статью на русский язык.
В статье говорится о создании MMORPG (ролевой игры), но я думаю, что описанное в ней относится ко всем типам массивно-многопользовательских онлайновых игр.
Руководство для начинающих создателей MMORPG игры
Эта статья описывает первые шаги в создании Вашей массивно-многопользовательской онлайновой игры. Она предназначена для независимых разработчиков игр, которые обладают ограниченными ресурсами и небольшим опытом. После прочтения данной статьи Вы будете знать, что нужно для начала, и получите несколько советов относительно того, что стоит и чего не стоит делать. Самый первый шаг – это оценка Ваших знаний и возможностей. Вы должны быть готовы к ожидающему вас разочарованию из-за потери времени на создание того, что Вы просто не можете сейчас сделать.
Шаг 1. Оценка своих знаний:
Требуемые знания:
- 1. Знание как минимум одного языка программирования. Сейчас среди разработчиков наиболее популярный язык С++, по причине его преимущества в эффективности и скорости. Visual Basic, Java или C# также могут быть использованы в этом качестве.
2. Необходимо ознакомиться с графической библиотекой. Популярный выбор это SDL, OpenGL либо DirectX/Direct3D.
3. Определиться с сетевой библиотекой. Вы можете выбрать WinSock, SDL_net или DirectPlay.
4. Иметь опыт в программировании игр. Для примера, иметь понятие что такое: очередь событий, многопоточность, разработка пользовательского интерфейса (GUI) и т.п.
Очень рекомендуется знать:
- 1. Клиент-серверное взаимодействие и архитектуру построения таких систем.
2. Создание кросс-платформенных приложений. Вполне возможно Вы захотите создать вашу игру, и главным образом клиент таким образом, чтобы он мог запускаться на различных операционных системах. Для этой возможности я рекомендую использовать SDL, OpenGL и SDL_net.
3. Разработка под веб (Интернет). Это понадобится, если Вы захотите предоставить желающим возможность просматривать статистику по игрокам, информацию о сервере, или любую другую информацию через вебсайт.
4. Защита и администрирование. Вы же не хотите, чтобы кто-то взломал Ваш сервер?
5. Работа в команде, управление командой. Вам нужна будет команда, которой Вы сможете успешно управлять.
Шаг 2. Создание эскиза разработки
Я заметил, что много людей пишут в форумах сообщения о поиске команд для разработки MMOG. Многие из них начинаются такими словами: «Мы – начинающая компания/игровая студия и нам нужны 3 художника, 2 программиста, 1 музыкант и т.д. для создания инновационной, никогда ранее не существовавшей MMOG, в которой Вы будете иметь полную свободу действий и возможности изменения мира и т.п. Мы оплатим Вашу работу по окончании разработки, когда мы сделаем на этом немного денег». К сожалению, с современными технологиями и ограниченной пропускной способностью (сетевой) Вы не сможете создать динамического мира. Попытка создать что-то невозможное приводит к провалу. Правильней будет начать с малой, полностью рабочей, расширяемой системы и архитектуры.
Основная архитектура программы:
Сначала, попробуйте сосредоточиться на создании простейшей клиент-серверной модели, где будут введены следующие возможности:
1. Создание нового персонажа
2. Сохранение этого персонажа (на стороне сервера)
3. Вход в игру персонажем
4. Создать возможность общения с другими
5. Создать возможность передвигаться по миру в 3D
Задача сохранения информации о персонаже на первый взгляд выглядит довольно простой, но это не так. Например, есть два способа это сделать: использовать базу данных или использовать файлы. Далее в таблице приведены преимущества и недостатки для каждого из вариантов:
Теперь, когда Вы определились, как сохранять информацию о персонажах, Вам нужно решить какой сетевой протокол Вы будете использовать для клиент-серверного взаимодействия: TCP или UDP? TCP известен как более медленный, но зато более аккуратный, он требует дополнительной пропускной способности. На практике, я не замечал каких-либо проблем при использовании TCP. Если у вас предусмотрена достаточная пропускная способности сети, TCP – это хороший выбор, по крайней мере, для начала. UDP может быть очень неприятным, особенно для начинающих. Помните о том, что первичные тесты движка и игры будут делаться в Вашей локальной сети, поэтому все пакеты будут приходить к месту назначения в таком же порядке, что и отправлялись. Но это не может быть гарантировано при работе через Интернет, т.е. в реальной среде. В то время, как обычно пакеты прибывают в заданном порядке, некоторые из них могут теряться, и это постоянная проблема для Интернета. Конечно, Вы можете разработать свой протокол таким образом, чтобы клиент/сервер могли восстанавливать потерянные пакеты. Но это тяжелый процесс, который не рекомендуется для начинающих.
Как делать свои игры бесплатно? Руководство по разработке инди-игр от T3
Наверное каждый начинающий геймдизайнер задается вопросом, как делать свои игры бесплатно? Сегодня в блоге программы «Менеджмент игровых интернет-проектов» мы нашли для вас и перевели новую статью, как раз охватывающую эту тему.
Как делать свои игры бесплатно? Руководство по разработке инди-игр от T3
Вам не нужен ААА бюджет или ученая степень, чтобы делать игры.
Для того, чтобы делать свои игры, не обязательно быть профессиональным разработчиком. Только за эти выходные энтузиасты и самоучки сделали более 7000 новых игр, участвуя в Global Game Jam. В течение 48 часов команды со всего мира собрались вместе, чтобы нарисовать, разработать и опубликовать игры, соответствующие тематическому заданию из одного слова: “волны”.
Такие мероприятия проходят постоянно, а интернет полон различных бесплатных инструментов, туториалов, видео-уроков и форумов для новичков. Будь вы опытным программистом, ищущим новые испытания или новичком, не написавшим ни строчки кода, сейчас лучшее время, чтобы начать свои приключения в мире инди-игр.
Вот наши главные советы о том, как делать игры бесплатно.
Новичок? Начни со Stencyl
Если вы абсолютно новый человек в игровой индустрии, редактор с технологией перетаскивания (drag and drop), такой как Stencyl, вам подойдет. Код в нем спрятан за интерфейсом “что видишь — то и получаешь”. Фрагменты программируемой логики в нем выглядят как кусочки паззлов, с помощью которых можно делать вот такие игры.
Когда вы впервые запускаете Stencyl, он спросит, хотите ли вы пройти их ускоренный курс. Это бесплатный туториал, в котором вам объяснят азы на основе анимационного персонажа-игрока по имени Нони, милого врага-клоуна и набора тем для создания вашего первого 2D уровня. Также в наборе есть звуки и несколько поведенческих моделей для построения игровой логики.
Поведенческие модели — это ваши соединяющиеся кусочки, в каждом из которых есть удобное выпадающее меню, что позволяет вам легко разбираться с настройками ввода с клавиатуры, скорости игрока и внутриигровой гравитации, без необходимости видеть код, если вы этого не хотите.
Онлайн-туториал медленно и доходчиво все объяснит, так что вы растопчете всех клоунов в кратчайшие сроки. А встроенная Stencylpedia поможет вам быстро освоиться в разработке для iOS, Android, Windows, Mac, Linux, Flash и HTML5.
В качестве альтернативы, попробуйте Ink:
Inkle Studios стоят за разработкой таких мобильных текстовых хитов как 80 days и Sorcery! Их язык сценариев достаточно прост, что позволяет сценаристам легко и быстро создавать разветвленное повествование. Если олдскульные адвенчуры — это ваше, то Inkle Studios хороша для начала.
Нужно больше возможностей? Попробуйте GameMaker Studio
YoYo games хотят сделать разработку игр настолько прозрачной и упорядоченной, насколько это возможно, и GameMaker Studio как раз отвечает этим целям. Как и Stencyl, GameMaker Studio обладает drag and drop интерфейсом, что позволяет вам строить код блок за блоком даже без опыта программирования.
Это эффективный игровой движок, построенный на событиях и действиях. Когда происходит событие, такое как нажатие кнопки или столкновение, игра производит действие, к примеру, перемещает игрока или издает звук.
В GameMaker Studio есть готовые действия, которые можно легко связывать друг с другом, или, если вы более смелый, можно писать свои собственные с помощью GML (Game Maker Language). GML намного проще изучить, чем такие языки как C++ или Java. Также есть множество пошаговых онлайн-туториалов, которые объяснят вам азы. Этот видеогайд про то, как сделать свой астероид хорошо подходит для начала:
Функционал бесплатной версии ограничен, но она подходит для того, чтобы учиться. А с помощью полной версии вы сможете делать мультиплатформенные игры для Android, HTML5, iOS, OS X, PS4, PS3, PS Vita, Ubuntu, Xbox One, Windows 8, Windows Phone 8 и Windows RT.
В качестве альтернативы, попробуйте PlayCanvas:
Если хотите делать игры на ходу, прямо в браузере, попробуйте PlayCanvas. Просто создайте аккаунт и ныряйте прямо в туториал.
Полны авантюризма? Пробуйте Unity
Если вы хотите делать игры на профессиональном уровне, пользуясь десятками различных функций и опытом развивающегося интернет сообщества, начните сразу с Unity. Этот сложный движок не для слабонервных, требующий времени, чтобы в нем разобраться, но когда вы сделаете это, награда будет огромной.
Именно этот движок стоит за высококачественными релизами, такими как LaraCroft GO от Square Enix Montreal и Max: The Curse of Brotherhood от Press Play. Он позволяет создавать 2D и 3D игры для разных платформ с реалистичной физикой, красивым светом и кастомными деревьями, качающимися на ветру.
В Unity есть магазин (asset store) с готовыми ресурсами, а в базовой версии — пакет с бесплатными, включая контроллеры и анимацию. Но для того, чтобы в полной мере почувствовать все возможности движка, хорошо бы ориентироваться в JavaScript или C#. Unity поддерживает оба языка, и, скажу вам как человек, который 4 года назад не мог написать ни строчки кода, это проще, чем кажется.
Этот туториал поможет вам начать, и как только почувствуете себя комфортно, можете начинать постепенно погружаться в онлайн-учебник, находя информацию обо всех функциях Unity. А если вы ищете пошаговые инструкции по написанию скриптов, посмотрите бесплатные курсы от Codeacademy.
В качестве альтернативы, попробуйте Unreal:
Unreal Engine от Epic Games — это движок, который стоит за такими ААА проектами как Bioshock Infinite, Mass Effect 3 и Gears of War 4. И, что совсем невероятно, им можно пользоваться абсолютно бесплатно.
Начинайте творить
Когда вы разберетесь со своим новым движком, вам понадобятся арт и звук, чтобы оживить вашу игру. И для этого тоже есть бесплатный софт.
— Делайте пиксельный арт в браузере с помощью Piskel
— Рисуйте спрайты, текстуры и фоны в GIMP
— Делайте гладкую векторную графику в Inkscape
— Создавайте и анимируйте 3D модели в Blender
— И, если вас увлекает музыка в играх, пишите и редактируйте многоканальные записи в Audacity
Так чего же вы ждете?
Кстати, если вы хотите расширить свой круг знакомств в геймдеве, пообщаться с теми кто сейчас в Москве занимается разработкой игр, послушать лекции по игровой индустрии и IT от экспертов, то приглашаем на наши бесплатные открытые лекции в ВШБИ. В марте их будет много, для входа надо только зарегистрироваться. Подробности про каждое мероприятие и ссылки на регистрацию: