Как создать флеш игру самому? Создание flash игры с нуля


Как создать флеш игру самому?

К счастью, создать флеш игру под силу большей части активных пользователей Интернета. Новичкам в этом хорошо помогают пусть даже начальные навыки программирования (приобрести их, кстати, не так сложно – было бы желание). Правда, вам понадобится некоторое количество времени на то, чтобы освоить один из многочисленных специальных конструкторов флеш игр (к примеру, Macromedia Flash).

Многие сайты с программным обеспечением содержат, помимо всего прочего, как раз такие конструкторы. Установка их на компьютер, как правило, не создает для пользователя особых проблем. Помните о том, что выбранную программ следует зарегистрировать и установить все необходимы изменения – тогда она будет вам служить верой и правдой, то есть бесперебойно. Большинство конструкторов игр сделаны на английском языке, но вы можете поискать русификатор или версию на русском. Часто в самих настройках есть окно, где можно установить родной для вас язык.

Как создать флеш игру: предварительная подготовка

Еще до того как вы сядете за освоение конструктора, у вас уже должен быть намечен приблизительный сценарий игры, сюжетная линия. Неплохо заранее подумать и над анимацией и оформлением – это позволит существенно сэкономить ваше время. Перед тем как создать свою флеш игру, определитесь с ее желаемым типом. Для того чтобы вдохновиться, посетите сайты, где представлены библиотеки флеш игр.

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

Как создать флеш игру: работаем в конструкторе игр

Откройте шаблон и перетащите на него нужные объекты, находящиеся в разделах «Анимационные объекты» и «Статические объекты». Создайте фон, выбрав текстуру и цвет. Для объектов подберите при помощи палитры цвета. При помощи проигрывателя анимации проверьте, какие еще функции не задействованы. В настройках выставите уровни движения игровых персонажей (в аркадах) или предметов (в логических игрушках).

После того как вы проделали все необходимое, запустите отладчик. В данном режиме вы можете пройти собственную игру, начиная с любого уровня, – это важно для того, чтобы проверить ее на работоспособность. Обнаруженные ошибки устраните и вновь проверьте флеш игру. Если все в порядке, сохраните изменения.

Как создать флеш игру: доводим игру «до ума»

Теперь вы можете придумать для своего флеш детища оригинальное название, сочинить краткую аннотацию. При помощи конструктора заставок сделайте к игре эффектную заставку. Все внесенные изменения также сохраните.

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

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

Как создать флеш игру, если есть желание, но нет знаний?

Тем многочисленным пользователям, которых так волнует этот вопрос, мы непременно хотим дать ответ. Помните, что любые знания не могут взяться из ниоткуда. Любое новое дело приходится с чего-то начинать. Со временем вы станете понимать, каких именно знаний вам не достает для создания игр. Вы начнете спрашивать советов, искать рекомендации, читать соответствующую литературу, благодаря чему станете продвигаться в своем умении все дальше и дальше. Не бойтесь нового, иначе вы никогда не достигнете желаемого. Удачи!

fb.ru

Разработка игр. С чего начать? | GeekBrains

Что должны учитывать будущие разработчики игр? С какого языка начать обучение? К чему стремиться? На кого равняться? И что необходимо сделать в первую очередь?

Что должны учитывать будущие разработчики игр? С какого языка начать обучение? К чему стремиться? На кого равняться? И что необходимо сделать в первую очередь?

Большинство любителей рок-музыки рано или поздно берут в руки гитару. Фанаты спорта страстно мечтают о выходе на футбольное поле, баскетбольную площадку или теннисный корт. Ну а те, кто совершил сотни угонов в GTA, провел десятки часов в компьютерных клубах за Counter-Strike или достиг немалых успехов в MMORPG, наверняка задумываются о карьере разработчика игр.

Проблема в том, что данному направлению обучают в считанных учебных заведениях. Посему большинство разработчиков игр – самоучки, некогда сами составившие учебную программу. Но какие нюансы они учитывали? С чего начинали и к чему стремились? Какой язык учили в первую очередь? На эти и другие актуальные вопросы мы и постарались ответить.

К чему стремиться?

Перед походом в магазин вы составляете список покупок (хотя бы в голове). Перед поездкой в другой конец города – прокладываете маршрут. Ну а перед тем, как обучаться разработке игр, целесообразно задаться вопросом: чем именно вы хотите заниматься? Создавать мобильные приложения или браузерные игры? Трудиться в крупной компании или маленькой? Профессионально заниматься разработкой игр или посвящать этому свободное от работы время? И если первое, то что интересует вас больше: создание интерфейса, отшлифовка геймплея или написание скриптов?

Правильная постановка цели поможет сэкономить уйму времени и сил. Кроме того, позволит достичь конечного пункта кратчайшим путем. Без риска сойти с дороги или угодить в болото.

Какой язык учить?

Кроме того, от цели зависит и ответ на животрепещущий вопрос: с какого языка программирования стоит начинать?

Так, будущим разработчикам игр вроде Minecraft и мобильных приложений под Android стоит обратить пристальное внимание на Java. Для начала советуем пройти интенсив "Основы Java-программирования", тем более, что это бесплатно. Тем, кто заглядывается в сторону iOS – на Objective-C. Для браузерных игр порой хватает знания Ruby-On-Rails. Для совсем маленьких и простых временами достаточно HTML. В производстве Flash-игр используется ActionScript, а для написания скриптов любой сложности вам понадобится JavaScript или, возможно, не столь распространенная Lua. Для создания же небольших консольных игр требуется знание C#.

