Something like LibGDX where it takes a lot of libraries and makes them very easy to use. Its also easy to just make a simple game in like an hour. I love it because it simplifies opengl so I don't have to worry about the low level stuff, yet I still have access to them.

There is a big difference between code that third parties wanna use later on and game code only you will see.A game just has to work and be fun.A library needs to be fast, working rock solid, be easy to use, coded very well - ready for fixes and improvements, easy enough to read.

Technically it's much much harder writing a game engine than an actual game.There are entire companies that write just engines.

id needed 6 years for Rage and their id Tech 5 engine developed alongside.

Libgdx is made by a plethora of smart people over a long period of time.

To be quite honest with you, I would probably never use a tiled game engine. I use LibGDX so I dont have to deal with low level stuff, but I still want to write my own game code. There's a point when you need to stop using game engines so much for simple things like a tiled game, and start writing your own code. I feel like a lot of newbies use these game engines that pretty much don't require them to write their own code, and then they can't figure out how to create their own basic engine. Graphics engines are fine, but simple games like this just don't need a engine.

Just my two cents, now I await all the people who will tell me I'm ignorant.

It's very interesting how a human being evolves while he is learning new thingsAbout 6-7 years ago, I wanted to do everything myself. I rolled my own render loop, built my own engine, built my own network code, own serialization, own you-name-it-I-have-it.Pretty much dropped them all, because there are better things out there, with functionality and higher quality and with less bugs then I will ever have time or motivation to write.

So, to the present. I reuse as much as possible, if I want something, I look for libraries and frameworks. The only thing that I roll on my own at the given time is a UI lib, for all libs that I have found are not suiting my needs.

With this introduction, the answer to the question is this. I need the game engine to do as much as possible for me so that I spend as little time as possible on coding the engines and frameworks and as much time as possible on creation content and defining game rules and logic. I want to realize my ideas instead of coding the engines and frameworks. I want to move my toons and zombies, instead of draw triangles. I want to share my world over the internet, instead of sending handshakes and acknowledgments.

“The First Rule of Program Optimization: Don't do it. The Second Rule of Program Optimization (for experts only!): Don't do it yet.” - Michael A. Jackson

keyboard inputmouse inputcustom loop generator(that makes a new thread)graphics support 2dpossibly 3d in later versionssoundbasic mapping supportfull GUI support including buttonscustom image objects (that store x,y and can be called to draw from within)ease of useshould handle all rendering within its own generated loops(loop generator)full polymorphic support.

@JimmtOh, he might have assumed that I would make default 'player' and 'enemy' classes. In that case, no, I am not doing that. You make the classes, I make some utils, and a framework. That is a game engine (horrible definition, thus why I opened up this post).

@KparsO man... I have never even heard of .MIDI! Time to study up on sound... I have heard of .ogg though. Isn't it the completely efficient way to do sound?

@JimmtOh, he might have assumed that I would make default 'player' and 'enemy' classes. In that case, no, I am not doing that. You make the classes, I make some utils, and a framework. That is a game engine (horrible definition, thus why I opened up this post).

@KparsO man... I have never even heard of .MIDI! Time to study up on sound... I have heard of .ogg though. Isn't it the completely efficient way to do sound?

All these BufferInputStreams are killing me!

Oh, an GUI support seems a must...

JevaEngine supports both OGG, MIDI and WAV. I find though that OGG is more suitable for larger audio files since it does take some time to decompress them (not a big deal since you can precache audio but it does have a noticable effect on load times.) Sound effects like a gun-fire aren't going to get any smaller with the compression offered by OGG so you mid as well store them as a wav to decrease load times.

java-gaming.org is not responsible for the content posted by its members, including references to external websites,
and other references that may or may not have a relation with our primarily
gaming and game production oriented community.
inquiries and complaints can be sent via email to the info‑account of the
company managing the website of java‑gaming.org