LinuxConsulting

- Nicu Pavel personal page

OpenPanzer Turn Based Strategy Game



OpenPanzer is a hex and turn based strategy game, a remake of good old Panzer General 2.
Game is playable in Chrome, FireFox, Opera, Safari. iOS 5+ and Android 2.3+ browsers are also supported.
For more information regarding the development of openpanzer please see the README file.
Discussion about this project takes place on Panzer Central forum or at GitHub Repository.
All graphics and sounds are taken from OpenIcons project . UI icons and splash images had been designed by Luca Iulian.


Currently iOS, Android, Chrome and FireFoxOS native builds are available.



Changelog:
v2.9
Highlights:

- Added Soviet "The Great Patriotic War (1942-45)" with 20 scenarios that starts from breaking out
of Stalingrad encirclement and finishes with Battle for Berlin. Campaign portraits
5th Guards Tank Army throughout major operations of the Eastern Front.
Finishing this campaign awards Hero of the Soviet Union Medal achievement

- Added German "Das Reich (1939-45)" with 32 scenarios that starts with East Prussia operations and finishes
with last battle of the division in Vienna. Campaign portraits the Das Reich divisions throughout major
operations in western and eastern fronts.
Finishing this campaign awards Knight's Cross with Oak Leaves and Swords achievement.

- Reduced the difficulty of "Fall Weiss" campaign by reducing experience of some polish regiments.

- Engineer type units can now bridge over the rivers/streams allowing other units to cross the river (depends on enemy zone of control)
- Added unit leaders which grant special attributes to the unit. Leaders are granted randomly from a table of accepted unit class leaders every time experience passed a multiple of 100.
- Added leader abilities and their impact on game engine
- Resupplying units also automatically resupplies their transport
- Added dice rolls for combat losses/kills to have a more realistic random combat.
- Added unit RETREAT and SURRENDER. Depending on losses units can retreat, if retreat is not possible then unit surrenders
- Added tank OVERRUN. Tanks can now completely destroy low strength/experienced units and continue moving and attacking. The movement is reduced after Overrun.
- Added Rugged Defense. Highly entrenched and experienced units will defend strongly against attacks.
- Added Attack BrokeDown/Stopped in case where supporting artillery fire reduces attacking unit strength below a threshold.
- Added button on New Campaign menu to show the campaign flow.
- Added 1000 more units to Equipment (late 1944-1945)
- Added unit attack initiator restrictions. Not all units can initiate an attack against certain target types but can return fire (ex: air defense vs tank)
- Allow unit to re-embark after disembark if player doesn't move it.
- Added better indicators for unit leaders, core vs auxiliary, unit can fire, unit no ammo left.
- Redesigned combat/map alerts for better visibility
- Better UI for scenario selection. Now scenarios are grouped by the campaigns they belong to.
- Improved equipment upgrade/purchase interface. Fixed some invalid upgrade penalties costs.
- Winning a scenario with Brilliant Victory now awards a prototype unit to player.
- Added Game Map scaling separate from UI scale.
- Make deployment hexes more visible by adding a special icon on them

- Fix an issue that could lead to AI turn being played twice in a row.
- Fix exploit where player could reselect a unit that was disembarked to gain full movements points
- Fixed some invalid transport weights for artillery pieces which resulted on wrong transports being used for really heavy artillery pieces.
- Fix Campaign Save Game loading an invalid game state

v2.8
Highlights:
- Added End of Turn Combat Report, that tracks everything that happens in a turn
- UI improvements
- UI fixes for full retina mode
- Fix blur on UI scale
- Fix annoying scrolling issues
- Better compatibility with older devices like iPhone 3GS
- Make AI more aggressive, AI will still play defensive but will try to push the front line away from objectives.
- Make it playable on retina iPhone without forcing to full resolution
- Added achievements and medals for finishing the campaigns
- Added 2000 starting prestige for stand alone scenarios as most of them are designed for campaign play
- Added 700 starting prestige to Fall Weiss campaign
- Add end of turn automatic resupply for units that didn't perform actions and are in city/airport
- Reinforcing a unit also resupplies the unit automatically
- Added confirmation for End Turn to prevent accidental tap
- Air mode button now can also deselect currently selected air unit
- Add attack penalty for anti-tank units that moved in the same turn

v2.7 (complete changes)

Highlights:
- Added score reporting facility
- Show unit stats while on carrier instead of carrier stats by default
- Fix target cursor render refresh on touchscreen devices
- Added a basic scripted AI tutorial
- Allow unit upgrades that cost the same ammount if units are different
- Don't try to smooth unit images on zoom changes
- Show scenario info on game load and on first turn
- Cosmetic UI changes

v2.6 (complete changes)

Highlights:
- Complete vectorial, scalable and resizable UI (now you can have different zoom levels for map and ui)
- Initial unit strength read from scenario data
- Added Disk Save/Load beside the automatic turn save
- Added Cloud Save/Load that will store/retrieve the game state from cloud based on an ID
- Added scenario and campaign scoring
- Fixed some rendering issues
- Fixed some game logic issues

v2.5.1 Bug fix release
- Fixed issue where objectives didn't change flags when captured
- Fixed iOS retina resolution
- No longer able to show hidden units stats by rightclicking on map hexes.

v2.5 (complete changes)

Highlights:
- New campaigns
- New equipment based on adlerkorps ~3000 units
- New tutorial scenario
- Reinforcements now work
- UI improvements
- AI now actually tries to do something
- Better performance by using Google Closure Compiler

Game Content:
-Added campaign "Big Red One" US campaign by Dennis Felling
-Added campaign "Fall Weiss [8 Armee]" by Santiago Fuertes
-Added new tutorial scenario "Battle of Minorca" by me based on Boqueron map by Santiago Fuertes
-Added OpenPanzer Equipment based on Adlerkorps equipment but with SSI original images removed
-Added icons for Adlerkorps equipment from OpenGeneral OpenIcons project
-Removed remaining SSI original images

Game Engine:
-Added support for reinforcements
-Fix issues with hex spotting code
-Mounting/Unmounting units now also change spotted hexes depending on transport/unit spot range
-Deploying on ocean hexes now automatically embarks ground units
-Added default AI for tutorial scenario when player start a fresh game
-Fixed wrong campaign lose condition when AI actually wins
-Use groundweight to match units that can be transported

Game Rules:
-Fixed combat experience formula. It was applying only for attacker attacking without the defender attacking.
-Fix prestige gains being incorrectly substracted on a undo move that had no prestige gains
-Air units can now resupply/reinforce if directly above a naval carrier
-Check if defender has range to return fire

Render:
-Removed 1 extra frame from animation sprites
-Cache images of the units that are deployed as reinforcements
-Attack animations are now cleared with composite destination-out operation instead of clearRect
-Don't show explosion multiple times if a unit has been destroyed during attack by multiple attackers

UI:
-Changed layout of unit info screen by removing the scope graphic. Prepare space for unit leader info.
-Make moved units text color lighter
-Fix big naval icons what won't display correctly in equipment unit list
-Better alert texts for reinforcements and resupply actions
-Return correct values for reinforcement, when player doesn't have enough prestige for a full possible reinforcement
-Only show fuel/ammo in red when below 25%
-Allow changing of unit class when buying units. Also check unit upgrade to be from the same class before displaying costs
-Allow scrolling in message window for long scenario texts
-Add visual alert when reinforcements are deployed on map
-Fixed scrolling jumping when selecting a transport for a selected unit.
-Only do automatic resize on non-touch devices for now. This should fix issues with select being autoclosed on Samsung 4 browser
-Fixed All terrain/Mountain movement method sounds
-Make equipment sorting stable when keys value are equal
-Add visual indication for unit reinforce
-Don't show resupply/reinforce buttons if player doesn't have enough prestige
-Don't show/play sound for AI moves that aren't spotted
-Better equipment window layout to accomodate longer names from Adlerkorps equipment

AI:
-Make VH defending units less eager to attack
-Allow capture of an objective if the defending unit was destroyed by another unit and current unit had low attack/move score
-Don't try to attack units that might be already killed
-Added AI move and attack action
-Added AI move actions
-AI should be less tempted to capture an unspotted VH
-Add mount/unmount actions

v2.4 (complete changes)
Game Interface:
 - Touch devices: Show terrain info on status bar and show terrain icons automatically on hex grid
 - Fix canvas centering issues when zooming on iOS. Force maximum-scale to max value that doesn't have performance issues
 - Add onresize event to automatically enlarge layers when user zooms page
 - Allow retina like resolution on iOS and Android.
 - Workaround for android 4.x clearRect issues.
 - Added option to mute unit combat sounds
 - Style scrollbars in webkit
 - Add option to show terrain icons when displaying hex grid.
 - Add weather/ground condition as tooltip too.
 - Added ground and weather conditions icons on status bar.
 - Make equipment sort/options buttons toggle when pressed.
 - Added option to sort the equipment units by unit stats
 - Mark enemy units on map makes unit strength box red
 - Transports for embark/disembark are now cached if player has available transports and looked up dynamically at embark.

Game Rules
 - Movement now takes ground conditions into account.
 - Added tables for frozen and mud movement, terrain entrenchment and initiative cap
 - Fixed bug where only airTransports where decreased on embark.

