HRCodWar - How to start?

Okay, I like the features of the campaign ... How to plan it? how to start?

Those are normal questions. We will try to explain it step by step for any squad seeking how to plan a HRCODWAR and not dying in the attempt :)

Step 1 - Who is going to fly?

Imagine four squads. SQ1, SQ2, SQ3, SQ4 and SQ5. SQ1 and SQ2 flying in the Allies side and all the others in the Axis side. All of them are big enough to manage their resources excepting SQ5, wich is composed by only three pilots (SQ5_Pilot1, SQ5_Pilot2 y SQ5_Pilot3). These pilots will not be able to fly with their own tag. They will have to join some of the other squads, for example SQ3. In this situation SQ5 pilots must change their nicks in Steam and write their names with the tag of the squad that manages their resources, something like SQ3_SQ5_Pilot1, SQ3_SQ5_Pilot2 and SQ3_SQ5_Pilot3.

Step 2 - Where will we fly?

Now its time to decide on what map and where in the map will take place battle, the battle area. It must have the proper size so that all pilots can find each other and fight. There should be also enough airfields for both sides.
There is a very important detail in this step, which is the choice of the grid size. If a very large size is chosen ground units will move very quickly. If, instead, you choose a very small size, the units will move very slowly and movements can last forever, unless the velocidades.json is properly modified, as will be explained below.
After both the map an the battle area are set, you set the starting hour the map is saved empty as /missions/hrcodwar/hrcodwa.mis, resulting in the initial mission and the pattern for templates that we will see below.
The .mis should look like this:

[PARTS]
  core.100
  bob.100
[MAIN]
  MAP Land$English_Channel_1940
  BattleArea 200000 180000 130000 90000 2500
  TIME 10
  WeatherIndex 0
  CloudsHeight 1000
  BreezeActivity 10
  ThermalActivity 10
[splines]
[CustomChiefs]
[Stationary]
[Buildings]
[BuildingsLinks]
As you can see, nothing else should be stored.

Step 3 - What are the units to choose and how much they cost?

The squads must reach an agreement at the units to use and their value. Here we must say that the Halcones Rojos squad have done an extensive work prior to check what units are at par on each side and can be used in a balanced fight. But, of course, you are free to add, remove, and update costs as you wish.
This data is stored in missions/hrcodwar/datos_sistema in .json format:

  • aliados_aaa_ligeras.json: Light allied AAA, class and cost.
  • aliados_aaa_pesadas.json: Heavy allied AAA, class and cost.
  • aliados_artilleria_ligera.json: Light allied artillery, class and cost.
  • aliados_blindados_ligeros.json: Heavy allied tanks, class and cost.
  • aliados_blindados_pesados.json: Light allied tanks, class and cost.
  • aliados_aparatos.json: Allied aircrafts, class and cost.
  • eje_aaa_ligeras.json: Light axis AAA, class and cost.
  • eje_aaa_pesadas.json: Heavi axis AAA, class and cost.
  • eje_artilleria_ligera.json: Light axis artillery, class and cost.
  • eje_blindados_ligeros.json: Heavy axis tanks, class and cost.
  • eje_blindados_pesados.json: Ligh axis tanks, class and cost.
  • velocidades.json: The sectors that each unit advances (specified on files discussed above). Remember that the advance of an unit is measured in sectors, not in distance. Note that supply columns are created by the campaign and they are named "column_xx_x", they must always be in the file.
  • eje_aparatos.json: Axis aircrafts, class and cost.
  • aparatos_suministran.json: Aircrafts allowed to make airborne supplies and their payload.
  • navios_escolta.json: Scort ships, destroyers, the same for both sides, class and cost.
  • navios_mercantes.json: Merchant ships, the same for both sides, class and cost.
  • recursos_costes.json: The cost of making each resource point.
  • puntos.json: Score awarded to destroying a unit described in the files, or to another action as conquering or destroying infraestructures. Apart from the units classes appearing in the other cost files, we have the following entities:
    • 3_inch_20_CWT_QF_Mk_I_StandAlone1: Is the heavy AAA mountable on the bow and stern of merchant.
    • Bofors_StandAlone: Is the light AAA mountable on the bow and stern of merchant.
    • MotorBarge_Large1: These are the boats of embarkation and disembarkation.
    • piloto: Points earned by a pilot kill.
    • piloto_capturado: Points earned by capturing a pilot.
    • fabrica: Points earned by destroying a factory.
    • refineria: Points earned by destroying a refinery.
    • central: Points earned by destroying a power plant.
    • almacen_combustible: Points earned by destroying a fuel depot at an airfield.
    • almacen_bombas: Points earned by destroying a bomb depot at an airfield.
    • almacen_municion: Points earned by destroying an ammunition depot at an airfield.
    • almacen_reparacion: Points earned by destroying a reparation kits depot at an airfield.
    • Car.xxx: They are the objects used in the supply columns.
    • Tank.xxx: They are the objects used in the supply columns, the AAA.
    • conquista_base: Points earned conquering an airfield.
    • conquista_fabrica: Points earned conquering a factory.
    • conquista_refineria: Points earned conquering a refinery.
    • conquista_central: Points earned conquering a power plant.
    • desembarco: Maximum points earned disembarking in the enemy territory unidades_carga_mercante in the conf.ini, what means that it is proportional to the number of disembarked units.

