Именно так сейчас выглядит игра. Есть несколько слегка скролящихся фонов, которые временами потряхивает от взрывов, полный набор звуков для всех действий в игре, 15 уровней и "Universe" с уровнями рандомно-бесконечными. Конфигурация уровней различна - кое где можно покататься по рельсам. Вообще круговое движения задумывалось как главная фишка игры, т.к. классическая механика арканоида всем уже приелась.
На скринах рандомные уровни, все остальное добро я не стал снимать, чтобы в итоге все-таки игра получилась интереснее, чем скрины. :)
Сейчас довожу до ума всякие мелочи, например движение облаков на фоне и дождь, такие чтобы не отвлекали, но тоже помогали разрушить "статичность" фона. Под катом - немного о конфигурациях уровней.
Так выглядит совершенно случайный уровень. Вероятность повторения конфигурации уровня уменьшается с каждым разом, т.к. уровни быстро усложняются и количество комбинаций растет. Каждый элемент массива здесь - функция, которая в зависимости от различных условий возвращает определенное число, соответствующее блоку.
var level1:Array =
[
new Array(0,0,0,0,0,0,0,0,0,0),
new Array(0,b(),c(),c(),c(),c(),c(),c(),c(),b()),
new Array(0,b(),c(),l(),r(),s(),r(),l(),c(),b()),
new Array(0,0,c(),r(),r(),l(),r(),r(),c(),0),
new Array(0,0,c(),l(),r(),r(),r(),r(),c(),0),
new Array(0,b(),m(),n(),r(),r(),r(),n(),m(),b()),
new Array(0,k(),m(),n(),n(),s(),n(),n(),m(),k()),
new Array(0,0,0,0,0,0,0,0,0,0)
];
Для создания фиксированных, неслучайных уровней есть простор из поля 10х8 и 13 видов блоков. В одной из предыдущих версий их было 17 видов, однако функциональность некоторых бонусов сейчас пока под сомнением.
[
new Array(0,1,0,0,0,0,0,0,1,0),
new Array(0,1,9,0,0,0,0,9,1,0),
new Array(0,1,0,9,12,11,9,0,1,0),
new Array(1,1,0,0,5,5,0,0,1,1),
new Array(1,1,0,0,5,5,0,0,1,1),
new Array(0,1,0,0,0,0,0,0,1,0),
new Array(0,1,0,0,0,0,0,0,1,0),
new Array(0,1,0,6,0,0,6,0,1,0)
];
Более того, ввод каждого нового вида блоков добавляет лишних затрат памяти и грузит систему. Очень печально, но с входом на первый уровень загрузка процессора увеличивается с 1%, как это было в меню, до 20%. Возможно одним из негативных факторов является постоянное движение каждого блока в отдельности. В любом случае производительность - мое слабое место, я уверен, что можно сильно оптимизировать игру, но в этом направлении у меня пока не много успехов.
На скринах рандомные уровни, все остальное добро я не стал снимать, чтобы в итоге все-таки игра получилась интереснее, чем скрины. :)
Сейчас довожу до ума всякие мелочи, например движение облаков на фоне и дождь, такие чтобы не отвлекали, но тоже помогали разрушить "статичность" фона. Под катом - немного о конфигурациях уровней.
Так выглядит совершенно случайный уровень. Вероятность повторения конфигурации уровня уменьшается с каждым разом, т.к. уровни быстро усложняются и количество комбинаций растет. Каждый элемент массива здесь - функция, которая в зависимости от различных условий возвращает определенное число, соответствующее блоку.
var level1:Array =
[
new Array(0,0,0,0,0,0,0,0,0,0),
new Array(0,b(),c(),c(),c(),c(),c(),c(),c(),b()),
new Array(0,b(),c(),l(),r(),s(),r(),l(),c(),b()),
new Array(0,0,c(),r(),r(),l(),r(),r(),c(),0),
new Array(0,0,c(),l(),r(),r(),r(),r(),c(),0),
new Array(0,b(),m(),n(),r(),r(),r(),n(),m(),b()),
new Array(0,k(),m(),n(),n(),s(),n(),n(),m(),k()),
new Array(0,0,0,0,0,0,0,0,0,0)
];
Для создания фиксированных, неслучайных уровней есть простор из поля 10х8 и 13 видов блоков. В одной из предыдущих версий их было 17 видов, однако функциональность некоторых бонусов сейчас пока под сомнением.
[
new Array(0,1,0,0,0,0,0,0,1,0),
new Array(0,1,9,0,0,0,0,9,1,0),
new Array(0,1,0,9,12,11,9,0,1,0),
new Array(1,1,0,0,5,5,0,0,1,1),
new Array(1,1,0,0,5,5,0,0,1,1),
new Array(0,1,0,0,0,0,0,0,1,0),
new Array(0,1,0,0,0,0,0,0,1,0),
new Array(0,1,0,6,0,0,6,0,1,0)
];
Более того, ввод каждого нового вида блоков добавляет лишних затрат памяти и грузит систему. Очень печально, но с входом на первый уровень загрузка процессора увеличивается с 1%, как это было в меню, до 20%. Возможно одним из негативных факторов является постоянное движение каждого блока в отдельности. В любом случае производительность - мое слабое место, я уверен, что можно сильно оптимизировать игру, но в этом направлении у меня пока не много успехов.
А пишешь на чистом as3, без всяких фреймворков?
ОтветитьУдалитьДа, я пока не использую никакие библиотеки и фреймворки.
ОтветитьУдалитьЯ ща тоже так почти. У меня куча других фреймворков для других целей :).
ОтветитьУдалитьСкрины неплохи, да. Вот только я бы пикселястость фона убрал, имхо, будет лучше с однотонным. Ну или можешь сделать его однотонным + легкое затенение по краям.
ОтветитьУдалить> я пока не использую никакие библиотеки и фреймворки
ОтветитьУдалитьУважуха, братюня. Только as3! Только хардкор!
>Скрины неплохи, да. Вот только я бы пикселястость фона убрал, имхо, будет лучше с однотонным. Ну или можешь сделать его однотонным + легкое затенение по краям.
ОтветитьУдалитьНад фоном еще поработаю, думаю. Облака и дождь сейчас сделал, хочется теперь больше разных оттенков для разнообразия.
>Уважуха, братюня. Только as3! Только хардкор!
Ну в этом тоже свой минус, наверное, работай я с фреймворками, с оптимизацией все было бы лучше.
Выглядит приятно, только вот цветные блоки на фоне остальных объектов выглядят немного примитивно, так и хочется к ним что-нибудь эдакое пририсовать:), жалко рисовать не умею)
ОтветитьУдалитьПо ним блик еще пробегает, все блоки с несложной анимацией, так что не должно быть уж сильно примитивно) Хотя сама по себе игра все-таки тоже довольно примитивная, не отягощенная непонятной механикой.
ОтветитьУдалитьТак у тебя арканойд с круговым движением как у меня?
ОтветитьУдалитьhttp://hale32bit.blogspot.com/2011/02/ice-flora.html?showComment=1297794908708#c602093878365844201
Интересная реализация! Ну у меня в чем-то похоже, за исключением того что оно идет по правильной круговой орбите, а весь игровой процесс на одном экране, не скроллится.
ОтветитьУдалитьУ меня в разных уровнях разные орбиты. Круговая тоже есть.
ОтветитьУдалитьПросто мне казалось что никто в мире не додумался до такого кроме меня. :)
А оказывается мир тесен, или как ещё говорят: "Все гении думают одинаково"
Я видел еще несколько круговых и на флеше даже, тоже сначала решил что это мой будет первым)) Все они дальше от классического арканоида ушли, чем мой.
ОтветитьУдалитьА мне скрины понравились - олдскульно.
ОтветитьУдалитьillusiveartgames, спасибо :)
ОтветитьУдалить