MWIF Monthly Reports

World in Flames is the computer version of Australian Design Group classic board game. World In Flames is a highly detailed game covering the both Europe and Pacific Theaters of Operations during World War II. If you want grand strategy this game is for you.

Moderator: Shannon V. OKeets

Post Reply
Shannon V. OKeets
Posts: 22165
Joined: Wed May 18, 2005 11:51 pm
Location: Honolulu, Hawaii
Contact:

RE: MWIF Monthly Reports

Post by Shannon V. OKeets »

August 6, 2016 Status Report for Matrix Games’ MWIF Forum

Bugs
In July I spent 3+ weeks working on Supply. That was mostly spent on tertiary supply, to make sure all possible supply sources are correctly identified. There were only a handful of bugs, but those were very difficult to locate in the 18,000+ lines of code devoted solely to calculating and displaying supply. In effect, I went over and over code that was working perfectly, looking for the few places where the logic had a fault.

I am late posting this report (as usual), so I will just give 4 examples of the supply calculations working correctly, which had been failing - before my ordeal of searching for the less than 10 wrong lines of code in the 18,000+ lines of supply code.

(1) Here the Allies are fighting northwards to Casablanca and going around the Axis flank in the Atlas mountains. The Axis controls Cape St. Vincent, which means that the Allies have to use the port of Cisneros in Spanish Sahara to reach the Cape Verde Basin. MacArthur is tracing to Eisenhower, who traces to Bradley, who traces to Gort, who traces overseas to Liverpool. MacArthur is crucial for the flanking operations east around the German front line. The top Supply Sources form for the Commonwealth shows Gort having to go the long way by sea, skipping Cape St. Vincent, to reach Liverpool. On the Supply Sources form below that, for the United States, Gort appears with a ‘C’ in his route type, indicating that for the US, the supply path is for a cooperating major power. Getting MacArthur to appear as a tertiary supply source was the main bug I fixed here. Another bug was that for France, shown below the United States Supply Source form, the program was not displaying any of the cooperating tertiary supply sources. This saved game was from Alex.

(2) Here the Axis is moving east to conquer Saudi Arabia. German and Italian forces have moved down the Hejaz railway to Medina, where von Bock is providing secondary supply. Balbo traces supply to Graziani who traces to von Bock who traces supply overseas to Vienna. The German Stuka is in supply from Balbo (along with an Italian land unit) next to the Saudi 1-5 cavalry unit. Note that the program is taking into consideration the weather effects on supply. Hence the Italian motorized unit south of von Bock is out of supply. Getting Balbo to be in supply was the bug here. This saved game was from Subeto.

(3) Here the war is going badly for the Germans in Mar/Apr 1944, with the Commonwealth and United States coming from the west and the USSR coming from the east. I have put the Allied HQs on top of their stacks. For the Commonwealth, Crerar is a secondary supply source tracing through Amsterdam and the North Sea to Liverpool. For the US, Crerar appears twice, once tracing overseas (the same path as for the Commonwealth) as a cooperating supply source. The second time he is shown as having an overland supply path to Nice. That involves both the Commonwealth and France as cooperating major powers. Of particular interest is that the Commonwealth units in Denmark are out of supply. Although there are Commonwealth convoys in the Baltic Sea and the North Sea, the Germans still hold both Copenhagen and Kiel, which makes the Kattegat impassable to the Allies for supply. They can trace 4 basic path hexes to Frederikshavn, but that is too many because the overseas link requires one more. This saved game was from Courtenay.

(4) Here the Axis is marching across the desert to Iraq with their eyes on taking out Persia. Iraq is aligned to Italy and Syria is conquered by Italy. Damascus is a potential secondary supply source for both Italy and Germany, while Baghdad is only a potential secondary source for Italy. von Leeb traces to Balbo, who traces to Graziani, who traces to Cavallero (under the Italian 5-3 infantry corps), who traces to Damascus, which traces overseas to Genoa. Balbo has a ‘pure’ path back to supply, not involving any cooperating major powers in the supply path or links therein. The bottom Supply Sources form is for Iraq and shows Balbo twice, as a secondary supply source for Iraqi units because he can trace supply to Baghdad (a primary supply source for Iraqi units). The ‘A’ in Balbo’s path type indicates it is for an aligned minor country. This saved game was from Tobias.

This past month’s corrections to supply should speed up the calculations in some instances, simply because when supply paths are found, the program can stop searching. Also, once a valid supply path has been found, then the program always starts the next search by testing whether the old path still works. That can save a lot of time when recalculating supply.

Image
Attachments
August 201..Report 1.jpg
August 201..Report 1.jpg (815 KiB) Viewed 15724 times
Steve

Perfection is an elusive goal.
Shannon V. OKeets
Posts: 22165
Joined: Wed May 18, 2005 11:51 pm
Location: Honolulu, Hawaii
Contact:

RE: MWIF Monthly Reports

Post by Shannon V. OKeets »


(2) Here the Axis is moving east to conquer Saudi Arabia. German and Italian forces have moved down the Hejaz railway to Medina, where von Bock is providing secondary supply. Balbo traces supply to Graziani who traces to von Bock who traces supply overseas to Vienna. The German Stuka is in supply from Balbo (along with an Italian land unit) next to the Saudi 1-5 cavalry unit. Note that the program is taking into consideration the weather effects on supply. Hence the Italian motorized unit south of von Bock is out of supply. Getting Balbo to be in supply was the bug here. This saved game was from Subeto.


Image
Attachments
August201..Report2.jpg
August201..Report2.jpg (693.84 KiB) Viewed 15723 times
Steve

Perfection is an elusive goal.
Shannon V. OKeets
Posts: 22165
Joined: Wed May 18, 2005 11:51 pm
Location: Honolulu, Hawaii
Contact:

RE: MWIF Monthly Reports

Post by Shannon V. OKeets »

(3) Here the war is going badly for the Germans in Mar/Apr 1944, with the Commonwealth and United States coming from the west and the USSR coming from the east. I have put the Allied HQs on top of their stacks. For the Commonwealth, Crerar is a secondary supply source tracing through Amsterdam and the North Sea to Liverpool. For the US, Crerar appears twice, once tracing overseas (the same path as for the Commonwealth) as a cooperating supply source. The second time he is shown as having an overland supply path to Nice. That involves both the Commonwealth and France as cooperating major powers. Of particular interest is that the Commonwealth units in Denmark are out of supply. Although there are Commonwealth convoys in the Baltic Sea and the North Sea, the Germans still hold both Copenhagen and Kiel, which makes the Kattegat impassable to the Allies for supply. They can trace 4 basic path hexes to Frederikshavn, but that is too many because the overseas link requires one more. This saved game was from Courtenay.



Image
Attachments
August201..Report3.jpg
August201..Report3.jpg (1.21 MiB) Viewed 15658 times
Steve

Perfection is an elusive goal.
Shannon V. OKeets
Posts: 22165
Joined: Wed May 18, 2005 11:51 pm
Location: Honolulu, Hawaii
Contact:

RE: MWIF Monthly Reports

Post by Shannon V. OKeets »


(4) Here the Axis is marching across the desert to Iraq with their eyes on taking out Persia. Iraq is aligned to Italy and Syria is conquered by Italy. Damascus is a potential secondary supply source for both Italy and Germany, while Baghdad is only a potential secondary source for Italy. von Leeb traces to Balbo, who traces to Graziani, who traces to Cavallero (under the Italian 5-3 infantry corps), who traces to Damascus, which traces overseas to Genoa. Balbo has a ‘pure’ path back to supply, not involving any cooperating major powers in the supply path or links therein. The bottom Supply Sources form is for Iraq and shows Balbo twice, as a secondary supply source for Iraqi units because he can trace supply to Baghdad (a primary supply source for Iraqi units). The ‘A’ in Balbo’s path type indicates it is for an aligned minor country. This saved game was from Tobias.



Image
Attachments
August201..Report4.jpg
August201..Report4.jpg (980.33 KiB) Viewed 15658 times
Steve

Perfection is an elusive goal.
Shannon V. OKeets
Posts: 22165
Joined: Wed May 18, 2005 11:51 pm
Location: Honolulu, Hawaii
Contact:

RE: MWIF Monthly Reports

Post by Shannon V. OKeets »

September 4, 2016 Status Report for Matrix Games’ MWIF Forum

Program Development
I have come to the conclusion that the reason it now takes me so long to fix bugs is that all the bugs that were easy to fix (for one reason or another) I’ve already fixed. What are left are reported problems/bugs that require a lot more time to investigate and figure out. For the past couple of weeks I tackled the few remaining Supply bugs reported by the beta testers when I gave them version 02.02.07.02 to test. I also looked into (and fixed a dozen or so of) the bugs reported by players with version 02.02.07.00.

I have uploaded version 02.02.08.00 for Matrix to make available as a Public Beta next week. The beta testers also have 02.02.08.01 with Debug enabled to put through its paces. Here are the release notes for 02.02.08.00. If it works well as a Public Beta for a couple of weeks, we’ll make it an official Update later in September.

[I on ordered 2 new Dell 3216Q monitors to supplement (then replace) my 2 Dell 3014 monitors. Once they arrive, I should be able to debug all the reported problems with using 3 and 4 monitors.]

=====================================================================

Release Notes for Version 02.02.08.00


Air Operations
1. Added a check to avoid a possible problem when undoing the rebase of a carrier air unit aboard a carrier during the Air Rebase phase.

2. Added a line of code to make sure the variable Current Air Combat is correct when switching to the next air-to-air combat after an air-to-air combat is completed. Previously the program would sometimes halt when switching to the next air-to-air combat.

Land Operations
3. Modified the Undo All command for the Land Movement phase so all land units belonging to the current major power have their Movement Points Used value reset to zero. This enables the player to correct a problem that occurred (I don’t know how) when some land units were erroneously marked as having used all their movement points.

Production
4. Fixed a problem in the Production Phase where saved build points belonging to Vichy France caused the program to bring up the Production form for Vichy France even though Vichy France no longer existed.

Production Planning

5. Added a check to avoid a fatal error in Production Planning when the Source Country for a resource is unknown [an obscure problem].

6. Added a check to avoid a non-fatal error when clicking on the Global Map form to identify a location on the map, but the clicked on pixel is outside of the global map area (e.g., clicking on the form’s border).

Supply
7. Fixed numerous problems with tertiary supply sources tracing supply to other tertiary supply sources.

8. Fixed a tertiary supply problem unique to the Rydz HQ, when it was tracing overseas supply to a Commonwealth primary supply source. Previously, the program would generate an infinite loop under certain circumstances.

9. Fixed a problem with displaying tertiary supply sources when the supply source is good for three cooperating major powers. Previously, the tertiary supply source may not have been shown on the form for one of the major powers - although it provided supply for all three major powers.

10. Added a ‘/C’ to the Supply Sources Display for tertiary supply sources for cooperating major powers where the supply path belongs wholly to a cooperating major power. For example, if von Leeb (tertiary) traces to Rommel (secondary), who traces to Berlin (primary), then von Leeb appears on the German display of supply sources as a ‘pure’ supply source. But on the Italian display, he appears with a /C, indicating that he is a supply source belonging to a cooperating major power.

11. Fixed a bug so when the capital of a conquered country is being considered as a possible secondary supply source, and there is no overland path to a primary supply source, the program first tries to find an overseas path to a primary supply source belonging to the major power that conquered the country. Previously the program had tried to find an overseas path to a primary supply source owned by a major power that cooperated with the conqueror.

12. Fixed a problem with supply where sometimes the first supply path found was not being recorded. This often was Copenhagen - the capital of a conquered minor country.

13. Added code so the USSR can trace supply through hexes controlled by other Allied major powers once Germany is completely conquered. Similarly, other Allied major powers can trace supply through the USSR once Germany is completely conquered. This is my (new) interpretation of the rule for tracing supply by and through USSR controlled hexes: if Germany has been completely conquered, then the USSR must have been at war with Germany - once upon a time. Note that this may take calculating supply more time once Germany is conquered since all the Allied major powers can then trace supply through the USSR.

14. Fixed several problems with recalculating supply that under certain conditions would cause an infinite loop.

15. Fixed a problem with supply where a fatal error would occur on very rare occasions when the program was calculating railway supply paths.

16. Added code to prevent a supply source from being added to a list of supply sources if it is already in the list. I am not sure, but I think this may have been the cause of some problems with otherwise inexplicable errors. At least the place in the code where the program failed concerned removing entries from the lists of supply sources.

Quit
17. Added checks to avoid an error message when quitting a game in the middle of a naval combat.

18. Added a check to avoid a fatal error when destroying the game while the Action Choice form is visible.

Other
19. Made changes to the Action Choice form so a major power is limited to using only one Offensive Chit in an impulse.

20. Fixed a problem with the screen repeatedly flashing if the game is saved while the US Entry Pool form is visible during the US Entry phase.

21. Added a check for determining whether a port is controlled by the enemy to avoid an error when the port is not controlled by any major power or minor country.

22. Added a check (due to paranoia) to guarantee that units placed on the map aren’t inadvertently deleted from the master list of units in the game.

23. Added a check to avoid a non-fatal error if the player tries to use drag-and-drop on the Naval Review Details form. [World in Flames doesn’t use the Windows drag-and-drop function, but sometimes the operating system gets confused if the player tries to use it to move a unit.]

NetPlay
24. Fixed a fatal error when a naval combat is avoided using surprise points.

25. Fixed an occasional problem with finding the controlling major power for hexes in neutral countries. This change fixed a problem in NetPlay where the relationships between major powers and conquered minor countries and territories were sometimes shown incorrectly on the Relationship form for one side.

26. Added some code so search rolls for naval combats are displayed for the Axis player.
Steve

Perfection is an elusive goal.
Shannon V. OKeets
Posts: 22165
Joined: Wed May 18, 2005 11:51 pm
Location: Honolulu, Hawaii
Contact:

RE: MWIF Monthly Reports

Post by Shannon V. OKeets »

October 4, 2016 Status Report for Matrix Games’ MWIF Forum

Program Development
I received and installed 2 new Dell 3216Q monitors to supplement my 2 Dell 3014 monitors. In doing so, I found that four monitors is too many for me to keep an eye on. I had to keep swiveling my head around to find everything. I’m now down to 3, which works quite well for me.

Version 02.02.08.00 was made available as a Public Beta in September. The beta testers received version 02.02.08.02 on October 1st. That version has the one necessary fix for a NetPlay Naval Combat bug. Once the beta testers give the all clear, I'll make a new version available as a Public Beta for testing NetPlay.

Bugs
I spent a lot of time in September getting the program to work correctly with 4 monitors. That became a priority for me because it was failing at times while I was testing other sections of the code with 4 monitors active. Getting the program to work with 4 monitors required writing ~1500 new lines of code to handle all the combinations of sizes and positions for the monitors. As far as I can tell, the code is solid for 3 and 4 monitors now. Mostly this involved Screen Layouts: putting the Main form, Detailed Map, Global Map, and various other forms in different positions on different monitors. I have noticed that most Window applications have trouble with this when the monitors are different sizes. What I was most concerned about was the tops of the forms being accessible - so they can be moved and resized whenever the player wants to do so.

In October I’ll be heading back to reviewing all recently reported bugs (i.e., in August and September). Besides those bug reports, I also want to clean up my list of reported bugs in Naval Operations (movement and combat). There aren’t that many but some of them look to be annoying. There are also a handful of items remaining on my task list for both Land Operations and Peace (e.g., Conquest and Liberation). But those are lower down on my priority list.

Missing Optional Rules & Half Map Scenarios

Nothing new in September.

AI Opponent (AIO)
Nothing new in September.


Steve

Perfection is an elusive goal.
Shannon V. OKeets
Posts: 22165
Joined: Wed May 18, 2005 11:51 pm
Location: Honolulu, Hawaii
Contact:

RE: MWIF Monthly Reports

Post by Shannon V. OKeets »

November 7, 2016 Status Report for Matrix Games’ MWIF Forum

California
I was in California for 5 days last month competing/singing with my barbershop chorus at the Far Western District Contest. The link below is to a folder with pictures and video of our contest performance in Riverside, CA.

The video can be viewed at this website https://drive.google.com/drive/folders/ ... XpRRThRMmM

The 2 videos are identical, just in different formats. The MP4 file is smaller (by an order of magnitude) - but still takes a while to download. If you put the mouse over the graphic of the video, a download button will appear. The same is true of the jpg files. The other files are boring.

Look at the video first! While our first song is fairly standard barbershop fare (Love is a Tender Trap), our second song contains a surprise ending - which got us a standing ovation from the audience. The first two rows of the 'audience' are the judges (beyond the horizontal bar); which explains why they aren't part of our standing ovation. We came in 9th out of 17 choruses competing but placed first in our division (A) and would have placed first in the next higher division (AA). The chorus goes to the mainland rarely (the last time was 10 years ago) which is why we were assigned to division A. If we go back in the next few years we’ll be ranked as AA.

PS: I am in the back row, on the far right in a red shirt (as you view the video).

Program Development
Version 02.02.08.03 was given to the beta testers early in October. Sadly, the beta testers found yet another NetPlay Naval Combat bug (aborting units from combat). I expect to be able to give them 02.02.08.04 this week and make version 02.03.00.00 available some time later this month as a Public Beta for everyone. I really want to get more NetPlay testing underway using that version and we have some ideas about how to make that happen. The long term goal is to have version 03.00.00.00 released in January as an official update, free of NetPlay bugs.

Bugs
I spent most of October reviewing and working on bugs reported in Tech Support during the months of August, September, and October (through the 22nd). Towards that end I have cleared 23 of those reported bugs with 24 remaining. However, of the remaining 24 I only have saved games for 19. I may end up moving the other 5 to Opaque status - which means I have no idea how to recreate them, much less fix them.

Missing Optional Rules & Half Map Scenarios
Nothing new in October.

AI Opponent (AIO)
Nothing new in October.
Steve

Perfection is an elusive goal.
Shannon V. OKeets
Posts: 22165
Joined: Wed May 18, 2005 11:51 pm
Location: Honolulu, Hawaii
Contact:

RE: MWIF Monthly Reports

Post by Shannon V. OKeets »

December 1, 2016 Status Report for Matrix Games’ MWIF Forum

Program Development
Version 02.03.00.00 is now in the Matrix Games queue to be released as a Public Beta ASAP. This verrsion has corrections for all but the most obscure known NetPlay bugs.

What I would like to do in December is to start NetPlay games with customers versus the beta testers and myself. Those games would be using version 02.03.00.00. If new NetPlay bugs occur during those games, I would be sending out Hot Patches so everyone could continue playing. Having a beta tester or myself involved in each game will help with the process of identifying bugs, generating saved games for reproducing and fixing them, and modifying saved games (if necessary) for continuing to play the games.

Once version 02.03.00.00 is available, I’ll start a new thread in the World in Flames forum to set up those games. The beta testers and myself have discussed what those games would look like. For instance, I want to cover several different scenarios and use a variety of optional rules. Obviously the objective here is to put the NetPlay code through a diverse set of game situations to make sure it is free of bugs. If all goes well, there will be an official new MWIF version in January (03.00.00.00).

Bugs
In November, I continued reviewing and working on bugs reported in Tech Support during the months of August, September, and October. I also fixed the more serious bugs reported by the beta testers. Below are the Release Notes for version 02.03.00.00, which document the changes since the last public beta (verison 02.02.08.00).

I will continue to work through bug reports on my task list throughout December, but with priority given to any newly discovered NetPlay bugs.

Missing Optional Rules & Half Map Scenarios
Nothing new in November.

AI Opponent (AIO)
Nothing new in November.




Release Notes for Version 02.03.00.00


Air Operations
1. Fixed a fatal error in air-to-air combat during a naval combat phase when playing without carrier air units and all the units in a group (i.e., fighters or bombers for either side) have been destroyed, cleared through, or aborted, and a player decided to abort from the naval air combat.

2. Fixed a problem where an air unit was unable to return to base because a potential hex was being considered invalid because of Foreign Troop Commitment Limits. The hex in consideration had been taken by the enemy and then recaptured by the original owner. The United Kingdom had been the original owner but when recaptured the program was marking it as owned by the Commonwealth. In the program code the distinction was causing problems when trying to determine if the ownership of the hex had changed.

3. Fixed a problem with calculating the correct air-to-air combat values under the unusual circumstances that the phasing side had a fighter-bomber flying as a bomber, its side had no fighters, and the fighter-bomber was aborted/destroyed in air-to-air combat. Because the fighter-bomber returned to base (or was placed in the Destroyed Pool), its flag was reset as “flying as fighter”. This had been causing the program to not subtract one from its air-to-air combat value. The program now handles this case correctly.

4. Fixed a problem in the Guadalcanal scenario where the Japanese were not given the opportunity to port attack naval units belonging to the United Kingdom because the United Kingdom (as a country) is not part of that scenario. The correction now lets the Japanese perform air attacks (of all types) on units belonging to the United Kingdom because they are a Commonwealth member nation. This correction also fixes similar problems in the half map scenarios.

5. Added some code to make sure no air units are selectable at the beginning of the Commit Subs subphase of naval combat. Selecting them at that time could cause them to disappear from the map.

Naval Operations
6. Fixed a problem with a hex inland in Albania being shown as adjacent to the Italian Coast.

7. Fixed the problem with naval units initiating combat not being marked as such, and remaining organized after the search rolls and combat occur.

8. Fixed a minor problem with which sea areas are selectable for Naval Combat when the possibility of the Axis initiating combat with US convoys potentially carrying resources/build points to another Allied major power with which the Axis major power is at war. Previously a sea area would be incorrectly shown in the Select Sea Areas for Combat form for the Axis major power (e.g., Japan) to initiate combat (e.g., with a US convoy carrying resources to China). However, clicking on the Initiate Combat button would have no effect. After these code changes, the sea area does not appear on the form unless clicking on the button will actually initiate combat. That is, the check for whether a sea area appears on the form is identical to the check for whether initiating combat using the form’s button works. There are a bunch of US Entry Option rules related to this.

Land Operations
9. Fixed a problem with a completely conquered China causing Chinese partisans to be unable to move.

10. Fixed a problem with failed invasions where the number of units the attacker should lose according to the CRT result is less than the number of invading units - all of which are lost. For example, if the CRT shows 1 attacker loss when 2 units are invading, but the attacker failed to take the hex, then both the attacking units are lost. Previously, the program was confused by this situation and asked for an additional unit to be destroyed after all the invading units had been destroyed.

11. Added a check so Polish zones of control extend into Germany during the first impulse of Global War and Fascist Tide, even though at that time Germany is technically ‘neutral’ (i.e., not at war with any major power).

12. Fixed a problem with the USSR units not exerting a zone of control into hexes it controls when Finnish land units are moving. This bug was another case caused by the USSR being technically ‘neutral’ since it was a major power that wasn’t at war with another major power.

13. Modified the rail line data from north of Lake Peipus so it branches south one hex. This makes the MWIF European map match the World in Flames board game map.

14. Fixed a problem that was preventing Vichy units from retreating into Vichy controlled hexes. Note that this also affected shattered Vichy units.

15. Added a line of code so the detailed map doesn’t automatically center on the next selectable unit when moving the cursor over an invasion hex during the Ground Support phase.

