My apologies for not posting anything recently and for not releasing weekly builds, but I have become well stuck-in to my new job, and my available development time has dwindled down to next to nothing. I have done a little bit of work, however, including planning out the crew system in detail.
Right now the player tank will have a crew randomly generated for it, but my plan is to allow the player to choose from a roster of possible crew members, each with slightly different starting stats. The total stats of all potential crewmembers will be equal, so it’s up to the player to choose either a balanced team or one that emphasizes one particular area. I’m going to try to focus on the player tank and crew from here on, and put allied units aside for the moment so that this core element is (hopefully) done right.
I’ve fixed a few elements of the battlegroup building menu, and have also added a small interface to input the player character’s name. This function will also be used to change crew names as well.
Next step is crew selection.
No unit type description yet, since it hasn’t been added to the data anyway, but it’s now possible to select from a list of unit types. Next step is actually adding them to the battlegroup list and making sure that it stays organized.
This is a mockup in REXPaint of the unit selection menu, with German units from September 1939 shown. I decided to separate the battlegroup building menu and the unit selection menu, both because it made more sense from a design standpoint, and so that this menu could be used in other contexts elsewhere in the game. This list includes all the vehicle units that will be available to German battlegroups in Sept. 1939. Operation Point (OP) costs are tentative and will be changed for balance in the future.
It doesn’t look like much, but I’ve started to add the battlegroup building menu into the game, working from my initial REXPaint mock-up. Progress has been slower than I had expected because when I got to this stage I realized that the way in which I was storing data about units and unit types was very inefficient and would have caused problems further down the road. So I took some time and converted my clunky XML -> variables and dictionary system into a pure JSON and dictionary system. This makes it much easier to add stats to units later on and to access and organize information about unit types as is needed in this menu.
Weekly Windows build is now available, changelog follows:
– added a new debug flag: disable enemy AI (for testing)
– changed saved game compatibility so that first two numbers in version determine compatible saves (in the future, updates that do not break saved game compatibility will increment third number in version)
– added sound effect for 37mm gun firing
– fixed bug relating to when an enemy unit targeted by the player moves and the target indicator stays behind
– added additional modifiers for assault combat
I’ve started adding the campaign selection menu into the game. At first the player will only be able to play a single scenario given these settings, but in the future a campaign will consist of many scenarios linked together, over which your crew will accumulate experience, skills, and injuries. Also seemed like a good time to start adding Polish forces as playable units.
I’ve packaged up a new weekly build and have uploaded it to the usual location. There’s a lot of new stuff and changes this week since I’ve been doing research work over the past while and have only had short chunks of time now and again to do development work.
I’ve only done a bit of testing on the more recent features such as assaults and sound effects, so if you run into any unexpected behavior please do report it. Full changelog follows:
Changelog for September 1 2017 Build
– Note: contents of config file have been changed and a new config file is included;
you may need to change settings back to how you prefer them
– added a message log window opened with ‘M’
– fixed a bug whereby turret-mounted weapons were not being marked and handled properly
– added the ammo type to the text of the Fire command for guns
– added a different highlight colour for armour penetration roll display console
– changed turn length to one minute on the game clock
– fixed pathfinding function to work with unit movement
– added squadron leader system for friendly AI units
– added a short pause after displaying a message without a unit highlight
– if player unit moves and gets an extra move action, cannot use weapons in that
– fixed a crash when an enemy dummy unit is spotted and removed during its pre-activation phase
– changed certain to-hit penalties: no penalty for having moved last turn; -4 for having
moved this turn: will only apply in assaults; -1 per hex edge change for turret
rotation (max 3); -2 for hull pivot (max 6); these only affect first attack, not RoF
– changed firepower attack penalty: 1/2 firepower if moved: will only apply in assaults
– added a message describing the outcome of an AP hit resolution if not being displayed
on the screen
– recovery check from negative statuses now occurs post- rather than pre-activation
– added a menu option to manage ammo in ready rack; any movement into or out of means that weapon cannot maintain RoF that turn
– fixed an invisible but potentially annoying bug relating to the Next Weapon command in weapon menus
– added a simple display of scenario name and time remaining in the scenario menu
– pathfinding function for AI units now checks to see if movement along possible paths is
possible for that unit, checking impassible hexes, units occupied by enemies, etc.
– fixed a bug where an attack animation would not be drawn to the current location of a unit
– added a message for the result of an attack when not involving the player
– added ability to cycle top unit in hex unit stack by hovering over hex with cursor and
moving mouse wheel
– target of attack will automatically be moved to top of its map hex unit stack at start
– added assaults, for now AI units won’t initiate assaults but will counterattack if assaulted
– added small arms weapons to gun crews
– changed to semantic versioning; loading a saved game will check compatibility properly
– also added a warning for pre-alpha versions that will likely not be backwards compatible
– command menu is now hidden when AI units are active
– basic sound effects have been added with more to come
List of current known bugs:
– message display when a target is spotted after a hit interrupts the attack console display
– Polish 75mm AA gun should not have an AP round (unit has been removed from game for now)
– bug where enemies outside of LoS can attack player is still happening?
– player’s target LoS is being displayed during the LoS animation for third-party attacks
– turret counts as rotating when hull pivoted: will fix in future by checking facing relative to hull
I’ve uploaded my current working version to the GitHub repository, with many of the new additions and changes planned for the next weekly build included. I’ve added a sound effect system with one in-game effect implement so far, with more to come. No guarantee that this version will be crash-free: there’s lots that has been changed and I haven’t tested everything fully yet. But it’s uploaded for anyone who wants to give it a go!
No progress update today (although there has been a fair bit of progress – assaults are coming!) instead I’d like to link two tank-related stories that happened 100 and 75 years ago this week:
During the Battle of Passchendaele, the British Mark IV tank “Fray Bentos” became stranded and its crew held out for 72 hours before escaping to friendly lines.
The Dieppe Raid on August 19, 1942 landed 29 Churchill Tanks on the beach from the 2nd Canadian Infantry Division, all of which were lost in the battle. Stan Edwards, who fought in the raid, recalls his experience.