Что до наиболее крупнобюджетных игр (так называемого класса AAA), то большинство из них оснащены своим или заимствованным у коллег "движком". Нередко, впрочем, весь "движок" или его большая часть написана на C++. Именно этот язык использовался при создании множества известных "игрушек" – от Doom 3 и Call Of Duty до FIFA и The Sims. В то время как классика вроде Quake была написана на C.

Впрочем, в освоении C++ есть и загвоздка – чрезмерная сложность. Недаром ведь говорят, что браться за C++, не зная других языков, – все равно, что начинать изучение математики с линейных уравнений.

Достаточно ли одного языка?

Одна из прелестей программирования – возможность постоянного саморазвития. В разработке же игр (особенно крупных) самосовершенствование, в том числе изучение как можно большего количества языков, – не прихоть, а жизненная необходимость. Так, опытные разработчики, трудящиеся на благо гигантов игровой индустрии, нередко сталкиваются с необходимостью поочередно писать на 7-8 языках. При этом, помимо вышеуказанных языков, им приходится изучать, к примеру, Python либо и вовсе SQL (как вы понимаете, для создания баз данных).

Поэтому, если вы решили связать судьбу с производством крупных игр, будьте готовы стать "полиглотом". Кроме того, чем больше языков вы освоите, тем более интересные и разнообразные задачи перед вами поставят. Ну и, конечно, шансы на получение работы мечты заметно возрастут.

С ЧЕГО НАЧАТЬ?

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

Практически все опытные разработчики вне зависимости от регалий и таланта начинали с небольших приложений: настольных игр, вариаций известных "игрушек", простеньких "флэшек". Тогда они не думали о крупных выставках вроде E3, а накапливали бесценный опыт. Почему бы не последовать их примеру? При этом не обязательно писать архисложный код. Для дебюта достаточно использования специальных программ для создания игр (к примеру, Game Maker). Ведь даже благодаря несложному инструментарию вы значительно облегчите себе жизнь. Во-первых, в миниатюре поймете логику и структуру практически любого игрового приложения. Во-вторых, набьете шишки, которые заживут во время перехода к серьезным проектам. Наконец, в-третьих, обогатите портфолио. Ведь даже простая "игрушка" требует массу времени, терпения и творчества для выдумки концепции, написании кода и устранения багов. Кроме того, показывает, что с производством игр вы знакомы не только в сухой теории.

Что брать за ориентир?

Тот, кто мечтает стать писателем, прочитает сотни книг перед тем, как напишет хотя бы одно слово. Мастера игры на фортепиано на зубок знают лучшие произведения Штрауса, Шопена и Бетховена. Известные же художники перед крупными выставками наизусть заучивали историю искусств.

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

Автор: Александр Мороз

geekbrains.ru

Как создать флеш игру с нуля?

Даже самые полезные и качественно написанные программы выполняют не только безусловно правильные задачи. Побочный эффект их работы — «загрязнение» операционной системы ненужными ключами реестра, тормозящими работу ПК. От части программного «мусора» не вылечиться и после деинсталляции. А когда программа целенаправленно нашпигована дополнительными утилитами (бесполезные «ускорители работы», тулбары, рекламные дополнения), то польза может быть и вовсе сведена на нет. Есть и откровенно вредоносные приложения: вирусы, трояны, блокировщики Windows, чья задача – украсть с компьютера всё, что можно: пароли, данные о банковских картах, другую конфиденциальную информацию.

Для чего нужны песочницы

Простой метод профилактики вредоносов – использование программ-песочниц наподобие Sandboxie. Слово «песочница» перекочевало в компьютерный мир из сленга пожарных: огнеборцы используют ящики с песком для того, чтобы бросать в эти защищённые пространства горящие предметы, изолируя источник пламени от окружающего пространства.

Подобно пожарным песочницам, Sandboxie сооружает внутри физического ПК почти настоящий компьютер – с привычной коллекцией уже установленных приложений и файлов. Эта среда изначально огорожена от настоящего рабочего окружения. Внутри можно запускать и устанавливать всё, что угодно. Необходимые данные будут скопированы из настоящей Windows внутрь изолированного «загона»: это направление прозрачно и открыто. Однако ни один элемент из песочной среды не способен просочиться во внешний программно-компьютерный мир. Граница песочницы очерчена строго: через неё на «Большой ПК» не пройдёт ни один ключ реестра, никакой вредный код.

Как работает Sandboxie

После установки крохотной (6,6 Мб) программы внутрь контекстного меню добавляется пункт «Запустить в песочнице»: на первое время это главный инструмент работы с Sandboxie.

Меню доступно при выборе любого файла: видео, текстового документа, «exe-шника».При помощи правой кнопки и пункта «Запустить в песочнице» любой файл можно открыть в безопасной виртуальной среде.

Все приложения, запущенные в среде Sandboxie, визуально выделяются рамкой жёлтого цвета и символами # в верхней строке с названием программы/файла. Вместо жёлтого цвета можно подобрать любой другой; символы # также легко меняются на альтернативные.Так будет выглядеть окно популярного браузера Opera, если запустить его через Sandboxie. После закрытия окна в системе не останется никаких следов посещения web-сайтов или иных интернет сервисов, открытых через Opera.