Reorganization
16. Fixed a problem with reorganization where an HQ (or TRS or ATR) with insufficient points available was able to fully reorganize a target unit. After these changes, an HQ (or TRS or ATR) can still use it last remaining reorganization points, even when they are insufficient to fully reorganize a target unit - in the hopes that another HQ (or TRS or ATR) can finish reorganizing the target unit.

Use Oil
17. Added code to the Use Oil processing to record which oil points have been used. That data is then used when a player switches between including/excluding available oil from cooperating major powers, so the available oil correctly reflects oil that has already been expended. Previously, that switching caused all available oil to be reset to zero expended. This correction also eliminates the ‘cheat’ of saving and restoring a game in the middle of the Use Oil phase, which previously had the same effect of resetting all available oil to zero expended.

18. Removed the check for whether a major power has any available oil for reorganizing units before bringing up the Use Oil form. This change means that even though a major power has no oil, it can still try to use oil belonging to a cooperating major power. However, you might now see the Use Oil form with no units and no oil displayed. If there is oil available from a cooperating major power, clicking on the check box to use oil from cooperating major powers will bring up both all the current major power’s disorganized units and all available oil.

19. Increased the value of the search parameter for finding oil sources for disorganized units in the Use Oil phase from 50 to 150. At 120 is was still missing some of the oil sources that were far away, but legally reachable. I had lowered this number several months ago to speed up the search time in the Use Oil phase - I hope this change doesn’t cause that problem to reoccur.

Production
20. Fixed a problem with arriving naval units in the 1st cycle for an incompletely conquered major power not automatically going into the Construction Pool.

Production Planning
21. Fixed a tricky problem with changing which factory supplies a newly created Build Point to fulfill a trade agreement. The Production Planning form now implements and displays those changes correctly.

Peace
22. Fixed a problem with territorial units belonging to Vichy France remaining on the board after Vichy France is conquered. Besides fixing the original problem, the program now also checks for that condition when a game is restored, and converts ownership of those units to France.

Supply
23. Fixed a problem with calculating supply (i.e., an infinite loop occurring) when the capital of a conquered minor country (e.g., Warsaw) is recaptured during the Advance After Combat subphase of a land combat.

24. Fixed an obscure problem with calculating supply causing a fatal error sometimes.

25. Fixed a problem with tertiary supply when an HQ could not find a path to its own primary supply source, but could find one to an aligned minor country’s primary supply source, and therefore was not searching for a path to a secondary supply source. That is, an out of supply HQ was not searching to see if it could act as a tertiary supply source. This came up in China where a Japanese HQ was too far from a rail line to reach a port and then go overseas to Japan, but could reach the capital of an aligned minor country (e.g., Korea) and therefore was not finding (not even searching for) a path to a secondary supply source (e.g., another Japanese HQ which could find an overseas path back to Japan). The program now figures out that the HQ is a valid tertiary supply source.

Other
26. Fixed several problems with playing with 3 and 4 monitors. Even if the monitors are different sizes, the program is capable of placing the Main form, Detailed Map, Global Map, and “Detailed Map Assist forms” on 4 different monitors. By Map Assist forms, I mean the Naval Review Details and Summary, Screen Layouts List, and Map Views List. In general, most of the forms still appear beneath the Main form (when there is room). Personally, I find using 4 monitors confusing. I keep having to swivel my head around to find what I am looking for. 3 is about my limit - [clearly I have no future as a stockbroker].

27. Corrected some of the logic for displaying certain forms (Screen Layout List, Map View List, Global Map, Naval Review Details, and Naval Review Summary) so they appear within the available space for the monitor on which they are to appear.

28. Added numerous checks for the US Entry Options variable being valid before checking for the value of individual options (e.g., whether Resources to China has been selected). This was causing problems in old Guadalcanal saved games where that variable had never been initialized.

29. Added 3 new filters to the Unit Filter form. These are only available when in Debug mode and let you select units: Setting Up, Moving, and/or Removed. This helps to track bugs when units get stuck “On the Move” and “Setting Up”, and to eliminate all the “Been Removed” units when finding units not on the map.

NetPlay

30. Fixed a problem with the Axis player clicking on the OK - Done button on the naval combat results form before the Allied player - after a naval combat has been completed. That now operates the same way as clicking on the OK - Done button in the Land Combat Results form. The program sends a Game Record Log to the other players and once they have all closed the form, the program proceeds to the next subphase.

31. Fixed a couple of problems with declaring Vichy France when all the French minor countries go to Vichy.

32. Fixed a problem with flying naval air support for the Axis side. Previously the program would halt after the Axis player clicked on the End-of-Phase button.

33. Fixed several problems with ending naval combats. For instance, if all of one side’s naval units in the sea area were aborted/destroyed then the program was not proceeding to the next task of processing the naval abort queue.
Steve

Perfection is an elusive goal.
Shannon V. OKeets
Posts: 22165
Joined: Wed May 18, 2005 11:51 pm
Location: Honolulu, Hawaii
Contact:

RE: MWIF Monthly Reports

Post by Shannon V. OKeets »

January 5, 2017 Status Report for Matrix Games’ MWIF Forum

Program Development
In late December Version 02.03.00.00 was released as a Public Beta. Rather quickly it was reported that there were substantial problems with that version, so a Hot Patch (version 02.03.01.00) was posted during the last week of December to fix those problems - and a couple dozen other items I had gotten to by then.

The delay in getting a functioning version of NetPlay available for players obviously delayed starting NetPlay games between players and the beta test team - myself included. So, those will start in January. In the interim, the beta testers have found a couple more problems with NetPlay which I want to fix before starting the competition. I’ll make version 02.03.02.00 available as a Hot Patch once I clear the current bug reports concerning NetPlay.

To repeat last month’s paragraphs:

What I would like to do is start NetPlay games with customers versus the beta testers and myself. Those games would be using version 02.03.02.00. If new NetPlay bugs occur during those games, I will be sending out Hot Patches so everyone can continue playing. Having a beta tester or myself involved in each game will help with the process of identifying bugs, generating saved games for reproducing and fixing them, and modifying saved games (if necessary) for continuing to play the games.

Once version 02.03.02.00 is available, I’ll start a new thread in the World in Flames forum to set up those games. The beta testers and myself have discussed what those games would look like. For instance, I want to cover several different scenarios and use a variety of optional rules. Obviously the objective here is to put the NetPlay code through a diverse set of game situations to make sure it is free of bugs. If all goes well, there will be an official new MWIF version in February (03.00.00.00).

Bugs
In December, I continued reviewing and working on bugs reported in Tech Support during the last six months of 2016. There are still 3 dozen from that time period on my task list - but for most of those I do not have saved games.

Working on another area of bug reports also took up a lot of my time in December. Those are Mad Except bug reports that get emailed to me automatically when the program fails on a player’s computer. Those are much more difficult to diagnose and correct. They have the Call Stack for which sections of code were executing when the failure occurred, including the exact line of code that failed. Most of them also include a screenshot, which usually provides a lot of information, especially if the Main Form is visible (e.g., phase of the game, deciding major power, game turn, etc.). However, without a saved game and instruction on how to recreate the problem, I am unable to reproduce the problem and have to guess as to what the player was doing/trying to do when the program failed. Roughly half the time I end up putting in a few lines of code to check for nonsense values (which are usually the cause of the program failure) and if any are detected, exit gracefully from whatever the program was trying to do.

The reason fixing emailed bug reports gets some priority from me is that if I don’t fix those problems, then players will encounter them again and again and I’ll keep getting more emailed bug reports for the same problem. That’s pretty strong motivation. But my ability to fix those bugs “for certain” is limited, so I don’t give them super high priority. That distinction goes to bugs reported in Tech Support (or by the beta testers) where I have saved games and instructions on how to reproduce the problem.

Missing Optional Rules & Half Map Scenarios

Nothing new in December .

AI Opponent (AIO)
Nothing new in December.
Steve

Perfection is an elusive goal.
Shannon V. OKeets
Posts: 22165
Joined: Wed May 18, 2005 11:51 pm
Location: Honolulu, Hawaii
Contact:

RE: MWIF Monthly Reports

Post by Shannon V. OKeets »

February 6, 2017 Status Report for Matrix Games’ MWIF Forum

Program Development
In January, version 02.03.04.00 of MWIF was released as a Public Beta. The beta testers received versions 02.03.01.02, 02.03.01.02, 02.03.01.03, 02.03.01.04, and 02.03.04.01 during the month. There was an inconsequential jump in the version numbers from 02.03.01.00 to 02.03.04.00, which was caused by a mistake in numbering 02.03.01.00 as 02.03.03.00 when it was released.

Bugs
During January, I continued reviewing and working on newly reported bugs in Tech Support and/or by the beta testers. I fell behind in keeping up with emailed Mad Except bug reports, but did check up on those that appeared serious. For Mad Excepts I am current up to Christmas, so I have all of January’s to examine in detail.

In my on-going quest to fix older bug reports, last month I hacked and hewed my way through bugs related to naval operations, getting the overall count down from 60+ to less that 30. Most of those remaining are without saved games, so I have trouble understanding whether they are real or not. And even more difficult is trying to reproduce them. Next up on my to do list are bugs related to Peace (Conquest, Liberation, and Surrender), specifically Liberation. Then I’ll work on Production Planning. As a point of reference, I progress through these alphabetically, and after Vichy bugs, I’ll start over again with Action bugs. Of course newly reported bugs can interrupt that sequence, side-tracking me to work on a phase of the game that appears to have a bunch of new problems.

Because I was able to squelch all the reported NetPlay bugs, version 02.03.04.00 was released as NetPlay Ready - or at least ready for serious customer testing. Roughly 6 games are in progress, or about to start. I (playing the Axis) started a Global War game against Zorachus99 on Saturday (February 3rd) and another one (as the Allies) against a different opponent today (February 6th). That’s partially why I am late with this monthly report. I also played through a full Barbarossa Solitaire before beginning those games - just to get myself up-to-speed on land combat tactics. I have played only one game of World in Flames since 1996, and that was Global War via NetPlay, which halted in early 1940.

There were some bugs reported for the newly started NetPlay games (by others) which I need to fix today/tomorrow so all the NetPlay games can keep moving forward.

Missing Optional Rules & Half Map Scenarios
Nothing new in January.

AI Opponent (AIO)
Nothing new in January.
Steve

Perfection is an elusive goal.
Shannon V. OKeets
Posts: 22165
Joined: Wed May 18, 2005 11:51 pm
Location: Honolulu, Hawaii
Contact:

RE: MWIF Monthly Reports

Post by Shannon V. OKeets »

March 1, 2017 Status Report for Matrix Games’ MWIF Forum

Program Development
In February, versions 02.03.05.00, 02.03.06.00, and 02.03.09.00 of MWIF were released as Hot Patches. The beta testers received versions 02.03.05.01, 02.03.06.01, and 02.03.09.01 during the month. While testing NetPlay against customers I created versions 02.03.07.00 and 02.03.08.00 which were used in my personal NetPlay sessions - typically for just one day. They were quickly superceded by 02.03.09.00.

I have provided version 02.04.00.00 to Matrix for release as a Public Beta. Expect it in the first week of March. That version is essentially the same as 02.03.09.00. Without constantly increasing the version numbers, problems can arise. The granularity also helps me when debugging, by letting me identify exactly what version of the code a player is using when he/she runs into a problem.

NetPlay
Depending on how cleanly the on-going NetPlay games run, we should be able to have an official release of NetPlay Ready! in April. In my last 5 NetPlay sessions, spanning ~11 hours, we have not found any NetPlay bugs. We simply play the game - but making frequent saves due to paranoia.

Bugs
In February, I continued reviewing and working on newly reported bugs in Tech Support and/or by the beta testers. Sadly, I am still woefully behind in keeping up with emailed Mad Except bug reports, There are only so many hours in a day and I have been testing NetPlay with customer rather heavily. Combined with bugs reported in other recently started NetPlay games, I was spending most of my time on NetPlay: testing, recording bugs, and fixing code.

Working on are bugs related to Peace (Conquest, Liberation, and Surrender), specifically Liberation, followed by Production Planning is at the top of my dusty task list. But NetPlay bugs take precedence. I also have to get my task list up-to-date (all spiffy-doodle) so I can sleep better at night.

Missing Optional Rules & Half Map Scenarios
Nothing new in February.

AI Opponent (AIO)
Nothing new in February.
Steve

Perfection is an elusive goal.
Shannon V. OKeets
Posts: 22165
Joined: Wed May 18, 2005 11:51 pm
Location: Honolulu, Hawaii
Contact:

RE: MWIF Monthly Reports

Post by Shannon V. OKeets »

April 3, 2017 Status Report for Matrix Games’ MWIF Forum

Program Development
In early March, version 02.04.01.00 was released as a Public Beta. The original version number had been 02.04.00.00 but there was one significant bug in that version, so it never saw the light of day. During the month heavy NetPlay testing revealed a serious problem with building new convoys and pilots (see below) so version 02.04.02.00 was made available as a Hot Patch to keep NetPlay testing ongoing. Sadly, fixing the NetPlay bug messed up production gearing limits in Solitaire and Head-to-head play, so the next day, version 02.04.03.00 was posted as a replacement Hot Patch. That version had but one change from the previous version - it fixed the gearing limits for Solitaire and Head-to-head play.

Only version 02.04.03.01 was made available specifically for the beta testers, and that wasn’t until April 2nd. Justifiably so, they complained about this neglect to me.

NetPlay
Continuing my efforts from February, I spent almost 20 hours in March playing two NetPlay games against different opponents. We hit a number of minor snags along the way and I now have 22 NetPlay specific bugs to fix. Of those, 14 are from my games and 8 are from the beta testers’ games. For all of these I have saved games available to recreate the problems. So, the time I spent actually playing MWIF was worthwhile from a program development perspective. But I must confess, I really like playing the game. Now if those pesky bugs would just go away ...

The most serious NetPlay bug was in Production. From the very beginning, I designed NetPlay so both players could do Production simultaneously - a major time savings given that both players need to be on-line for NetPlay. About a year ago I found a problem with the code for saving oil and build points. Both of those actions require the program to create new units that are then placed on the map. Creating a new unit means assigning it the Next Unit Number. But if both players are assigning unit numbers simultaneously, then there is a distinct likelihood that different units will be assigned the same number.

The result is that when one player consumed an on-map oil point, it could result in a different oil point being removed on the other computer. The code change I made was for oil and build points to be recorded during the Production phase as “to be built” and once both players have completed Production, one computer creates all the necessary new units and tells the other computer what unit numbers have been assigned.

This same problem came up in March for pilots, convoys, forts, new factories, and offensive chits. Building any of those ‘unit’ types requires the program to create a new unit and assign a new unit number. Now in reality, most of those units never actually appear on the map. But they do show up in the Production Pools and the same problem happens as had occurred for oil and build points. It took me a long time to figure out what was going wrong, mainly because the units looked correct on each computer, but the Production Pools on the two computers didn’t match. Even more baffling was that the problem wasn’t visible until several turns after the units had been built and it was time to place them on the map, or update counts (e.g., pilots, offensive chits). All in all, it took me a solid week of effort to get all that functioning correctly (but the changes temporarily screwed up the Gearing for Solitaire and Head-to-head play).

I am less optimistic about how soon we will have an official release of NetPlay Ready! Partly that is due to the bugs on my task list, partly it is due to the Solitaire/Head-to-head players clamoring for attention to their hot button bugs, and lastly it is partly due to me traveling to Philadelphia for a week in April for my fifth annual checkup at Wills Eye Hospital on my eye surgery .

Bugs
Because I was spending so much time on NetPlay: testing, recording bugs, and fixing code, players who had complaints about the code for Solitaire and Head-to-head play became more vocal. So, in the last week of March I started devoting time solely to those bugs. So far I have cleaned up the important Conquest bugs, which leaves the rest of the Peace bugs (i.e., Liberation and Surrender), to be followed by Production Planning bugs.

Before working on my old task list of those bugs, I brought my spreadsheet of bugs reported in Tech Support up-to-date and tackled all the items reported since January first. Of those I have knocked the count down to 1 Land Combat bug that I want to fix before turning my attention to the Peace and Production Planning bugs. As is always the case, fixing newly reported bugs means that I found instances already on my task list of the same problem reported earlier. It isn’t always obvious that the reports are for the same bug. Most of the time I only become aware of the duplication after I have fixed one of them.

The immediate goal is to give the beta testers another new version so they can run some tests on my recent changes. After a week, we’ll then release a Public Beta, and a week later, we’ll make an official Update for the game. That should all happen in April.

Then I’ll go back to working on NetPlay bugs for roughly a month.

Missing Optional Rules & Half Map Scenarios
Nothing new in March.

AI Opponent (AIO)
Nothing new in March.
Steve

Perfection is an elusive goal.
Shannon V. OKeets
Posts: 22165
Joined: Wed May 18, 2005 11:51 pm
Location: Honolulu, Hawaii
Contact:

RE: MWIF Monthly Reports

Post by Shannon V. OKeets »

May 2, 2017 Status Report for Matrix Games’ MWIF Forum

Program Development

April was a short month for working on MWIF since I was traveling to/from or in Philadelphia for 8 days. The good news is that after my fifth annual checkup at Wills Eye Hospital on my eye surgery, they deemed it unnecessary for me make any more annual pilgrimages to see them.

Because of all the changes I was making in Production Planning routines, I was unable to get a functional version of the program out to the beta testers before I left for Philadelphia. While I made progress on those bugs once I got back, there was never a ‘clean’ version for the beta testers until the one I uploaded for them today. That was version 02.04.04.06. There are two more bugs in Production Planning that I want to fix before releasing a Public Beta. The beta testers will have a week to 10 days to work on that version, so the Public Beta should be out around mid-May. If the Public Beta survives without new and/or fatal bugs, we’ll make it an official Update to the game.

Bugs
The bugs I fixed in April were all for Solitaire/Head-to-head and fall into three categories: Peace (Conquest/Liberation), Production Planning, and “other Solitaire bugs”. There were 17 fixes for problems related to Peace, 7 for Production Planning, and 12 other fixes. Here are the more important Production Planning corrections, which took most of my time in April:

- Rewrote the code for routing resources overseas so it always finds a path using the minimum number of convoys. Previously it would sometimes take a circuitous route.

- Fixed a problem with Production Planning when a resource (e.g., a build point originating from Washington D.C.) would add an extra sea area to the beginning of a route because the hex of origination was a coastal hex. Usually starting the overseas route with the adjacent sea area is best but sometimes a shorter overseas route can be found by moving along rail lines to a different port.

- Fixed a problem with Production Planning with choosing which convoys to use in a sea area so that the priority is: (1) receiving country’s convoy, (2) sending country’s convoy, and (3) convoy belonging to another major power on the same side that will permit its convoys to be used. Previously, the USA (while neutral) shipping resources to China, would oftentimes usurp a Commonwealth convoy - ignoring its own convoy in the sea area. Now the USA uses its own convoys first (since China never has any convoys).

- Added code for the Production Planning form’s Route List to show which major power’s convoy is being used in each sea area in the route. For example, when the United States ships the Alaska resource to the lower 48 states to be saved or used in production, the sea area in the Route List is shown as: “USA Gulf of Alaska”. Previously it had simply displayed “Gulf of Alaska” without specifying which major power’s convoy in the sea area was being used. This is especially useful when the Allies have convoys belonging to multiple major powers in a sea area and resources/build points are being shipped through the sea area. Note that this is merely a cosmetic change to provide more information to the players. Older saved games are missing the requisite data and may show Germany as providing a convoy - that gets corrected when a new overseas route is determined.

The items I denote as ‘fixes’ above are the results that are visible to players. I made many other changes to the Production Planning routines that fall under the rubric ‘tidiness’. When I started work on MWIF, the code I inherited for routing resources was mostly functional, so I primarily make improvement patches. Over the last few weeks, I took the time to review and standardize how the code accomplishes the various tasks it needs to perform to make Production Planning execute correctly. After my changes, I better understand what is going on - I added more comments, renamed variables and routines, and in general organized the code so it flows more logically.

I did make some changes that are purely cosmetic, but in retrospect, they should have been part of my original redesign. Below is a composite picture of two screen shots. The big one demonstrates that the Pools form can be expanded horizontally. That has been around for years, but players might not have noticed. What is new in the Pools form is the gearing limits table that appears when the Force Pools are selected from the list in the lower left corner. Reading the Commonwealth gearing limits for the current turn lets the player know that the Commonwealth built 3 Infantry, 1 Ship, 1 Submarine, 2 Air, and 2 Pilots in the previous turn. This is very useful information when playing Head-to-head or NetPlay.

The second screenshot is of the Production Planning form Route layout with a resource selected. The modification is that the overseas portion of the route now shows which major power is providing the convoy in each sea area. Frequently the Allied major powers are using each other’s convoys to route resources overseas. This additional information should help clarify what is happening.

NetPlay
Nothing new in April aside from a couple more bugs I discovered while playing my two on-going games against Finn and Justin.

I should be able to get back to NetPlay bugs in May and hopefully clean them up by the end of the month.

Missing Optional Rules & Half Map Scenarios

Nothing new in April.

AI Opponent (AIO)
Nothing new in April.

---------------------



Image
Attachments
StatusRep..y22017.jpg
StatusRep..y22017.jpg (2 MiB) Viewed 15641 times
Steve

Perfection is an elusive goal.
Shannon V. OKeets
Posts: 22165
Joined: Wed May 18, 2005 11:51 pm
Location: Honolulu, Hawaii
Contact:

RE: MWIF Monthly Reports

Post by Shannon V. OKeets »

June 5, 2017 Status Report for Matrix Games’ MWIF Forum

Program Development
I thought the Public Beta version 02.05.01.00 would have been released by now. I submitted it early last week and on Thursday approved the executable to be posted in the Members Section of World in Flames. But as of today, Monday, it hasn’t been announced. The plan following the Public Beta is unchanged: if it survives without new and/or fatal bugs, we’ll make it an Official Update to the game.

Bugs
I am keeping a low profile to making changes to the code, less I introduce new bugs and delay the Official Update. So, for the last two weeks I have mostly been catching up with processing emailed bugs reports I’ve received since March 1st. There were 140+ in that queue and I have it down to under 40 presently.

Because many of them are old, I remove a bunch from my task list that have already been fixed. Of the remainder, easily 3/4ths are duplicates. The ones I make code changes for are primarily those that I can’t figure out. What? Yes, the previous sentence is correct.

Emailed bugs reports tell me which line of code caused the failure but don’t give me very much in the way of context: phase of the game, what the player was trying to do, etcetera. But for those that don’t appear to be caused by serious damage to data values, I can insert a few lines of code to get the program to exit whatever it was trying to do and return a reasonable value to the calling routine. For instance, if the program fails trying to validate a list of hexes in a previously saved supply path, I simply have the routine exit without an error message and return that the old path is invalid. Then the program searches for a new supply path.

In the Release Notes you will often find references to “added a check to avoid an error”, or words to that effect. Those are code changes for cases where an inexplicable error occurred but I can check for the fatal condition in advance of executing the invalid line of code, and return a reasonable value to the calling program. None of these have any effect of the execution of the rest of the code, so they are fairly ‘safe’ code changes.

Obviously I’ve also investigated the bug reports from the beta testers for the various versions I gave them prior to version 02.05.01.00. Several critical problems were found by them and I patched the code to fix those bugs. Hence there was an ongoing renumbering of versions as I fixed bugs and submitted new versions for the beta testers to pound on.

