A downloadable game for Windows, macOS, and Linux

Download NowName your own price

Mystiqa is an infinite procedurally generated action adventure RPG roguelite.

Take the role of an adventurer alone or with your friends locally and explore the infinite worlds of Mystiqa and explore towns and shop, conquer dungeons, defeat mighty bosses and collect epic loot.

Twitter 

Reddit

All controllers should work fine!

Default Input

LeftLeft Arrow
RightRight Arrow
UpUp Arrow
DownDown Arrow
Action 1F
Action 2D
SelectLeft Shift
StartEnter

Download

Download NowName your own price

Click download now to get access to the following files:

Mystiqa 0.2.zip 7 MB
Mystiqa 0.1.1.jar 7 MB
Mystiqa 0.1.jar 7 MB
Mystiqa 0.0.1.jar 7 MB

Development log

Comments

Log in with itch.io to leave a comment.

I would like to see the source code. I also use LibGDX and im curious about how the game is made.

Sorry, it's not open-source :) but if you have any questions, feel free to ask!

(+1)

As promised, in regards to your thoughts about an end boss here’s some ideas/possibilities to consider:

 

-When you beat the end boss, he says something like “you think you’ve won, but I’ll be back stronger” or maybe something less cliché but something to let the players know they can keep playing for a second quest. There could a 3 months later message following it saying the boss has come back and perhaps did something different like steal a bunch of princesses, friends, important items, or biome specific items or whatever to make it a bit different than however the main quest will turn out. You also just make it so the end boss flees to another far off land without having to do another main quest.

 

-You could simply make the end boss harder with health each time the player plays through the game or after each series of collecting something or rescuing someone. This might be a tad boring after a while but players might still play through a few times

 

-You could add more enemies to fight each time you fight the end boss as well including other boss characters.

 

-You could make a variety of end boss attack possibilities and choose a different combination each playthrough or just borrow from other bosses. The combinations should probably become more complex each time

 

-Similar to the last one, Each biome could have its own major boss with its own biome based attacks and the end boss could choose a combo of those on top of its own major attacks. Each playthrough the end boss gets one or two more attack possibilities based on these.

 

-You could make several combinations of boss parts (arms, legs, robes, head, attacks, etc.) and make a randomly generated “Mutt” main boss based on these parts for each main quest…heck you could potentially do this for more bosses if the code/engine will allow it…might be a lot of work but it would be pretty cool and in the spirit of a random generation game.

 

-You could make it so the end boss and perhaps other bosses in the 2nd+ quests change main attack if it senses you have been not taking much damage on whatever its current attack is.

 

-One plot line idea that might be simple to implement but emotionally effective in driving the player to complete the quest or 2nd+ quests would involve finding characters (or even princesses) to help you fight in your quest on occasion and then be captured or even killed by a boss or end boss and make the quest about saving that person or revenge or even resurrecting that person.

 

- One final note is you might also want to make updates to this game friendly to players that already have saved games once saved games is implemented so the players can save their items.

Well, theres some stuff to give you some ideas and the decisions are yours to make 😊 Hope this helps

Wow man, amazing ideas again!

I really, really like all of your boss ideas. I really do!

And in regards to people helping you: my plan since the beginning in 2017 has actually been to have NPCs in villages you can hire for a dungeon or two with gold coins :) So that will probably happen :D

(+1)

Thanks. Its nice to be able to put forth useful game ideas again :)

Yeah, I like that idea about developing a favorite NPC helper (maybe just default it to whoever the player uses the most) and then having them captured or killed. When I play Skyrim and my long time helper Lydia gets killed I get pissed even though I can just resurrect her with a saved game so I figure a long time helper getting captured or killed might be a decent motivation to play and save them or get revenge ;) Just an idea through. The plotline can take many forms especially with an infinite game.

(1 edit)

I have a couple of bugs to report:

