Игра "Балда" с поддержкой работы по сети - Программирование, компьютеры и кибернетика курсовая работа

Игра "Балда" с поддержкой работы по сети - Программирование, компьютеры и кибернетика курсовая работа




































Главная

Программирование, компьютеры и кибернетика
Игра "Балда" с поддержкой работы по сети

Общие сведения об игре "Балда", обзор ее аналогов и основные требования, предъявляемые к данному программному продукту. Состав и параметры технических средств, оценка параметров совместимости. Основные классы приложения и их общая характеристика.


посмотреть текст работы


скачать работу можно здесь


полная информация о работе


весь список подобных работ


Нужна помощь с учёбой? Наши эксперты готовы помочь!
Нажимая на кнопку, вы соглашаетесь с
политикой обработки персональных данных

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.


Игра "Балда" с поддержкой работы по сети
Сетевые игры (игры с сетевой структурой) являются разделом теории игр, который изучает как методы формирования связей между игроками в конфликтно-управляемых системах, так и правила определения выигрышей игроков с учётом этих связей. В основном выделяют три подхода к формированию связей между игроками: стратегический, кооперативный и динамический.
При стратегическом подходе сетевую игру можно рассматривать как классическую игру в нормальной форме: каждый игрок независимо выбирает свою стратегию (множество игроков, с которыми он в данный момент желает установить связь и множество игроков, с которыми он связи не устанавливает). В результате выбора формируется сетевая структура, которая и определяет выигрыши игроков.
В кооперативном варианте сетевой игры основной проблемой является выбор правила распределения суммарного выигрыша игроков между собой при некоторой наперед заданной или сформированной самими игроками сетевой структуре. В качестве одного из таких правил распределения можно рассмотреть вектор Шепли (классическое решение теории кооперативных игр), построенный специальным образом с учётом сетевой структуры взаимодействия.
При рассмотрении динамического подхода предполагается, что сетевая структура может пересматриваться игроками поочередно согласно некоторому порядку очередности ходов. Принимающий решение игрок может исключить из сети не приносящую ему выгоды связь, либо предложить другим игрокам взаимовыгодные связи.
«Балда» -- лингвистическая настольная игра для 2--4 игроков, в которой необходимо составлять слова с помощью букв, добавляемых определённым образом на квадратное игровое поле. В наиболее популярном варианте игры, который имеет множество компьютерных реализаций, слова составляются посредством переходов от буквы к букве под прямым углом.
В наиболее популярном варианте игровое поле представляет собой 25-клеточную квадратную таблицу, ячейки/клетки центральной строки которой содержат по одной букве, а строка целиком -- произвольное 5-буквенное нарицательное имя существительное в именительном падеже и единственном числе (множественном числе, если слово не имеет единственного числа). Размеры поля, расположение и длина слова могут варьироваться, тем не менее количество пустых клеток в начале игры должно быть чётным, чтобы у обоих игроков было одинаковое количество ходов/слов.
Во время своего хода игрок может добавить букву в клетку, примыкающую по вертикали/горизонтали (в варианте «Королевский квадрат» также по диагонали) к заполненной клетке таким образом, чтобы получалась неразрывная и не самопересекающаяся прямоугольная ломаная («змейка») из клетки с добавленной буквой и других заполненных клеток, представляющая собой слово (соответствующее описанным выше требованиям), или пропустить ход (если оба игрока трижды подряд пропускают ход, то фиксируется ничья). В течение игры должны соблюдаться также следующие правила:
Игроки ходят по очереди (в варианте «Королевский квадрат» для двух игроков ходы двойные, то есть игрок, если не пропускает ход, добавляет подряд две буквы в разные клетки).
Каждая клетка содержит только одну букву, каждая буква в составленном слове приносит игроку одно очко.
Слово должно содержаться хотя бы в одном толковом или энциклопедическом словаре (или энциклопедии), при этом запрещаются аббревиатуры, слова с уменьшительно-ласкательными (банька, дочурка, ножик) и размерно-оценочными суффиксами (домина, зверюга, ножища), если такие слова не имеют специального значения, а также слова, не входящие в состав русского литературного языка, то есть вульгаризмы, диалектизмы и жаргонизмы (имеющие словарные пометы вульг., диал., обл., жарг. и аналогичные, например, сокращённые названия соответствующих регионов).
Слова в одной игре повторяться не могут, даже если это омонимы (в варианте «Королевский квадрат» запрещается составление слов, уже образовавшихся на игровом поле, даже если они не были составлены ни одним из игроков).
Игра заканчивается тогда, когда либо заполнены все клетки, либо невозможно составить очередное слово согласно указанным выше правилам. Выигрывает тот игрок, который наберёт большее количество очков, кроме случая ничьи после троекратного пропуска хода обоими игроками.
Рисунок 1.1.1 Игра «Балда». Главное игровое поле.
1. Андройд-приложения «King Square».
Рисунок 1.2.1 Загрузка приложения King Square
Приложение King Square устанавливается на Андройд платформу.
Имеет возможность выбора режима и размера поля. Так же имеет возможность ввода начального слова.
Сетевое взаимодействие осуществляется через сеть-интернет.
Рисунок 1.2.2 Конфигурация игры приложения King Square.
Игра имеет приятный интерфейс. Выделение слова осуществляется через нажатие и ведение по сенсорносу экрану.
Рисунок 1.2.3 Конфигурация игры приложения King Square.
Целью разработки приложения является создание приложения, которое представляет собой сетевую игру «Балда» где пользователи могут играть на одном компьютере, либо по сети.
· Выбор режима игры. Доступные режимы:
· При создании комнаты для игры пользователь может выбрать количество игроков и размер матрицы для ввода слов.
· Приложение может выступать в качестве клиента и сервера одновременно.
· С приложением одновременно могут работать несколько пользователей.
· Процессор: рекомендуемая частота - 1.0 ГГц и выше.
· Жесткий диск: 32-bit - не менее 850 Мб, 64-bit - не менее 2 Гб.
Платформа.NET Framework состоит из общеязыковой среды выполнения (среды CLR) и библиотеки классов.NET Framework. Основой платформы.NET Framework является среда CLR. Среду выполнения можно считать агентом, который управляет кодом во время выполнения и предоставляет основные службы, такие как управление памятью, управление потоками и удаленное взаимодействие. При этом накладываются условия строгой типизации и другие виды проверки точности кода, обеспечивающие безопасность и надежность. Фактически основной задачей среды выполнения является управление кодом. Код, который обращается к среде выполнения, называют управляемым кодом, а код, который не обращается к среде выполнения, называют неуправляемым кодом. Библиотека классов является комплексной объектно-ориентированной коллекцией допускающих повторное использование типов, которые применяются для разработки приложений -- начиная с обычных приложений, запускаемых из командной строки, и приложений с графическим интерфейсом пользователя (GUI), и заканчивая приложениями, использующими последние технологические возможности ASP.NET, такие как Web Forms и веб-службы XML.
Класс TcpClient запрашивает данные из ресурса в интернете по протоколу TCP. Методы и свойства TcpClient резюмируют сведения для создания Socket для запроса и получения данных по протоколу TCP. Поскольку подключение к удаленному устройство представлено в виде потока, данные можно считывать и записывать с платформой.NET Framework поток- методы обработки.Протокол TCP устанавливает соединение с удаленной конечной точкой, а затем пользами, соединение отправлять и получать пакеты данных. Протокол TCP отвечает за обеспечение, что пакеты данных отправлены к конечной точке, и сборка, когда они поступают в правильном порядке.
Чтобы установить подключение TCP, необходимо знать адрес устройства сети при размещении службы, и необходимо знать TCP-порт, служба использует для обмена данными.
TcpListener используется для контроля портов для входящих запросов, а затем создать или Сокет или TcpClient, которое управляет подключением клиенту. МетодStart входит прослушивание, а метод Stop отключить прослушивание порта. Метод AcceptTcpClient принимает запросы входящего подключения и создает TcpClientдля обработки запроса, а метод AcceptSocket принимает запросы входящего подключения и создает Сокет для обработки запроса.
В следующем примере показано создание сервер времени сети с помощью монитора TcpListener на TCP-порт 13. При получении запроса входящего подключения, сервер отвечает времени текущей датой и временем из хоста-сервера.
Пользователь на этом этапе выбирает тип игры, количество пользователей и размер матрицы. Создаётся комната. В зависимости от выбранного типа игры производятся настройка прослушивания порта приложения(по умолчанию это 1986). Входные данные этапа - запрос пользователя на начало игры. Выходные данные - выбранный тип игры, параметры игры.
2. Ожидание оппонентов. На этапе ожидания оппонентов поьлзователь ожидает когда друние пользователи подключатся к созданной комнате. Если выбран сетевой режим игры, то этот этап пропускается и управление переходит к этапу «Процесс игры». Входные данные - выбранный тип комнаты. Выходнве данные - список участников.
На этом этапе пользователи поочерёдно добавляют буквы на матрицу, выбирают слова, подтверждают их выбор. Процесс продолжается пока в матрице слов есть свободные клетки. Входные данные - список участников, конфигурационные настройки. Выходные данные - заполненная матрица и статистика игроков.
На этом этапе поднимается статистика выбранных слов. Производится подсчёт букв. Игрок, набравший наибольшее количество букв становится победителем. Входные данные - заполненная матрица и статистика игроков. Выходные данные - результаты игры(имя победителя).
Класс, отвечающий за отображение пользовательских элементов управления.
Класс-хранитель настроек для отображения.
Класс хранитель элементов управления, которые участвуют в процессе игры.
Ячейка матрицы. Игровой элемент управления, который хранит вставленныую букву
Класс посредник. Связывает между собой логику отображения, игровую логику и логику передачи данных по сети и логику серелизации сообщений для передачи данных по сети.
Создания комнат, подключения к комнате,отправка сообщений клиентам, ооповещения пользовательских приложений о необходимости смены функционала.
Класс для обработки сообщений, полученных по сети и изменения состояния приложения.
Сетевой клиент. Класс основанный на TCP клиенте для взаимодействия клиенского и серверного приложения.
Сетевой сервер. Класс, основанный на TCP сервере для взаимодействия с клиентскими приложениями.
Класс для сереализации и десерелизациии пользовательских приложений передаваемых по сети.
Класс для управления игровыми настройками.
Класс для управления игровой логикой.
Коллекция элементов отражающих статистику игры.
Логическая абстракция ячейки матрицы
Взаимодействие игровой логики и логики отображения с целью поддержания инкапсуляции происходит при помощи делегатов.
void DisplayMatrixCells(List logicCells);
Отображение на графическом интерфейсе обновленных логических ячеек игровой логики.
void DisplayMessage(string message);
Отображение на графическом интерфейсе подсказки.
· Intel Core i5-3470 (3.2 GHz), 8 Gb RAM, 500 Gb HDD.
· AMD A8-4500M (1,9 GHz), 6 Gb RAM, 500 Gb HDD.
Тестирование производилось с помощью дополнительно разработанного клиентского приложения.
На каждой из машин было установлено все требуемое программное обеспечение. На этих системах приложение работало быстро, без зависаний.
Все исключительные ситуации в приложении перехватываются и корректно возвращают пользователю соответствующие коды ответов.
Приложение работает стабильно, падений и критических ошибок замечено не было.
Тестирование режима на игры на одном компьютере
Нажать “Игра на одном компьютере”, выбрать Количество игроков 3, - Размер матрицы 7. Нажать кнопку «ОК»
Появилось 3 поля для ввода имён ползователя.
Выбрать ячейку для вставки буквы. Попытаться выбрать ячейку отдалённую от других букв на несколько ячеек.
Ячейка подсвечена оранжевым цветом. При выборе неправильной ячейки появляется соответствующее сообщение.
Выбрать слово. Попытаться выбрать слово без вставленной буквы.
Выбранное слово подсвечивается оранжевым цветом. При попытке выбора слова без вставленной буквы выбор слова запрещается. Выводится сообщение.
Тестирование сетевого режима на игры
Запустить три экземпляра приложения.
На трёх экземплярах появляется стартовое меню.
На первом выбрать режим «Сетевая игра», выбрать «Создать комнату», выбрать 3 человека и размер матрицы 5. Нажать кнопку «ОК».
На экране появляется форма с заданием имени пользователя.
При нажатиии «ОК» появляется сообщение «Ожидайте».
На клиентских приложениях выбрать сетевой режим игры, подклучиться к серверу, нажать клавишу «ОК»
На экране появляется форма задания имени пользователя и ip сервера. После нажатия «ОК» появляется надпись ожидание.
После подключения к серверу ещё 2 пользователей на всех 3 приложениях появляется список участников. Нажать кнопку ОК
На экране появляется матрица 5 на пять. Процесс игры аналогичен режиму на одним компьютере.
Понятие электронных учебников и их классификация, общие требования к ним. Порядок разработки электронных учебников, обзор средств их создания и определение затрат. Основные требования к программному продукту. Разработка программы, описание интерфейса. дипломная работа [1,1 M], добавлен 07.05.2014
Общие сведения об электронных учебниках, структура и функции. Обзор методов решения поставленной задачи и обоснование их выбора. Требования к информационной и программной совместимости, составу и параметрам технических средств. Характеристика программы. курсовая работа [3,0 M], добавлен 20.09.2014
Разработка адресных и технических требований к игре. Написание сценария. Общая концепция разработки приложения. Разработка схем алгоритмов приложения. Игровые технологии. Выбор среды и программированного языка. Описание пользовательского интерфейса. курсовая работа [1,6 M], добавлен 14.06.2014
Требования к функциональным характеристикам, составу и параметрам технических средств, информационной и программной совместимости. Описание программы: общие сведения, логическая структура. Средства и порядок испытаний. Входные и выходные данные. курсовая работа [6,3 M], добавлен 12.01.2015
Анализ требований к программному продукту. Требования к информационной и программной совместимости. Проектирование архитектуры программного продукта. Виды программ и программных документов. Общие сведения о С++. Технология разработки программного модуля. дипломная работа [1,2 M], добавлен 05.08.2011
Требования к программе или программному изделию, к информационной и программной совместимости. Проектирование программного продукта. Процедура установки и удаления. Описание интерфейса, главное окно приложения. Основные возможности пользователя. курсовая работа [678,1 K], добавлен 15.02.2016
Требования к программе или программному продукту. Условия эксплуатации и требования к параметрам технических средств. Программное обеспечение, рекомендуемое для функционирования программы. Руководство системного программиста и настройка программы. отчет по практике [1,1 M], добавлен 22.07.2012
Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д. PPT, PPTX и PDF-файлы представлены только в архивах. Рекомендуем скачать работу .

