Vanko - Vrškový - specifikacia

From Princípy tvorby software

Jump to: navigation, search

Software Requirements Specification for "Herný Klient"
Version 0.99
Prepared by Karol Vanko, Milan Vrškový,
17.03.2010

Contents

Úvod

Účel

Cieľ herného klienta je maximalizovať pôžitok a stabilitu hrania komerčných aj freeware hier online s podporou externého pripojenia. Nástroje klienta umožnujú zlepšiť výkon spojenia a vytvárať hráčske komunity.

Konvencie dokumentu

Tabuľka použitých skratiek a pojmov

VLAN Virtual LAN/Virtuálna sieť
Miestnosť Herná virtuálna miestnosť
Účet Používateľský účet obsahujúci všetky štatistiky

Cieľové skupiny

Tento document je určený pre používateľov, testerov a developerov. Používateľom sa odporúčajú kapitoly 1,2 a prípadne 5. Developerov a testerov môžu zaujímať aj kapitoly 3 a 4 ktoré obsahujú informácie o funkčnosti a princípoch herného klienta.

Všeobecný popis

O produkte

Herný klient je nový, samostatný softvér. Funguje nezávisle od iných systémov. Klient obsahuje virtuálne miestnosti ktoré vytvárajú virtuálnu sieť pre každú podporovanú hru, kde môžu viacerí ľudia hrať spoločne.

Funkcie Produktu

  • Štatistika účtu

    Používateľ má svoj účet, ktorý zaznamenáva jeho hráčsku úspešnosť - výhry, prehry, ale aj odpojenia(leave).
    Príklady:

    - Používateľ: PwNz0r, Výhry : 7 , Prehry: 2 , Odpojenia: 1. 
    - Používateľ: Permanoob, Výhry : 2 , Prehry: 67 , Odpojenia: 43.
  • Úroveň účtu

    Podla hráčskej úspešnosti sa zväčšuje úroveň účtu.
    Za každú výhru dostane hráč základných 100 bodov, ktoré budú následne modifikované rôznymi faktormi, ako napríklad: O akú hru ide, koľko hráčov sa zúčastnilo, obtiažnosť.
    Za každú prehru hráč stratí povedzme 80 bodov, ktoré budu taktiež modifikované rôznymi faktormi.
    Za každý disconnect bude hráčovi odobraných fixne 200 bodov.
    - Hráč začína s 0 bodmi na účte a úrovňou 1.
    - Nedá sa ísť do mínusu, ani s bodmi ani s úrovňou.
    - Keď nadobudne 500 bodov, jeho úroveň sa zvýši na 2. Každá ďalšia úroveň potrebuje o 30% viacej bodov, to znamená 650 bodov pre úroveň 3, 845 pre 4, atď.

  • Friends List

    Používateľ si môže pridávať iných hráčov do svojho "friends list", následne može ľahko sledovať aktivitu týchto hráčov.
    - Používateľ vidí, keď priateľ vojde do miestnosti, keď začne hrať, a keď opustí miestnosť.

  • Vedenie štatistík

    Herný klient vedie štatistiky pre každú hru, miestnosť, hráča.
    - Ktokoľvek si môže pozrieť štatistiky všetkých hier a hráčov na web-stránke herného klienta.

  • Limit miestnosti

    Niektoré herné miestnosti budú určené pre hráčov od určitej úrovne.
    - Miestnosť môže byť určená pre neskúsených hráčov, preto minimálna úroveň pre vstup bude 1. V opačnom prípade môže byť minimálna úroveň napríklad 15.

  • Systém hier a miestností

    Klient je rozdelený stromovou štruktúrou.
    - Rozdelený podla jednotlivých hier.
    - Každá hra je následne rozdelená na herné miestnosti.

  • Room Chat

    Každá herná miestnosť má svoj chat, kde môžu písať všetci používatelia v miestnosti.
    - Každý používateľ nachádzajúci sa v miestnosti vidí čo ostatní používatelia v miestnosti píšu.

  • Instant Messenger

    Posielanie PM - osobných správ.
    - Používateľ si môže otvoriť jednoduché konverzačné okno s ktorýmkoľvek iným používateľom a rozprávať sa s ním v real-time.

