Lets talk Isometric

New releases and general discussions.

Post » Tue May 12, 2009 11:53 am

Currently there is no real support for an isometric type of game, so I figure if we want it in the future we better start talking about what features are needed, and what can be done with what we already have.

To start off one feature I think would help out a bunch is a way to configure the grid to make it easier to place tiles. The thing is there are two problems with a grid like this. First off the grid would need two different sets of rows. One row starting at the edge of the layer, then the next offset by half a cell's size.

Secondly the ability to have tiles overlap. I suppose what would be needed is a way to force tiles to snap to grid points at hotspots, or image points.


Next the user would need a way to change the standard 8 directions, to compensate for the change in angles.

Now I realize this stuff can be done already with a few workarounds, Im just saying this stuff would help a lot. Feel free to add any other suggestions.

Also Im sure many of have seen the 3d proof of concept demo posted here many months ago.
[url:3e9rk1pm]http://dl.getdropbox.com/u/666516/3dproofOfConcept.exe[/url:3e9rk1pm]
Even though this isn't true isometric, I think its worth delving into for this type of game.
Im pretty sure the demo uses 3d boxes, so that means in order to use them there would have to be a few additions to that object, like the ability to find a certain face, and the ability to change textures on the fly, etc.
Image Image
B
161
S
48
G
90
Posts: 7,356
Reputation: 66,767

Post » Tue May 12, 2009 1:19 pm

I saw that 3d proof of concept before I was a member of the forums here
who did it, quazi?

anyway, it's ridiculous how much it looks like xenogears for the psx, which was a great game btw.

[quote="newt":3lgxoue2]Im pretty sure the demo uses 3d boxes, so that means in order to use them there would have to be a few additions to that object, like the ability to find a certain face, and the ability to change textures on the fly, etc.[/quote:3lgxoue2]

the demo's not isometric though, it's 3d, other than the mario
you could do isometric completely without 3d boxes, like if you wanted to make a game like SuperMarioRpg

there's no 3d in there, it's all in the way you draw the tiles, which seems very difficult to do well, on a side note.
or something like this


just really well made tiles, but I do think the staggered grid thing would help alot
I think game maker had that option
Spriter Dev
B
87
S
21
G
12
Posts: 3,240
Reputation: 16,461

Post » Tue May 12, 2009 1:24 pm

Back when I used Game Maker 5, I built a small isometric game using the same model I used for another small "beat'em up" fighting game (like Final Fight or Streets of Rage). Basically I used grids like you suggested and on each object I defined a Depth variable that would gain or lose value depending on it's position related to each grid box.

An example: if a game object moved up the grid it would gain depth value and downwards it loses value, but on the isometric "engine" the trick part was to place the collision boxes in a realistic way, so If there was an isometric bush above the isometric character, but the character was taller than the bush, then the collision box proportion would have to be adjusted for each.

I'm still getting the hang of Construct, but I'll see If I can make this example with it.

EDIT: I know this thread is not about how it can be done, but more in the sense of having this feature integrated in Construct. Perhaps if we find the best/simpler way to achieve it, it will make it easier to create the functions for it.
B
2
G
3
Posts: 10
Reputation: 870

Post » Tue May 12, 2009 2:30 pm

this just uses normal snapping..it's pretty easy to do
I left open tiles on the layout, so you can try (click image to download cap)

drag a tile while holding control (in edit mode, before you run the cap), and put it in an empty spot
very easy to get it where you want it

I drew square sprites for the tiles and skewed them by half their length
so a 128x128 sprite gets a skew by 64 on the x axis

then I halved their heights
so the height would be 64 as well

then set the grid snap to that same number for both x and y
64x64


it works well and flexibly, for instance the river, top and bottom is the same sprite rotated


also in the cap if you run it is a simple control system
and the code to keep you from colliding into obstacles
and the z-order code to place the objects in front and behind each other correctly, so you can walk behind the tree and such

feel free to edit, use, etc...

EDIT: updated cap so camera moves and you can see the top of the tree
Spriter Dev
B
87
S
21
G
12
Posts: 3,240
Reputation: 16,461

Post » Tue May 12, 2009 3:01 pm

[quote:1q4l084d]I know this thread is not about how it can be done, but more in the sense of having this feature integrated in Construct. Perhaps if we find the best/simpler way to achieve it, it will make it easier to create the functions for it.[/quote:1q4l084d]

Yeah that's basically what I wanted to talk about here.
The thing is there are so many different ways to go about it. Lucids example is a great example of using skew to bypass the offset grid system. You could probably take that even further using a distort map.

Now as to the 3d box model, dunno this might be the simplest, and most efficient way to get an iso type of game, especially when talking z order like karlmagus was talking about, and getting different heights on the map, like in the tactics types of games where landscapes themselves had a z order.
Image Image
B
161
S
48
G
90
Posts: 7,356
Reputation: 66,767

Post » Tue May 12, 2009 3:04 pm

i see what you mean
still though, the 3d boxes are drawn in perspective
I mean, there's definitely nothing wrong with making a game like that
but it's wouldn't really be isometric is all I'm saying
Spriter Dev
B
87
S
21
G
12
Posts: 3,240
Reputation: 16,461

Post » Tue May 12, 2009 4:31 pm

[quote="lucid":e9c545cn]i see what you mean
still though, the 3d boxes are drawn in perspective
I mean, there's definitely nothing wrong with making a game like that
but it's wouldn't really be isometric is all I'm saying[/quote:e9c545cn]

Yeah I wouldn't mind a plugin for both.
Image Image
B
161
S
48
G
90
Posts: 7,356
Reputation: 66,767

Post » Tue May 12, 2009 5:12 pm

[quote="newt":2ya97dku][quote:2ya97dku]Now as to the 3d box model, dunno this might be the simplest, and most efficient way to get an iso type of game, especially when talking z order like karlmagus was talking about, and getting different heights on the map, like in the tactics types of games where landscapes themselves had a z order.[/quote:2ya97dku][/quote:2ya97dku]

Yep, what I did back there with Game Maker 5 was an isometric system that worked pretty much like a "tactics" game.

There was a small ramp that I used for testing, the goal was to use the ramp to gain height and get to the top floor, the idea was that I could put an object inside the grid like I would normally do common 2D games, but it would have some 3D values, that way I would not need to worry with "warping" collision boxes that much when building a complex map. So I used a warped isometric grid as reference for depth values and attached height values to objects that were supposed to work like a second floor. The ramp was a height modifier that used the depth to adjust it so I could get a character to said second floor.

As a side note, I think it would be nice to have the option to choose between perspective and isometric in the plugin.
B
2
G
3
Posts: 10
Reputation: 870

Post » Tue May 12, 2009 5:16 pm

I don't think we need a special isometric grid. The height of the grid just needs to be half the width, and you can already change that.
Moderator
B
98
S
37
G
19
Posts: 1,584
Reputation: 17,817

Post » Tue May 12, 2009 5:42 pm

height and width need to be equal
I didn't have to skew the sprites to make the grid work
I skewed them to make them easier to draw, by being flat squares when I drew them
but you set height and width of grid to the same thing
or every other horizontal line of tiles won't be able to be in the right position

go into my isometric example and change the snapping so width is twice of half, and you'll see what I mean


but it's true, the snapping works fine, it's just visually the grid doesn't look like you'd expect it to, but one you place a tile or two, you don't need to see the grid
it's obvious where things are
Spriter Dev
B
87
S
21
G
12
Posts: 3,240
Reputation: 16,461

Next

Return to Construct Classic Discussion

Who is online

Users browsing this forum: No registered users and 3 guests