-My game crashed again just as I was about to picking up a few items out of a chest (including a really nice high level spear :'(  ). I might have pressed F too many times but it crashed the game and once again I lost everything. Really look forward to the monogame save function! ;p

-In a cave secret room I just bombed that had the locked chest in it, I got blocked by a rock and a pit so I couldn't even get to activate the teleporter (see screenshot) 

-There appears to be a bug associated with room borders where enemies and especially bosses can get stuck if they go too far off the screen. They appear to get stuck in an inbetween screens state where I ccan sometimes hit them through the side of the screen or trick them into jumping back on the screen but other times I can't and I have to abandon the area (see screenshots)





The above screenshots where  taken just as the screen was shifting to the next screen.


Anyways, Hope that helps

Wow, thanks a lot man!

Regarding the first bug: yeah, I'm really sorry for that. I hope the MonoGame version will fix a lot of stuff.

Second bug: Have you tried bombing the complete wall? It is not possible for a room to be created and not be fully traversable. It always is. You must have missed a spot. It looks like there might have been a way left of the hole :)

Third bug: Yeah, I also noticed that when playtesting. I didn't figure out how to fix it, but maybe I will now with MonoGame :)

How to run the game?

Do you have Java installed? If yes, just double click the .jar file. If not, install java jdk and run the game then :)

Ok so I've played for several hours now and its a great game so far but I have a list here of issues/suggestions as I promised on Twitter:

-torches required in every dungeon is not very beginner friendly and a bit frustrating for even zelda vets. I suggest making oil torches on walls of rooms that dont go out once lit. In early dungeons and many later dungeons they should already be lit. But they start being not lit or not present in later dungeons rooms.

-going to stair well restores life without seemingly changing damaged health of enemies. Makes end bosses alot easier which is ok if its intentional but there should probably be a penalty of some kind like partially or fully restored health of the room enemies.

-I thought I remember a bow and arrow in the game before but haven't seen it so far. Would be very helpful against fire breathing bats/little dragons when they go over pits.

-more or some item drops from enemies or at least some reason to kill non-boss enemies.  Since the orb of ascension is the way to level up and no experience points appear to be in the game, non-boss enemies seem best avoided besides annoyance factor.

-it would be nice to be able to visit every map land section to look for secrets (hidden caves reveled by bombs, chests under bushes, etc) and use the overworld as more of a quick travel. Over the water might be an exception unless you want to make a fishing or octopus fight options from the ship. 

-what is the point of the clearings? I have visited many of them and it just one map square with no enemies or secrets that I can find.

-Villagers so far only say "nice to meet you". They should probably have a more diverse vocabulary for immersion purposes even if their village quests haven't been implemented.

-give certain enemies or items and item switching abilities/different attack types at higher levels.

-could use more environment, building, enemy, and boss diversity but I know that will come in time so I'm not really worried about that ;)

Thats all I can think of at the moment. So far its alot of fun and the dungeons are pretty decent as far as secrets and progression even if they are somewhat linear at first. Great effort and keep it up! :D

Nice! Thanks for the thorough feedback man I really appreciate it!

The torch idea is good, I will probably improve that.

Yeah, my plan was that you should not regenerate life when going up/down the stairs. It's still in the game, haven't fixed that ;)

Have you used a spear against the little dragons? Also works well. But yeah, the bow will come!

Yup, I plan on adding monster drops for upgrading and crafting special items.

I'll try how having more overworld maps feels like, but that's actually a really good idea!

Have you found a note in a dungeon as a reward? It points to a "Clearing" in the current biome. In each clearing there is a stone "chest" in which there is the actual reward. It's sort of like a treasure map you find in a dungeon, get it?

Yup, villagers will say a lot more in the future!

Thanks again for the feedback! :)

Ok I understand the clearings now. I did find one of those maps earlier in a dungeon and just went back and found the treasure since my computer is still running witht the game open 😂 Got another ascension orb 😁 Cool feature! 

Regarding the dragons, you might want to consider more progression from the early levels just because even the first one I ran into was pretty hard. 3 heads with a steady fire stream and him physically chasing me around the room if enough to make non lesser experienced Zelda 1 players rage quit...luckily I was good enough to beat the second quest back in the 80s so not me! 😁

