Should rivers be between map tiles, or on map tiles?

I want to start a debate regarding whether rivers should run between squares or on squares. This may or may not be an important issue for Elemental, but down the road this will have a big impact on what we can do with mods. I want to get people talking about this early because this issue might involve changing the game engine. Modding is going to be an important part of Elemental and those of us with modding experience ought to be thinking ahead and thinking out loud.

Back in the old days, square tiled game maps used to run rivers through the center of each map tile. This natural, obvious setup allowed ships to travel along rivers, as they are known to do in the real world. Take a look at this screenshot from Merchant Prince II:

I took this picture of Budapest because the river running through it, the Danube, is a major trade corridor. I think it is very cool and fun that you can sail from Venice, through the Black Sea and up the Danube all the way to Budapest by boat! This doesn’t just happen in the real world either, as witnessed by this scene from a popular fantasy movie:

By the time Civ3 and Civ4 came around we were seeing rivers that actually flowed between map tiles. I am not sure why the Civ series switched to this method of presenting rivers.

The only advantage that I can see for presenting rivers this way is that if you want to assign a penalty for crossing a river to attack another tile, having the player actually ‘cross’ the river can make this mechanic more clear. However, using the old style method of river tiles, it is also very easy to give a river tile a defensive bonus. For example, in the Total War series, whoever is defending a river tile can set up his defense on the opposite bank of the attackers approach. It works just fine.

Aside from that one slight advantage, I can see only disadvantages. For one thing, the later Civ series also uses rivers as lines of communication like roads, but because the rivers are between the tiles and the roads are on the tiles, it can be very unclear when cities and resources are connected by a river/road combination. It takes a bit of investigation by an experienced player to predict the results, and is very unintuitive.

The biggest disadvantage of running the rivers between tiles is then you cant use them for units that travel on water! That’s a big disadvantage in my opinion. I can’t make a Merchant Prince mod with that! I can’t even make an LotR mod unless I leave out stuff! ^^^ According to the existing Elemental screenshots, so far at this early stage they are going the Civ4 route and running rivers between tiles.

I for one would like to see them redo the river mechanics from scratch, and do it the old fashioned way, on the tiles. I know it would take alot of work to make navigable rivers. Units in Elemental arent simply icons as in earlier games, they need to fit into a 3D world. Maybe it's too much work, but I hope not.

What do you guys think?

64,229 views 31 replies
Reply #1 Top

I think it's worth considering. 

The only advantage that I can see for presenting rivers this way is that if you want to assign a penalty for crossing a river to attack another tile
The defender's 'defense behind a river' bonus can be applied if the attackers are on one of your river squares, so that shouldn't be an issue.

Ships being able to travel down rivers, assuming the river is of sufficient size (and smaller rivers/creeks can exist, just not being navigable), adds to the game.  It would also allow fishing on rivers (and who could be against that?  :) )

This might make mapmaking easier.  As anyone whose tried to place rivers in Civ4 can attest, their method can be tricky.

 

Reply #2 Top

The big benefit of having rivers run between tiles is that they look more realistic.  This is because they are more to scale, and the fact that they don't have to fill up entire squares makes it look more natural.

I'm all for rivers on tiles - I never realized how much of a pain it was in Civ3/4 until you mentioned it and went "Oh yeah!"

This, however, causes all sorts of scaling issues - either:

A:  You make the river small in the middle of the tile.  This doesn't make it big enough for water units, and thus doesn't solve our problem

B) You make the river big.  This leaves us with space for units, but makes the mountains/cities look a lot smaller by comparison.

Reply #3 Top

If rivers are on the tile they don't have to be a static size. You could program in that every time a river joins the graphic depiction of the river gets wider.The smaller rivers could be ignored by foot traffic and the larger ones you then have to either build a bridge or go around... as people used to do.

I like the idea of having them on tiles because you could make better use of seacraft. Trade by river and piracy by river should be important in my opinion. Plus having my Fallen go "a Viking" is appealing.

Reply #4 Top

