'
Научный журнал «Вестник науки»

Режим работы с 09:00 по 23:00

zhurnal@vestnik-nauki.com

Информационное письмо

  1. Главная
  2. Архив
  3. Вестник науки №3 (72) том 3
  4. Научная статья № 70

Просмотры  21 просмотров

Сотников А.В., Зори С.А.

  


РАЗРАБОТКА КОМПЬЮТЕРНОЙ PVP ИГРЫ-СТРАТЕГИИ «КОСМОС» *

  


Аннотация:
в статье исследуется разработка компьютерной игры-стратегии с применением методов игровых моделей PvP и PvE. Описывать как проходил процесс разработка и тестирование компьютерной игры-стратегии «КОСМОС».   

Ключевые слова:
стратегия, алгоритмы, клиент-сервер, планировщик задач, асинхронное программирование   


Введение. Игра PvP подразумевает возможность игрокам атаковать друг друга в соответствии с правилами игры.Термин появился для того, чтобы можно было различить игру человека против персонажей, управляемых компьютером (то есть окружения от англ. environment — PvE), от игры против других игроков — PvP. Это разделение терминов стало необходимым для явного разделения игры против других игроков и против игрового окружения.Целью данной статьи является анализ основных моделей и алгоритмов разработанной компьютерной PvP игры-стратегии «Космос».1. Общая характеристика PvP игр и их отличие от PvE. PvP означает player(s) vs player(s), то есть «игрок(и) против игрока(ов)», тогда как PvE — это player vs environment, что переводится как «игрок против окружения». Таким образом, в PvE-играх вы противостоите врагам, управляемым компьютером. Зачастую это казуальные игры. Разница между PvE и PvP заключается в следующем. PvE-игры, например, онлайн-шутеры с ПВЕ-режимом, — это одиночные игры, в которых все строго регламентировано. В таких играх элемент случайности и непредсказуемости сведён к минимуму, потому что развитие игры не зависит от поведения участников. В PvE-MMORPG или PvE-шутере под «окружением» может подразумеваться вражеский монстр или бездна с лавой, или даже ваш противник по карточной игре, управляемый компьютером.В компьютерной PvP игре стратегии «Космос» реализован режим PvP, то есть игроки будет играть друг против друга, однако для начала им нужно будет развить свое окружение и науку.2. Описания игровых моделей и алгоритмов, реализованных в игре. При разработке игры использовалось программная платформа NET Framework [2] которая поддерживает межъязыковое наследование, межъязыковая обработка исключений и межъязыковая отладка кода и набор компонентов .NET, известный под общим названием ADO.NET, позволяет получать эффективный доступ к реляционным базам данных и многим другим источникам данных.Языком программирования при разработке игры был выбран C# [3] так, как язык используется для разработки игр под Windows, macOS, Android и iOS. Все дело в Unity – платформе для работы с 3D-графикой. С# лучше остальных языков адаптирован под работу с этим движком.Любая стратегическая игра должна давать возможность вариативности её прохождения и развития игрока. В разработанной игре-стратегии есть три варианта развития игрока:Производственный путь - то есть игрок не с кем не взаимодействует и занимается развивает своей планеты в промышленности.Исследовательские путь – схож с производственным путём развития, но за одним исключением исследования влияет на все в игре: строительство, флот, оборону, науку.Военный путь – самый интересный и очень опасный в игре. Нужно нанять себе флот от простого транспорта до самого мощного боевого корабля. Сбалансировать его и отправиться покорять планеты других игроков уничтожая их флота и оборону если хватит сил на это.Для каждого вида развития есть свои звания и уровни который пройдя игрок получит новое звание. Производственный и научный необходимо развить, что бы открылись новые элементы - корабли или оборонительные постройки, которые нужны для военного пути. Так же есть общий рейтинг по всем этим категориям (постройки, наука, флот, оборона).Чтобы реализовать игру в режиме реального времени необходимо создать сервер (планировщик задач), который будет обрабатывать все запросы от игроков на действия, которые требуют временного обновления. На рисунке 1 показано, как происходит взаимодействие клиента(игрока) и сервер.Рисунок 1. Взаимодействие в игре между клиентом и сервером.На рисунке исходный игры Space.exe получает и обменивается данными с библиотекой Headers_games.DLL, эта библиотека обменивается данными с сервером СУБД. За контроль обновление данных в режиме реального времени отвечает Server.exe – планировщик задач. Данный сервер работает в асинхронном [4] режиме так как необходимо выполнять несколько функций на обновление данных одновременно. К обновляемым данным в игре относятся: постройки, науку, наем флот и обороны, полёт флота, бой между игроками.Обновление данных построек и науки — это улучшение объекта на новый уровень развития. Например: игрок выбирает построить верфь, объект имеет начальные параметры до улучшения: уровень, ресурсы на постройку, время улучшение. После улучшения верфь станет на один уровень выше (если был 2ур. То станет 3 уровнем).Обновление данных флота и обороны – это наем флота/обороны в количественном эквиваленте. Так как в игре много различных единиц флота и обороны для каждого из них разбранённые свои стартовые параметры: атака, оборона, щиты, скорость перелёта, стоимость найма (метал, кристалл, дейтерий), время наем одной единицы.Обновление полёта флота – это перемещение флота со своей планеты к другой с одной из миссий: разведать планету или атаковать планету. Имеет набор параметров: координаты планеты старта пути, координаты планеты конца пути, миссия, время полёта до цели, флот, груз.Результатом обновления полёта флота при миссии «разведать планету» будет данные того что находится на планете у другого игрока(рис.2). Рисунок 2. Пример формы-отчёта о шпионаже.Результатом обновление при миссии «атаковать планету» будет бой между двумя игроками. Бой может закончиться ничей или победой одного из игроков и полной полным уничтожением флота другого игрока. И если победила атакующая сторона, то игрок ещё и совершает рейд планеты (забирает половину от всех ресурсов, которые были на планете на момент проведения боя).Отчёт боя печатается на как web-страница и в виде таблицы c использованием JSON пакетов для её формирования(рис.3).Рисунок 3. Пример отчёта о бое между игроками.Обновление данных боя между игроками – это сложная функция, которая включает в себя ряд подфункций:Получение данный о флотах притворствующих сторонПолучение основных бонусных характеристик в процентахРасчёт боя между игрокамиОбновление данных после боя о состоянии флотов игроковНачисление exp победившей сторонеОбновление военного звания у победителяАлгоритм «Боя между игроками». Алгоритм боя в игре реализован по принципу, силы веса одного залпа из всех кораблей с каждой из сторон, а также общих параметров брони и щитов для всех кораблей. Такой алгоритм позволят упростить способ счёт повреждения кораблей, принимающих в бое. Первый удар производит атакующая сторона, а второй за защитник и так поочерёдно до полного уничтожение одной из сторон. Алгоритм просчитывает: пока есть щиты то удары будут приходиться по ним без потери флота. Как только щиты сбиваются, удар принимает броня кораблей и начитаться уничтожение кораблей от самых слабых до самых сильных. Бой выигрывает тот, у кого уцелеет хотя бы один из кораблей ему будут начислены все бонусы и очки, а также возведение в новый военный ранг(звание).Вывод. Проведена общая характеристика PvP игр и их отличие от PvE и то как они используются в современных играх.При разработке компьютерной PvP игры-стратегии «Космос» была реализована вариативность способ её прохождения: производственный, исследовательский, военный. Каждый из которых связан между и зависит от другого. Возможность общение между игроками.Для корректной игры в режиме реально времени был разработанный сервер, который обновляет данные в игре согласно код-команде и времени её выполнения. Сервер работает асинхронно что позволяет его не перегружать и достигать высокой производительности при обработке большего количества запросив на обновление данных. В игре несмотря на множество плюсов есть и недостатки:1. Нет режима PvE, это режим бы сделал игру ещё более интересной и вариативной в плане развития игрока.2. Игра реализована в 2D режиме - то есть нет ни каких визуальных эффектов и трёхмерных моделей боев, планет, космоса.   