...but anyways, since you probably don't have a ton of bosses finished I would start with one head, slow movement speed, alternate attack (exploding fireball or maybe a scroll like power) and maybe short fire bursts and then increase one of these attributes per dungeon level. So by the level 30 or 40, the dragon would fast with alot of abilities and 10 heads!(which is probably enough heads and upgrades). You could also add different elemental dragons to vary the progression even more.

Lastly. I was just reading my last post and realized I had a huge typo and wasnt very clear...I meant to say:

-give certain BOSS enemies (like orc bosses) MORE items and item switching abilities/different attack types at progressivily higher levels. Imagine a level 40 Orc boss switching weapons, setting bombs, and using scrolls 😁. The higher the level, the more options, health,  and switching rate they have. 

Come to think of it, Wizard bosses could probably be implemented in a similar where they primarily use one scroll like power with no other weapons in the beginning and gradually get stronger and more varied....wizard camps or outposts might be fun too.

Just some ideas for your brainstorming

Nice! Yeah I like the dragon stuff. I've already thought about stuff like that but haven't implemented it yet :) Will definitely come tho!

Yeah the humanoid bosses will be more intelligent and use more items the higher level they are! They actually already use health potions, have you noticed that?

I'm not sure if Ive seen it yet. Does the loading bar appear over their head when they use the potion?

No it doesn't. But they have the same drinking animation as the player and of course you can interrupt them ;)

Been following on Twitter, love the update vids!

When trying to run on mac I get: 

Exception in thread "main" java.lang.ExceptionInInitializerError

at org.lwjgl.glfw.GLFW.glfwCreateWindow(GLFW.java:1384)

at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.createGlfwWindow(Lwjgl3Application.java:425)

at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.createWindow(Lwjgl3Application.java:372)

at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.<init>(Lwjgl3Application.java:107)

at mystiqa.game.desktop.DesktopLauncher.main(DesktopLauncher.java:16)

Caused by: java.lang.IllegalStateException: GLFW windows may only be created on the main thread and that thread must be the first thread in the process. Please run the JVM with -XstartOnFirstThread. For offscreen rendering, make sure another window toolkit (e.g. AWT or JavaFX) is initialized before GLFW.

at org.lwjgl.glfw.EventLoop$OffScreen.<clinit>(EventLoop.java:38)

... 5 more

AL lib: (EE) alc_cleanup: 1 device not closed


I was able to run it myself with -XstartOnFirstThread, but it only black screens :(

Thanks man!

Shit. LibGDX really does not run well on Mac and Linux. It's really shit. Do yo by chance have a windows machine? It seems that's the only reasonable option :(

v0.2 crashes on windows. Switching to monogame?

It shouldn't crash anymore. I updated the 0.2 version :) Try to redownload it.

 But yeah, I'm switchting to MonoGame :)

0.1.1 works but 0.2 crashes.

Exception in thread "main" java.lang.NullPointerException

        at mystiqa.game.state.GameState.update(GameState.java:85)
        at mystiqa.game.state.world.WorldState.update(WorldState.java:98)
        at mystiqa.game.Game.render(Game.java:74)
        at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Window.update(Lwjgl3Window.java:386)
        at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.loop(Lwjgl3Application.java:136)
        at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.<init>(Lwjgl3Application.java:110)
        at mystiqa.game.desktop.DesktopLauncher.main(DesktopLauncher.java:16)

As I've said, that's the exact I should have fixed. Have you redownloaded 0.2?

If yes, honestly I'm out haha. Please just wait for the new version 0.2.1, I'm switching to a new framework (MonoGame) which will definitely work on Windows, Mac and Linux :)

Running on Windows  10 with java version "1.8.0_221" I get a crash a moment after a black screen appears:


```

Controllers: added manager for application, 1 managers active
Exception in thread "main" java.lang.NullPointerException
        at mystiqa.game.state.GameState.update(GameState.java:85)
        at mystiqa.game.state.world.WorldState.update(WorldState.java:98)
        at mystiqa.game.Game.render(Game.java:74)
        at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Window.update(Lwjgl3Window.java:386)
        at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.loop(Lwjgl3Application.java:136)
        at com.badlogic.gdx.backends.lwjgl3.Lwjgl3Application.<init>(Lwjgl3Application.java:110)
        at mystiqa.game.desktop.DesktopLauncher.main(DesktopLauncher.java:16)


```

Yup, I just noticed it. I'm so sorry. I was really stressed to push out the update yesterday so I didn't even test if it runs.

I just fixed the bug! Have fun playing the game :)