Quoting FutileEmotion, reply 2
The big benefit of having rivers run between tiles is that they look more realistic.  This is because they are more to scale, and the fact that they don't have to fill up entire squares makes it look more natural.

I'm all for rivers on tiles - I never realized how much of a pain it was in Civ3/4 until you mentioned it and went "Oh yeah!"

This, however, causes all sorts of scaling issues - either:

A:  You make the river small in the middle of the tile.  This doesn't make it big enough for water units, and thus doesn't solve our problem

You make the river big.  This leaves us with space for units, but makes the mountains/cities look a lot smaller by comparison.

Good point. I think that it's ok to have the ships bigger than the river when your zoomed out, and fit in the river when you zoom all the way in. If you look at the different zoom levels on the engine screenshots, you can see that units get smaller as you zoom in. I think it might work. The rivers will have to be modeled in 3D though, currently they are just a texture.

Reply #5 Top

Rivers on tiles would be so much better than rivers between tiles!

As has already been said, they don't need to occupy the entire tile, but a tile with a river passing through it would allow both land and water travel. There is one other disadvantage of tile-based rivers, though - movement penalties. If you want to impose a movement penalty for cross a river, do you impose it when you move onto a river tile, or when you move off of it? What if you move onto a river tile from the left, and then turn around and head back left? This would have to be dealt with, as well.

Nonetheless rivers as tiles would be great to see, allowing for river trade and travel in an intuitive and straightforward manner!

Also, I wonder if it'd be possible for them to just shift the river graphics by half a tile in each direction as a quickfix, and add a 'river' terrain tag? This should work at least on the cloth map; but from the screenshots of the 3D map rivers appear to still just be textures so it should also work there... Other than that the only necessary graphical change would be source and endpoints. The sources could also just be shifted accordingly, but the river delta graphics would have to be 'rescaled' (wrong word but I can't think of the right one) so that it ends up in the right place. There still seems to be lots of work to do regarding river deltas anyway, seeing as how they are often overlayd on top of the the ocean anyway...

Reply #6 Top

Quoting pigeonpigeon, reply 5
If you want to impose a movement penalty for cross a river, do you impose it when you move onto a river tile, or when you move off of it? What if you move onto a river tile from the left, and then turn around and head back left? This would have to be dealt with, as well.
The old Avalon Hill wargames generally assessed the movement penalty when moving from a river hex to a non-river hex.  I'd look some of their games up for quotes but they're boxed up.  Blitzkrieg, for example, had rivers in hexes, not between.

Blitzkrieg map

Defensive bonuses were given if all attackers were on river non-river hexes or a different branch(es) of the river.

Reply #7 Top

Quoting Rishkith, reply 3
If rivers are on the tile they don't have to be a static size. You could program in that every time a river joins the graphic depiction of the river gets wider.The smaller rivers could be ignored by foot traffic and the larger ones you then have to either build a bridge or go around... as people used to do.

That's a great idea.

Yes rivers should be on tiles rather than in between.  The size of the rivers should then vary from tiny streams that can be forded by land troops to huge waterways that naval units can traverse.

Reply #8 Top

I agree, rivers on tiles is the way to go, even if it's just for the sake of modders.

Reply #9 Top

Regarding rivers, it might be nice to include:

1.  Navigation only in the downstream, more level areas of a river.  The upper reaches of a river, particularly if it is in rough or mountain terraine, ought not to be navigable.  Where rivers are navigable, going downstream ought to be faster than going upstream.  Rivers flowing into major swamps may not be navigable thru the swamps, without the units having special training/abilities (civilizations with the water/fishermen base would probably be more skilled, for example).

2.  Rivers ought not to be fordable everywhere.  Some tiles may have a slow and shallow spot on the river where armies could cross easier, other spots may be crossed with difficulty and possible loss of troops, and many spots may be uncrossable.  This would make the fords tactical/strategic chokepoints.

Reply #10 Top

Very good post actually, Cephalo.  I think rivers should play a very important role in considering city construction, as well as commerce.  With that in mind, I think rivers between tiles would add a lot more access to them.