Užívateľské skupiny

V dokumente sú presne definované užívateľské skupiny, pričom jeden človek môže v niektorých prípadoch byť členom viacerých skupín.

Administrátor

  • 1. Client Administrator
    • - Administrátor aplikácie, stará sa o správny chod a funkcionalitu.
    • - Má najväčšie právomoci, môže meniť ľubovolné technické detaily podľa potreby vrámci zachovania maximálnej funkcionality.
    • - Môže vytvárať, mazať a v prípade technických problémov pozastaviť niektorú z miestností.
  • 2. Account Administrator
    • - Administrátor užívateľských účtov.
    • - Má stredné právomoci - môže meniť údaje. (potrebuje ale súhlas danej osoby, v prípade väčších zmien musí kontaktovať Client admina).
    • - Vybavuje požiadavky ohľadom účtov, strata hesla, žiadosť o vymazanie a rôzne technické sťažnosti.
    • - Nemôže do účtu zasiahnuť bez vedomia majiteľa.
  • 3. Room Administrator
    • - Administrátor miestnosti, stará sa o poriadok v konkrétnej miestnosti.
    • - Má najmenšie právomoci, môže užívateľa vyhodiť z miestnosti, dať mu dočasný zákaz alebo permanentný zákaz.
    • - Room admin má pridelenú miestnosť/miestnosti kde má právomoc kontrolovať poriadok podľa používateľských pravidiel.
    • - Uživateľ má možnosť po prípadnom potrestaní dať svoj prípad posúdiť hlavnému administrátorovi.

Member

  • Basic Member
    • - Používateľ so základnými možnosťami, neplatený účet.
    • - Má plné použivateľské možnosti, môže hrať hry, prezerať si štatistiky a používať friend systém.
  • Gold Member
    • - Používateľ s rozšírenými možnosťami, dočasne predplatený účet.
    • - Má rovnaké možnosti ako Basic member, ale môže vstupovať aj do plných miestností.

Externé rozhranie

Používateľské rozhrania

Prihlasovacie GUI

Po spustení programu sa uživateľ musí najskôr prihlásiť a na ten účel sa mu zobrazí okno s niekoľkými vstupnými poľami na vyplnenie uživateľom (nick, heslo) a tlačidlo na potvrdenie údajov a prihlásenie. V prípade že uživateľ ešte nie je registrovaný, na spodku okna bude link priamo na stránku produktu kde sa bude dať zdarma registrovať.

Hlavné GUI

Hlavné GUI ktoré sa zobrazí po úspešnom prihlásení uživateľa. GUI pozostáva z viacerých prvkov, ktoré sú:

-Ľavá časť zobrazuje zoznam všetkých aktuálnych miestností nezávisle na tom ktoré hry z nich hráč vlastní. Okrem názvu je vidieť aj počet ľudí prihlásených v každej miestnosti. Dvojklikom alebo označením a stlačením klávesy enter sa dostanete do danej miestnosti
-Stredná časť zobrazuje novinky týkajúce sa klienta, ako nové vylepšenia alebo vyhlásenia (napr. turnaje).
-Napravo má užívateľ zoznam svojich priateľov. Tí čo sú online majú pod sebou informáciu v ktorej miestnosti sa nachádzajú. Pravým tlačítkom myši sa dá pre každého priateľa vyvolať menu ktoré obsahuje položky :
'Ukáž štatistiku' – zobrazí štatistiky daného hráča a jeho level ;
'Pridaj sa' – automaticky uživaľa pripojí do miestnosti kde sa nachádza daný priateľ ;
'Chat' – otvorí okno kde môžete s priateľom komunikovať formou správ. Chat sa dá vyvolať aj dvojklikom myši na meno.

GUI miestnosti

Toto GUI sa zobrazí v každej konkrétnej miestnosti. Úplne naľavo je stále zobrazený zoznam všetkých dostupných miestností podobne ako v hlavnou GUI.