NetPlay
As should be obvious from the above paragraphs, I have left NetPlay bugs mostly untouched, aside from a couple “easy to fix” ones I ran into while playing my on-going games against Finn and Justin.

I won’t get back to seriously working on NetPlay bugs until the Public Beta emerges from it’s caterpillar state into an Official Update butterfly.

Missing Optional Rules & Half Map Scenarios

Nothing new in May.

AI Opponent (AIO)
Nothing new in May.

All the playing experience I am getting against Finn and Justin will help me write the scripts for the AIO. I’m just hoping that these hundreds of decisions I make as a player can be reduced into discrete modules without an enormous amount of effort. For example, many factors go into choosing whether to use air units for ground strikes or ground support while simultaneously deciding how many air missions to allocate to ground strikes versus air rebases. Then there is the question of which hexes should be ground struck and by which bombers - to say nothing of fighter escorts.
Steve

Perfection is an elusive goal.
Shannon V. OKeets
Posts: 22165
Joined: Wed May 18, 2005 11:51 pm
Location: Honolulu, Hawaii
Contact:

RE: MWIF Monthly Reports

Post by Shannon V. OKeets »

July 2, 2017 Status Report for Matrix Games’ MWIF Forum

Program Development
Version 2.5.1.0 was released as a Public Beta early in June. Almost immediately it was obvious that it had at least one serious problem, so I posted a Hot Patch within a couple of days of the Public Beta being available. The Hot Patch was version 2.5.2.0. The beta testers got a comparable version with the Debug capability enabled: version 2.5.2.1.

Bugs
A dozen bug reports or so have been posted and/or emailed to me for the versions 2.5.2.0 and 2.5.2.1. Some of those are duplicates and I believe some of them are because version 2.5.1.0 may have generated damaged saved games. I’ll be working my way through investigating those bug reports.

But first I brought my task list up-to-date with emailed bug reports (caused using a wide variety of MWIF versions) and from disparate posts from beta testers over the past couple of months. Lastly, I am in the process of bringing my spreadsheet on Tech Support posts up-to-date.

Getting everything organized before starting on diligently trying to recreate the reported bugs is crucial for my state of mind. There is a lot of overlap between the three sources of bug reports (emailed, Tech Support, Beta Testers). So arranging them all by “phase of the game” let’s me identify redundancies. Nonetheless, I have already fixed a couple of the reported bugs with the 2.5.2.x versions that had obvious causes and I deemed both critical and easy-to-fix.

NetPlay

I have mostly organized the bug reports for NetPlay. There are a dozen or more and I have saved games from both players for the majority of them. While I would dearly love to clean them all up ASAP, I am forcing myself to ignore them until the Public Beta’s Solitaire play is as clean as possible. Irritatingly, that will take at least one more Public Beta given what is being reported for the versions 2.5.2.x.

I have started a third NetPlay game with S playing the Allied side in Global War. S is in Australia. I want to avoid some of the terrible mistakes as the Axis I made in my game against Zorachus99.

We spent a couple of hours trying to get S logged into the Private NetPlay Forum/Server, without success: “Unable to access the Seeking Opponents Database”. But it turned out that that didn’t matter. Apparently he was able to log in okay, but his user name simply didn’t appear in the list of logged in players. That meant when I started the new game, my computer was unable to ‘find’ him on the list of players logged into the NetPlay Server. However, when he initiated the new game, his computer was able to find my user name in the list of players logged into the server, and the game started normally. That was very bizarre and mind-blowing for me.

S has a Help Request into Slitherine/Matrix that is unlikely to get processed until next week. It would be nice if a rational explanation could be found for what happened. I couldn’t see anything in the MWIF code - so I suspect the problem is with the Slitherine Server code or its database. [Note that I have been proven wrong about this kind of conclusion previously in my like - often.]

Missing Optional Rules & Half Map Scenarios

Nothing new in June.

AI Opponent (AIO)
Nothing new in June.
Steve

Perfection is an elusive goal.
Shannon V. OKeets
Posts: 22165
Joined: Wed May 18, 2005 11:51 pm
Location: Honolulu, Hawaii
Contact:

RE: MWIF Monthly Reports

Post by Shannon V. OKeets »

Just a short note.

For the past 3 weeks I have been working on Production Planning exclusively, reading through the 14,000+ lines of code line by line and running the debugger so I can see the values for all the variables as the code executes. That's very time consuming but it was the only way I could identify exactly what was going wrong.

Yesterday I got Modifying Routes to work correctly and today I was able to get Changing the Action (e.g., save/produce/idle) and Destination of the resources to work.

I need to do some more testing to make sure there aren't any (obvious) lingering bugs. If the code looks all right, I'll post a Hot Patch version (and send a comparable version to the Beta Testers).

I'll do a longer status report tomorrow.
Steve

Perfection is an elusive goal.
Shannon V. OKeets
Posts: 22165
Joined: Wed May 18, 2005 11:51 pm
Location: Honolulu, Hawaii
Contact:

RE: MWIF Monthly Reports

Post by Shannon V. OKeets »

August 8, 2017 Status Report for Matrix Games’ MWIF Forum

Program Development
The only version released in July was 02.05.02.05 which was made available to the beta testers in early July. Today (August 8th), I posted version 02.05.05.00 as a Hot Patch, and uploaded to the Development Forum its companion version, 02.05.05.01 with Debug enabled, for the beta testers. Both of these versions solve most of the problems reported with Production Planning: routing resources to destinations and specifying their actions (Production, Save, Idle). The skip in version numbers is because I made some new versions while alpha testing code modifications.

Bugs
To start, my task list was spiffy doodle at the beginning of July, but by the end of the month it had once again fallen woefully out-of-date. Sadly, debugging code, keeping records, and even simply communicating with people seem to be mutually exclusive for me. In July I was almost exclusively working on Production Planning bugs.

Finding the last couple of bugs in Production Planning was very painful. I had to go through the code line by line (14,000+ lines) while running the Delphi debugger so I could track what the values were for the variables as the code executed. Even then it took me over a month to figure out what was going wrong. The last major hurdle was identifying that an End statement was misplaced. Pascal encapsulates blocks of code with Begin ... End. Where the problem occurred the Begin ... End blocks were nested 7 deep and one of the End statements was off by 7 lines. Moving it up 7 lines in the code fixed a whole slew of problems. None of that time spent was any fun and the final victory seemed more Pyrrhic than anything else.

But along the way I found a bunch of minor things to improve in Production Planning, so there were side benefits to spending all that time and effort on one phase of the game.

NetPlay
Nothing much new here. My opponenet in my third Global War game, S, reported that Slitherine/Matrix straightened out the problem he had logging into the Private NetPlay Server.

I am continuing to play 3 games (against different opponents) using NetPlay. There are bugs that we have to work around - including me using Debug tools and even fixing occasional bugs in the code to enable us to keep the games going. Typically we have 1 playing session per week of about 3-4 hours. Regrettably, outside commitments usually cause one of my three opponents to miss a week. So the games are slow going.

Missing Optional Rules & Half Map Scenarios
Nothing new in July.

AI Opponent (AIO)
Peter S. has begun work on setups for China. He looked at a couple of ways of randomizing them without having the program choose positions that would be immediately disastrous. Because the Japanese always set up after the Chinese have placed their units on the map, it is difficult to decide exactly where the Chinese should go. Complicating the problem is that there is so much territory to control. To prevent the Japanese from slipping through the lines to vital rear areas, the Chinese need a semblance of a front line. Of course there are never enough units to accomplish that task well. So the decisions are based around what sections of the front line to leave weak.

After thinking about this for a while, my decision was for Peter (and I) to come up with about 10 potential setups. Now because which units are drawn is random, no setup will be precisely the same each time you play the game. In addition, we will most likely give some setups a high probability of being used (the stronger ones), and others (the poorest) a low probability of being selected. Overall, the goal here is to give a reasonable setup for the Chinese while providing the human opponent with some variation as to how he has to place and move the Japanese to crack the Chinese position.

