Determining vehicle direction on roads

Learn here how to create and use plugins.

Moderator: Plugin Moderators

User avatar
CommanderABab
AB
Posts: 11190
Joined: 07 Jun 2016, 21:12
Plugins: Showcase Store
Version: Beta

Plugin Creator

Platform

Determining vehicle direction on roads

#1

Post by CommanderABab »

How to change the standard movement on roads:

Remember, arrays start with 0. :)
innerr.png
innerr.png (2.04 KiB) Viewed 14871 times

Subtile Order of Each Road Tile:

..........❌
.....❌ 2 ❌
.❌ 0 ❌ 3 ❌
.....❌ 1 ❌
..........❌


Moving direction is the sum of:
(This is from one of the subtiles above; a vehicle has reached this spot, the sum equals the possible directions it can go from here.)
↘️ 1
↗️ 2
↖️ 4
↙️ 8

So, "No direction" would be 0. Thus the vehicle would stop and most likely despawn. All directions would be 15 (for intersections).

An example of dirs for a two way road (24 number array):
(Dirs need to be provided for the frame in the comments, the others are determined from these)

Code: Select all

    "dirs":[
      12,9,3,6 , //0
      1, 1, 8,4,  //1
   
      1,1, 8, 2,  //3
  
      9,9,6,6, //5
    
      1, 3, 12, 6,  //7
  
      13,11,14,7 //15
    ]
An example of dirs for a one way road (64 number array):
(One for each of the first 15 road frames, the others are adapted from these.)

Code: Select all

      "dirs":[
       0,0,0,0,
       1,1,1,1,
       2,2,2,2,
       1,1,9,1,
       4,4,4,4,
       9,9,3,3,
       3,2,2,2,
       3,3,3,3,
       8,8,8,8,
       3,3,1,1,
       6,3,6,3,
       3,3,3,3,
       9,8,9,8,
       9,9,9,9,
       6,6,6,6,
       11,11,11,11
    ]
Note: the numbers in these examples are from my b3.plugin, which allows non-standard road movements so that cars can switch lanes across 3 or more lanes from the inner 2 way road straight sections across the straight sections of the one way roads placed adjacent. Thus, the cars may be seen driving off the side of ramps. :)
User avatar
CommanderABab
AB
Posts: 11190
Joined: 07 Jun 2016, 21:12
Plugins: Showcase Store
Version: Beta

Plugin Creator

Platform

Re: Determining vehicle direction on roads

#2

Post by CommanderABab »

Image


So, you may see the t intersection directions better. :)

7,11,13,14 above are the t intersections. The yellow line though the center has breaks instead of being solid.
User avatar
Mg3094066
Inhabitant of a Supercluster
Posts: 3223
Joined: 28 May 2017, 01:50
Location: Venezuelan Republic of Mexico
Plugins: Showcase Store
Version: Beta

Plugin Creator

Platform

Re: Determining vehicle direction on roads

#3

Post by Mg3094066 »

Aaaaaaa my head will exlode D:
User avatar
CommanderABab
AB
Posts: 11190
Joined: 07 Jun 2016, 21:12
Plugins: Showcase Store
Version: Beta

Plugin Creator

Platform

Re: Determining vehicle direction on roads

#4

Post by CommanderABab »

CommanderABab wrote: 20 Jul 2018, 04:25 How to change the standard movement on roads:

Remember, arrays start with 0. :)
Image


Subtile Order of Each Road Tile:

..........❌
.....❌ 2 ❌
.❌ 0 ❌ 3 ❌
.....❌ 1 ❌
..........❌


Moving direction is the sum of:
(This is from one of the subtiles above; a vehicle has reached this spot, the sum equals the possible directions it can go from here.)
↘️ 1
↗️ 2
↖️ 4
↙️ 8

So, "No direction" would be 0. Thus the vehicle would stop and most likely despawn. All directions would be 15 (for intersections).

An example of dirs for a two way road (24 number array):
(Dirs need to be provided for the frame in the comments, the others are determined from these)

Code: Select all

    "dirs":[
      12,9,3,6 , //0
      1, 1, 8,4,  //1
   
      1,1, 8, 2,  //3
  
      9,9,6,6, //5
    
      1, 3, 12, 6,  //7
  
      13,11,14,7 //15
    ]
