Posted: Sun Aug 23, 2015 12:39 am Post subject:
Getting System.InvalidOperationException
Subject description: " does not have a sequence named `idle-top` "but it does have it
Hi, i'm currently trying to make a construction yard working, but i keep getting this error
Code:
Command & Conquer - United Mod at Version {DEV_VERSION}
Operating System: Windows (Microsoft Windows NT 6.2.9200.0)
Runtime Version: .NET CLR 4.0.30319.42000
Exception of type `System.InvalidOperationException`: Unit `gdiicnst` does not have a sequence named `idle-top`
at OpenRA.Graphics.SequenceProvider.GetSequence(String unitName, String sequenceName) in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\Graphics\SequenceProvider.cs:line 65
at OpenRA.Graphics.Animation.PlayRepeating(String sequenceName) in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\Graphics\Animation.cs:line 83
at OpenRA.Mods.Common.Traits.WithIdleOverlay..ctor(Actor self, WithIdleOverlayInfo info)
at OpenRA.Mods.Common.Traits.WithIdleOverlayInfo.Create(ActorInitializer init)
at OpenRA.Actor..ctor(World world, String name, TypeDictionary initDict) in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\Actor.cs:line 95
at OpenRA.World.CreateActor(Boolean addToWorld, String name, TypeDictionary initDict) in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\World.cs:line 214
at OpenRA.World.CreateActor(String name, TypeDictionary initDict) in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\World.cs:line 209
at OpenRA.Mods.Common.Activities.Transform.<>c__DisplayClass2.<Tick>b__1(World w)
at OpenRA.World.Tick() in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\World.cs:line 292
at OpenRA.Game.InnerLogicTick(OrderManager orderManager) in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\Game.cs:line 483
at OpenRA.Game.LogicTick() in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\Game.cs:line 507
at OpenRA.Game.Loop() in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\Game.cs:line 631
at OpenRA.Game.Run() in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\Game.cs:line 671
at OpenRA.Program.Run(String[] args) in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\Support\Program.cs:line 111
at OpenRA.Program.Main(String[] args) in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\Support\Program.cs:line 39
Unit `gdiicnst` does not have a sequence named `idle-top`
Looking at your YAML, your actor is called "gdicnst", not "gdiicnst", so that is a good start - check where you have "gdiicnst" and if that is a typo - fix it. QUICK_EDIT
Unit `gdiicnst` does not have a sequence named `idle-top`
Looking at your YAML, your actor is called "gdicnst", not "gdiicnst", so that is a good start - check where you have "gdiicnst" and if that is a typo - fix it.
Ah, don't mind that, it's just a test i did, the typo is fixed, same issue.
OK, i figured out the issue, somehow the game forces the gdicnst to be named ggicnst, how do i fix that?
The same happens if i make a structure called gdipowr, it automaticly becomes gtipowr in debug.log
Alright this is strange, everytime i change map, gdipowr becomes something else. In one map the game searches for "gtipowr.shp" another map wants "gaipowr.shp" what is going on?!
GTIPOWR is the temperate variation of GDIPOWR, and GAIPOWR is the snow variation of that structure. The mod must be set so the game looks for those specific buildings on specific teathers, Check mod.yaml at the end, try playing there with the code, I haven't done it myself so I can't tell you anything else. _________________
Joined: 26 Apr 2003 Location: Somewhere in Germany
Posted: Sun Aug 23, 2015 5:28 pm Post subject:
If you use "UseTilesetCode: true" on a sequence, the game automatically replaces the 2nd letter of the sequence name with the letter corresponding to the map tileset (defined in mod.yaml, usually near the bottom of the file). QUICK_EDIT
Were it so easy? Thanks guys, i'll keep this in mind for the future.
Here's another issue i'm having
Code:
Command & Conquer - United Mod at Version {DEV_VERSION}
Operating System: Windows (Microsoft Windows NT 6.2.9200.0)
Runtime Version: .NET CLR 4.0.30319.42000
Exception of type `System.InvalidOperationException`: TypeDictionary contains multiple instances of type `OpenRA.Mods.Common.Traits.RenderSpritesInfo`
at OpenRA.Primitives.TypeDictionary.Get(Type t, Boolean throwsIfMissing) in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\Primitives\TypeDictionary.cs:line 67
at OpenRA.Primitives.TypeDictionary.Get[T]() in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\Primitives\TypeDictionary.cs:line 45
at OpenRA.Mods.Common.Widgets.ProductionPaletteWidget.RefreshIcons()
at OpenRA.Mods.Common.Widgets.ProductionPaletteWidget.set_CurrentQueue(ProductionQueue value)
at OpenRA.Mods.Common.Widgets.Logic.ClassicProductionLogic.<>c__DisplayClasse.<SetupProductionGroupButton>b__1(Boolean reverse)
at OpenRA.Mods.Common.Widgets.Logic.ClassicProductionLogic.<>c__DisplayClasse.<SetupProductionGroupButton>b__7(MouseInput mi)
at OpenRA.Mods.Common.Widgets.ButtonWidget.HandleMouseInput(MouseInput mi)
at OpenRA.Widgets.Widget.HandleMouseInputOuter(MouseInput mi) in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\Widgets\Widget.cs:line 361
at OpenRA.Widgets.Ui.HandleInput(MouseInput mi) in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\Widgets\Widget.cs:line 87
at OpenRA.DefaultInputHandler.<>c__DisplayClass7.<OnMouseInput>b__6() in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\Input\InputHandler.cs:line 49
at OpenRA.Sync.CheckSyncUnchanged[T](World world, Func`1 fn) in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\Sync.cs:line 187
at OpenRA.DefaultInputHandler.OnMouseInput(MouseInput input) in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\Input\InputHandler.cs:line 49
at OpenRA.Renderer.Sdl2.Sdl2Input.PumpInput(IInputHandler inputHandler) in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Renderer.Sdl2\Sdl2Input.cs:line 105
at OpenRA.Renderer.Sdl2.Sdl2GraphicsDevice.PumpInput(IInputHandler inputHandler) in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Renderer.Sdl2\Sdl2GraphicsDevice.cs:line 359
at OpenRA.Graphics.Renderer.EndFrame(IInputHandler inputHandler) in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\Graphics\Renderer.cs:line 153
at OpenRA.Game.RenderTick() in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\Game.cs:line 546
at OpenRA.Game.Loop() in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\Game.cs:line 653
at OpenRA.Game.Run() in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\Game.cs:line 671
at OpenRA.Program.Run(String[] args) in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\Support\Program.cs:line 111
at OpenRA.Program.Main(String[] args) in g:\Games\Tiberian Twilight (custom mod)\Command and Conquer - United\OpenRA-ra2-master\OpenRA.Game\Support\Program.cs:line 39
Your ConYard is inheriging `^Building`, which has the `RenderBuilding` trait. That trait inherits the `RenderSprites` trait.
You are also adding `RenderSprites` to your actor.
That exception is telling you you have too many `RenderSprites`:
Quote:
TypeDictionary contains multiple instances of type `OpenRA.Mods.Common.Traits.RenderSpritesInfo`
Get rid of
Quote:
RenderSprites:
Scale: 1.3
and put the scale on `RenderBuilding` instead (change "RenderSprites" to "RenderBuilding").
On a side not, "Scale" should be avoided. Scale the artwork with an editor instead.
Also, your stack traces give away that you are modding on top of the WIP RA2 mod.
I don't know if you really need that one to get the work you need done, but usually modding an unstable version of a thirdparty mod that is based on a random OpenRA commit is not the best of ideas.
I suggest getting the latest playtest and modding that until you can deal with such issues. QUICK_EDIT
Your ConYard is inheriging `^Building`, which has the `RenderBuilding` trait. That trait inherits the `RenderSprites` trait.
You are also adding `RenderSprites` to your actor.
That exception is telling you you have too many `RenderSprites`:
Quote:
TypeDictionary contains multiple instances of type `OpenRA.Mods.Common.Traits.RenderSpritesInfo`
Get rid of
Quote:
RenderSprites:
Scale: 1.3
and put the scale on `RenderBuilding` instead (change "RenderSprites" to "RenderBuilding").
On a side not, "Scale" should be avoided. Scale the artwork with an editor instead.
Also, your stack traces give away that you are modding on top of the WIP RA2 mod.
I don't know if you really need that one to get the work you need done, but usually modding an unstable version of a thirdparty mod that is based on a random OpenRA commit is not the best of ideas.
I suggest getting the latest playtest and modding that until you can deal with such issues.
Holy shit, how did you figure all that out from a debug that doesn't even mention RenderSprites?! Also, i'm working ontop of that RA2 mod because i'm working on a mod that includes the Red Alert 2 sides.
edit: i am stupid, i put up the code in the first post.. QUICK_EDIT
Try using the OpenRA.Utility.exe --check-yaml command. It might give you better hints on rule defects especially on the latest development version. QUICK_EDIT
You can post new topics in this forum You can reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum You cannot attach files in this forum You can download files in this forum