208 Commits

Author SHA1 Message Date
97113d199c Update 2025-11-23 12:56:53 +01:00
ef557bf939 Add projects as submodules 2025-11-23 12:55:19 +01:00
830980e180 Remove projects 2025-11-23 12:53:24 +01:00
051da59046 Update 2025-11-23 12:36:28 +01:00
b8a81179ec Update 2025-11-23 12:21:31 +01:00
8a149d45ec Try and cook dodge timings 2025-05-21 23:34:12 +02:00
c2fe7b0c9e Implement transpiler for level up stat evaluation in Actions_ClickedStat 2025-05-21 20:51:41 +02:00
71163fc589 Add source files 2025-05-21 20:40:04 +02:00
0f2a242b30 Add options for level up stats and skills 2025-05-21 20:18:57 +02:00
4ae13418a6 Add dodge window option 2025-05-21 16:53:46 +02:00
9583944c69 Add current input tracking and enhance debug logging in ExpressionConfigEntry 2025-05-21 16:49:31 +02:00
345f8c4565 Add debug logs to our expressions 2025-05-21 16:28:04 +02:00
66ca370ac2 Implement ExpressionConfigEntry that implements shunting yard and postfix notation to compute values based on strings 2025-05-21 16:16:01 +02:00
dea5256339 Copy paste to banquet for fools 2025-05-21 15:41:49 +02:00
f56aae2dbf Update subproject commits for MineDumpControl, DifficultySettingsMod, and DoubleQoLMod 2025-05-17 13:59:49 +02:00
1e1268cee6 Remove debug mining configuration and related patch due to functionality issues 2025-05-17 13:58:25 +02:00
005c1805e9 Add debug option for every other config option 2025-05-17 13:55:24 +02:00
fbcabc90b7 Add mining multiplier 2025-05-17 13:52:38 +02:00
f72fcee86c Add hiring cost multiplier and patch for cost calculation 2025-05-17 13:17:01 +02:00
5bde3c20b4 Rework customer, decoration bonuses, and walking speed multipliers 2025-05-17 13:13:33 +02:00
28bb3038c5 Add offsets for daily customer, decoration addition, and global speed multipliers 2025-05-17 13:00:15 +02:00
8c4e8b9366 Add multipliers for daily customers, decoration addition, and global speed 2025-05-17 12:58:04 +02:00
dcf88a498e Make always chads 2025-05-17 12:47:58 +02:00
402909f3fd Always level skills evenly 2025-05-17 12:38:17 +02:00
fbe307281c Add salary multiplier 2025-05-17 12:07:45 +02:00
eed75e919f Multiply research 2025-05-17 11:41:57 +02:00
1af46039ea Remove suo files
What the fuck anyway...
2025-05-17 11:11:38 +02:00
5adb7defec Multiply the monies 2025-05-17 11:11:15 +02:00
fff44bfc93 Add blacksmith master project 2025-05-17 10:50:17 +02:00
22b048a629 Update 2025-05-17 10:35:45 +02:00
69125d6342 Copy terratech to erenshor 2025-04-15 20:34:52 +02:00
1d5855989b Add xp multiplier maybe 2025-04-06 00:44:52 +02:00
e4a99d093a Copy paste terratech to quasimorph 2025-04-06 00:40:48 +02:00
b54210ec69 Update 2025-04-06 00:28:31 +02:00
dcc039afcb Update 2025-04-06 00:28:28 +02:00
793fc2b48d Implement weight fuuckery for zompiercer 2025-03-07 02:01:28 +01:00
2c1f5d5688 Add zompiercer 2025-03-07 01:43:57 +01:00
7aca70b7b6 Code format 2025-02-26 09:54:33 +01:00
44705dcc75 Add multi-buy functionality for block purchasing 2025-02-25 18:48:20 +01:00
2e483b1869 Fix block availability calculation in UISnapshotPanelBuyAll 2025-02-25 15:58:23 +01:00
ce6ea32f4e Add support for right-click block purchasing on swap button 2025-02-25 15:52:48 +01:00
1d8699761e Refactor UISnapshotPanelBuyAll to improve block purchase logic 2025-02-25 15:49:33 +01:00
9d40375b8c Implement auto buying missing blocks for a given tech snapshot 2025-02-25 15:37:35 +01:00
573c517dac Add TankManager with module registration and recheck functionality 2025-02-25 14:56:45 +01:00
8fbabf3931 Add ModuleManagerMapper for dynamic module management 2025-02-25 11:57:56 +01:00
e4700847df Fix player-only option in ModuleWingManager 2025-02-25 09:46:59 +01:00
acdc4d2a78 Update ModuleEnergyManager to patch OnAnchorStatusChanged instead of OnAttached 2025-02-25 08:42:16 +01:00
7964f8f395 Remove projectile and missile projectile configuration from ModuleWeaponGunManager 2025-02-24 22:20:19 +01:00
9e3e4fa367 Add projectile explode on stick configuration option 2025-02-24 22:18:54 +01:00
b10eb8752b Add projectile and missile projectile configuration to ModuleWeaponGunManager 2025-02-24 22:01:13 +01:00
d0ffe1951b Replace TechBoosterManager with ModuleFuelTankManager 2025-02-24 21:06:13 +01:00
4f51f8599e Add TechBoosterManager with configurable fuel multipliers 2025-02-24 18:28:09 +01:00
5723e9592e Add ModuleHeartManager with configurable multipliers 2025-02-24 16:43:13 +01:00
dc7be36bdb Add player-only configuration to module managers 2025-02-24 15:51:39 +01:00
0b4883ed6c Make apply only to player option 2025-02-24 15:46:42 +01:00
446ef52012 Add IsObjectTank method with error handling to CykUtil 2025-02-24 15:41:54 +01:00
af0c47e9e5 Add CykUtil for checking player tank ownership 2025-02-24 15:37:42 +01:00
106afee250 Code format 2025-02-24 15:37:00 +01:00
d53a5bb6cc Fix wing and item producer module naming and patching 2025-02-24 15:06:42 +01:00
c23be11e4b Only apply booleans if they're true 2025-02-24 11:30:58 +01:00
c460a65234 Fix typos n shit 2025-02-24 11:20:51 +01:00
c441d3ad10 Fix booster cast 2025-02-24 10:47:34 +01:00
91e2bf4b61 Enhance MultipliedObjectManager with robust error handling and reference management 2025-02-24 10:44:07 +01:00
622094fbe9 Add ModuleWeaponManager for configurable weapon rotate speed 2025-02-24 10:18:42 +01:00
bdced22781 Add TankBeamManager for configurable tank beam settings 2025-02-24 10:17:37 +01:00
708607b2f5 Add ModuleWheelsManager for configurable wheel torque settings 2025-02-24 10:14:40 +01:00
dbeb55e2aa Add BooleanField for configurable boolean field settings 2025-02-24 10:10:34 +01:00
212c82b448 Add ModuleWeaponGunManager for configurable weapon gun settings 2025-02-24 10:08:22 +01:00
0c440a4876 Add ModuleRemoteChargerManager for configurable remote charger settings 2025-02-24 10:03:50 +01:00
bd554f4c0f Add ModuleItemProducerManager for configurable item producer settings 2025-02-24 10:02:41 +01:00
cda2f3a75c Update FieldConfiguration to support generic multiplier types 2025-02-24 09:59:03 +01:00
11c7d74489 Make both the multiplier and field generic 2025-02-24 09:57:36 +01:00
95fdbc7cda Add ModuleItemHolderManager for configurable item holder settings 2025-02-24 09:53:24 +01:00
551acd2690 Add ModuleGyroManager for configurable gyro active speed 2025-02-24 09:42:27 +01:00
e485f5b2d2 Remove redundant configuration variables and clean up commented code 2025-02-24 09:40:41 +01:00
f7f73a6891 Add ModuleEnergyStoreManager for configurable energy store capacity 2025-02-24 09:40:32 +01:00
a5fd22a9c5 Simplify configuration variable names across module managers 2025-02-24 09:38:32 +01:00
0f494e7ae1 Add ModuleEnergyManager for configurable energy module settings 2025-02-24 09:36:31 +01:00
e86c26a0d8 Code polish 2025-02-24 09:34:41 +01:00
f17ef5b559 Rename FireDataManager to ModuleWeaponGunManager 2025-02-24 09:34:02 +01:00
320c032e30 Add ModuleBoosterManager for configurable booster thrust multipliers 2025-02-24 09:33:27 +01:00
9718e254aa Refactor FireData configuration to FireDataManager 2025-02-24 09:26:10 +01:00
b69db2edc8 Refactor shield configuration to ModuleShieldGeneratorManager 2025-02-24 09:14:44 +01:00
255d563b86 Refactor settings to modulewingmanager 2025-02-24 09:13:05 +01:00
fe5b4084ff Add FireData configuration multipliers for kickback and muzzle velocity 2025-02-24 09:05:44 +01:00
ba6ebf6d07 Add aerofoil configuration multipliers and ModuleWingManager 2025-02-24 09:01:10 +01:00
4f695d907b Write out this shit for dotnet6 2025-02-24 08:48:45 +01:00
897f0a3546 Add shield healing radius multiplier configuration 2025-02-24 08:48:45 +01:00
edc8fd5a5b Enhance ObjectFieldMultiplier with flexible field configuration and selective application 2025-02-24 08:44:18 +01:00
13610a301a Fix multiplication in multiplier 2025-02-24 08:33:13 +01:00
e0b9bed690 Remove old shit 2025-02-24 08:30:46 +01:00
fd8ce5c59e Improve ObjectFieldMultiplier with naming conventions and documentation 2025-02-24 00:26:12 +01:00
c8302ea177 Refactor ObjectFieldMultiplier with code style improvements and minor optimizations 2025-02-24 00:24:49 +01:00
89a557dc96 Extract generic object field multiplier logic to separate file 2025-02-24 00:13:43 +01:00
741ab21977 Enhance ModuleShieldGeneratorManager with robust error handling and debug logging 2025-02-24 00:10:32 +01:00
336a4dfff7 Refactor ModuleShieldGeneratorManager with generic multiplied object management 2025-02-24 00:08:42 +01:00
a53bcc246e Refactor the fuck out of ModuleShieldGeneratorManager with generic multiplier handling 2025-02-24 00:06:04 +01:00
5df952a69a Add battery capacity multiplier configuration 2025-02-23 23:50:36 +01:00
4ad206a198 Add shield and energy module configuration multipliers 2025-02-23 23:46:44 +01:00
e16a941413 Add shop block multipliers 2025-02-23 18:15:17 +01:00
8c58bf504c "Fix" rotation speed maybe 2025-02-23 16:02:33 +01:00
b5d75ccffd Add rotation speed log patch 2025-02-23 15:44:18 +01:00
44c24e4ae7 Format 2025-02-23 15:40:05 +01:00
5e2b2546bf Update terratech 2025-02-23 15:31:57 +01:00
03c8043c77 Night raidering 2025-02-23 15:31:52 +01:00
a71a25226f More cheap train 2024-12-31 16:06:04 +01:00
cd104d142e Implement auto loot 2024-12-31 15:21:57 +01:00
983aaa68e6 Add night rider 2024-12-31 13:46:32 +01:00
3c7b9f7360 Add additional reverse engineer chance 2024-12-10 11:34:24 +01:00
80173da3b0 Implement reverse engineer chance multiplier 2024-12-10 11:30:57 +01:00
1c6dbb79e6 Update configuration manager and unity explorer 2024-12-10 11:30:50 +01:00
b24100c89b Add disassemble multiplier 2024-12-09 23:19:54 +01:00
b1ca039574 Reduce bonus attribute bonus 2024-12-09 21:11:02 +01:00
dd3c227447 Always get some skills please 2024-12-09 17:25:29 +01:00
dd515529f9 More better logging 2024-12-09 17:24:46 +01:00
6d468300a2 Add xp multiplier 2024-12-09 12:51:23 +01:00
f6bc2eff3f Add multipliers for fucking level up stats 2024-12-09 12:26:10 +01:00
490aa3bf2e Fix up the fuCKIGN versions 2024-12-09 11:45:41 +01:00
f5498cad02 Migrate back to whatever the fuck works (framework 481) 2024-12-09 11:30:32 +01:00
bbcf1f229d Add xp multiplier.. of some variety 2024-12-08 23:53:37 +01:00
fdc4ccef4c First coq build 2024-12-08 23:44:42 +01:00
1fde73924a Migrate to net sdk?????? 2024-12-08 23:40:27 +01:00
a40cb99745 Add cykaOfqud 2024-12-08 23:22:46 +01:00
059c8a53a4 Add recipe output multiplier 2024-10-20 16:31:15 +02:00
90edaaf5c8 Remove COI extended
Turns out its not open source
2024-10-20 13:48:27 +02:00
1740f7f4ba Update submodules 2024-10-20 13:48:07 +02:00
a95bf892ab Implement actual excavator mining area multiplier 2024-10-20 01:19:32 +02:00
b786897b9f Implement custom autosave
Because the built in one goes only as low as 10 min
I want 10 second
2024-10-19 22:24:26 +02:00
259446cfbe Fix up doubleqol 2024-10-19 21:33:05 +02:00
9476ddabf3 Reduce mining timers maybe.... 2024-10-19 20:53:00 +02:00
5bd4d341f8 Update MD controler 2024-10-19 15:56:49 +02:00
fcf24a7cbe Fix patch for mining distance 2024-10-19 14:58:40 +02:00
d0b0a45f3a Add debug logs 2024-10-19 14:33:11 +02:00
c7a55276e2 Fix issue where excavators do not properly excavate 2024-10-19 14:30:12 +02:00
1a81695349 Maybe fix capacity now 2024-10-19 00:01:43 +02:00
ef58960245 Fix excavator capacity bullshit 2024-10-18 22:59:48 +02:00
f663d28109 Update submodules 2024-10-18 22:21:18 +02:00
df73f0cb07 Add difficulty settings mod 2024-10-18 20:23:13 +02:00
c2508563e0 Update submodules 2024-10-18 20:22:21 +02:00
0306be5dfb Refactor CykaOfIndustry 2024-10-18 19:20:03 +02:00
1f8a0bbf21 Add submodules 2024-10-18 19:07:48 +02:00
abf53a9cd0 Refactor to cyka 2024-10-18 19:00:20 +02:00
519e6e3a6c Update COI sync 2024-10-18 18:54:59 +02:00
7b3f628215 Add libs to COI 2024-10-18 18:54:08 +02:00
335fc98ac2 Code format 2024-10-18 18:51:17 +02:00
289bb5be8e Add sync to COI 2024-10-18 18:50:42 +02:00
3d48f4fded Update COI csproj 2024-10-18 18:50:42 +02:00
9347202722 Remove symlink to bepinex 2024-10-18 18:50:42 +02:00
105fb30dd7 Remove libs 2024-10-18 18:50:42 +02:00
e7672fadba Add adult and old age config 2024-09-29 11:45:03 +02:00
32f62fff02 Add vehicle movement speed patch 2024-09-29 11:27:34 +02:00
fda4abd0ea Add config for max building volume 2024-09-29 03:14:53 +02:00
ffc398c202 Make wall angle more betterer 2024-09-29 01:56:39 +02:00
dee8e85eb9 Remove colision from walls towers and gates
To be able to ACTUALLY place wire
2024-09-29 01:47:52 +02:00
f0e4a2d64b Fix rotating speed modifier 2024-09-29 01:18:31 +02:00
34ad8bef4d Fix improperly loading prod multiplier 2024-09-29 00:05:07 +02:00
2e030b6fe2 Implement echoing tower selection to all towers 2024-09-28 23:59:56 +02:00
c05212a860 Fix issue where sunrise/set is not applied for negative values 2024-09-28 22:43:41 +02:00
21963d9013 Add sunrise hour offset 2024-09-28 22:42:41 +02:00
306b95644b Add production multiplier
Actually a setpoint
2024-09-28 22:35:39 +02:00
ace4fba19e Add sunset hour offset 2024-09-28 21:42:59 +02:00
1904f12d6c More slower rotationing 2024-09-28 21:29:15 +02:00
4afa45fa4e Add deconstruction workers setting
For more worker per building destruct
2024-09-28 20:24:29 +02:00
761b524f20 Remove scavenge patch
It broke game.. :(
2024-09-28 20:05:31 +02:00
4cf2eb9e9b Fix up birthing config 2024-09-28 20:00:11 +02:00
2273610965 Specify debug per setting
It was getting too spammy... And laggy (with debug on all)
2024-09-28 19:13:40 +02:00
e95e86092a Add birthing configs 2024-09-28 19:06:38 +02:00
bf982418ca Maybe fix bug with infinite resource duplication on deconstruct 2024-09-28 17:29:19 +02:00
54294574de Add production time multiplier 2024-09-28 16:11:59 +02:00
d432d5df96 Fix deconstruction materials infinitely duplicating 2024-09-28 16:11:54 +02:00
2c2ba060cc Add people multiplier 2024-09-28 16:11:54 +02:00
02f370fd66 Add construct time multiplier 2024-09-28 16:11:54 +02:00
ec5dd30826 Add deconstruct time multiplier 2024-09-28 14:57:14 +02:00
a4c81ea445 Add vehicle cargo multiplier 2024-09-28 14:20:01 +02:00
d704437cc7 Move sync 2024-09-28 13:48:12 +02:00
c0852dcc68 Remove debug log from movement speed patch 2024-09-28 13:48:12 +02:00
fa822cedd4 Add speed multiplier for humans 2024-09-28 13:46:24 +02:00
1ce4d4368e Add building deconstruct resource multiplier 2024-09-28 02:26:27 +02:00
efdab6cb38 Add building size multiplier 2024-09-28 02:03:11 +02:00
a4ac6d63cd Rework gathering multiplier 2024-09-28 01:48:25 +02:00
8f8f3a1969 Add scavenge multiplier item 2024-09-28 01:26:47 +02:00
8eaaaadcd0 Work speed no workey :( 2024-09-28 01:06:35 +02:00
b36d7717eb Add work speed and gather multipliers 2024-09-28 00:59:29 +02:00
2e4fe4e7e3 Add resource multiplier multiplier 2024-09-28 00:40:13 +02:00
10e8218d07 Update sync 2024-09-28 00:26:30 +02:00
2e7f8015c5 Add InfectionFreeZone 2024-09-28 00:25:03 +02:00
b8b06f2efe Add debug option 2024-09-26 15:25:28 +02:00
be05eb013e Fix quality patch 2024-09-26 15:24:44 +02:00
8fc5fa8c26 Add config manager bindings 2024-09-26 15:17:02 +02:00
4eee4d89e3 More peoples and more prestiges 2024-09-26 15:16:01 +02:00
6d782ef9ed Add xp patch 2024-09-26 14:44:45 +02:00
0a48ce2f63 Fix issue with game speed patch 2024-09-26 14:41:13 +02:00
1e479005a1 Add logs to taverndave 2024-09-26 14:40:09 +02:00
bdf34571be Add speed modifier to tavernmaster 2024-09-26 14:38:32 +02:00
2f42e410e8 Update airportceo 2024-09-26 14:36:07 +02:00
64b52c0e95 Add tavernmaster 2024-09-26 14:36:07 +02:00
bbe92da556 Add airportCEO 2024-08-24 21:17:30 +02:00
d32cda849e Add supermarket simulator 2024-08-24 21:15:12 +02:00
a48fc8ad10 Add unity explorer 2024-08-24 21:15:09 +02:00
d8d717c53a Add failed builderdecoration 2024-08-23 21:41:30 +02:00
0ee56fc7b1 Enable setting prices even when they're the same 2024-08-23 21:41:24 +02:00
a87821f2ad Implement auto pricer
Sets prices to price * multiplier automatically
2024-08-23 12:16:07 +02:00
74668188ce Add editorconfig 2024-08-23 12:15:46 +02:00
72c9b4baa3 Begin work on auto pricer 2024-08-23 09:19:37 +02:00
762a1707af Refactor employee patches 2024-08-23 09:18:25 +02:00
a0edd9edec Refactor player faking 2024-08-23 09:12:28 +02:00
59e94959da Refactor wait times into their own class 2024-08-23 09:10:45 +02:00
454939d0eb Fix sync script 2024-08-22 20:10:20 +02:00
264 changed files with 100 additions and 7296 deletions

8
.gitignore vendored
View File

@@ -6,3 +6,11 @@ ConfigurationManager
MelonLoader.Installer.exe
ConfigurationManager
Projects/Regiments/Regiments/obj/Release
Projects/CykaOfQud/.vs/
Projects/CykaOfQud/.vscode/
*.suo
Projects/BanquetForFools/.vs/BanquetForCyka
Projects/InfectionFreeZone/.vs/InfectionFreeZone
Projects/Quasimorph/.vs/Quasimorph

69
.gitmodules vendored Normal file
View File

@@ -0,0 +1,69 @@
[submodule "Projects/AgainstTheStorm"]
path = Projects/AgainstTheStorm
url = https://git.site.quack-lab.dev/dave/BepInEx-AgainstTheStorm/.git
[submodule "Projects/Zompiercer"]
path = Projects/Zompiercer
url = https://git.site.quack-lab.dev/dave/BepInEx-Zompiercer/.git
[submodule "Projects/WeedShop3"]
path = Projects/WeedShop3
url = https://git.site.quack-lab.dev/dave/BepInEx-WeedShop3/.git
[submodule "Projects/TerraTech"]
path = Projects/TerraTech
url = https://git.site.quack-lab.dev/dave/BepInEx-TerraTech/.git
[submodule "Projects/TavernMaster"]
path = Projects/TavernMaster
url = https://git.site.quack-lab.dev/dave/BepInEx-TavernMaster/.git
[submodule "Projects/SupermarketTogether"]
path = Projects/SupermarketTogether
url = https://git.site.quack-lab.dev/dave/BepInEx-SupermarketTogether/.git
[submodule "Projects/SupermarketSimulator"]
path = Projects/SupermarketSimulator
url = https://git.site.quack-lab.dev/dave/BepInEx-SupermarketSimulator/.git
[submodule "Projects/SevenDaysToDie"]
path = Projects/SevenDaysToDie
url = https://git.site.quack-lab.dev/dave/BepInEx-SevenDaysToDie/.git
[submodule "Projects/Regiments"]
path = Projects/Regiments
url = https://git.site.quack-lab.dev/dave/BepInEx-Regiments/.git
[submodule "Projects/Quasimorph"]
path = Projects/Quasimorph
url = https://git.site.quack-lab.dev/dave/BepInEx-Quasimorph/.git
[submodule "Projects/NightRaider"]
path = Projects/NightRaider
url = https://git.site.quack-lab.dev/dave/BepInEx-NightRaider/.git
[submodule "Projects/MadGamesTycoon2"]
path = Projects/MadGamesTycoon2
url = https://git.site.quack-lab.dev/dave/BepInEx-MadGamesTycoon2/.git
[submodule "Projects/InfectionFreeZone"]
path = Projects/InfectionFreeZone
url = https://git.site.quack-lab.dev/dave/BepInEx-InfectionFreeZone/.git
[submodule "Projects/HouseFlipper"]
path = Projects/HouseFlipper
url = https://git.site.quack-lab.dev/dave/BepInEx-HouseFlipper/.git
[submodule "Projects/Escapists2"]
path = Projects/Escapists2
url = https://git.site.quack-lab.dev/dave/BepInEx-Escapists2/.git
[submodule "Projects/Ereshor"]
path = Projects/Ereshor
url = https://git.site.quack-lab.dev/dave/BepInEx-Ereshor/.git
[submodule "Projects/DustlandDelivery"]
path = Projects/DustlandDelivery
url = https://git.site.quack-lab.dev/dave/BepInEx-DustlandDelivery/.git
[submodule "Projects/CykaOfQud"]
path = Projects/CykaOfQud
url = https://git.site.quack-lab.dev/dave/BepInEx-CykaOfQud/.git
[submodule "Projects/CarMechanicSimulator2021"]
path = Projects/CarMechanicSimulator2021
url = https://git.site.quack-lab.dev/dave/BepInEx-CarMechanicSimulator2021/.git
[submodule "Projects/CaptainOfIndustry"]
path = Projects/CaptainOfIndustry
url = https://git.site.quack-lab.dev/dave/BepInEx-CaptainOfIndustry/.git
[submodule "Projects/BlacksmithMaster"]
path = Projects/BlacksmithMaster
url = https://git.site.quack-lab.dev/dave/BepInEx-BlacksmithMaster/.git
[submodule "Projects/BanquetForFools"]
path = Projects/BanquetForFools
url = https://git.site.quack-lab.dev/dave/BepInEx-BanquetForFools/.git
[submodule "Projects/AirportCEO"]
path = Projects/AirportCEO
url = https://git.site.quack-lab.dev/dave/BepInEx-AirportCEO/.git

Binary file not shown.

Binary file not shown.

BIN
BepInEx.Patcher.exe Normal file

Binary file not shown.

View File

@@ -1,16 +0,0 @@

Microsoft Visual Studio Solution File, Format Version 12.00
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AgainstTheStorm", "AgainstTheStorm\AgainstTheStorm.csproj", "{DA9D274E-486F-4F82-84FF-CD9388CB0B09}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{DA9D274E-486F-4F82-84FF-CD9388CB0B09}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{DA9D274E-486F-4F82-84FF-CD9388CB0B09}.Debug|Any CPU.Build.0 = Debug|Any CPU
{DA9D274E-486F-4F82-84FF-CD9388CB0B09}.Release|Any CPU.ActiveCfg = Release|Any CPU
{DA9D274E-486F-4F82-84FF-CD9388CB0B09}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
EndGlobal

View File

@@ -1,28 +0,0 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005C0Harmony_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CAssembly_002DCSharp_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CBepInEx_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CMainAssembly_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CUnityEngine_002ECoreModule_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CUnityEngine_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005C0Harmony_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CAssembly_002DCSharp_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CBepInEx_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CConfigurationManager_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CSirenix_002ESerialization_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CUnityEngine_002ECoreModule_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CUnityEngine_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005C0Harmony_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CAssembly_002DCSharp_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CBepInEx_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CConfigurationManager_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CMainAssembly_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CUnityEngine_002ECoreModule_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CUnityEngine_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005C0Harmony_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CAssembly_002DCSharp_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CBepInEx_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CConfigurationManager_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CSirenix_002ESerialization_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CUnityEngine_002ECoreModule_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CUnityEngine_002Edll/@EntryIndexedValue">True</s:Boolean></wpf:ResourceDictionary>

View File

@@ -1,82 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{DA9D274E-486F-4F82-84FF-CD9388CB0B09}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>AgainstTheStorm</RootNamespace>
<AssemblyName>AgainstTheStorm</AssemblyName>
<TargetFrameworkVersion>v4.8.1</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="0Harmony">
<HintPath>libs\0Harmony.dll</HintPath>
</Reference>
<Reference Include="Assembly-CSharp">
<HintPath>libs\Assembly-CSharp.dll</HintPath>
</Reference>
<Reference Include="BepInEx">
<HintPath>libs\BepInEx.dll</HintPath>
</Reference>
<Reference Include="ConfigurationManager">
<HintPath>libs\ConfigurationManager.dll</HintPath>
</Reference>
<Reference Include="MainAssembly">
<HintPath>libs\MainAssembly.dll</HintPath>
</Reference>
<Reference Include="Sirenix.Serialization">
<HintPath>libs\Sirenix.Serialization.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
<Reference Include="UnityEngine">
<HintPath>libs\UnityEngine.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.CoreModule">
<HintPath>libs\UnityEngine.CoreModule.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
<Compile Include="Class1.cs" />
<Compile Include="Patches.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Transpiler.cs" />
</ItemGroup>
<ItemGroup>
<Content Include="deploy.sh" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

View File

@@ -1,92 +0,0 @@
using System.Linq;
using BepInEx;
using BepInEx.Configuration;
using HarmonyLib;
using HarmonyLib.Tools;
namespace AgainstTheStorm {
[BepInPlugin(pluginGuid, pluginName, pluginVersion)]
public class Main : BaseUnityPlugin {
private const string pluginGuid = "CykaMod";
private const string pluginName = "CykaMod";
private const string pluginVersion = "1.0.0";
public static ConfigEntry<int> ProductionMultiplier;
public static ConfigEntry<int> DepositChargesMultiplier;
public static ConfigEntry<float> VillagerSpeedMultiplier;
public static ConfigEntry<float> ProductionSpeedMultiplier;
public static ConfigEntry<float> NewcomverRateMultiplier;
public static ConfigEntry<int> VillagerCapacityMultiplier;
public static ConfigEntry<float> TraderRateMultiplier;
public static ConfigEntry<int> TraderMerchMultiplier;
public static ConfigEntry<float> HearthRangeMultiplier;
public static ConfigEntry<float> HouseCapacityMultiplier;
public static ConfigEntry<float> NewcomerBonusMultiplier;
public static ConfigEntry<int> GameSpeedMultiplier;
public static ConfigEntry<int> AdditionalNewcomerBonus;
public static ConfigEntry<float> MetaCurrencyMultiplier;
public static ConfigEntry<float> TradeRouteSpeedMultiplier;
// public static ConfigEntry<float> wheelTorqueMultiplier;
// public static ConfigEntry<float> wheelSpeedMultiplier;
// public static ConfigEntry<float> jetThrustMultiplier;
public void Awake() {
ProductionMultiplier = Config.Bind("General", "ProductionMultiplier", 1,
new ConfigDescription("ProductionMultiplier", new AcceptableValueRange<int>(1, 512)));
DepositChargesMultiplier = Config.Bind("General", "DepositChargesMultiplier", 1,
new ConfigDescription("DepositChargesMultiplier", new AcceptableValueRange<int>(1, 512)));
VillagerSpeedMultiplier = Config.Bind("General", "VillagerSpeedMultiplier", 1f,
new ConfigDescription("VillagerSpeedMultiplier", new AcceptableValueRange<float>(1f, 128f)));
ProductionSpeedMultiplier = Config.Bind("General", "ProductionSpeedMultiplier", 1f,
new ConfigDescription("ProductionSpeedMultiplier", new AcceptableValueRange<float>(1f, 256f)));
NewcomverRateMultiplier = Config.Bind("General", "NewcomverRateMultiplier", 1f,
new ConfigDescription("NewcomverRateMultiplier", new AcceptableValueRange<float>(1f, 128f)));
VillagerCapacityMultiplier = Config.Bind("General", "VillagerCapacityMultiplier", 1,
new ConfigDescription("VillagerCapacityMultiplier", new AcceptableValueRange<int>(1, 32)));
TraderRateMultiplier = Config.Bind("General", "TraderRateMultiplier", 1f,
new ConfigDescription("TraderRateMultiplier", new AcceptableValueRange<float>(1f, 128f)));
TraderMerchMultiplier = Config.Bind("General", "TraderMerchMultiplier", 1,
new ConfigDescription("TraderMerchMultiplier", new AcceptableValueRange<int>(1, 128)));
HearthRangeMultiplier = Config.Bind("General", "HearthRangeMultiplier", 1f,
new ConfigDescription("HearthRangeMultiplier", new AcceptableValueRange<float>(1f, 128f)));
HouseCapacityMultiplier = Config.Bind("General", "HouseCapacityMultiplier", 1f,
new ConfigDescription("HouseCapacityMultiplier", new AcceptableValueRange<float>(1f, 32f)));
NewcomerBonusMultiplier = Config.Bind("General", "NewcomerBonusMultiplier", 1f,
new ConfigDescription("NewcomerBonusMultiplier", new AcceptableValueRange<float>(1f, 32f)));
GameSpeedMultiplier = Config.Bind("General", "GameSpeedMultiplier", 1,
new ConfigDescription("GameSpeedMultiplier", new AcceptableValueRange<int>(1, 32)));
AdditionalNewcomerBonus = Config.Bind("General", "AdditionalNewcomerBonus", 0,
new ConfigDescription("AdditionalNewcomerBonus", new AcceptableValueRange<int>(0, 512)));
MetaCurrencyMultiplier = Config.Bind("General", "MetaCurrencyMultiplier", 1f,
new ConfigDescription("MetaCurrencyMultiplier", new AcceptableValueRange<float>(1f, 512f)));
TradeRouteSpeedMultiplier = Config.Bind("General", "TradeRouteSpeedMultiplier", 1f,
new ConfigDescription("TradeRouteSpeedMultiplier", new AcceptableValueRange<float>(1f, 512f)));
// minerMiningSpeed = Config.Bind("Production", "Miner Mining Speed", 1f,
// new ConfigDescription("Miner Mining Speed", new AcceptableValueRange<float>(1f, 32f)));
//
// allProjectilesHoming = Config.Bind("General", "Make All Projectiles Home", false);
// shootingSpeedMultiplier.SettingChanged += (sender, args) => WeaponPropertiesManager.DoPatch();
// energyGenMultiplier.SettingChanged += (sender, args) => GeneratorPropertiesManager.DoPatch();
// magnetStrenghtMultiplier.SettingChanged += (sender, args) => MagnetPropertiesManager.DoPatch();
// magnetRadiusMultiplier.SettingChanged += (sender, args) => MagnetPropertiesManager.DoPatch();
// beamStrenghtMultiplier.SettingChanged += (sender, args) => BeamPropertiesManager.DoPatch();
// beamRadiusMultiplier.SettingChanged += (sender, args) => BeamPropertiesManager.DoPatch();
// fuelTankRefillMultiplier.SettingChanged += (sender, args) => FuelPropertiesManager.DoPatch();
// fuelTankCapacityMultiplier.SettingChanged += (sender, args) => FuelPropertiesManager.DoPatch();
// wheelTorqueMultiplier.SettingChanged += (sender, args) => WheelPropertiesManager.DoPatch();
// wheelSpeedMultiplier.SettingChanged += (sender, args) => WheelPropertiesManager.DoPatch();
// jetThrustMultiplier.SettingChanged += (sender, args) => ThrusterPropertiesManager.DoPatch();
// minerGroundArea.SettingChanged += (sender, args) => MinerPropertiesManager.DoPatch();
// minerMiningSpeed.SettingChanged += (sender, args) => MinerPropertiesManager.DoPatch();
Logger.LogInfo("Cyka mod loaded");
HarmonyFileLog.Enabled = true;
Harmony harmony = new Harmony(pluginGuid);
harmony.PatchAll();
var originalMethods = harmony.GetPatchedMethods();
Logger.LogInfo("Patched " + originalMethods.Count() + " methods");
}
}
}

View File

@@ -1,458 +0,0 @@
using System;
using System.Collections.Generic;
using Eremite.Buildings;
using Eremite.Model;
using Eremite.Model.Meta;
using Eremite.Services;
using HarmonyLib;
// Patch maxSupPoints in PlatoonSupplyModule
// Patch Operational Authority point gain
namespace AgainstTheStorm {
[HarmonyPatch]
public class Patches {
static Dictionary<string, float> baseValues = new Dictionary<string, float>();
[HarmonyPrefix]
[HarmonyPatch(typeof(BonusEmbarkRangeMetaRewardModel), "OnConsume")]
static void Test(BonusEmbarkRangeMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(BonusFarmAreaMetaRewardModel), "OnConsume")]
static void Test(BonusFarmAreaMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(ConstructionSpeedMetaRewardModel), "OnConsume")]
static void Test(ConstructionSpeedMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(CornerstonesRerollsMetaRewardModel), "OnConsume")]
static void Test(CornerstonesRerollsMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(CurrencyMultiplayerMetaRewardModel), "OnConsume")]
static void Test(CurrencyMultiplayerMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(EmbarkGoodsAmountMetaRewardModel), "OnConsume")]
static void Test(EmbarkGoodsAmountMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(FarmingRateMetaRewardModel), "OnConsume")]
static void Test(FarmingRateMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(FuelRateMetaRewardModel), "OnConsume")]
static void Test(FuelRateMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(GlobalBuildingStorageMetaRewardModel), "OnConsume")]
static void Test(GlobalBuildingStorageMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(GlobalCapacityMetaRewardModel), "OnConsume")]
static void Test(GlobalCapacityMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(GlobalExtraProductionChanceMetaRewardModel), "OnConsume")]
static void Test(GlobalExtraProductionChanceMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(GlobalProductionSpeedMetaRewardModel), "OnConsume")]
static void Test(GlobalProductionSpeedMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(GracePeriodMetaRewardModel), "OnConsume")]
static void Test(GracePeriodMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(GrassAmountMetaRewardModel), "OnConsume")]
static void Test(GrassAmountMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(HearthSacraficeTimeRateMetaRewardModel), "OnConsume")]
static void Test(HearthSacraficeTimeRateMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(NewcommersGoodsRateMetaRewardModel), "OnConsume")]
static void Test(NewcommersGoodsRateMetaRewardModel __instance) {
DoPatch(__instance);
}
// [HarmonyPrefix]
// [HarmonyPatch(typeof(PreparationPointsMetaRewardModel), "OnConsume")]
// static void Test(PreparationPointsMetaRewardModel __instance) {
// DoPatch(__instance);
// }
[HarmonyPrefix]
[HarmonyPatch(typeof(RawDepositsChargesMetaRewardModel), "OnConsume")]
static void Test(RawDepositsChargesMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(RelicsWorkingSpeedMetaRewardModel), "OnConsume")]
static void Test(RelicsWorkingSpeedMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(ReputationPenaltyRateMetaRewardModel), "OnConsume")]
static void Test(ReputationPenaltyRateMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(ReputationRewardPicksMetaRewardModel), "OnConsume")]
static void Test(ReputationRewardPicksMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(SeasonRewardsAmountMetaRewardModel), "OnConsume")]
static void Test(SeasonRewardsAmountMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(TownsVisionRangeMetaRewardModel), "OnConsume")]
static void Test(TownsVisionRangeMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(TraderIntervalMetaRewardModel), "OnConsume")]
static void Test(TraderIntervalMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(TraderMerchAmountMetaRewardModel), "OnConsume")]
static void Test(TraderMerchAmountMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(TraderMerchandisePriceReductionMetaRewardModel), "OnConsume")]
static void Test(TraderMerchandisePriceReductionMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(TradeRoutesLimitMetaReward), "OnConsume")]
static void Test(TradeRoutesLimitMetaReward __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(TraderSellPriceMetaRewardModel), "OnConsume")]
static void Test(TraderSellPriceMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(VillagersSpeedMetaRewardModel), "OnConsume")]
static void Test(VillagersSpeedMetaRewardModel __instance) {
DoPatch(__instance);
}
[HarmonyPostfix]
[HarmonyPatch(typeof(ProductionCalculator), nameof(ProductionCalculator.GetProductionMultiplier))]
static void PatchProductionCalculator(ref int __result) {
// Console.WriteLine("ProdMulti {0}", __result);
__result *= Main.ProductionMultiplier.Value;
}
// There seems to be a lot of good shit in effetsService!!
[HarmonyPostfix]
[HarmonyPatch(typeof(EffectsService), nameof(EffectsService.GetRawDepositsChargesBonus))]
static void PatchEffectsService(ref int __result) {
__result *= Main.DepositChargesMultiplier.Value;
}
[HarmonyPostfix]
[HarmonyPatch(typeof(EffectsService), nameof(EffectsService.GetActorSpeed))]
static void PatchEffectsService2(ref float __result) {
__result *= Main.VillagerSpeedMultiplier.Value;
}
[HarmonyPostfix]
[HarmonyPatch(typeof(EffectsService), nameof(EffectsService.GetBuildingProductionRate))]
static void PatchEffectsService3(ref float __result) {
__result *= Main.ProductionSpeedMultiplier.Value;
}
[HarmonyPostfix]
[HarmonyPatch(typeof(EffectsService), nameof(EffectsService.GetNewcomersIntervalRate))]
static void PatchEffectsService4(ref float __result) {
__result *= Main.NewcomverRateMultiplier.Value;
}
[HarmonyPostfix]
[HarmonyPatch(typeof(EffectsService), nameof(EffectsService.GetVillagerCapacity))]
static void PatchEffectsService5(ref int __result) {
__result *= Main.VillagerCapacityMultiplier.Value;
}
[HarmonyPostfix]
[HarmonyPatch(typeof(EffectsService), nameof(EffectsService.GetTraderIntervalRate))]
static void PatchEffectsService6(ref float __result) {
__result *= Main.TraderRateMultiplier.Value;
}
[HarmonyPostfix]
[HarmonyPatch(typeof(EffectsService), nameof(EffectsService.GetTraderMerchsAmount))]
static void PatchEffectsService7(ref int __result) {
__result *= Main.TraderMerchMultiplier.Value;
}
[HarmonyPostfix]
[HarmonyPatch(typeof(EffectsService), nameof(EffectsService.GetHearthRange))]
static void PatchEffectsService8(ref float __result) {
__result *= Main.HearthRangeMultiplier.Value;
}
[HarmonyPostfix]
[HarmonyPatch(typeof(EffectsService), nameof(EffectsService.GetHouseCapacity), typeof(HouseModel))]
static void PatchEffectsService9(ref int __result) {
__result = (int)(Main.HouseCapacityMultiplier.Value * __result);
}
[HarmonyPostfix]
[HarmonyPatch(typeof(EffectsService), nameof(EffectsService.GetHouseCapacity), typeof(House))]
static void PatchEffectsService9_2(ref int __result) {
__result = (int)(Main.HouseCapacityMultiplier.Value * __result);
}
[HarmonyPostfix]
[HarmonyPatch(typeof(EffectsService), nameof(EffectsService.GetNewcomersBonus))]
static void PatchEffectsService10(ref int __result) {
__result = (int)(Main.NewcomerBonusMultiplier.Value * __result);
}
[HarmonyPostfix]
[HarmonyPatch(typeof(EffectsService), nameof(EffectsService.GetNewcomersRaceBonus))]
static void PatchEffectsService11(ref int __result) {
__result += Main.AdditionalNewcomerBonus.Value;
}
[HarmonyPostfix]
[HarmonyPatch(typeof(EffectsService), nameof(EffectsService.GetTradeRoutesSpeed))]
static void PatchEffectsService12(ref float __result) {
__result += Main.TradeRouteSpeedMultiplier.Value;
}
[HarmonyPrefix]
[HarmonyPatch(typeof(TimeScaleService), "SetScale")]
static void PatchGameSpeeds(ref float scale) {
scale *= Main.GameSpeedMultiplier.Value;
}
[HarmonyPrefix]
[HarmonyPatch(typeof(MetaEconomyService), nameof(MetaEconomyService.Add))]
static void PatchMetaCurrencyGain(ref MetaCurrency currency) {
currency.amount = (int)(currency.amount * Main.MetaCurrencyMultiplier.Value);
}
static void DoPatch(BasePercentageMetaReward model) {
string upgName = model.displayName.ToString();
if (!baseValues.ContainsKey(upgName)) {
Console.WriteLine("Base value does not exist yet for {0} (class: {1}), adding", upgName,
model.GetType().Name);
baseValues.Add(upgName, model.amount);
}
if (Math.Abs(baseValues[upgName] - model.amount) < 0.01f) {
float newValue = baseValues[upgName] * 64;
Console.WriteLine("Base value is different for {0}, updating from {1} to {2}", upgName,
baseValues[upgName],
newValue);
baseValues[upgName] = newValue;
}
else {
Console.WriteLine("Base value is the same for {0}, skipping {1}", upgName, baseValues[upgName]);
}
}
static void DoPatch(BaseFlatMetaReward model) {
string upgName = model.displayName.ToString();
if (!baseValues.ContainsKey(upgName)) {
Console.WriteLine("Base value does not exist yet for {0} (class: {1}), adding", upgName,
model.GetType().Name);
baseValues.Add(upgName, model.amount);
}
if (Math.Abs(baseValues[upgName] - model.amount) < 0.01f) {
float newValue = baseValues[upgName] * 64;
Console.WriteLine("Base value is different for {0}, updating from {1} to {2}", upgName,
baseValues[upgName],
newValue);
baseValues[upgName] = newValue;
}
else {
Console.WriteLine("Base value is the same for {0}, skipping {1}", upgName, baseValues[upgName]);
}
}
// [HarmonyPrefix]
// [HarmonyPatch(typeof(TacAidPointsController), "AddTP")]
// static void TpMultiplier(ref float val) {
// if (val == 0) {
// return;
// }
//
// float multiplier = Main.TPMultiplier.Value;
// // Console.WriteLine("Multiplying TP {0} by {1}", val, multiplier);
// val *= multiplier;
// }
//
// [HarmonyPrefix]
// [HarmonyPatch(typeof(MapZoneFactory), "MakeRefitZone")]
// static void SupplyAoeMultiplier(ref eSides side, ref Vector3 position, ref float size) {
// float multiplier = Main.SupplyAOEMultiplier.Value;
// Console.WriteLine("Multiplying supply aoe {0} by {1}", size, multiplier);
// size *= multiplier;
// }
//
// [HarmonyPrefix]
// [HarmonyPatch(typeof(PlatoonHQVisuals), "Start")]
// static void HqAoeMultiplier(PlatoonHQVisuals __instance) {
// Console.WriteLine("Patching HQ radius - base range {0}", baseHqValue);
// if (baseHqValue == 0) {
// baseHqValue = __instance.platoon.parameters.HQRadius;
// Console.WriteLine("Base range is 0, assigning new: {0}", baseHqValue);
// }
//
// __instance.platoon.parameters.HQRadius = baseHqValue * Main.HQAOEMultiplier.Value;
// Console.WriteLine("HQ radius patched to: {0}", __instance.platoon.parameters.HQRadius);
// }
//
// [HarmonyPrefix]
// [HarmonyPatch(typeof(PlatoonSupplyModule), "Start")]
// static void SupplyAoeMultiplier(PlatoonSupplyModule __instance) {
// Console.WriteLine("Patching supply amount - base amount {0}", baseSupplyValue);
// if (baseSupplyValue == 0) {
// baseSupplyValue = __instance.platoon.parameters.supplyPointsPerUnit;
// Console.WriteLine("Base amount is 0, assigning new: {0}", baseSupplyValue);
// }
//
// __instance.platoon.parameters.supplyPointsPerUnit =
// (int)(baseSupplyValue * Main.SupplyAmountMultiplier.Value);
// Console.WriteLine("Supply amount patched to: {0}", __instance.platoon.parameters.supplyPointsPerUnit);
// }
//
// [HarmonyPostfix]
// [HarmonyPatch(typeof(WeaponAttackBase), "GetReloadInterval")]
// static void FireRateMultiplier(ref float __result) {
// Console.WriteLine("Patching fire rate");
//
// __result *= Main.FireRateMultiplier.Value;
// Console.WriteLine("Fire rate patched to: {0}", __result);
// }
//
// [HarmonyPostfix]
// [HarmonyPatch(typeof(WeaponAttackBase), "GetAimInterval")]
// static void AimingIntervalMultiplier(ref float __result) {
// Console.WriteLine("Patching aim interval - base amount {0}", baseSupplyValue);
//
// __result *= Main.AimIntervalMultiplier.Value;
// Console.WriteLine("Aim interval patched to: {0}", __result);
// }
//
// [HarmonyPrefix]
// [HarmonyPatch(typeof(TimerManager), "GetPersistentTimer")]
// static void Transpiler(ref float interval, ref string hint) {
// if (hint == "burst") {
// Console.WriteLine("Patching burst interval from: {0}", interval);
// interval *= Main.FireRateMultiplier.Value;
// Console.WriteLine("Burst interval patched to: {0}", interval);
// }
// }
//
// [HarmonyPostfix]
// [HarmonyPatch(typeof(RefitZone), "OnRefitStep")]
// static void SupplyRateMultiplier(ref float hpVal, ref float ammoVal) {
// Console.WriteLine("Patching refit step from: {0} {1}", hpVal, ammoVal);
// hpVal *= Main.SupplyRateMultiplier.Value;
// ammoVal *= Main.SupplyRateMultiplier.Value;
// Console.WriteLine("Patching refit step to: {0} {1}", hpVal, ammoVal);
// }
//
// // [HarmonyPatch(typeof(AdvancedRulesData), "Validate")]
// // static IEnumerable<CodeInstruction> Transpiler(IEnumerable<CodeInstruction> instructions) {
// // var codes = new List<CodeInstruction>(instructions);
// //
// // foreach (var code in codes) {
// // if (code.opcode == OpCodes.Ldc_R4) {
// // Console.WriteLine("Changing " + code);
// // code.operand = (float)code.operand * 2;
// // Console.WriteLine("Changed " + code);
// // }
// // }
// //
// // return codes.AsEnumerable();
// // }
//
// // [HarmonyPatch(typeof(AdvancedRulesData), "IsWithinLimits")]
// // static IEnumerable<CodeInstruction> Transpiler2(IEnumerable<CodeInstruction> instructions) {
// // var codes = new List<CodeInstruction>(instructions);
// //
// // foreach (var code in codes) {
// // if (code.opcode == OpCodes.Ldc_R4) {
// // Console.WriteLine("Changing " + code);
// // code.operand = (float)code.operand * 2;
// // Console.WriteLine("Changed " + code);
// // }
// // }
// //
// // return codes.AsEnumerable();
// // }
//
// // private static float baseAccuracy;
// //
// // [HarmonyPostfix]
// // [HarmonyPatch(typeof(SkirmishAdvancedRules), "Update")]
// // static void AccuracyPatch(SkirmishAdvancedRules __instance) {
// // var accMod = Traverse.Create(__instance).Field("currentARD").Field("accuracyModifier");
// // if (baseAccuracy == 0) {
// // baseAccuracy = (float)accMod.GetValue();
// // Console.WriteLine("Base accuracy set to {0}", baseAccuracy);
// // }
// //
// // accMod.SetValue(baseAccuracy * 4f);
// // Console.WriteLine("Accuracy now: {0}", accMod.GetValue());
// // }
}
}

View File

@@ -1,35 +0,0 @@
using System.Reflection;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("Regiments")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("Regiments")]
[assembly: AssemblyCopyright("Copyright © 2023")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("DA9D274E-486F-4F82-84FF-CD9388CB0B09")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

View File

@@ -1,274 +0,0 @@
// using System;
// using System.Collections.Generic;
// using System.Linq;
// using System.Reflection.Emit;
// using BepInEx;
// using BepInEx.Configuration;
// using HarmonyLib;
// using HarmonyLib.Tools;
//
// namespace Regiments {
// [BepInPlugin(pluginGuid, pluginName, pluginVersion)]
// public class Main : BaseUnityPlugin {
// private const string pluginGuid = "CykaMod";
// private const string pluginName = "CykaMod";
// private const string pluginVersion = "1.0.0";
//
// public static ConfigEntry<float> skillCap;
// public static ConfigEntry<float> workSpeed;
// public static ConfigEntry<float> workResult;
// public static ConfigEntry<bool> alwaysCritical;
// public static ConfigEntry<float> gameSpeed;
// public static ConfigEntry<int> fans;
// public static ConfigEntry<long> money;
//
// //
// // private void Awake()
// // {
// // configGreeting = Config.Bind("General", // The section under which the option is shown
// // "GreetingText", // The key of the configuration option in the configuration file
// // "Hello, world!", // The default value
// // "A greeting text to show when the game is launched"); // Description of the option to show in the config file
// //
//
// public void Awake() {
// skillCap = Config.Bind("General", "Skill Cap", 100f);
// workSpeed = Config.Bind("General", "Work Speed Multiplier", 4f);
// workResult = Config.Bind("General", "Work Result Multiplier", 4f);
// alwaysCritical = Config.Bind("General", "Work Always Critical", false);
// gameSpeed = Config.Bind("General", "Game Speed Multiplier", 3f);
// fans = Config.Bind("General", "Fans Multiplier", 2);
// money = Config.Bind("General", "Money Multiplier", 2L);
//
// Logger.LogInfo("Cyka mod loaded");
// HarmonyFileLog.Enabled = true;
// Harmony harmony = new Harmony(pluginGuid);
// harmony.PatchAll();
// var originalMethods = harmony.GetPatchedMethods();
// Logger.LogInfo("Patched " + originalMethods.Count() + " methods");
// }
//
// public static bool IsMatch(List<CodeInstruction> codes, int index, List<CodeInstruction> matcher) {
// for (var i = 0; i < matcher.Count; i++) {
// if (codes[index + i].opcode != matcher[i].opcode) {
// return false;
// }
// }
// return true;
// }
//
// public static void InsertAt(List<CodeInstruction> codes, int index, List<CodeInstruction> toInsert) {
// for (var i = 0; i < toInsert.Count; i++) {
// codes.Insert(index + i, toInsert[i]);
// }
// }
// }
//
// [HarmonyPatch(typeof(characterScript), "GetSkillCap")]
// public class SkillCapPatch {
// static void Postfix(ref float __result) {
// // Console.WriteLine("GetSkillCap Postfix! Result is " + __result);
// __result = Main.skillCap.Value;
// }
// }
//
// [HarmonyPatch(typeof(characterScript), "GetSkillCap_Skill")]
// public class SkillCapSkillPatch {
// static void Postfix(ref float __result) {
// // Console.WriteLine("GetSkillCap_Skill Postfix! Result is " + __result);
// __result = Main.skillCap.Value;
// }
// }
//
// [HarmonyPatch(typeof(characterScript), "GetWorkSpeed")]
// public class GetWorkSpeedPatch {
// static void Postfix(ref float __result) {
// // Console.WriteLine("GetWorkSpeed Postfix! Result is " + __result);
// __result *= Main.workSpeed.Value;
// }
// }
//
// [HarmonyPatch(typeof(characterScript), "GetWorkResult")]
// public class GetWorkResultPatch {
// static void Prefix(ref float f) {
// // Console.WriteLine("GetWorkResult Postfix! f is " + f);
// f *= Main.workResult.Value;
// }
// }
//
// [HarmonyPatch(typeof(characterScript), "GetCritic")]
// public class GetCriticPatch {
// static void Postfix(ref bool __result) {
// // Console.WriteLine("GetWorkResult Postfix! f is " + f);
// if (Main.alwaysCritical.Value) {
// __result = true;
// }
// }
// }
//
// [HarmonyPatch(typeof(mainScript), "SetGameSpeed")]
// public class GameSpeedPatch {
// static void Prefix(ref float f) {
// // Console.WriteLine("SetGameSpeed Prefix! Argument is " + f);
// if (f > 1) {
// f *= Main.gameSpeed.Value;
// // Console.WriteLine("Argument modified to " + f);
// }
// }
// }
//
// [HarmonyPatch(typeof(characterScript), "Learn")]
// public static class LearnManyPatch {
// static IEnumerable<CodeInstruction> Transpiler(IEnumerable<CodeInstruction> instructions) {
// var codes = new List<CodeInstruction>(instructions);
//
// for (var i = 0; i < 5; i++) {
// if (codes[i].opcode == OpCodes.Ldc_R4) {
// Console.WriteLine("Changing " + codes[i]);
// codes[i].operand = (float)codes[i].operand * 64;
// Console.WriteLine("Changed " + codes[i]);
// }
// }
//
// return codes.AsEnumerable();
// }
// }
//
// [HarmonyPatch(typeof(arbeitsmarkt), "ArbeitsmarktUpdaten")]
// public static class ManyEmployeesPatch {
// static IEnumerable<CodeInstruction> Transpiler(IEnumerable<CodeInstruction> instructions) {
// var codes = new List<CodeInstruction>(instructions);
//
// for (var i = codes.Count - 1; i > 0; i--) {
// if (codes[i].opcode == OpCodes.Ldc_I4_3) {
// Console.WriteLine("Changing " + codes[i]);
// codes[i] = new CodeInstruction(OpCodes.Ldc_I4, 64);
// Console.WriteLine("Changed " + codes[i]);
// break;
// }
// }
//
// return codes.AsEnumerable();
// }
// }
//
// // [HarmonyPatch(typeof(AILerp), "MovementUpdate")]
// public class MovementSpeedPatch {
// static void Prefix(ref float deltaTime) {
// Console.WriteLine("MovementUpdate Prefix! deltaTime is " + deltaTime);
// deltaTime *= 16f;
// }
// }
//
// // [HarmonyPatch(typeof(movementScript), "Move")]
// public static class EmployeeMovementSpeedPatch {
// static IEnumerable<CodeInstruction> Transpiler(IEnumerable<CodeInstruction> instructions) {
// var codes = new List<CodeInstruction>(instructions);
//
// List<CodeInstruction> matcher = new List<CodeInstruction>();
// matcher.Add(new CodeInstruction(OpCodes.Ldarg_0, null));
// matcher.Add(new CodeInstruction(OpCodes.Ldfld, null));
// matcher.Add(new CodeInstruction(OpCodes.Ldarg_0, null));
// matcher.Add(new CodeInstruction(OpCodes.Ldfld, null));
// matcher.Add(new CodeInstruction(OpCodes.Mul, null));
//
// List<CodeInstruction> patch = new List<CodeInstruction>();
// patch.Add(new CodeInstruction(OpCodes.Ldc_R4, 8));
// patch.Add(new CodeInstruction(OpCodes.Mul, null));
//
// for (var i = codes.Count - 1; i > 0; i--) {
// if (Main.IsMatch(codes, i, matcher)) {
// Main.InsertAt(codes, i + 5, patch);
// Console.WriteLine("Movement speed patched");
// for (var j = 0; j < 15; j++) {
// Console.WriteLine(codes[i + j]);
// }
// break;
// }
// }
// Console.WriteLine("Return");
// return codes.AsEnumerable();
// }
// }
//
// [HarmonyPatch(typeof(mainScript), "WochenUpdates")]
// public static class ContractWorkAmount {
// static IEnumerable<CodeInstruction> Transpiler(IEnumerable<CodeInstruction> instructions) {
// var codes = new List<CodeInstruction>(instructions);
// int methodIndex = -1;
// List<CodeInstruction> pattern = new List<CodeInstruction>();
//
// List<CodeInstruction> matcher = new List<CodeInstruction>();
// matcher.Add(new CodeInstruction(OpCodes.Ldarg_0, null));
// matcher.Add(new CodeInstruction(OpCodes.Ldfld, null));
// matcher.Add(new CodeInstruction(OpCodes.Ldc_I4_0, null));
// matcher.Add(new CodeInstruction(OpCodes.Callvirt, null));
//
// for (var i = 0; i < codes.Count; i++) {
// if (codes[i].operand != null) {
// if (codes[i].operand.ToString().Contains("UpdateContractWork")) {
// methodIndex = i;
// pattern.Add(codes[i - 3]);
// pattern.Add(codes[i - 2]);
// pattern.Add(codes[i - 1]);
// pattern.Add(codes[i]);
// break;
// }
// }
// }
// pattern[2].opcode = OpCodes.Ldc_I4_1;
//
// for (int i = 0; i < 16; i++) {
// for (int j = 0; j < pattern.Count; j++) {
// codes.Insert(methodIndex + i + j, pattern[j]);
// }
// }
//
// return codes.AsEnumerable();
// }
// }
//
// [HarmonyPatch(typeof(platformScript), "SellPlayer")]
// public static class ConsoleProductionReductionPatch {
// static IEnumerable<CodeInstruction> Transpiler(IEnumerable<CodeInstruction> instructions) {
// var codes = new List<CodeInstruction>(instructions);
//
// List<CodeInstruction> matcher = new List<CodeInstruction>();
// matcher.Add(new CodeInstruction(OpCodes.Ldarg_0, null));
// matcher.Add(new CodeInstruction(OpCodes.Ldarg_0, null));
// matcher.Add(new CodeInstruction(OpCodes.Ldfld, null));
// matcher.Add(new CodeInstruction(OpCodes.Ldc_R4, null));
// matcher.Add(new CodeInstruction(OpCodes.Ldc_R4, null));
// matcher.Add(new CodeInstruction(OpCodes.Call, null));
// matcher.Add(new CodeInstruction(OpCodes.Add, null));
// matcher.Add(new CodeInstruction(OpCodes.Stfld, null));
//
// for (var i = 0; i < codes.Count; i++) {
// if (Main.IsMatch(codes, i, matcher)) {
// codes[i + 3].operand = (float)codes[i + 3].operand * 8f;
// codes[i + 4].operand = (float)codes[i + 4].operand * 8f;
// Console.WriteLine("ConsoleProductionReductionPatch patched");
// break;
// }
// }
//
// return codes.AsEnumerable();
// }
// }
//
// [HarmonyPatch(typeof(mainScript), "AddFans")]
// public static class AddFansPatch {
// static void Prefix(ref int i) {
// // Console.WriteLine("GetWorkResult Postfix! f is " + f);
// i *= Main.fans.Value;
// }
// }
//
// [HarmonyPatch(typeof(mainScript), "Earn")]
// public static class AddMoneyPatch {
// static void Prefix(ref long amount) {
// // Console.WriteLine("GetWorkResult Postfix! f is " + f);
// amount *= Main.money.Value;
// }
// }
// }

View File

@@ -1,2 +0,0 @@
echo $(pwd)
cp AgainstTheStorm/obj/Release/AgainstTheStorm.dll /c/Games/Against.the.Storm.v1.0.2r/BepInEx/Plugins

View File

@@ -1 +0,0 @@
for lib in $(cat libs.txt); do find $1 -name "$lib" | sed 's|\\|/|g' | xargs -I% -- cp '%' .; done

View File

@@ -1,6 +0,0 @@
0Harmony.dll
Assembly-CSharp.dll
BepInEx.dll
ConfigurationManager.dll
UnityEngine.CoreModule.dll
UnityEngine.dll

View File

@@ -1,4 +0,0 @@
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.8.1", FrameworkDisplayName = ".NET Framework 4.8.1")]

View File

@@ -1 +0,0 @@
151279b84fdcbaafd9f0fcb1f7663654a57733b1df3836fc5634a1051692a2db

View File

@@ -1,14 +0,0 @@
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Debug\AgainstTheStorm.dll
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Debug\AgainstTheStorm.pdb
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Debug\0Harmony.dll
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Debug\Assembly-CSharp.dll
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Debug\BepInEx.dll
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Debug\ConfigurationManager.dll
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Debug\Sirenix.Serialization.dll
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Debug\UnityEngine.CoreModule.dll
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Debug\UnityEngine.dll
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\obj\Debug\AgainstTheStorm.csproj.AssemblyReference.cache
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\obj\Debug\AgainstTheStorm.csproj.CoreCompileInputs.cache
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\obj\Debug\AgainstTheStorm.csproj.CopyComplete
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\obj\Debug\AgainstTheStorm.dll
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\obj\Debug\AgainstTheStorm.pdb

View File

@@ -1,4 +0,0 @@
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.8.1", FrameworkDisplayName = ".NET Framework 4.8.1")]

View File

@@ -1 +0,0 @@
4baf00dfc139a92b75b2a9b95a0819a23a33a039ecbb07edab3f692cd134a7da

View File

@@ -1,28 +0,0 @@
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Release\AgainstTheStorm.dll
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Release\AgainstTheStorm.pdb
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Release\0Harmony.dll
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Release\Assembly-CSharp.dll
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Release\BepInEx.dll
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Release\ConfigurationManager.dll
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Release\Sirenix.Serialization.dll
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Release\UnityEngine.CoreModule.dll
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Release\UnityEngine.dll
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\obj\Release\AgainstTheStorm.csproj.AssemblyReference.cache
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\obj\Release\AgainstTheStorm.csproj.CoreCompileInputs.cache
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\obj\Release\AgainstTheStorm.csproj.CopyComplete
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\obj\Release\AgainstTheStorm.dll
C:\Users\Administrator\Seafile\Jetbrains\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\obj\Release\AgainstTheStorm.pdb
C:\Users\Administrator\Seafile\Projects-Rider\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Release\AgainstTheStorm.dll
C:\Users\Administrator\Seafile\Projects-Rider\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Release\AgainstTheStorm.pdb
C:\Users\Administrator\Seafile\Projects-Rider\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Release\0Harmony.dll
C:\Users\Administrator\Seafile\Projects-Rider\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Release\Assembly-CSharp.dll
C:\Users\Administrator\Seafile\Projects-Rider\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Release\BepInEx.dll
C:\Users\Administrator\Seafile\Projects-Rider\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Release\ConfigurationManager.dll
C:\Users\Administrator\Seafile\Projects-Rider\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Release\Sirenix.Serialization.dll
C:\Users\Administrator\Seafile\Projects-Rider\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Release\UnityEngine.CoreModule.dll
C:\Users\Administrator\Seafile\Projects-Rider\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\bin\Release\UnityEngine.dll
C:\Users\Administrator\Seafile\Projects-Rider\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\obj\Release\AgainstTheStorm.csproj.AssemblyReference.cache
C:\Users\Administrator\Seafile\Projects-Rider\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\obj\Release\AgainstTheStorm.csproj.CoreCompileInputs.cache
C:\Users\Administrator\Seafile\Projects-Rider\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\obj\Release\AgainstTheStorm.csproj.CopyComplete
C:\Users\Administrator\Seafile\Projects-Rider\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\obj\Release\AgainstTheStorm.dll
C:\Users\Administrator\Seafile\Projects-Rider\RiderProjects\Bepinex\Projects\AgainstTheStorm\AgainstTheStorm\obj\Release\AgainstTheStorm.pdb

View File

@@ -1,21 +0,0 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005C0Harmony_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CAssembly_002DCSharp_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CBepInEx_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CMainAssembly_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CUnityEngine_002ECoreModule_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CUnityEngine_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005C0Harmony_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CAssembly_002DCSharp_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CBepInEx_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CConfigurationManager_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CSirenix_002ESerialization_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CUnityEngine_002ECoreModule_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CUnityEngine_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005C0Harmony_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CAssembly_002DCSharp_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CBepInEx_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CConfigurationManager_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CMainAssembly_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CUnityEngine_002ECoreModule_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CUnityEngine_002Edll/@EntryIndexedValue">True</s:Boolean></wpf:ResourceDictionary>

View File

@@ -1 +0,0 @@
cp 'C:/Users/Administrator/RiderProjects/Bepinex/Projects/Regiments/Regiments/obj/Release/Regiments.dll' 'C:/Program Files (x86)/Steam/steamapps/common/Regiments/BepInEx/plugins'

1
Projects/AirportCEO Submodule

Submodule Projects/AirportCEO added at fca9a14ad4

View File

@@ -1 +0,0 @@
C:/Program Files (x86)/Steam/steamapps/common/Captain of Industry/BepInex

View File

@@ -1,16 +0,0 @@

Microsoft Visual Studio Solution File, Format Version 12.00
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CaptainOfIndustry", "CaptainOfIndustry\CaptainOfIndustry.csproj", "{EE5EFB7F-A4DC-44F0-967B-F71ECA2D46AE}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{EE5EFB7F-A4DC-44F0-967B-F71ECA2D46AE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{EE5EFB7F-A4DC-44F0-967B-F71ECA2D46AE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{EE5EFB7F-A4DC-44F0-967B-F71ECA2D46AE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{EE5EFB7F-A4DC-44F0-967B-F71ECA2D46AE}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
EndGlobal

View File

@@ -1,28 +0,0 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CTerraTech_005Clibs_005C0Harmony_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CTerraTech_005Clibs_005CAssembly_002DCSharp_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CTerraTech_005Clibs_005CBepInEx_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CTerraTech_005Clibs_005CConfigurationManager_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CTerraTech_005Clibs_005CUnityEngine_002ECoreModule_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CTerraTech_005Clibs_005CUnityEngine_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CCaptainOfIndustry_005Clibs_005C0Harmony_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CCaptainOfIndustry_005Clibs_005CAssembly_002DCSharp_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CCaptainOfIndustry_005Clibs_005CBepInEx_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CCaptainOfIndustry_005Clibs_005CConfigurationManager_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CCaptainOfIndustry_005Clibs_005CcopyLibs_002Esh/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CCaptainOfIndustry_005Clibs_005Clibs_002Etxt/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CCaptainOfIndustry_005Clibs_005CMafi_002EBase_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CCaptainOfIndustry_005Clibs_005CMafi_002ECore_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CCaptainOfIndustry_005Clibs_005CMafi_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CCaptainOfIndustry_005Clibs_005CMafi_002EModsAuthoringSupport_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CCaptainOfIndustry_005Clibs_005CMafi_002EUnity_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CCaptainOfIndustry_005Clibs_005CSirenix_002EOdinInspector_002EAttributes_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CCaptainOfIndustry_005Clibs_005CSirenix_002EOdinInspector_002ECompatibilityLayer_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CCaptainOfIndustry_005Clibs_005CSirenix_002ESerialization_002EConfig_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CCaptainOfIndustry_005Clibs_005CSirenix_002ESerialization_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CCaptainOfIndustry_005Clibs_005CSirenix_002EUtilities_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CCaptainOfIndustry_005Clibs_005CUnityEngine_002ECoreModule_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CCaptainOfIndustry_005Clibs_005CUnityEngine_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:String x:Key="/Default/Environment/AssemblyExplorer/XmlDocument/@EntryValue">&lt;AssemblyExplorer /&gt;</s:String>
<s:String x:Key="/Default/Environment/Hierarchy/Build/BuildTool/CustomBuildToolPath/@EntryValue">C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe</s:String>
<s:Int64 x:Key="/Default/Environment/Hierarchy/Build/BuildTool/MsbuildVersion/@EntryValue">262144</s:Int64></wpf:ResourceDictionary>

View File

@@ -1,97 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{EE5EFB7F-A4DC-44F0-967B-F71ECA2D46AE}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>CaptainOfIndustry</RootNamespace>
<AssemblyName>CaptainOfIndustry</AssemblyName>
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Compile Include="Class1.cs" />
<Compile Include="Patches.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
<Reference Include="0Harmony">
<HintPath>..\libs\0Harmony.dll</HintPath>
</Reference>
<Reference Include="Assembly-CSharp">
<HintPath>..\libs\Assembly-CSharp.dll</HintPath>
</Reference>
<Reference Include="BepInEx">
<HintPath>..\libs\BepInEx.dll</HintPath>
</Reference>
<Reference Include="ConfigurationManager">
<HintPath>..\libs\ConfigurationManager.dll</HintPath>
</Reference>
<Reference Include="Mafi">
<HintPath>..\libs\Mafi.dll</HintPath>
</Reference>
<Reference Include="Mafi.Base">
<HintPath>..\libs\Mafi.Base.dll</HintPath>
</Reference>
<Reference Include="Mafi.Core">
<HintPath>..\libs\Mafi.Core.dll</HintPath>
</Reference>
<Reference Include="Mafi.ModsAuthoringSupport">
<HintPath>..\libs\Mafi.ModsAuthoringSupport.dll</HintPath>
</Reference>
<Reference Include="Mafi.Unity">
<HintPath>..\libs\Mafi.Unity.dll</HintPath>
</Reference>
<Reference Include="Sirenix.OdinInspector.Attributes">
<HintPath>..\libs\Sirenix.OdinInspector.Attributes.dll</HintPath>
</Reference>
<Reference Include="Sirenix.OdinInspector.CompatibilityLayer">
<HintPath>..\libs\Sirenix.OdinInspector.CompatibilityLayer.dll</HintPath>
</Reference>
<Reference Include="Sirenix.Serialization">
<HintPath>..\libs\Sirenix.Serialization.dll</HintPath>
</Reference>
<Reference Include="Sirenix.Serialization.Config">
<HintPath>..\libs\Sirenix.Serialization.Config.dll</HintPath>
</Reference>
<Reference Include="Sirenix.Utilities">
<HintPath>..\libs\Sirenix.Utilities.dll</HintPath>
</Reference>
<Reference Include="UnityEngine">
<HintPath>..\libs\UnityEngine.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.CoreModule">
<HintPath>..\libs\UnityEngine.CoreModule.dll</HintPath>
</Reference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

View File

@@ -1,75 +0,0 @@
using BepInEx;
using BepInEx.Configuration;
using HarmonyLib;
using HarmonyLib.Tools;
// TODO: Make shield and repair bigger
// TODO: Maybe make props faster, thrusters work fine
namespace CaptainOfIndustry {
[BepInPlugin(pluginGuid, pluginName, pluginVersion)]
public class Main : BaseUnityPlugin {
private const string pluginGuid = "CykaMod";
private const string pluginName = "CykaMod";
private const string pluginVersion = "1.0.0";
public static ConfigEntry<int> excavatorCapacityMultiplier;
public static ConfigEntry<int> truckCapacityMultiplier;
public static ConfigEntry<int> cargoShipCapacityMultiplier;
public static ConfigEntry<float> excavatorMiningAreaMultiplier;
public static ConfigEntry<float> excavatorMinReachMultiplier;
public static ConfigEntry<float> excavatorMaxReachMultiplier;
public static ConfigEntry<float> bufferCapacityMultiplier;
public static ConfigEntry<float> unityGenerationMultiplier;
public static ConfigEntry<float> depotTransferSpeedMultiplier;
public static ConfigEntry<float> worldMineSpeedMultiplier;
public static ConfigEntry<float> housingCapacityMultiplier;
public static ConfigEntry<float> dumpDelayMultiplier;
public static ConfigEntry<float> transportSpeedMultiplier;
public static ConfigEntry<float> shipyardCargoMultiplier;
public void Awake() {
excavatorCapacityMultiplier = Config.Bind("General", "Excavator Capacity Multiplier", 1, new ConfigDescription("Excavator Capacity Multiplier"));
truckCapacityMultiplier = Config.Bind("General", "Truck Capacity Multiplier", 1, new ConfigDescription("Truck Capacity Multiplier"));
cargoShipCapacityMultiplier = Config.Bind("General", "Cargo Ship Capacity Multiplier", 1, new ConfigDescription("Cargo Ship Capacity Multiplier"));
excavatorMiningAreaMultiplier = Config.Bind("General", "Excavator Mining Area Multiplier", 1f, new ConfigDescription("Excavator Mining Area Multiplier"));
excavatorMinReachMultiplier = Config.Bind("General", "Excavator Min Reach Multiplier", 1f, new ConfigDescription("Excavator Min Reach Multiplier"));
excavatorMaxReachMultiplier = Config.Bind("General", "Excavator Max Reach Multiplier", 1f, new ConfigDescription("Excavator Max Reach Multiplier"));
bufferCapacityMultiplier = Config.Bind("General", "Buffer Capacity Multiplier", 1f, new ConfigDescription("Buffer Capacity Multiplier"));
storageCapacityMultiplier = Config.Bind("General", "Storage Capacity Multiplier", 1f, new ConfigDescription("Storage Capacity Multiplier"));
unityGenerationMultiplier = Config.Bind("General", "Unity Generation Multiplier", 1f, new ConfigDescription("Unity Generation Multiplier"));
depotTransferSpeedMultiplier = Config.Bind("General", "Depot Transfer Speed Multiplier", 1f, new ConfigDescription("Depot Transfer Speed Multiplier"));
worldMineSpeedMultiplier = Config.Bind("General", "World Mine Speed Multiplier", 1f, new ConfigDescription("World Mine Speed Multiplier"));
housingCapacityMultiplier = Config.Bind("General", "Housing Capacity Multiplier", 1f, new ConfigDescription("Housing Capacity Multiplier"));
dumpDelayMultiplier = Config.Bind("General", "Dump Delay Multiplier", 1f, new ConfigDescription("Dump Delay Multiplier"));
transportSpeedMultiplier = Config.Bind("General", "Transport Speed Multiplier", 1f, new ConfigDescription("Transport Speed Multiplier"));
shipyardCargoMultiplier = Config.Bind("General", "Shipyard Cargo Multiplier", 1f, new ConfigDescription("Shipyard Cargo Multiplier"));
// shootingSpeedMultiplier.SettingChanged += (sender, args) => WeaponPropertiesManager.DoPatch();
// energyGenMultiplier.SettingChanged += (sender, args) => GeneratorPropertiesManager.DoPatch();
// magnetStrenghtMultiplier.SettingChanged += (sender, args) => MagnetPropertiesManager.DoPatch();
// magnetRadiusMultiplier.SettingChanged += (sender, args) => MagnetPropertiesManager.DoPatch();
// beamStrenghtMultiplier.SettingChanged += (sender, args) => BeamPropertiesManager.DoPatch();
// beamRadiusMultiplier.SettingChanged += (sender, args) => BeamPropertiesManager.DoPatch();
// fuelTankRefillMultiplier.SettingChanged += (sender, args) => FuelPropertiesManager.DoPatch();
// fuelTankCapacityMultiplier.SettingChanged += (sender, args) => FuelPropertiesManager.DoPatch();
// wheelTorqueMultiplier.SettingChanged += (sender, args) => WheelPropertiesManager.DoPatch();
// wheelSpeedMultiplier.SettingChanged += (sender, args) => WheelPropertiesManager.DoPatch();
// jetThrustMultiplier.SettingChanged += (sender, args) => ThrusterPropertiesManager.DoPatch();
// minerGroundArea.SettingChanged += (sender, args) => MinerPropertiesManager.DoPatch();
// minerMiningSpeed.SettingChanged += (sender, args) => MinerPropertiesManager.DoPatch();
// wirelessChargingPowerPerArcMultiplier.SettingChanged += (sender, args) => WirelessChargerPropertiesManager.DoPatch();
// wirelessChargingArcFiringIntervalMultiplier.SettingChanged += (sender, args) => WirelessChargerPropertiesManager.DoPatch();
// wirelessChargingRadiusMultiplier.SettingChanged += (sender, args) => WirelessChargerPropertiesManager.DoPatch();
Logger.LogInfo("Cyka mod loaded");
HarmonyFileLog.Enabled = true;
Harmony harmony = new Harmony(pluginGuid);
harmony.PatchAll();
var originalMethods = harmony.GetPatchedMethods();
// Logger.LogInfo("Patched " + originalMethods.Count() + " methods");
}
public static ConfigEntry<float> storageCapacityMultiplier;
}
}

View File

@@ -1,466 +0,0 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Reflection.Emit;
using HarmonyLib;
using Mafi;
using Mafi.Collections.ImmutableCollections;
using Mafi.Core;
using Mafi.Core.Buildings.Cargo.Modules;
using Mafi.Core.Buildings.Cargo.Ships.Modules;
using Mafi.Core.Buildings.Settlements;
using Mafi.Core.Buildings.Shipyard;
using Mafi.Core.Buildings.Storages;
using Mafi.Core.Entities;
using Mafi.Core.Entities.Dynamic;
using Mafi.Core.Entities.Static;
using Mafi.Core.Entities.Static.Layout;
using Mafi.Core.Factory.Machines;
using Mafi.Core.Factory.Transports;
using Mafi.Core.Population;
using Mafi.Core.Ports.Io;
using Mafi.Core.Products;
using Mafi.Core.Prototypes;
using Mafi.Core.Terrain;
using Mafi.Core.World.Entities;
namespace CaptainOfIndustry {
[HarmonyPatch]
public class Patches {
[HarmonyPrefix]
[HarmonyPatch(typeof(ExcavatorProtoBuilder.ExcavatorProtoBuilderState), "SetCapacity")]
static void excavatorCapacityMultiplier(ref int quantity) {
// Console.WriteLine("IndustrialCyka: Old excavator capacity: {0}", quantity);
quantity *= Main.excavatorCapacityMultiplier.Value;
// Console.WriteLine("IndustrialCyka: Old excavator capacity: {0}", quantity);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(ExcavatorProtoBuilder.ExcavatorProtoBuilderState), "SetMinedThicknessByDistanceMeters")]
static void excavatorMiningAreaMultiplier(ref float[] thicknessMeters) {
for (int i = 0; i < thicknessMeters.Length; i++) {
// Console.WriteLine("IndustrialCyka: Old mining area: {0}", thicknessMeters[i]);
thicknessMeters[i] *= Main.excavatorMiningAreaMultiplier.Value;
// Console.WriteLine("IndustrialCyka: New mining area: {0}", thicknessMeters[i]);
}
}
[HarmonyPrefix]
[HarmonyPatch(typeof(ExcavatorProtoBuilder.ExcavatorProtoBuilderState), "SetMaxMiningDistance")]
static void excavatorReachMultiplier(ref RelTile1i minMiningDistance, ref RelTile1i maxMiningDistance) {
Console.WriteLine("Min distance: {0}, max distance: {1}", minMiningDistance, maxMiningDistance);
minMiningDistance = new RelTile1i((int)(minMiningDistance.Value * Main.excavatorMinReachMultiplier.Value));
maxMiningDistance = new RelTile1i((int)(maxMiningDistance.Value * Main.excavatorMaxReachMultiplier.Value));
Console.WriteLine("Min distance: {0}, max distance: {1}", minMiningDistance, maxMiningDistance);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(TruckProtoBuilder.TruckProtoBuilderState), "SetCapacity")]
static void truckCapacityMultiplier(ref int quantity) {
// Console.WriteLine("IndustrialCyka: Old truck capacity: {0}", quantity);
quantity *= Main.truckCapacityMultiplier.Value;
// Console.WriteLine("IndustrialCyka: New truck capacity: {0}", quantity);
}
// [HarmonyPrefix]
// [HarmonyPatch(typeof(StorageProtoBuilder.State), "SetCapacity")]
// static void storageCapacityMultiplier(ref int capacity) {
// // Console.WriteLine("IndustrialCyka: Old storage capacity: {0}", capacity);
// capacity = (int)(capacity * Main.storageCapacityMultiplier.Value);
// // Console.WriteLine("IndustrialCyka: New storage capacity: {0}", capacity);
// }
[HarmonyPostfix]
[HarmonyPatch(typeof(CargoShipModuleProto), MethodType.Constructor,
new[] {
typeof(Proto.ID), typeof(Proto.Str), typeof(ProductType), typeof(Quantity),
typeof(CargoShipModuleProto.Gfx)
})]
static void cargoShipCapacityMultiplier(CargoShipModuleProto __instance) {
// Console.WriteLine("IndustrialCyka: Old ship capacity: {0}", __instance.Capacity.Value);
__instance.Capacity = new Quantity(__instance.Capacity.Value * Main.cargoShipCapacityMultiplier.Value);
// Console.WriteLine("IndustrialCyka: New ship capacity: {0}", __instance.Capacity.Value);
}
// No workey... idk how it's supposed to work, speed is always 1 or 100%
// [HarmonyPrefix]
// [HarmonyPatch(typeof(DrivingEntity), "SetSpeedFactor")]
// static void vehicleSpeedMultiplier(ref Percent speedFactor) {
// // Console.WriteLine("IndustrialCyka: Old speed: {0}", speedFactor.ToString());
// // typeof(Percent)
// // .GetField("RawValue",BindingFlags.Instance|BindingFlags.NonPublic)
// // .SetValue(speedFactor,speedFactor.ToFloat() / Main.vehicleSpeedMultiplier.Value);
// Percent newSpeedFactor = Percent.FromFloat(speedFactor.ToFloat() / Main.vehicleSpeedMultiplier.Value);
// speedFactor = newSpeedFactor;
// // Console.WriteLine("IndustrialCyka: New speed: {1}", newSpeedFactor.RawValue.ToString());
// }
// [HarmonyPostfix]
// [HarmonyPatch(typeof(SmoothDriver), "SetSpeedFactor")]
// static void vehicleSpeedMultiplier(SmoothDriver __instance) {
// Fix32 speedMulti = Fix32.FromFloat(Main.vehicleSpeedMultiplier.Value);
//
// Traverse traverse = Traverse.Create(__instance);
// Traverse maxForwardsSpeedField = traverse.Field("m_maxForwardsSpeed");
// Traverse maxBackwardsSpeedField = traverse.Field("m_maxBackwardsSpeed");
// Traverse maxAccelerationField = traverse.Field("m_maxAcceleration");
//
// // Console.WriteLine("IndustrialCyka: Old speeds: (F) {0}, (B) {1}, (A) {2}", maxForwardsSpeedField.GetValue(),
// // maxBackwardsSpeedField.GetValue(), maxAccelerationField.GetValue());
//
// maxForwardsSpeedField.SetValue((Fix32)maxForwardsSpeedField.GetValue() * speedMulti);
// maxBackwardsSpeedField.SetValue((Fix32)maxBackwardsSpeedField.GetValue() * speedMulti);
// maxAccelerationField.SetValue((Fix32)maxAccelerationField.GetValue() * speedMulti);
//
// // Console.WriteLine("IndustrialCyka: New speeds: (F) {0}, (B) {1}, (A) {2}", maxForwardsSpeedField.GetValue(),
// // maxBackwardsSpeedField.GetValue(), maxAccelerationField.GetValue());
// }
[HarmonyPostfix]
[HarmonyPatch(typeof(StorageBaseProto), MethodType.Constructor,
new[] {
typeof(StaticEntityProto.ID),
typeof(Proto.Str),
typeof(EntityLayout),
typeof(Quantity),
typeof(EntityCosts),
typeof(LayoutEntityProto.Gfx),
typeof(Quantity),
typeof(Duration),
typeof(IEnumerable<Tag>)
})]
static void storageCapacityMultiplier(StorageProto __instance) {
// Console.WriteLine("IndustrialCyka: Old storage capacity: {0}", __instance.Capacity.Value);
// Console.WriteLine("IndustrialCyka: Old storage transfer limit: {0}", __instance.TransferLimit.Value);
Traverse traverse = Traverse.Create(__instance);
traverse.Field("Capacity")
.SetValue(new Quantity((int)(__instance.Capacity.Value * Main.storageCapacityMultiplier.Value)));
traverse.Field("TransferLimit").SetValue(new Quantity(10000));
traverse.Field("TransferLimitDuration").SetValue(Duration.FromTicks(1));
// Console.WriteLine("IndustrialCyka: New storage capacity: {0}", __instance.Capacity.Value);
// Console.WriteLine("IndustrialCyka: New storage transfer limit: {0}", __instance.TransferLimit.Value);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(UpointsManager), "GenerateUnity")]
static void unityGenerationMultiplier(Proto.ID categoryId, ref Upoints generated) {
// Console.WriteLine("IndustrialCyka: Old generated {0} unity", generated.Value);
Fix32 multi = Fix32.FromFloat(Main.unityGenerationMultiplier.Value);
generated = new Upoints(generated.Value * multi);
// Console.WriteLine("IndustrialCyka: New generated {0} unity", generated.Value);
}
[HarmonyTranspiler]
[HarmonyPatch(typeof(Machine), "updateWorkOnRecipes")]
static IEnumerable<CodeInstruction> unityBooster(IEnumerable<CodeInstruction> instructions) {
Dictionary<int, OpCode> matchTable = new Dictionary<int, OpCode>();
matchTable[0] = OpCodes.Ldsfld;
matchTable[1] = OpCodes.Br;
matchTable[2] = OpCodes.Ldc_I4_2;
int matches = 0;
int totalMatch = matchTable.Count;
var codes = new List<CodeInstruction>(instructions);
for (int i = 0; i < codes.Count; i++) {
if (matches >= totalMatch) {
break;
}
if (codes[i].opcode.Equals(matchTable[matches])) {
if (matches == totalMatch - 1) {
codes[i].opcode = OpCodes.Ldc_I4_6;
}
matches++;
}
}
// for (int i = 0; i < codes.Count; i++) {
// Console.WriteLine(codes[i].ToString());
// }
return codes.AsEnumerable();
}
// Could not make this work either... idk why... Doesn't make sense...
// [HarmonyPostfix]
// [HarmonyPatch(typeof(SimpleVirtualResource), "MineResourceAt")]
// static void infiniteGroundResources(SimpleVirtualResource __instance) {
// // Console.WriteLine("IndustrialCyka: Patching ground resources (Capacity)");
// Traverse traverse = Traverse.Create(__instance);
// Traverse capacityField = traverse.Field("Capacity");
// capacityField.SetValue(1000000000);
// Traverse quantityField = traverse.Field("Quantity");
// quantityField.SetValue(1000000000);
// }
[HarmonyPrefix]
[HarmonyPatch(typeof(ProductBuffer), "ForceNewCapacityTo")]
static void bufferCapacityMultiplier(ref Quantity newCapacity) {
if (newCapacity.Value <= 0) {
return;
}
Quantity newNewCapacity = new Quantity((int)(newCapacity.Value * Main.bufferCapacityMultiplier.Value));
newCapacity = newNewCapacity;
}
[HarmonyPostfix]
[HarmonyPatch(typeof(CargoDepotModuleProto), MethodType.Constructor,
new[] {
typeof(CargoDepotModuleProto.ID),
typeof(Proto.Str),
typeof(EntityLayout),
typeof(ProductType),
typeof(Option<CargoDepotModuleProto>),
typeof(Quantity),
typeof(Quantity),
typeof(Duration),
typeof(Electricity),
typeof(bool),
typeof(Percent),
typeof(EntityCosts),
typeof(CargoDepotModuleProto.Gfx),
typeof(IEnumerable<Tag>),
})]
static void depotTransferSpeedMultiplier(CargoDepotModuleProto __instance) {
// Console.WriteLine("IndustrialCyka: Old storage capacity: {0}", __instance.Capacity.Value);
Traverse traverse = Traverse.Create(__instance);
traverse.Field("QuantityPerExchange")
.SetValue(new Quantity((int)(__instance.QuantityPerExchange.Value *
Main.depotTransferSpeedMultiplier.Value)));
// Console.WriteLine("IndustrialCyka: New storage capacity: {0}", __instance.Capacity.Value);
}
[HarmonyPostfix]
[HarmonyPatch(typeof(WorldMapMineProto), MethodType.Constructor,
new[] {
typeof(EntityProto.ID),
typeof(Proto.Str),
typeof(ProductQuantity),
typeof(Duration),
typeof(Upoints),
typeof(UpointsCategoryProto),
typeof(EntityCosts),
typeof(Func<int, EntityCosts>),
typeof(int),
typeof(Quantity),
typeof(WorldMapEntityProto.Gfx),
typeof(int),
typeof(int),
typeof(IEnumerable<Tag>),
})]
static void worldMineSpeedMultiplier(WorldMapMineProto __instance) {
// Console.WriteLine("Before: {0}", __instance.ProducedProductPerStep.Quantity.Value);
ProductQuantity newProductQuantity = new ProductQuantity(__instance.ProducedProductPerStep.Product,
new Quantity((int)(__instance.ProducedProductPerStep.Quantity.Value *
Main.worldMineSpeedMultiplier.Value)));
Traverse.Create(__instance)
.Field("ProducedProductPerStep")
.SetValue(newProductQuantity);
// Console.WriteLine("After: {0}", __instance.ProducedProductPerStep.Quantity.Value);
}
[HarmonyPostfix]
[HarmonyPatch(typeof(WorldMapMineProto), MethodType.Constructor,
new[] {
typeof(EntityProto.ID),
typeof(Proto.Str),
typeof(ProductQuantity),
typeof(Duration),
typeof(Upoints),
typeof(UpointsCategoryProto),
typeof(EntityCosts),
typeof(Func<int, EntityCosts>),
typeof(int),
typeof(Quantity),
typeof(WorldMapEntityProto.Gfx),
typeof(int),
typeof(int),
typeof(IEnumerable<Tag>),
})]
static void worldMineLevelIncrementMultiplier(WorldMapMineProto __instance) {
Traverse traverse = Traverse.Create(__instance);
// int level = traverse.Field("Level").GetValue<int>();
int maxLevel = traverse.Field("MaxLevel").GetValue<int>();
// int levelsPerUpgrade = traverse.Field("LevelsPerUpgrade").GetValue<int>();
int newLevelsPerUpgrade = 10;
int newMaxLevel = (int)Math.Ceiling((double)maxLevel / newLevelsPerUpgrade) * newLevelsPerUpgrade;
// Console.WriteLine("Level: {0}, MaxLevel: {1}, LevelsPerUpgrade: {2}", level, maxLevel, levelsPerUpgrade);
// Console.WriteLine("NewMaxLevel: {0}", newMaxLevel);
traverse.Field("MaxLevel").SetValue(newMaxLevel);
traverse.Field("LevelsPerUpgrade").SetValue(newLevelsPerUpgrade);
}
[HarmonyTranspiler]
[HarmonyPatch(typeof(WorldMapMineProto), MethodType.Constructor,
new[] {
typeof(EntityProto.ID),
typeof(Proto.Str),
typeof(ProductQuantity),
typeof(Duration),
typeof(Upoints),
typeof(UpointsCategoryProto),
typeof(EntityCosts),
typeof(Func<int, EntityCosts>),
typeof(int),
typeof(Quantity),
typeof(WorldMapEntityProto.Gfx),
typeof(int),
typeof(int),
typeof(IEnumerable<Tag>),
})]
static IEnumerable<CodeInstruction> cookWorldMineLevelIncrementMultiplier(
IEnumerable<CodeInstruction> instructions) {
Dictionary<int, OpCode> matchTable = new Dictionary<int, OpCode>();
matchTable[0] = OpCodes.Rem;
matchTable[1] = OpCodes.Ldfld;
matchTable[2] = OpCodes.Ldarg_0;
matchTable[3] = OpCodes.Ldfld;
matchTable[4] = OpCodes.Ldarg_0;
int matches = 0;
int totalMatch = matchTable.Count;
var codes = new List<CodeInstruction>(instructions);
for (int i = codes.Count - 1; i >= 0; i--) {
if (matches >= totalMatch) {
break;
}
if (codes[i].opcode.Equals(matchTable[matches])) {
if (matches == totalMatch - 1) {
codes[i + 4].opcode = OpCodes.Add;
codes[i + 5].opcode = OpCodes.Brtrue_S;
break;
}
matches++;
}
else {
matches = 0;
}
}
return codes.AsEnumerable();
}
[HarmonyPostfix]
[HarmonyPatch(typeof(SettlementHousingModuleProto), MethodType.Constructor, new[] {
typeof(StaticEntityProto.ID),
typeof(Proto.Str),
typeof(EntityLayout),
typeof(EntityCosts),
typeof(int),
typeof(Upoints),
typeof(ImmutableArray<KeyValuePair<ImmutableArray<PopNeedProto>, Percent>>),
typeof(IReadOnlyDictionary<PopNeedProto, Percent>),
typeof(Option<SettlementHousingModuleProto>),
typeof(SettlementHousingModuleProto.Gfx),
})]
static void housingCapacityMultiplier(SettlementHousingModuleProto __instance) {
Traverse.Create(__instance).Field<int>("Capacity").Value =
(int)(__instance.Capacity * Main.housingCapacityMultiplier.Value);
}
[HarmonyPostfix]
[HarmonyPatch(typeof(StackerProto), MethodType.Constructor, new[] {
typeof(StaticEntityProto.ID),
typeof(Proto.Str),
typeof(EntityLayout),
typeof(EntityCosts),
typeof(Electricity),
typeof(ThicknessTilesI),
typeof(RelTile3i),
typeof(Duration),
typeof(Duration),
typeof(StackerProto.Gfx),
typeof(ThicknessTilesI),
typeof(IEnumerable<Tag>),
})]
static void dumpDelayMultiplier(StackerProto __instance) {
Duration newDelay =
new Duration(Math.Max((int)(__instance.DumpDelay.Ticks * Main.dumpDelayMultiplier.Value), 1));
Traverse.Create(__instance).Field("DumpDelay").SetValue(newDelay);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(TransportProto), MethodType.Constructor, new[] {
typeof(StaticEntityProto.ID),
typeof(Proto.Str),
typeof(ThicknessTilesF),
typeof(Quantity),
typeof(RelTile1f),
typeof(RelTile1f),
typeof(RelTile1i),
typeof(bool),
typeof(bool),
typeof(Option<TerrainTileSurfaceProto>),
typeof(RelTile1i),
typeof(IoPortShapeProto),
typeof(Electricity),
typeof(Percent),
typeof(bool),
typeof(bool),
typeof(EntityCosts),
typeof(RelTile1i),
typeof(Duration),
typeof(Option<TransportProto>),
typeof(VirtualProductProto),
typeof(Quantity),
typeof(TransportProto.Gfx),
})]
static void transportSpeedMultiplier(ref StaticEntityProto.ID id, ref Proto.Str strings,
ref ThicknessTilesF surfaceRelativeHeight, ref Quantity maxQuantityPerTransportedProduct,
ref RelTile1f transportedProductsSpacing, ref RelTile1f speedPerTick, ref RelTile1i zStepLength,
ref bool needsPillarsAtGround, ref bool canBeBuried,
ref Option<TerrainTileSurfaceProto> tileSurfaceWhenOnGround, ref RelTile1i maxPillarSupportRadius,
ref IoPortShapeProto portsShape, ref Electricity baseElectricityCost, ref Percent cornersSharpnessPercent,
ref bool allowMixedProducts, ref bool isBuildable, ref EntityCosts costs, ref RelTile1i lengthPerCost,
ref Duration constructionDurationPerProduct, ref Option<TransportProto> nextTier,
ref VirtualProductProto maintenanceProduct, Quantity maintenancePerTile, ref TransportProto.Gfx graphics) {
if (TransportPillarProto.MAX_PILLAR_HEIGHT.Value < 25)
typeof(TransportPillarProto).GetField("MAX_PILLAR_HEIGHT").SetValue(null, new ThicknessTilesI(25));
if (IoPort.MAX_TRANSFER_PER_TICK.Value < 10000)
typeof(IoPort).GetField("MAX_TRANSFER_PER_TICK").SetValue(null, new Quantity(10000));
maxQuantityPerTransportedProduct *= 1000;
maxQuantityPerTransportedProduct = maxQuantityPerTransportedProduct.Min(new Quantity(10000));
Console.WriteLine("maxQuantityPerTransportedProduct {0}", maxQuantityPerTransportedProduct);
speedPerTick *= 10;
transportedProductsSpacing = speedPerTick;
zStepLength = RelTile1i.One;
canBeBuried = true;
maxPillarSupportRadius = new RelTile1i(8);
}
[HarmonyPostfix]
[HarmonyPatch(typeof(ShipyardProto), MethodType.Constructor, new[] {
typeof(StaticEntityProto.ID),
typeof(Proto.Str),
typeof(EntityLayout),
typeof(EntityCosts),
typeof(bool),
typeof(Quantity),
typeof(Option<ShipyardProto>),
typeof(ImmutableArray<ImmutableArray<RectangleTerrainArea2iRelative>>),
typeof(StackerProto.Gfx),
typeof(ImmutableArray<String>),
typeof(bool),
})]
static void shipyardCargoMultiplier(ShipyardProto __instance) {
Traverse.Create(__instance).Field("CargoCapacity").SetValue(new Quantity(
(int)(__instance.CargoCapacity.Value * Main.shipyardCargoMultiplier.Value)));
}
}
}

View File

@@ -1,35 +0,0 @@
using System.Reflection;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("CaptainOfIndustry")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("CaptainOfIndustry")]
[assembly: AssemblyCopyright("Copyright © 2023")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("EE5EFB7F-A4DC-44F0-967B-F71ECA2D46AE")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

View File

@@ -1,11 +0,0 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CTerraTech_005Clibs_005C0Harmony_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CTerraTech_005Clibs_005CAssembly_002DCSharp_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CTerraTech_005Clibs_005CBepInEx_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CTerraTech_005Clibs_005CConfigurationManager_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CTerraTech_005Clibs_005CUnityEngine_002ECoreModule_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CTerraTech_005Clibs_005CUnityEngine_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:String x:Key="/Default/Environment/AssemblyExplorer/XmlDocument/@EntryValue">&lt;AssemblyExplorer /&gt;</s:String>
<s:String x:Key="/Default/Environment/Hierarchy/Build/BuildTool/CustomBuildToolPath/@EntryValue">C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe</s:String>
<s:Int64 x:Key="/Default/Environment/Hierarchy/Build/BuildTool/MsbuildVersion/@EntryValue">262144</s:Int64>
</wpf:ResourceDictionary>

View File

@@ -1 +0,0 @@
cp CaptainOfIndustry/bin/Release/CaptainOfIndustry.dll bepinex/plugins/CaptainOfIndustry.dll

View File

@@ -1 +0,0 @@
for lib in $(cat libs.txt); do find 'C:\Games\Against.the.Storm.v1.0.2r' -name "$lib" | sed 's|\\|/|g' | xargs -I% -- cp '%' .; done

View File

@@ -1,11 +0,0 @@
0Harmony.dll
Assembly-CSharp.dll
BepInEx.dll
ConfigurationManager.dll
UnityEngine.CoreModule.dll
UnityEngine.dll
Mafi.Base.dll
Mafi.Core.dll
Mafi.dll
Mafi.Unity.dll
Mafi.Security.dll

View File

@@ -1,5 +0,0 @@
bin/
obj/
/packages/
riderModule.iml
/_ReSharper.Caches/

View File

@@ -1,16 +0,0 @@

Microsoft Visual Studio Solution File, Format Version 12.00
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CarMechanicSimulator2021", "CarMechanicSimulator2021\CarMechanicSimulator2021.csproj", "{1DDE7D09-633A-48E5-A548-4BD4BC4CB8D5}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{1DDE7D09-633A-48E5-A548-4BD4BC4CB8D5}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{1DDE7D09-633A-48E5-A548-4BD4BC4CB8D5}.Debug|Any CPU.Build.0 = Debug|Any CPU
{1DDE7D09-633A-48E5-A548-4BD4BC4CB8D5}.Release|Any CPU.ActiveCfg = Release|Any CPU
{1DDE7D09-633A-48E5-A548-4BD4BC4CB8D5}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
EndGlobal

View File

@@ -1,16 +0,0 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CSevenDaysToDie_005CSevenDaysToDie_005Clibs_005C0Harmony_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CSevenDaysToDie_005CSevenDaysToDie_005Clibs_005CAssembly_002DCSharp_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CSevenDaysToDie_005CSevenDaysToDie_005Clibs_005CBepInEx_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CSevenDaysToDie_005CSevenDaysToDie_005Clibs_005CConfigurationManager_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CSevenDaysToDie_005CSevenDaysToDie_005Clibs_005CMelonLoader_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CSevenDaysToDie_005CSevenDaysToDie_005Clibs_005CUnityEngine_002ECoreModule_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CSevenDaysToDie_005CSevenDaysToDie_005Clibs_005CUnityEngine_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CCarMechanicSimulator2021_005CCarMechanicSimulator2021_005Clibs_005C0Harmony_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CCarMechanicSimulator2021_005CCarMechanicSimulator2021_005Clibs_005CAssembly_002DCSharp_002Dfirstpass_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CCarMechanicSimulator2021_005CCarMechanicSimulator2021_005Clibs_005CAssembly_002DCSharp_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CCarMechanicSimulator2021_005CCarMechanicSimulator2021_005Clibs_005CConfigurationManager_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CCarMechanicSimulator2021_005CCarMechanicSimulator2021_005Clibs_005CMelonLoader_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:String x:Key="/Default/Environment/AssemblyExplorer/XmlDocument/@EntryValue">&lt;AssemblyExplorer&gt;&#xD;
&lt;Assembly Path="C:\Users\Administrator\Seafile\Projects-Rider\RiderProjects\Bepinex\Projects\CarMechanicSimulator2021\CarMechanicSimulator2021\libs\MelonLoader.dll" /&gt;&#xD;
&lt;/AssemblyExplorer&gt;</s:String></wpf:ResourceDictionary>

View File

@@ -1,69 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{1DDE7D09-633A-48E5-A548-4BD4BC4CB8D5}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>SevenDaysToDie</RootNamespace>
<AssemblyName>CarMechanicSimulator2021</AssemblyName>
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="0Harmony">
<HintPath>libs\0Harmony.dll</HintPath>
</Reference>
<Reference Include="Assembly-CSharp">
<HintPath>libs\Assembly-CSharp.dll</HintPath>
</Reference>
<Reference Include="Assembly-CSharp-firstpass">
<HintPath>libs\Assembly-CSharp-firstpass.dll</HintPath>
</Reference>
<Reference Include="ConfigurationManager">
<HintPath>libs\ConfigurationManager.dll</HintPath>
</Reference>
<Reference Include="MelonLoader">
<HintPath>libs\MelonLoader.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="Class1.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="XPPatch.cs" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

View File

@@ -1,16 +0,0 @@
using HarmonyLib.Tools;
using MelonLoader;
namespace CarMechanicSimulator2021 {
[assembly: MelonInfo(typeof(Main), "CykaMod", "1", "Cyka")]
public class Main : MelonMod {
private const string pluginGuid = "CykaMod";
public void OnInitializeMelon() {
HarmonyFileLog.Enabled = true;
HarmonyLib.Harmony harmony = new HarmonyLib.Harmony(pluginGuid);
harmony.PatchAll();
}
}
}

View File

@@ -1,35 +0,0 @@
using System.Reflection;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("CarMechanicSimulator2021")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("CarMechanicSimulator2021")]
[assembly: AssemblyCopyright("Copyright © 2023")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("1DDE7D09-633A-48E5-A548-4BD4BC4CB8D5")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

View File

@@ -1,29 +0,0 @@
using HarmonyLib;
namespace CarMechanicSimulator2021 {
[HarmonyPatch]
public class Patches {
[HarmonyPrefix]
[HarmonyPatch(typeof(GlobalData), "AddPlayerExp")]
static void xpMulti(ref float exp) {
exp *= 10;
}
[HarmonyPrefix]
[HarmonyPatch(typeof(MountObject), "Action")]
static void mountSpeedMulti(MountObject __instance) {
float num = 3f;
float num2 = 1.5f;
float num3 = num2 * num;
bool flag = !__instance.reverseMode;
if (flag)
{
__instance.mountState -= Time.deltaTime * num3 * Mathf.Abs(Mathf.Sin(Time.time * 10f));
}
else
{
__instance.mountState += Time.deltaTime * num3 * Mathf.Abs(Mathf.Sin(Time.time * 10f));
}
}
}
}

View File

@@ -1,8 +0,0 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CSevenDaysToDie_005CSevenDaysToDie_005Clibs_005C0Harmony_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CSevenDaysToDie_005CSevenDaysToDie_005Clibs_005CAssembly_002DCSharp_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CSevenDaysToDie_005CSevenDaysToDie_005Clibs_005CBepInEx_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CSevenDaysToDie_005CSevenDaysToDie_005Clibs_005CConfigurationManager_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CSevenDaysToDie_005CSevenDaysToDie_005Clibs_005CMelonLoader_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CSevenDaysToDie_005CSevenDaysToDie_005Clibs_005CUnityEngine_002ECoreModule_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CSevenDaysToDie_005CSevenDaysToDie_005Clibs_005CUnityEngine_002Edll/@EntryIndexedValue">True</s:Boolean></wpf:ResourceDictionary>

1
Projects/CykaOfQud Submodule

Submodule Projects/CykaOfQud added at 241f3d492f

View File

@@ -1,28 +0,0 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005C0Harmony_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CAssembly_002DCSharp_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CBepInEx_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CMainAssembly_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CUnityEngine_002ECoreModule_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CUnityEngine_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005C0Harmony_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CAssembly_002DCSharp_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CBepInEx_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CConfigurationManager_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CSirenix_002ESerialization_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CUnityEngine_002ECoreModule_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CUnityEngine_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005C0Harmony_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CAssembly_002DCSharp_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CBepInEx_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CConfigurationManager_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CMainAssembly_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CUnityEngine_002ECoreModule_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CUnityEngine_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005C0Harmony_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CAssembly_002DCSharp_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CBepInEx_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CConfigurationManager_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CSirenix_002ESerialization_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CUnityEngine_002ECoreModule_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CUnityEngine_002Edll/@EntryIndexedValue">True</s:Boolean></wpf:ResourceDictionary>

View File

@@ -1,16 +0,0 @@

Microsoft Visual Studio Solution File, Format Version 12.00
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DustlandDelivery", "DustlandDelivery\DustlandDelivery.csproj", "{DA9D274E-486F-4F82-84FF-CD9388CB0B09}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{DA9D274E-486F-4F82-84FF-CD9388CB0B09}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{DA9D274E-486F-4F82-84FF-CD9388CB0B09}.Debug|Any CPU.Build.0 = Debug|Any CPU
{DA9D274E-486F-4F82-84FF-CD9388CB0B09}.Release|Any CPU.ActiveCfg = Release|Any CPU
{DA9D274E-486F-4F82-84FF-CD9388CB0B09}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
EndGlobal

View File

@@ -1,33 +0,0 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005C0Harmony_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CAssembly_002DCSharp_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CBepInEx_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CMainAssembly_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CUnityEngine_002ECoreModule_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CUnityEngine_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005C0Harmony_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CAssembly_002DCSharp_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CBepInEx_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CConfigurationManager_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CSirenix_002ESerialization_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CUnityEngine_002ECoreModule_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CUnityEngine_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005C0Harmony_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CAssembly_002DCSharp_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CBepInEx_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CConfigurationManager_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CMainAssembly_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CUnityEngine_002ECoreModule_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CJetbrains_005CRiderProjects_005CBepinex_005CProjects_005CRegiments_005CRegiments_005Clibs_005CUnityEngine_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005C0Harmony_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CAssembly_002DCSharp_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CBepInEx_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CConfigurationManager_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CSirenix_002ESerialization_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CUnityEngine_002ECoreModule_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CAgainstTheStorm_005CAgainstTheStorm_005Clibs_005CUnityEngine_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CDustlandDelivery_005Clibs_005C0Harmony_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CDustlandDelivery_005Clibs_005CAssembly_002DCSharp_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CDustlandDelivery_005Clibs_005CBepInEx_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CDustlandDelivery_005Clibs_005CUnityEngine_002ECoreModule_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=C_003A_005CUsers_005CAdministrator_005CSeafile_005CProjects_002DRider_005CRiderProjects_005CBepinex_005CProjects_005CDustlandDelivery_005Clibs_005CUnityEngine_002Edll/@EntryIndexedValue">True</s:Boolean></wpf:ResourceDictionary>

View File

@@ -1,34 +0,0 @@
using System.Linq;
using BepInEx;
using BepInEx.Configuration;
using HarmonyLib;
using HarmonyLib.Tools;
namespace DustlandDelivery {
[BepInPlugin(pluginGuid, pluginName, pluginVersion)]
public class Main : BaseUnityPlugin {
private const string pluginGuid = "CykaMod";
private const string pluginName = "CykaMod";
private const string pluginVersion = "1.0.0";
public static ConfigEntry<float> SellPriceMultiplier;
public static ConfigEntry<float> XPMultiplier;
public static ConfigEntry<float> BookCostMultiplier;
public void Awake() {
SellPriceMultiplier = Config.Bind("General", "SellMultiplier", 1F,
new ConfigDescription("SellMultiplier", new AcceptableValueRange<float>(1, 512)));
XPMultiplier = Config.Bind("General", "XPMultiplier", 1F,
new ConfigDescription("XPMultiplier", new AcceptableValueRange<float>(1, 512)));
BookCostMultiplier = Config.Bind("General", "BookCostMultiplier", 1F,
new ConfigDescription("BookCostMultiplier", new AcceptableValueRange<float>(0.01F, 512)));
Logger.LogInfo("Cyka mod loaded");
HarmonyFileLog.Enabled = true;
Harmony harmony = new Harmony(pluginGuid);
harmony.PatchAll();
var originalMethods = harmony.GetPatchedMethods();
Logger.LogInfo("Patched " + originalMethods.Count() + " methods");
}
}
}

View File

@@ -1,66 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{DA9D274E-486F-4F82-84FF-CD9388CB0B09}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>AgainstTheStorm</RootNamespace>
<AssemblyName>DustlandDelivery</AssemblyName>
<TargetFrameworkVersion>v4.8.1</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Compile Include="Class1.cs" />
<Compile Include="Patches.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Transpiler.cs" />
</ItemGroup>
<ItemGroup>
<Reference Include="0Harmony">
<HintPath>..\libs\0Harmony.dll</HintPath>
</Reference>
<Reference Include="Assembly-CSharp">
<HintPath>..\libs\Assembly-CSharp.dll</HintPath>
</Reference>
<Reference Include="BepInEx">
<HintPath>..\libs\BepInEx.dll</HintPath>
</Reference>
<Reference Include="UnityEngine">
<HintPath>..\libs\UnityEngine.dll</HintPath>
</Reference>
<Reference Include="UnityEngine.CoreModule">
<HintPath>..\libs\UnityEngine.CoreModule.dll</HintPath>
</Reference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

View File

@@ -1,113 +0,0 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection.Emit;
using HarmonyLib;
namespace DustlandDelivery {
[HarmonyPatch]
public class Patches {
[HarmonyPrefix]
[HarmonyPatch(typeof(MarketManager), "Pay")]
static void SellMultiplier(ref int city, ref int goodId, ref int amount, ref float price, ref bool IsBuy,
ref float BarginRate) {
if (!IsBuy) {
price *= Main.SellPriceMultiplier.Value;
}
}
[HarmonyPrefix]
[HarmonyPatch(typeof(PeopleUpgradeManager), "GetExp")]
static void XPMultiplier1(ref Personal p, ref int value, ref bool NeedDialog, ref string Text) {
value = (int)(value * Main.XPMultiplier.Value);
}
[HarmonyPrefix]
[HarmonyPatch(typeof(PeopleUpgradeManager), "GetExpAll")]
static void XPMultiplier2(ref int value) {
value = (int)(value * Main.XPMultiplier.Value);
}
[HarmonyPostfix]
[HarmonyPatch(typeof(PeopleUpgradeManager), "GetUpgradeBookUse")]
static void BookCostMultiplier(ref int __result) {
__result = (int)(__result * Main.BookCostMultiplier.Value);
}
[HarmonyPatch(typeof(PeopleUpgradeManager), "CheckLevelUp")]
public static class ManyPointPatch {
static IEnumerable<CodeInstruction> Transpiler(IEnumerable<CodeInstruction> instructions) {
var codes = new List<CodeInstruction>(instructions);
for (var i = 0; i < 50; i++) {
if (codes[i].opcode == OpCodes.Ldfld) {
if (codes[i].operand.ToString().Contains("SpecialPoint")) {
Console.WriteLine("Found SpecialPoint");
codes[i+1].opcode = OpCodes.Ldc_I4_8;
break;
}
}
}
return codes.AsEnumerable();
}
}
[HarmonyPatch(typeof(PeopleUpgradeManager), "UseBuffToGetPoint")]
public static class ManyTraitPatch {
static IEnumerable<CodeInstruction> Transpiler(IEnumerable<CodeInstruction> instructions) {
var codes = new List<CodeInstruction>(instructions);
for (var i = 0; i < 100; i++) {
if (codes[i].opcode == OpCodes.Ldc_I4_8) {
Console.WriteLine("Found Ldc_I4_8");
codes[i].opcode = OpCodes.Ldc_I4;
codes[i].operand = 32;
Console.WriteLine("Changed to Ldc_I4 32");
break;
}
}
return codes.AsEnumerable();
}
}
[HarmonyPatch(typeof(PeopleUpgradeManager), "UsePointToGetBuff")]
public static class ManyTraitPatch2 {
static IEnumerable<CodeInstruction> Transpiler(IEnumerable<CodeInstruction> instructions) {
var codes = new List<CodeInstruction>(instructions);
for (var i = 0; i < 100; i++) {
if (codes[i].opcode == OpCodes.Ldc_I4_8) {
Console.WriteLine("Found Ldc_I4_8");
codes[i].opcode = OpCodes.Ldc_I4;
codes[i].operand = 32;
Console.WriteLine("Changed to Ldc_I4 32");
break;
}
}
return codes.AsEnumerable();
}
}
[HarmonyPatch(typeof(HardCode), "Get_People_Fatigue_Max")]
public static class MoreFatigue {
static IEnumerable<CodeInstruction> Transpiler(IEnumerable<CodeInstruction> instructions) {
var codes = new List<CodeInstruction>(instructions);
for (var i = 0; i < 10; i++) {
if (codes[i].opcode == OpCodes.Ldc_I4_S) {
Console.WriteLine("Found Ldc_I4_S");
codes[i].opcode = OpCodes.Ldc_I4;
codes[i].operand = 300;
Console.WriteLine("Changed to Ldc_I4 300");
break;
}
}
return codes.AsEnumerable();
}
}
}
}

View File

@@ -1,35 +0,0 @@
using System.Reflection;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("Regiments")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("Regiments")]
[assembly: AssemblyCopyright("Copyright © 2023")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("DA9D274E-486F-4F82-84FF-CD9388CB0B09")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

View File

@@ -1,274 +0,0 @@
// using System;
// using System.Collections.Generic;
// using System.Linq;
// using System.Reflection.Emit;
// using BepInEx;
// using BepInEx.Configuration;
// using HarmonyLib;
// using HarmonyLib.Tools;
//
// namespace Regiments {
// [BepInPlugin(pluginGuid, pluginName, pluginVersion)]
// public class Main : BaseUnityPlugin {
// private const string pluginGuid = "CykaMod";
// private const string pluginName = "CykaMod";
// private const string pluginVersion = "1.0.0";
//
// public static ConfigEntry<float> skillCap;
// public static ConfigEntry<float> workSpeed;
// public static ConfigEntry<float> workResult;
// public static ConfigEntry<bool> alwaysCritical;
// public static ConfigEntry<float> gameSpeed;
// public static ConfigEntry<int> fans;
// public static ConfigEntry<long> money;
//
// //
// // private void Awake()
// // {
// // configGreeting = Config.Bind("General", // The section under which the option is shown
// // "GreetingText", // The key of the configuration option in the configuration file
// // "Hello, world!", // The default value
// // "A greeting text to show when the game is launched"); // Description of the option to show in the config file
// //
//
// public void Awake() {
// skillCap = Config.Bind("General", "Skill Cap", 100f);
// workSpeed = Config.Bind("General", "Work Speed Multiplier", 4f);
// workResult = Config.Bind("General", "Work Result Multiplier", 4f);
// alwaysCritical = Config.Bind("General", "Work Always Critical", false);
// gameSpeed = Config.Bind("General", "Game Speed Multiplier", 3f);
// fans = Config.Bind("General", "Fans Multiplier", 2);
// money = Config.Bind("General", "Money Multiplier", 2L);
//
// Logger.LogInfo("Cyka mod loaded");
// HarmonyFileLog.Enabled = true;
// Harmony harmony = new Harmony(pluginGuid);
// harmony.PatchAll();
// var originalMethods = harmony.GetPatchedMethods();
// Logger.LogInfo("Patched " + originalMethods.Count() + " methods");
// }
//
// public static bool IsMatch(List<CodeInstruction> codes, int index, List<CodeInstruction> matcher) {
// for (var i = 0; i < matcher.Count; i++) {
// if (codes[index + i].opcode != matcher[i].opcode) {
// return false;
// }
// }
// return true;
// }
//
// public static void InsertAt(List<CodeInstruction> codes, int index, List<CodeInstruction> toInsert) {
// for (var i = 0; i < toInsert.Count; i++) {
// codes.Insert(index + i, toInsert[i]);
// }
// }
// }
//
// [HarmonyPatch(typeof(characterScript), "GetSkillCap")]
// public class SkillCapPatch {
// static void Postfix(ref float __result) {
// // Console.WriteLine("GetSkillCap Postfix! Result is " + __result);
// __result = Main.skillCap.Value;
// }
// }
//
// [HarmonyPatch(typeof(characterScript), "GetSkillCap_Skill")]
// public class SkillCapSkillPatch {
// static void Postfix(ref float __result) {
// // Console.WriteLine("GetSkillCap_Skill Postfix! Result is " + __result);
// __result = Main.skillCap.Value;
// }
// }
//
// [HarmonyPatch(typeof(characterScript), "GetWorkSpeed")]
// public class GetWorkSpeedPatch {
// static void Postfix(ref float __result) {
// // Console.WriteLine("GetWorkSpeed Postfix! Result is " + __result);
// __result *= Main.workSpeed.Value;
// }
// }
//
// [HarmonyPatch(typeof(characterScript), "GetWorkResult")]
// public class GetWorkResultPatch {
// static void Prefix(ref float f) {
// // Console.WriteLine("GetWorkResult Postfix! f is " + f);
// f *= Main.workResult.Value;
// }
// }
//
// [HarmonyPatch(typeof(characterScript), "GetCritic")]
// public class GetCriticPatch {
// static void Postfix(ref bool __result) {
// // Console.WriteLine("GetWorkResult Postfix! f is " + f);
// if (Main.alwaysCritical.Value) {
// __result = true;
// }
// }
// }
//
// [HarmonyPatch(typeof(mainScript), "SetGameSpeed")]
// public class GameSpeedPatch {
// static void Prefix(ref float f) {
// // Console.WriteLine("SetGameSpeed Prefix! Argument is " + f);
// if (f > 1) {
// f *= Main.gameSpeed.Value;
// // Console.WriteLine("Argument modified to " + f);
// }
// }
// }
//
// [HarmonyPatch(typeof(characterScript), "Learn")]
// public static class LearnManyPatch {
// static IEnumerable<CodeInstruction> Transpiler(IEnumerable<CodeInstruction> instructions) {
// var codes = new List<CodeInstruction>(instructions);
//
// for (var i = 0; i < 5; i++) {
// if (codes[i].opcode == OpCodes.Ldc_R4) {
// Console.WriteLine("Changing " + codes[i]);
// codes[i].operand = (float)codes[i].operand * 64;
// Console.WriteLine("Changed " + codes[i]);
// }
// }
//
// return codes.AsEnumerable();
// }
// }
//
// [HarmonyPatch(typeof(arbeitsmarkt), "ArbeitsmarktUpdaten")]
// public static class ManyEmployeesPatch {
// static IEnumerable<CodeInstruction> Transpiler(IEnumerable<CodeInstruction> instructions) {
// var codes = new List<CodeInstruction>(instructions);
//
// for (var i = codes.Count - 1; i > 0; i--) {
// if (codes[i].opcode == OpCodes.Ldc_I4_3) {
// Console.WriteLine("Changing " + codes[i]);
// codes[i] = new CodeInstruction(OpCodes.Ldc_I4, 64);
// Console.WriteLine("Changed " + codes[i]);
// break;
// }
// }
//
// return codes.AsEnumerable();
// }
// }
//
// // [HarmonyPatch(typeof(AILerp), "MovementUpdate")]
// public class MovementSpeedPatch {
// static void Prefix(ref float deltaTime) {
// Console.WriteLine("MovementUpdate Prefix! deltaTime is " + deltaTime);
// deltaTime *= 16f;
// }
// }
//
// // [HarmonyPatch(typeof(movementScript), "Move")]
// public static class EmployeeMovementSpeedPatch {
// static IEnumerable<CodeInstruction> Transpiler(IEnumerable<CodeInstruction> instructions) {
// var codes = new List<CodeInstruction>(instructions);
//
// List<CodeInstruction> matcher = new List<CodeInstruction>();
// matcher.Add(new CodeInstruction(OpCodes.Ldarg_0, null));
// matcher.Add(new CodeInstruction(OpCodes.Ldfld, null));
// matcher.Add(new CodeInstruction(OpCodes.Ldarg_0, null));
// matcher.Add(new CodeInstruction(OpCodes.Ldfld, null));
// matcher.Add(new CodeInstruction(OpCodes.Mul, null));
//
// List<CodeInstruction> patch = new List<CodeInstruction>();
// patch.Add(new CodeInstruction(OpCodes.Ldc_R4, 8));
// patch.Add(new CodeInstruction(OpCodes.Mul, null));
//
// for (var i = codes.Count - 1; i > 0; i--) {
// if (Main.IsMatch(codes, i, matcher)) {
// Main.InsertAt(codes, i + 5, patch);
// Console.WriteLine("Movement speed patched");
// for (var j = 0; j < 15; j++) {
// Console.WriteLine(codes[i + j]);
// }
// break;
// }
// }
// Console.WriteLine("Return");
// return codes.AsEnumerable();
// }
// }
//
// [HarmonyPatch(typeof(mainScript), "WochenUpdates")]
// public static class ContractWorkAmount {
// static IEnumerable<CodeInstruction> Transpiler(IEnumerable<CodeInstruction> instructions) {
// var codes = new List<CodeInstruction>(instructions);
// int methodIndex = -1;
// List<CodeInstruction> pattern = new List<CodeInstruction>();
//
// List<CodeInstruction> matcher = new List<CodeInstruction>();
// matcher.Add(new CodeInstruction(OpCodes.Ldarg_0, null));
// matcher.Add(new CodeInstruction(OpCodes.Ldfld, null));
// matcher.Add(new CodeInstruction(OpCodes.Ldc_I4_0, null));
// matcher.Add(new CodeInstruction(OpCodes.Callvirt, null));
//
// for (var i = 0; i < codes.Count; i++) {
// if (codes[i].operand != null) {
// if (codes[i].operand.ToString().Contains("UpdateContractWork")) {
// methodIndex = i;
// pattern.Add(codes[i - 3]);
// pattern.Add(codes[i - 2]);
// pattern.Add(codes[i - 1]);
// pattern.Add(codes[i]);
// break;
// }
// }
// }
// pattern[2].opcode = OpCodes.Ldc_I4_1;
//
// for (int i = 0; i < 16; i++) {
// for (int j = 0; j < pattern.Count; j++) {
// codes.Insert(methodIndex + i + j, pattern[j]);
// }
// }
//
// return codes.AsEnumerable();
// }
// }
//
// [HarmonyPatch(typeof(platformScript), "SellPlayer")]
// public static class ConsoleProductionReductionPatch {
// static IEnumerable<CodeInstruction> Transpiler(IEnumerable<CodeInstruction> instructions) {
// var codes = new List<CodeInstruction>(instructions);
//
// List<CodeInstruction> matcher = new List<CodeInstruction>();
// matcher.Add(new CodeInstruction(OpCodes.Ldarg_0, null));
// matcher.Add(new CodeInstruction(OpCodes.Ldarg_0, null));
// matcher.Add(new CodeInstruction(OpCodes.Ldfld, null));
// matcher.Add(new CodeInstruction(OpCodes.Ldc_R4, null));
// matcher.Add(new CodeInstruction(OpCodes.Ldc_R4, null));
// matcher.Add(new CodeInstruction(OpCodes.Call, null));
// matcher.Add(new CodeInstruction(OpCodes.Add, null));
// matcher.Add(new CodeInstruction(OpCodes.Stfld, null));
//
// for (var i = 0; i < codes.Count; i++) {
// if (Main.IsMatch(codes, i, matcher)) {
// codes[i + 3].operand = (float)codes[i + 3].operand * 8f;
// codes[i + 4].operand = (float)codes[i + 4].operand * 8f;
// Console.WriteLine("ConsoleProductionReductionPatch patched");
// break;
// }
// }
//
// return codes.AsEnumerable();
// }
// }
//
// [HarmonyPatch(typeof(mainScript), "AddFans")]
// public static class AddFansPatch {
// static void Prefix(ref int i) {
// // Console.WriteLine("GetWorkResult Postfix! f is " + f);
// i *= Main.fans.Value;
// }
// }
//
// [HarmonyPatch(typeof(mainScript), "Earn")]
// public static class AddMoneyPatch {
// static void Prefix(ref long amount) {
// // Console.WriteLine("GetWorkResult Postfix! f is " + f);
// amount *= Main.money.Value;
// }
// }
// }

View File

@@ -1 +0,0 @@
for lib in $(cat libs.txt); do find $1 -name "$lib" | sed 's|\\|/|g' | xargs -I% -- cp '%' .; done

View File

@@ -1,6 +0,0 @@
0Harmony.dll
Assembly-CSharp.dll
BepInEx.dll
ConfigurationManager.dll
UnityEngine.CoreModule.dll
UnityEngine.dll

Some files were not shown because too many files have changed in this diff Show More