|
#1
|
||||
|
||||
Алгоритм
Здравствуйте всем. У меня проблема я не понимаю как сделать алгоритм который будет формировать список Фигур полимино, чтобы заполнить карту без лишних или недостающих полиминошек. Посоветуйте куда копать, или где можно прочитать что-то подобное и похожее?
На данный момент список формируется с помощью Random() и их 50 поли. Собственно моё творение -Полимино Если обнаружите ошибки в работе программы напишите тут. 11011111 INED Home code VK |
Этот пользователь сказал Спасибо ined за это полезное сообщение: | ||
phomm (06.04.2015)
|
#3
|
||||
|
||||
Управление простое. Выбрав левой клавишей мыши фигуру удерживая её нажимаем на правую клавишу мыши фигура начнёт переворачиваться.
11011111 INED Home code VK |
Этот пользователь сказал Спасибо ined за это полезное сообщение: | ||
Freeman (18.03.2015)
|
#5
|
||||
|
||||
Цитата:
Замечания по интерфейсу:
По геймплею и математике игры советую посмотреть встроенную игру "Дос Навигатора" в режиме "Пентикс". Она есть в DN/2 под Windows, вызывается по Alt+F9, далее кнопка "Уст." в русском переводе. Возможно, стоит добавить дополнительные маленькие фигуры, которые есть в DN, сделав простой и сложный режимы игры. Сложный -- это как сейчас, без малых фигур. В DN, правда, игра на время, поэтому возможны поблажки, а игра в режиме головоломки может быть и посложней, не знаю. Это должны новички отписаться. А в целом игра хорошая, хвалю. Не стоит путать форумы с богадельнями. © Bargest |
Этот пользователь сказал Спасибо Freeman за это полезное сообщение: | ||
ined (18.03.2015)
|
#6
|
||||
|
||||
Спасибо за предложения по интерфейсу, но мой вопрос остался без внимания.
В дальнейшем я собирался сделать различные варианты интерфейса, но принцип пасьянса я думаю тут неуместен.... посмотрим. Цитата:
11011111 INED Home code VK |
#7
|
||||
|
||||
Цитата:
После вашего объяснения попробовал тянуть смелее, и да, после достижения определенной ширины прокрутка прекратилась. Мое мнение о прокрутке в логической игре осталось прежним. А над кликовым интерфейсом вы все же подумайте. Это здорово расширит возможную аудиторию игры. Не стоит путать форумы с богадельнями. © Bargest Последний раз редактировалось Freeman, 18.03.2015 в 23:40. |
#8
|
||||
|
||||
Хорошо. Сделаю переработку расположений карты и полимино.
Freeman, можешь что-то посоветовать по алгоритму, ТЕ по основному вопросу темы? 11011111 INED Home code VK |
#9
|
||||
|
||||
Цитата:
Не стоит путать форумы с богадельнями. © Bargest |
#10
|
||||
|
||||
Вчера прошел все карты по второму разу. Игра конкретно нравится. Нужны новые карты либо случайная их генерация после нахождения алгоритма... Но!
Пасьянсное управление просто обязательно! После нескольких сеансов рука устает и начинаешь банально ронять фигуры. Нужно управление кликами! Еще нужно сделать так, чтобы фигуры не падали друг на друга, а то случайно уроненные фигуры не с первого раза найдешь. Не стоит путать форумы с богадельнями. © Bargest |
#12
|
|||
|
|||
Игра, конечно, очень занятная ! Говорю как обладатель советского пентамино в коробочке и играмши в него немало.
По алгоритму тоже сомневаюсь что для произвольного "поля" можно найти достаточную комбинацию. Поэтому предложу пойти от противного: 1. Генерируем затравку поля, т.е. примерную фигуру - квадрат круг и т.п. и примерный размер и фишки (например обязательные дырки) 2. берём цикл с рандомом и начинаем сращивать разные фигуры (желательно начиная с пента а вероятность более мелких меньше) в монолитную структуру, с учётом только обязательных дырок. если образуются нежелательные дырки - перебрасываем фигуру. 3. растим фигуру в примерно том виде, ка к задал п.1. 4. не доходя до конечного размера начинаем уже добиваться симметрии общей картины (чтобы не выглядело банальной кашей), т.е. из чего-то аморфного добиваем до адеквата, подстригая где надо и тыкая более простые фигурки. В итоге получим что-то подобное фигуре затравке но со своими особенностями, массив заполняющих фигур в итоге и выдаём игроку (может для разных уровней сложности подбавить фигурок). У способа есть очевидный дисбаланс решения - строго будет известно что у простых фигур вероятность быть по краям оч высокая. По интерфейсу - не знаю, вроде ничего так, может пасьянсовый будет действительно удобнее, насчёт поворота - может продублировать на что-то кроме мышки (пробел наверное). Сделать подсветку границ фигур для более удобного поиска на поле, ну и конечно в банке фигур как-то сделать чтобы наложение фигур не убивало глаза. Прокрутка имхо вообще лишняя - сделать просто более норм банк, и помельче, да и колво фигур в банке будет меньше при экономном алгоритме. А вот что реально меня раздосадовало, так это бесконечность игры, я бы хотел видеть, что вот такие-то уровни я уже прошёл, а ещё если уже фигуры наставлены - то спрашивать о переключении уровня. Ну и переиграть уровень при этом отдельной опцией тогда сделать. Ну и озвученные уровни сложности, которые можно и при нынешнем рандоме сделать, просто уменьшив набор генерируемых фигур, для самого сложного оставляя, например, 110% кубиков в сумме по фигурам по отношению к клеткам поля. Есть ещё такой вопрос, думаю, исходник без озвученного алгоритма несложный, планируете ли открывать общественности ? |
#13
|
||||
|
||||
Цитата:
Фигуры пентамино ведь покрывают определенные квадраты, если их объединить. Вот и нужно посчитать площадь в покрываемых квадратах, а затем нагенерить случайных комбинаций комплементарных фигур, плюс уголки на обрезки, как сейчас. И всё. Даже мелкие фигуры "Дос Навигатора" не понадобятся, достаточно будет сегодняшних уголков. Если комплементарные комбинации заранее известны и прописаны в программе, карту можно генерить сразу в единицах покрываемых квадратов, добавляя или вырезая уголки для красоты и/или сложности. Не стоит путать форумы с богадельнями. © Bargest |