Comments 16
«Коридоры» широковаты, на мой взгляд. Хотя, это лучше, чем ADOM.
Предлагаете соединить комнаты узкими лазами вентиляции?
Мне кажется, использование физического движка для такой задачи, мне кажется чем-то из разряда «Вещи становятся удивительно похожими на гвозди, если из инструментов у вас только молоток»
На самом деле автор переборщил, я как раз пытаюсь переписать код этой статьи на js (уже неделю туплю с триангуляцией делоне, но не суть).
Так вот, отлично расталкиваю комнаты вот таким кодом:
Так вот, отлично расталкиваю комнаты вот таким кодом:
Заголовок спойлера
while(!separated) {
let separated = true;
this.preRooms.forEach((room1) => {
let velocity = new geom.Point();
let center1 = room1.createRectangle().createCenter();
this.preRooms.forEach((room2) => {
if (room1 === room2) return;
if (!geom.Rectangle.intersect(room1.createRectangle(), room2.createRectangle())) return;
let center2 = room2.createRectangle().createCenter();
let diff = center1.clone().sub(center2);
let diffLength2 = diff.length2();
if (diffLength2 > 0) {
diff.nor();
velocity.add(diff);
}
});
if (velocity.length2() > 0) {
separated = false;
velocity.nor().mult(4);
room1._position.add(velocity);
room1.setxy(room1._position);
}
});
}
Когда речь заходит о генерации я вспоминаю Daggerfall и его подземелья в которых можно блуждать часами в поисках скрытых дверей.
Моё мнение, что всегда лучше заботливо нарисовать всё руками, чем мучать игрока однообразным контентом.
Моё мнение, что всегда лучше заботливо нарисовать всё руками, чем мучать игрока однообразным контентом.
У нарисованного руками есть один большой минус — почти нулевая реиграбельность.
Тут все зависит от самой игры. Если игра завязана чисто на геймплей (например Isaac) и не обладает мощным сюжетом, то процедурная генерация в самый раз. Рассказывать историю же лучше на продуманных локациях. В этом случае реиграбельность возникает именно за счет хорошего сюжета.
Естественно от типа игры это сильно зависит. Но какой бы офигенный и многовариантный сюжет ни был очень мало игроков захотят 3+ раз бегать по одним и тем же локациям и сражаться с одними и теми же противниками. Потому если есть цель на долго подсадить игрока на свое творение, то без рандомной генерации контента не обойтись.
очень мало игроков захотят 3+ раз бегать по одним и тем же локациям и сражаться с одними и теми же противниками
Вот и я этим дотерам так же говорю, а они глазами хлопают
А как же бессмертные Fallout 1/2?
Sign up to leave a comment.
Процедурная генерация случайных игровых подземелий