Reply #11 Top

Gonna have to veto this converstaion...we originally had rivers ON tiles and, after discussing it over internally (and with some insight from Soren Johnson and the civ4 team) we're definatly going with the 'inbetween tiles' method.

The crux of the matter is that rivers are interesting and strategic from one major point: which side of the river are you on? When placed between tiles this logic is built into the map system...youre on either on tile x or tile x+1. Placing the river down the center of the tile requires a secondary system to be built in to determine such things and clutters up logic and movement code. It may sound like a better solution, but seriously consider all ALL the ways rivers can merge in a tile based system.

Plus most of the above suggestions can be built into the 'between tiles' river system, so everyone should be happy :)

Reply #12 Top

rivers "in between" tiles should be able to naturally expand to large sizes close to the river delta, and ships should be able to navigate among a large portion of wide rivers :)

Also, if (like I think) cities are going to slowly spread to be larger than one tile (like up to 4 or 5 tiles), then you can naturally have several parts of a city be built around a river. Especially cool if it could be built around a "wide" river (like the screen-shot)

Reply #13 Top

Quoting Tasunke, reply 12
rivers "in between" tiles should be able to naturally expand to large sizes close to the river delta, and ships should be able to navigate among a large portion of wide rivers

Also, if (like I think) cities are going to slowly spread to be larger than one tile (like up to 4 or 5 tiles), then you can naturally have several parts of a city be built around a river. Especially cool if it could be built around a "wide" river (like the screen-shot)

Well, if your ship is navigating a river, how do you describe it's coordinates if rivers run between tiles? I'm thinking that if the rivers run between tiles, then navigation by river is out for this game engine. Is that not correct?

Reply #14 Top

I think it would be possible, but I don't know the technical aspects. Perhaps BoogieBac could give some insight?

Is it possible for River-navigation (or any navigation for that matter) in-between tiles? can those locations be stored? are they purely aesthetic? Will land and naval based movement vary? (navy on the lines, land on the spaces)

Reply #15 Top

Quoting BoogieBac, reply 11

 It may sound like a better solution, but seriously consider all ALL the ways rivers can merge in a tile based system.

Merging is the same actually between the two systems. If you have 0 - 3 inputs to a river junction and 1 output, you can have a complete drainage system. In fact, the Civ4 screenshot in the OP has all varieties of these junctions. 3 ins 1 out, 2 ins 1 out, 1 in 1 out, and 0 ins 1 out(river source). The same is true for between tile rivers and on tile rivers on a square grid. This becomes nightmarish when you are dealing with hextiles, but with square tiles it stays pretty sane.

Reply #16 Top

I would still want to push for 1 tile wide bodies of water that might appear to be a river to the common eye forming (more like inland seas, or great lakes)    just because it spices up the land formation and you can sail large ships on it, but also build like a 1 tile "bridge" across it.

Reply #17 Top

For merging rivers with 2D tiles(like on the cloth map for instance) where you want to graphically display the flow direction of the river, you need the following number of unique tiles. The same is true for between tile rivers and on tile rivers.

4 x (3 in 1 out)

12 x (2 in 1 out)

12 x (1 in 1 out)

4 x (0 in 1 out)

Actually since all these tile can be on an exit delta next to the ocean, which would require special graphics all those x 2.

Reply #18 Top

yea, I think all "bridgable" rivers should be in-between tiles, although I would like for ship movement to be possible in parts, and if not ... having an option to brige over 1-tile wide "ocean" might seem appropriate. And to give those upon a bridge special properties ... like "cramped" and "no cover", but also "increased movement" cause they are on a road.

Reply #19 Top

I think rivers should run OVER map tiles. Sort of like a pretty water rainbow arcing over the land. Just like they do in real life.

Reply #20 Top

I do not understand what spurred this Satirical comment ... regardless, while focusing on land battles, it seems IN-between tiles is the superior choice. I only hope that Elemental Engine can handle complex locations of "other" units in-between tiles as well, so that you can have units on a boat, in-between tiles, and it being able to be handled by the engine.

