0
Fixed

Bolt 1.2.3 library import bugs

Guavaman 3 years ago updated by Lazlo Bonin (Lead Developer) 3 years ago 7

Hi,

I'm the developer of Rewired and I have a customer who contacted me for support because they could not access some classes in Rewired's DLL including the main static class, Rewired.ReInput. Without access to the ReInput class, Rewired is unusable.

I then downloaded the latest version of Bolt and was able to reproduce the issue along with discovering two more. I determined that the something has changed between 1.2.2 and 1.2.3 that broke the importation of at least the static Rewired.ReInput class and the abstract Rewired.Controller class, neither of which are selectable in the Unit Options import box. In addition, after the initial setup, subsequently running the Unit Options Wizard always closes without any console message after pressing the first "Next" button.

Bolt Version:
Unity Version:
Platform(s):
Scripting Backend:
.NET Version (API Compatibility Level):
GOOD, I'M SATISFIED
Satisfaction mark by Guavaman 3 years ago

I forgot to specify this is in regards to the Rewired_Core.dll. If you want to test it, you can get the free trial of Rewired here: http://guavaman.com/rewired/trial

+1

Are you certain AOT Safe Mode is unchecked? If you install a newer version, sometimes I find it has become rechecked. Just double check that first. Tools > Ludiq > Project Settings. If it is checked, and unit options is run, throws errors I believe.

I believe something under the hood was changed to prevent build issues, when Lazlo stopped allowing interfaces in AOT Safe Mode until C# generation happens. 

I haven't had any problems other than the 1.3 alpha folder stuff, and have upgraded for every version along the way. Am even on the newest Unity every time, so things should be in order

Thanks for the reply.

I was not aware of this setting and it was not necessary in 1.2.2. After enabling it, the Rewired.ReInput and Rewired.Controller classes are visible. These classes are not generic classes so I don't get why these would be filtered out. I will forward this information to my customer. Thanks again for your help!

+1

No problem, maybe this is something that is a regression of some sort because of the changes. I did think it was strange as well, but that worked. We'll see if Lazlo would know. Maybe something because of nested classes.

Fixed in Alpha

Closing this as the AOT Safe Mode bug is fixed in v.1.2.4 +.

Unfortunately, abstract classes cannot be safely used in AOT because their implementing code cannot be stubbed. This is why the class was hidden.

Thanks for the reply! Understood about abstract classes (Controller), but the ReInput class is a static class and not abstract. Was the fact that this wasn't displayed a bug?