Patch: Town road layout

Forum for technical discussions regarding development. If you have a general suggestion, problem or comment, please use one of the other forums.

Moderator: OpenTTD Developers

MaxKnight
Engineer
Engineer
Posts: 4
Joined: 23 Apr 2007 02:47
Location: Springfield, Ohio

Slight possible bug

Post by MaxKnight »

Please excuse this bump, I wasn't sure whether to bring it up here or not since it's inclusion into Trunk.

It seems that it doesn't detect slopes properly when it wants to build junctions. If the tile a junction is supposed to be built on is sloped, it still builds the junction, but it gets built on foundations and is only three-way, with the last direction the one it came from. It appears to be a bug to me, but I wasn't sure if it needed to be reported to FlySpray or not. I've included a screenshot of the occurence.
Attachments
Transport Transport, 14th Aug 1922.png
Junctions and slopes do no mix.
(195.17 KiB) Downloaded 266 times
User avatar
skidd13
OpenTTD Developer
OpenTTD Developer
Posts: 522
Joined: 03 Mar 2005 10:49
Location: Germany

Re: Slight possible bug

Post by skidd13 »

MaxKnight wrote:Please excuse this bump, I wasn't sure whether to bring it up here or not since it's inclusion into Trunk.

It seems that it doesn't detect slopes properly when it wants to build junctions. If the tile a junction is supposed to be built on is sloped, it still builds the junction, but it gets built on foundations and is only three-way, with the last direction the one it came from. It appears to be a bug to me, but I wasn't sure if it needed to be reported to FlySpray or not. I've included a screenshot of the occurence.
I've no problem with this bump. ;)
This behavior is intended. Well most of it. The three way is build because it is the most connective street-junction. Sure it looks a bit wired in this case. In code I marked this already, but from the coding point I don't know a nice and easy solution (yet).
What does that mean - the circumstances? I determine what circumstances prevail. -- Napoleon Bonaparte
---
If we cannot end now our differences, at least we can help make the world safe for diversity. -- John F. Kennedy
---
Our problems are man-made, therefore they may be solved by man. No problem of human destiny is beyond human beings. -- John F. Kennedy
MaxKnight
Engineer
Engineer
Posts: 4
Joined: 23 Apr 2007 02:47
Location: Springfield, Ohio

Post by MaxKnight »

Now, I solved the problem for that town by demolishing those ugly roads and lowering the land so that the junction would be on flat land.

Since towns are capable of minor terraforming in order to build roads and whatnot, couldn't you add a check for where these junctions are to be built and force the town to try to lower the entire tile to the height of the road leading into it? If it's not possible, then skip trying to expand that direction and go another way. Would this be possible in code? I know C++, but not enough to figure out how to do something like this.
User avatar
skidd13
OpenTTD Developer
OpenTTD Developer
Posts: 522
Joined: 03 Mar 2005 10:49
Location: Germany

Post by skidd13 »

MaxKnight wrote:Now, I solved the problem for that town by demolishing those ugly roads and lowering the land so that the junction would be on flat land.

Since towns are capable of minor terraforming in order to build roads and whatnot, couldn't you add a check for where these junctions are to be built and force the town to try to lower the entire tile to the height of the road leading into it? If it's not possible, then skip trying to expand that direction and go another way. Would this be possible in code? I know C++, but not enough to figure out how to do something like this.
I get what you mean, but the selection where to grow the city is random (more or less). If you want to check from where the city opticaly grow you have to check the tiles around the target one and do some math there... That would cause many if cascades... not very nice. I decided to check only the slopes and not the growing direction. It looks nicer in code if you have a clean switch instead of 20-30 if cascades... ;) IMHO
What does that mean - the circumstances? I determine what circumstances prevail. -- Napoleon Bonaparte
---
If we cannot end now our differences, at least we can help make the world safe for diversity. -- John F. Kennedy
---
Our problems are man-made, therefore they may be solved by man. No problem of human destiny is beyond human beings. -- John F. Kennedy
User avatar
skidd13
OpenTTD Developer
OpenTTD Developer
Posts: 522
Joined: 03 Mar 2005 10:49
Location: Germany

Post by skidd13 »

I'm working on the town again. ATM I'm trying to get rid of the inconnective dead ends created by the town road layout.

Here is the first (not working as expected ATM) diff.

Edit: small fix.
Attachments
do_not_build_inconnective_roads_r10508.patch
(2.83 KiB) Downloaded 125 times
Last edited by skidd13 on 11 Jul 2007 16:17, edited 1 time in total.
What does that mean - the circumstances? I determine what circumstances prevail. -- Napoleon Bonaparte
---
If we cannot end now our differences, at least we can help make the world safe for diversity. -- John F. Kennedy
---
Our problems are man-made, therefore they may be solved by man. No problem of human destiny is beyond human beings. -- John F. Kennedy
Chicago Rail Authority
Traffic Manager
Traffic Manager
Posts: 134
Joined: 09 Nov 2006 23:38

