Author Topic: Let's talk about HEX based games and how they stopped evolving  (Read 24012 times)

Offline eRe4s3r

  • Core Member Mark II
  • *****
  • Posts: 2,825
Let's talk about HEX based games and how they stopped evolving
« on: October 27, 2014, 10:17:36 am »
This entire topic is a high-level talk/thinking about hexes in games, not about hex based games but about the hexes and how they are implemented badly in games due to laziness or what do I know... this is partially about scale issues and partially about a simple fact of hexes, namely that a "terrain feature of a single hex, has to occupy a full hex" and anything aside from that terrain feature, has to be blended over or replace that terrain feature..

I want to rant/openly think about a certain kind of system in games. Hex based land grid systems. And why the current implementation sucks. I bring this up because a few high profile games (CIV5, Beyond Earth) again show why hexes done the "stupid" way is stupid and more importantly, looks absolutely horrible when various game systems are applied on top (growing cities, roads, coast lines, heights, hills, resources etc..)

Now what do I mean? Well let me give you a (abstract, remember it's not about games, it's about how games currently use hexes)



In this you can see various problems abstracted

In order to draw a road through hexes, you need to create a layered texture, coastal areas are 1 hex, even though a coast is usually land and ocean combined. Most hex-based games make the coast an entire ocean hex, instead of a half land half ocean hex. (super lazy!)
In order to apply a layered texture, you need to give it alpha mapping but, alpha layered textures are not aware of textures underneath them, you can literally not solve the problem that Beyond Earth, Civ 5 and every other game with hexes ever made has if you use hexes like the above and what problem you ask is this?

#####

Notice, farms "fading into the ocean" roads blended over farms, roads running through geometry, resource buildings going into oceans, city builds sitting in the ocean.



#####

Notice river going through wall, floating city buildings, cutting actual texture mapped geometry where the farm is, and the most glaring problem, hexagonal heights.




It's worth mention that CIV5/Beyond Earth doesn't even *have* height as a concept. There are only mountains.


So I bring this up because most grid based games had these issues too, and it is imo absolute laziness. Because the solution requires but 1 simple additional step (but more importantly, more fine grained art-assets) Not more art, I am talking about more finely segmented art assets and some way to connect subdivisional points to bordering hexes in a pleasing visual manner ;)

So basically I was thinking about something like this (I should probably put more effort into this, but I think the idea is clear)


Actual units would still walk on the "hexes" and not on the sub-divisions. Coastal area and land area can occupy 1 hex

the darker red is city expansion" area. That a city can pre-flag. Farms can occupy any subdiv tiles in a single hex. If a city say, expands beyond 1 hex, a new city source tile is created, and expansions grow from there. This still means that a hex can only have 1 primary purpose, but the actual art inside a hex can be finer placed and more pleasing connections and more realistic gameplay systems can be implemented. But more importantly, this would allow for a realistic display of growth. A farm wouldn't be a hex-spanning texture, but be a farm building with road connection and a number of farm plots. This doesn't change in any way how the game functions, it is merely there to properly simulate that a hex can be more than 1 visual asset. Ie you don't put a farm building down on a hex with a river, and then have to see the river glitch through the entire farm geometry and texture.

Now I wrote enough and I want to emphasize, this is an idea I had, not something I actually tested out whether it works in terms of art. I want to hear opinions. Do you think subdividing hexes in sub-plots would make sense? And that this kind of system would create a more fun 4x if applied to say, Beyond Earth or Alpha Centauri style games?

It is also worth noting that the reason I was thinking about this, is the way the (original!) Alpha Centauri did heights and mountains in the game. I know how this works in grid-based systems, but nobody has EVER properly implemented this same idea in hex based systems. With subdivisions, you can also change the height per tile in a far more finely grained fashion, a mountain could be spanning a dozen hexes, but it would not be all height, and there could even be flat surface tops and calderas that you can have gameplay related context in.

You are probably wondering why those subdivisions are round, this is a mathematical problem with hexes ;p If you subdivide a hex, you get triangles. Triangles are a problem, because they can't be neatly textured. So in order to do this, somehow there would have to be a way to subdivide in a way I can not think of. (I don't fully understand hexes)

So if this idea doesn't work mathematically, please tell me ;)
« Last Edit: October 27, 2014, 10:27:02 am by eRe4s3r »
Proud member of the Initiative for Bigger Weapons EV. - Bringer of Additive Blended Doom - Vote for Lore, get free cookie

Offline x4000

  • Chris McElligott Park, Arcen Founder and Lead Dev
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 31,651
Re: Let's talk about HEX based games and how they stopped evolving
« Reply #1 on: October 27, 2014, 10:58:42 am »
The main issues that I can think of are:

1. Solutions that involve that sort of subdivision increase the load on the CPU and GPU excessively much, and a big complaint about these sorts of games is already that they are too slow between turns in the late game.  This would likely increase that slowness by an order of magnitude, as well as making the graphics requirements much higher unless some extremely tricky precombinations of graphical assets are done (which then instead increase RAM requirements and pretty much make it 64bit-only).

2. Generally speaking, doing good blends of things around corners is a bloody hard problem.  I'm envious of some of the simplicity that comes from doing this in 3D with full meshes, but it's still very hard there.  Doing it with sprite-based 2D graphics is an absolute nightmare, because you have to get things to tile correctly and that requires absolutely massive sprite dictionaries.  It's a lot of work, but even more than that it also limits the number of kinds of terrain overlaps you can have.  If each dictionary has to be extra large, then that limits you to fewer terrain dictionaries for reasons of RAM, GPU pipeline throughput, and artist manpower.  Again, 3D games don't have this particular problem, so I'm envious.

3. Past a certain point, you really start going "why are there even hexes at all?"  Honestly, if you're going to map things in such detail as all that, why not just go with an RTS-style free-flowing terrain?  That's simpler in a great many ways, and RTS games all the way back to Dune 2 have been solving the visual challenges there in a variety of ways that have been increasing in sophistication.  If you're going to blur away all the facets of having a hex, then why have the hexes?  You can make some arguments about adjacency and unit traversal and so forth, but those are GUI problems for the player, and I believe that they can be solved.  Didn't the new XCom basically solve that in a turn-based game?  Meanwhile, under the hood it's simpler to do it without the hexes if you're trying to do all that blending, at least in my opinion.

4. Hexes are by nature abstract.  I feel like the more people try to hide that abstractness, the less the hexes have a point in general.  My direction to the artists for our own upcoming hex game was "let's not hide the hexes, let's flaunt them."  I feel like having tiles that are merging things like coastline plus ocean are inherently messy and confusing both visually and conceptually (as a player), and so I prefer to have something that is inherently a little more abstract, but proud of it.  Hexes can be done in a really gorgeous way, and personally I get excited just seeing them.  Seeing something like Civ V or Civ:BE certainly excites me visually, but it doesn't give me any excitement from a hex-based sense, because I don't truly feel like it's a hex-based game when I look at it.

5. Doing heightmaps is really difficult for a lot of reasons, many of which are GUI-level communicating-to-the-player based.  Others are just art-related.  Computationally it's straightforward to represent, though.  SMAC did a really great job of handling the heightmaps in a 2D iso game, and so did SimCity 2000.  However, if you look at all the problems with really insane roads and whatnot that were caused in SimCity 4 thanks to the height and trying to put roads on them, I think you can get an idea of the complexity there.  Civ:BE has such large non-granular tiles in general (compared to SMAC and definitely SimCity) that doing terrain deformation would be an utter nightmare, and trying to put buildings on them would wind up with a lot of nonsensical stuff.  If the hexes were something like 8x or 10x smaller, then it would make more sense.  Maybe even 2x or 4x smaller would work, but I don't know.  It would still feel pretty tight, I think.  For SE, we experimented with a lot of height mapping stuff, but ultimately discarded all of it the same as Civ:BE did, because it was a case where "the juice wasn't worth the squeeze."  In our case, there were a lot of other systems that we could focus on without that.


Anyway, don't take this as a defense of Civ:BE, as I haven't even played it.  I understand that opinion is mixed at best there.  My main opinion is that if they wanted to do all of the things that you're describing, they would have been best advised to get rid of hexes all together and just build freeform.  I think that all the things that people were wanting (terrain deformation, etc) could have worked brilliantly, then.  As it is, I think that with the choice of hexes -- and in particular the size of hexes they have -- that kind of trapped them out of doing those things.  Make of that what you will, and that's just my opinion.

