Search Unity

  1. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Bug Creator kit RPG: Error

Discussion in 'Open Projects' started by Shkk, Jul 22, 2023.

  1. Shkk

    Shkk

    Joined:
    Sep 22, 2022
    Posts:
    2
    Hello everyone,

    I'm starting a project in Unity using the "Creator Kit - RPG" package, and I've encountered these errors that I can't resolve.
    The error appears straight up from import :
    1. "Assets\Creator Kit - RPG\Scripts\Tiles\Isometric Rule Tile\Editor\IsometricRuleTileEditor.cs(8,26): error CS0433: The type 'IsometricRuleTile' exists in both 'Assembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' and 'Unity.2D.Tilemap.Extras, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'"
    2. "Assets\Creator Kit - RPG\Scripts\Tiles\Isometric Rule Tile\Editor\IsometricRuleTileEditor.cs(19,32): error CS0115: 'IsometricRuleTileEditor.RuleMatrixOnGUI(RuleTile, Rect, RuleTile.TilingRule)': no suitable method found to override"
    3. "Assets\Creator Kit - RPG\Scripts\Tiles\Isometric Rule Tile\Editor\IsometricRuleTileEditor.cs(72,32): error CS0507: 'IsometricRuleTileEditor.ContainsMousePosition(Rect)': cannot change access modifiers when overriding 'public' inherited member 'RuleTileEditor.ContainsMousePosition(Rect)'"
    It appears that the first error is related to a name conflict between two classes named "IsometricRuleTile" from different libraries: "Assembly-CSharp" and "Unity.2D.Tilemap.Extras".
    Regarding the second error, it seems to involve a missing implementation of the "RuleMatrixOnGUI" method in the "IsometricRuleTileEditor" class.
    Finally, the third error indicates a problem with overriding the "ContainsMousePosition(Rect)" method in the "IsometricRuleTileEditor" class.

    Has anyone encountered similar issues or can suggest possible solutions for these three errors?

    I really appreciate your help!

    Thank you,
     
  2. SOMUCHDOG

    SOMUCHDOG

    Joined:
    Sep 20, 2018
    Posts:
    3
    Commenting because I am having the same problem, any way to bump this question? Online resources all attempt to mask the problem by saying to delete the file or change the namespace. This makes 0 sense, RuleTileEditor needs to access methods and properties on RuleTile.
     
  3. SOMUCHDOG

    SOMUCHDOG

    Joined:
    Sep 20, 2018
    Posts:
    3
    I ended up manually fixing it. The problem is that the RuleTlle doesn't know whether to use the assembly or the RuleTile class in the UnityEngine namespace. (Ambiguous Reference)

    Don't listen to other responses on the internet about deleting the file, that will cause more problems. Go to the file in project /2DGamekit/Scripts/Utilities/RuleTile and change the class name to RuleTile2d (Or whatever makes sense to you), then go back to RuleTileEditor and change each of the references to the new class. (RuleTile to RuleTile2d)

    There was still a type cast having issues, but the cast was redundant anyways, remove the casting parenthesis and you should be good to go.
     
    mevgdev likes this.