Revenge Of Hero TDD (Technical Design Document) - Andre17190177/Revenge-Of-Hero-Project Wiki

Content Version History

Table of Content

Content Version History 1. Introduction  1.1 Purpose & Objective  1.2 Project Scope 2. Technical Overview  2.1 Target System Requirements  2.2 Tools Used  2.3 Engines & Middleware  2.4 File Format  2.5 Technical Code 3. Technical Feature  3.1 Character Movement  3.2 Combo Attack  3.3 Enemy 4. Technical Design  4.1 Class Diagram  4.2 Activity Diagram 5. Administrative Data  5.1 Google Drive  5.2 Github 6. Reusable Code  6.1 Touch Control Module

1. Introduction

Revenge Of Hero adalah game side scrolling dengan action battle supernatural yang berlatar belakang seorang hero menjadi anti hero karena dikhianati dunia yang sudah dilindunginya lalu hero itu ingin balas dendam terhadap seseorang yang mengkhianatinya. Revenge Of Hero memiliki story alur cerita yang menarik dengan visual fantasy dan Anime dimana sebagai player kita akan mengikuti story mengalahkan musuh - musuh dan boss.

1.1 Purpose & Objective

Revenge Of Hero ditargetkan bagi para penggemar game 2D Side Scrolling khususnya pengguna Android untuk dimainkan di waktu senggang mereka. Tujuan utama dari game ini adalah mengalahkan musuh di setiap stagenya dan melawan Boss di stage terakhir.

1.2 Project Scope

Fitur - fitur yang terdapat dalam game ini antara lain:

2. Technical Overview

2.1 Target System Requirements

Platform/OS : Android 4.1 API level 16 RAM     : 2GB

2.2 Tools Used

2.3 Engines & Middleware

Game ini akan dibuat menggunakan Unity 2D game engine dan script yang digunakan dalam game dibuat menggunakan programming software Microsoft Visual Studio 2019

2.4 File Format

2.5 Technical Code

2.5.1 Technical Specification

3. Technical Feature

3.1 Character Movement

Membuat karakter dapat bergerak ke kiri dan ke kanan, serta melompat 3.1.1 Implementation 1 - Touch Control Membuat script Touch Control untuk menggerakan karakter menggunakan joystick 3.1.2 Selected Implementation Script Touch Control akan digunakan untuk menggerakan karakter dengan input dari joystick. Script Touch Controll akan mengambil method dari script Character Controller 2D untuk mengatur physics dari pergerakan karakter seperti kecepatan berlari dan kekuatan lompatan

3.2 Combo Attack

Karakter akan melakukan Combo Attack sesuai dengan jumlah input yang diberikan oleh player pada Attack Button 3.2.1 Implementation 1 - Player Attack Membuat script Player Atack yang berfungsi untuk memainkan animasi attack 1, 2, dan 3 sesuai dengan jumlah input yang diberikan oleh player pada Attack Button 3.2.2 Selected Implementation Script Player Attack akan digunakan untuk mengimplementasikan combo attack dengan memanggil komponen animator ke dalamnya yang akan di trigger sesuai dengan jumlah input yang diberikan oleh player

3.3 Enemy

Enemy dapat berpatroli, menyerang player, dan mati saat healthnya sama dengan 0 3.3.1 Implementation 1 - Enemy AI Membuat script yang dapat mengontrol pergerakan musuh, menyerang player, dan mematikan musuh saat healthnya sama dengan 0 3.3.2 Selected Implementation Script Enemy Patrol akan digunakan untuk mengatur pergerakan musuh saat berpatroli, lalu script Enemy Attack akan digunakan untuk membuat musuh menyerang player saat player berada dalam jangkauannya, dan script Enemy Health akan digunakan untuk mongontrol jumlah health dari enemy

4. Technical Design

4.1 Class Diagram

Untitled

4.2 Activity Diagram

NO

5. Administrative Data

5.1 Google Drive

5.2 Github

6. Reusable Codes

6.1 Touch Control

6.1.1 Description Modul ini digunakan untuk mengontrol pergerakan karakter seperti berjalan ke kiri dan ke kanan, melompat, dan dash melalui input dari Joystick dan UI button yang ada. Modul ini menggunakan script tambahan yaitu Character Controller 2D untuk memberikan physics, logic, dan membalikan sprite karakter.

6.1.2 How to Use Download asset Joystick Pack dari Asset Store lalu masukan prefabs joystick yang ada ke dalam game scene. Tambahkan script Touch Control dan Character Controller 2D pada karakter yang ingin digerakan. Panggil method move dari script Character Controller 2D ke dalam script Touch Control lalu assign valuenya masing - masing pada inspector di Unity.