And in regards to our own hex game, I wound up going with hexes smaller than what they have, but still quite large.  But taking cues from physical wargaming titles and not trying to do partial tiles, etc.  I think that the system works really well visually, though it's a bit more intentionally abstract when it comes to landscapes (I think it's gorgeous, though).  I honestly feel like the best hex games should flaunt their hexes rather than trying to hide them.  You do square tile-based stuff out of necessity, and generally try to hide the tile-based nature of it.  But I can't think of any case where hexes have to be done out of necessity.  When you do hexes, wear them proudly on your sleeve! ;)
Have ideas or bug reports for one of our games?  Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline nas1m

  • Master Member
  • *****
  • Posts: 1,268
Re: Let's talk about HEX based games and how they stopped evolving
« Reply #2 on: October 27, 2014, 11:11:49 am »
And in regards to our own hex game, I wound up going with hexes smaller than what they have, but still quite large.  But taking cues from physical wargaming titles and not trying to do partial tiles, etc.  I think that the system works really well visually, though it's a bit more intentionally abstract when it comes to landscapes (I think it's gorgeous, though).  I honestly feel like the best hex games should flaunt their hexes rather than trying to hide them.  You do square tile-based stuff out of necessity, and generally try to hide the tile-based nature of it.  But I can't think of any case where hexes have to be done out of necessity.  When you do hexes, wear them proudly on your sleeve! ;)
Not to derail the original topic, but: Doesn't this just scream for another SE teaser ;)? It has been a while...
Craving some more color and variety in your next Bionic run? Grab a boost and a couple of custom floors!

Offline x4000

  • Chris McElligott Park, Arcen Founder and Lead Dev
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 31,651
Re: Let's talk about HEX based games and how they stopped evolving
« Reply #3 on: October 27, 2014, 11:27:31 am »
And in regards to our own hex game, I wound up going with hexes smaller than what they have, but still quite large.  But taking cues from physical wargaming titles and not trying to do partial tiles, etc.  I think that the system works really well visually, though it's a bit more intentionally abstract when it comes to landscapes (I think it's gorgeous, though).  I honestly feel like the best hex games should flaunt their hexes rather than trying to hide them.  You do square tile-based stuff out of necessity, and generally try to hide the tile-based nature of it.  But I can't think of any case where hexes have to be done out of necessity.  When you do hexes, wear them proudly on your sleeve! ;)
Not to derail the original topic, but: Doesn't this just scream for another SE teaser ;)? It has been a while...

Sure, here's a bit. :)

http://www.arcengames.com/forums/index.php/topic,16506.msg182276.html#msg182276
http://www.arcengames.com/forums/index.php/topic,16489.msg182274.html#msg182274
Have ideas or bug reports for one of our games?  Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline eRe4s3r

  • Core Member Mark II
  • *****
  • Posts: 2,825
Re: Let's talk about HEX based games and how they stopped evolving
« Reply #4 on: October 27, 2014, 01:49:18 pm »
Oh thank you for replying ;) I am actually a bit baffled why I didn't draw the conclusion myself.. you are perfectly right, if doing such detail is wanted maybe hexes are a thing that is absolutely pointless. But then why are games like CIV5 doing things with hexes that clearly do not work with them? (I mean, the farms are UNDERWATER near the coast-line and road textures extremely ugly blend over farm textures..

The reason I still like hexes though is exactly as you say, it gives clear visual feedback of adjacency and it is obvious how many "tiles" away something is. If you did this free-form RTS style that would not be the game I envision. I like turns, they allow to progress things in bigger steps than rts games. They allow for more advanced AI and for more advanced gameplay in-between turns. But I don't like hexes when the artists that make assets for them (talking about BE and CIV5 more or less) use them in a way that is downright ugly. I mean if your engine can't handle roads properly, why make roads a texture on top of everything else to begin with?

Anyway, judging from your sneak peek your graphics look a LOT more clearer and stylish. I have less problems if you make a game that it's own style. But games like CIV5/BE/Endless Legend clearly want to strife for realism. So why are they even using hexes? Would a completely grid-less system (so.. range based) not be vastly superior?

Mhhh, anyhow you are right it's a huge bother to connect borders with hexes. More so if you do sprites, but all these modern games all use 3d assets. It is absurd. They could create fantastical detailed scenes, instead they use hexes and then even use them "wrongly". I mean those are professional game developers no? :)

And as you know, I am a big fan of abstraction ;) If you don't even INTEND of being realistic within a hex based system then that can only be a good thing. And the more a game has it's own style and the less it tries to look realistic, the better.

So far I never even considered how much we lost by having games go hex based.... mhhh

Ps.: I only even came to this entire thought experiment because the lazily done roads and coasts in CIV:BE annoyed me so much. ;P

PPs.: I like your linked screenshot sneak peek very much ;) The terrain looks really really nice. And I don't mind when games go for style within their .. style instead of realism for the sake of it.
« Last Edit: October 27, 2014, 01:56:11 pm by eRe4s3r »
Proud member of the Initiative for Bigger Weapons EV. - Bringer of Additive Blended Doom - Vote for Lore, get free cookie

Offline relmz32

  • Full Member Mark II
  • ***
  • Posts: 187
Re: Let's talk about HEX based games and how they stopped evolving
« Reply #5 on: October 27, 2014, 02:56:07 pm »
...
4. Hexes are by nature abstract.  I feel like the more people try to hide that abstractness, the less the hexes have a point in general.  My direction to the artists for our own upcoming hex game was "let's not hide the hexes, let's flaunt them."  I feel like having tiles that are merging things like coastline plus ocean are inherently messy and confusing both visually and conceptually (as a player), and so I prefer to have something that is inherently a little more abstract, but proud of it.  Hexes can be done in a really gorgeous way, and personally I get excited just seeing them...
This.
Point 4 makes me really excited to see what you guys do with SE.

Also, I have a question regarding how the planet is mapped in SE, how do you guys handle wrapping? The reason why i ask is that cylendrical wrapping, while popular and pretty easy to implement, doesn't actaully do a good job of representing an actual spherical planet.

A programmer had a problem. She thought to herself, "I know, I'll solve it with threads!". has Now problems. two she.

Offline x4000

  • Chris McElligott Park, Arcen Founder and Lead Dev
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 31,651
Re: Let's talk about HEX based games and how they stopped evolving
« Reply #6 on: October 27, 2014, 03:38:28 pm »
Thanks, guys!  All makes perfect sense.  And glad you like the screenshots. :)

To the question about wrapping, I put that in the other thread to try to avoid derailing this one: http://www.arcengames.com/forums/index.php/topic,16506.msg182290.html#msg182290
Have ideas or bug reports for one of our games?  Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline lauragibs

  • Newbie
  • *
  • Posts: 2
Re: Let's talk about HEX based games and how they stopped evolving
« Reply #7 on: December 06, 2014, 04:24:33 am »
i really like this game a lot, although they should make more versions

Offline Cyborg

  • Master Member Mark III
  • *****
  • Posts: 1,957
Re: Let's talk about HEX based games and how they stopped evolving
« Reply #8 on: December 07, 2014, 08:51:40 pm »
It can be done worse. As much as I love Europa 4, how about that battle "system?" Have you ever seen such a monstrosity of variables that are near impossible to calculate beforehand? First, you have to figure out by looking at the map if you crossed a river, and even then there are situations where it looks like you didn't cross one but you actually did! There are no hexes here. The point is, graphics don't necessarily solve the problem.
Kahuna strategy guide:
http://www.arcengames.com/forums/index.php/topic,13369.0.html

Suggestions, bugs? Don't be lazy, give back:
http://www.arcengames.com/mantisbt/

Planetcracker. Believe it.

The stigma of hunger. http://wayw.re/Vi12BK

Offline WingedKagouti

  • Jr. Member
  • **
  • Posts: 52
Re: Let's talk about HEX based games and how they stopped evolving
« Reply #9 on: December 08, 2014, 09:33:29 am »
I mean those are professional game developers no? :)
One thing people often forget is that being a professional doesn't magically make a person superior in for the tasks they perform in their job. And often shortcuts are being taken due to "economical concerns", even by those with enough skill to do a better job with just a bit more time.

"Cheap, Good and Fast. You can pick any two you want, but only two."

Offline Draco18s

  • Resident Velociraptor
  • Core Member Mark V
  • *****
  • Posts: 4,251
Re: Let's talk about HEX based games and how they stopped evolving
« Reply #10 on: December 08, 2014, 11:58:59 am »
"Cheap, Good and Fast. You can pick any two you want, but only two."

Doesn't apply to just software.  Anything where you're paying for a product, "Speed, price, quality: pick any two."

My boss constantly tries to pick "speed quality" when the client is picking all three.  Just an hour ago he tried to figure out why videos for a project were "taking 10 seconds to load" on his wife's old, slow laptop and trying to figure out why and if we could fix it "in case the client mentions it."  And my response was "no" and "its a browser/machine/internet speed issue, we have no control over that other than to compress the videos even more and we can't without them looking like garbage."