Shannon V. OKeets
Posts: 21963
Joined: 5/19/2005 From: Honolulu, Hawaii Status: online
|
July 8, 2020 Status Report for Matrix Games’ MWIF Forum Product Releases I released Hot Patch version 3.1.0.7 in mid-June. The beta testers received 5 new versions 4.0.2.10 - 4.0.2.14 in the past month. Rather than go ahead with a new Public Beta, I have been focusing on investigating and fixing bugs reported in the Tech Support sub-forum and received from beta testers. I also spent several weeks working on improving Production Planning, especially how build points (which fulfill trade agreements) are created and routed. Until those changes are verified as being fully functional, I’ll hold off on creating the Public Beta. In order to release a new Hot Patch, I need to set up a Drop Box which will be accessible to all customers. Because the attachments to posst in the World in Flames forum are limited to 9,999 KB, I will no longer be able to simply post the zipped MWIF.exe as an attachment - since it exceeds that size. Bugs I remain up-to-date with my 2 bug report streams: posts in the Tech Support forum for World in Flames, and reports from beta testers. Almost all of those bug reports are accompanied by saved games, which makes it much easier for me to make sure the bugs are bugs, and to fix them when they are. Mad Excepts reported via email are vastly more ambiguous as to their cause. Which is why I am still lagging in getting them all recorded and examined. Production Planning is far too complicated. Of course the cause is the myriad of rules concerning what can go where when using what convoys. Below are my in-line summary comments for how they are determined. Note that there are many nested loops: all trade agreements, separate loops for override/default/etc. Cycles through oil, non-oil. For loops for all the possible resources to fulfill a trade agreement. Search for overland and overseas paths, and lastly all the Build Point specific code. US Entry options play a role in what can occur, as well as the states of war between countries (including alignments). Then there are the limits imposed by the rules on how many resources/build ponts can go through ports, be stored in cities and ports. The list of exceptions to the basic rules are numerous too. There are over 18,000 lines of code for making this work, not counting all the various support modules (e.g., sorting and filtering resources, referencing country data). // **************************************************************************** // ProductionCompute. // AssignTradeResources // Fulfill_USJapanTradeAgreement // FindBestResource(trtOil, True); // Major powers only. // trsOverride, trsDefault, trsUnscheduled, trsLastTurn, trsAny, trsAnySub // // repeat // for TradIndx := 0 to Count - 1 do // FindResource(TradeTyp, Search_Type, Majors) // FindResToFulfill // for F1stGResIndx := 0 to Map.ResourceList.Count - 1 do // TryResToFulfill // trsOverride, trsDefault, trsUnscheduled, trsLastTurn, ... // FindAnyRoute // FindRoute(Land or Sea) // until not FoundAnotherResource; // // FindBestResource(trtNonOil, True); // Major powers only. // FindBestResource(trtOil, False); // All countries. // FindBestResource(trtNonOil, False); // All countries. // // DecideOnResources // FullSearch(1); // Overland only. // for Search_Type := tresOverride to tresAny do // EvalResource // tresOverride, tresDefault, tresMostRecent, tresLastTurn, tresAny // FindRoute(Land or Sea is parameter in FullSearch) // FullSearch(2); // Overseas also explored. // // AssignTradeBuildPoints // CreateDummyFactoryHex; // Add cities & major ports as possilbe BP dest. // BuildLimits; // Set maximum BPs that a major power can produce. // Set_BP_Source_Destination; // Set source and destination for a build point. // FindBestResource(trtBuildPoints, True); // Major powers only. // trsOverride, trsDefault, trsUnscheduled, trsLastTurn, trsAny, trsAnySub // // repeat // for TradIndx := 0 to Count - 1 do // FindResource(TradeTyp, Search_Type, Majors) // FindResToFulfill // for F1stGResIndx := 0 to Map.ResourceList.Count - 1 do // TryResToFulfill // trsOverride, trsDefault, trsUnscheduled, trsLastTurn, ... // FindAnyRoute // FindRoute(Land or Sea) // until not FoundAnotherResource; // // **************************************************************************** Missing Optional Rules & Half Map Scenarios Nothing new in June. AI Opponent (AIO) Nothing new in June.
_____________________________
Steve Perfection is an elusive goal.
|