[BLD] v2.6.00.1045 (GM3)(mod) beta build

Closed beta forum - only for users who have taken part in one of the FoG Beta tests.

Moderators: Slitherine Core, FoG PC Moderator, NewRoSoft

Post Reply
cothyso
NewRoSoft
NewRoSoft
Posts: 1213
Joined: Tue Sep 13, 2005 7:32 pm

[BLD] v2.6.00.1045 (GM3)(mod) beta build

Post by cothyso »

note: temporary build thread, until the original build thread can be edited

Gentlemen,

The new FoG(U) v2.6.00.1045 (GM3)(mod) beta build:

http://www.x-2.info/FoG/builds/beta/FoG ... _(Win).rar

Code: Select all

		=> FoG(U) 1045 revision
			+ Unity engine update to v5.6.0f3
			+++ Unity engine upgrade from Unity5 v5.6.0f3 to Unity2017 v2017.1.0f3
				- // [!!!][130] - Unity2017 port
				++ ported Unity5 deprecated accessors and methods to Unity2017 methods
				+++ re-coded the whole asset bundles create/download/unpack/load/management code due to the new Unity2017 asset bundle format and usage
					++ rebuilt all asset bundles
				+++ re-coded all UnityEngine.WWW usage to UnityEngine.Networking.UnityWebRequest
				+++ re-coded all System.Net.Webclient usage to UnityEngine.Networking.UnityWebRequest (WIP)
			- increased app's minor version from 2.5.02 to 2.6.00 (due to the porting on Unity2017 engine, and to significant modifications in several code systems (GPM, debug, MP game automation, MP DAG games, MP misc data format, AppTask usage, menu code flow, asset bundles, download assets, MP communications))
			+++ [WIP] further modified, streamlined and optimized the whole GPM actions code (1)
				- G class
					- replaced the old BGStateAction enum with the ActionType enum
				- GP class
					- added the new CombatImpactAction() method
					- modified the AnarchyCharge() and AdjacentFBGAnarchyCharge() methods
					- modified all the G._GPM.GPMAMAdd() calls
					- split the old ChargeOutcome() into the new ChargeOutcome() and PursuitOutcome() methods
					- CombatImpactAction() ?!!
				+++ GPM class
					+++ further modified, streamlined and optimized the whole class
				+++ Hex class
					+++ further modified, streamlined and optimized the whole class (.BGs, .BGsAdd, .BGsRemove, .noBGs, .empty, .BG)
			++ added the new debug replay watch code
				++ Replay class
					- added the new dbg_watchGameState, dbg_loadTurn, dbg_loadPhase, dbg_watchEvents and dbg_eventWatchList members
					- modified the Awake() method adding the new debug replay watch code section
					- modified the ReplayEventPlay() method adding the new debug replay watch code section
				- MainMenu class
					- modified the DataLoadSPGameLoad() method adding code to load a debug watched game state for a specific turn, phase
			+ MainMenu class
				+ modified the OnGUIDrawWindowPreferencesDelegate() method adding advanced tab settings
				- further modified, streamlined and optimized the DataLoadMPGameLoad() method
			- GP class
				- added the new def_GUIGameStateVisualIndicators member
				- further modified, streamlined and optimized the bgGetHexTerrainTypeName() method
				- added the new hGetHexTerrainTypeName() method
				- replaced the old S.DeploymentCampFootprintGet() method with the new BGCampHexListGet() method overload
				- added the new DistanceHexesRingGet() and DistanceHexesCircleGet() methods
				- further optimized the .bgCheckCanPassThroughEnemyZOC() method
			- GM class
				- modified the OnGUI() method mouse-over BG info panel group's code adding an over empty hexes terrain type label
				- modified the OnGUI() method game state visual indicator's code adding a GP.def_GUIGameStateVisualIndicators check
				- modified the GameTurnPhaseStart() method to reset all closer to enemy than 5 hexes BGs double movement to 0
			- Battlegroup class
				- added the new .CheckIfDoubleSized() method
			- FoGAI class
				- modified the .dbgmAI() method to inserting a message for AI finishing its turn phase actions, and moving the turn phase end message after the turn phase end's joint phase was finished
			++ further modified the FoG PBEM challenge's and game in progress' misc data formats
				- G class
					- increased the .gdFVChallengeMiscData from 1.01 to 1.02
					- increased the .gdFVGIPMiscData from 1.01 to 1.02
				- added the new MPChannelType enum
				- added the new MPDataType enum
				- Multiplayer class
					- added the new .def_Channel and .def_ChannelsList members
				- Challenge class
					- replaced the old .gameID int member with the new .channel MPChannelType member
					- changed .dataType member's type from int into MPDataType
				- GameInProgress class
					- replaced the old .gameID int member with the new .channel MPChannelType member
					- changed .dataType member's type from int into MPDataType
			+ MP game automation code added
				- added the new GMState enum
				- GM class
					- replaced the old obsolete .gsInactive, .gsDeployment, .gsReplay, .gsPlay, .gsPause, .gsEnd with the new GMState values
					- changed the .gs member's type from int into the new GMState enum
				- FoGAI class
					- added the new .def_DBG_MPAIForced member
					- modified the .aiAIPlayersInit() method adding code forcing human to AI players in MP games
					- modified the .dbgmAI() method to account for playing in MP games (in order to have the AI player de-initializing itself at the end of its turn phase)
				- FoGInit class
					- modified the .AwakeAsync_() method to also initialize the newly added FoGAI.def_DBG_MPAIForced member
			++ modified the old AIType enum into the new AIDifficulty enum and added the new AIType enum
				- G class
					- added the new .playerAIDifficulty member and modified the old .playerAIType member
				- FoGPlayer class
					- added the new .pAIDifficulty member and modified the old .pAIType member
				- FoGAI class
					- modified the .aiAIPlayersInit(), .aiAIPlayersDeInit() and .dbgAIPlayersForce() methods
				- MainMenu class
					- modified the .OnGUI_SPDAGNew() method  adding the new .rectSide1AIDifficultyLabel, .rectSide1AIDifficultyText, .rectSide2AIDifficultyLabel and .rectSide2AIDifficultyText members
					- modified the .OnGUI_MPChallengesMine_NewDAG() method adding the new .rectSide1AIDifficultyLabel, .rectSide1AIDifficultyText, .rectSide2AIDifficultyLabel and .rectSide2AIDifficultyText vars
					- modified the .DataLoadSPGameNewScenario(), .DataLoadSPGameNewDAG() and .DataLoadEditorScenario() methods
				- DebugPanel class
					- modified the .OnGUI_Player() method
				 - Challenge class
				 	- modified the .MiscDataParse(), .MiscDataGenerate() and .MiscDataGenerateGIP() methods
				 - GameInProgress class
				 	- modified the .MiscDataParse() and .MiscDataGenerate() methods
				++ further modified the FoG game save format
					- G class
						- increased the .gdFVGameSave from 1.02 to 1.03
					- R class
						- modified the .GameStateFileDataGenerate() and .loadGameStateOrder() methods
						- modified the .LegacyScenarioLoad() method
						- modified the .DATA_GameStateLoad(), .DATA_GameStateLoad_v100(), .DATA_GameStateLoad_v101(), .DATA_GameStateLoad_v102() and .DATA_GameStateLoad_v103() methods
						- modified the .DATA_GameStateGenerate(), .DATA_GameStateGenerate_v101(), .DATA_GameStateGenerate_v102() and .DATA_GameStateGenerate_v103() methods
					- DataTools class
						- modified the .MENU_DATA_ScenariosFullConvertA(), .MENU_DATA_ScenariosFullConvert() and .MENU_DATA_GameStateConvert() methods
			- added new main menu preferences experimental tab
				- Localisation class
					- added the new .stringExperimental member
					- modified the .GetStringsFromDictionary() method to load the new .stringExperimental member
				- G class
					- added the new .def_DBG_GUIPreferencesExperimentalON member
					- modified the .PrefsUserSettingsSave() and .PrefsUserSettingsLoad() methods to account for the new .def_DBG_GUIPreferencesExperimentalON vars
				- MainMenu class
					- modified the .OnGUIDrawWindowPreferencesDelegate() and .Update() methods to account for the new G.def_DBG_GUIPreferencesExperimentalON member
			++ added debug advanced AI and online AI support code
				- Localisation class
					- added the new .stringChannel member
					- modified the .GetStringsFromDictionary() method to load the new .stringChannel member
				- G class
					- modified the .PrefsUserSettingsSave() and .PrefsUserSettingsLoad() methods to account for the new FoGAI.def_DBG_AdvancedAION and Multiplayer.def_DBG_OnlineAION members
				- FoGAI class
					- added the new .def_DBG_AdvancedAION member
				- Multiplayer class
					- added the new .def_DBG_OnlineAION member
				- MainMenu class
					- modified the .OnGUIDrawWindowPreferencesDelegate() method to account for the new FoGAI.def_DBG_AdvancedAION and Multiplayer.def_DBG_OnlineAION members
					- modified the .OnGUI_MPChallengesMine() method to account for the new Multiplayer.def_DBG_OnlineAION member
				- Multiplayer class
					- modified the .ChallengeListDataParse() and .GameInProgressListDataParse() methods to account for the new Multiplayer.def_DBG_OnlineAION member
			+++ massive menu flow code overhaul
				- renamed the old MainMenuScreen enum into the new FoGScreenType enum
				+++ added the new FoGScreen class
				- added the new FoGScreenState and FoGScreenMode enums
				- added the new FoGScreen_Set, FoGScreen_Switch, FoGScreen_Select and FoGScreenLeave delegates
				- MainMenu class
					- removed the old obsolete .buttonGameStartPressed
					- modified the old G.MainMenuLoad() method into the new .Load() method
					- modified the .InitVars() method
					+++ added the all the new .<screen_name>_ScreenSet(), .<screen_name>_ScreenSwitch() and .<screen_name>_ScreenSelect() methods
					- modified the old .SPGUISideContentReload() method into the new .SPGameNewScenario_ScreenSelect() method
					- modified the old .MPGUISideContentReload() method into the new .MPChallengeIssueNewScenario_ScreenSelect() method
					++ further modified, streamlined and optimized the .DrawScenariosWithFiltersAndSort(), .DrawMapsWithFiltersAndSort(), .DrawArmiesWithFiltersAndSort(), .DrawDAGArmiesWithFiltersAndSort(), .DrawDAGArmyListEnemy(), .DrawBooks() and .DrawGameSaves() methods
					- added the new initAssetListBooks() method and modified the .initAssetsListsAsync() and .initAssetsLists() methods to use it
					- added the new .areaDAGGameLayoutNewON member and modified all its related code (initialization with G.def_GUISPNewDAGGameComplexLayout and .def_GUIMPNewDAGGameComplexLayout, etc.)
					- modified the .OnGUI_SPDAGNew() and .OnGUI_MPChallengesMine_NewDAG() methods adding proper MainMenu class Rect members replacing the old local variables created during each GUI frame
				++ implemented scenario map use and map tileset change mechanics for both SP and MP DAG games
					- Challenge class
						- added the new .fMapScenarioUse and .fMapTileSetChange members
					- GameInProgress class
						- added the new .fMapScenarioUse and .fMapTileSetChange members
					- DebugPanel class
						- modified the .OnGUI_Challenge() and .OnGUI_GIP() methods adding code for the newly added Challenge and GameInProgress .fMapScenarioUse and .fMapTileSetChange members
				+ implemented scenario game state start ignore and DAG game assymetrical balance game flags for both SP and MP DAG games
					- Challenge class
						- added the new .fGameStateStartIgnore and .fAsymmetricalBalance members
					- GameInProgress class
						- added the new .fGameStateStartIgnore and .fAsymmetricalBalance members
					- DebugPanel class
						- modified the .OnGUI_Challenge() and .OnGUI_GIP() methods adding code for the newly added Challenge and GameInProgress .fGameStateStartIgnore and .fGameStateStartIgnore members
				- Multiplayer class
					+ added the new .ChallengesListUpdate() method and replaced all direct .PBEM_ChallengesListDownload() calls through all the code
					+ added the new .GIPsListUpdate() method and replaced all direct .PBEM_GIPsListDownload() calls through all the code
				++ modified all DAG selection members' types from ints into enums
					- G class
						+ replaced the .gdDAGBookSTypeAny, .gdDAGBookSTypeRandom and .gdDAGBookSTypeChosen obsolete members with the new DAGBookSelectionType enum
						- modified the .sDAGBookType member's type from int into the new DAGBookSelectionType enum
						+ replaced the .gdDAGArmySTypeAny, .gdDAGArmySTypeRandomand .gdDAGArmySTypeChosen obsolete members with the new DAGArmyListSelectionType enum
						- modified the .sDAGEArmyType member's type from int into the new DAGArmyListSelectionType enum
						+ replaced the .gdDAGMapSTypeAny, .gdDAGMapSTypeRandomList, .gdDAGMapSTypeRandom and .gdDAGMapSTypeChosen obsolete members with the new DAGMapSelectionType enum
						- modified the .sDAGMapType member's type from int into the new DAGMapSelectionType enum
						+ replaced the .gdDAGMapDensitySTypeWeightedRandom, .gdDAGMapDensitySTypeHighest and .gdDAGMapDensitySTypeChosen obsolete members with the new DAGMapDensitySelectionType enum
						- modified the .sDAGMapDensitySelectionType member's type from int into the new DAGMapDensitySelectionType enum
					- Challenge class
						+ modified the .fDAGBookType member's type from int into the new DAGBookSelectionType enum
						+ modified the .fDAGArmyType member's type from int into the new DAGArmyListSelectionType enum
						+ modified the .fDAGMapType member's type from int into the new DAGMapSelectionType enum
						+ modified the .fDAGMapDensitySelectionType member's type from int into the new DAGMapDensitySelectionType enum
					- GameInprogress class
						+ modified the .fDAGBookType member's type from int into the new DAGBookSelectionType enum
						+ modified the .fDAGArmyType member's type from int into the new DAGArmyListSelectionType enum
						+ modified the .fDAGMapType member's type from int into the new DAGMapSelectionType enum
						+ modified the .fDAGMapDensitySelectionType member's type from int into the new DAGMapDensitySelectionType enum
				++ DAG class
					- removed the old obsolete .DrawDAGFilters() method and modified the .OnDAGLoadArmy() and .() methods moving the filters repopulating and drawing into the .DrawDAGArmyList() method (using the new MainMenu.FiltersDAGArmiesUpdate() method)
					- removed the obsolete .ResetFilters() method
				+++ modified all menu filters
					- ListScenarioInfo class
						- replaced all the old filter int members with the new FilterScenario enum
						- modified the .Filter() and .FilterValuesGet() methods to use the newly added FilterScenario enum
						- replaced all the old sort int members with the new SortScenario enum
						- modified the .Sort() method to use the newly added SortScenario enum
					- ListMapInfo class
						- replaced all the old filter int members with the new FilterMap enum
						- modified the .Filter() and .FilterValuesGet() methods to use the newly added FilterMap enum
						- replaced all the old sort int members with the new SortMap enum
						- modified the .Sort() method to use the newly added SortMap enum
					- ListArmyListInfo class
						- replaced all the old filter int members with the new FilterArmy enum
						- modified the .Filter() and .FilterValuesGet() methods to use the newly added FilterArmy enum
						- replaced all the old sort int members with the new SortArmy enum
						- modified the .Sort() method to use the newly added SortArmy enum
					- ListDAGArmyListInfo class
						- replaced all the old filter int members with the new FilterDAGArmy enum
						- modified the .Filter() and .FilterValuesGet() methods to use the newly added FilterDAGArmy enum
						- replaced all the old sort int members with the new SortDAGArmy enum
						- modified the .Sort() method to use the newly added SortDAGArmy enum
					- ListDAGArmyTemplateInfo class
						- replaced all the old filter int members with the new FilterDAGArmyTemplate enum
						- modified the .Filter() method to use the newly added FilterDAGArmyTemplate enum
						- replaced all the old sort int members with the new SortDAGArmyTemplate enum
						- modified the .Sort() method to use the newly added SortDAGArmyTemplate enum
					- ListFoGBooks class
						- replaced all the old filter int members with the new FilterBook enum
						- modified the .Filter() and .FilterValuesGet() methods to use the newly added FilterBook enum
						- replaced all the old sort int members with the new SortBook enum
						- modified the .Sort() method to use the newly added SortBook enum
					- ListGameSaveInfo class
						- replaced all the old sort int members with the new SortGameSave enum
						- modified the .Sort() method to use the newly added SortGameSave enum
					- Multiplayer class
						- replaced all the old filter int members with the new FilterMPGame enum
						- replaced all the old sort int members with the new SortMPGame enum
					- ChallengeExtensions class
						- modified the .Filter() and .FilterValuesGet() methods to use the newly added FilterMPGame enum
						- modified the .Sort() method to use the newly added SortMPGame enum
					- GameInProgressExtensions class
						- modified the .Sort() method to use the newly added SortMPGame enum
					- MainMenu class
						- removed the obsolete .FilterContentToFilterScenario() and replaced it with the new P.scenarioFilter0Filters FilterScenario array
						- added the new .FiltersSPScenarioUpdate() method and modified the .DrawScenariosWithFiltersAndSort() to use it
						- removed the obsolete .FilterContentToFilterMap() and replaced it with the new P.mapFilter0Filters FilterMap array
						- added the new .FiltersMapsUpdate() method and modified the .DrawMapsWithFiltersAndSort() method to use it
						- removed the obsolete .FilterContentToFilterArmyList() and replaced it with the new P.armyFilter0Filters FilterArmy array
						- added the new .FiltersArmiesUpdate() method and modified the .DrawArmiesWithFiltersAndSort() method to use it
						- removed the obsolete .FilterContentToFilterDAGArmyList() and replaced it with the new P.DAGArmyFilter0Filters FilterDAGArmy array
						- added the new .FiltersDAGArmiesUpdate() method and modified the .DrawDAGArmiesWithFiltersAndSort() method to use it
				- further modified, streamlined and optimized the extended drawing maps and DAG armies lists code
					- DAG class
						- added the new .listDAGArmiesExtended and .listDAGArmiesExtendedItemsNo members
						- added the new .listDAGMapsExtended and .listDAGMapsExtendedItemsNo members
					- MainMenu class
						- removed the MainMenu.DrawDAGArmyListEnemy() and DAG.DrawDAGArmyList() methods and modified the .DrawArmiesWithFiltersAndSort() to use instead
						- modified the .DrawMapsWithFiltersAndSort() method
				++ added DAG books descriptions and their usage
			++ further modified, streamlined and optimized the info lists sort code
				++ modified the ScenarioInfoExtensions, ArmyListInfoExtensions, MapInfoExtensions, DAGArmyListInfoExtensions, DAGArmyTemplateInfoExtensions, FoGBookExtensions, GameSaveInfoExtensions, ChallengeExtensions and GameInProgressExtensions classes' IComparer classes to order by two parameters (info.name usually used as the secondary sort parameter)
				++ added the new MainMenu .fSortScenarios, .def_sortScenarios_Default, .fSortMaps, .def_sortMaps_Default, .fSortArmies, .def_sortArmies_Default, .fSortDAGArmyTemplates, .def_sortDAGArmyTemplates_Default, .fSortDAGArmies, .def_sortDAGArmies_Default, .fSortChallenges, .def_SortChallenges_Default, .fSortChallengesMine, .def_SortChallengesMine_Default, .fSortGIPsTurnMine, .def_SortGIPsTurnMine_Default, .fSortGIPsTurnOpponent, .def_SortGIPsTurnOpponent_Default, .fSortGIPsEnded and .def_SortGIPsEnded_Default members and their usage through all the code
			+++ further modified, streamlined and optimized the SP and MP DAG games initiative code
				- GameInProgress class
					- aded the new .Init() method
				- Multiplayer class
					- further modified, streamlined and optimized the .InitiativeCompute() method to work for both SP and MP DAG games and removed the obsolete overload method
				- Mainmenu class
					- modified the .OnGUI_SPDAGNew_Button_StartPreps() method to init and call the newly modified Multiplayer.InitiativeCompute() method
					- modified the .OnGUI_SPDAGNew_Button_StartPreps() and .OnGUI_SPDAGNew_Button_Map() methods to call the .MapsListCompute() method using the proper map density and map tileset ID parameters when setting/starting a new SP DAG game
				- GM class
					- modified the .DAGScenarioGIPDataInject() method to work for both SP and MP DAG games
			+ FoGBuild class
				+ further modified, streamlined and optimized the whole class
			+++ more debug code
				+++ added the new DBG class
				++ added the new DebugOverlay class and cleaned up all the old obsolete debug overlay code from the G, GM, E, GMOnHex, EOnHex, AM, BGUI and DebugMenu classes
				- moved the old G .DBG_Track() and .DBG_Pause() methods in the new DBG class
				- GP class
					- modified the .bgMAreaShow(), .bgMAreaHide() and MArea.Reset() methods and removed the now obsolete .gpDBGMAreaDisplay2 and .gpDBGMPathDisplay2  members
					- moved the old DBG_BGMAreaShow() and DBG_BGMPathShow() methods in the new DBG .DBG_Display_BGMArea() and DBG_Display_BGMPath() methods
				++ DebugPanel class
					+ further modified, streamlined and optimized the whole class
					- added the new DebugPanelWindow enum
					++ added the new OnGUI_GPM() and OnGUI_GPMActionL() methods
			+ fixes
				- modified the R.LegacyScenarioLoad() method to account for some uncommon legacy scenarios file formats
				- modified the GP.CombatImpact() method adding a in-game check before commencing with the combat impact (as a routed BG might not have any rout action, but be set directly off-game) preventing some rare instances of combat impact with an off-game defender
				- modified the GP.BGCanCharge() method adding a not adjacent condition check to prevent some rare instances of neighbour enemy BGs returned as chargeable
				- modified the GP.bgModeSwitch() method adding code to prevent wrong movement/double movement points computation in the situation in which the unit was already moved from its turn's start hex
				- modified the Actions.Action_Undo_Enabled() method adding a current nation's player null check to prevent crashes in case the player is null
				- modified the Replay.ReplayLoad() and .ParseHexValues() methods' parse code to prevent crashes if conversion failed
				+ modified the R.LoadVersionData(), .EditorUnitTemplatesLoad(), .EditorUnitFormationsLoad(), .FigureLoad() and .ConvertLegacyScenarios() methods' parse code to prevent crashes if conversion failed
				- modified the ListDAGArmyTemplateInfo.DAGArmyTemplateInfo() method's parse code to prevent crashes if conversion failed
				- modified the SevenZipInterface.DecompressLZMAToStringEncoded() method's byte parsing code to prevent crashes if conversion failed
				++ modified the MP DAG games code removing all pre game initialization G.g references to prevent crashes if referenced before G.g was set to the newly initialized MP DAG game
					- modified the S. DeploymentPositionBGCheck(), DeploymentPositionReserve(), DeploymentPositionBGs(), DeploymentPositionBG() and DeploymentPositionCamp() methods by replacing the Map pM with the FoGGame pG parameter
					- modified the S. bgHexReserveCheck(), bgHexReserve(), bgHexReserveClean(), bgPlace(), bgHexEnter() and bgHexLeave() methods by adding the new FoGGame pG parameter
					- modified the GPM. GPMAMAdd(), GPMAction(), GPMActionStart(), GPMActionEnd(), GPMActionMove(), GPMMoveStart(), GPMMoveUpdate(), GPMMoveEnd(), GPMActionAnarchyCharge(), GPMActionCharge(), GPMActionEvade(), GPMActionRout(), GPMActionPursuit(), GPMActionBreakOff(), GPMActionCombatImpact(), GPMActionCombatMelee() and GPMActionCombatRanged() methods by adding the new FoGGame pG parameter
					- modified the GameClasses DBG_ErrorCheck_GPMActionStart(), DBG_ErrorCheck_GPMActionEnd(), DBG_ErrorCheck_BGHexToReserve(), DBG_ErrorCheck_BGHexReserved(), DBG_ErrorCheck_BGsHexes(), DBG_ErrorCheck_BGHexes() and DBG_ErrorCheck_BGHex() by adding the new FoGGame pG parameter
				+++ modified the MP DAG games code to correctly generate misc data for DAG army lists containing enabled ally nation(s) to prevent crashes if such list(s) were used
					- increased the G.gdFVDAGArmyList from 1.01 to 1.02
					- modified the DAG.DAGE_DAGArmyListSave() method
					- added the new DAGArmy.NationsNoGet() method
					- added the new DAGArmyListInfo.nNo member
					- modified the DAGArmyListInfo .DAGArmyListInfo() and Update() methods to initialize the newly added .nNo member
					- increased the G.gdFVListDAGArmyLists from 1.01 to 1.02
					- modified the ListDAGArmyListInfo .LoadFromList(), .LoadFromFiles() and .ListGenerate() methods to initialize the newly added DAGArmyListInfo.nNo member					
					- added the new DATA_DAGArmyList.nNo member
					- modified the DATA_DAGArmyList .DATA_DAGArmyList() method to initialize the newly added .nNo member
					- modified the R .DATA_DAGArmyListLoad_v100() and the .DATA_DAGArmyListLoad_v101() methods to initialize the newly added DATA_DAGArmyList.nNo member
					- added the new R .DATA_DAGArmyListLoad_v102() and .DATA_DAGArmyListGenerate_v102() methods and modified the .DATA_DAGArmyListLoad() and .DATA_DAGArmyListGenerate() methods to use them
					- modified the R.DATA_DAGArmyListLoad() method replacing the wrong DATA_ArmyListVersionGet() with the correct DATA_DAGArmyListVersionGet() call
					- modified the DataTools .MENU_DATA_DAGArmyListsConvert() to convert the DAG army lists from v1.01 to v1.02
					+ converted all starter armies DAG army lists from the old v1.01 to the new v1.02 and rebuilt the w_starter_armies.unity3d bundle
					- modified the MainMenu .DataLoadMPGameNewDAG(), .DataLoadMPGameNewDAG(), .DataLoadMPGameAccept(), .GIPSetupArmy() and .OnSelectDAGEArmyGUI() methods to account for a dynamic number of present nations
					- modified the Challenge.MiscDataParse() and GameInProgress.MiscDataParse() methods to account for a dynamic number of present nations (only add allied nations in the nations order list if the MP game's .sNCM is NationsControlMode.Separate)
				- modified MainMenu.Init() method's reset of the DAG.DAGArmyFilter1 and DAG.DAGArmyFilter1Prev values preventing a crash when returning directly in new DAG game menu from within a finished DAG game
				- modified MainMenu.GIPSetupMap() method's initiative lost code section adding GIPs list refresh code preventing initiative lost accepted challenges appearing as wrong turn GIPs
				- moved the changing screen code from MainMenu.GIPSetupMap() and MainMenu.OnSelectDAGMapGUI() into a general changing screen code in the MainMenu.GIPSetupEnd() method preventing the situation in which the user remaining in the enemy army selection screen after selecting his army in some rare cases
				+++ further modified, streamlined and optimized the whole class the whole AppTask class and application tasks usages through all the code preventing potential task hangups or incorrect task result assesment situations (Multiplayer calss PBEM callbacks methods were actually not running in Unity's main thread as they should, but rather in their own paralel separate threads causing potential concurency problems)
					- added task timeouts
					++ replaced all task .state == AppTaskState.Finished checks with task .result = AppTaskResult.OK ones
					++ replaced all obsolete .state<> (stateClientVersionCheck, etc) AppTaskState members references with their task's .result AppTaskResult members
					- modified MainMenu.OnGUI_MainMenu_Button_Multiplayer() adding authenticating error messages in case of serials info or client version check errors
				++ modified the MP DAG games code to correctly generate GIP and then game .sO and .nO lists to prevent cases in which the side/nation play order was wrong (only one deployment turn phase, etc)
					- added the new GM.DAGScenarioGIPDataInject() method
				- modified the GM.GameInit() method's code to correctly pack the MP game start state replay point as a MP game save file pack, preventing MP game saves .gsm.pck actually containing a .gsv.pck file pack (and incorrectly added to the game save list)
				- modified the game load code in R.loadGameStateValues() and MainMenu.DataLoadMPGameLoad() methods to avoid over-riding the scenario info's .name for MP games
				- modified the GP.bgMAreaCompute() method to account for hexes occupied by friendly BGs while having adjacent enemy BGs at the same time preventing hexes to be both marked as pass/burst through and charge
				- modified the GP.bgMAreaCompute() method to account for breaking-off BGs being able to pass through enemy ZOCs
				- modified the Multiplayer.InitiativeCompute() method to account for int/int = int problem, preventing the computed map density being always MAPDensity.VeryOpen and the computed map tileset ID always being the last valid tileset ID
				- modified the MainMenu .OnGUI_SPDAGNew() and .OnGUI_MPChallengesMine_NewDAG() methods' delete army code section to properly delete the selected DAG army list, preventing only the DAG enemy army screen delete army code actually deleting the currently selected friendly army
				- modified the MiniMap.GenerateViewVerts() method preventing crashes when the map view is moved before minimap initialization
				+ modified the info lookup code to use info instancies instead info lists indexes, preventing crashes resulted when loading game data based on wrongly identified info (info lists indexes pointing to different infos than the one saved in info dictionaries) when the used lookup method was set as info dictionary based
					- modified the MainMenu .dictLSM, .dictLMM and .dictLAM and DAG .dictLDAGATM and .dictLDAGAM dictionaries to store info instancies values rather than info list indexes values
					- modified the MainMenu .LookupScenarioInfo(), .LookupMapInfo() and .LookupArmyListInfo() methods
				- modified the MainMenu.OnGUI_GameLoad() method preventing loading game saves during the deployment turn which would lead to crashes
				- modified the MainMenu.OnGUI_MPChallengesMine_NewDAG_Button_Post() method preventing the randomization of a picked DAG army list
				- modified the MainMenu.OnGUI_SPDAGNew_Button_StartPreps() method preventing no rolled dice values to be used in SP DAG games' initiative compute code
				- modified the Multiplayer.InitiativeCompute() method preventing a wrong SP/MP DAG sides/nations order to be computed in some occasions
				- modified the MainMenu.DataLoadMPGameAccept() method preventing a crash in MP DAG games with an already chosen enemy army
dan

Copyright © 2017 Slitherine, © 2017 Newrosoft, © 2017 ade
Micha63
1st Lieutenant - Grenadier
1st Lieutenant - Grenadier
Posts: 774
Joined: Mon Jul 11, 2011 8:56 pm
Location: Germany
Contact:

Re: [BLD] v2.6.00.1045 (GM3)(mod) beta build

Post by Micha63 »

Hello, thanks for the new build. Version runs stable on my win 8.1. Looks like the units are a bit sharper now.
Post Reply

Return to “FoG PC Beta”