Как стать автором
Поиск
Написать публикацию
Обновить
14.73

Логические игры

Развиваем логику

Сначала показывать
Порог рейтинга
Уровень сложности

Решаем мини-игру про взлом протокола в Cyberpunk 2077 за 50 строк на Python

Время на прочтение6 мин
Количество просмотров8.9K
image

Если вы хотя бы отдалённо интересуетесь играми и не прожили последнюю пару лет в тайге, то, вероятно, слышали что-нибудь о Cyberpunk 2077. После долгого ожидания она наконец вышла! И в ней есть мини-игра про взлом! И чем больше получишь в ней очков, тем ценнее приз! Может ли магия Python дать нам преимущество в этом жестоком Нете? Разумеется.

Краткое описание мини-игры: игроку даётся квадратная матрица и одна или несколько последовательностей шестнадцатеричных чисел, а также буфер определённой длины. Цель игрока — завершить наибольшее количество последовательностей, выбирая столько узлов, сколько позволяет буфер. Каждая последовательность заполняется значением, если выбранный узел является следующим узлом последовательности. В начале игры можно выбрать любое из значений в первой строке матрицы. После этого в каждом ходе можно попеременно выбирать N-ный столбец/строку, где N — индекс последнего выбранного значения. Если это ужасное описание вам не помогло, то более подробное можно прочитать здесь.
Читать дальше →

Так какими же должны быть идеальные шахматы?

Время на прочтение6 мин
Количество просмотров18K

Так какими же всё таки должны быть идеальные шахматы?

Как уже принято на хабре, увидел статью «Какими могут быть идеальные шахматы», хотел написать комментарий, но понял, что многовато получается и решил написать статью.

Чтобы понять какими могут быть идеальные шахматы, нужно сначала понять что не так с шахматами нынешними (классическими). Давайте попробуем сформулировать недостатки не только геймплея как такового, но и недостатки связанные с психологическим восприятием того, что происходит во время игры.

Так какими же они должны быть?

«Победа сегфолтом» и другие эксплойты шахматных движков

Время на прочтение10 мин
Количество просмотров9.2K

Мы занимаемся документированием всех способов, которые можно использовать для реализации эксплойтов шахматного движка Stockfish, вызывая крэши при попытке вычисления наилучшего следующего хода или просто обманом убеждая движок, что допустимых ходов нет (сохраняя при этом в интерфейсе иллюзию, что происходит игра по правилам).

Прелюдия


Universal Chess Interface (UCI) — это открытый коммуникационный протокол, позволяющий шахматным движкам общаться с интерфейсами пользователя. Он поддерживается практически каждым шахматным движком, и через этот интерфейс мы будем подключать наш «запутыватель» (фаззер, fuzzer).

Stockfish


Stockfish — это шахматный движок с открытым исходным кодом, постоянно занимающий высокие места в списках рейтингов шахматных движков. Stockfish обычно поставляется в составе шахматных приложений, а также используется как основа для множества производных от него движков.
Читать дальше →

Игры по спецификации: обратная сторона изобретательности ИИ

Время на прочтение7 мин
Количество просмотров4.3K
Игры по спецификации — это поведение, удовлетворяющее буквальной спецификации цели без достижения намеченного результата. У всех нас есть опыт игры по спецификации, даже если не под этим названием. Возможно, читатели слышали миф о царе Мидасе и о золотом прикосновении, в котором царь просит, чтобы всё, к чему он прикасается, превращалось в золото, но вскоре обнаруживает, что даже еда и напитки превращаются в металл в его руках. В реальной жизни, когда учащийся получает вознаграждение за хорошую работу над домашним заданием, он может скопировать другого студента, чтобы получить правильные ответы, вместо того чтобы изучать материал — и таким образом использовать лазейку в спецификации задания. 

Приятного чтения
Привет, Хабр! Мы Юла, mobile-first сервис объявлений с аудиторией более 27 млн пользователей. Мы ценим скорость и нестандартные задачи, а прямо сейчас ищем себе в команду бойцов по направлениям мобильной разработки iOS и Android. Под катом — наш тест со сложными и не очень задачками на логику и профильные знания. А для того чтобы добавить драйва и оборотов (мы же Юла), мы снабдили тест таймером. Делитесь вашими результатами в комментариях.
Гоу разомнёмся?

О шахматах. И не только

Время на прочтение7 мин
Количество просмотров13K
Сегодня не будет тяжких раздумий о настоящем и будущем компьютерной индустрии. Сегодня я хочу рассказать об одном из своих хобби. Я играю в массу разных игр: футбол, хоккей, теннис (большой и маленький), покер, преферанс, биржа и т.п. Но мой “профильный” вид спорта — шахматы. Дальше кандидата в мастера моя карьера на этом поприще не продвинулась, но любовь к древней игре я сохраняю уже 4 десятка лет. Интересно, что она вполне “ужилась” с другим увлечением – программированием, породив интерес к искусственному интеллекту и теории игр. И разумеется, последние прорывы в этой области связанные с феноменальными успехами проекта AlphaZero не могли пройти мимо меня.

image

Тогда я просто сидел и восхищался партиями AlphaZero против Stockfish. А сейчас вернулся к теме в связи с задачей оптимизации нейронных сетей, которой иногда приходится заниматься по работе (увы, меньше чем хотелось бы). Как мне кажется, задачи эти могут оказаться тесно связанными, поэтому захотелось как то систематизировать свои идеи.
Читать дальше →

Дилемма: пойти в проверенную столовую или попробовать новую?

Время на прочтение5 мин
Количество просмотров15K

Представим ситуацию: приехали в новый город на неделю-другую, и нужно понять, как выбирать места для обедов. Риски понятны: если постоянно ходить в несколько уже знакомых столовых, то можно упустить совсем хорошую; но и идти в непонятно какую новую столовую вместо хорошей проверенной тоже не хочется. Каждый охотник желает знать, где баланс эксплорейшена-эксплотейшена. Под катом разберемся как нужно действовать.


Читать дальше →

DagazServer: Как всё устроено

Время на прочтение41 мин
Количество просмотров3K
По всей видимости, я не самый правильный фронтедщик. Большую часть сознательной жизни я занимаюсь базами данных и немного бакендом. Любовь к настольным играм — вот что заставило меня связаться с web-разработкой. Новый, совершенно незнакомый мне язык программирования — JavaScript, я изучал по ходу дела. Допускаю, что многое из того что я делал, способно ужаснуть опытных web-разработчиков, но я стараюсь стать лучше. Этот текст не для тех, кто привык во всём следовать раз и навсегда написанным инструкциям. Но если вы любите экспериментировать, докапываться до каждой мелочи, открывать новое для себя, добро пожаловать под сень моего леса.


DataArt запустил бесплатную платформу Kiddo — онлайн-задачник для школьников, изучающих Питон

Время на прочтение5 мин
Количество просмотров8.6K


Пополнить базу собственными задачами может любой желающий, а на свой сайт встроить Kiddo не сложнее, чем плеер YouTube. Об идее детской образовательной площадки и ее реализации во время карантина рассказал Денис Цыплаков — Solution-архитектор DataArt, вдохновитель проекта.
Читать дальше →

Проблема останова лжеца Гёделя и брадобрея Кантора

Время на прочтение12 мин
Количество просмотров17K

Здравствуйте, меня зовут Дмитрий Карловский. А вы на канале Core Dump, где мы берём различные темы из компьютерной науки и деконструируем их по полочкам.


А на этот раз мы разберём тему "абсурда" — почему он возникает и к каким странным последствиям приводит неосторожное обращение с ним. Докажем, что Санты не существует. Научимся пересчитывать линейки. Остановим временную петлю. И элегантно преодолеем столетний кризис оснований математики.


Так что забирайтесь в кроличью нору — вас ждёт короткое, но увлекательное приключение.



Вы можете либо посмотреть видео запись, либо открыть в интерфейсе проведения презентаций, либо читать как статью...

Читать дальше →

Сказка как проект: цели, планирование, оптимизация – обучаем ребёнка навыку проектного мышления

Время на прочтение7 мин
Количество просмотров6.8K
Внимание!1: В посте есть спойлеры к сказкам.

Внимание!2 (абзац добавлен после чтения комментариев, полученных в течение дня после публикации): В этом посте я не призываю отбирать у детей детство и тратить его на сложные и ненужные упражнения. Игра, которую я предлагаю – это естественный способ развития ребёнка посредством чтения и общения, я лишь предлагаю организовать это общение в определенном формате. Если для вас настольные игры для детей или попытки вызвать ребёнка на диалог после совместного чтения книги (или вообще — совместное чтение книги) кажется странным и ненужным занятием, то не читайте этот пост – кроме недоумения и негатива он не вызовет в вас ничего.

Что такое проектное мышление, зачем оно детям и причём тут детские сказки


Если начать отвечать на первый вопрос, то ответ на второй придёт сам собой.

Мне нравится такое определение для проектного мышления: это способность определять цель и шаги по её достижению с учётом имеющихся обстоятельств и ресурсов, – навык, который актуален в любом возрасте, начиная с 6-ти летнего. (Ограничение в 6 лет связано с особенностями развития человеческого мозга – до этого возраста у ребёнка ещё отсутствует волевая регуляция и способность к планированию.)