Post by Chicago Rail Authority »

Not sure I follow... what is it about dead-ends that you're trying to get rid of?
Many thanks to those who make OTTD and TTDP possible.
User avatar
skidd13
OpenTTD Developer
OpenTTD Developer
Posts: 522
Joined: 03 Mar 2005 10:49
Location: Germany

Post by skidd13 »

Chicago Rail Authority wrote:Not sure I follow... what is it about dead-ends that you're trying to get rid of?
Roads leading into water, etc.
What does that mean - the circumstances? I determine what circumstances prevail. -- Napoleon Bonaparte
---
If we cannot end now our differences, at least we can help make the world safe for diversity. -- John F. Kennedy
---
Our problems are man-made, therefore they may be solved by man. No problem of human destiny is beyond human beings. -- John F. Kennedy
MarkyParky
Engineer
Engineer
Posts: 89
Joined: 20 Nov 2003 15:20

Post by MarkyParky »

Hello,

do you think it would be possible to implement "town builds no roads" to scenario editor as well? It would be handy to create custom city layouts by simply drawing the streets first, than building the city in the middle and expanding it just by clicking the button in editor...
User avatar
belugas
OpenTTD Developer
OpenTTD Developer
Posts: 1507
Joined: 05 Apr 2005 01:48
Location: Deep down the deepest blue
Contact:

Post by belugas »

It is possible, but it has been objected.
If you really do want to create your own layout, it is quite easy. Simply create a small town and deal with the road yourself.
If you are not ready to work a bit for your ideas, it means they don't count much for you.
OpenTTD and Realism? Well... Here are a few thoughs on the matter.
He he he he
------------------------------------------------------------
Music from the Bloody Time Zones
User avatar
Bilbo
Tycoon
Tycoon
Posts: 1710
Joined: 06 Jun 2007 21:07
Location: Czech Republic

Post by Bilbo »

belugas wrote:It is possible, but it has been objected.
If you really do want to create your own layout, it is quite easy. Simply create a small town and deal with the road yourself.
Yes, build small city, bulldoze it completely, then add your own street layout and then "expand" the city for letting it build the buildings
If you need something, do it yourself or it will be never done.

My patches: Extra large maps (1048576 high, 1048576 wide) (FS#1059), Vehicle + Town + Industry console commands (FS#1060), few minor patches (FS#2820, FS#1521, FS#2837, FS#2843), AI debugging facility

Other: Very large ships NewGRF, Bilbo's multiplayer patch pack v5 (for OpenTTD 0.7.3)
Mchl
Director
Director
Posts: 611
Joined: 05 Jan 2007 15:50
Location: Poland
Contact:

Post by Mchl »

I just got an idea. Would it be possible to make cities build bridges or tunnels when crossing railways? I don't mean there should be no level crossings, but from time to time, a town could afford a bridge ;)

Not sure if it is in scope of this patch, probably not :oops:
User avatar
Bilbo
Tycoon
Tycoon
Posts: 1710
Joined: 06 Jun 2007 21:07
Location: Czech Republic

Post by Bilbo »

Mchl wrote:I just got an idea. Would it be possible to make cities build bridges or tunnels when crossing railways? I don't mean there should be no level crossings, but from time to time, a town could afford a bridge ;)

Not sure if it is in scope of this patch, probably not :oops:
Definitely when crossing maglev track, since maglev crossings are rather crossnigs of death. Maybe the chance to biuld bridge instead of crossing would depend on max. speed of vehicle that could go over it. For <100 km/h never build a bridge, for >250 km/h almost always build a bridge, between these two make some linear fade ....
If you need something, do it yourself or it will be never done.

My patches: Extra large maps (1048576 high, 1048576 wide) (FS#1059), Vehicle + Town + Industry console commands (FS#1060), few minor patches (FS#2820, FS#1521, FS#2837, FS#2843), AI debugging facility

Other: Very large ships NewGRF, Bilbo's multiplayer patch pack v5 (for OpenTTD 0.7.3)
User avatar
skidd13
OpenTTD Developer
OpenTTD Developer
Posts: 522
Joined: 03 Mar 2005 10:49
Location: Germany

Post by skidd13 »

Mchl wrote:I just got an idea. Would it be possible to make cities build bridges or tunnels when crossing railways?
Sure it'd be possible. But ATM I' working still on fixing the behavior of the town growth, to something less stupid. Moreover I hope I can simplify the code so that it need less performance.
Last edited by skidd13 on 14 Jul 2007 11:12, edited 1 time in total.
What does that mean - the circumstances? I determine what circumstances prevail. -- Napoleon Bonaparte
---
If we cannot end now our differences, at least we can help make the world safe for diversity. -- John F. Kennedy
---
Our problems are man-made, therefore they may be solved by man. No problem of human destiny is beyond human beings. -- John F. Kennedy
MarkyParky
Engineer
Engineer
Posts: 89
Joined: 20 Nov 2003 15:20

Post by MarkyParky »

Yes, build small city, bulldoze it completely, then add your own street layout and then "expand" the city for letting it build the buildings
That does not work because city builds its own new roads resulting two problems:

a) roads already build becomes messy
b) city keeps expanding new roads so it loses its premade shape
Mchl
Director
Director
Posts: 611
Joined: 05 Jan 2007 15:50
Location: Poland
Contact:

Post by Mchl »

skidd13 wrote:Sure it'd be possible. But ATM I' working still on fixing the behavior of the town growth, to something less stupid. Moreover I hope I can simplify the code so that it need less performance.
What'd you done so far is one of my favourite patches ;)
Good work
User avatar
skidd13
OpenTTD Developer
OpenTTD Developer
Posts: 522
Joined: 03 Mar 2005 10:49
Location: Germany

Re: Patch: Town road layout

Post by skidd13 »

The town road cleanup patch should be functional complete now! :D
  • Features
  • Nicer town surface (no more roads leading into water/houses/etc.)
  • Better town bridges
  • No more strange behavior on slopes (grid layouts)
  • Roadworks will cleanup the road tiles.
I hope you enjoy the patch.

Latest patch is availible at Flyspray -> http://bugs.openttd.org/task/1090

Preview: No manual road improvement!!!
Attachments
Preview (No manual intervention except the cannals)
Preview (No manual intervention except the cannals)
Andoas Transport, 23rd Jul 1950.png (79.07 KiB) Viewed 5043 times
What does that mean - the circumstances? I determine what circumstances prevail. -- Napoleon Bonaparte
---
If we cannot end now our differences, at least we can help make the world safe for diversity. -- John F. Kennedy
---
Our problems are man-made, therefore they may be solved by man. No problem of human destiny is beyond human beings. -- John F. Kennedy
User avatar
kilo.dollar
Traffic Manager
Traffic Manager
Posts: 161
Joined: 02 Jul 2007 08:45
Location: Harare

Re: Patch: Town road layout

Post by kilo.dollar »

Will the patch correct already wrongly-built town roads?
I think that I may never see,
A billboard as lovely as a tree.
Perhaps, unless the billboards start to fall,
I may never see a tree at all.
User avatar
skidd13
OpenTTD Developer
OpenTTD Developer
Posts: 522
Joined: 03 Mar 2005 10:49
Location: Germany

Re: Patch: Town road layout

Post by skidd13 »

kilo.dollar wrote:Will the patch correct already wrongly-built town roads?
skidd13 wrote:
  • Roadworks will cleanup the road tiles.
So yes.
What does that mean - the circumstances? I determine what circumstances prevail. -- Napoleon Bonaparte
---
If we cannot end now our differences, at least we can help make the world safe for diversity. -- John F. Kennedy
---
Our problems are man-made, therefore they may be solved by man. No problem of human destiny is beyond human beings. -- John F. Kennedy
Dave_McMahon
Traffic Manager
Traffic Manager
Posts: 253
Joined: 22 Apr 2005 15:40
Location: Ipswich U.K

Re: Patch: Town road layout

Post by Dave_McMahon »

skidd13

please be so kind as to visit

http://www.tt-forums.net/viewtopic.php?f=32&t=33756

(I didn't know this was your patch, and thank you so much for it! It forms the basis for my games already. I'm basically looking to make the 3x3 grid (Which I always use) to synchronize with all the other towns grids.
David McMahon
User avatar
skidd13
OpenTTD Developer
OpenTTD Developer
Posts: 522
Joined: 03 Mar 2005 10:49
Location: Germany

Re: Patch: Town road layout

Post by skidd13 »

My town road cleanup patch(Take a look to a few posts earlier) does this, so no need to write more stuff. ;) It' isn't in trunk so, there's still some optimisation needed but it's fully working.
What does that mean - the circumstances? I determine what circumstances prevail. -- Napoleon Bonaparte
---
If we cannot end now our differences, at least we can help make the world safe for diversity. -- John F. Kennedy
---
Our problems are man-made, therefore they may be solved by man. No problem of human destiny is beyond human beings. -- John F. Kennedy
Post Reply

Return to “OpenTTD Development”

Who is online

Users browsing this forum: No registered users and 35 guests