qwertyMAN 1 722 Опубликовано: 4 января, 2016 (изменено) Игра "квантовый лабиринт" Добрый день, любители математических головоломок.Сегодня, вашему вниманию я представляю игру "Квантовый лабиринт" (многомерный лабиринт)Идейный вдохновитель: фильм "Cube". Предыстория:Вы очнулись в необычном месте, в комнате с четырьмя дверьми. Поглядев в отверстия для выхода, вы наблюдаете соседние комнаты, точно такие же комнаты разных цветов и с разной нумерацией.В кармане пиджака вы нашли записку, на который написано: "выход в комнате номер один".Но что означают цифры, которыми пронумерованы комнаты? Как найти комнату номер 1 и выбраться из куба? Почему комнаты меняют свои положения? Почему некоторых комнат нет и вместо них тёмная пропасть?Всё это вам нужно будет понять, пока вы будете бродить по просторам квантового лабиринта. Цели:Вы должны понять как устроен "квантовый куб", решить задачу (найти цепочку выходов) к комнате номер 1 и выбраться из квантового лабиринта. А на деле рандомно бегать в поисках комнаты номер 1, не понимать как устроена система нумераций, ловить баттхёрты и проклинать всех кого только можно. Потому что если даже соседняя комната и окажется под номером 1, то вы можете запросто пробежать и даже не заглянуть в неё. Так как мы видим лишь те комнаты, на границе с которыми стоим. Примечание:Нумерация не случайна.Какая бы не была безвыходна ситуация, помните, если вы сюда как то вошли, то можете и выйти по обратному пути.Каждый раз, начиная сначала, правила нумерации комнат меняются.Всегда помните - это не Эвклидово пространство. Комнаты здесь меняют местоположение.Принцип связи комнат напоминает теорию графов. Управление:Стрелки - перемещениеQ - выход из игрыAny key - пропустить текст Минимальная комплектация: Монитор любой (рекомендую 2 ур, мне он больше нравится) Видеокарта (соответствующая монитору) Жёсткий диск 1 ур Процессор 1 ур Память 1,5 ур (но чем больше, тем лучше. На каждую новую комнату тратится память) Ссылка на игру:http://pastebin.com/1bWVjGLF Скрины: От разработчиков:В файле игры, можно легко изменить отображение комнат так, чтобы все 4 соседние комнаты отображались одновременно.Изначально, степень запутанности начальной комнаты равна не более 20 перемещений от выхода. Можно настроить.Изначально, стоит ограничение на нумерацию комнат, чтобы не уходить в немыслимые числа. Изменено 12 января, 2016 пользователем qwertyMAN 12 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
qwertyMAN Автор темы 1 722 Опубликовано: 4 января, 2016 (изменено) Планы на будущее: Ловушки в комнатах, это конечно круто, но они могут сделать игру непроходимой. Через комнату с ловушкой нельзя будет пройти, что будет означать непроходимость, возможно ключевой комнаты, на пути на выход. А делать комнаты с ловушками, где ловушку можно обойти, как то фантазии нет. Только комната с минами приходит на ум. По этому ловушки не делал. Так же можно попробовать сделать мультиплеер. Тогда для синхронизации нужно использовать сервер. Который будет хранить всю инфу о комнатах и игроках в памяти. А так же принимать запросы и выдавать инфу. Например, сервер будет проверять, если 2 или более игроков в одной комнате, любое их движение отсылается на компы тем игрокам которые в этой комнате. Если всё же будут добавлены ловушки, можно запросто добавить по 2 штуки ловушка-детектора на игрока. Как в фильме Куб, тапок кинул, если ловушки нет то он возвращается в инвентарь. Изменено 4 января, 2016 пользователем qwertyMAN 3 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Mecopy6ka 366 Опубликовано: 4 января, 2016 Отлично! И кстати, можно сделать саундтрек на либе "пианино" из опенлоадера. А так, однозначно поставлю на игровые компы на сервере P.S. Если понравился фильм, рекомендую одноименную(вроде) карту на Portal. Я фильм не смотрел, но все равно понравилась 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
qwertyMAN Автор темы 1 722 Опубликовано: 4 января, 2016 P.S. Если понравился фильм, рекомендую одноименную(вроде) карту на Portal. Я фильм не смотрел, но все равно понравилась Знаю эту карту на игру Portal. Очень мало комнат, да и по сути совсем не то что было в фильме. Лишь отдалённо напоминает Куб. Я больше не первую часть фильма ориентировался при написании. Там и Кубы разноцветные и заморочки с простыми числами какие то были на счёт ловушек (но у меня ловушек нет). Во второй и нулевой части фильма уже как то не то. Белые комнаты и вообще атмосфера другая. Мне больше первый фильм нравится. P.S. Мне не интересно программировать большинство из того, что есть на этом сайте. Если бы кто идею подал проги, которая связана с вычислениями, я бы с радостью сделал её. Нет вычислений - нет мотивации. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
NEO 541 Опубликовано: 4 января, 2016 (изменено) Знаю эту карту на игру Portal. Очень мало комнат, да и по сути совсем не то что было в фильме. Лишь отдалённо напоминает Куб. Я больше не первую часть фильма ориентировался при написании. Там и Кубы разноцветные и заморочки с простыми числами какие то были на счёт ловушек (но у меня ловушек нет). Во второй и нулевой части фильма уже как то не то. Белые комнаты и вообще атмосфера другая. Мне больше первый фильм P.S. Мне не интересно программировать большинство из того, что есть на этом сайте. Если бы кто идею подал проги, которая связана с вычислениями, я бы с радостью сделал её. Нет вычислений - нет мотивации. Специфичный/ая ты мальчик/девочка. Изменено 4 января, 2016 пользователем NEO 2 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Kartograf 55 Опубликовано: 6 января, 2016 Прошёл лабиринт меньше чем за 5 минут идя по правой стороне.... Надо исправить. 2 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Fingercomp 4 409 Опубликовано: 6 января, 2016 Прошёл лабиринт меньше чем за 5 минут идя по правой стороне.... Надо исправить. Ааа, может, это такая формула попалась? Правая? 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Mecopy6ka 366 Опубликовано: 6 января, 2016 Знаю эту карту на игру Portal. Очень мало комнат, да и по сути совсем не то что было в фильме. Лишь отдалённо напоминает Куб. А это точно та?) Если бы кто идею подал проги, которая связана с вычислениями, я бы с радостью сделал её. Нет вычислений - нет мотивации. Ну, идеи для подобных программ - повсюду! Нет, реально! Начиная от простого калькулятора, заканчивая расчетом траектории ракеты из Galacticraft. Сделать полезную для форума программу - это круто, но главное - в процессе написания получать удовольствие и учиться чему-нибудь новому, или хотя бы не забывать старое Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
NEO 541 Опубликовано: 6 января, 2016 Нужно добавить босса который спавнится через определённое время, так сказать для ускорения поиска выхода. 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
qwertyMAN Автор темы 1 722 Опубликовано: 6 января, 2016 (изменено) Обновление до версии v0.2 Добавлены следующие преимущества:Выбор цвета меткиУстановка меткиУдаление метки Добавлен индикатор текущего выбранного цвета Теперь игрок ровно в центре монитора отображается Расширены ограничители. Теперь нумерация комнат будет идти до миллиона (ранее до тысячи) Обнаружен баг с появлением в игре сразу же в финишной первой комнате (пока не исправлен) Управление: E - установить метку X - удалить метку Z - выбрать цвет (налево) C - выбрать цвет (направо) Что же касается баланса игры - его нет. Текущий алгоритм запутывания не самый лучший, может заспавнить в сразу в финишной комнате или рядом. В будущем надо будет его переписать. Посмотрел вторую часть фильма "Куб" и решил, что разноцветные метки хоть как то помогут не обращаться игроков к ручке и бумажке. Нужно добавить босса который спавнится через определённое время, так сказать для ускорения поиска выхода. Можно просто сделать ограничитель времени. Не успел - умер. Идей для ловушек как то мало. А с босса смысл вообще? Я даже не представляю как он будет выглядеть. Куб который убивает от прикосновения? Графика ОС и СС слишком слабая для каких то серьёзных спец-эффектов. Только пиксели и можно чертить. Изменено 6 января, 2016 пользователем qwertyMAN 3 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Zer0Galaxy 2 187 Опубликовано: 6 января, 2016 [ok=Обновление до версии v0.2]Идей для ловушек как то мало. А с босса смысл вообще? Я даже не представляю как он будет выглядеть. Куб который убивает от прикосновения? Графика ОС и СС слишком слабая для каких то серьёзных спец-эффектов. Только пиксели и можно чертить. А зачем какие то идеи для ловушек? Просто, если комната с ловушкой, зашел в нее и умер. Нужно только снабдить игрока ботинками, которые можно бросать в комнату. И вот тут то актуальной становится командная игра, ибо ботинки заканчиваются. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
qwertyMAN Автор темы 1 722 Опубликовано: 6 января, 2016 А зачем какие то идеи для ловушек? Просто, если комната с ловушкой, зашел в нее и умер. Нужно только снабдить игрока ботинками, которые можно бросать в комнату. И вот тут то актуальной становится командная игра, ибо ботинки заканчиваются. А дело в том, куда расставлять ловушки. Конечно можно сделать их рандомными, убрать из тех комнат по которым сюда зашли обеспечив безопасный выход. Поставить их только в тупиках - комнатах с одним входом и без выходов. Но в фильме была фишка, по цифрам вычислять ловушки. А я такую фишку к себе в игру не могу позволить. У меня другой принцип нумерации комнат. Зато добавил возможность пометки комнат как из второй части фильма. Можно хоть бинарным кодом помечать комнаты. Цветов для этого 7 сделал. главное - в процессе написания получать удовольствие и учиться чему-нибудь новому, или хотя бы не забывать старое Вот это действительно важный совет. А то я тут словил ошибку при использовании table.remove() и не мог понять в чём дело. Позже вспомнил что нужно цикл перебора в обратную сторону пускать в таких случаях. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
qwertyMAN Автор темы 1 722 Опубликовано: 11 января, 2016 Ааа, может, это такая формула попалась? Правая? Я проверил. Оказалось количество комнат колеблется от 1 до 1000. Бывает комнат мало, 17 например и их запросто пройти. Даже бывает что из первой комнаты нет выхода из-за непродуманной генерации формул. Я сделал генерацию таблицы с номерами всех комнат и степенью отдалённости от выхода, чтобы иметь представление о размере куба. Так что скоро исправлю. Ждём обновлений. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
qwertyMAN Автор темы 1 722 Опубликовано: 12 января, 2016 (изменено) Вот и настал этот день! Вышла полная версия игры Cube! Обновление v1.0 Полностью изменён алгоритм запутывания (теперь вас забрасывает в самую дальнюю от выхода комнату)Изменены случайные формулы для дверей. Теперь их более проще вычислить, зато сложность выбраться вслепую возросла. (стало больше комнат)Теперь вначале уровня ведётся статистика (количество комнат, самая удалённая комната и прочее.Добавлены индикаторы (люблю делать индикаторы) которые включаются на кнопку "I". Удобный инструмент для выявления багов. Но во время игры использовать только в ознакомительных целях.Добавлен адекватный гуи. Теперь перед выходом будет запрашиваться разрешение, начать игру можно только нажав на enter и прочее.Добавлены и изменены горячие клавиши. Скажу лишь одно, чтобы открыть меню помощи (help), нажмите кнопку H и увидите все горячие клавиши.Кое что изменил в коде, чтобы стал более читаем.Может работать на компе 1 лвл. Но теперь требует память не менее 2 ур. Желательно больше, чтобы ошибки не ловить. Скрины: Что же касается индикаторов. Они показывают: какая максимальная глубина запутывания от выхода, сколько всего комнат в кубе, далеко ли вы находитесь от выхода (количество комнат), 4 формулы для дверей (которые кстати меняют своё местоположение), прогресс - насколько вы прошли игру, color - текущий установленный цвет для меток. Я их сделал 7, но можно и больше дополнить. P.S. Если руки дойдут разобраться с интернет-картами, то попробую сделать мультиплеер. Если есть идеи по поводу игры, можете сюда высказывать. Что я собираюсь добавить в мультиплеер: Чат. Всем кто находится с игроком в одной комнате будет приходить сообщение. То есть чтобы поговорить придётся держаться в 1 комнате. Возможность соперничать, убить игрока, телепортнув его тем самым в самую дальнюю комнату. Метки с инициалами. То есть метка игрока qwerty любого цвета, будет отображаться как qw. Изменено 12 января, 2016 пользователем qwertyMAN 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Zer0Galaxy 2 187 Опубликовано: 12 января, 2016 далеко ли вы находитесь от выхода (количество комнат) прогресс - насколько вы прошли игру По моему, это надо убрать, ибо при помощи этих двух особенностей можно вычислить в какую сторону идти. P.S. Если руки дойдут разобраться с интернет-картами, то попробую сделать мультиплеер. Зачем интернет? Давай с беспроводными. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
qwertyMAN Автор темы 1 722 Опубликовано: 12 января, 2016 По моему, это надо убрать, ибо при помощи этих двух особенностей можно вычислить в какую сторону идти. Те кто хотят проверить игру на наличие багов, могут свободно юзать этот режим игры. А кто хочет нормально поиграть, конечно же не будет включать. Это же отключаемая функция. Она нужна для: 1 выявления багов, 2 подтверждения, что игрока действительно заносит в самую дальнюю комнату на карте. 3 для исследования этого графа. Мы в прямом смысле путешествуем по графу, где можем просмотреть удалённость данного узла (комнаты) от начальной точки. Немного побродив в случайных направлениях понял, как бы не была запрятана комната, хоть 64, игрок всё ровно спокойно проходит рандомом до комнаты близкой к выходу на 7-8 комнат. Продолжая путешествия, цифра колеблется от 6 до 8. Потому что таких комнат много, в среднем 200-400 штук. Хотя точных данных сказать не могу. Не сортировал пока ту статистику что у меня есть по комнатам. Хотя это не сложно сделать. Зачем интернет? Давай с беспроводными. В том то и дело, что я не понял как работают эти беспроводные карты. Нужно разбираться. Вон там на скринах я пытался что то включить. Как разберусь и будет время, попробую сделать серверную версию. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах
Zer0Galaxy 2 187 Опубликовано: 12 января, 2016 На локальных сетевых картах гораздо проще сделать. Готов подсказать как. Единственный минус - игроки должны находиться на одном игровом сервере. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на других сайтах