Архив рубрики ‘Project’

Black and White mages

Июль 10, 2009

Начал мечтать о том, как я наконец-то закончу свою flash игру про оборону Земли от астероидов, и вспомнил, что у меня когда давно была мысль одну из задач по программированию превратить в игру.

Итак задача.

Есть набор комнат, соединённых тунелями. Тунели могут быть двух цветов: чёрные и белые. В некоторых комнатах находятся рычаги. Каждый из которых переключает цвет на противоположный у некоторых, прикрепленных к данному рычагу тунелей. В описанном подземелье живут маги: чёрные и белые. Каждый маг может передвигать только по тунеллю своего цвета. Задача состоит в том, чтобы провести каждого мага из его стартовой точки в его конечную.

Данный базовый вариант можно разнообразить всякими улучшениями.

Буду расширять NetBeans

Апрель 24, 2009

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

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

После 4 часов работы в конфигурационном файле указываешь:

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

и на выходе получаешь полный набор классов. В итоге:

  • никакого copy-paste
  • отсутствие мелких ошибок
  • автоматически сгенерированы тесты

В общем, благодать.

Но чего не хватало. Во первых, это конечно не сложно, но при необходимости сгенерировать набор классов, необходимо было править конфигурационный файл, в котором всё заново указывать. Казалось бы, вся информация уже имеет у IDE. Любая более менее продвинутая IDE знает, какие есть классы в проекте, какая БД используется и какие в ней таблицы. Хотелось добиться лёгкости. Выбрал таблицу, нажал кнопку, заполнил в Wizard’е пару полей, выбрал пару lookup’ов и всё. Всё готово. Не жизнь, а сказка.

Осталось только выбрать, что расширять. У нас на выбор есть

Eclipse какой то уж очень монструозный, а вот NetBeans показался мне довольно дружелюбным и простым. И, не смотря на то, что Oracle (который поддерживает Eclipse) купил Sun, я решил расширять NetBeans. Не малую роль сыграл туториал по созданию визуализации схемы БД. Посмотрим, что у меня получиться. Постараюсь не полениться и описать, что у меня получилось.

Подготовка к разработке

Март 12, 2009
Набор инструментов для гламурного слесаря

Набор инструментов для гламурного слесаря

От того, какими ты инструментами пользуешься очень сильно зависит скорость с которой ты делаешь, а самое главное — качество. Согласитесь очень неудобно плоскогубцами забивать гвозди. Но ведь можно же ab.

«Автоматическая считалки результатов прохождения тестов по психологии» будет крутиться на:

  • PHP 5 (четвёрка уже умерла)
  • MySQL 4.x-5.x

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

Осталось выбрать только «плоскогубцы». Писать в блокноте очень неудобно, FAR с colorer’ом — уже шаг вперед. Но мне нужна полноценная IDE, я уже слишком сильно привык к «роскошной жизни» попрограммировав на Java.

Для PHP существует целый зоопарк IDE’шек. Но я же не на экскурсии в зоопарке, чтобы ходить рассматривать, гладить, корчить рожи бедным животным. Когда-то давно я программировал в NetBeans (первоя моя полноценная IDE после Delphi и MS VS, вот только не надо смеяться и обзываться. Как будто вы в них не писали). Мне эта IDE тогда очень сильно понравилась, но, с переходом на новый проект, пришлось сменить и «Кубик» на «Затмение» (для тех, кто в такнке — Eclipse). Эклипса мне хватает и на работе, поэтому мой выбор пал на Net Beans, постараюсь разнообразить немного своёвремя препровождение за компьютером.

Я скачать NetBeans 6.5 PHP Bundle. (~ 26 mb). Почитал немного документации, скачал пару видеоуроков.

Короче, я готов к «труду и обороне»… Наверное ab

Обновленный дизайн страницы игры

Февраль 23, 2009

bugНу уж очень мне не нравился внешний вид странички с моим сапёром. Решил его немного оживить с помошью картинок и немного подправить css. Вроде стало лучше.

Первые отзывы на шестигранного сапёра

Февраль 23, 2009

minesweeperthumbНа сайте flashgamelicense.com на мою игру Hexagonal Minesweeper несколько девелоперов оставили пару отзывов.

  • very interesting game. Try to make an instruction of how to play, cause i used to have right click in minesweeper. more improvement in graphics and try to add sound.. very nice
  • It’s easier than regular minesweeper. One big problem is striking mines on the first click. Normal minesweeper this is impossible. Vista minesweeper you are guarenteed to click on something not even adjacent to a mine. Just generate the minefield after the first click.

    I also miss the combined left and right click that you get in normal minesweeper.

    Finally – it needs a clock!

  • Due to the way in which one goes about solving a mine-sweeper board, adding 2 more sides to each choice actually makes the game easier to win. However, I do feel like the backend to the game is well done.

    One improvement I would recommend would be to make the board generate AFTER the first click. The current setup results in sometimes clicking a mine one th efirst click, which is really just annoying to the end user.

