Генерация уровня
|
|
Гвоздь | Дата: Четверг, 16 Февраля 2012, 14:27 | Сообщение # 1 |
был не раз
Сейчас нет на сайте
| Как сгенерировать уровень игры на подобии doodle jump? Ну т.е. чтобы платформы появлялись выше, и чем больше очков тем меньше платформ(но все равно столько чтобы можно было запрыгнуть), а когда еще больше очков то появлялись бы еще и двигающиеся платформы.
Добавлено (16.02.2012, 14:27) --------------------------------------------- Не поверю чтобы никто не знал как такое реализовать... Вот как пытаюсь делать я, в аларме пишу:
Code xi1=irandom(300); xi2=xi1+irandom(300); if (!place_meeting(xi1,yy,o_block1)) { tt=instance_create(xi1,yy,o_block1); tt.image_index=0; } if (!place_meeting(xi2,yy,o_block1)) { tt=instance_create(xi2,yy,o_block1); tt.image_index=0; } xi1=325+irandom(300); xi2=xi1+irandom(300); if (!place_meeting(xi1,yy,o_block1)) { tt=instance_create(xi1,yy,o_block1); tt.image_index=0; } if (!place_meeting(xi2,yy,o_block1)) { tt=instance_create(xi2,yy,o_block1); tt.image_index=0; } alarm[0]=30;
Додумался только до такого... Но это не подходит, при медленных прыжках платформ создается слишком много, а при быстром(например подкидывание на бонусе) слишком мало... Знаю что такие игры генерируют карты, ведь не могут же весь уровень делать вручную!
Сообщение отредактировал Гвоздь - Четверг, 16 Февраля 2012, 20:59 |
|
| |
MrIncrof | Дата: Четверг, 16 Февраля 2012, 14:42 | Сообщение # 2 |
Lite Programmer
Сейчас нет на сайте
| Гвоздь, в Doodle Jump используется такая генерация: разработчики делают отдельные части карты, сохраняют их в файл и при нужных алгоритмах части карт загружаются в игру и вуа-ля. Думаю всё понятно
|
|
| |
Гвоздь | Дата: Четверг, 16 Февраля 2012, 22:20 | Сообщение # 3 |
был не раз
Сейчас нет на сайте
| Понятно... Но что мне, тоже в файлах хранить? Или в скриптах? Не очень представляю как на здоровенный уровень можно сохранить части уровней... Добавлено (16.02.2012, 21:00) --------------------------------------------- Ну так может кто помочь? Добавлено (16.02.2012, 22:20) --------------------------------------------- Ваши предложения, товарищи?
|
|
| |
ArtGr | Дата: Четверг, 16 Февраля 2012, 22:26 | Сообщение # 4 |
старожил
Сейчас нет на сайте
| Я в своей игре "JetBall" поступил следующим образом: создал объект, который при появлении методом случайного выбора превращается в один из нескольких других объектов - бонус, мячик или препятствие. В результате получаются очень разнообразные уровни. Как я понял, такой метод не совсем подходит как решение описанной топикстартером проблемы, но, думаю, такой совет пригодится.
... ла-ла-ла-ла-ла-ла-ла-ла! :-)
|
|
| |
Гвоздь | Дата: Четверг, 16 Февраля 2012, 23:42 | Сообщение # 5 |
был не раз
Сейчас нет на сайте
| Спасибо, но действительно не очень подходит... Сколько уже перепробовал способов и все в пустую... Уже и сделал чтобы платформа которая оказывалась внизу (за видом) появлялась вверху, но опять же если взять бонус и подпрыгнуть высоко, то расставляется не правильно... Да еще ведь несоклько видов платформ. Вот уж не думал что буду возится столько с такой игрушкой...
|
|
| |
TLT | Дата: Пятница, 17 Февраля 2012, 00:05 | Сообщение # 6 |
Сейчас нет на сайте
| Ну правильно подсказали - нужно прописать блочную генерацию. Чтобы в зависимости от условий (количество очков?) загружался блок (кусок уровня), который генерируется. Расстановка объектов по заданным параметрам при генерации - это уже другой объект. Также прописывается в свойствах.
Дао, выраженное словами, не есть истинное Дао.
|
|
| |
Гвоздь | Дата: Пятница, 17 Февраля 2012, 12:01 | Сообщение # 7 |
был не раз
Сейчас нет на сайте
| Quote (TLT) Ну правильно подсказали - нужно прописать блочную генерацию. Чтобы в зависимости от условий (количество очков?) загружался блок (кусок уровня), который генерируется. Расстановка объектов по заданным параметрам при генерации - это уже другой объект. Также прописывается в свойствах. Просто уровень сам по себе здоровенный, а на то чтобы создать эти блоки уйдет слишком много времени(наверное столько же сколько и если бы расставлял их вручную в комнате, ведь надо знать координаты каждого блока) и тогда кроме уменьшения количества экземпляров на уровне других плюсов не вижу...
|
|
| |