В панели задач Windows видны все запущенные приложения. Папка «5 глава» и браузер Opera запущены в Sanboxie (окна обрамлены символами #), другие программы – в обычном режиме Windows.

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

Практическое применение песочницы Sandboxie

Внутри удобно запускать приложения, которым пока нет полного доверия (а кто не экспериментировал с кейгенами, «кряками» и другими окололегальными утилитами? 🙂 ). Виртуальная среда полезна и тестировщикам ПО, и для ознакомления с неизвестным приложением. После закрытия песочницы Windows вернётся в то же состояние, что и до её запуска.Установка приложения в Sandboxie. Обратите внимание на «фирменную» жёлтую рамку и метки [#] в обрамлении заголовка окна.

При помощи Sanboxie можно и временно устанавливать ПО для экспериментов. После закрытия программы все её следы переместятся в электронное небытие, включая изменения реестра, иконки на Рабочем столе, настройки.

В случае с проверенным комбайном iTunes эти предосторожности, наверное, излишни (с другой стороны, если мультимедиа-приложение нужно лишь на полчаса, для экспериментов – зачем оставлять после него следы в реестре и другие «тормоза»?). А если в той же закрытой среде произойдёт запуск с подключённой флешки некого злонравного Autorun_Delete_All.exe – это совсем другой вопрос. Sandboxie, к слову, позволяет настроить автозапуск любых внешних накопителей внутри своих ресурсов – замечательная альтернатива антивирусной проверке подключённых устройств.

Минусы работы Sandboxie

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

Мы провели некоторое синтетическое исследование и выяснили, что обычные приложения, вроде браузеров, медиаплееров, архиваторов замедляют свою работу на 9-30% в зависимости от сложности проводимых ими вычислений.

Если же на вашей машине присутствует современный многоядерный процессор, да ещё и есть SSD диск, то разница сложно ощутима.

Песочница не способна защитить от перехвата вводимых с клавиатуры паролей; она не заметит, что вместо привычного почтовика открыт мошеннический сайт. Эти задачи как и раньше следует возлагать на антивирусы. Зато Sandboxie спасёт от проникновения внутрь системы вредоносного кода.

Заключение

За рамками статьи остаются глубинные настройки и менее востребованные возможности. Если копнуть интерфейс приложения глубже, то даже опытные пользователи не всегда с первого раза способны разобраться в многочисленных опциях песочницы. Богатство функциональности напоминает возможности, к примеру, Word: успешно пользоваться им может и школьник. При этом в недрах текстового процессора присутствуют и «аэрокосмические» возможности для продвинутых верстальщиков, программистов, аналитиков.Глаза разбегаются? А ведь это лишь небольшая часть продвинутых настроек Sandboxie. Впрочем, столь же глубинные параметры прячутся и в недрах привычных Excel, Word, и даже банальных музыкальных плееров. Так и в случае с нашим героем: базовый функционал прост и понятен, но при желании программу-песочницу можно изучать не один день.

Добавим лишь, что Sandboxie позволяет:

  • одновременно запускать сколько угодно отдельных песочниц;
  • переносить нужные данные из закрытой среды в открытое пространство;
  • «консервировать» состояние песочницы для дальнейшей работы с ней;
  • открывать заранее выбранные приложения и файлы исключительно в защищённой среде;
  • работать в пробной версии не только в течение 30 дней, но и дольше, лишь предупреждая о необходимости приобретения (наподобие WinRAR).

rpilot62.ru

Как делать Adobe Flash игры: советы начинающему разработчику

Что такое Flash?

Многие из нас любят коротать время, играя в короткие флэш-игры, однако мало кто задумывается о том, как эти произведения виртуального искусства создаются. Между тем, данная технология существует еще с конца 90-х гг. Ее создателем является американская компания Macromedia (ныне Adobe Systems). Эта система активно применяется не только для разработки игр, но и в веб-мастеринге. Именно на флэше работают большинство сайтов в Интернете (хотя, некоторые уже переходят на HTML 5). Также детищем Adobe Systems является программа для создания приложений Macromedia Flash. Освоить ее может любой человек, даже далекий от компьютерных технологий. Однако, прежде чем мы начнем рассказывать о том, как делать игры, рассмотрим основные плюсы и минусы данной платформы.

Преимущества Adobe Flash

    Существует ряд достоинств, которые выделяют эту технологию на фоне других программных платформ и делают эту технологию превосходной для создания любительского игрового контента:
  • Во-первых, это скорость разработки. В отличие от других платформ, флеш позволяет создать любую игру буквально за час. Macromedia Flash не утруждает разработчика длинными кусками кода, предоставляя готовый инструмент для работы
  • Во-вторых, эта технология предлагает широкие возможности по работе с другим мультимедийным контентом. Вам не придется тратить время и силы на конвертацию одного файла в другой. Технология позволяет без лишних хлопот интегрировать в игру любые графические, звуковые и видеофайлы. Таким образом вы можете включить в работу над проектом художников, композиторов, монтажеров и создать по-настоящему уникальный продукт
  • В-третьих, Macromedia может похвастаться интуитивно понятным управлением и набором функций, значительно упрощающих работу в данной программной среде. Функция «drag and drop», командное меню Action Script, удобные рабочие панели и подсказки — все это делает работу с Adobe крайне приятной
  • В-четвертых, функционал платформы крайне удобен в плане подачи и распространения контента. Благодаря веб-расширению Adobe Player, приложения созданные на основе этой технологии легко размещаются на любом сайте, путем вставки на страницу простейшего кода. Также технология поддерживает создание автономных приложений в формате swf, которые легко воспроизводятся на любой операционной системе
  • Наконец, в-пятых. Эта технология позволяет создавать красочные игры с очень плавной анимацией и большой интерактивностью. Во многом, красота приложения зависит от таланта художника, а не программиста. Этим свойством данная платформа привлекает новичков, желающих попробовать себя в создании игр.

Недостатки Flash Player

    Как и любая другая программа, эта также имеет ряд минусов, о которых должен знать любой, кто хочет начать работать с флэш-приложениями:
  • Привязка к временной шкале. По сути, создание флэш-приложений представляет собой расположение последовательных кадров на временной шкале и дальнейшее их воспроизведение. Таким образом, эта система отлично подходит для создания анимаций. Однако нелинейности, которая является актуальной тенденцией для большинства игр, добиться не удастся.
  • Быстродействие. К сожалению, она не отличается особо быстрой работой. Поэтому на ее основе не создают кооперативные игры и аркады с большим количеством однотипных объектов.
  • Нет поддержки трехмерности. Существенным минусом является то, что технология флеш не поддерживает создание и использование трехмерных моделей и сцен окружения, а для большинства современных игр это является незыблемым стандартом. С другой стороны, браузерные онлайн игры используют преимущественно Flash, в связи с определенными ограничениями, характерными для сетевых игр.
  • Закрытость платформы. Adobe Macromedia не поддерживает добавление новых функций. В других программных средах (например в Java), можно добавить новые свойства. Здесь это могут сделать лишь сами разработчики. И несмотря на то, что они постоянно обновляют программу с учетом мнений пользователей, ее функционал продолжает оставаться ограниченным.

Несмотря на эти недостатки, флеш является незаменимой для создания небольших любительских мини-игр.

Как создать Flash-игру: основные аспекты

Создание анимаций на движке она напоминает детское увлечение, когда на уголках страниц по кадрам рисовался рисунок и при быстром перелистывании он начинал двигаться. Суть флэш-анимаций такая же — вы покадрово располагаете графические объекты на временной шкале и при воспроизведении они начинают двигаться. С играм все сложнее. Для того, чтобы создавать их, необходимо освоить язык программирования ActionScript 3.0. Изучить его можно при помощи специальных книг и учебников (например, книга Колина Мука «ActionScript 3.0 для Flash»). Также есть довольно много обучающих видео на YouTube. Достаточно проявить совсем немного старания, чтобы освоить эту программу. Сделав это, у вас вряд ли появятся вопросы о том, как написать flash-игру.

    При создании флэш-игры, важно придерживаться определенной структуре:
  • Титульное окно (заставка)
  • Правила
  • Фон
  • Окно окончания игры

Сначала идет «Титульное окно». Это заставка, которая должна произвести первоначальное впечатление на игрока. Здесь важно проявить весь свой художественный талант и фантазию.

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

«Фон» — это окружение, на котором будут находиться графические объекты. В отдельных случаях, объекты занимают весь экран. Игровой фон можно создать инструментами Adobe Macromedia, либо воспользоваться сторонними программами (например, Ogmo Editor превосходно справляется с созданием двухмерных сцен). Важно, чтобы он был тематическим и дополнял общую концепцию игры.

Конец игры знаменует «окно окончания игры». Игра может окончиться в разных случаях — при победе игрока, при проигрыше или просто по истечении времени/боеприпасов. Для каждого случая создается отдельное окно с соответствующим анимированным содержимым. Иногда в это окно вставляют список победителей.

Таким образом, после изучения adobe flash, как создать игру будет знать любой человек. Достаточно понять основные механизмы работы и уже достаточно скоро вы сможете создавать простенькие игры. Как и в любом деле, здесь главное проявить достаточно усидчивости и заинтересованности, и результат не заставит себя ждать.

comments powered by HyperComments

msk.spbsht.ru

Как разработать RPG-игру за неделю с нуля и без бюджета. Часть I - Создание игр - Статьи по созданию игр

Как разработать RPG-игру за неделю с нуля и без бюджета. Часть I.

RPG за неделю? С нуля? Это вообще возможно? Я рискнул, и я сделал это.

В интернете полно информационных ресурсов, доступных мелким, независимым (indi) разработчикам игр . На одном таком общественном форуме, в процессе спора, я имел неосторожность ляпнуть, что, если мне дадут неделю времени, компьютер со свежеустановленной Windows, и хорошее соединение с Интернет, я смогу создать достойную игру, не потратив на это ни цента. Нет, она конечно же не сможет конкурировать с Halo 2 или чем-то такого же уровня(если бы я мог создать такую игру за неделю, я бы давно бросил работу), но она будет достаточно интересной и играбельной.

Tom Bampton, автор ежемесячных обзоров игр в номинации «Игра на день» (www.gameinaday.com), сказал: "Дерзай!" Затем он добавил дополнительное условие - я должен сделать это, не используя существующие игровые движки. Мне можно использовать только основные библиотеки / API.

Сначала я отказался от этой идеи. У меня не было лишнего времени, чтобы на неделю отстранится от разработки текущего игрового проекта на работе. Но потом я подумал: да черт с ним, ведь что такое неделя? В типичной компании, например в Е.А., рабочая неделя составляет 40 часов. Так почему бы не сделать игру не за календарную неделю, а за 40 чистых часов? Это уже реальнее, - но я не хотел создавать очередной тетрис или арканоид. А как насчет ролевой игры - одного из самых сложных игровых жанров? Это возможно?

Я знал, что это будет чрезвычайно трудно. Но я принял вызов.

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

Так вот, как я создал игру в течение одной недели с нуля, и без бюджета. Если вам лень читать, и вы хотите побыстрее заглянуть в конец повествования, чтобы узнать, как выглядит конечный продукт, посмотреть все его баги, вы можете скачать версию игры для Windows здесь : http://www.rampantgames.com/hackenslash.html

ПЛАНИРОВАНИЕ Цель Создать олдскульную RPG в стиле старых игр начала 80-х, с видом "сверху вниз", например как The Temple of Apshai, Ultima III, и Telengard. Игрок будет двигаться через комнаты в типичном подземелье, сражаясь с различными монстрами с помощью «меча и магии». Постепенно он будет совершенствовать свои возможности получая опыт, повышая уровень, приобретая магическое снаряжение.

Однако, игра будет состоять не только из самого ведение боевых действий. Игрок также будет иметь возможность прокрасться мимо монстров, или вступить с ними в переговоры. Будут запертые двери и сундуки, и уникальные особенности подземелья, имеющие неожиданные эффекты. В игре не будет длинных описаний или диалогов, - в основном это будет типичный hack & slash. Вы будете двигаться по пути, пока не станете достаточно сильным, чтобы встретится лицом к лицу с финальным боссом, выполнить квест, и благополучно вернуться домой (в вашу стартовую комнату).

Правила разработки

Правило № 1: Время разработки ограничено одной неделей (включающей 40 часов) На разработку игры должно быть потрачено в сумме не более 40 часов. Они будут включать время, потраченное на непосредственную работу над игрой и на ее обдумывание. Перерывы в разработке больше, чем десять минут, не будут учитываться. Это будет "идеальная" рабочая неделя из 40 высокопроизводительных часов.

За 40 часов будет сделана полнофункциональная альфа-версия. Дальнейшее допиливание, такое как окончательная отладка игры, создание инсталятора для распространения в общее время учитываться не будут, никакой новый функционал на этом этапе добавлен не будет. Документирование процесса разработки также не учитывается.

Правило № 2: Использовать только бесплатные инструменты За исключением программного обеспечения, которое поставляется с установкой Windows, используется только свободный софт, по возможности с открытым исходным кодом. Смысл этого - показать, что не нужны дорогие (или пусть даже дешевые) инструменты для разработки игры. На оборудование, такое как сканер, микрофон и цифровая фотокамера, данное правило не действует - если у вас их нет, будем считать, что их можно у кого-то одолжить.

Правило № 3: Нет движкам, только стандартные библиотеки / API Игра должна быть создана "с нуля" без использования существующих игровых движков. Никакого обмана, и создания игры или каких-то ее частей с помощью конструкторов игр или использования подобного программного обеспечения.

Инструменты Код:

• Python 2,3 (http://www.python.org/) • PythonWin • PyGame (http://www.pygame.org/) • Py2exe – чтобы собрать что получится в исполняемый файл для распространения. (http://starship.python.net/crew/theller/py2exe/)

Графика:

• Gimp 2,0 (http://gimp-win.sourceforge.net/) • MS Paint (тот что идет с Windows) - для вставки скриншотов, захваченных клавишей PrintScreen (GIMP почему-то отказался это делать) • Бесплатные текстуры были взяты (http://www.textureartist.net/textures/index.htm) и (http://www.mayang.com/textures/)

Звук:

Audacity (http://audacity.sourceforge.net/) плюс мой микрофон или бесплатные.

Расписание (План) работ Расписания составляют, чтобы их потом нарушать, но все же они нужны, чтобы контролировать прогресс и строки, и вносить коррективы по мере необходимости.

Час 1-10: Базовая архитектура Проектирование движка и основных компонентов. Получить отображения мира на экране. Я должен реализовать возможность перемещать тестового игрока по всему миру, и смотреть на вещи, а затем превратить то, что получится, в игровой редактор.

Час 11-20: Возможности игрока Реализация всех основных возможностей для игрока - перемещение, атака, открытие дверей, смерть, подбор вещей и использование инвентаря. Создать каркас представления всех объектов в окружающей среде, для тестирования возможностей игрока во взаимодействии с миром.

Час 21-30: Оживление мира Добавить искусственный интеллект, игровые события, ловушки, спецэффекты. К концу этого периода я должен иметь достаточно полное техно-демо, включающее все основные особенности игры.

Час 31-40: Добавление контента и правил Получить из техно-демки полноценную игру. Добавить все дополнительное содержимое. Добиться завершенности и баланса игровой механики. Отшлифовать все, на что хватит времени, добавить спецэффекты, анимацию и т.д.

После 40 часов: Тестирование и релиз игры Протестировать, и устранить найденные ошибки (не добавляя новые возможности!) Собрать все в кучу, и выложить в интернете. Завершить документацию.

Дневник разработчика Hackenslash: Игра за неделю

Час 1 – Дикое проектирование и базовые классы Этот час был проведен за созданием некоторых базовых классов для игры - и использования их в дальнейшем проектировании. Мир будет представлен в виде последовательности комнат, соединенных порталом. Все в мире базируется на комнатах, подобно тому, как это было в старых адвенчурах или MUDах. Большинство объектов в игре представлены как " GameObject ", который имеет позицию и содержимое (в том числе может содержать и другие объекты - карта может содержать комнаты, в комнате может быть сундук, в сундуке - меч ... и, я думаю, меч может содержать несколько комнат, но мы так делать не будем.)

• Я создаю объекты creature (существо) и player (Игрок) • Я генерирую набор атрибутов для существ, и внедряю их в класс. Видимо я задрот, который играет слишком много в РПГ игры. Я пока еще не знаю точно, как будет выглядеть и работать игровая механика. • Я делаю объект room (комната), наследуемый от GameObject. У комнаты есть ширина, высота, и стены - и на текущий момент больше ничего.

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

Час 2 - PyGame 101 Цель этого часа - инициализация PyGame, ну и начать хоть что-нибудь рисовать на экране. На самом деле, я провожу большую часть времени за чтением документации PyGame, пытаясь выяснить что там и как, поскольку у меня почти нет опыта использования PyGame или SDL.

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

Час 3 - Если бы стены имели уши, я б их сильно отругал. Цель этой часа – обозначить контуры комнаты стенами, и отобразить это на все еще черном экране. Чтобы сделать это, мне нужна комната, и мне нужна графика. Приходится много сидеть над GIMPом, правя загруженные из интернета текстуры, так чтобы они превратились в подходящие тайлы. Я создаю класс менеджера текстур. И я заполняю структуру образца комнаты. Я также потратил немного больше времени, просматривая документацию PyGame, чтобы найти что-нибудь еще, что можно использовать, дабы сделать работу легче.

Час прошел. А у меня все тот же черный экран. Стен как не было, так и нет.

Часа 4 – В гостинице появился свободный номер После борьбы с некоторыми синтаксическими ошибками, я, наконец-то смог добиться появления стен на экране. Правда отображаются они неправильно, находятся не в указанном месте, да еще и со щелями между сегментами. Это ужасно. Но немного настройки и правки, и я получил на экране что-то похожее на комнату, размером 10 на 10 квадратов.

Не имея подробного плана проекта, действительно довольно легко запутаться, когда выполнив определенную работу Вы задаетесь вопросом "Что дальше?" Я решил, что если рисунок одной комнаты хорошо, то нарисовать две – вдвойне лучше.

• Для хранения созданных комнат я создал файл "minidungeon". • Я начать добавлять логику порталов "portals" - отверстий в стенах, для перехода в другие комнаты (и предоставляющих всю информацию о смещении, необходимую для правильного отображения смежных комнат).

Час 5 - Hackenslash получает больше комнат

• Я изменил название окна на "Hackenslash!". Просто потому, что это круто. • Я создал карту объектов для хранения комнат, и класс MapMaster содержащий несколько карт. • Я добавил вторую комнату и подключил к первой через портал. • Соседние комнаты подключены к текущей через порталы, и теперь отображаются на экране. • Я исправил некоторые ошибки отсечения, чтобы правильно отображались стены, частично выходящие за пределы окна.

Час 6 - за который мы улучшаем скил рисования

• Добавил класс дверей, а также настроил карты для размещения двери (дверь должна быть общей для двух комнат). (Правка: Жаль, что я никогда это так и не использовал!) • Я создал еще 3 тайла стен, объединил их в одно изображение. • Графический вид стен изменяется в зависимости от типа. • Я делаю простую графику для вида сверху вниз.

Часы 7-8 – Вращения и восклицания!

• Я разобрался, как в PyGame поворачивать растровые изображения. • Я добился плавного вращения тестового игрока. Много регулировок необходимо для корректировки угла вращения. • Я узнал, как использовать шрифты в PyGame, и я создаю несколько классов для отображения и анимации текста. • Добавил класс для автоматической обработки текста, поскольку данная функциональность будет часто использоваться в будущем.

Часы 9-11 – Елементы - бррр!

И вот опять, мне нужно решить вопрос "Что дальше?".

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

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

В общем, я потратил около трех часов, работая над элементами, разрываясь между созданием графики и написанием кода.

Часы 12 - 13 - Нам нужен Лут!

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

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

Час 14 - Ковры

Я сильно отстаю от графика, что же мне делать? Черный фон кажется слишком уродливым, поэтому я замостил полы внутри комнаты коврами - отдельными тайлами.

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

Зато уровень теперь выглядит круто. Ну, по крайней мере круче, чем черный.

Часы 15-16 - Click! Click!

• Я занялся управлением мышью и обработкой событий. • Добавил управление персонажем мышью. Движение пока происходит рывками, нет плавной прокрутки уровня. • Игрок может выйти за пределы комнаты, отсутствует проверка столкновений. • Я исправил несколько ошибок. • Помучил GIMP и создал красивые лестницы. . На разработку уже затрачено почти 17 часов, так что я начинаю немного нервничать. Я прошел 2/5 пути создания игры, - закончился второй "рабочий день" разработки. То, что у меня уже сделано впечатляет, но я понимаю, что сделать осталось много больше. У меня есть еще четыре часа, чтобы закончить основные возможности игрока, и вложится в график. Это будет трудно ... но я все равно не жалею, что потратил лишнее время на рисование графики!

Час 17 – Плавно перемещаемся, пока не стукнемся лбом о стену

• Большинство времени потрачено на доводку графики и исправление ошибок. • Добавлено обнаружения столкновений и плавная прокрутка, при движении игрока. • Игрок теперь может делать несколько шагов (оборотов) в ответ на действие мыши.

Час 18 - Переступаем пороги

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

Час 19 - Лестница в небо, Адское меню

Мой брат вызвался сделать музыку для игры. Он сделал музыку для Void War, и получилось довольно хорошо. Это напомнило мне, что нужно сделать воспроизведение звука (и музыки). Вроде бы в PyGame это сделать довольно просто, поэтому оно не должно занять слишком много времени. (Правка:. Я так и не нашел для этого времени, к сожалению в Hackenslash вы не услышите ни единого звука.)

Моя следующая цель состоит в обработке взаимодействия с существами и предметами. Мне очень нравится, как это сделано в The Sims и Neverwinter Nights, когда вы хотите взаимодействовать с игровым объектом, появляется контекстное меню. Я планирую реализовать что-то похожее.

• Учу лестницы перемещать игрока в новую комнату. • Я немного проштудировал Интернет и документацию PyGame, ища, нет ли где открытых исходных кодов подобного меню на PyGame. И не нашел ничего. • Я начал делать собственное меню.

Часы 20 - 21 - Что там с меню?

• Я продолжаю работать над меню. Меню может быть легко подключено к объекту, точнее объект как бы порождает меню, что позволило легко реализовать обратную связь для обработки выбора игрока. • Я начал работать над меню вещей. Оно уже появляется в нужном месте, и позволяет выбирать какой-нибудь пункт, но при нажатии пока ничего не делает, работает только кнопка закрытия меню.

Час 22 – Заснуть в процессе

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

Я замечаю, что уже поздно, и что вышел далеко за пределы отведенного на эту работу часа. Если бы я не обращал внимания на общее время разработки – просидел бы, наверное, до утра. Но поскольку я ограничен во времени, потраченный практически впустую час - действительно плохие новости. Интересно, как сдвигаются приоритеты, когда не хватает времени. В общем, я ложусь спать.

Час 23 - Боевые параметры!

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

Час 24 - Меню игрока

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

Час 25 – До(раз)пиливаю полы и стены

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

Я начинаю работу над реализацией этой идеи. К сожалению, на самом деле придуманное упрощение еще больше усложняет отрисовку комнаты (в частности полов), и реализовать его можно не так быстро, как я надеялся. На создание и отлаживание этой системы было потрачено около часа. Но оно того стоило.

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

ПЕРЕРЫВ - Кризис!

Я только что осознал, что прошло больше чем 3/5 отведенного на разработку времени, и что осталось меньше пятнадцати часов, чтобы закончить игру. Посмотрев расписание необходимых функций игры, и прикинув, что на реализацию каждой нужно в среднем час, я понял, что на реализацию всего мне нужно около двадцати пяти часов. На десять часов больше, чем есть. Проект официально под угрозой срыва.

Выйти за пределы лимита времени мне нельзя. Также нельзя привлечь помощника или купить код/ресурсы, поскольку предусмотрено, что игру за 40 часов сделаю я один. Нужно придумать, как работать еще более эффективно – но я и так уже вкалываю на максимуме производительности. Похоже, у меня нет другого выбора, придется пересмотреть функционал, и решить, какие возможности выбросить из игры.

• Двери: Вырезано! Я очень хочу сделать двери в игре. Жалко расставаться с этой функцией - тем более, что я уже некоторое время работал на ней. Но остается еще слишком много работ, например искусственный интеллект. И, наверное, понадобится 2-3 часа, чтобы заставить их работать, а их у меня нет. • Инвентарь: упростить! Забудьте о дополнительном инвентаре, и возможности смены оружия по желанию. Все, что подобрано и не стало текущим оснащением, будет сразу пересчитано в деньги. • Ловушки: упростить! Я хотел бы иметь множество ловушек с интересными и разнообразными последствиями их активации. Не судьба. Ловушки будет иметь простой визуальный эффект, наносить урон и временно увеличивать вероятность нарваться на случайного монстра • Луки (стрелковое оружие): Вырезано! В игре будет только оружие ближнего боя, на расстоянии можно атаковать заклинаниями. • Сохранение / загрузка игры: упростить! Сохранить можно только персонажа, а не состояние мира. (ПРАВКА: Я и этого не сделал!) • Система частиц: Отложить! Создание системы частиц перемещено в самый низ списка приоритетов. Я сомневаюсь, что придется их делать. Хотелось бы сделать впечатляющие визуальные эффекты с помощью частиц для заклинаний ... но, скорее всего, этого никогда не будет. • Заклинания: упростить! У меня была серьезная концепция о заклинаниях: их можно было бы найти в виде свитков, и количество более десятка. Это грустно, но будет всего несколько заклинаний: Лечение, Урон, Ослабление, Усиление, и Восстановление. При повышении уровня, можно позволить игроку усилить заклинания за счет увеличения числа магических очков. • Анимация монстров и игроков: Вырезано! Я никудышный художник, чтобы сделать это достаточно быстро.

Принимая решение, что я не буду делать (или то, что отложу на после), не менее важно решить, что нужно сделать в первую очередь.

Есть много вещей, которые запланированные в игре, и которые я считаю очень важным – поиск ловушек, секретных дверей (ну теперь секретных проходов), и взлом сундуков. Но все же основой игры является бой. Поэтому я решил сосредоточится именно на нем, сделать его главным приоритетом. Я поставил перед собой цель, через полтора чала мои монстры оживут настолько, что их можно будет убить.

Отлично, с приоритетами разобрались, продолжаем разработку.

Час 26 - Бросим кости

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

Например, предположим, что у меня общее значение атаки 15. Я атакую монстра, у которого 10 защиты. Мои шансы 15 из 25 (25 =15 +10), или 3 из 5. Так игра будет генерировать случайное число между 1 и 25, и если оно выше десяти, я выиграю.

Для вычисления нанесенного урона используется немного другой способ. Я добавил защищающемуся параметр «броня», а атакующему "урон". Я генерирую случайное число от 1 до их суммы, а затем вычитаю броню. Если результат меньше единицы, урон не наносится. В противном случае, он равен полученному результату. Таким образом, если монстр, с уроном равным 10 атакует игрока с 5 очками брони, игра будет генерировать число от 1 до 15, из которого вычтет 5, то, что получится, и есть нанесенный урон.

Это объяснение и описание заняло больше времени, чем его реализация.

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

Автор: Jay Barnson, сотрудник Rampant Games Перевод: nilrem (перевод вольный)

ПРОДОЛЖЕНИЕ

gcup.ru

Как создать флеш?

Как создать флеш?

Кажется, создать собственную флеш-игру - задача сложная и доступная только для специально обученных профессионалов, однако если у вас есть фантазия, желание и умелые руки, не все так тяжело, как кажется. Итак, с чего же начать создание собственной флеш-игры?

Сценарий

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

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

Конструктор игр

Итак, вы определились со сценарием и полностью утвердились в желании создать свою флеш-игру. Теперь требуется скачать конструктор игр. Их на просторах Интернета полно, и каждый имеет свои специфические особенности. Какие-то конструкторы "заточены" под создания одного типа игры, другие – универсальны. К наиболее известным "универсалам" можно отнести Adobe Flash. Скачать конструктор можно с официального сайта Adobe. Правда, это будет пробная версия, работающая бесплатно 30 дней, но "распробовать" ее за данный период можно успеть.

В конструкторе сначала необходимо выбрать шаблон игры, а затем создавать разнообразные  анимационные и статические объекты с помощью соответствующих разделов. Кроме того, нужно выбрать цвета объектов. Если вы решили делать аркаду, потребуется также настроить уровни движения персонажей. В конструкторе довольно много настроек, вы можете "играть" ими как угодно - в зависимости от выбранного жанра.

Отладка

Как только вы закончили модел

elhow.ru

Как создать сайт с флеш играми пошаговый инструмент

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

Когда я только начинал учится создавать сайты, мне в голову пришло что можно создать сайт для флеш игр. Методом тыка мне удалось создать свой первый сайт с флеш играми. Да, конечно дизайн был не очень, текст который описывал игры был не уникальный, то-есть я копировал его с других сайтов, в общем всё я сделал не правильно, но тем немение я создал свой первый сайт с флеш играми.

Долгое время я не мог понять почему ко мне не заходят с поисковых систем на этот сайт, я набрал на свой сайт почти 4000 игр, а посещаемости не было. И однажды мне попалось информация о том как правильно настроить и наполнить сайт, и я начал потихоньку изучать и внедрять новые знания на свой новый сайт с флеш играми.

Применив первые знания и настроив правильно флеш игры и текст к ним, я заметил что на мой сайт начали заходить люди из поисковых систем. Сперва это было 50 человек, потом 200, потом тысяча... Я не могу передать то состояние, которое испытывал от того что мне наконец-то удалось привести из поисковых систем пользователей на мой сайт.

В общем этот сайт я развивал пока не продал, кому интересно можете зайти и посмотреть его по адресу ggaammeess.ru.

Знание это сила

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

По этому я начал писать серию уроков, которые помогут вам создать хороший сайт для игр. Кому интересно можете перейти по ссылке и изучать! Уроки в которых я рассказываю как начать выбирать дизайн для своего сайта, как настроить его. Как купить домин, как наполнить сайт, как подбирать ключевые слова и многое многое другое для создания хорошего сайта.

nischenko.ru



О сайте

Онлайн-журнал "Автобайки" - первое на постсоветском пространстве издание, призванное осветить проблемы радовых автолюбителей с привлечение экспертов в области автомобилестроения, автоюристов, автомехаников. Вопросы и пожелания о работе сайта принимаются по адресу: Онлайн-журнал "Автобайки"