Step 4 - In what condition we fly?

Now participants should agree on the values of conf.ini governing campaign, that means every value already explained in the section.

Step 5 - The template? Oh no! everyone for himself!

Once each side knows how many points you have created should decide between squads how many points each side will use each, bases to occupy and use resources as the needs of a squadron of 10 pilots flying no are the same as the one that flying with 20 pilots, although this is very relative. At the end, once the campaign started can always enlist troops from each other, or provide resources for each other.

Knowing each squadron has few resources ... the dreaded moment we finally arrived .."Create the template" !!.

Each squadron must be copied the missions/hrcodwar/hrcodwa.mis and rename it with your squadron nick, for example sq2.mis for use as initial pattern. The template creation is already perfectly described and explained in this magnificent manual that you can download here, so we will not explain it now. Just saying, that when finished will be stored in missions/hrcodwar/plantillas como missions/hrcodwar/plantillas/sq2.mis.

Step 6 - Testing the template

ATTENTION! Knowledge assumed in dedicated server configuration IL2 Sturmovik Cliff of Dover.

It is interesting (and necessary) that each commander provided the installation of the campaign on your own computer and you know how it works, because when you create a template of your squadron should prove that spends and creates all the resources that have been assigned his squadron without going without falling short, how is it done?, let's do this.

Suppose we are SQ2, and we want to test our template, it is best configured server as explained in a dedicated section of the Campaign Installing here, then we go to conf.ini and edit the following values.

  • [GENERAL]
    • analiza_plantilla_siempre = true We tell him the system that whenever you launch the mission, analyze the initial templates, really will always be the mission 0.
    • informe_plantillas = true This value is crucial in this process, if it is active will release reports on the screen what server being analyzed, in this way the commander knows if well spent resources for his squadron.
    • calcula_coordenadas_recursos = false The system automatically calculates the position of the resources based on the four cardinal coordinates, prevents that the warehouses from falling on other buildings. This operation is only used when the template is analyzed in mission 0 and has a cost of overtime, if we test the template several times (because we correct errors here and there) we lose much time, it is better to disable it, so that they create fixed where they fall, right now, we do not care that circumstance.
    • web_activa_soporte = false We disable the web communication to avoid creating errors of communication, after all, we're not the real server campaign.
  • [GUERRA]
    • mision = 0 Make sure the mission number is 0, because is in the mission 0 when templates are processed.
    • escuadrones_aliados = SQ2 Leave only the tag template to test, in this case the squadron SQ2.
    • escuadrones_eje = Leave the value blank, lest look at other templates.

After changing these settings, launch the mission as if we were the server, the server window will see what the system is doing. HRCODWAR detect the initial loop on and though we launch a thousand times, the mission will always be 0 and analyze the template always, which detect only template this to analyze and SQ2 charged by analyzing all its resources and units, showing a summary screen it found and lost. Thus, the commander of SQ2 can see without needing to be the real server and without having to send it to anyone, if your template meets the agreement with the other squadrons on their side or even the opposing side.