I think this is really more of a programming challenge than a strategic one (since strategically one could make intuitive determinations no matter where the river is) ... so I would like to know if units existing in-between tiles will be possible (only via rivers, or perhaps underground tunnels, of course. maybe even a modded-in tangle-vine road, or something)

Reply #21 Top

Quoting Tasunke, reply 20
I do not understand what spurred this Satirical comment ... regardless, while focusing on land battles, it seems IN-between tiles is the superior choice. I only hope that Elemental Engine can handle complex locations of "other" units in-between tiles as well, so that you can have units on a boat, in-between tiles, and it being able to be handled by the engine.

I think this is really more of a programming challenge than a strategic one (since strategically one could make intuitive determinations no matter where the river is) ... so I would like to know if units existing in-between tiles will be possible (only via rivers, or perhaps underground tunnels, of course. maybe even a modded-in tangle-vine road, or something)

Well, a tile is really just a discreet point on a grid with an integer x and y coordinate. If you want to move units 'between' tiles you are essentially layering a new 'water' coordinate system on top of the land coordinate system. It could be made to work, but it's definately not the simple way to do it. 

What if you have a flying unit that wants to attack a ship? What coordinate system should it use?

Reply #22 Top

Damn. I was sure I had posted in this thread about the quantity of art needed if you did in-plot rather than between-plot and the fact that the former was harder for art but easier for terrain generation.

Reply #23 Top

Well, for units that are flying or amphibious they would be able to enter the "in-between" of tiles in places of wide water, and I would assume flying units could enter the "in-between" on mountain-tops. Anyways, if it has a tag that it can "enter" spaces of water, (assuming that a distinction is made between crossable river and "wide" river, which would need a bridge/road system to get across) ... and could either select the next square over, or to attack any units in the river. A flying unit wouldn't be able to end its turn in a river (nor ocean tile imho) unless there was a boat with a tag that could occupy flying units of that size-tag.

I didn't say it would be easy, but Im trying to engender the discussion of how many things we lose when we stick with rivers in-between tiles, and also discussion on how badly we even "want" units to be able to move along rivers.

If river-usage is sub-critical, then obviously in-between tiles is the better system. Another question you could ask is how similar could we make the in-between system to work like the tile system. Most likely there will be a large absence of naval and aerial units, although I think the systems need to be in-place to accomadate the valid actions which we want to be valid. AKA having units (naval/air/boarding) able to attack into river grid and out-from river grid ... and if a land based melee unit with grappling hooks can be modded to board a pirate vessel on the river. Grappling hook would add the tag "attack into" but would take an initial damage hit from whatever firing capabilities the boat has, and then start on ropes, scaling into the boat, with a sort of up-ladder "wall scaling" scenario. Or even starting upon the boat, to fight the other melee (if any), and the victor gets control of the boat.

This is what I am saying ... "attack into" tags for units that can interact with the actors inside the river tile, and perhaps an "attack from" tag to prevent a bugged naval battle on land xD

Although, the real question is "do we want big inland rivers to matter" ... and if the answer is no, then the current system is the best.

Reply #24 Top

Exactly, that is the question. Do we want navigable rivers? Civ4 did NOT have them, but then again they set out only to make Civ4 and they made it moddable as something of an afterthought.

One of the stated goals of the Elemantal engine is to be a platform for many land based TBS games. In that context, I think making navigable rivers impossible carries some more weight. What exactly are you gaining from this considerable sacrifice of a TBS gaming tradition?

If you want both navigable rivers and 'in-between' rivers, I'm guessing that will require a solution that is far more cumbersome than simple 'on tile' rivers.

So let's just come out and say it. There will be no navigable rivers in either Elemental or any Elemental engine based mod. Are we OK with that? 

Reply #25 Top

as long as there is a possibility within the engine to create a brige across a 1-tile wide stretch of water/ocean, then FINE BY ME! I can make my own rivers damnit! :P