That task is mostly in Peter’s hands. I’m just providing feedback. But I was motivated enough to make some more edits to the TER data file, labeling each hex as to which Land Region it occupies (there are 70,200 hexes in the game). Land Regions are how the AIO will make operational decisions about deploying its units. I had already done the entire European map. This past month I completed the Mideast. Editing the data file is quite mindless and was a good break from endlessly reading through the Production Planning code.
Steve

Perfection is an elusive goal.
Shannon V. OKeets
Posts: 22165
Joined: Wed May 18, 2005 11:51 pm
Location: Honolulu, Hawaii
Contact:

RE: MWIF Monthly Reports

Post by Shannon V. OKeets »

September 4, 2017 Status Report for Matrix Games’ MWIF Forum

Program Development
I almost had this monthly report ready on September 1st but there was a bug I had just created that was removing the second carrier air unit from carriers whenever a saved game was restored. Fixing that took me 3 days. Eventually had version 02.05.05.07 ready to upload for beta testing. Although I had posted in the forum that I would make that version available as a Hot Patch, the problem with the carrier air units made me nervous about inflicting it directly onto customers. Instead I am giving the beta testers some time to put it through its paces. Unless they discover more problems, it should be available as a Hot Patch next week as version 02.05.06.00.

The beta testers received version 02.05.05.02, .02.05.05.03, and the aforementioned 02.05.05.7 in August (actually the last was uploaded today).

Bugs
The main corrections I made to the code the last week of August were to fix one bug in Supply and one bug in Production Planning. Those were the only semi-serious bugs remaining in those phases of the game and I wanted to fix them for version 2.5.5.7 for beta testing.

My task list was current going into the fourth week of August but I have let it slide this past week while I worked on investigating and fixing bugs, That is my normal routine: get the task list up-to-date, and then devote some time looking into all the new bugs reports. Along the way I typically cast an eye over a couple of dozen or so older bugs to see if they still exist. Basically I buff and polish my task list, and then buff and polish the code. Repeat endlessly.

NetPlay
Last week I caved in and fixed some bugs in NetPlay, but only those which affected very few lines of code. For instance, converting Greenland and Iceland to minor countries when Denmark is conquered was only happening on the Allied computer in NetPlay games. I also checked out a couple more reported NetPlay bugs and proved, through testing, that they no longer exist (because of earlier changes to the code for Solitaire and Head-to-head play). I’m still holding back to making any serious changes to the code to fix NetPlay-specific bugs.

Missing Optional Rules & Half Map Scenarios
Nothing new in August.

AI Opponent (AIO)
Nothing new in August.
Steve

Perfection is an elusive goal.
Shannon V. OKeets
Posts: 22165
Joined: Wed May 18, 2005 11:51 pm
Location: Honolulu, Hawaii
Contact:

RE: MWIF Monthly Reports

Post by Shannon V. OKeets »

October 8, 2017 Status Report for Matrix Games’ MWIF Forum

Program Development
I continue to make only minor changes to the code in the hope that I will be able to create a Public Beta, which will become an Official Update version.

That said, I gave the beta testers versions 2.5.5.7, 2.5.5.9, and 2.5.5.11 in September. They keep finding small problems. The same can be said about the emailed bug reports I receive, and the Tech Support problems that have been posted. However, the latest version received at least one “I wouldn’t make this available to the customers because of new bugs” comment from a beta tester. So I am holding off on a Hot Patch and a Public Beta until I can figure out what new grief I have caused myself. Most likely it is old grief/bug come back to haunt me for my various sins.

My chorus had their annual show yesterday and for the 3 weeks prior to that there were a lot of rehearsals and stuff. The day of the show itself was exhausting (12 hours all told). It took me most of today just to get back to feeling normal. Hence the long delay for this monthly report.

Bugs
I need to fix the major problem found by the beta testers (having to do with the interception of overrun naval units that then have to fight a naval combat and abort). The program has trouble getting back to the phase of the game where the overrun occurred. Which could be land movement, advance after combat, conquest, etc. Internally there are 3 nested digressions: overrun, interception, naval abort. Afer each the program needs to return to what was happening immediately prior to the digression. Many possibilities exist and the code for this was difficult to write and even more difficult to debug.

My task lists are mostly up-to-date. I just need to work on eliminating items one by one.

On a similar front, I did spend time early in September going through my master task list for old (prior to 2017) emailed bug reports. That effort removed 50+ items from my task list. Most of them had already had been fixed. Others I cast aside were very old (prior to 2016) with no one else reporting the same problem since the original bug report.

NetPlay
I’m still holding back to making any serious changes to the code to fix NetPlay-specific bugs. However, using Save and Restore when necessary, plus some Debug features on rare occasions, Scott and I were able to play continuously for 9 and half hours two Fridays ago and 8 and a half hours this past Friday. We are up to the start of May/June 1941 in a Global War game that started 3 months ago. We play once a week, but usually for only ~4 hours.

Missing Optional Rules & Half Map Scenarios
Nothing new in September.

AI Opponent (AIO)
Nothing new in September.
Steve

Perfection is an elusive goal.
Shannon V. OKeets
Posts: 22165
Joined: Wed May 18, 2005 11:51 pm
Location: Honolulu, Hawaii
Contact:

RE: MWIF Monthly Reports

Post by Shannon V. OKeets »

November 2, 2017 Status Report for Matrix Games’ MWIF Forum

Program Development

I made only minor changes to the code in October and was able to release a new Public Beta: 02.06.01.00.

On an even happier note, that version (with a few inconsequential changes) has become version 02.07.00.00, which was made into an Official Update executable. Currently the executable is undergoing testing by the beta testers and myself. Unless something catastrophic happens, it should be available before Thanksgiving (i.e., 3rd week of November).

I gave the beta testers versions 2.5.7.1 and 2.5.7.5 in October. They found things for me to fix. The player community also had access to the Hot Patch versions 2.5.7.0, 2.5.7.2, and 2.5.7.4. They also found things for me to fix. But in the end, the result of all that joint feedback enabled me to generate versions for the new public beta and the subsequent official update.

For your enjoyment, attached is a screenshot of the change I made to the Pools form. The addition is a second checkbox when viewing Force Pools. It lets you chose to see just the next year’s additions, as well as the old choice of seeing all future additions to the force pool. This wasn’t in 2.6.1.0, but is in 2.7.0.0. [Note my tessellation for no Yugoslavian partisans (except on unattached islands).]

Bugs
My task list is completely up-to-date. Sadly, the list is still rather daunting to look at. I’ll be going over it yet again to identify things that deserve to be corrected prior to my assault on the NetPlay bugs. In between making code changes to fix important Solitaire & Head-to-head bugs and working on NetPlay, I’ll upgrade my copy of Delphi.

Delphi is the compiler/interactive development environment (IDE) I use to make changes to the code. It’s been over a year since I installed a new update. I think there are two presently pending. Making changes to the IDE requires me to achieve a zen like state of mind before starting down the long and winding path of uncertainly and confusion that is typical for upgrading Delphi. At least this time I won’t be upgrading the operating system simultaneously. The forlorn hope when upgrading is that Delphi will run better than it did previously. That’s very unlikely. The bugs I find in the IDE never seem to be addressed. Instead the programmers work on new features for databases and Internet applications (e.g., generating and processing HTML files). None of those are used in MWIF.

NetPlay
I’m still holding back to making any serious changes to the code to fix NetPlay-specific bugs. But I am assembling all the notes on bugs and saved games to accompany them.

Missing Optional Rules & Half Map Scenarios
Nothing new in October.

AI Opponent (AIO)
Nothing new in October.

Image
Attachments
Yugoslavia..selation.jpg
Yugoslavia..selation.jpg (1.37 MiB) Viewed 15615 times
Steve

Perfection is an elusive goal.
Post Reply

Return to “World in Flames”