cookgreen / Yuris-Revenge

A Red Alert 2 Yuri's Revenge mod for OpenRA Engine
https://forum.openra.net/viewtopic.php?t=20776
GNU General Public License v3.0
158 stars 30 forks source link

Footprint Issue #116

Closed amalabey closed 4 years ago

amalabey commented 4 years ago

The game crashes with "Exception of type System.ArgumentException: This frozen actor has no footprint" on start.

Steps to reproduce:

  1. Checkout yr-playtest-20200317 branch
  2. Copied game content to yr directory. Content includes below:
    
    Directory: C:\Users\user\AppData\Roaming\OpenRA\Content\yr

Mode LastWriteTime Length Name


-a---- 30/09/2001 5:24 PM 111993 ecache97.mix -a---- 30/10/2001 2:04 AM 336841 expand97.mix -a---- 15/11/2001 12:39 AM 4813968 expandmd01.mix -a---- 15/11/2001 12:19 AM 84883510 langmd.mix 3 weeks ago -a---- 22/05/2001 7:51 PM 53116040 language.mix -a---- 30/01/2004 6:03 PM 3823604 maps01.mix 3 weeks ago -a---- 2/10/2000 4:55 AM 3170324 maps02.mix -a---- 20/09/2001 2:36 PM 4419780 mapsmd03.mix -a---- 29/07/2002 8:20 PM 0 MOVIES01.MIX -a---- 29/07/2002 8:20 PM 0 MOVIES02.MIX -a---- 29/07/2002 8:20 PM 0 MOVMD03.MIX -a---- 2/10/2000 4:53 AM 18666588 MULTI.MIX -a---- 20/09/2001 2:39 PM 31264268 multimd.mix -a---- 1/02/2001 10:05 PM 281888480 ra2.mix -a---- 21/08/2001 1:22 AM 204527696 ra2md.mix -a---- 26/09/2000 1:01 AM 76862662 theme.mix -a---- 18/08/2001 6:47 AM 46859102 thememd.mix

3. Built the game using `.\make.cmd all`
4. Ran the game with '.\launch-game.cmd`
5. Selected single player -> skirmish -> started the game and it crashes. Logs attached.
[Logs.zip](https://github.com/cookgreen/Yuris-Revenge/files/4432719/Logs.zip)

Platform is Windows elite-stage-3, machsho Engine version is release-20200202 Using SDL 2 with OpenGL renderer Desktop resolution: 1920x1080 No custom resolution provided, using desktop resolution Using resolution: 1920x1080 Using window scale 1.00 OpenGL version: 4.6.0 - Build 27.20.100.7988 Using sound device Headphones (Amals Bose Stereo) AL lib: (EE) ALCmmdevPlayback_open: Device init failed: 0x80004005 Failed to open device. Falling back to default Internal mods: yr: Red Alert 2 Yuri's Revenge (release-20200202) all: All mods (release-20200202) cnc: Tiberian Dawn (release-20200202) d2k: Dune 2000 (release-20200202) modcontent: Mod Content Manager (release-20200202) ra: Red Alert (release-20200202) ts: Tiberian Sun (release-20200202) External mods: example-{DEV_VERSION}: Example mod ({DEV_VERSION}) ra2-playtest-20200118: Red Alert 2 (playtest-20200118) ratc-release-20200202: Red Alert (Tesla Coil Example) (release-20200202) yr-release-20200202: Red Alert 2 Yuri's Revenge (release-20200202) Loading mod: yr Failed to initialize hardware cursors. Falling back to software cursors. Error was: Failed to create hardware cursor weatherstorm - Failed to create cursor: CreateIconIndirect(): The parameter is incorrect.

[2020-04-05T09:36:33] Game started Exception of type System.ArgumentException: This frozen actor has no footprint. Actor Name: tree23 Actor Location: 25,-14 Input footprint: [] Input footprint (after shroud.Contains): [] at OpenRA.Traits.FrozenActor..ctor(Actor actor, ICreatesFrozenActors frozenTrait, PPos[] footprint, Player viewer, Boolean startsRevealed) at OpenRA.Mods.Common.Traits.FrozenUnderFog.<>cDisplayClass9_0.b0(Player player, Int32 playerIndex) at OpenRA.Primitives.PlayerDictionary1..ctor(World world, Func3 valueFactory) at OpenRA.Mods.Common.Traits.FrozenUnderFog.OpenRA.Traits.INotifyCreated.Created(Actor self) at OpenRA.Actor.Created() at OpenRA.World.CreateActor(Boolean addToWorld, String name, TypeDictionary initDict) at OpenRA.World.CreateActor(String name, TypeDictionary initDict) at OpenRA.Mods.Common.Traits.SpawnMapActors.WorldLoaded(World world, WorldRenderer wr) at OpenRA.World.LoadComplete(WorldRenderer wr) at OpenRA.Game.StartGame(String mapUID, WorldType type) at OpenRA.Network.UnitOrders.ProcessOrder(OrderManager orderManager, World world, Int32 clientId, Order order) at OpenRA.Network.OrderManager.TickImmediate() at OpenRA.Sync.<>cDisplayClass13_0.b0() at OpenRA.Sync.RunUnsynced[T](Boolean checkSyncHash, World world, Func`1 fn) a_d at OpenRA.Sync.RunUnsynced(Boolean checkSyncHash, World world, Action fn) b_d at OpenRA.Game.InnerLogicTick(OrderManager orderManager) a_d at OpenRA.Game.LogicTick() b_d at OpenRA.Game.Loop() at OpenRA.Game.Run() at OpenRA.Game.InitializeAndRun(String[] args) at OpenRA.Program.Main(String[] args) . fo. AL lib: (EE) alc_cleanup: 1 device not closed

OpenRA has encountered a fatal error. fo.

amalabey commented 4 years ago

This appears to be a problem with the specific map (map 112d326f4156a1dcd7d479a3759a0a098a0f5330 (Top of The Hill by Westwood Studios).). Tried another map but the AI didn't build the refinery so couldn't continue. I believe this is captured in a sperate issue.

cookgreen commented 4 years ago

You should set money to 10000 or above

amalabey commented 4 years ago

Yeah, I was able to continue on other maps after setting the money to a higher value.

cookgreen commented 4 years ago

73

cookgreen commented 4 years ago

What building or unit do you build?

amalabey commented 4 years ago

Game crashes on that map while starting before creating any buildings or units.

alexeik commented 4 years ago

U have a frozen unit on map. When openra creates map units(like a this unit with Frozen trait) it searches for footprint trait in .yaml , but dont get it. Locate it Frozen unit on map : remove it or add Footprint trait in respect unit .yaml

GraionDilach commented 4 years ago

It's an actor with a footprint outside the playable map area.

cookgreen commented 4 years ago

It's an actor with a footprint outside the playable map area.

ok

cookgreen commented 4 years ago

branch playtest-20200303 has been deleted