Ведь, если так подумать, практически вся наша жизнь – это череда больших и маленьких проектов: организовать путешествие, сделать ремонт, распланировать семейный бюджет на месяц… Даже поход в магазин за продуктами можно представить как проект. И для ребёнка это тоже актуально – просто в детстве задачи стоят несколько другие. И поэтому я предлагаю начать обучать проектному мышлению, как только мозг для этого “созреет”. Сегодня я расскажу про игру по сказкам: будем развивать навык проектного мышления ребёнка с помощью самого доступного “сборника упражнений” – книги сказок.
Читать дальше →

Работа и карьера геймдизайнера. Часть 1. Что за зверь и с чем его едят?

Время на прочтение16 мин
Количество просмотров7.2K

Константин Сахнов из ВШБИ НИУ ВШЭ в рамках курса "Менеджмент игровых проектов" целую лекцию этой теме выделил, чтобы точно не осталось "белых пятен". А мы перевели старания и страдания Кости в текст.


Сегодня мы говорим о такой теме, а что такое, собственно, работа и карьера гемдизайнера. Как найти свой путь в игровую индустрию, что здесь делать, чем здесь заниматься. Конечно, все могут сказать сразу: «Очень легко, окей, я хочу делать то, что мне нравится». Прекрасно. Я тоже хочу делать то, что мне нравится. Но попутно всегда стоит вопрос «А есть ли у вас деньги на это? Или вам еще нужно что-то зарабатывать?»


Когда вы хотите попасть в игровую индустрию, вы так или иначе, как и любой сотрудник, который хочет попасть куда угодно, соизмеряют две вещи это ценности, возможности которые им даст это место (ценности компании в игровой индустрии, либо возможности Газпрома, куда вы хотите пойти) с вашими собственными потребностями. И вы сравниваете пойдет-не пойдет, мое-не мое.


Как мы турнир провели

Время на прочтение20 мин
Количество просмотров1.9K
Потому что совместный труд, для моей пользы
— он объединяет.

Матроскин

Бросая в воду камешки, смотри на круги, ими образуемые; иначе такое бросание будет пустою забавою.

Козьма Прутков «Мысли и афоризмы».


Недавно, в прошлую пятницу, мы решили слегка разнообразить свои будни, проведя программистский турнир. Повестка определилась не сразу. Были мысли про аналитическую обработку данных, машинное обучение, но в конце концов, остановились на настольных играх. Нам хотелось ввести в мероприятие элемент соревнования, а что, как не игры, позволяет легко это сделать?
Читать дальше →

Ближайшие события

Сплетая дизайн

Время на прочтение4 мин
Количество просмотров4.3K
Три кольца — премудрым эльфам
— для добра их гордого.
Семь колец — пещерным гномам
— для труда их горного.
Девять — людям Средиземья…

Джон Рональд Руэл Толкин


Работая над играми, я уделяю большое внимание дизайну. Речь идёт не о красивой картинке, хотя и она конечно имеет значение. Прежде всего, для меня важны удобные игровые механики. Игра должна приносить удовольствие. Когда в Сапёре при клике на пустое поле автоматически открываются все поля, не соседствующие с минами — это удобно. Известный всем пасьянс также можно значительно улучшить, просто избавив пользователя от необходимости выполнения лишних действий. Но сегодня я хочу рассказать о другой игре. Той самой, которая изображена на КДПВ (как обычно, все картинки в статье кликабельные).
Читать дальше →

Гениальный алгоритм создания лабиринтов в игре Entombed, который до сих пор не могут разгадать

Время на прочтение5 мин
Количество просмотров81K


В 2017 двое ученых, канадец John Aycock и британка Tara Copplestone, опубликовали анализ классической игры Entombed для игровой приставки Atari 2600. Механика этой игры, выпущенной в 1982, крайне проста: археолог, управляемый игроком, должен пробраться по прокручивающимся снизу вверх катакомбам, уворачиваясь от зомби.

У Atari 2600 было всего 128 байт ОЗУ; тем не менее, кажущийся бесконечным лабиринт при каждом запуске был новым, т.е. генерировался в памяти. Как же программистам это удалось? Вот комментарий Стивена Сидли — программиста, 38 лет назад создавшего эту игру:
Основную часть генератора лабиринтов написал какой-то уволившийся торчок. Я связался с ним, чтобы выяснить, как его алгоритм работал. Он ответил, что придумал этот алгоритм, когда был вусмерть накурен и вдобавок пьян, что написал его сразу на ассемблере прежде чем вырубился, а потом даже близко не мог вспомнить, в чем его алгоритм состоял.
Читать дальше →

60+ игр для гиков

Время на прочтение35 мин
Количество просмотров54K
Приветствую всех брутальных Хабрачан и чувственных Хабрачаночек!

