Snake++ by Gnarly Narwhal
Snake++ is a snake inspired game in which you must control a snake and navigate it through a series of levels. in it’s current state is fairly simple and is pretty short so I would like to expand it at least a little as a post LD game. If you have an idea for something you think would be a cool addition to the game I would appreciate that as well.
Controls: - WASD/Arrow Keys to control the snake. - Spacebar to reset/go to the next level
Goal:
Reach the colored square without hitting any walls or yourself
- + makes you longer
- ^ makes you faster

Get the latest source code here on github. The binary can be found here. It was written on windows, but it should work on linux as well. It currently doesn't run on mac even though there is a jar for it. If you have any experience with lwjgl on mac see below. If you experience any issues with the game let me know. Thanks!
My issue on mac: When I run the jar GLFW complains about it needing to be on the main thread even though my program does not use multiple threads. It suggests running the JVM with -XstartOnMainThread, but when I do that it opens a black window and doesn't render anything. Anything you can share with me is appreciated.
Ratings
| Overall | 189th | 3.643⭐ | 23🧑⚖️ |
| Fun | 277th | 3.429⭐ | 23🧑⚖️ |
| Innovation | 596th | 2.5⭐ | 23🧑⚖️ |
| Theme | 328th | 3.476⭐ | 23🧑⚖️ |
| Graphics | 288th | 3.429⭐ | 23🧑⚖️ |
| Audio | 131th | 3.525⭐ | 22🧑⚖️ |
| Humor | 527th | 1.889⭐ | 20🧑⚖️ |
| Mood | 530th | 2.632⭐ | 21🧑⚖️ |
| Given | 17🗳️ | 8🗨️ |
Adding a simple thing like enter to start game would have helped but that is a small thing.
➜ Ludum Dare 40 Mac java -jar Ludum\ Dare\ 40\ Mac.jar
main
Exception in thread "main" java.lang.ExceptionInInitializerError
at org.lwjgl.glfw.GLFW.glfwCreateWindow(GLFW.java:1694)
at com.gnarly.engine.display.Window.init(Window.java:119)
at com.gnarly.engine.display.Window.<init>(Window.java:79)
at com.gnarly.game.Main.init(Main.java:46)
at com.gnarly.game.Main.start(Main.java:27)
at com.gnarly.game.Main.main(Main.java:78)
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:39)
... 6 more
AL lib: (EE) alc_cleanup: 1 device not closed
```
When I use the `-XstartOnFirstThread` I get a black fullscreen window with a white bar at the tob .
Unfortunately, the controls were a little laggy for me, which made the game hard to play. I don't know if this was just for me, though, so I didn't let it impact my review. I liked the art style, but I hated the music (sorry).
I also agree with another comment that adding [space] to start the game would be useful. I restarted the game a few times before I realized I needed to click the button with my mouse(!).
Nice stuff:
* Hue-shifting graphics are really nice and contribute to the difficulty
Stuff that can be improved:
* Maybe too much random chance vs skill when it comes to locating the exit point? (or maybe I'm just bad)
* Adjusting computer audio crashes the game for some reason.