Libraries vs. Pure Java

What would you guys prefer and why?

I personally really liked slick2D and LWJGL because it makes everything so simple, but I tend to not be able to get the game to a distributable format. (I can’t export it without it crashing when opened. It’s gotta be a library issue.)

I’ve been using pure java ever since. I’m really liking that, too, but it seems to get really repetitive and just useless time put into a project to do no important things.

I’d much rather code the core of the game then actually have to remake a buffer strategy and a GameStateManager each time.

So, what would you guys recommend. Whats the best way to go? I’m really just wanting people to shine a different light on everything.

I use Slick2d and LWJGL, I don’t see much purpose behind building my own boilerplate when Slick allows me to commercialize my product anyway, ya’know?

As for exporting it to a distributionable .jar/.exe, for now I use a program called Jarsplice.
http://ninjacave.com/jarsplice

In the future I’ll convert to using an EXE format though. but either way, why would you go through the huge paid of making a boilerplate instead of just learning how to properly export slick2d? That seems odd, wouldn’t it be easier/faster to figure out how to export slick than to build a boilerplate? :o

Hah trust me it is. I end up giving up on the project before even getting out of the behind the scenes part. Its honestly so hard and you usually get hung up on some stupid glitch and just flip your sh*t. :stuck_out_tongue: But, hopefully, if you get through the pain and suffering, you can have some smooth sailing from there! Now that I think about it, why didn’t i just straight out in smooth waters (Slick2D). Why did i even start learning Java game dev in general in the choppy waters of my own boiler plate library. Anyways, thanks!

The creator of Slick2D now uses LibGDX.

As for me, I write the code myself when possible, but if I cannot match already existing code in efficiency/performance, I’ll take that.

So, your recommendations? LibGDX or Slick2D to start out as a library

I take the same approach as Heroes, with an addendum: If it’s simply not worth the time/effort to reproduce what someone else has done, then I won’t. Example: I’m not about to write my own version of windows just because I want something halfway between 7 and 8.

libGDX, it will still be applicable and relevant when your interest and abilities grow later. Plus it has a larger userbase and is growing instead of being mostly dead. (citation needed)

Edit: and if you suffer from project setup/build process, libGDX has an up on slick as well: http://www.aurelienribon.com/blog/2012/09/libgdx-project-setup-v3-0-0/

I recommend LibGDX, even though I am currently using Slick. (I know right?)

LibGDX just makes sense to switch to if you haven’t already learned the ins and outs of Slick2d and just don’t feel like relearning a different foundation. :wink:

Ur not telling me u made that SixtyGig game in Slick right?

Yes, SixtyGig is a slick2d based game. :wink:

Slick2D is actually still a very good foundation, it’s just lacking some of the latest and greatest. But really, there’s no reason you can’t still use it. It’s not like your game will suddenly evaporate. :smiley:

Actaully when I was programming Project Raft (Before I said screw slick2D I’m coding pure Java!) my game would randomly evaporate. It would suddenly not want to launch. UK after I put it through jarsplice and such.

Now that ik SixtyGig was made in Slick2D though, you have breathed new life into that library. (for me at least :P) How long did it take to make that game anyways. (P.S. It’s beautiful)

Really Slick isn’t the reason it looks like it does, if I had used LibGDX you probably wouldn’t of noticed the difference, aside from being a little bit further behind in development since my knowledge of Slick is a bit stronger.

But I started work on this project on Jan 28th, 2014. So just slightly over a month ago. (About a Month and a week?)

You obviously used sprite sheets then or the loading time word be ghastly.

I may end up porting my game G581G to Slick2D at some point when it’s finished.

It works with LWJGL, and all of the methods are very similar to that of Java2D’s, so it wouldn’t be too hard to accomplish such a thing.

That is, if people still like Slick2D by then. I don’t know how many times I’ve been bashed for using technology that nobody agrees with. :emo:

But technology is like music. No matter what genre you like, no matter what you’re a big fan of, somebody out there is going to hate it, regardless.

  • Jev

Yep, there are quite a lot of sprite sheets. :wink:

The GUI/Interface stuff isn’t, but the characters and map elements are.

Well, the way I see it, is the people who are going to play my game don’t give 2 darns how I made the game, as long as it’s fun and works. :smiley:

There are still games out there that use Slick2d, for example, Towns (townsgame.com) is very popular, still recent, sells for $14 a pop and is built up on Slick2d.

So the way I see it, is using Slick2D is like driving a classic car, it’s still gets the job done and looks great going it, it just might have an 8-Track instead of an iPod dock.

The only reason I could see myself even using LibGDX would be for its cross-platform ability, but is giving up simplicity really worth cross-platform support. Not to mention that those other platforms cost money to even market on. Desktop and HTML5 are the only decent platform that would be worth investing in IMO.

On the topic of Slick2D where would you find some nice tutorials on the such. (Ranging from absolute beginner to some intermediate)

Guess it depends on you, your goals, etc. For example, I plan to get my game on Stream via Greenlight. Will I actually get it published this way? I have no idea. But just getting the chance to put it on Greenlight (not even get it approved/posted for sale) comes with a $100 entry fee, and I am more than willing to pay that even if it doesn’t work out and I never get published. :slight_smile:

If I was planning on going multiplatform, I wouldn’t even blink at the costs to get into the market. If you have a quality product, you’ll make back the little fees along the way. :smiley:

That’s the thing: It working.

As far as I have discovered, Graphics2D has no good Full-Screen support nor Image Filtering by default, AFAIK.

I have a fear of people downloading the game : Getting mad at how it’s not in Full-Screen : Getting mad at how the pixels look stretched out if it does happen to work in Full-Screen because of the lack of filtering.

  • Jev.

Honestly, I would put it on Desura instead. I put my game, Project Raft, on there and it sold pretty well. (IMO) They are free to get your game on there. Only problem, takes about a month of back to back discussion with a moderator to get things straight, but once they are its pretty great! Maybe you don’t wanna wait though. Then itch.io is the place for you. Though it doesn’t have as much users like Desura or Steam, it is really developer friendly. I would expect its popularity to grow a lot in the next few years.

Itch:

Desura:
http://www.desura.com/

I prefer to write all the boilerplate code I could write myself, cause this way, I can learn what is actually going on under the hood.

[h1]LWJGL:[/h1]Pros:

  • Low level, a lot of flexibility
  • Maintained, up to date

Cons:

  • Relatively difficult to use
  • A lot of work to do
  • Desktop only

[h1]Slick2D:[/h1]Pros:

  • Easy to use

Cons:

  • Unmaintained & old
  • Desktop only

[h1]LibGDX:[/h1]Pros:

  • Relatively easy to use
  • Multi-platform, iOS, Android & Desktop
  • Maintained, up to date
  • Access to low level code
  • Scene2D
  • Lots of good documentation

Cons:

  • Requires some LWJGL/OpenGL knowledge