How to create an airfield locationtype?

Ok… And here is already the 2nd installment to the great DC Editor Q&A Show! I got the question “How to create airfield locations that can be placed on top of any existing landscapetypes?”. A good question and luckily a fairly easy one to answer.

Lets go to the “Location Type Window” by clicking on the “LT” button.

Here click on the “Add LocType” button. This will create a new location type. Click on it and select the statistics tab.

Now define its statistics so that it functions as the airfield we want:
-Set IsAirfield to “true” so airplanes can use it.
-Set Structural Points to 1000. This signifies the amount of damage it can stand. Keep in mind that a damaged airfield reduces the readiness of aircraft present on it.
-Set Destruct LT to -2 (***dont morph***). This means if the airfield is destroyed the landscape type of the hex will not be changed.
-Set TopAirStack to 100 meaning you can stack about a 100 airplanes on the airfield before you get penalties.
-Set AutoRecoverPoints to 200 so that any possible damage is slowly repaired (by invisible work crews)

Now click the graphics tab and set the LT# on construct (Landscape Type #) to -1. This means when you place it on the map in the editor the current landscape type of the hex will not change. However we do want to give the user a visual cue and for this we set the ExtraGraphic to 51 (aircraft symbol).

Ohh.. and don’t forget to change the name to “airfield” :)
But thats basically it.

One last remark: The ExtraGraphic uses a number that corresponds with a file from the natocounter directory. In retrospect this is not ideal, but it is workable. If you would like to add a custom graphic it means you have 2 things you can do. (1) Add a new natographic in the dccbmodgraphics/natocounters/ directory. At this moment i would add it as 183.png. (2) basically you do the same but this is more clean. Here you copy all dccbmodgraphics directories and rename them something like mymodgraphics, mymodgraphicsSMALL, mymodgraphicsBIG. Then you add 183.png to the natocounters directories in these mymodgraphics directories. And then you go the settings window and set the GfxOverrule to mymodgraphics.

Hope this helps. Let me know if there any questions.

Posted in Uncategorized | 2 Comments

How to code an event that gives Winter penalties?

Welcome to the first installment of the DC Editor Q&A show. The question thats handeled in this post is how to code an event that makes the Germans suffer losses due to winter circumstances.

First of all: When making a new event use a number that is not yet defined. In the case of the above example event I create event number 301. This is because now when i save my modified version of the scenario it is easier to update it later. Imagine VR Designs patches the game and makes changes to the scenarios… You can now easily patch your scenario by loading the original new updated “vanilla” scenario as a masterfile. Events 0-300 will then be reloaded, but not our event 301.

Anyway this lesson is on this specific event. Appart from the code you I would look to point out i put the event i created on “round check”. This means the event will be run 1 time per round.

The code is quite straightforward:

0) ' An event that causes Germans to loose troops & equipment in winter
1 LOOPER: TempVar0 FROM 0 TO CheckMapWidth
2 LOOPER: TempVar1 FROM 0 TO CheckMapHeight
3 CHECK: CheckHexOwner(TempVar0, TempVar1) == Gameslot_AxisRegime(#4)
4 CHECK: CheckLandscapeType(TempVar0, TempVar1) => 20
5 CHECK: CheckLandscapeType(TempVar0, TempVar1) =< 27 6 CHECK: CheckRandomPercent > 80
7 EXECUTE: ExecRemoveTroops(TempVar0, TempVar1, -1, 2)
8 END CHECK
9 END CHECK
10 END CHECK
11 END CHECK
12 END LOOPER
13 END LOOPER

Line 1+2 make us loop through every hex on the map. Temvar0 stores the X value of a hex and Tempvar1 stores the Y value of a hex. Line 12+13 close this looping operation.

Line 3 checks if a hex is in German controll. If it is line 4 will be executed.

Line 4 checks the LandscapeType # of the hex. If it is higher or equal than 20 we continue to line 5.

Line 5 checks the LanscapeType # again this time checking if it is lower or equal than 27. If it is we continue to line 6.

So we arrive only at line 6 if we find a German owned hex with a Landscape Type # in the range 20-27. Note that these Landscape Types (as you can check in the editor “Landscape Type Window” (“land” button)) are snow covered winter landscapes.

Line 6 checks the RandomPercent function which returns a random number between 0 and 100. If this number is higher then 80 we continue to line 7. Basically there is only 20% chance thuswise that we reach Line 7.

Line 7 now actually makes the winter casualties and losses. The ExecRemoveTroops function has 4 arguments: X, Y, SFTypeGroup, Percentage. As you can see we specify tempvar0 and tempvar1 for the coordinates since they store the x,y coordinates of the hex we are checking at any moment within the big loop (line 1+2 and 12+13). The SFTypeGroup (also known as unitgroup elsewhere, unitgroup and sftypegroup are the same thing) is set to -1 meaning all type of troops will be affected ( if i would have put 0 here only infantry trooptypes would have been affected). The percentage is set to 2% meaning that 2% of all troops will be removed.

Notice i use line 6 and line 7 in combination to reach an average casualty rate due to winter of 2% of 20% = 0,4% per round. Considering there are probably over a 50 winter turns this is actually still set way to high in this example. I think 5% total winter losses over all months would be more realistic in 1942-1943 so.. I should have set Line 6 more to something like CheckRandom > 96…

Line 8 – 11 has the corresponding END CHECKS to the CHECKS in lines 4-7.

A nicer version of this event would also log the affected units and output a message to the German player notifiying him which units had problems with the icy weather.

A nicer version of this event could also use different percentages of losses for troops and equipment.

I hope you’all learned something from this example. See you again in the next installment of the DC Editor Q&A. Feel free to give suggestion what the topic should be.

Posted in Uncategorized | Leave a comment

Decisive Campaigns : Case Blue has been released!

Case Blue has finally been released. You can pick up your copy over at my publisher at Matrix Games or at Slitherine and start driving your panzers towards Stalingrad and Baku today. I hope you enjoy the game and I am looking forward to your feedback and discussing it with you on the Matrix forums.

A third after action report, this time by Mark Hemns on playing the 1st Panzer Army campaign, has been published on the Wargamer.com.

If you can read french you’ll enjoy the excellent review of Case Blue on the Gazette du Wargamer.

Posted in DC:Case Blue | Leave a comment

Case Blue preview on the Armchair General

Click here to read an after action report of the first 2 months of the Case Blue offensive in the Case Blue Short campaign scenario. Playing the Soviets is the game’s designer and playing the Germans is Jacco van Weert, one of the Decisive Campaigns beta testers.

Posted in DC:Case Blue | Leave a comment

Preview AAR of DC : Case Blue

Case Blue did just not make it’s 70th year anniversary last 28th of June, but it is very close to shipping to the stores now! Click here to read Matrix Games and Slitherine’s press release on Case Blue. Also read a very detailed preview after-action-report (AAR) by the SugarFreeGamer.com who’s playing the german side during the 2nd Battle for Kharkov. Click here to hop on over to the SugarFreeGamer.com.

Posted in DC:Case Blue | Leave a comment

Grogheads reviews Small General

Check out a great review of Small General on Grogheads.com.

Its the first review. And almost five months after initial release… We at VR Designs are planning to improve our marketing a bit with the upcomming (Aug 2012) release of Small General : Eastern Front.

Posted in Small General | Leave a comment