© 2000 — 2021



Игра "Балда" с поддержкой работы по сети курсовая работа. Программирование, компьютеры и кибернетика.
Реферат Нач Школа
Основная Тема Произведения Сочинение Л Каминский
Курсовая Воспитание Детей В Семье
Реферат На Тему Психология Межэтнических Отношений
Реферат: 1984 6 Essay Research Paper The book
Борьба Реферат
Реферат: Методические рекомендации государственное образовательное учреждение дополнительного профессионального образования (повышения квалификации) специалистов
Реферат: Исламский фактор в общественно-политических процессах Поволжья
Эссе Я Учитель Физической Культуры
Символы Культуры Эссе Культурология
Контрольная Работа По Теме Числовые Неравенства
Магистерские Диссертации Спбгу
Сочинения Сталина 13 Томов Купить
Жанр Рассказа Диссертации
Дипломная работа по теме Удосконалення системи управління залученням ресурсів банку із депозитних джерел
Экономическое Развитие Региона Диссертация
Дипломная работа по теме Финансовый менеджмент в условиях инфляции
Курсовая работа по теме Аналіз технології виробництва молока
Курсовая Работа На Тему Планирование И Прогнозирование Использования Городских Территорий
Өркениет Эссе
Закрытая травма живота - Медицина презентация
Конечные сверхразрешимые группы - Математика курсовая работа
Оптимизация логистических затрат промышленного предприятия при управлении запасами сырья и материалов - Менеджмент и трудовые отношения курсовая работа


Report Page