ToDoNewRoutes

From TTWiki
Revision as of 08:31, 23 November 2005 by eis_os (talk)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

ToDoNewRoutes -ToDo List for newroutes, newrails-enhancetunnels

ToDoNewRoutes

(WARNING: This is a dev scratchpad to collect ideas for a newroute grf system)

This page is for collecting ideas for newroads (Lakie) and enhancetunnels(eis_os)

to get a united system for allowing more flexible sprite content = newroutes

-=Action 0=-

All TTD routes get devided into logical groups:

||ID|Description|Default Number Of Sprites Needed

00|railroad|?

01|electric|?

02|monorail|?

03|maglev|?

04|roads|19 (4 halfs, 4 slope, 2 straight, 4 corners, 5 junctions)

05|road depot|6 (4 roofs, 2 little corner pieces)

06|road crossing ground|2

07|road pieces on bridges|2

08|railroad depot|8

09|electric depot|8

10|monorail depot|8

11|maglev depot|8

12|railroad on crossing|2

13|electric on crossing|2

14|monorail on crossing|2

15|maglev on crossing|2

16|railroad tunnel ground|4

17|electric tunnel ground|4

18|monorail tunnel ground|4

19|maglev tunnel ground|4

16|railroad tunnel top|8

17|electric tunnel top|8

18|monorail tunnel top|8

19|maglev tunnel top|8

20|road tunnel ground|4

21|road tunnel top|8||

Action 0 has to support for each of the above IDs, serveral standard/default layouts and custom layouts. The custom layouts can be used for more advanced stuff and are selectable via action 2 callback.

How drawing works:

TTDPatch will use a callback (if enabled for id) to get a spritelayout number.

If not, it will use the default number for the layout.

Get Ground Sprite, dword 0 for none

Draw normal sprites until we find 80h (as stations)

Each entry allows some special bit settings in the spritenumber.

(sprite number in recent action 0, TTD Sprite, Special Sprite from other ID !)

-=Action 2=-

Variational Action 2 Variables for New Routes

||Variable|Content

80|Height above ground

81|Terrain type: 0 normal, 1 desert, 2 rainforest, 4 on or above snowline

82|Townzone: 0 none

83|Is under bridge

84|Build year (problem where to store that info)||

-=Other stuff=-

For each tile it would be nice to store the buildyear, maybe year / 10 for support later years, post 2010... = L8 Array.

Content by Lakie and eis_os