sschoener / cities-skylines-detour Goto Github PK
View Code? Open in Web Editor NEWProof of concept for a simple detour for functions in Cities: Skylines (or more generally: Unity 5 x64 on Windows.)
License: MIT License
Proof of concept for a simple detour for functions in Cities: Skylines (or more generally: Unity 5 x64 on Windows.)
License: MIT License
https://github.com/pardeike/Harmony was created for the RimWorld modding community, to replace the detour library/libraries in use there (which in turn were inspired by @sschoener's original code.)
It's a general purpose Mono (and now also .NET) patching library, which allows pre- and postfixing methods, leaving the original code intact. The prefix can be set up to not execute the original code, in essence acting like a detour.
It's also got an extremely powerful IL transpiling mechanic, which allows targeted replacement of individual instructions in the target method.
It's completely transformed the RimWorld modding scene - and could potentially do the same for C:S.
Hey!
I've been using this for a while and it's been mostly just been great.
However, the following two methods I've tried patching (currently if false'd), and when I tried enabling them (albeit they're copied out from dotPeek 1:1) they do not work:
https://github.com/mabako/cities-skylines-unlimiter/blob/master/Zones/FakeZoneBlock.cs#L200
https://github.com/mabako/cities-skylines-unlimiter/blob/master/Zones/FakeBuilding.cs#L14
Do you have any idea why this is? Any help would be greatly appreciated.
Do you know a way to detour virtual methods? Maybe by modifying the virtual method table?
Your RedirectionHelper class is one of the most powerful tools for Skylines Modding. A virtual method detour would make it perfect.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.