Из этих отзывов вытекает:

  • что игра довольно интересна, но проще чем виндошная (это я и сам знал).
  • убрать возможность взрыва при первом клике. Честно сказать, я такого не предвидел, но, как мне кажеться, у меня не должно возникнуть проблем с внедрением такого фичи.
  • добавить часы (дельное замечание).
  • добавить возможность Right+Left click стандарного  сапёра. Это еще примерно минут 20 работы, если конечно не встречу косяков.
  • улучшить графику. Вот тут уж дудки. Мне нравится моя графика. Она простая, незамысловатая, не напрягает мозг.

Сегодня вечером постараюсь воплотить всё это в жизнь, уж очень хочеться заработать первую денюшку :)

Тестовая игра практически готова

Февраль 20, 2009

minesweepericonИтак, сегодня утром я практически закончил свою тестовую игру «Шестигранный сапёр«. Еще конечно много чего нету:

  • меню
  • звуков
  • подсчёта времени
  • таблицы рекордов

Но самое главное, уже можно играть. Кроме того, я научился делать игру так, чтобы после обработки mochiads’овким криптовщиком она работала.

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

Тестовая игра.

Февраль 16, 2009

hex_minesДля того, чтобы попробовать себя в игростроении и прогнать весь цикл получения денег, я решил написать простую игру. А что может быть проще сапёра? Но повторять виндошный не хотелось, вот и решил немного модифицировать, а именно сделать клетки не квадратными а шестигранными.

Как оказалось, такая реализация сапёра уже есть. Но, если честно, то она какая-то калечная. Так что попытаться сделать что-нибудь простое можно. Кроме этого нашел реализацию на JavaScript.

Будем надеяться, что воскресный вечер был потрачен не зря.

Проблемы с Mochiads

Февраль 9, 2009

mochiadsthumbПосле того, как я добавил заветную строчку с номером своей игры в исходный код для того, чтобы mochiads смог проверить моё авторство, я обнаружил, что игра перестала запускаться. Скорее всего дело в том, что у меня на первом фрейме расположен мой прелоадер. И скорее всего он был уничтожен. После этого у меня начались сыпаться как из рога изобилия null pointer exceptions.

Plus, Adding MochiAds just got even easier! A MochiAd preloader with pre-game ad will automatically be added to your game.

Вот такая вот автоматика :(. Попробую сегодня вручную установить рекламу используя MochiAd_v2_7.zip.

UPD 10.02.2009

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

Зарабатывание

Февраль 6, 2009

Итак, игра практически готова (я скромняга) и настало время позаботиться об её превращении в зеленые денюшки.

Про этот процесс я читал довольно много у Badim’а, а также прочитал книгу Johnny-K.

А теперь по шагам.

Деньговая инфраструктура

  1. completedЗарегистрировался в moneybookers. Процесс регистрации довольно банален: ввёл своё мыло, на которое получил письмо с ссылкой, кликнув по которой активирал аккаунт.
  2. processingЗавести долларовый счёт в банке. Более подробно надо прочитать у Вадима.
    Нужен обязательно долларовый счет, к такому счету дают бумажку с указанием информации – как перевести тебе деньги. минимальная такса перевода(долларового-между-народного) кстати составляет 1% (40$(минимум)-1000$(максимум))
    не рекомендую пользоваться сбербанком, или местным банком. откройте счет в банке – который вам выдаст все данные для перевода из америки. если персонал будет тупить по этому поводу – просто идите в другой банк. 100% работает Альфа-Банк, и Возрождение.

    Так что завтра иду в банк(и)

Распостранение игр

Первое что поможет – это то что gamejacket и mochiads сами хостят игру – проблем с трафиком у вас не будет.

  1. completedРегистрация в mochiads. Всё прошло без сучка и задоринки. Всё стандартно. После этого в настройках аккаунта ( верхний правый угол) настроил «Payment Settings». Для этого Payment Method я выбрал Moneybookers и указал e-mail на moneybookers.
  2. completedРегистрация в gamejacket. Регистрировался долго и упорно. Оказалось, что необходимо было просто подождать, пока активируют аккаунт. А я уже успел даже в support письмо написать. Ответили моментально.

Стартовали Повторы

Февраль 4, 2009

Мой друг Юра играет во Frisbee. Игра выглядит очень просто — ну кидают люди тарелочку, и всё. А не всё! На самом деле существует куча тактик, тренировочных занятий. И для выполения сложных и эффективных манёвров необходимо точно знать, что каждый должен делать. Но объяснить каждому, что он должен делать в конкретный момент времени не такая уж и простая задача. На сайте ultimatehandbook есть возможность посмотреть тактики в движении.

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

Что дальше? А дальше идёт работа над редактором. И, ввиду того, что уже было сделано обещание пользователям выпустить его в феврале, приходиться неслабо напрягаться.