An example of dirs for a one way road (64 number array):
(One for each of the first 15 road frames, the others are adapted from these.)

Code: Select all

      "dirs":[
       0,0,0,0,
       1,1,1,1,
       2,2,2,2,
       1,1,9,1,
       4,4,4,4,
       9,9,3,3,
       3,2,2,2,
       3,3,3,3,
       8,8,8,8,
       3,3,1,1,
       6,3,6,3,
       3,3,3,3,
       9,8,9,8,
       9,9,9,9,
       6,6,6,6,
       11,11,11,11
    ]
Note: the numbers in these examples are from my b3.plugin, which allows non-standard road movements so that cars can switch lanes across 3 or more lanes from the inner 2 way road straight sections across the straight sections of the one way roads placed adjacent. Thus, the cars may be seen driving off the side of ramps. :)
User avatar
CommanderABab
AB
Posts: 11190
Joined: 07 Jun 2016, 21:12
Plugins: Showcase Store
Version: Beta

Plugin Creator

Platform

Re: Determining vehicle direction on roads

#5

Post by CommanderABab »

Code: Select all

    "dirs":[
      12,9,3,6 , //0
      1, 1, 8,4,  //1
      1,1, 8, 2,  //3
      9,9,6,6, //5
      8, 1, 6, 6,  //7
      8,1,4,2 //15
    ]

Where will it go?

:)
User avatar
CommanderABab
AB
Posts: 11190
Joined: 07 Jun 2016, 21:12
Plugins: Showcase Store
Version: Beta

Plugin Creator

Platform

Re: Determining vehicle direction on roads

#6

Post by CommanderABab »

Currently used in green road special:

Code: Select all

    "dirs":[
      12,9,3,6 , //0
      1, 1, 8,4,  //1
      1,1, 8, 2,  //3
      9,9,6,6, //5
      9, 1, 6, 6,  //7
      8,1,4,2 //15
    ]
Screenshot_20190704-054947.jpg
User avatar
Lakan Haraya
Metropolitan
Posts: 131
Joined: 28 Mar 2019, 09:34
Location: Philippines
Plugins: Showcase Store
Version: Beta

Plugin Creator

Platform

Re: Determining vehicle direction on roads

#7

Post by Lakan Haraya »

CommanderABab wrote: 06 Jun 2019, 02:40

Code: Select all

    "dirs":[
      12,9,3,6 , //0
      1, 1, 8,4,  //1
      1,1, 8, 2,  //3
      9,9,6,6, //5
      8, 1, 6, 6,  //7
      8,1,4,2 //15
    ]

Where will it go?

:)
Answer key ;)
Conversion to moving directions
↖&↙,↘&↙,↗&↖,↘&↗ //0 (frame 0)
↘,↘,↙,↖ //1 (frame 1)
↘,↘,↙,↗ //3 (frame 3)
↘&↙,↘&↙,↗&↖,↗&↖ //5 (frame 5)
↙,↘,↗&↖,↗&↖ //7 (frame 7)
↙,↘,↖,↗ //15 (frame 15)
:calc
I think frame 0 won't spawn in this moving directions, frame 1 looks like a U-turn slot, frame 3 is a 2-way road turning to the perpendicular row of tiles, frame 5 seems to be a 2-way road bounded intersection for directions 2 ↗ (for 4 ↖) and 8 ↙ (for 1 ↘), frame 7 is more like these sequence... ↙,↘,↖↗,↖↗ ... :)
Frame 15 is fully bounded intersection (I mean, the vehicles will only turn right in the corner)
:bt
To illustrate:
received_1384531225019585-1.jpg
User avatar
CommanderABab
AB
Posts: 11190
Joined: 07 Jun 2016, 21:12
Plugins: Showcase Store
Version: Beta

Plugin Creator

Platform

Re: Determining vehicle direction on roads

#8

Post by CommanderABab »

I'm glad that you are taking interest. :)

Frame 0 is just a single road tile unconnected. The idea here is if a car spawns here, it will move to an adjacent road if available.

Note my restored post above showing what I currently use in Green Road Special.

You are correct about frame 15.

Frame 1 is the end section of the road.

