janxious / BattleTechModLoader

A simple mod loader and injector for HBS's PC game BattleTech.
The Unlicense
15 stars 1 forks source link

Can't run ModLoader on BattleTech 1.2 with v0.4.1-alpha1 #6

Closed neybar closed 6 years ago

neybar commented 6 years ago

After updating to 1.2 of BattleTech I tried patching with the latest beta version of modloader: v0.4.1-alpha1. I'm getting the following error:

[jalance@Anduril Managed]$ mono BattleTechModLoaderInjector.exe /i
BattleTechModLoader Injector
----------------------------
Assembly-CSharp.dll backed up to Assembly-CSharp.dll.orig
ERROR: An exception occured: System.MissingMethodException: Method not found: !!0 System.Linq.Enumerable.Single<!0>(System.Collections.Generic.IEnumerable`1<!!0>,System.Func`2<!!0, bool>)
  at BattleTechModLoader.BTMLInjector.Main (System.String[] args) [0x00220] in <31fa3fbb9a84440b8d320c11bfd5c3a5>:0
[jalance@Anduril Managed]$ mono BattleTechModLoaderInjector.exe /v
0.4.1.38215

I decided to roll back a version to v0.4.0-alpha1 since that previously worked. I'm getting the same error with that as well.

I'm happy to provide any other details that may be helpful.

Mono:

[jalance@Anduril Managed]$ mono --version
Mono JIT compiler version 5.14.0.177 (tarball Sat Aug 11 22:58:51 BST 2018)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
    TLS:           normal
    SIGSEGV:       altstack
    Notification:  kqueue
    Architecture:  amd64
    Disabled:      none
    Misc:          softdebug
    Interpreter:   yes
    LLVM:          supported, not enabled.
    GC:            sgen (concurrent by default)
neybar commented 6 years ago

I figured it out. In a post on reddit someone had the following steps that I missed when reapplying the loader:

mv System.Core.dll System.Core.dll.temp

the modloader really doesn't like having that file around.