Введение
Сейчас мы живем в мире современных технологий, новых инженерных разработок и интересных достижений в науке. Только мир познакомился с одним открытием, как на смену ему уже приходит другое. Наука не стоит на месте, развивается и дает свои плоды. В эпоху цифровизации и стремительного развития информационных технологий мобильные устройства стали неотъемлемой частью жизни большинства людей. Игры для смартфонов и планшетов пользуются огромной популярностью, особенно среди детей и подростков. Я часто замечаю, что на перемене большинство моих одноклассников сразу достают смартфоны и не выпускают их из рук до звонка. По моему мнению важно, чтобы игры, с которыми ребята проводят много времени, не только развлекали, но и обучали. В наши дни появляется все больше платформ, которые объединяют развлечение и образование. Создание образовательных и развивающих игр может стать отличной возможностью повысить мотивацию к обучению, сделать процесс обучения увлекательным и эффективным.Именно поэтому целью моей научно-исследовательской работы стала: разработка и реализация образовательной игры на платформе Roblox с применением лучших практик геймдизайна для развития математических навыков учащихся начальных классов.
Актуальность: выбранной темы обусловлена необходимостью внедрения инновационных методов обучения, позволяющих повысить уровень заинтересованности и вовлеченности обучающихся в образовательный процесс.
Предмет исследования: влияние образовательного контента на платформе Roblox на мотивацию и успеваемость учащихся начальных классов.
Объект исследования: процесс обучения математике учащихся начальных классов.
Гипотеза: если в учебном процессе использовать образовательную игру, разработанную на платформе Roblox, то это позволит повысить интерес учащихся начальных классов к изучению школьных дисциплин, а также развить у них креативное мышление, мотивацию к самообучению и умение применять полученные знания на практике.
Задачи:
1. Разработка концепции и сценария игры.
2. Создание прототипа игры на платформе Roblox.
3. Проведение пилотного тестирования разработанного продукта среди учеников начальной школы.
4. Сбор, обработка обратной связи от учеников и оценка эффективности.
5. Размещение игры на платформе Roblox.
Методы исследования:
Анкетирование: оценка уровня мотивации и интереса к учебе до и после внедрения игры;
Тестирование: изучение динамики успеваемости по математике;
Наблюдение: анализ поведения детей в процессе игры;
Практическая значимость: данная работа заключается в том, что любой пользователь платформы Roblox может играть в созданную мной игру и тем самым развивать и закреплять навыки устного счета. Материалы разработанного проекта могут быть рекомендованы для использования в образовательном процессе учеников начальной школы. Кроме того, описанные этапы создания игры могут быть полезны начинающим разработчикам онлайн-игр на данной платформе.
Теоритическая часть
2.1 История создания онлайн платформ
Онлайн-игры в настоящее время представляют собой многомиллиардную индустрию, объединяющую миллионы пользователей по всему миру. Однако путь к современному масштабу начался десятилетия назад с простейших сетевых экспериментов.
Истоки онлайн-игр относятся к 1960-м годам, когда учёные использовали компьютерные терминалы в университетах США для проведения многопользовательских игровых сеансов в локальных сетях. Одной из первых подобных разработок стала игра Spacewar! (1962), запускавшаяся на мини-компьютерах PDP-1. Несмотря на отсутствие сетевых функций в современном понимании, она заложила основы многопользовательского взаимодействия.
Первые настоящие сетевые игры появились в формате текстовых MUD (Multi-User Dungeon) — многопользовательских фэнтезийных проектов, функционировавших через командную строку и подключение к сети ARPANET, предшественнице интернета. В 1978 году в Эссекском университете (Великобритания) была создана первая MUD-среда, позволявшая нескольким пользователям взаимодействовать в виртуальном пространстве, выполнять команды и проходить квесты в реальном времени. Это стало революционным шагом: игроки начали взаимодействовать не только с компьютером, но и с другими людьми.
Существенный прорыв произошёл в 1990-х годах, когда рост популярности персональных компьютеров и модемов сделал сетевые игры массовыми. Такие проекты, как Doom (1993) и Quake (1996), стали первыми шутерами с поддержкой многопользовательских режимов через локальные сети и интернет. Игра Quake также ввела понятие игрового сервера, к которому пользователи могли подключаться удалённо.
В этот же период активное развитие получили MMORPG — массовые многопользовательские онлайн-ролевые игры. Ultima Online (1997) и EverQuest (1999) заложили основы жанра, а World of Warcraft (2004) вывела его в мейнстрим, превратив онлайн-игры в социальные платформы с экономикой, иерархией и постоянно развивающимся миром.
Одновременно сформировался и новый жанр — MOBA (Multiplayer Online Battle Arena), начавший развитие после выхода пользовательской карты Defense of the Ancients (2003) для Warcraft III. Со временем появились самостоятельные проекты: Heroes of Newerth (2009), League of Legends (2010) и Dota 2 (2013). К началу 2010-х жанр MOBA занял прочные позиции в киберспорте.
В конце 2010-х годов значительную популярность приобрёл жанр «королевская битва» после выхода PlayerUnknown’s Battlegrounds (2017). За ним последовали Fortnite Battle Royale (2017), Apex Legends (2019) и Call of Duty: Warzone (2020), каждая из которых собрала многомиллионную аудиторию активных игроков. Кроме того, широкое распространение получили игровые симуляторы, моделирующие различные сферы деятельности — строительство, фермерство, управление техникой и профессиями.
Современные онлайн-игры функционируют на основе инфраструктуры высокопроизводительных дата-центров, облачных технологий и кроссплатформенной интеграции. Развитие широкополосного интернета, технологий потоковой передачи данных и мобильных сетей 4G/5G позволило вывести игровой процесс за пределы персональных компьютеров и консолей. Благодаря этому появились мобильные MMO, шутеры и симуляторы, объединяющие десятки миллионов пользователей в реальном времени.
Таким образом, история развития онлайн-игр началась с экспериментальных сетевых проектов и эволюционировала в одну из ключевых отраслей современного цифрового мира.
2.2 Обзор платформы Roblox
Сейчас существует огромная игровая платформа “Roblox” созданная для таких создателей игр. Roblox — это многопользовательская онлайн-игровая платформа, созданная американской компанией Roblox Corporation. Она позволяет игрокам создавать собственные игры, играть в созданные другими пользователями проекты и взаимодействовать друг с другом в виртуальном пространстве. За годы своего существования Roblox превратилась в одну из наиболее популярных игровых площадок среди детей и подростков по всему миру. Платформа была запущена в 2006 году Эриком Касселем и Дэвидом Басцоски. Изначально проект назывался DynaBlocks и представлял собой конструктор трехмерных миров. Со временем платформа эволюционировала, превратившись в полноценную игровую среду, где каждый пользователь мог стать разработчиком собственной игры.
Сегодня на ней зарегистрировано более 100 миллионов активных пользователей в месяц. Кроссплатформенность позволяет запускать игры на ПК, мобильных устройствах, консолях Xbox и PlayStation, обеспечивая сохранение прогресса и взаимодействие между пользователями независимо от выбранной платформы.
Основная аудитория платформы — игроки 9–15 лет. Взрослые геймеры бывают здесь редко, но группа пользователей от 17 до 24 лет с каждым годом растёт.
Одной из ключевых особенностей Roblox является возможность создавать собственные игры. Игроки используют специальное игровое кросс-платформенное приложение Roblox Studio, которое включает инструменты для разработки уровней, персонажей, физики и скриптов. Благодаря этому инструменту даже новички могут создать простую игру, а опытные разработчики — реализовать масштабные проекты.
Игры создаются на языке программирования Lua, что позволяет изучать основы программирования в игровой форме. Многие онлайн-курсы предлагают обучение Roblox Studio как старт в базовом моделировании и кодинге. Это способствует развитию творческого потенциала и интереса к IT- технологиям.
Активное сообщество пользователей является ещё одним важным компонентом платформы. Каждый игрок может создавать и настраивать собственный аватар, что способствует развитию индивидуального стиля и идентичности внутри виртуальной вселенной. Пользователи Roblox могут свободно перемещаться между играми, объединяться в команды и устраивать совместные приключения. Пользователь сам выбирает, чем заняться ― играть, строить или просто соревноваться. На платформе множество игр, от простых симуляторов до масштабных ролевых. Каждый игрок найдет себе занятие по душе.
Интегрированные системы модерации и блокировки помогают поддерживать здоровую атмосферу, ограничивая неподобающий контент и поведение. Создатели платформы ввели с 2024 года систему возрастных ограничений, что позволяет более чётко регулировать доступ к контенту и адаптировать игры под разные возрастные группы.
В Roblox существует собственная валюта — Robux. Это виртуальные деньги используются для покупки предметов, костюмов, аксессуаров и улучшения игрового опыта. Разработчики могут зарабатывать реальные деньги, продавая свои игры или внутриигровые предметы.
Платформа также предлагает возможность продажи созданных игр и моделей другим разработчикам через систему Marketplace. Roblox становится не только местом развлечений, но и источником дохода для талантливых создателей.
Таким образом, Roblox представляет собой многофункциональную платформу с доступными инструментами разработки, большим и активным сообществом, а также устойчивой экономической моделью. Все эти аспекты формируют среду, в которой возможно реализовать самые разные идеи — от простых мини-игр до сложных многопользовательских проектов. Изучение возможностей и ограничений этой платформы создаёт основу для разработки игры, где учитываются жанровые особенности, механики и целевая аудитория, что будет подробно рассмотрено в следующих разделах.
Практическая часть
3.1 Анкетирование
Формирование концепции игры на платформе Roblox начинается с определения основных целей и аудитории проекта. Учитывая, что значительная часть пользователей платформы — это дети и подростки, важно создавать продукт, который будет не только развлекательным, но и обучающим.
Перед определением жанры игры и созданием ее прототипа, я провел анкетирование среди учеников начальных классов моей школы. Всего в опросе участвовало 80 человек.
Для проведения опроса мной были подготовлены следующие вопросы с вариантами ответов:
Какие игры тебе нравятся больше всего?
компьютерные игры - (18 гол.)
настольные игры - (18 гол.)
игры на смартфоне - (25 гол.)
активные игры вне дома - (19 гол.)
Какой жанр игры ты предпочитаешь?
Стратегия - (6 гол.)
Аркады - (18 гол.)
Гонки - (12 гол.)
Квесты - (20 гол.)
экшн-игры - (14 гол.)
Использовал ли ты когда-нибудь образовательные игры для изучения школьных предметов?
да, часто использую - (9 гол.)
иногда применяю - (45 гол.)
нет, никогда не использовал - (26 гол.)
Было бы тебе интересно использовать игровые техники в обучении?
да, очень - (34 гол.)
возможно - (41 гол.)
скорее нет - (5 гол.)
Какой предмет ты бы хотел изучать через игру?
Английский язык - (18 гол.)
Математика - (35 гол.)
Русский язык - (10 гол.)
Окружающий мир - (17 гол.)
Проведенное анкетирование позволило выяснить мнение учеников начальных классов по следующим ключевым вопросам:
опыт взаимодействия учеников с играми разного типа
готовность воспринимать игровую форму обучения
При анализе ответов на вопросы, были получены следующие результаты:
Большинство опрошенных учеников предпочитает игры на смартфоне;
Одним из популярных жанров игры стала – образовательная аркада;
Мало кто использует образовательные игры для изучения школьных предметов, но при этом многим ученикам хотелось бы изучать предмет через игру;
По большинству голосов для изучения через игру была выбрана математика.
3.2 Формирование концепции игры
В рамках концепции рекомендуется использовать возможности Roblox Studio для создания интерактивного трёхмерного мира, в котором можно реализовать простые, но увлекательные механики, способствующие развитию логического мышления. При выборе жанра игры следует ориентироваться на популярные направления внутри сообщества Roblox, такие как платформеры, симуляторы, приключения, квесты и RPG. Эти жанры предполагают динамическое взаимодействие игрока с окружением через перемещение, сбор ресурсов, выполнение заданий и развитие персонажа. На этапе концепции можно заложить базовые механики, например, создание движущихся платформ, телепортов, системы подсчёта очков и инвентаря — все эти элементы легко реализуются при помощи событий Lua и базовых частей (Block, Sphere, Wedge, Cylinder). Учёт особенностей аудитории требует внедрения простого и понятного интерфейса, а также постепенного усложнения игрового процесса. Начальные уровни могут быть короткими и включать обучающие задания по взаимодействию с объектами и использованию игровых функций, что поможет игрокам освоить управление и понять цель игры. По мере продвижения стоит добавлять более сложные элементы, например, командную работу, экономику внутри игры, развитие навыков персонажа, усложнение заданий. Таким образом, в концепции рекомендуется предусмотреть возможность расширения проекта, что увеличит его играбельность. Образовательный аспект игры следует интегрировать органично, чтобы обучение не казалось навязчивым. Можно реализовать квесты, требующие применения логики и алгоритмического мышления, а также встроить мини-игры с созданием сценариев на Lua. При формировании концепции необходимо также учесть технические ограничения и специфику разработки в Roblox Studio. Создание игровых объектов начинается с базовых частей с возможностью настройки размеров, материалов и цветов, что позволяет быстро визуализировать задумку и протестировать основные механики. Программирование поведений посредством Lua обеспечивает гибкость и расширяемость проекта, а встроенные инструменты тестирования и отладки способствуют качественной отработке скриптов на разных этапах разработки. Кроме того, концепция должна предусматривать этап публикации и распространения игры с правильными настройками приватности и оформления описания, что облегчит привлечение аудитории и получение обратной связи. В результате формируется идея интерактивного, обучающего, но при этом развлекательного проекта, построенного на прочном техническом фундаменте и ориентированного на вовлечение активной молодёжной аудитории.
На основании собранных данных по результатам анкетирования определилось, что игра будет посвящена изучению математики в жанре образовательная аркада. Выбор был остановлен на закреплении навыков устного счета как наиболее актуальной области знаний.
Следующим этапом работы стало детальное проектирование игровой среды, включая создание уровней, объектов и интерфейса для обеспечения комфортного и захватывающего взаимодействия с виртуальным миром.
3.3 Разработка
Разработка образовательной математической игры в Roblox Studio проводилась поэтапно с использованием итеративного подхода, включающего прототипирование, интеграцию компонентов и тестирование. Основной целью было создание функционального прототипа, который объединяет теоретическую концепцию игры с практическими элементами платформы Roblox, обеспечивая увлекательный процесс обучения математике для школьников. В процессе применялись встроенные инструменты Roblox Studio, такие как Workspace для организации сцены, Explorer для управления объектами и Properties для настройки параметров, а также готовые ассеты из Toolbox для ускорения работы без нарушения оригинальности проекта. Общий объем разработки составил около 20 часов, с регулярными сохранениями в Roblox Cloud для контроля версий и минимизации рисков потери данных. Итоговый прототип демонстрирует полную интеграцию всех модулей, готов к пользовательскому тестированию и дальнейшей оптимизации на основе обратной связи.
Создание игры
Создание игры начинается с запуска Roblox Studio (рис. 1). Roblox Studio — это основное официальное приложение от Roblox Corporation для создания игр, которое предоставляет полный набор инструментов для 3D-моделирования, программирования и публикации контента на платформе. Создание игрового мира
Рис.1 Логотип приложения Roblox Studio
Следующий этап создание Place (с англ. "пространство" или "опыт") (рис. 2). Для этого был выбран обычный шаблон, который в дальнейшем можно будет изменять под параметры игры. Здесь нас встречает мир с двумя объектами: Baseplate, SpawnLocation.
Рис.2 Шаблон Baseplate
Заключающим этапом настройки является сохранение мира в базе данных игр Roblox (рис. 3). Также задаём игре название для удобного поиска среди множества игр и описания для привлечения целевой аудитории школьников, интересующихся математикой.
Рис. 3 Окно информации мира
Разработка игровых объектов и механик
В качестве основной идеи игры была выбран идея с генерацией математических примеров разной сложности, где игрок начинает с легкого уровня сложности примеров постепенно продвигаясь дальше по уровням. Также для каждого уровня была выбрана своя цветовая градация, где первый уровень имеет зелёный цвет, а последний красный (Рис.4). Всего в данной игре представлено 10 уровней сложности (таблица 1)
|
Уровень |
Операции |
Диапазон чисел |
Таймер (сек) |
|
1 |
+ |
1-20 |
3-6 |
|
2 |
* / |
1-9 |
3-5 |
|
3 |
+ - |
10-50 |
8-10 |
|
4 |
+ - * / |
1-100 (одно ≥50) |
8-10 |
|
5 |
+ - |
1-300 (одно ≥100) |
10-12 |
|
6 |
+ - × ÷ |
1-300 / 1-30 |
10-15 |
|
7 |
+ - × ÷ |
1-500 / 1-50 |
10-12 |
|
8 |
+ - × ÷ |
1-999 / 1-100 |
20 |
|
9 |
+ - |
1-9999 (одно >1000) |
8-10 |
|
10 |
+ -со степенями |
(кубы/квадраты) чисел от 1 до 5 |
18-20 |
таблица № 1
Рис. 4 Внешний вид уровней снаружи
Основной механикой является генерация математических выражений с умножением и делением, расчёт правильного ответа и создание трёх неверных вариантов для выбора из четырёх блоков (Рис. 5). Выражения формируются случайным образом с числами от 1 до 9. Правильный результат размещается случайно на одном из четырёх блоков ответов, а отвлекающие варианты генерируются с небольшим отклонением от правильного без повторений. Игрок кликает на блоки с текстурами цифр; при правильном выборе активируется зелёный цвет, частицы конфетти, звук успеха и начисление монет, при неверном — красный цвет, звук ошибки. Система с таймером и автоматической сменой вопросов обеспечивает множество уникальных заданий и адаптивную сложность для школьников 3 класса
Рис. 5 Блок вопроса с вариантами выбора
Суть игры сводится к тому, чтобы пройти все десять уровней сложности, получая за каждый правильный ответ монетки, позволяющие продвигаться дальше. В последнем уровней у игрока есть возможность купить “Шапочку Бакалавра”, которая будет демонстрироваться остальным игрокам.
Программирование на Lua
Для разработки всех скриптов на языке программирования Lua применялась нейросеть GigaChat (рис. 6), созданная компанией Сбербанк в 2023 году как российский аналог ChatGPT. GigaChat — это мультимодальная нейросеть, способная генерировать текст, код, изображения и поддерживать диалог на русском языке с высокой точностью. Она помогла создать сложные функции — генерацию математических задач, таймеры и обработку взаимодействий.
Принцип взаимодействия с нейронными сетями довольно прост: необходимо составить чёткий запрос на естественном языке, указав задачу, контекст, желаемый формат и ограничения, после чего нейросеть генерирует ответ на основе огромного массива данных.
Рис. 6 Логотип нейросети GigaChat
Программирование в Roblox Studio — это написание простых команд на языке программирования Lua, чтобы оживить игру: заставить кубы двигаться, реагировать на клики мыши, считать очки или менять уровни.
В данной игре на каждый уровень было разработано по 3 скрипта: скрипт генерации математического примера и ответов, скрипт разблокировки двери за монетки, скрипт запуска музыки.
Всего в данном проекте было разработано 13 скриптов: десять скриптов, генерирующих математические выражение и ответы к ним (приложение А), скрипт управляющий музыкой (Приложение Б), скрипт управляющий открытием прохода на следующий уровень (Приложение В).
Описание работы скрипта, генерирующего математические выражения и ответы к ним. Скрипт сначала находит в игре коробку с вопросом, таймер и четыре блока с ответами, а затем показывает примеры сложения и проверяет ответы игрока. Он придумывает случайный пример вроде "7 + 12 = ?", где правильный ответ появляется случайно на одном из блоков, а остальные три — похожие неправильные числа. Игрок кликает на блок, и, если угадал — блок зеленеет, звучит весёлый звук, сыплется конфетти и даются монетки. Если ошибся — блок краснеет со звуком неудачи, но правильный ответ подсвечивается зелёным. Если таймер на 3-6 секунд истекает, математическое выражение создаётся заново автоматически.
Результаты исследования
Подводя итог по проведенному исследованию, я могу утверждать, что использование образовательной игры на платформе Roblox оказывает положительный эффект на качество обучения и мотивацию учащихся начальных классов.
Данное заключение я сделал на основе следующих выводов:
Повышенный уровень мотивации: одноклассники проявляли живой интерес к учебе благодаря игровому процессу.
Социальное взаимодействие: на переменах я наблюдал за одноклассниками с каким увлечением они играли в игру. Как активно общались друг с другом, поддерживали и помогали. Все эти качества способствуют развитию коммуникативных навыков.
Укрепление знаний: для оценки эффективности разработанной игры, мы сравнили средний балл по арифметическому диктанту за 1 и 2 учебную четверть 2025. Прирост составил с 4,10 до 4,20.
Заключение
В рамках данной научно‑исследовательской работы была поставлена и решена задача — разработка и реализация образовательной игры на платформе Roblox для развития математических навыков учащихся начальных классов.
Мной была создана игра «Математическая игра», направленная на закрепление навыков устного счета. Игра получилась очень интересной и получила большое распространение среди пользователей платформы. Для быстрого поиска игры необходимо отсканировать QR- код (рис.7)
Рис 7. QR-код игры
Результаты исследования подтверждают, что Roblox — перспективная платформа для создания образовательных игр, сочетающая:
обучение - достижение предметных результатов;
развитие - когнитивные и социальные навыки;
удовольствие - игровая мотивация и вовлечённость.
Разработанный прототип игры «Математическая игра» может служить шаблоном для создания аналогичных проектов в других предметных областях. Внедрение таких игр в образовательный процесс способно повысить качество обучения, а также сделать его более интерактивным и отвечающим запросам современного поколения школьников.
Литература
Официальные ресурсы Roblox (сайт платформы roblox.com., документация к Roblox Studio, руководства по программированию на Lua).
З. Брамбо Программирование в Roblox. Сделать игру проще простого: создание игр с помощью Roblox Studio и языка программирования Lua от „А“ до „Я“»;
Д. Жаньо «Большая книга Roblox. Как создавать свои миры и делать игру незабываемой»;
Корягин А. В. «Roblox: играй, программируй и создавай свои миры»;
Методические рекомендации Рябус И. М. «От игры до геймификации в условиях цифровизации образования»;
Научная статья А. Г. Широколобовой «Геймификация в условиях цифровой трансформации образования»;
Подсекин И. А. «Создание игры-теста по информатике в программе Roblox Studio»;
Бессмертный А. М., Гаенкова И. В. научная статья «Игрофикация как образовательная парадигма обучения»;
Статья Е.С. Быкадоровой «Геймификация в образовании»;
ПриложениеА
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local SoundService = game:GetService("SoundService")
local player = Players.LocalPlayer
local mathModel = workspace:WaitForChild("Level1"):WaitForChild("Math1")
local questionLabel = mathModel:WaitForChild("Level1_QuestionBox"):WaitForChild("SurfaceGui"):WaitForChild("TextLabel")
local timerText = mathModel:WaitForChild("Timer1"):WaitForChild("SurfaceGui"):WaitForChild("TimerFrame"):WaitForChild("TextLabel")
local answerBoxes = {}
for i = 1, 4 do
local boxName = "Level1_AnswerBox" .. i
local box = mathModel:WaitForChild(boxName)
answerBoxes[i] = {
label = box:WaitForChild("SurfaceGui"):WaitForChild("TextLabel"),
click = box:WaitForChild("ClickDetector"),
part = box,
confetti = box:WaitForChild("Confetti" .. i)
}
end
local coinRemote = ReplicatedStorage:WaitForChild("AddCoinRemote", 5)
local WIN_SOUND_START = 0.0
local LOSE_SOUND_START = 0.3
local EFFECT_DURATION = 1
local winSound = Instance.new("Sound")
winSound.SoundId = "rbxassetid://92995480014090"
winSound.Volume = 0.7
winSound.Parent = SoundService
local loseSound = Instance.new("Sound")
loseSound.SoundId = "rbxassetid://137327891291996"
loseSound.Volume = 0.7
loseSound.Parent = SoundService
local locked = false
local correctIndex = 0
local timerConn = nil
local function addCoins()
if coinRemote then coinRemote:FireServer(1) end
end
local function playConfetti(confetti)
for _, em in pairs(confetti:GetChildren()) do
if em:IsA("ParticleEmitter") then em.Enabled = true end
end
task.delay(1.5, function()
for _, em in pairs(confetti:GetChildren()) do
if em:IsA("ParticleEmitter") then em.Enabled = false end
end
end)
end
local function playWinSound()
winSound.TimePosition = winSound.TimeLength * WIN_SOUND_START
winSound:Play()
end
local function playLoseSound()
loseSound.TimePosition = loseSound.TimeLength * LOSE_SOUND_START
loseSound:Play()
end
local function newQuestion()
local a, b = math.random(1, 20), math.random(1, 20)
local correct = a + b
correctIndex = math.random(1, 4)
questionLabel.Text = a .. " + " .. b .. " = ?"
local used = { [correct] = true }
for i = 1, 4 do
local value
if i == correctIndex then
value = correct
else
repeat
value = math.max(1, correct + math.random(-12, 12))
until not used[value]
used[value] = true
end
answerBoxes[i].label.Text = tostring(value)
answerBoxes[i].part.Color = Color3.fromRGB(163, 162, 165)
end
end
local function startTimer(duration)
if timerConn then
timerConn:Disconnect()
end
local startTime = tick()
timerConn = RunService.Heartbeat:Connect(function()
local remaining = math.max(0, duration - (tick() - startTime))
timerText.Text = string.format("%d.%ds", remaining, math.floor((remaining % 1) * 10))
if remaining <= 0 then
timerConn:Disconnect()
newQuestion()
task.delay(0.5, function() startTimer(math.random(3, 6)) end)
end
end)
end
for i = 1, 4 do
answerBoxes[i].click.MouseClick:Connect(function()
if locked then return end
locked = true
if timerConn then
timerConn:Disconnect()
timerConn = nil
end
if i == correctIndex then
answerBoxes[i].part.Color = Color3.fromRGB(0, 255, 0)
playWinSound()
playConfetti(answerBoxes[i].confetti)
addCoins()
else
answerBoxes[i].part.Color = Color3.fromRGB(255, 0, 0)
answerBoxes[correctIndex].part.Color = Color3.fromRGB(0, 255, 0)
playLoseSound()
end
task.delay(EFFECT_DURATION, function()
for j = 1, 4 do
answerBoxes[j].part.Color = Color3.fromRGB(163, 162, 165)
end
locked = false
newQuestion()
startTimer(math.random(3, 6))
end)
end)
end
newQuestion()
startTimer(5)
ПриложениеБ
local SoundService = game:GetService("SoundService")
local Players = game:GetService("Players")
local player = Players.LocalPlayer
local musicId = "rbxassetid://102243892087638"
local music = Instance.new("Sound")
music.SoundId = musicId
music.Looped = true
music.Volume = 0.2
music.Parent = SoundService
music.Loaded:Connect(function()
music:Play()
print("Музыка запущена для " .. player.Name)
end)
music.Ended:Connect(function()
music:Play()
end)
ПриложениеВ
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local OpenDoorEvent = ReplicatedStorage:WaitForChild("OpenDoorEvent")
OpenDoorEvent.OnClientEvent:Connect(function(part)
part:Destroy()
end)