v2.3 (complete changes)
Game Interface:
 - Show turn info when statusbar is clicked.
 - Add date, weather and ground information to turn info.
 - Automatically bring up deployment window between scenarios when player has undeployed core units.
 - Show Air/Naval transport when user hovers over a airfield/port.
 - Make deployment window automatically select first unit when opened and after a unit was deployed so user doesn't have to click to select each time.
 - Units in equipment window are now sorted by cost.
 - Restrict equipment updates by year available and expired depending on scenario date
 - Changed unit loss info animation font style
 - Replace country names with flags when showing attack info. Removed content opacity on status bar.
 - Add status bar info when equipment window or undeployed units window are open.
 - Add info on equipment window about currently selected unit class
 - Restyled campaign select dialog
 - Mark core units with different font
 - Changing countries in equipment window remembers last unit class selection
 - Fix tactical map wrong offsets on mouse over now hovering over hexes when zoomed shows correct units/locations.
 - Clicking on tactical map will zoom out and center on the hex clicked.
 - Don't show attack cursor in tactical map

Game Flow:
 - Scenario date now increases considering turns per day value from scenarios.
 - Force memory garbage collector between scenario loads.
 - Add sorting and indexing to equipment functions.
 - Add by country equipment files to reduce memory usage and lookup times
 - Scenarios and campaigns can now end in brilian, tactical or victory outcomes. Added turns left for each type of victory in end turn message.
 - Added scenarios with updated atmosferic, latitude, date, turns per day, ground information
 - Implement supporting countries (minor countries). Can choose a minor country in equipment window.
 - Use prestigePerTurn read from scenario file. Starting prestige is taken from prestigePerTurn
 - Fix undo move not restoring captured hex properties.

Rendering:
 - Don't blow units before the animation of attack finishes.
 - Fix issue where flags on map were being scaled down because of the width difference.
 - Fixed WestNorthWest fire animation wrong direction.
 - Attack cursors now use unit flag instead of player flag

Game Rules:
 - Implemented embark/disembark from/to airTransports/navalTransports
 - Don't allow planes to attack on adjacent hexes but only on hex below if target is not another aircraft and range is 1
 - Allow naval units to fire back to an attacking naval unit
 - Added combat initiative to attack values.
 - Only allow capturing if the move ends in selected destination objective.

v2.2 (complete changes)
Game Flow:
	- Added campaign mode with Briliant, Victory, Tactical, Lose outcome conditions.
	- Campaign progress based on outcome type.
	- Added core units for player that will be preserved between campaign scenarios along with gained prestige.
	- Core units can be upgraded before deployed at the start of the scenario (HQ mode emulation)

Game Interface:
	- Added New Campaign layout for selecting a campaign.
	- Unit info dialog will show if it's a core unit.
	- Show saved settings correctly.

Equipment Interface:
	- Make core units visually different from the rest of the units in equipment window (green background)
	- AI units are no longer shown in Equipment View if left open during AI turn.
	- Add native iOS momentum scrolling to equipment windows

Rendering:
	- Implemented partial rendering. Instead of entire screen being redrawn on unit actions (like showing movement/attack hexes etc),
	  only the dirty rectangle in unit range is rendered. This should improve performance on low end tablets.

GameRules:
	- Remove scenario units when scenario is played in a campaign.

Game State:
	- Save campaign progress and core units with the stats gained thru scenario.
	- Reloading the page will bring you to last played turn (like autosave).
	- Starting a New Scenario resets campaign progress and viceversa.

Game Files
	- Added converted campaigns from original Panzer General 2 campaigns

Tools:
	- Added tool to convert from Panzer General 2 campaign files to OpenPanzer JSON.