It crashes immediately. I tried v.0.1 and v.0.1.1 on two linux machines, Intel gfx, openjdk-8 and openjdk-11 

`Exception in thread "LWJGL Application"

java.lang.IllegalArgumentException: no uniform with name 'cx' in shader`

Thanks for the bug report! Indeed, I've personally only tested on windows sadly. I'm sorry you can't play.

It sounds like the shaders are not intitialized correctly/at all. I've just built in a quick-fix for the incorrect shader loading.

Have you tried version 0.0.1? What version of OpenGL are you using?

(2 edits)

0.0.1 works on both machines (but crashes when I get attacked).

2010 laptop: Intel Corporation Core Processor Integrated Graphics Controller

OpenGL version string: 2.1 Mesa 19.0.8
OpenGL shading language version string: 1.20
OpenGL ES profile version string: OpenGL ES 2.0 Mesa 19.0.8
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 1.0.16

2015 miniPC: Intel Corporation Atom Processor Graphics & Display

OpenGL version string: 3.0 Mesa 18.3.6
OpenGL shading language version string: 1.30
OpenGL ES profile version string: OpenGL ES 3.0 Mesa 18.3.6
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00

Yup, that indicates to me that the shaders aren't initialized properly. I fixed the problem earlier today, so in the next update you should be able to fully play the game albeit without shaders, sorry :| I'm not a huge OpenGL expert, but I hope at least playing the game is fine for you!

Is there the possibility that you could test it with windows? Because I don't think it's Linux. My guess it's the intel integrated graphics

I'm planning to install Win7 on miniPC, probably this weekend 

Ok, great. Hopefully it works! Cheers man

(+1)

Its really good, i think there is lots of potential in it but i think some tweaks here and there could improve it a lot

-increase font height by one pixel (most minor detail not really necesary but i really don't see it breaking anything there is plenty of space left on the screen)

-increase overworld move speed (i dunno if it is that slow due to generation times if it isn't i think the character moving faster would make traveling more pleasant)

-add some way for the player to be able to tell which room borders lead to another room, while on a cave i was constantly getting to borders and they would lead nowhere which was kinda frustrating since the character moves quite slow

-the game crashed while i was raiding a orc camp

(1 edit)

Thanks a lot for the thorough critique!

One problem with increasing the font height is because it's grid based that the bottom row would collide with the top pixels of the next line :/

The overworld speed is indeed slow, I will increase it!

Yup, the room border thing haha. I don't have any idea how to do it tho, because visual indicators would seem unnatural. Any ideas?

When did the game crash exactly? After you hit a monster or what?

EDIT: I just fixed the movement speed on the world map. 2x was too fast, so now it's about 1.5x. Seems better to me. I also fixed the room tile borders not aligning. Now you can always tell! :) It will all be in the next update on Saturday probably

(+1)

Very interesting project! Very similar to my favorite old games!

Thanks!

(+1)

Another demo, yay!

Looking cool! I like how the graphics are made, the animations fit well in the resolution. The enemies are something hard to defeat but it's interesting to apply some of technique to defeat enemies instead of recklessly trying to hit them, I like that.

Looking for more progress here :)

(+1)

Amazing! Glad you enjoyed it. A new demo will follow in a few weeks hopefully :)

Cant wait for the full version of this game, it looks great!!

Thanks, I'm glad you like it! :D

Will post a new version with the dungeons soon :)