layagyasz / openpanzerblitz Goto Github PK
View Code? Open in Web Editor NEWImplementation of the board game PanzerBlitz, including Panzer Leader and fan-made content
Implementation of the board game PanzerBlitz, including Panzer Leader and fan-made content
This will allow both for match replays to be watched afterwards, and for E2E debugging.
Mutating configuration objects is a bad practice and could cause issues when running the same scenario multiple times.
Some aerosan units are "lightly" armored, so they get treated as armored targets, but do not leave wreck counters when destroyed.
This can be a simple boolean flag in UnitConfiguration that defaults to IsArmored.
http://gregpanzerblitz.com/Winter%20War/WinterWarRevised2015.pdf
These can be found at http://gregpanzerblitz.com/scenarios.htm
The scenario selection screen is pretty bad right now. Improve it to include the following if possible.
Infantry, CPs, 81/82mm mortars, AT and AA guns under 50mm.
http://gregpanzerblitz.com/Winter%20War/WinterWarRevised2015.pdf
Some work has been done to this effect, but it is preliminary. This is a precursor to setting up matches with custom armies.
The Germans have a lot of units...
Not all info pertinent to a unit is on the counter. There should be a pop-up pane that displays "hidden" info such as overrun, close-assault, and anti-aircraft, armor, movement restrictions, mounted status, etc...
They should be able to because of the road.
Wheat fields should conceal units with a low profile, eg. infantry and forts.
http://www.imaginative-strategist.layfigures.com/PDFs/Arvold%20on%20New%20Terrain.pdf
Add American units from PanzerLeader
Currently the gully movement override the base tile movement, allowing vehicles to travel along them through swamps.
The code in there is getting too complicated with the different requirements for each kind of attack. It would be much easier to just make AttackOrder an abstract class with Normal, CloseAssault, Overrun, and Minefield being children of it.
Something like
AttackOrder
- AttackOrderBase<T> : AttackOrder, T is SingleAttackOrder
-- NormalAttackOrder : AttackOrderBase<NormalSingleAttackOrder>
-- CloseAssaultAttackOrder : AttackOrderBase<CloseAssaultSingleAttackOrder>
-- OverrunAttackOrder : AttackOrderBase<OverrunSingleAttackOrder>
-- MinefieldAttackOrder : AttackOrderBase<MinefieldSingleAttackOrder>
In winter conditions trucks, limbers, and wagons cannot leave roads and infantry cannot use road movement.
This should probably be implemented as part of environments rather than unit movement rules.
http://gregpanzerblitz.com/Winter%20War/WinterWarRevised2015.pdf
PanzerLeader maps are available on the imaginative strategist site. The only major issue will be map B, which has transitions from 0-1 elevation without any slopes (and therefor no elevation penalty).
Currently there are 2 toggles for vehicular and truck movement which are switched to get different movement rules per unit. Units such as Skis, Aerosans, and Bicycles break this convention. To keep the number of toggles from going out of control units should be able to specify custom movement costs and restrictions to some degree.
http://gregpanzerblitz.com/Winter%20War/WinterWarRevised2015.pdf
Also only keep corrected counters when available for other factions
http://gregpanzerblitz.com/Winter%20War/WinterWarRevised2015.pdf
Add British units from PanzerLeader
The Russians also have a lot of units...
Bicycle troops are mounted infantry with
Special movement rules
Blocked by #4
http://gregpanzerblitz.com/Winter%20War/WinterWarRevised2015.pdf
Amphibious units may spend their entire movement allowance to enter water and swamp hexes (effectively a HARD_BLOCK).
While in water they
Amphibious units are treated as normal armored vehicles in regards to frozen water and swamps.
http://gregpanzerblitz.com/Winter%20War/WinterWarRevised2015.pdf
Some game mechanics/scenarios allow for capturing enemy units
Minefields should stop movement when they are entered. For some reason this isn't happening.
The one screenshot right now is very old. Labeling this as blocking release because there should be up-to-date screenshots provided with the release.
Finnish and British armies are missing a few units. For the British, those from the early war (available alongside French units), and for the Finnish some of those used in Winter War scenarios (supposed to have been captured from the Russians).
Some attack methods require a result to be rolled for each defender:
You would only know the victory conditions by looking at the scenario configuration. They should be visible (potentially along with deployment descriptions) from the scenario select screen and during the match.
The biggest blocker of this is the UX when setting up online games. I have no idea right now what this should look like.
Some are not appearing. Some passengers are getting left behind by their carriers.
ronen.log
Some units cannot close assault on their own, but can support other units' close assaults. In order for these units to close assault they must occupy the same tile as another unit within the close assault.
It would be nice for the probability of each combat result to be shown in the pane when building an attack. The CRT isn't shown anywhere in the program, and die modifiers can make figuring the probabilities mentally more difficult.
The imaginative strategist site has 14 more boards for PanzerBlitz, but they require new special terrain types.
Blocked by #8
Implement Japanese units from the imaginative strategist.
When automating orders, sometimes an entire turn is completed resulting in another NextTurnOrder being sent. The result is that the turn started callback gets called recursively for each automated turn. This is going to be a real issue if an AI player is ever implemented since the program will keep recursively calling the AI. If AIs are playing against each other this gets even worse.
France needs everything that makes a faction
These units cannot use the road movement rate. Aerosans additionally pay twice as much move cost.
http://gregpanzerblitz.com/Winter%20War/WinterWarRevised2015.pdf
Add a counter/track/something somewhere that shows the number of the current turn and how many turns there are in the match. Without this its hard to tell when a match will end.
This is a feature of PanzerLeader infantry units
During positional deployments units should be able to load/unload (like in convoy deployment) and mount/dismout. Units that can not re-mount should be able to do so during deployment.
During convoy deployment units should not be able to mount/dismount (they must enter the board mounted first).
Instead of having a mostly duplicate set of boolean flags for each terrain feature, use boolean arrays indexed by a feature enum.
Stop loading image from disk every time a faction symbol is displayed.
Air units do not fit very well within the current model because
Boards on the imaginative strategist site include terrain types not in the base game (wheatfields, forts, copses, etc...). These need to be added before the new boards.
http://www.imaginative-strategist.layfigures.com/PDFs/Arvold%20on%20New%20Terrain.pdf
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.