v2.1 (complete changes) Game Interface: - Added a start menu for players to choose scenario and side that they want to play and rendering options. - Hide the annoying touch highlight in Android - Status bar now lists roads and combat information - Fix scrolling issues on serveral Android versions - Startup splashes and icons for iOS/Android builds - Bringing up unit information window now automatically shows info for the current selected unit - Force map background properties and focus map canvas by default for scrolling Equipment Interface: - Don't allow restricted units (like ships) to be bought from equipment window - Show unit instead of transport when mounted on equipment window and status bar Rendering: - Rendering calls now happen based on unit actions rather than on user actions - Improved full map rendering speed - Fixed attack animation partial canvas clear - Units will render based on local player visibility (no longer show AI/remote turns) - Unit movement is now rendered with sprites rather than direct canvas drawing - Optional translate3d for sprite animations. GameRules: - Surprised units won't dismount when attacked - Infantry dismounts when attacked. - Fix wrong normalisation of fuel used by units travelling thru ZOC AI: - Added basic AI actions and AI action queue processing Game Flow: - Added defeat conditions based on maximum turns for victory. Tools: - Map converter now exports maximum turns for victory, players and scenario description. v2.0 (complete changes) Interface: - Completely redesigned interface to better suit touch devices and replace all original PG2 assets - Unit actions like mount to transport, resupply, reinforce, undo move now appear on a contextual menu that pops only when an option is available. - Main menu moved to the left and displays only 3 buttons by default, the extra buttons like show hexes, air mode, strategic map slide when user click the extra menu button. - Redesigned unit info dialog to show all unit properties in a single row, and added extra information. - Redesigned unit equipment dialog and added popup to select transport if a unit can be transported. - Scrolling fixes for current unit list and equipment list - Selecting units on map centers them in current unit list - Selecting units on current unit list centers them on screen. - Show fuel, ammo in red if they fall below a certain limit in unit info dialog. - Equipment unit class selection buttons stay selected. - Make top status bar useful for touch devices. - Equipment window now display costs for buying or upgrading units. Buy/Upgrade buttons are only shown when it's possible to buy or upgrade. - Unit info dialog now has a button to show it's transport properties. Transport properties has a button to show mounted unit properties. - Zooming game area no longer zooms the UI - Added a popup when a unit is surprised. - After a unit has attacked, allowed movement hexes are refreshed (in case that defending unit is destroyed) - Added pixel fonts for unit strength display and combat prediction. - Make unit strenght box shrink with the number on it. - Render visually different the strength boxes from units on the same side but different players. - Added option to visually mark player units (blue hex) Rendering: - Implemented viewport for better performance. - Game now support playing at a different zoom level (emulate original PG2 resolution) Game Rules: - Added close combat rules - Implemented most of the combat rules from original PG2 (thanks to Luis Guzman for help) - Unit movement range can go over hidden enemy units which will lead to unit being surprised and automatically attacked. - Surprised units have attack and defence values reduced. - Fixed units on a bridge considered as being on river terrain. - Implemented recon/phased movement - Implemented Undo Move for units that didn't spot hidden units or have attacked. - Fuel is now reduced with the cost of traversing terrain instead of number of hexes passed. - Air defense now can fire on airplane on top of it. - Only certain unit can capture objectives. - Combat prediction is now calculated with spotted support fire. - Added cost calculation and upgrade penalty for units. v1.9 - Units now gain combat experience based on PG2 formula - Fixed animation order when units are destroyed - Added prestige mechanism to players - Upgrading units now cost prestige - Reinforcing units now cost prestige - Capturing objectives and secondary objectives now grants prestige - Show deployment hexes if user has undeployed units when opening equipment window - Added ability to buy new units and deploy them in scenario defined deployment hexes - Game now allow more than 2 players to take turns - Equipment units from different countries are available to players if countries are on same side - Center map on selected unit when selected from equipment window - Implemented a callback when unit combat animation ends to show players combat results - Fixed combat prediction target graphic for touch devices - Removed duplicate redraws in rendering engine for performance gains v1.8 - Shortest path for unit move - Unit move animation - Fixed unit orientation issues on certain directions - Selecting a unit in equipment window selects it on the map too. - Improved mapconvert tools - Added movement sounds by movement type - Added combat sounds by unit class - Only units that are in spot range of player units are shown (spotting and zoc rules implemented) - Support Fire units are automatically spotted when firing for the turn duration - Added more combat rules from PG2 (experience, hits, entrenchment) - Rendering speed improvement - Reduced memory usage - When playing on touch-enabled devices, combat prediction cursor is rendered above units that are attackable v1.7 - Support fire implemented - Fixed OpenGen icons that didn't match original PG2 content - Fixed missing North orientation for unit graphics (thanks to Luis new release of SHPTool) - Added animation chains for combat - Added animation depending on unit class (atm only 3: small-guns (infantery, air, etc), guns (tanks, artillery etc), and explosion (units destroyed)) - Animation now rotates correctly depending on the facing of units ( OpenPanzer use only N oriented animation sprites and rotates sprite accordingly) - Fixed certain issues on air/ground mode mouse selection - Strategic map now only shows air or ground units depending on air mode button selection - Flags for units that moved are rendered with opacity on strategic map - Changing air/ground mode also changes the rendering order of the units that overlap - Strategic Map, Show HexGrid buttons are handled as toggle buttons. - Rewritten icon converter to perform all operation in a single run (read equipment icons list, replace invalid OpenGeneral->PG2 icons, convert to transparent PNG, run PNG optimiser) v1.6 - Air/Ground mode now works. - Right/Left click outside selection now clears selected unit - It's no longer needed to reselect the unit after moving to attack - Selecting units on map from equipment window now also selects them on map - Each turn starts with a unit selected v1.5 - supply/reinforcement rules - unit upgrades