Frame 3 is the curve of the road.

Frame 5 is the straight of the road, connected on both ends. The idea here is that this two way section can be used as a median section between two one way spans. Cars can thus move to the one way spans also, in addition to going straight.

You are correct about frame 7 as you quoted it, but in the actual plugin, cars can also go straight instead of being forced to turn right. But I still do not allow the left turn. And, on the far side of the T, it still behaves as the straight section.
User avatar
Lakan Haraya
Metropolitan
Posts: 131
Joined: 28 Mar 2019, 09:34
Location: Philippines
Plugins: Showcase Store
Version: Beta

Plugin Creator

Platform

Re: Determining vehicle direction on roads

#9

Post by Lakan Haraya »

I thought about it one night... I knew it!
It is interesting for traffic management and I think it could be a helpful tool to create real-life gas station in the game... I mean, passing cars beneath the station's roof... :/
User avatar
choggoba
Townsman
Posts: 50
Joined: 20 Jul 2018, 08:30
Location: Korea
Plugins: Showcase Store

Platform

Re: Determining vehicle direction on roads

#10

Post by choggoba »

I have a question.
1. Why did you define only 0,1,3,5,7,15 frames?
2. May I have the frame number of 16 one way road?
User avatar
ian`
Supporter
Posts: 117
Joined: 04 Apr 2020, 17:36
Location: Indonesien
Plugins: Showcase Store
Version: Beta

Plugin Creator

Platform

Re: Determining vehicle direction on roads

#11

Post by ian` »

choggoba wrote: 09 Jul 2020, 00:32 I have a question.
1. Why did you define only 0,1,3,5,7,15 frames?
I think there are the first number of road rotation frames.

Code: Select all

0              // haven't rotation frames
1 - 2 - 4 - 8
3 - 6 - 9 - 12
5 - 10
7 - 11 - 13 14
15
2. May I have the frame number of 16 one way road?
Yes, just count the frames from 1 not 0. lol
If you mean there are be more than 64 arrays, i think you can't and what for is it?
User avatar
mbetixz
Villager
Posts: 16
Joined: 26 Mar 2019, 23:29
Location: Indonesia
Plugins: Showcase Store
Version: Beta
Contact:

Platform

Re: Determining vehicle direction on roads

#12

Post by mbetixz »

thanks for awesome tutorial, its will be helpful now 😊
User avatar
imajoke
Inhabitant of a Conurbation
Posts: 532
Joined: 27 Oct 2019, 02:39
Plugins: Showcase Store
Version: Beta

Re: Determining vehicle direction on roads

#13

Post by imajoke »

Can I have the dirs for the actual one way road? I still want to make a road where cars can pass (I dont care about if its safe for them or not)
User avatar
CERRERA
Townsman
Posts: 48
Joined: 25 Jan 2020, 06:19
Location: Philippines
Plugins: Showcase Store
Version: Beta
Contact:

Plugin Creator

Platform

Re: Determining vehicle direction on roads

#14

Post by CERRERA »

Hello
I need help
Its possible to make my diagonal" as half way road
one way.png
one way.png (22.21 KiB) Viewed 10070 times


When I try to make 1 way diagonal this was happened
Bug.jpg
User avatar
burgernamn
Former aster dude
Posts: 176
Joined: 15 Apr 2022, 10:32
Plugins: Showcase Store

Plugin Creator

Platform

Re: Determining vehicle direction on roads

#15

Post by burgernamn »

im losing braincells every minute i try to understand this
User avatar
Guest

Re: Determining vehicle direction on roads

#16

Post by Guest »

Wekabu city wrote: 14 Jan 2023, 18:33
Show
id : adjacency
0 = None
1 = South
2 = East
3 = South and east
4 = North
5 = North and south
6 = North and east
7 = North and south and east
8 = West
9 = West and south
10 = West and east
11 = West and south and east
12 = West and north
13 = West and north and south
14 = West and north and east
15 = West and north and south and east
Basically all four cardinal directions are a bit. 1 is south, 2 is east, 4 is north and 8 is west. By adding the bits you get the frame id.
arrowframes.png
arrowframes.png (2.33 KiB) Viewed 7750 times
Post Reply Previous topicNext topic

Return to “Tutorials and Documentation”