Stred je zobrazený na viac častí, na vrchu je malý priestor venovaný komerčným reklamám. Priestor pod tým slúži na chat pre celú miestnosť. V tomto okne sa zobrazujú príspevky užívateľov miestnosti. Na pravo je panel ktorý slúži na vertikálne posúvanie v chate, rovnaký efekt ma točenie kolečkom myši. Na spodu je okno určené na posielanie príspevkov, čiže sa dá do neho písať. Vrámci strednej časti sú ešte tlačidlá „pošli“ , „hraj“ a „nastav“ ktoré sú situované napravo od pola na písania príspevkov. Po stlačení „pošli“ sa do chatu odošle napísaný príspevok ak nie je prázdny. Po stlačení „nastav“ sa otvorí súborové okno a hráč v ňom naviguje a zvolí spúšťací súbor pre danú hru. Po stlačení sa daná hra spustí ak je nastavená lokácia, ak nie užívateľ bude vyzvaný aby tak urobil.

Napravo je opäť zoznam priateľov, podobne ako v hlavnej GUI ale pribudne prepínací tab medzi zoznamom priateľov a užívateľov miestnosti. Zoznam užívateľov bude mať rovnaké funkčné vlastnosti ako zoznam priateľov, s výnimkou možnosti „Pridaj sa“ namiesto ktorej tam bude možnosť „Pridaj ako priateľa“. Po stlačený príde druhému používateľovi žiadosť o pridanie ako priateľa. Po potvrdení bude pridaný do zoznamu priateľov. Nad oboma zoznamami je vstupné pole ktoré slúži na filtrovanie týchto zoznamov ak užívateľ hľadá konkrétneho hráča.

Hardvérové rozhranie

Klient samotný nie je hardwarovo náročný. Na plné využitie uživateľ potrebuje hardware ktorý pokrýva potreby používanej hry a dostačujúce sieťové pripojenie.
Základné minimálne požiadavky pre klient: Procesor 500 MHz, 128 MB ram pamäť

Softvérové rozhranie

Software je určený pre operačný system windows XP/Vista/7. Ďaľší prípadne potrebný software sa opäť viaže na jednotlivé podporované hry, ako napr. DirectX, openGL a ďaľšie ovládače potrebné pre plynulý beh hry.

Klient komunikuje zo sieťovou kartou a ovládačmi ktoré sú k nej viazané, preto je potrebné aby boli funkčné a optimálne nakonfigurované.

Komunikačné rozhranie

Klient vytvára pre každú miestnosť vlastnú virtuálnu sieť ku ktorej použivateľov PC pripája a vytvára VPN. Využíva sa TCP/IP protokol. Klient vyžaduje neustále pripojenie z databázou lokalizovanou na serveri prostredníctvom otvoreného portu, rovnako ako pre chod je potrebné neustále pripojenie na internet.

Požiadavky a vlastnosti systému

Bezpečnostné požiadavky

Je potrebné aby užívateľ nezverejňoval svoje prihlasovacie údaje, kvôli riziku odcudzenia účtu. Toto platí obzvlášť pre vlastníkov platených účtov.

Kódex správania pre použivateľov

  • Je zakázané zneužívať chat ľubovolnej miestnosti na komerčné účely. Spammovanie a publikovanie reklamných odkazov bude potrestané vyhodením z miestnosti, alebo zablokovaním účtu
  • Podvádzanie v jednotlivých hrách je tak isto trestané zablokovaním účtu. Ak si použivateľ všimne iného hráča ktorého podozrieva z podvádzania, môže ho nahlásiť room adminovy alebo na fóre do sekcie cheating. ! Ak sa majú vyvodiť dôsledky, treba materiálne dôkazy na posúdenie - replay, in-game video, printscreen (Podľa možností danej hry) !
  • Používanie vulgárnych/rasistických/inak neprimeraných výrazov vrámci klienta je proti pravidlám, oznámiť môžte room adminovy ktorý rozhodne o treste. Opäť treba printscreen na posúdenie.

Príloha: Use Case

diagram - Herný Klient USE CASE (PNG)

Personal tools