1. Введение
1.1. Глоссарий
CGI — Common Gateway Interface, [www.w3.org/CGI/].
DNS — Data Name Service, протокол преобразования доменных имен в IP-адреса, [www.dns.net/dnsrd].
HTTP — Hyper Text Transfer Protocol, протокол передачи гипертекста, [www.w3.org/Protocols/Specs.html].
Oracle — корпоративная реляционная СУБД, [www.oracle.com].
TCP/IP — Transmission Control Protocol/Internet Protocol, стек протоколов, используемый в Internet, [dir.yahoo.com/Computers_and_Internet/Communications_and_Networking/Protocols/TCP_IP/RFCs/].
UML — Unified Modeling Language, [www.rational.com/uml/index.jsp].
M:TG — Magic: The Gathering, коллекционная карточная игра, [www.wizards.com].
1.2. Описание предметной области
В 1993 году произошло событие, которое перевернуло представление игрового сообщества о настольных играх. В августе этого года молодая малоизвестная американская компания «Wizards of the Coast» выпустила игру под названием M:TG (Magic: The Gathering). Игра моментально завоевала популярность.
Распространение и развитие этой игры организовано очень необычно — с большим размахом и нацеленностью на коммерческий успех. Игра обладает огромным потенциалом. Прежде всего, необходимо сказать, что M:TG — не просто игра. Это система игр, как уже созданных, так и тех, которые будут созданы в будущем, система правил, на базе которой строится множество взаимосвязанных и взаимопересекающихся игр. Правила M:TG находятся в Приложении 1.
Называть M:TG просто карточными играми (Card games) не стоит — возникает слишком много неверных ассоциаций. Для этой игры требуется совершенно особая колода, без привычных мастей, тузов и картинок.
В основе игры лежит простой, но почти гениальный принцип: каждый игрок пользуется своей собственной колодой («турнирной» колодой) и формирует ее по своему вкусу и возможностям. Чем лучше у него в колоде карты, тем больше шансов на выигрыш. Новые карты добавляются в колоду в результате обменов между игроками и при покупке новых колод в магазине.
«Базовая» колода для игры состоит из 60 карт. Каждый играющий, купив такую базовую колоду, может собрать себе «турнирную» колоду, включив в нее не менее 40 карт. С ней он
выходит на поединок. Какую колоду выставит соперник, игроку неведомо, сведения о картах противника он начнет получать только после того, как игра начнется.
Чем большим количеством карт владеет играющий, тем свободнее он чувствует себя при конструировании «турнирной» колоды и тем проще ему собрать «непобедимую» колоду. Дополнительные карты для этого он может покупать в магазинах.
Так как данная игра приобрела огромную популярность, появились клубы M:TG. Но из-за высокой стоимости игровых карт не каждый желающий может себе позволить увлечение этой игрой. Появились различные компьютерные переложения M:TG, которые получили весьма широкое распространение, но всё же лишены одного большого плюса — живого общения игроков.
Людям, увлекающимся M:TG, нужна возможность игры без значительных материальных затрат, при этом, каждая игра должна проходить непосредственно между двумя людьми, т.е. чтобы сама игра создавала видимость живого общения.
Для решения этой задачи необходимо использовать возможности глобальной сети Internet и создать версию M:TG, позволяющую производить авторизацию и аутентификацию, игроков (пользователей разрабатываемой системы), выбирать удалённого соперника по игре, формировать «турнирную» колоду и проводить саму игру.
Ставится задача разработки и написания on-line версии M:TG. Заказчиком является ЗАО «КомДЭК».
1.2.1. Онлайновые версии игр
В наше время в связи со стремительным развитием сетевых технологий зачастую общение по сети заменяет живое общение. Оно и понятно — сеть позволяет преодолевать расстояния, ранее считавшиеся, по сути, немыслимыми препятствиями. Не остались в стороне от этих изменений и карточные игры, как одна из форм живого общения. С другой стороны, карточные игры для многих являются не только — и даже не столько — способом убить время и не только формой общения — они основа игорного бизнеса, который, как и многие другие, вполне безболезненно перекочевал на просторы Интернета.
Организация on-line версий игр в основном принимает одну из трёх форм:
1. Каждый из игроков запускает на своей машине клиента, который, в свою очередь, подключается к серверу, следящему за состоянием колоды, соблюдением правил игры и т.п. Так устроены все виртуальные казино и on-line карточные клубы, которым, помимо всего прочего, необходимо следить за состоянием счёта игрока. Так же работают встроенные в Windows 2000 игры, такие как интернет-нарды, интернет-шашки, интернет-черви.
2. Один из клиентов может выступать в роли сервера, и игра идёт «напрямую» между двумя игроками. Так работает, например, клиент Apprentice для игры в M:TG (правда, этот конкретный клиент за соблюдением правил игры не следит, он следит только за очерёдностью ходов).
3. Есть третий вариант, когда игра, строго говоря, on-line не является. Это когда клиент, сервер и искусственный интеллект «партнёра» соединены в одном исполняемом приложении. Так устроены игры, размещённые на разнообразных развлекательных порталах, например, http://www.anekdot.net.
1.2.2. Описание заказчика
|