Dev Tools
TM:PE is written in C# and requires an IDE such as Visual Studio or Rider.
We use the latest language version and target .NET Framework 3.5 (what C:SL uses, sorry).
Due to the size of the project, we use various analysers and style guides to avoid common mistakes and ensure consistency of formatting. Your IDE should automatically install any required items and show warnings inline and when building. If there are conflicting code style guidelines in your IDE, favour those generated by StyleCop.
- Rider - Remember to activate Roslyn Analyzers (why?)
-
Visual Studio - You'll need VS 2019 or later (why?)
- You can perform code review directly from Visual studio. see Reviewing pull request using Visual studio
.NET browser and decompiler. Also useful for debugging. Requires manual install:
- dnSpy-net472.zip : https://github.com/0xd4d/dnSpy/releases
- Visual Studio plugin
.NET browser and decompiler. Requires manual install:
.NET browser and decompiler. Requires manual install if not using Rider:
Roslyn based C# heap allocation diagnostic analyzer that can detect explicit and many implicit allocations like boxing, display classes a.k.a closures, implicit delegate creations, etc. Requires manual install:
Prevents use of in
for anything other than readonly struct
(why?).
- Automatically installed via NuGet.
Red links are broken; this wiki is a work in progress
Getting Started (click to open)
Troubleshooting / Bugs (click to open)
- Hints Panel
- Road & Rail:
- Junctions:
- Despawning:
- Info Views:
- Roads/Tracks:
- Nodes, Segments, Lanes
- Collector Roads
- Dedicated Turning Lanes
- Enter Blocked Junctions
- High Priority Roads
- Highway Junction Rules
- Lane Changes
- Pedestrian Crossings
- Priority Routes
- Road Conditions
- Roundabouts
- Roundabout Policies
- Stay in Lane
- Turn on Red
- U-Turns
- Unprotected Turns
- Vehicle Restriction Aggression
- Public Transport:
- Vehicles:
Todo: