Skip to content

Build failure when compiling SysBot.NET with the latest PKHeX.Core.dll and PKHeX.Core.AutoMod.dll #212

@scolandrea

Description

@scolandrea

Hi, I’m trying to compile the latest version of SysBot.NET using the most recent versions of PKHeX.Core.dll and PKHeX.Core.AutoMod.dll.
The build fails with multiple API errors that seem to be caused by method signature changes and/or removed types in the latest PKHeX and AutoMod versions.

Steps to reproduce:
Clone SysBot.NET at its latest version.
Replace PKHeX.Core.dll and PKHeX.Core.AutoMod.dll with the newest available versions. (Compiled version by using source code from github)
Run dotnet build -c Release.

Expected result:
The project compiles successfully.

Actual result:
The build fails with multiple errors:

`An object reference is required for the non-static field, method, or property 'RibbonStrings.GetName(string)'
'APILegality' does not contain a definition for 'PrioritizeGameVersion'
Argument 1: cannot convert from 'PKHeX.Core.GameVersion' to 'byte'
Argument 2: cannot convert from 'byte' to 'PKHeX.Core.GameVersion'
The type or namespace name 'LegalityCheckStrings' could not be found (are you missing a using directive or an assembly reference?)
'RibbonStrings' does not contain a definition for 'ResetDictionary'
'ParseSettings' does not contain a definition for 'ChangeLocalizationStrings'
Argument 1: cannot convert from 'PKHeX.Core.GameVersion' to 'byte'
Argument 2: cannot convert from 'int' to 'PKHeX.Core.GameVersion'
Argument 1: cannot convert from 'PKHeX.Core.GameVersion' to 'byte'
Argument 2: cannot convert from 'int' to 'PKHeX.Core.GameVersion'
Argument 1: cannot convert from 'PKHeX.Core.GameVersion' to 'byte'
Argument 2: cannot convert from 'int' to 'PKHeX.Core.GameVersion'
Argument 1: cannot convert from 'PKHeX.Core.GameVersion' to 'byte'
Argument 2: cannot convert from 'int' to 'PKHeX.Core.GameVersion'`

It looks like the classes/methods LegalityCheckStrings, RibbonStrings.ResetDictionary, ParseSettings.ChangeLocalizationStrings, and APILegality.PrioritizeGameVersion no longer exist or have changed signatures, which breaks compatibility.

Any insights on this? Will the project be updated to support the latest version?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions