1
\$\begingroup\$

I am planning to make a tile turn-based game like Final Fantasy Tactics. Now, I am brainstorming of how can I implements the map arena system (the battle arena where there are block by block tile so that character can walk on) such that it is easy to merge an art consisting of whole arena terrain onto the game.

I planned to create a full-map sprite, modelling it after a real place, then put it into the game. The problem is how do I code the program such that it will know the height and location of each tile out of a large single-sprite map? If I am to do that, then I should create some kind of editor that generate such data.

If I implements a tile by tile map creation, such that I use separate art sprite for each tile, then it would be hard to put the full map onto the game. I will have to build the map from tiny sprite, tile by tile.

I would kindly ask any professional or people who have done these type of game before, which method would you suggest me to do?

Another question that I want to ask is, if any of you know, how does game like final fantasy tactics layout their background map to make it look 3D? Do they simply make a sprite tile created from an angled (user's ) view instead of flat sprite with top-view? Or do they simply use flat top-view sprite and maps it on a 3D plane/terrain ?

\$\endgroup\$
2
  • \$\begingroup\$ Final Fantasy Tactics used actual 3D geometry for its levels (composed of a restricted set of 3D "tiles") -- if that is the style of game you are after (for example if you expect to rotate the terrain), then you'll want to do the same and abandon this workflow that involves creating the initial map as one giant sprite. \$\endgroup\$
    – user1430
    Apr 25, 2012 at 15:21
  • \$\begingroup\$ I am quite confuse on how to produce 3D tiles. From my understanding, it should be a form of box mapped on all side with 2D sprite to form a block (like minecraft). \$\endgroup\$
    – user1542
    Apr 25, 2012 at 16:37

1 Answer 1

4
\$\begingroup\$

I would suggest that you create editing software to construct your maps; this hypothetical editor would let you paint individual tiles onto a grid -- probably an isometric grid, from the sounds of it -- and eventually export that map into a format consumable by your game.

In the long run, this will be a more efficient means of constructing your maps that trying to paint one sprite for the map. It may take longer to build up your initial tile set, but once you have a tile set creating new maps and adjusting existing maps will be much faster. The only real feasible approaches to starting with a single sprite and then extracting information from that about where each tile position would be are almost equivalent to constructing a tile-based editor anyhow, especially if you're going for an isometric approach because your 2D source image lacks any encoded depth information.

Plus, with this approach you'll already have a basis for a tool that allows you to set up additional level data, such as placing invisible triggers for events or other scripted behaviors, placing the initial enemy or player unit formations (which obviously couldn't be painted on to your "single sprite").

Such a tool can also be scalable into creating 3D tile-based geometry, which is what Final Fantasy Tactics actually uses (allowing the screen to be rotated).

\$\endgroup\$
2
  • \$\begingroup\$ The problem now is creating the editing software. It would be better if I can find an easy way to create map editor. If it were you, how would you rapidly make your own custom editor? Is there any great library out there that consists of macro/high level command for creating your own tool/editor? I was planning for a tool that can import 2D sprite and allow the user to map it on a box or ramp, then export the data as my own custom tile data \$\endgroup\$
    – user1542
    Apr 25, 2012 at 16:35
  • \$\begingroup\$ Tiled (mapeditor.org) map editor is pretty great, and exports a nice format for using in games. \$\endgroup\$ Sep 27, 2014 at 1:54

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .