Tile-based game: fastest jumpstart for newbie?

Hi all! First post …

I’ve been planning to create some game in my free time for years. I wanted to do it in 3D, and wanted to use jMonkey. But now I got pressure from my family to do it in 2D instead (maybe because I’m taking too long :smiley: )

So I’d like to make a 2D tile-based game (strictly multi-user), written in Java, that can ideally render to HTML5 (but having multiple rendering options would be great). And I’m only interested in the rendering (and input and sound) part of the game (although I might need to build on an existing network API as well if the game is turned into HTML5). I want to build all the game logic/framework myself, so I can reuse the same code on the server, and keep the UI code out of the server.

So my question is:

Given described requirement, which API/engine would get me up-and-running in the shortest possible time?

Probably, something that comes with a complete working example would be best. It should be more a proof-of-concept then a full-blown high quality game. The API/engine should also come with some basic menu system, so I don’t have to program that either.

Thanks,
Monster

LibGDX of course.

Also depends on your background and (game) programming experience.

So basically you want to do it quick and with little effort. That goes into the territory of a game maker tool, not programming!

I once did a tile based game in “just” 2 days though, using C++ even and using no framework at all except for some code I used in a previous game; the graphics/sound stuff was done using very basic DirectDraw/DirectSound. I managed to do it that quick because, besides having experience already, it was a remake of an existing game for the old Commodore Amiga platform; I could rip the graphics, sounds and music from the original (and I had plenty of experience doing exactly that), I knew how it should work from the get-go so I didn’t have to design anything, I just had to program it and make it work. It was also a puzzle/board game with no scrolling and no physics and such.

So if you limit very much what the game will do, MAYBE you can do something quick. But I wouldn’t count on it, it takes plenty of experience and lots of focus to finish a game.

You get pressure from your family on stuff like 2d/3d? Damn…
I don’t know how much experience in programming you have, but try not to start with multiplayer - at least develop your game’s single player aspects first. LibGDX is definitely the best high-level way to go, and has loaders for .tmx, tIDE maps, etc.

Thanks. OK, seems like my experience is critical, so here it is: I’m a “senior software engineer” at a company doing accounting software. My strong points are clustering, databases, profiling, and generally, I’m the “language guy”, the person the other devs go to, when the compiler, or Eclipse, or ANT or the OS “makes no sense anymore”. I’ve read about over five heavy books on most aspects of game programming… But dnever program one (if I don’t count stuff I did as a kid on a TRS-80 in basic). Working on an accounting system means you have to spend a lot of time “planning”, because if you are even one cent off, you’re in real trouble. That’s why I have wrote a large “spec” document in my spare time, but after several years still haven’t even got a prototype. So my wife and son have asked recently when I will finally show them something, and said maybe I should try 2D instead. I thought about it for a while, and since I want to do something “RPG”, I think 90% of the code would be the same, even if I made it in 2D. So I can start simple, and upgrade to 3D later (or maybe not). So my new short term plan is just to make a minimalistic prototype, preferably HTML-based, and see from there. I am working my way up from the backend to the client. So far I have been working exclusively on the database, clustering and data-modelling.

Oh, and I forgot to mention: the main reason why I want to write games, is to extend my experience about clusters and databases (to products my employer does not use), so of course a single-player game would not really help me there. My lesser reason is to be able to play with AI, which you can’t do in a “normal” job. So the backend is what I think is the fun part, and the client/UI programming is the part I would like to outsource, if I could afford it.

What kind of tile-based game is it exactly?

There is a difference between a game of Chess, and a game of Dungeons and Dragons. Depending on the size of the tile map you are trying to produce and the objects within it. It can take anywhere from a few hours, to a few months to get up and running.

I know that you said “RPG”. Some of the names that have tried this is Legend of Zelda and Pokemon. Is there a specific game that yours is going to be very similar to?

Well, for the 3D version I was planning on something between Ace-Of-Spades (from Jagex, on Steam) and Dungeons & Dragons, because 3D voxels are really data-intensive, and so a good use-case for using advanced DB/Cluster/Networking APIs …, but my wife proposed I should do something more like http://rpg.mo.ee/ instead, for a start. :smiley: (She likes neither 3D games, nor shouters :frowning: ).

Can you confirm that I am understanding your intentions correctly.

  • your passion really is in complex networking solutions and you are wildly interested in the workings of for example clustered game servers such as used for MMORPGs
  • you don’t actually find the creation of the client part of a game “fun”, its a necessary evil to be able to play around with the “business logic” bits you do find interesting (such as AI). To compare: you like creating the back-end of a web application but you don’t really like creating the front-end; you’d rather just use a framework to quickly crank out the user interface and not really bother with the markup and the styling.

Am I right?

Exactly! :slight_smile:

Once it works, then I have to spend time on the “looks” and UI, of course, otherwise I won’t get anyone to want to play the game(s), but maybe I’ll find someone else that would like to get involved with the client-side of things. My impression is that most game programmers who would want to create games are mostly interested in the client side, so maybe it is not too hard to find someone who would like to work with me, if I take care of the backend …

That is the exact thing I’d recommend you to do in your situation.