Once having created, has reached the time of checking the position calculation stores. Modify the conf.ini a:

  • [GENERAL]
    • calcula_coordenadas_recursos = true To calculate the final coordinates of the resources.

The first thing you will notice is that the commander takes longer to process as this by calculating the actual coordinates of storage resource bases. At this moment you may throw some system warning message like that could not be properly calculate the position of a group and gets fixed. "Putting fixed" a group of stores means that the leaves in position north or west, or east, or south to rango_recursos_base meters which placed the object Birthplace, since it has not encountered a "free" place to locate groups. This means they can appear in the middle of a town or in the middle of a forest. This is an automatic operation performed to save labor commander performs template but has these disadvantages. Knowing is not important, the only thing to do is move the object a little up, down, left or right to "save" this circumstance, but also can be left as is, but can be considered as a "trap "by the adversary. If you do not give any other message, everything is correct.

The game launched at that time is not important, probably because nothing is released abort for any errors of the type "was found all power plants" that's not important, what matters is that the SQ2 commander has hand tool to check what you are doing. All squadrons commander should do the same, so that when it is sent to that server will actually make and launch the initial heading, no problems occur and the initial mission to fly at that moment without touching anything.

All this may seem complicated, but any operation of this type it is at first. If you follow the steps listed and you will see it is not so complicated, but no one is born taught :)

Step 7 - Ok all right! Will fly now? ...NO!

When all commanders have already created your templates and everything is ready, check that everything goes really work together. The machine will make server should have all the templates (not surprisingly) and store them in your missions/hrcodwar/plantillas, following the example, that directory should store, SQ1.mis, SQ2.mis, SQ3.mis y SQ4.mis.

The operation comes next, should be done by the server before it hits the date and time of flight. To ensure that all templates operate well together. Needless to say that as in any competition of this type, the people involved are supposed adult and perform this activity for mutual fun, so the obvious subtleties arising from a possible deceptive activity, ie "cheating" are apart from any consideration. Thus, will edit the conf.ini así.

  • [GENERAL]
    • analiza_plantilla_siempre = true
    • informe_plantillas = false
    • calcula_coordenadas_recursos = true
    • web_activa_soporte = false
  • [GUERRA]
    • mision = 0
    • escuadrones_aliados = SQ1,SQ2
    • escuadrones_eje = SQ3,SQ4

Now check if all templates work together, but the actual positions of the resources of the bases is calculated (the operation will take more time) and the server will not release messages from the analysis. In this way he is doing will not see details of the operations and their subconscious will not store any sensitive information. If everything is correct, the server will see that the front is recreated and the war begins.

If an error happens and the system does not start the war, it's time to activate informe_plantillas = true and analyze what has happened.

At this point, if you have web support, ie, this web project you are looking at right now and is configured correctly, and everything is correct, the server could enable web communication to perform a initial fake mission nº 0, and save on the web all the data analyzed so that all participants can see them via web and check that everything is correct.

  • [GENERAL]
    • web_activa_soporte = true Activate web communication
    • web_script_url = http://www.mydomain.com/hrcodwar/ajax/services.php?a=datos We specify the web address of the script that is used to communicate both programs.
    • web_script_clave = LA_CLAVE_ELEGIDA We put the same key which stores the web CFG_CLAVE_ACEPTA_ENVIOS of his config.inc.php.

If everything is well configured, when the mission is completed, a "battle stop" once started from the window of server, the system sends the analyzed data to the web and all participants will be able to enter and see as has been all about map. This is an fake mission, because when the first mission to fly really, these data will be overwritten with the mission 0 "real".

Step 8 - OK? Will fly now? ... yeah, now Yes

All prepared and ready, you only have to configure the server for the conf.ini great appointment. The important variables that must be considered are:

  • [GENERAL]
    • analiza_plantilla_siempre = false To disable the start loop and continue the battle.
    • informe_plantillas = false To not give reports from what you analyzes, otherwise everyone would see it.
    • calcula_coordenadas_recursos = true
  • [GUERRA]
    • mision = 0
    • id_siguiente_unidad = 0 Sure to be 0 (is the counter of units for them only ones on the map)

The only thing left to enter the server and win the war :)