Tech progress sometimes halts
  • << previous
  • 1
  • next >>
said on Aug 23, 2010 at 03:28 PM

Unfortunately, this is one of those bug reports that is eye-witness only - and inconsistent in my experience.

What my friend and I have witnessed on several occasions is that our technology simply stops progressing. e.g. I'll have 10 things in the tech queue, some of them at say 50 out of 55, and turn after turn after turn that tech, and all other techs, simply don't progress any further (it stays at 50/55 forever).

When this happens, it can happen to just one of us in our multiplayer game. Last evening, e.g., it happened to me playing Germany, but my friend playing Brazil did not experience the "tech freeze" in the same, multiplayer, game.

We've both encountered it before in single player games as well.

I can send a save-game upon request - however, this particular save is for a mod I made based on the Dawn of Steel mod (from Jan of 2009). So I'd have to send in my mod as well in order to open the game.

Sorry, I know it's a lot to ask anything of you guys, since this game is now superseded with MHII. However, since I've bought several copies (so I have licenses on multiple machines) and I own MHII, I thought there might be some information that you would have to share? Maybe others have seen this problem in mods, or in the base game, and know of a solution?

I've tried reloading the game. Restarting my PC. Loading that game single player. Moving techs around in priority. Adding techs, removing techs, changing the total IPU assigned to technology. Nothing.

One thing I find odd, which just might be a clue: I never get any special events regarding tech progress (good or bad) once this condition affects my game. So I never get "[city] had [breakthrough/setback] while researching [thing]".

Does anyone have any information regarding this (or a similar) situation with MHG? I'm happy to debug my mod further (which often times does allow whole games to be played through) if anyone knows where I should look for debugging feedback?

Thanks for any help you might have to offer

said on Aug 23, 2010 at 08:05 PM

DbgView shows the following, which seems to indicate that there is a bug in the "FastBattleships" tech as I modified it:

[4704] LOG: Game - 1::CResearchFactoryOutputAvailableData::MakeAvailableForCountry - factory output FastBattleship 83148 FactoryOutputUnit was already available to country 39 Japan in FastBattleship 82844 ResearchFactoryOutputAvailableData which doesn't allow already available output

[4704] LOG: Game - 1::CResearchProjFactoryOutput::MakeFactoryOutputsAvailable - Failed to make factory output for data FastBattleship 82844 ResearchFactoryOutputAvailableData available to country 39 Japan in FastBattleships 82841 ResearchProjFactoryOutput

[4704] LOG: Game - 1::CResearchProjFactoryOutput::ApplyEffect - Failed to make factory outputs available for country 39 Japan in FastBattleships 82841 ResearchProjFactoryOutput

[4704] LOG: Game - 1::CResearchState::CompleteResearchProject - Failed to apply effect from project FastBattleships 82841 ResearchProjFactoryOutput to country 39 Japan in 46226 ResearchState

[4704] LOG: Game - 1::CResearchProjectState::CompleteProject - Error completing project FastBattleships 46218 ResearchProjectState for country 39 Japan

[4704] LOG: Game - 1::CResearchProjectState::ExecuteStep - Error completing project FastBattleships 46218 ResearchProjectState for country 39 Japan

[4704] LOG: Game - 1::CResearchState::ExecuteStep - Failed to make execute step on project state FastBattleships 46218 ResearchProjectState in 46226 ResearchState

[4704] LOG: Game - 1::CCountry::RunResearchProjects - Failed to execute step on 46226 ResearchState in 39 Japan - 46001 MECountry.

[4704] LOG: Game - 1::CMEGame::RunCountryResearchProjects - Failed to apply projects to country 46001 for game 2 .


Having looked at the dbgview for a while, and experimented with some older saves, it seems clear that when the above error happens, no further tech processing occurs. So Japan stops UK, USA, and USSR from processing their tech updates.

In a later save, where Germany is unable to progress technologically, I can see that it happens immediately after France has a sequence identical to the above (except the tech in this scenario is SuperBattleships).

So, I assume since France appears as a selectable nation before Germany (alphabetical?), then I'm okay as Germany while Japan is erroring, but my tech halts once France errors.

So the real question becomes: What does the game mean by: "CResearchFactoryOutputAvailableData::MakeAvailableForCountry - factory output FastBattleship 83148 FactoryOutputUnit was already available to country 39 Japan in FastBattleship 82844 ResearchFactoryOutputAvailableData which doesn't allow already available output"

Japan doesn't have any FastBattleship technology, and France doesn't have FastBattleship nor SuperBattleships.

said on Aug 23, 2010 at 10:21 PM

You are playing a custom scenario, right? It could be a problem with the specific scenario, not the game itself.

_________________
MODS: Deadlock: making-history.com/asset/1317 ; TCBTS: making-history.com/asset/384091 ; Zombie Apocalypse: making-history.com/asset/368403 ; Onslaught: making-history.com/asset/418213
said on Aug 24, 2010 at 09:34 AM

Odanan - you were spot on.

After I read the sticky about using DbgView, and poking around with my save game and custom scenario (mod), I was able to see the above error, and determine that this was definitely the problem.

Basically, I had two techs trying to obsolete a previous unit type - which seems to cause the game to error during processing of technology / research. So as soon as a given country fails to process research, all further countries don't even get the chance to execute their technology phase of their turns. So once Japan starts to fail, then UK, USA, and USSR all stop.

Similarly, once France gets stuck, then Germany gets stuck (it seems to process countries alphabetically).

Once I changed those techs so that they create the correct unit, and only one tech obsoletes any given unit type, then my errors stopped happening.

So this is bug was entirely in my scenario/mod, not a problem in MHG, and is now resolved.

Perhaps I'll upload my scenario finally ;) Mostly I just need a good name for it (it was my attempt to make the game a bit more realistic in terms of build times - e.g. capital ships take 100 weeks at a maxed out production city). But there are so many things that are imbalanced in MHG that are very difficult to fix - especially the generic issue of not being able to cap specific regions production (e.g. it would be ideal to limit many chinese & russian provinces to only allow up to say a 10 production city, nothing more, ever). As it stands, China is insanely rich due to food production, and Russia can easily become the most powerful nation in the world (or USA) long before 1939. Which is just goofy.

Ah well - it's a fun game anyway! :)

said on Aug 24, 2010 at 09:41 AM

FYI - if the developers ever happened to have the time / opportunity to update MHG:
This sort of error should have been reported - it's fatal in the sense that the game doesn't really progress once this condition occurs. So it would have been nice if the game simply stated: ERROR: Unable to process research phase. or some such...

Similarly, this would be an ideal candidate for things to look for in the "validate" command in the scenario editor:

  • Does more than one tech obsolete a unit? BAD
  • does more than one tech enable a unit? BAD

  • Alternately, make the above two conditions not an error - which would make the technology system more flexible (it would be really nice if I could state that more than one tech can obsolete an old tech, and similarly, that more than one tech can allow the production of a given tech, and similarly, that a given tech can obsolete or replace more than one unit type). If none of those were errors at all, then tech trees could become considerably more complex without breaking the game. ;)

  • << previous
  • 1
  • next >>