:: Home :: Get Hosted :: PPM FAQ :: Forum FAQ :: Search :: Memberlist :: Usergroups :: Register :: Profile :: Log in to check your private messages :: Log in ::
Do you want to advertise at Project Perfect Mod. Find out how to do it HERE.

The time now is Mon Nov 20, 2017 3:26 pm
All times are UTC + 0
 Forum index » Modding Central » OpenRA Editing Forums
Getting System.InvalidOperationException
Moderators: Global Moderators, OpenRA Moderators
Post new topic   Reply to topic Page 1 of 1 [10 Posts] View previous topic :: View next topic
Author Message
Mynameislol
Vehicle Driver


Joined: 28 Sep 2008

PostPosted: 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
Reply with quote

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


This is the sequence code

Code:
gdicnst:
   Defaults:
      Offset: 0, -36
      UseTilesetCode: true
      TilesetOverrides:
         TEMPERAT: GENERIC
         URBAN: GENERIC
   idle:
      ShadowStart: 3
   damaged-idle:
      Start: 1
      ShadowStart: 4
   dead:
      Start: 2
      ShadowStart: 5
      Tick: 400
   make: gdicnstmk
      Length: 24
      ShadowStart: 24
   crane-overlay: gdicnst_d
      Length: 20
   damaged-crane-overlay: gdicnst_d
      Length: 20
   critical-crane-overlay: gdicnst_d
      Start: 20
      Length: 20
   idle-top: gdicnst_c
      Length: 15
      Tick: 200
   damaged-idle-top: gdicnst_c
      Start: 15
      Length: 15
      Tick: 200
   idle-side: gdicnst_a
      Length: 10
   damaged-idle-side: gdicnst_a
      Start: 10
      Length: 10
   idle-front: gdicnst_b
      Length: 10
   damaged-idle-front: gdicnst_b
      Length: 10
   icon: facticon
      Offset: 0,0
      UseTilesetCode: false


and this is the structure code.


Code:
gdicnst:
   Inherits: ^Building
   Building:
      Footprint: xxx xxx xxx
      BuildSounds: facbld1.aud
      Dimensions: 3,3
   Buildable:
      Queue: Building
      BuildPaletteOrder: 1000
      Prerequisites: ~disabled
   Health:
      HP: 1500
   Armor:
      Type: Wood
   RevealsShroud:
      Range: 5c0
   Production:
      Produces: Building,Defense
   Valued:
      Cost: 2500
   Tooltip:
      Name: Construction Yard
      Description: Builds base structures.
   CustomSellValue:
      Value: 2500
   BaseBuilding:
   Transforms:
      IntoActor: gdimcv
      Offset: 1,1
      Facing: 96
   ProductionBar@Building:
      ProductionType: Building
   ProductionBar@Defense:
      ProductionType: Defense
   WithIdleOverlay@TOP:
      Sequence: idle-top
   WithIdleOverlay@SIDE:
      Sequence: idle-side
   WithIdleOverlay@FRONT:
      Sequence: idle-front
   WithBuildingPlacedOverlay:
   Power:
      Amount: 0
   RenderSprites:
        Scale: 1.3
   Selectable:
      Bounds: 144, 60, 0, -6
   SelectionDecorations:
      VisualBounds: 144, 80, 0, -12


I have both of the .yaml files listed in mod.yaml.

Back to top
View user's profile Send private message
penev
Vehicle Driver


Joined: 28 Feb 2015

PostPosted: Sun Aug 23, 2015 12:47 am    Post subject: Reply with quote

The exception says that
Quote:
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.

Back to top
View user's profile Send private message
Mynameislol
Vehicle Driver


Joined: 28 Sep 2008

PostPosted: Sun Aug 23, 2015 1:35 am    Post subject: Reply with quote

penev wrote:
The exception says that
Quote:
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?!

If it helps, i'm using Phrohdoh's RA2 mod.
https://github.com/Phrohdoh/OpenRA

Back to top
View user's profile Send private message
Nolt
Flamethrower


Joined: 25 Apr 2012
Location: Chile

PostPosted: Sun Aug 23, 2015 4:08 pm    Post subject: Reply with quote

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.
_________________

Creator of Shattered Paradise and Nomad Galaxy. WARNING, there are tons of gifs on both pages.

Back to top
View user's profile Send private message Send e-mail MSN Messenger
Reaperrr
Commander


Joined: 26 Apr 2003
Location: Somewhere in Germany

PostPosted: Sun Aug 23, 2015 5:28 pm    Post subject: Reply with quote

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).

Back to top
View user's profile Send private message Send e-mail
Mynameislol
Vehicle Driver


Joined: 28 Sep 2008

PostPosted: Sun Aug 23, 2015 7:30 pm    Post subject: Reply with quote

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

Back to top
View user's profile Send private message
penev
Vehicle Driver


Joined: 28 Feb 2015

PostPosted: Sun Aug 23, 2015 9:25 pm    Post subject: Reply with quote

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.

Back to top
View user's profile Send private message
Mynameislol
Vehicle Driver


Joined: 28 Sep 2008

PostPosted: Sun Aug 23, 2015 10:52 pm    Post subject: Reply with quote

penev wrote:
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..

Back to top
View user's profile Send private message
Matthias M.
Jumpjet Infantry


Joined: 15 Jun 2012
Location: Germany

PostPosted: Mon Aug 24, 2015 9:12 pm    Post subject: Reply with quote

Try using the OpenRA.Utility.exe --check-yaml command. It might give you better hints on rule defects especially on the latest development version.

Back to top
View user's profile Send private message Visit poster's website
Mynameislol
Vehicle Driver


Joined: 28 Sep 2008

PostPosted: Sun Aug 30, 2015 7:00 pm    Post subject: Reply with quote

Hmm, i think i'm going to wait with the mod until a stable OpenRA version of Red Alert 2 is out ( even though it's gonna be a while )

Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic Page 1 of 1 [10 Posts] View previous topic :: View next topic
 Forum index » Modding Central » OpenRA Editing Forums
Jump to:  
Quick Reply
Username:


If you are visually impaired or cannot otherwise play the game below please contact the Administrator for help.


 
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


Powered by phpBB © phpBB Group

Wildcard SSL Certificates
[ Time: 0.1445s ][ Queries: 12 (0.0083s) ][ Debug on ]