Благодаря вашей поддержке я смог написать статьи про сериалы в мире IT. Вместе мы прошли через многое. В последней статье я попросил вас рассказать своё мнение о том, стоит ли мне писать статью про гиковские игры и вы снова поддержали меня. Спасибо за это!

Что же, как я и обещал — подборка 60+ игр для гиков перед вами. Сразу хочу оговорить один момент. Все мы гики. У кого-то есть любимые игры, которые могли сюда не попасть. Напишите о них в комментариях. Все ваши комментарии очень ценны и добавляют интереса в наш диалог. Часть из игр моей подборки непосредственно про IT и вокруг нас с вами, часть — не про IT, но гику эти игры наверняка понравятся. Часть игр чему-то учат, часть — просто веселят и развлекают.

Так как подборка очень большая, я не буду детально описывать каждую игру, но расскажу интересные особенности про все. Сортировал игры я не по значимости, а по алфавиту, чтобы было проще и читать, и искать.

И ещё один момент. Поздравляю всех с наступлением лета! Думаю, в этот непростой год, когда сложно выбраться отдохнуть — цифровые развлечение будут совсем не лишними.

Что же. Давайте не будем тянуть время и поговорим о подобранных мною для вас играх!


Анонс онлайн-квиза для айтишников: первое название Гугла, байки из Кремниевой Долины и проблемы високосной секунды

Время на прочтение2 мин
Количество просмотров2.9K

image


Привет, Хабр! Карантин затянулся: мы давно обустроили домашнее рабочее место, научились эффективно заниматься делами на удалёнке, поучаствовали в нескольких онлайн-митапах и, может, даже прошли пару обучающих курсов. Пора отвлечься, размять извилины и посоревноваться друг с другом в логике и сообразительности.


В эту пятницу, 15 мая, мы впервые проведём Техноквиз — онлайн-игру в стиле известных барных викторин. Читайте правила, собирайте команду и скорее регистрируйтесь!

Давайте подробности!

Крутилки или Холодильник в Братья Пилоты

Время на прочтение4 мин
Количество просмотров15K
imageЯ люблю мобильную разработку, а когда глаза горят от идеи — то оторваться от работы очень сложно.

Так и случилось в этот раз. Вспомнилась мне старая игра «Братья Пилоты» и загадка по открытию холодильника. Для тех кто забыл напомню, что необходимо было повернуть все ручки в горизонтальное положение. Но, при повороте ручки вместе с ней поворачивались другие ручки, находящиеся в том же ряду и столбце. В игре задача решается достаточно просто — необходимо запомнить вертикальные ручки и прокликать по ним, игнорируя последующие состояния.

Очевидно, что ручки в игре были расставлены так, чтобы школьник мог их решить по наитию. Но мне стало интересно — можно ли решить задачу, если все ручки в горизонтальном положении? Или почти все?
Читать дальше →

Игра в Науку — Батл экспериментаторов — прививка научного мышления в общественное сознание

Время на прочтение11 мин
Количество просмотров5.1K


Парадокс современной системы школьного образования заключается в том, что, выступая от лица науки, она требует “слепого догматического почитания” “научных истин”, но игнорирует незыблемый научный принцип тотального сомнения. Изучению научного метода, мягко говоря, уделяется незаслуженно мало внимания. Всё сводится к запоминанию научных фактов, без понимания того, как они были получены.
Наша же цель не в том, чтобы загрузить в ученика какой-то объем научной информации, и даже не в том, чтобы заставить понять и усвоить эту информацию. Цель: привить настоящий научный метод мышления и научить получению “нового” знания напрямую из окружающего мира без посредников и авторитетов. Научить задавать правильные вопросы, ставить и проводить эксперименты, интерпретировать результаты, критически осмыслять и фальсифицировать интерпретации.

Мы предлагаем некоторую инициативу, которая, по нашему мнению, могла бы инспирировать в массовое сознание научные гносеологические принципы. Будем рады любому конструктивному участию.

Под катом долгое подробное вступление. Непосредственно самому Батлу посвящен последний параграф текста.
Читать дальше →

Приключения Чиполлино: карантинный IT-квест от «Фланта»

Время на прочтение1 мин
Количество просмотров4.6K
Привет, Хабр!



Вы же помните Чиполлино? Да-да, того самого парня-луковицу из детской сказки. Так вот: он оказался в нашем мире в самый разгар пандемии COVID-19, наивно* полагая, что его защищают природные фитонциды… Путь героя домой, в свою луковую страну, оказался непрост. Его ждёт множество интересных загадок и головоломок, с которыми, мы уверены, Чиполлино с радостью помогут хаброжители, находящиеся на карантине.
Читать дальше →

Вклад авторов