Ryu: The Big Adventure е подобие на аркадните игри Cadillacs and Dinosaurs, Contra, Metal Slug, Streets of Rage, Golden Axe и още много други.
Играта „Ryu: The Big Adventure” предоставя на потребителите възможността да играят на един типичен хоризонтален Beat 'em up симулатор. Beat 'em up е жанр в компютърните игри, който включва ръкопашен бой между главният герой и голям брой врагове. Игрите са най-често 2D, като героят се движи хоризонтално по нивото в посока надясно. Тези игри са познати с простия си и лесен за научаване геймплей, като първата подобна игра датира от 1984г.
При стартиране на играта, потребителя влиза в ролята на героят Ryu, който има за цел да победи всички врагове в нивото.
Ryu е герой от видео игри, създаден от Capcom още през 1987 година, играещ основна роля в Street Fighter серията. Той владее бойни изкуства смесени с изкуствата на убиец.Освен върховните си умения в ръкопашният бой, Ryu разполага и с някои уникални умения към арсенала си.
Hadouken
Shoryuken
Tatsumaki
Hadouken - В превод „Юмрук от енергия“.Това е вълна от енергия, която Ryu изстрелва от ръцете си, за да покоси врагове, които се намират на разстояние от него. За да изпълни това умение Ryu трябва да има достатъчно вътрешна енергия или MP (Magic Points).
Shoryuken - В превод „Издигащ се драконов юмрук“, е друго специално умение, предназначено за близък бой. Ryu използва юмрука си за да се изстреля нагоре и така да нанесе убийствен ъперкът към противника, който се намира непосредствено до него. Както Hadouken и Shoryuken изисква вътрешна енергия.
Tatsumaki - В превод „Торнадо“. Ryu има умението да скочи и да изпълни торнадо от ритници докато е във въздуха. Това е най-силната атака на Ryu и изисква най-много вътрешна енергия.
Вътрешната енергия се изобразява в долният ляв ъгъл на екрана, под формата на 8 сини правоъгълника, обозначени с MP. Тя е нужна за изпълнението на специалните умения на Ryu. След нейното използване, енергията се запълва по малко, с времето. Когато героят няма достатъчно енергия, той не може да изпълнява специалните си умения.
Над индикатора за енергията има и още един индикатор за здравето на Ryu, обозначен като HP. То също е изобразено чрез 8 правоъгълника, но в червено. За разлика от енергията, здравето не се възобновява с времето. За целта Ryu трябва да намери храна, която е пръсната из нивото. Здравето ни се отнема когато биваме ударени от някой противник или когато преминем през някакво препядствие, като огън. Когато здравето ни се изчерпа нашият герой умира и играта приключва.
Освен тези два индикатора имаме и време. Времето се изписва в долната част на екрана, по средата. То показва, колко време имаме за да преминем нивото. Когато времето изтече, играта приключва с лош край. Времето се възобновява след като преминем част от нивото, примерно средата на нивото.
Освен да използва основната игрова функционалност, потребителят може също да спира и пуска звука на приложението, да променя силата на звука и на музиката и да променя преди игровата сесия трудността и да напусне играта по всяко време. Играта също може да бъде минимизирана.
За ползване на играта Ryu: The Big Adventure е необходима инсталацията на JRE (Java Runtime Environment). JRE е достъпен от сайта на Oracle. Link
Достъпът до дистрибуцията на играта е зависим от GitHub, уеб хранилището за разполагане на софтуерни проекти и техните съвместни разработки върху отдалечен интернет сървър.
Проектът прави допускането и разчита, че порталът GitHub, който се поддържа от трета страна, е достъпен и в изправност.
Прави се също допускането, че крайните потребители разполагат със съвместим персонален компютър с инсталират Java Runtime Environment. Към момента на създаването на проекта, Java езикът е с голяма популярност и повечето компютри имат инсталиран нужният пакет, което спомага за лесното разпространение на играта.
Диаграмата на състоянията в този раздел показва как играта Ryu: The Big Adventure трябва да обработва заявките на крайния потребител.
Диаграмата е изградена чрез Унифицираният език за моделиране (UML), който е графичен език за конструиране и документиране на елементите на една софтуерна система.
В проекта се използват 4 различни състояния, едно за менюто, второто за настройките, третото е „За Автора“ и последното е за самата игра. Описани са и начините, по които може да се премине от едно състояние към друго, чрез насочени стрелки. Черните точки илюстрират пускането на програмата и съответно изключването й.
Първата цел при създаването на проекта е да се направи начално потребителско меню.
Основните събития, за които контролерът е „абониран“ е началото на нова игра (при натискане на бутон „Start Game“), показването на екран с настройки, екран „За Автора“ и изход от приложението. В менюто е изобразен и главният ни герой, в която роля се очаква да влезем.
Менюто с настройките съдържа две маркиращи квадратчета, за включване и изключване на музиката и звуците, два слайдера за контролиране силата на звука и опция за контролиране на трудността на играта, както и бутон за връщане обратно към основното меню.
В менюто с настройките са използвани глобални променливи, които са достъпни до всеки един клас. Те се обявяват в главното меню, променят се в менюто с настройките и се прочитат от всяко едно събитие. Така звукът и музиката работят еднакво, във всяко едно състояние.
Трудността оказва влияние на издръжливостта на противниците. Когато трудността е настроена на Hard, противниците са по-корави и са нужни повече удари за да бъдат убити и обратното. За постигането на целта се използва глобалната променлива difficulty, която приема следните три стойности: 0 за Easy, 1 за Normal и 2 за Hard. При 0 издръжливостта на противниците се намаля до 50% от нормалното, при 1 издръжливостта не се променя и остава на стандартното 100%, а при 2 тя се повишава до 150%.
Слайдера за музиката използва метода music.setVolume(float volume); за промяна на силата на музиката и music.getVolume(float volume); за да прочита каква е силата в момента и да променя собственото си състояние.
Слайдера за звуците използва своя собствена глобална променлива, вместо методите setVolume и getVolumе поради това, че силата на звукът им се декларира, когато те бъдат възпроизведени и може да е различен за всеки един звук. Глобалната променлива се декларира в менюто и се нарича soundVolume. Тя се използва с прозвучаването на всеки един звук по следния начин: punchedSnd.play(1, Menu.soundVolume);
В горната команда звукът punchedSnd бива прозвирен чрез метода play. 1 представлява стъпката на звукът а променливата soundVolume се извиква от класът Menu и контролира неговата му сила. Маркиращите квадратчета са използвани булевите soundOn и musicOn.
Credits или „За автора“ е най-просто изграденото състояние. То показва информация за създателите на приложението, под формата на слайдващ се нагоре текст. Информацията всъщност представлява едно голямо изображение, което се движи нагоре по екрана през определен интервал от време.