Skip to content

Technical Design Document

Dedy Setiadi edited this page Dec 13, 2021 · 9 revisions

Technical Design Document merupakan dokumentasi dari spesifikasi/blueprint dari produk/software yang akan dibuat. Dalam wiki ini berisi TDD untuk projek akhir dari program Studi Independen yaitu game Jigsaw Puzzle.

Content Version History

Time Version Author Changes
12/11/2021 0.0 Dedy Setiadi
Daffa Shidqi
Initial Document
28/11/2021 0.1 Dedy & Daffa Push Github Sliding & Jigsaw
01/12/2021 0.2 Daffa Finish Gameplay Jigsaw
01/12/2021 0.3 Dedy Finish Gameplay Sliding
05/12/2021 0.4 Daffa Merge 2 gameplay
06/12/2021 0.5 Dedy Update TDD (Technical Feature)
08/12/2021 0.6 Daffa Membuat Shop & Unlock Level
08/12/2021 0.7 Dedy Update UI Gameplay

Table of content

1. Introduction

Culinary Emerald Equator ini adalah sebuah game ber genre puzzle yang bertema kuliner dan budaya Indonesia yang didasarkan pada seorang player untuk menyelesaikan sebuah puzzle yang didalamnya player harus dapat melindungi informasi mengenai kebudayaan Indonesia yang berbeda pada setiap level.

1.1 Purpose & Objective

Permainan ini menargetkan pemain yang suka game teka-teki dan hanya bermain di sela waktu kosong dalam beraktivitas. Target utama game ini untuk menyelesaikan gambar yang acak menjadi kesatuan gambar yang utuh

1.2 Project Scope

Fitur-fitur yang ada dalam permainan ini :

  • Unlock Level
  • Score/Star
  • Hint
  • Spin
  • Shop

2. Technical Overview

2.1 Target System Requirements

  • Platform/OS: Android (Mobile)
  • RAM: 512MB

2.2 Tools Used

Users Tools Use
Programmer Unity 2019.4.7f1 & 2020.3.
Programmer Sublime Build 4107
Programmer Microsoft Visual Studio 2019.16.8

2.3 Engines & Middleware

Game ini akan dibuat dengan menggunakan Unity2D game engine.

2.4 File Format

Assets Extension Description
Assets .png Image Assets
Scripts .cs Game Script
Sounds .mp3/.wav Game Audio

2.5 Technical Code

2.5.1 Technical Spesification

Type Description
Platform Android
Programming Language C#

3. Technical Feature

3.1 Sliding Puzzle

Game sliding adalah game menyusun gambar secara acak dengan cara menggeser gambar ke kotak kosong

3.1.1 Implementasi 1 - Menggunakan Fungsi Get Invertion

Fungsi ini adalah untuk membuat puzzle secara random dan dapat solveable

3.1.2 Implementasi 2 - Membuat puzzle acak secara manual

Membuat puzzle acak secara manual dengan dibuat terlebih dahulu di unity

3.1.3 Selected Implementasi

Fungsi Get Invertion. Karena dapat di kombinasikan dengan fungsi shuffle sehingga puzzle teracak otomatis dan solveable

3.2 Jigsaw Puzzle

Game jigsaw adalah game menyusun potongan gambar menjadi satu

3.2.1 Implementasi 1 - Raycast Hit 2D

untuk mengembalikan informasi tentang objek yang terdeteksi oleh raycast.

3.2.2 Implementasi 2 - OnTriggerStay2D

mengirim setiap bingkai di mana objek lain berada di dalam pemicu penumbuk yang terpasang pada objek ini

3.2.3 Selected Implementasi

OnTriggerStay2D. lebih mudah dan simple dalam pembuatannya

3.3 Spin

Spin adalah fitur untuk mendapatkan hadiah secara random

3.3.1 Implementasi 1 - transform.rotate

Mengubah nilai rotasi Z sehingga dapat memutar secara melingkar

3.3.2 Implementasi 2 - Menggunakan IENumerator

ini akan mengambil nilai rotasi z tiap waktu

3.3.3 Selected Implementasi

langsung menggunakan transform.rotate dan merubah nilai rotation Z

4. Technical Design

4.1 Flowchart

4.2 Class Diagram

4.3 Activity Diagram

5. Other Notes

Game ini masih perlu diberi feature tambahan.