How to start with a 2D board game

Hello, I have basic programming knowledge in java and c# because I study applied computer science in college. This semester I only have 4 courses so I want to get into game development as a hobby. Also partly because I want to make my own 4x game (just like I want it xD). Now I have been searching past months for some good frameworks and tutorials. I settled with starting off with LIBGDX and started a small peer tutoring game dev coding club with some people from reddit. But as I go through the tutorials now (just started last week) I find that most tutorials are outdated and have syntax that has been changed a time ago. The tutorials are also mostly about making platformer games and focus on the android side, while I want to try out for pc first and then I also want a whole different kind of game.

My focus is on grid/board based games. turn based strategy/rpg/survival. Those are the kinds I want to make, but I find it hard to find decent tutorials for these. My question now is how should I start with a 2D grid+rectangle based game? Do I even need a tiledmap for it? Because my goal is to give each ‘tile’ certain attributes et cetera. Is an tiledmap good for that or not? I have also thought of making a class and make it ‘draw’ a rectangle on the screen with a image to it then. But if this is all I need to do, why should I then even bother using a framework?

If somebody knows a good tutorial on how to start with 2D grid based tutorials I would be very grateful. I have also read Armit’s posts about square, triangle and hex maps. It is not the math that is an obstacle it is the idea of how to implement my idea’s I think.

Thanks in advance =)

Those things have nothing to do with the framework or library you’re using. LibGDX, for instance, gives you a set of tools for loading and storing data, receiving input, drawing images etc. Just like standard java does. However, libGDX has game development specifically in mind and the same code can be distributed to a variety of platforms.

You’re obstacle here is simple standard programming concepts and how to use them in game development, it seems. Realize that data is arbitrary. What is data? It’s such a vague term. Data is whatever you want it to be.

In programming the very basic way of interacting, storing and juggling data is with arrays.

So if you want a 2d grid, why not make a 2d array that holds these ‘tile’ objects you were talking about. Something like this would usually be called a “map” in game dev since it stores the data that is used to represent the world.

You do know the basic setup of a game, right? I.e., input, update, render, repeat.

while (true) {
   input(); // get input from user (keyboard, mouse, touchscreen, etc)
   update(); // update game objects
   render(); // draw the map and game objects on the screen
}

Yes I have played with it and I understand the basic application life cycle in a game now. But I don’t understand how I could give certain attributes like terrain details and such to a tile in a tiledmap. But with the rectangles I am having trouble because the Shape Renderer has been changed and most of the tutorials now have incorrect syntax. What I would really like is a from scratch basic tutorial showing how one would make such a board. If I have the start I can build upon it.

Here’s my suggestion. Ditch tiled for now. Its a nice tool, but “newbies” don’t learn anything about how “terrain” is created and rendered. Now, your board will be made up of tiles. Each tile will have a texture. You draw these textures with a SpriteBatch by calling batch.draw(texture, x, y); I assume you know the basics of programming, so storing attributes shouldn’t be a problem if you create a tile class.