Полная версия статьи PDF

Номер журнала Вестник науки №3 (72) том 3

  


Ссылка для цитирования:

Сотников А.В., Зори С.А. РАЗРАБОТКА КОМПЬЮТЕРНОЙ PVP ИГРЫ-СТРАТЕГИИ «КОСМОС» // Вестник науки №3 (72) том 3. С. 428 - 435. 2024 г. ISSN 2712-8849 // Электронный ресурс: https://www.вестник-науки.рф/article/13403 (дата обращения: 17.05.2024 г.)


Альтернативная ссылка латинскими символами: vestnik-nauki.com/article/13403



Нашли грубую ошибку (плагиат, фальсифицированные данные или иные нарушения научно-издательской этики) ?
- напишите письмо в редакцию журнала: zhurnal@vestnik-nauki.com


Вестник науки СМИ ЭЛ № ФС 77 - 84401 © 2024.    16+




* В выпусках журнала могут упоминаться организации (Meta, Facebook, Instagram) в отношении которых судом принято вступившее в законную силу решение о ликвидации или запрете деятельности по основаниям, предусмотренным Федеральным законом от 25 июля 2002 года № 114-ФЗ 'О противодействии экстремистской деятельности' (далее - Федеральный закон 'О противодействии экстремистской деятельности'), или об организации, включенной в опубликованный единый федеральный список организаций, в том числе иностранных и международных организаций, признанных в соответствии с законодательством Российской Федерации террористическими, без указания на то, что соответствующее общественное объединение или иная организация ликвидированы или их деятельность запрещена.