Skip to content
BernardTheFour edited this page Jan 2, 2022 · 10 revisions

Technical Design Document [Increment Game]

Content Version History

Time Ver Author Changes
17 Dec 2021 0.0 Bernard Initial Push
01 Jan 2022 0.1 Bernard Menambahkan fitur save/load ke local
02 Jan 2022 0.2 Bernard Menambahkan fitur save/load ke firebase

1 Introduction

Increment game adalah idle-game dimana player/pemain melakukan tap/touch/sentuh untuk mendapatkan koin yang bernama Gold. Gold tersebut digunakan untuk melakukan upgrade yang nantinya dapat meningkatkan pemasukan Gold.

1.1 Purpose & Objective

Increment game mentargetkan pemain kasual. Goal dari game ini adalah pemain mengumpulkan Gold sebanyak-banyaknya dan membuka achievement.

1.2 Project Scope

Fitur dalam game ini adalah:

  • Gold bertambah ketika pemain melakukan touch pada koin
  • Gold berkurang ketika pemain melakukan upgrade
  • Pendapatan Gold/touch bertambah ketika pemain melakukan upgrade
  • Dapat melakukan save/load lokal
  • Terhubung ke firebase untuk cloud save

2 Technical Overview

2.1 Target System Requirements

Platform/OS: Android 11
RAM: 3GB

2.2 Tools Used

Users Tool Use
Prog Java SDK check version
Prog Unity ver 2019.4.9f1
Prog Visual Studio ver 2019 community
Prog Firebase -

2.3 Engines & Middleware

Game akan dibuat dengan menggunakan Unity2D game engine. Fitur cloud saving akan menggunakan Firebase

2.4 File Format

Type Extension Desc
Sprites .png Image used in the game
Scripts .cs Game code

2.5 Technical Code

2.5.1 Technical specification\

Platform Android
Program Language C#
Game Language Indonesia

3 Technical Feature

3.1 Save/Load Lokal

3.1.1 Implementasi 1 - PlayerPref
Menggunakan PlayerPref untuk melakukan read/write ke penyimpanan lokal

3.1.2 Implementasi 2 - Json Utility
Menggunakan Json Utility untuk meng-convert sebuah kelas yang di serialize untuk dapat disimpan di PlayerPref

3.1.2 Selected Implementation
PlayerPref dan Json merupakan fitur yang dimiliki Unity untuk menyimpan sebuah progress dalam game

3.2 Firebase Cloud Save

3.2.1 Solution 1
Menggunakan Firebase untuk melakukan save ke dalam cloud.

3.2.2 Selected Implementation
Firebase merupakan fitur yang dimiliki Unity untuk menyimpan sebuah progress dalam game

4 Technical Design

4.1 Class Diagram

4.2 Activity Diagram

5 Administrative Data

5.1 Server

Item Value Note
Host IP
Domain Name
Username
Password

5.2 Database

Item Value Note
Host IP
Domain Name
Server Username
Server Password
DB Username
DDB Password

5.3 Other

Item Value Note
Google Store Account
Apple Developer ID
Username
Password

6 Reusable Codes

6.1 Modul User Data Manager

6.1.1 Description
Modul ini digunakan untuk melakukan save/load progress pemain ke lokal dan cloud.

6.1.2 How to Use
Panggil method Save(uploadToCloud: false) jika ingin save hanya ke lokal. Panggil method Save(uploadToCloud: true) jika ingin save ke cloud juga Panggil method Load() jika ingin load save data ke dalam game

7 Other Notes