{"id":1136,"date":"2010-02-09T21:28:12","date_gmt":"2010-02-09T10:28:12","guid":{"rendered":"http:\/\/www.vectorstorm.org\/?p=1136"},"modified":"2010-02-10T22:53:09","modified_gmt":"2010-02-10T11:53:09","slug":"the-first-bridge","status":"publish","type":"post","link":"https:\/\/www.vectorstorm.com.au\/2010\/02\/09\/the-first-bridge\/","title":{"rendered":"The first bridge"},"content":{"rendered":"

\"\"<\/a>So I decided to use my existing “road” functionality to handle terrain placements; \u00a0in the same way that you can place roads to link together buildings, you’ll be able to place “terrain strokes” (todo: \u00a0find a name for these that doesn’t suck) to adjust the terrain in various areas.<\/p>\n

This had some advantages and disadvantages. \u00a0The biggest advantage is that roads already work within MMORPG Tycoon. \u00a0In fact, they’ve been working from a single codebase since version 1.1; \u00a0the same old 2D GUI code for placing and editing them works just as well in 3D.<\/p>\n

The biggest disadvantage is that it means I had to make some big adjustments behind the scenes, to make sure that players don’t try to walk on “terrain strokes” as a shortcut to their destination. \u00a0In effect, I needed to add a “type” to roads, the same way that buildings have different “types”.<\/p>\n

And since I was adding that “type” anyway, I thought, “why not do a quick and dirty bridge?” \u00a0So here it is; \u00a0the very first gravity-defying bridge I built after putting in the code. \u00a0There really aren’t any brains to this first revision of bridge code; \u00a0it travels from one building to another, and just ignores how high it is above the ground. \u00a0There’s currently no logic for adding supports or a graceful arch if it’s travelling between two buildings at the same height, or for keeping players from trying to climb onto the bridge in the middle of its span, etc. \u00a0That’s all stuff for milestone 2 or later.<\/p>\n

In this case, the bridge is travelling up into the region borders. \u00a0In the final game, you won’t be able to do that; \u00a0the region borders won’t be able to be built upon, except for a special “mountain pass” building (or terrain type, perhaps? \u00a0Must think about that.) which will open up the impassable border between regions, and allow subscribers to travel from one region to another. \u00a0In the final game, roads (and road-like objects) won’t be able to enter or cross region borders. \u00a0(In milestone 1, nothing will stop you from doing it, but it’ll be likely to crash if you do!)<\/p>\n","protected":false},"excerpt":{"rendered":"

So I decided to use my existing “road” functionality to handle terrain placements; \u00a0in the same way that you can place roads to link together buildings, you’ll be able to place “terrain strokes” (todo: \u00a0find a name for these that doesn’t suck) to adjust the terrain in various areas. This had some advantages and disadvantages.…<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"spay_email":""},"categories":[24,25],"tags":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/po9WK-ik","_links":{"self":[{"href":"https:\/\/www.vectorstorm.com.au\/wp-json\/wp\/v2\/posts\/1136"}],"collection":[{"href":"https:\/\/www.vectorstorm.com.au\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.vectorstorm.com.au\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.vectorstorm.com.au\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.vectorstorm.com.au\/wp-json\/wp\/v2\/comments?post=1136"}],"version-history":[{"count":0,"href":"https:\/\/www.vectorstorm.com.au\/wp-json\/wp\/v2\/posts\/1136\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.vectorstorm.com.au\/wp-json\/wp\/v2\/media?parent=1136"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.vectorstorm.com.au\/wp-json\/wp\/v2\/categories?post=1136"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.vectorstorm.com.au\/wp-json\/wp\/v2\/tags?post=1136"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}