Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
132 commits
Select commit Hold shift + click to select a range
b04751d
add script for detecting redundant RUL2 adjacency code
memo33 Dec 31, 2024
99fc41f
DLL: disable redundant FlexFly, OST, RHW metarule adjacencies
memo33 Sep 3, 2024
fee90cc
script: regenerate FlexFly and RHW OST metagenerated code after adjac…
memo33 Sep 3, 2024
f9832d3
allow cases where rules are redundant for one of RHD/LHD
memo33 Jan 10, 2025
288fb15
fix stitching of diagonal override rules involving surrogate tiles
memo33 Feb 18, 2025
a979a16
fix accidental prevents
memo33 Feb 18, 2025
c7b4548
script: remove redundant RUL2 adjacencies identified by script (deter…
memo33 Feb 18, 2025
e04c647
script: rerun the script for stable results
memo33 Feb 18, 2025
3ca4ca0
script: update `conflicting-override` tags in RUL2 files
memo33 Feb 18, 2025
6cbf2dc
Miscellaneous corrections and missing rules in Sec7i_FLEXRamp
jflann Jan 13, 2025
7d9fe6e
Remove redundant FLEXRamp branch adjacency files
jflann Jan 13, 2025
080669f
remove files consisting purely of duplicate overrides
memo33 Jan 13, 2025
2b473a4
remove additional redundant branch adjacency files
jflann Feb 15, 2025
1dc02f4
Enable FLEXRamp A1 Outside for RHW-3 L1 & L2
jflann Feb 16, 2025
83792d0
Remove bad adjacency related to ortho RHW to avenue transitions
jflann Feb 19, 2025
d34315c
remove more redundant FLEXRamp adjacencies
jflann Feb 19, 2025
8045f28
revise RHW-8S FlexRamp Type E1 RUL2
jflann Feb 22, 2025
fc9799d
whitespace
jflann Apr 7, 2024
36f3807
add street/sam diverters with road to resolvers
jflann Apr 7, 2024
c81599b
add functions for curves for SAM
jflann Apr 8, 2024
a0856b3
Change street DxO T to INRUL implementation
jflann May 13, 2024
b041eb6
fix incorrect flipping on NWM x SAM OxO ints
jflann May 13, 2024
505a8cb
correct flags in SAM large 90 curve code
jflann May 13, 2024
f67f2be
add reflections function
jflann May 13, 2024
03c0005
fix 3x3 street circle definitions
jflann May 13, 2024
0d2d4da
add diagonal drag version of street diag s-curve
jflann May 14, 2024
83f5fb2
add some street/SAM thru, NWM end T intersections to resolvers
jflann May 14, 2024
7120ab0
WIP: overhaul SAM metarules
jflann May 14, 2024
5395ae1
split the street INRULs into components
jflann May 22, 2024
b4e289f
improve SAM x NWM metarules
jflann May 30, 2024
44adcbc
INRUL implementation of Street DxO / OxD 4-way intersection
jflann May 30, 2024
b45189f
add the 0,0,11,13 blended curve tile to street
jflann May 30, 2024
1c7fbf7
add missing SAM DxD T rules
jflann Jun 1, 2024
c4b4b03
simplify street DxO / OxD INRUL; fix mirroring issues
jflann Jun 1, 2024
9f8de81
change street DxD and DxD Ts to INRUL
jflann Jun 1, 2024
be8f52e
fix typo in comment line
jflann Jun 1, 2024
95f1b8c
add STR x SAM IIDs to RRW resolver; enable SAM x STR metarules
jflann Jun 2, 2024
f1c58ea
add INRUL implementation for street 'C' bend
jflann Jun 2, 2024
e8fd4f2
add INRUL implementation of street 'S' bend (0,1,0,1)
jflann Jun 2, 2024
a40ada4
add INRUL for street thru drag DxO T
jflann Jun 2, 2024
cbd8da7
eliminate ortho-flagged smoother 3x3 circle
jflann Jun 2, 2024
0ea516b
add GLR-side rules for SAM x GLR crossings
jflann Jun 5, 2024
d136da0
add stability rules for SAM OxD, DxO, DxD crossings
jflann Jun 5, 2024
9308472
minor improvements to S-bend and intersection adjacency with blend curve
jflann Jun 5, 2024
8b7cb2e
add INRUL for blend curve between 'S' bend and 'C' bend
jflann Jun 5, 2024
d3f3acf
re-implementation of street roundabout INRUL
jflann Jun 6, 2024
1ff9d54
eliminate override of the street kinked bend
jflann Jun 8, 2024
d848e9a
add additional kinked bend rule
jflann Jun 9, 2024
7975ac7
revise special SAM x Avenue rules
jflann Jun 9, 2024
53304ff
revise SAM roundabout metarules
jflann Jun 10, 2024
aff17ce
additional tweaks for blend tile 0x5F501400
jflann Jun 15, 2024
4a455d8
add metarules for SAM-1, SAM x SAM transitions
jflann Feb 23, 2025
74ee793
add new file for diag streets intersection helpers
jflann Feb 24, 2025
33d6624
remove/disable legacy diagonal streets rul
jflann Feb 24, 2025
eb26782
remove remaining handwritten SAM RUL2 & update meta-generated code
jflann Feb 26, 2025
0eba497
remove redundant SAM x RRW and SAM x STR RUL2 files
jflann Mar 5, 2025
95acb7f
override crossbuck helper tiles on SAM DxO rail crossings
jflann Mar 8, 2025
2355873
add intersections between diagonal streets and road corners
jflann Mar 9, 2025
af5bc22
enable SAM x Avenue OxO long T intersections
jflann Mar 10, 2025
017066b
add rules to fix instability of SAM x Road diverter
jflann Mar 15, 2025
1424128
change IDs of intersections of diag street with road corner
jflann Mar 13, 2025
9eb29db
add new RUL1 intersections needed for drag diag streets and road roun…
jflann Mar 13, 2025
40a7c21
eliminate redundant mirrored road roundabout pieces
jflann Mar 13, 2025
737da67
add new metarule network for road roundabouts
jflann Mar 13, 2025
2f8a00a
add various road intersections to misc resolver
jflann Mar 13, 2025
a704e3a
add road roundabout definitions to misc resolver
jflann Mar 13, 2025
08b8fef
add roundabout rule generator
jflann Mar 14, 2025
7992f89
replace road roundabout RUL2 with meta-generated RUL2
jflann Mar 14, 2025
b860837
update tile orientation cache
jflann Mar 14, 2025
c567e1d
change roundabout rule generator output dir to /target
jflann Mar 14, 2025
d10f51b
minor cleanup & comments
jflann Mar 18, 2025
d9f17e9
correct meta definition of overlapping roundabouts
jflann Mar 18, 2025
70ea470
refactoring: implement generic RUL2 checking/tagging mechanism
memo33 Mar 18, 2025
6a83a41
refactoring: use Rul2Checker for redundant adjacencies
memo33 Mar 19, 2025
e1265a1
add check for RUL2 rules with missing SC4PATHS files
memo33 Mar 20, 2025
646d6cd
fix some faulty resolver definitions and SAM crossings with asymmetri…
memo33 Mar 22, 2025
0f9bd29
recompile SAM metarules
memo33 Mar 22, 2025
52e4506
upgrade to metarules 0.6.1
memo33 Mar 23, 2025
5b1df3d
replace tabs by spaces for Scala 3
memo33 Mar 30, 2025
8595cc5
fix indentation in sam rule generator
memo33 Mar 30, 2025
37cfca1
replace resource.managed by util.Using.resource
memo33 Mar 30, 2025
ebf3948
replace private[this] by private
memo33 Mar 30, 2025
4dce658
switch to Scala 3 syntax
memo33 Mar 30, 2025
6077396
upgrade to scala 3.6.4, sbt 1.10.7, metarules 0.7.0
memo33 Mar 30, 2025
3ee15bd
Merge pull request #511 from memo33/scala-3
memo33 Apr 5, 2025
791aebc
implement a re-usable versatile ResolverBuilder
memo33 Mar 31, 2025
b10ab36
switch Misc/RRW/SAM resolvers to new ResolverBuilder implementation
memo33 Mar 31, 2025
36bbc1f
refactoring: reformat resolvers more consistently
memo33 Apr 1, 2025
d429a46
reimplement RHW/NWM resolvers more explicitly
memo33 Mar 31, 2025
00b9d8b
fix NWM IID collision between DxO HSR and DxD Monorail
memo33 Apr 5, 2025
3f8f342
re-implement FlexFly resolver using ResolverBuilder
memo33 Mar 31, 2025
9228acb
fix skipping of unsupported intersections in FlexFly rule generator
memo33 Apr 1, 2025
d0afb8d
fix skipping of unsupported intersections in OST rule generator
memo33 Apr 1, 2025
b90d53f
fix skipping of unsupported intersections in RRW rule generator
memo33 Apr 1, 2025
6fb82aa
Merge pull request #512 from memo33/resolver-builder
memo33 Apr 14, 2025
8394e29
Merge branch 'meta-sam' into redundant-adjacencies-removal
memo33 Apr 14, 2025
969c220
remove redundant adjacencies in metarule generators
memo33 Apr 14, 2025
c3d8690
script: regenerate metarules
memo33 Apr 14, 2025
855701a
remove overrides involving 0x57041500 (O×O RHW-6S/Rail)
memo33 Apr 14, 2025
2535cfc
script: update `conflicting-override` tags in RUL2 files
memo33 Apr 14, 2025
72c06e7
script: rerun RedundantAdjacenciesChecker
memo33 Apr 14, 2025
bb63ed6
script: run MissingInstanceChecker to update `missing_paths` tags
memo33 Apr 14, 2025
a1c7ac5
fix redundancy checker to consider mirrored rules as well
memo33 Apr 16, 2025
f62a077
script: rerun RedundantAdjacenciesChecker
memo33 Apr 16, 2025
31600a7
add test cases for redundant adjacency checks
memo33 Apr 18, 2025
658db78
refactoring: define crossing networks in RhwRuleGenerator
memo33 Mar 22, 2025
9529db6
implement a reverse resolver for IDs
memo33 Mar 22, 2025
c029151
implement segment orientation checker for RUL2
memo33 Mar 23, 2025
cd0343b
miscellaneous segment orientation fixes/adjacency removal
memo33 Apr 18, 2025
34165d8
remove RHW Crosslinks file
memo33 Apr 18, 2025
aceef0a
extend orientation checks to detect incorrect reversal of directions
memo33 Apr 18, 2025
d881ad2
fix miscellanious orientations of ID definitions in resolvers
memo33 Apr 18, 2025
b34ee69
cleanup FLEX-Fly flags so that flags connect
memo33 Apr 19, 2025
b86c878
script: remove bad segment orientations
memo33 Apr 19, 2025
d5bfdd2
implement more segment orientation checks
memo33 Apr 19, 2025
ea50425
script: remove bad segment orientations (part 2)
memo33 Apr 19, 2025
7ad1f6e
Merge branch 'segment-orientation-check' into redundant-adjacencies-r…
memo33 Apr 19, 2025
032731b
solve exceptional case of three-network intersection by defining an ID
memo33 Apr 20, 2025
d93d07f
DLL: remove auto-connect killers/prevents
memo33 Apr 20, 2025
98d735b
misc RUL2 fixes and adjacency removal
memo33 Apr 20, 2025
6be45ef
define more IDs for GLR to identify bad orientations
memo33 Apr 20, 2025
bf7262c
script: remove manually written RHW adjacencies
memo33 Apr 20, 2025
5fe5ea7
script: remove manually written NWM adjacencies
memo33 Apr 20, 2025
406dd7b
check that RUL2 overrides do not accidentally rotate tiles
memo33 Apr 20, 2025
b885acd
improve error message in ReverseResolver and add cheat sheet
memo33 Apr 20, 2025
5ccaece
add a stricter segment orientation check to verify connectedness
memo33 Apr 23, 2025
692b086
fix T intersections of RHW-end/Viaduct-Thru
memo33 Apr 23, 2025
c9b8dd7
implement resolver for viaducts
memo33 Apr 21, 2025
06f10e3
fix orientation of RRW blank girder span tile
memo33 Apr 23, 2025
9624bdd
script: remove bad segment orientations (part 3, mainly viaducts)
memo33 Apr 23, 2025
e4bb23f
preserve order of inline tags in RUL2
memo33 Apr 26, 2025
75fd257
script: update conflicting overrides tags
memo33 Apr 26, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 2 additions & 0 deletions .github/workflows/scala.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,8 @@ jobs:
run: sbt generateLocales
- name: Check for new conflicting RUL2 overrides
run: SBT_OPTS="-Xmx2G" sbt conflictingOverridesCheck
- name: Check for new segment orientation issues in RUL2 overrides
run: sbt "runMain com.sc4nam.scripts.SegmentOrientationChecker"

lint:
runs-on: ubuntu-latest
Expand Down
25 changes: 20 additions & 5 deletions Controller/INRULs/RULConfig.txt
Original file line number Diff line number Diff line change
Expand Up @@ -59,11 +59,17 @@ Source: RoadAdvanced/RUL08_Road_Advanced.rul

TGI: 0x0A5BCF4B 0xAA5BCF57 0x00000009
Compressed: 1
Source: StreetBasic/RUL09_Street_Basic.rul
Source: StreetBasic/RUL09_Street_Basic_Header.rul
Source: StreetBasic/StreetBasic.rul
Source: StreetBasic/FractionalAngle.rul

TGI: 0x0A5BCF4B 0xAA5BCF57 0x0000000A
Compressed: 1
Source: StreetAdvanced/RUL0A_Street_Advanced.rul
Source: StreetAdvanced/RUL0A_Street_Advanced_Header.rul
Source: StreetAdvanced/FractionalAngle.rul
Source: StreetAdvanced/Roundabouts.rul
Source: StreetAdvanced/WideRadiusCurves.rul
Source: StreetAdvanced/Miscellaneous.rul

TGI: 0x0A5BCF4B 0xAA5BCF57 0x0000000B
Compressed: 1
Expand Down Expand Up @@ -165,11 +171,17 @@ Source: RoadAdvanced/RUL08_Road_Advanced.rul

TGI: 0x0A5BCF4B 0xAA5BCF57 0x00000009
Compressed: 1
Source: StreetBasic/RUL09_Street_Basic.rul
Source: StreetBasic/RUL09_Street_Basic_Header.rul
Source: StreetBasic/StreetBasic.rul
Source: StreetBasic/FractionalAngle.rul

TGI: 0x0A5BCF4B 0xAA5BCF57 0x0000000A
Compressed: 1
Source: StreetAdvanced/RUL0A_Street_Advanced.rul
Source: StreetAdvanced/RUL0A_Street_Advanced_Header.rul
Source: StreetAdvanced/FractionalAngle.rul
Source: StreetAdvanced/Roundabouts.rul
Source: StreetAdvanced/WideRadiusCurves.rul
Source: StreetAdvanced/Miscellaneous.rul

TGI: 0x0A5BCF4B 0xAA5BCF57 0x0000000B
Compressed: 1
Expand Down Expand Up @@ -261,7 +273,10 @@ Source: RoadAdvanced/RUL08_Road_Advanced_Lite.rul

TGI: 0x0A5BCF4B 0xAA5BCF57 0x00000009
Compressed: 1
Source: StreetBasic/RUL09_Street_Basic.rul
Source: StreetBasic/RUL09_Street_Basic_Header.rul
Source: StreetBasic/LegacyDiagonalStreets.rul
Source: StreetBasic/StreetBasic.rul
Source: StreetBasic/FractionalAngle.rul

TGI: 0x0A5BCF4B 0xAA5BCF57 0x0000000A
Compressed: 1
Expand Down
34 changes: 14 additions & 20 deletions Controller/INRULs/RoadAdvanced/RUL08_Road_Advanced.rul
Original file line number Diff line number Diff line change
Expand Up @@ -3212,59 +3212,55 @@
2,5,2,2,?,?
3,0,0x5F06BA00,3,0
;
;Configurations for orthogonal road piece flipped; 5F06BB00
;
1,2,0,2,2
2,5,2,?,?,2
2,6,2,2,?,?
2,7,?,2,2,?
3,0,0x5F06BB00,3,0
3,0,0x5F06BA00,1,1
;
1,2,2,0,2
2,7,2,2,?,?
2,8,?,2,2,?
2,1,?,?,2,2
3,0,0x5F06BB00,0,0
3,0,0x5F06BA00,0,1
;
1,2,2,2,0
2,1,?,2,2,?
2,2,?,?,2,2
2,3,2,?,?,2
3,0,0x5F06BB00,1,0
3,0,0x5F06BA00,3,1
;
1,0,2,2,2
2,3,?,?,2,2
2,4,2,?,?,2
2,5,2,2,?,?
3,0,0x5F06BB00,2,0
3,0,0x5F06BA00,2,1
;
;Configurations for right-hook diagonal road piece; 5F06BF00
;Configurations for diagonal (away) road piece; 5F06BE00
;
1,13,0,2,2
2,5,2,?,?,2
2,6,2,2,?,?
2,7,?,2,2,?
3,0,0x5F06BF00,3,0
3,0,0x5F06BE00,1,1
;
1,2,13,0,2
2,7,2,2,?,?
2,8,?,2,2,?
2,1,?,?,2,2
3,0,0x5F06BF00,0,0
3,0,0x5F06BE00,0,1
;
1,2,2,13,0
2,1,?,2,2,?
2,2,?,?,2,2
2,3,2,?,?,2
3,0,0x5F06BF00,1,0
3,0,0x5F06BE00,3,1
;
1,0,2,2,13
2,3,?,?,2,2
2,4,2,?,?,2
2,5,2,2,?,?
3,0,0x5F06BF00,2,0
;
;Configurations for right-hook diagonal road piece flipped; 5F06BE00
3,0,0x5F06BE00,2,1
;
1,0,11,2,2
2,5,2,?,?,2
Expand All @@ -3290,33 +3286,31 @@
2,5,2,2,?,?
3,0,0x5F06BE00,3,0
;
;Configurations for left-hook diagonal road piece; 5F06B900
;Configurations for diagonal (back) road piece; 5F06B800
;
1,11,0,2,2
2,5,2,?,?,2
2,6,2,2,?,?
2,7,?,2,2,?
3,0,0x5F06B900,3,0
3,0,0x5F06B800,1,1
;
1,2,11,0,2
2,7,2,2,?,?
2,8,?,2,2,?
2,1,?,?,2,2
3,0,0x5F06B900,0,0
3,0,0x5F06B800,0,1
;
1,2,2,11,0
2,1,?,2,2,?
2,2,?,?,2,2
2,3,2,?,?,2
3,0,0x5F06B900,1,0
3,0,0x5F06B800,3,1
;
1,0,2,2,11
2,3,?,?,2,2
2,4,2,?,?,2
2,5,2,2,?,?
3,0,0x5F06B900,2,0
;
;Configurations for left-hook diagonal road piece flipped; 5F06B800
3,0,0x5F06B800,2,1
;
1,0,13,2,2
2,5,2,?,?,2
Expand Down
Loading