книга DipMaster-Shop.RU
поиск
карта
почта
Главная На заказ Готовые работы Способы оплаты Партнерство Контакты F.A.Q. Поиск
ОТЧЕТ ПО КУРСОВОЙ РАБОТЕ ПО ДИСЦИПЛИНЕ "ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ Python" ИГРА "Kill the Beaver" ( Контрольная работа, 9 стр. )
Отчет по курсовой работе по дисциплине "Системное Программное Обеспечение" на тему "Однопроходный/двухпроходный транслятор с языка математических выражений на язык деревьев вывода. Интерпретатор языка деревьев вывода." ( Курсовая работа, 51 стр. )
Отчет по лабораторной работе Дисциплина: "Теория информации и кодирование" Тема: "Код Хэмминга в матричном виде" ( Контрольная работа, 9 стр. )
Отчет по практике ООО "Пермтрансгаз". ( Отчет по практике, 35 стр. )
Отчёт к лабораторной работе по дисциплине: "Основы теории информации и кодирования" ( Контрольная работа, 13 стр. )
ОТЧЁТ О ЛАБОРАТОРНОЙ РАБОТЕ по дисциплине "Методы и средства анализа данных" по теме: "Лабораторная работа с системой анализа данных Weka" ( Курсовая работа, 29 стр. )
Оценка шумов третьего и пятого канала полярно - орбитального спутника FY – 1D ( Курсовая работа, 18 стр. )
ПАРАЛЛЕЛЬНЫЕ АЛГОРИТМЫ ПРОСТРАНСТВЕННОГО МОДЕЛИРОВАНИЯ ГЕОХИМИЧЕСКИХ ПОЛЕЙ ( Курсовая работа, 12 стр. )
Перевести число, записанное римскими цифрами (для их записи используются латинские буквы 1-I, 5-V, X-10, L-50, C-100, D-500, V-1000), в его десятичное представление 2010-12 ( Контрольная работа, 12 стр. )
Перевести число, записанное римскими цифрами (для их записи используются латинские буквы 1-I, 5-V, X-10, L-50, C-100, D-500, V-1000), в его десятичное представление ( Контрольная работа, 12 стр. )
Персональная графическая операционная система MS Windows ( Контрольная работа, 17 стр. )
Поиск заданного фрагмента на графе ( Контрольная работа, 21 стр. )
Поиск корней кубического уравнения вида x^3 + ax^2 + bx + c = 0 ( Контрольная работа, 22 стр. )
Поиск минимального множества сечений контуров обратной связи произвольного графа с помощью структурно-матричного анализа ( Курсовая работа, 10 стр. )
Поиск перемещенных строк при сравнении текстовых файлов ( Курсовая работа, 6 стр. )
Поиск с использованием онтологий предметных областей ( Курсовая работа, 57 стр. )
Поиск сходных алгоритмических конструкций в программном коде Модуль системы автоматического тестирования CATS ( Курсовая работа, 18 стр. )
Полнотекстовый поиск для системы Aworks ( Курсовая работа, 22 стр. )
Полноценная система электронного документооборота "ДокМенеджер" для Государственного учреждения "294 ЦСООР" ( Дипломная работа, 167 стр. )
Понятие алгоритма. Определение и типовая схема циклического алгоритма. Назначение блоков циклического алгоритма. Виды циклических алгоритмов ( Контрольная работа, 14 стр. )
Постановка задачи: Организовать ввод и вывод данных заданных типов, снабдив распечатки соответствующими заголовками ( Контрольная работа, 15 стр. )
Пошаговая распределенная игра ( Курсовая работа, 22 стр. )
Пояснительная записка к курсовой работе (по дисциплине "Базы данных") на тему: Проектирование и реализация базы данных для Видеогалереи на основе единой информационной среды кафедры ( Реферат, 16 стр. )
Пояснительная записка к курсовой работе по дисциплине "Системное программное обеспечение" "Разработка в Borland C++ Builder клиент-серверного обеспечения" "База данных газет" ( Контрольная работа, 8 стр. )
Пояснительная записка к курсовой работе по дисциплине "Теория автоматов" ( Реферат, 24 стр. )

Содержание

Содержание 2

Введение 3

1.1. Глоссарий 3

1.2. Описание предметной области 3

1.2.1. Проект “Пошаговая распределенная игра” 3

1.3. Неформальная постановка задачи 3

1.4. Обзор существующих методов решения 3

2. Требования к окружению 5

2.1. Требования к аппаратному обеспечению 5

2.2. Требования к программному обеспечению 5

2.3. Требования к пользователям 5

3. Архитектура системы (общие требования) 5

4. Спецификация данных 7

4.1. Описание протокола 7

5. Функциональные требования 7

5.1.1. Главный сервер 7

5.1.2. Хранилище информации 8

5.1.3. Сервер карты 8

5.1.4. Клиентское приложение игрока 8

6. Требование к интерфейсу 9

6.1. MainServer 9

6.2. MapServer 9

6.3. GameClient 9

7. Прочие требования 9

7.1. Требования к надёжности 9

8. Проект 9

8.1. Средства реализации 9

8.2. Модули и алгоритмы 10

8.2.1. Библиотека сетевых взаимодействий и утилиты 10

8.2.2. Главный сервер 11

8.2.3. Сервер карт 12

8.2.4. Клиентское приложение 13

