A small RPG example for a YouTube tutorial series using Kotlin, LibGDX, LibKTX and GDX-AI.

Related tags

App MysticWoods
Overview

Mystic Woods

MIT license Kotlin Fleks

LibGDX LibKTX

A libGDX project generated with gdx-liftoff.

This project was generated with a Kotlin project template that includes Kotlin application launchers and KTX utilities.

About

Mystic Woods is an example project for a YouTube tutorial series that will teach you some recipes about how to create your own 2D adventure game using Kotlin and LibGDX.

It uses Box2D as a physic system for collision handling and movement. It also uses Gdx-AI for player states and enemy slime AI. Mystic Woods uses the Fleks entity component system.

The controls are:

  • Arrows keys to move around
  • Space to attack which is also used to interact with chests

image image

Credits

You might also like...
Tutorial Membuat Aplikasi Pencarian Rumah Sakit Khusus COVID-19  dengan Android Studio
Tutorial Membuat Aplikasi Pencarian Rumah Sakit Khusus COVID-19 dengan Android Studio

Hospital-Covid-19 Tutorial Membuat Aplikasi Pencarian Rumah Sakit Khusus COVID-19 dengan Android Studio Data ini diambil dari API https://github.com/s

Source Code Tutorial Aplikasi Al-Quran Android
Source Code Tutorial Aplikasi Al-Quran Android

Al-Quran-Android SOURCE CODE APLIKASI AL-QURAN DENGAN ANDROID STUDIO Source Code ini sudah di update. Untuk source code versi lama, silahkan lihat di

Dagger Hilt Tutorial - Step by Step Guide

Dagger Hilt Tutorial - Step by Step Guide This repository contains a sample app that implements Dagger-Hilt in MVVM architecture using Kotlin. The app

📦📦Video downloader for Android - Download videos from Youtube, Facebook, Twitter, Instagram, Dailymotion, Vimeo and more than 1000 other sites
📦📦Video downloader for Android - Download videos from Youtube, Facebook, Twitter, Instagram, Dailymotion, Vimeo and more than 1000 other sites

youtube-dl-android 📦 An Android client for youtube-dl: https://github.com/rg3/youtube-dl Major technologies Language: Kotlin Architecture: MVVM Andro

Learn about your favorite Marvel characters, super heroes, villains and watch videos from official Marvel youtube channel.
Learn about your favorite Marvel characters, super heroes, villains and watch videos from official Marvel youtube channel.

Marvel Super Heroes Android App 📱 Learn about your favorite Marvel characters, super heroes, villains and watch videos from official Marvel youtube c

Sending komq's latest YouTube & Twitch notifications via Twitter.

Komwitter Twitch & YouTube Notification Twitter Bot for komq. Used Libraries: Twitter4J Twitch4J Kotlinx.serialization and some other dependency libra

DiscordBot - Small Discord bot using JDA

Discord bot written in kotlin and using JDA Use it yourself ./gradlew build crea

Slack app example for Heroku deployment, written in Kotlin, using Bolt framework.

slack-kotlin-heroku-example Slack app example for Heroku deployment, written in Kotlin, using Bolt framework. You need to configure your Slack app to

Basic example of using ItemTouchHelper to add drag & drop and swipe-to-dismiss to RecyclerView.

Another drag and swipe library? This project is an example of basic drag & drop and swipe-to-dismiss with RecyclerView using ItemTouchHelper. It corre

Comments
  • BUG: Increased movement speed when running diagonally

    BUG: Increased movement speed when running diagonally

    The player (and I think all entities that have a MoveComponent) goes faster when going diagonally because the force is bigger.

    Let's say the player's speed is 1 m/s, if the player presses both UP and RIGHT, the player will go diagonally, but with an increased speed, and more precisely with 1.41m/s, vector total force (sin = 1, cos = 1, total force = sqrt(1^2+1^2) ).

    To fix this I modified the MovementSystem, when we set the impulse I also normalize the vector components, to have a maximum of allowed speed:

    val force = sqrt(moveCmp.sin.pow(2) + moveCmp.cos.pow(2))
    val normal = 1 / force
    phCmp.impulse.set(
        mass * (moveCmp.speed * slowFactor * moveCmp.cos * normal - velX),
        mass * (moveCmp.speed * slowFactor * moveCmp.sin * normal - velY)
    )
    

    Hope this helps 😄

    Also if you @Quillraven have a better solution please inform me too. Not sure if my solution is the best, or the most optimal, but it works for me.

    enhancement good first issue 
    opened by blaxphoenix 7
  • Inventory

    Inventory

    next part for YouTube tutorial series

    Need to pack the UI atlas with the new graphics and adjust skin.kt afterwards. Need to do this on my PC because on my notebook I don't have the raw assets folder to do it ;)

    Also, merge those changes to the 2.0 branch using Fleks 2.1.

    opened by Quillraven 0
Owner
Simon
Simon
Freegemas libGDX is an Android and Java desktop port of Freegemas, which in turn is an open source version of the well known Bejeweled.

freegemas-gdx Freegemas libGDX is an Android, HTML 5 and Java desktop port of Freegemas, which in turn is an open source version of the well known Bej

David Saltares 144 Jun 21, 2022
Get a libGDX-powered Android live wallpaper up and running quickly with this project template

This project is a libGDX Android live wallpaper template. It's the demo application created by the libGDX code generator, remade as a live wallpaper.

Kurtis LoVerde 1 Jun 30, 2022
The Android application is a list of the most popular TV series written in Java using the mvvm pattern.

Tv show application The Android application is a list of the most popular TV series written in Java using the mvvm pattern. This project was written f

rutikeyone 0 Dec 26, 2021
Sample app for tutorial: Pagination in Android Room Database using the Paging 3 Library

Demo Implementation of Paging 3 with Room DB Read the article. Demo implementation of Pagination in an Android Room Database using the Paging 3 Librar

Gourav Khunger 5 Nov 14, 2022
Small library that allows the application to display a small troubleshooting guide in case of repeated app startup crashes.

AppSalvager What is it? AppSalvager allows you to combat the issue of repeating crashes on app startup. Failed data migration, SDKs not handling their

Alexander Leontev 29 Aug 31, 2022
Android app for streaming and downloading Movies, TV-Series and Anime.

CloudStream-3 DOWNLOAD: https://github.com/LagradOst/CloudStream-3/releases Discord: https://discord.gg/5Hus6fM Features: AdFree, No ads whatsoever No

Osten 1.9k Aug 1, 2022
Android app for streaming and downloading Movies, TV-Series and Anime.

AquaStream ⚠️ Warning: By default this app doesn't provide any video sources, you have to install extensions in order to add functionality to the app.

null 17 Oct 3, 2022
Github-Api-Pagination-Example - Pagination 3 Example using Github Api

Github-Api-Pagination Pagination 3 Example using Github Api Tech Stack 100% Kotl

Anggoro Beno Lukito 2 Aug 22, 2022
A manga series about a card game, written and illustrated by Kazuki Takahashi

Yu-Gi-Oh É uma série de mangá sobre um jogo de cartas, escrito e ilustrado por Kazuki Takahashi. A série foi originalmente publicada pela editora Shue

Samir Maciel 8 May 27, 2022
Helper tool for calculating scales for Teenage Engineering Pocket Operator PO-33/133 & PO-35/137 series.

I heard you like Pocket Operators, so I made Pocket Scale Calculator for your Pocket Operator. This console app is a helper tool for calculating scale

null 9 Dec 6, 2022