Coder Social home page Coder Social logo

entellect-challenge-2021-galaxio's Introduction

Tubes1_greedisgood

Code ini dibuat untuk memenuhi Tugas Besar 1 IF2211 Strategi Algoritma, Pengimplementasian Strategi Algoritma Greedy pada bot di Game GALAXIO

Pengimplementasian Algoritma Greedy

Alternatif Solusi Greedy

Pada bot yang kami buat kami menggunakan serangkaian algoritma greedy untuk mampu melakukan beberapa mekanisme yang dibutuhkan sesuai dengan kondisi dalam pertandingan

  1. Greedy by Point Mengutamakan mencari food terdekat dari kapal dengan mempertimbangkan kondisi sekitar food tersebut. Jika food tersebut didekat musuh dengan size yang lebih besar atau berada dalam suatu obstacle maka kapal akan mencari food lain yang lebih aman.
  2. Mekanisme Pertahanan Jika makanan yang dituju kapal berada di obstacle maka kapal akan mencari food, selain itu juga jika suatu projectile mengarah ke kapal maka kapal akan mengaktifkan shield
  3. Mekanisme Penyerangan Mekanisme penyerangan dapat diaktifkan oleh kapal jika memenuhi beberapa kondisi, contohnya jika size kapal lebih dari 30 dan jarak antara kapal dengan musuh kurang dari 125 maka kapal akan menembakkan torpedo, namun jika jarak kapal dengan musuh melebihi 125 maka kapal akan menembakkan teleporter yang mampu mengurangi kapal dengan musuh.

Requirement program dan instalasi

Ada serangkaian requirement dan instalasi yang perlu dilakukan agar dapat menjalankan bot ini dalam permainan GALAXIO, yaitu:

  • Instalasi
  • Requirement
    1. Membuat file run.bat pada folder ./starter-pack dan mengcopy kode ini (dotnet ReferenceBot.dll dapat diganti dengan java -jar pathFile/greedisgood.jar)
    @echo off
    :: Game Runner
    cd ./runner-publish/
    start "" dotnet GameRunner.dll
    
    :: Game Engine
    cd ../engine-publish/
    timeout /t 1
    start "" dotnet Engine.dll
    
    :: Game Logger
    cd ../logger-publish/
    timeout /t 1
    start "" dotnet Logger.dll
    
    :: Bots
    cd ../reference-bot-publish/
    timeout /t 3
    start "" dotnet ReferenceBot.dll
    timeout /t 3
    start "" dotnet ReferenceBot.dll
    timeout /t 3
    start "" dotnet ReferenceBot.dll
    timeout /t 3
    start "" dotnet ReferenceBot.dll
    cd ../
    
    pause 
    
    1. Lakukan ekstrak pada file .zip GALAXIO dalam folder "visualiser" sesuai dengan OS anda
    2. Jalankan aplikasi GALAXIO
    3. Buka menu "Options"
    4. Salin path folder "logger-publish" pada "Log Files Location", lalu "Save"
    5. Lalu keluar dari Game

Langkah-langkah menjalankan program

  1. Jalankan run.bat
  2. Tunggu hingga proses pada semua terminal berhenti
  3. Setelah proses-proses berhenti, tutup semua terminal yang terbuka
  4. Buka kembali Game
  5. Buka menu "Load"
  6. Pilih file JSON yang ingin diload pada “Game Log”, lalu “Start”
  7. Setelah masuk ke visualisasinya, kalian dapat melakukan start, pause, rewind, dan reset

Selamat!! Program sudah bisa berjalan dan anda bisa melihat kinerja dari bot kami

Author/Identitas Pembuat Program

  • 13521012 / Haikal Ardzi Shofiyyurrohman
  • 13521013 / Eunice Sarah Siregar
  • 13521029 / Muhammad Malik Ibrahim Baharsyah

entellect-challenge-2021-galaxio's People

Contributors

haikalardzi avatar eunicesarah avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.