8.2.5. Алгоритмы взаимодействия компонентов системы 15

8.3. Структуры данных 17

8.3.1. Пакет Info 17

8.4. Проект интерфейса 18

8.4.1. Приложения MainServer и MapServer 18

8.4.2. Приложение GameClient 18

9. Реализация и тестирование 20

Заключение 20

Список литературы 21

Приложение 1. Снимки экрана 22

Введение

1.1. Глоссарий

Распределенная система – асинхронная система, части которой взаимодействуют с помощью отправки и получения сообщений.

Организатор игры – лицо, не участвующее в игровом процессе, но контролирующее его.

Главный сервер (MainServer) — приложение, выполняющее управление и координацию других элементов системы.

Игрок (Player) — пользователь распределённой системы.

Игровой мир — имитационная модель обработка, которой является основной целью распределённой системы.

Объект-карта (Map) — определенная часть игрового мира.

Сервер карты (MapServer) — приложение, способное обрабатывать отдельный участок игрового мира, предоставлять игроку функции взаимодействия с игровым миром. Сервер карты способен взаимодействовать с другими компонентами системы.

1.2. Описание предметной области

Всемирная сеть Internet дала толчок к появлению новых проблем в области разработки искусственного интеллекта, экономических моделей и теории игр. Это обусловлено тем, что Internet предоставляет возможность как параллельных, так и последовательных взаимодействий. Примером моделей, построенных по принципу параллельных взаимодействий, являются распределенные игры.

Главной проблемой многопользовательских онлайновых игр (Massively-Multiplayer Online Games, MMOGs) являлось ограничение, накладываемое архитектурой сервер-клиент, пока некоторыми исследователями не было предложено использовать сеть серверов для обработки игрового процесса. При использовании такого подхода встает проблема координации действий серверов и игроков, подключенных к ним, однако данная архитектура позволяет избавиться от огромных производительных затрат, неизбежных при использовании классического сервер-клиентского подхода.

1.2.1. Проект “Пошаговая распределенная игра”

В рамках данного проекта должна быть разработана многопользовательская распределенная игра, позволяющая игроку взаимодействовать с объектами игрового мира и другими игроками. Игру решено было сделать в жанре пошаговой космической стратегии.

1.3. Неформальная постановка задачи

Пошаговая распределенная игра должна состоять из следующих частей:

• Системы, обеспечивающей функционирование игрового мира (серверная часть)

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

Серверная часть игры должна:

• Распределять вычислительную нагрузку между серверами карт

• Принимать и обрабатывать команды игрока

• Сообщать клиентскому приложению о состоянии игрового мира

Клиентская часть игры должна:

• Обрабатывать сообщения сервера о состоянии игрового мира

• Отправлять команды игрока серверу

1.4. Обзор существующих методов решения

Стандартным подходом к решению проблемы обработки данных и обслуживания клиентов является построение системы с использованием двухуровневой архитектуры «Клиент—Сервер» (см. Ошибка! Источник ссылки не найден.). Однако, учитывая достоинства и недостатки трёхуровневой архитектуры (см. Error! Reference source not found.) по сравнению с двухуровневой архитектурой (см. Error! Reference source not found.) при разработке данного проекта было решено использовать трёхуровневую архитектуру.

Рисунок 1 Двухуровневая архитектура Рисунок 2 Трехуровневая архитектура

Таблица 1 Сравнительная таблица двухуровневой и трехуровневой архитектуры

Двухуровневая архитектура Трёхуровневая архитектура

Достоинства • Простота реализации системы • Меньшая нагрузка на сервер

• Относительно низкие аппаратные требования

• Возможность масштабируемости системы

Список литературы

[1] D. Monderer, M. Tennenholtz. Distributed Games, Technion-Israel Institute of Tehnology, 1997

[2] C. GauthierDickey, D. Zappala, V. Lo. A Distributed Architecture for Massively Multiplayer Online Games, University of Oregon, 2003

[3] Wikipedia: the free encyclopedia, Distributed Computing, http://wikipedia.org

[4] P. Naughton, H. Shildt, Java 2: The complete reference, Osborne, McGraw-Hill, 1999, 1108 pages.

[5] L. Gong, G. Ellison, M. Dageforde, Inside Java™ 2 Platform Security, Addison Wesley, 2003, 384 pages.

[6] I. Horton, Beginning Java 2, Indianapolis, Wisley Publishing Inc, 2005, 1503 pages.

[7] A. Mulholland, G. Murphy, Java 1.4 Game Programming, Wordware Publishing, 2003 647 pages.

[8] Divide & conquer, http://www.the-game.ru

[9] OGame, http://www.ogame.org

[10] Master of Orion III, http://moo3.quicksilver.com/

[11] Thousand Parsec, http://www.thousandparsec.net/tp/index.php

[12] Outer Space, http://www.ospace.net

[13] Galactic Civilizations 2, http://www.galciv2.com/

[14] Space Empires, http://www.malfador.com

[15] Freeciv, http://www.freeciv.org/

[16] FreeOrion, http://www.freeorion.org/

[17] MicroProse Software, Master of Orion: technical supplement and reference, 1993.

[18] Ряжских А. В. Отчёт по курсовой работе. Библиотека распределённых пошаговых игр: Подсистема обеспечения процесса распределённой обработки данных.

Примечаний нет.

2000-2024 © Copyright «DipMaster-Shop.ru»