Jump to content
thobson

Abandoned Armies – Secrets revealed (Mostly)

Recommended Posts

Well it is now more than 6 months  almost 11 years since I released Abandoned Armies v1.40 and I think that by now everyone that might be interested in playing it will have given it a try.  I have received many comments and questions on the mission over the last several months that indicate to me that not everyone has discovered everything in the mission.  Actually discovering everything would require the mission to be played many times in many different ways.

To help those that have played the mission but not yet found everything and to help those that got stuck early on I have prepared a Spoiler document that can be downloaded at a broken link*.   Note that this document should only be read by people that have played the mission through to the end, those that have got stuck, or those that think they may be missing something.

 

August 2016:

*As the link to the document has since been irrevocably broken I have copied and pasted (with permission) the full text of the document below as posts 11 to 27 (It was too long to all go in one post).  Apologies that some of the formatting has got screwed in the process.

 

The reason for putting it here after all this time is that apparently there are some who are playing this mission  Also it is good to have a complete historical record.


 

  • Like 4

Share this post


Link to post
Share on other sites

Hi,

I've just play your Mission and must say, it's very difficult.

Very good work.

Thanks a lot

Imutep smile_o.gif

Share this post


Link to post
Share on other sites

Imutep:  Well the spoiler document might make it a bit easier.  The trick is to take it slowly.

Connors: I have offerd this document to a few people that have played the mission several times.  They all refused it, so you are in good company

Share this post


Link to post
Share on other sites

I unlawfully read your wonderful document and I just want to say that you are a problem solving genius. You are probably one of the most talented game theory gurus.

Thank you for all your hard scripting work! notworthy.gif

But really, before, I got frightened by the scary atmosphere, and the idea that a couple of rapists were coming with rifles to kill me. wow_o.gif

Then when I met on of the on foot patrols with the flag carrier, it was too much, I was getting a mild heart harrassment.

I think I'll play it again!!! xmas_o.gif

Share this post


Link to post
Share on other sites

Thank you, those are very kind, but I feel undeserved, words.  I made the mission because it was fun to do.  I have found that OFP does some very complicated things very simply and very well, but it does some simple things very poorly or not at all.  Finding working solutions to all of this was great fun.  I had a lot of encouragement from colleagues at the Beta Testing Site on ofpec and that multiplied the fun element enormously.  I hope other people enjoy playing it and this document was meant to help with that.  I still enjoy playing it and seeing how differently things work out, but I still find myself writing lists of things I should have done differently. icon_rolleyes.gif

Share this post


Link to post
Share on other sites
 I still enjoy playing it and seeing how differently things work out, but I still find myself writing lists of things I should have done differently. icon_rolleyes.gif

Your mission has come the closest Ive ever seen a mission come to what I had hoped for a long time would be released, a mission that was many missions in one, that played out like a long adventure with alot of atmosphere and freedom.

And a thought that had been rattling around in my head, may as well type it - a mission like what you have made I would think would be fairly universal, meaning if you had found the desire you could add and change stuff while keeping the main structure intact. Im certainly not asking for this or anything, its just that it seems you could really do alot with just the main structure of the mission if you wanted a different type. Heck, you could prolly come up with a lot of simple stuff that could be added that would increase the mission size.

Kind of like the mission ive been working on, I had my basic concept set, and went thru the trouble of putting it altogether, and found an annoyingly large number of new ideas popping in my head, of course had to sift thru and find what could be done in a reasonable time and wouldnt be too complex, but found all sorts of stuff could be added without great difficulty, like dialogs allowed between player and ai units, a few important ones that would possibly lead to events occuring, others just simple quick conversations to enhance the 'alive' feeling, also added alot of stuff as far as object addons goes, which involved turning certain towns into functional bases and right down to adding misc junk, like some gas cans and barrels, etc..

I myself have no problem with releasing my mission when I am content with it and then maybe later on maybe spending time adding a bunch of new stuff and realeasing a new type of it, and the turn out prolly wont be as great, but nonetheless it still would be a next step up in the missions size and its immersion and 'aliveness'.

Guess all Im just saying as I think about you mission is if it was me, I would certainly not write off throwing more stuff in and making it even better than before.

Oh, just so you know I was Mr.pibb from ofpec when you had the beta version up wink_o.gif although I think I was more in it for just playing the mission I ended up getting into the testing part as I found how much I really liked the mission.

Either way, gl to you in your future endeavors in any possible new missions and thanks for making Abandoned Armies, I wish I could play it again but Ive already played it like ten times over lol, was a great advenure.

  • Like 1

Share this post


Link to post
Share on other sites

Mr.pibb!! I wondered what happened to you.  I thought you changed your name to some long string of digits.  Good to hear from you again.  I hope you saw your name in the credits.  

Interesting what you say.  My original concept was to create a working island and then to set several different missions on it, capture a convoy, kill a leader and so on.  Then I thought what the hell why not let the player decide on his own missions and just let the whole island react to what he does.  

Throwing away ideas because there are too many of them – tell me about it.  I had camps of comfort women being rescued and then taking up arms against the soldiers, I had civilian spies infiltrating La Trinite and the two bases, I had the player starting in Le Port with only a bicycle for transport, and much more, but there is a limit to what can be done.   I won’t be adding anything to this mission any time soon.  I started making it in Oct 04, beta testing started Jan 05, I released it Nov 05 and I have been receiving comments on it since then.  During all the construction and beta testing I was totally involved with it so I now feel I have lived a lot of my recent life on Malden and it is time to move on.  Releasing the spoiler document is my way of saying good bye.  

Did you really play it end to end so many times?!  If I don’t count all the testing I did on it and only count the number of times I played it through for fun, you have probably played it more than I have!  Thank you again for you comments, I really appreciate them.

Share this post


Link to post
Share on other sites

Ya, I played it alot lol, Ive always like single player missions because ai tend to behave as if the mission is for real, different from mp where it seems often players (including myself) are always looking for the most efficient way to win within the confines of what you can get away within the mission and within ofp engine, its just a seemingly more immersive 'realistic' atmosphere in single player I think.

Anyhow, all that stuff you put down as possible ideas do sound neat, and I know what you mean by keeping it limited to what can be done in a reasonable time, although the work I noticed you put into just a few scenarios in your mission tells me you still went out of your way to get the results you were seeking (like the convoy management scripts tounge2.gif).

Dont want to mess up this thread with off topic stuff, but anyhow, I do also know what you mean by wanting to dump the mission making for a while, I spent three years on and off making a GR mod, by the time it was done I was so sick of modding I didnt even want to boot up GR(or my computer) for a very long time lol. And at times I feared comments made at that point cause I dreaded re-opening the campaign to fix some major bug I had missed that had just been discovered by someone lol.

But annnyhow, im terribly sorry for rambling, have a good one and take it easy wink_o.gif

Share this post


Link to post
Share on other sites

Also bumped in view of the recent interest expressed by a new thread being opened.

Share this post


Link to post
Share on other sites

August 2016:

As the link to the document has since been irrevocably broken I have copied and pasted (with permission) the full text of the document below as posts 11 to 27 (It was too long to all go in one post).  Apologies that some of the formatting has got screwed in the process.

 

The reason for putting it here after all this time is that apparently there are some who are playing this mission  Also it is good to have a complete historical record.

 

 

Abandoned Armies v1.40

Design Notes/Spoilers

 

Things that might not be noticed by the player the first few times the mission is played but which might enhance the experience for subsequent attempts.  This should not be read until you have played the mission completely through at least once.

This document should be read in conjunction with the Readme file

 

Contents:

1. Story – high level overview:

2. Tactics:

3. Player’s Environmental options:

4. Cutscenes:

5. Trade:

6. Stolen vehicles:

7. Stationary Flags:

8. Flags with mobile groups:

9. Elusive Civilian Population:

10. Atrocities:

11. Random Weapons:

12. Incomplete magazine load-out:

13. Officers:

14. Prison break from Chapoi:

15 OFP Bug – Re-arming empty armoured units:

16. Sainte Marie minefield:

17. ‘Ear candy’ Choppers and mad women:

18. Soldiers Surrender/runaway:

19. War trigger:

20. All out attack - Plan of attack:

Andropov (Northern Army):
Stamenov (Southern Army)
A Counter-attack
Player involvement

21. Weather:

22. Convoys and Patrols:

Convoys meeting at La Trinite:
Vehicles sharing the same piece of road:
Non-lead vehicles getting stuck:
Lead vehicles getting stuck
Vehicles being damaged

23. Convoy guards:

24. Re-boarding the convoy at La Trinite:

25 Another strange bug:

26. Music players in vehicles:

27. Environmental sounds:

28. Visiting the offshore islands:

29. Messages when re-organising the team:

30. Skill levels:

31. Save Games:

32. Visiting the locations out of sequence:

33. Different dialogue in the cutscenes:

Le Port Concentration Camp cutscene(s)

34. State of bodies:

35. Driving over soldiers:

36. Avoiding conflicting messages:

37. De-Bugging and Testing:

38. Other stuff:

 

Appendix 1 – Instructions for Testing the Mission

Appendix 2 – Statistics

  • Like 4

Share this post


Link to post
Share on other sites

1. Story – high level overview:

Go to Vigny, get the voiceover at the various bodies you find there.  Talk to Tatyana and find out about the mountain lodge.  The voiceovers for the bodies are only available before you speak with Tatyana, not after – they would be out of context after speaking with her.

Go to the Mountain Lodge, find a resistance solder and three civilians.  Find out about the fate of Uncle Nikolai.  Listen to the radio message and find out about a group of civilians. 

Bring the first group of civilians back to the mountain lodge.  Providing they all survive the journey you find out about a second group of civilians and are told about two women captured in Houdan.  Team members give you conflicting advice on what to do next. 

At the second group of civilians you are joined by a resistance soldier and then later by a resistance medic.  You are also told about a third group of civilians.  If you do find this third group you will come across one of the many atrocities on the island.

At Houdan you are joined by a Russian soldier, providing you don’t kill him first!  If you do kill him that is okay – you will just play a different mission.  The Russian soldier gives you a lot of information about the armies and also tells you that the two women from Houdan you are looking for have been sent to Chapoi.  The information you get here includes:

-       the armies are trading with each other and they are using La Trinite to make the exchanges – a good place to check out;

-       helicopters are patrolling continuously, the real purpose for this is for each side to know how strong the other side is, if one side is very weak then the other side may launch an all out attack.

When reordering your team the Russian soldier tells you of a seriously ill woman in Dourdan.  Providing of course you haven’t got him killed before you do this, in which case you will not find out about this woman.

The woman in Dourdan tells you about (1) all the citizens of Sainte Marie being taken away to Chapoi by the soldiers; (2) her husband and family in Larche – she gives you a map.  The map is a picture that you can display via a radio trigger.

When you get to the woman’s house in Larche you get a voiceover about the fate of her family.  If you return to her to give her the news you will also discover her fate.

When you get to Chapoi you may see the citizens of Sainte Marie escaping, any that are not killed in the escape attempt will die in the minefield at Sainte Marie.  So more bad news for the woman you found at Dourdan.

When you get to Stamenov’s HQ you hear the two women from Houdan being shot by Stamenov.

If you visit Le Port you will find a concentration camp containing the surviving male inhabitants of the southern towns.  There is a medic amongst them who will join you if you have no medic in your team.  This would happen either because Pavel (the medic at the second group of civilians) has been killed or has not yet joined you.  Note that Le Port does not feature in the story and no one tells you about the place – but you might notice the road-block on the road leading down there and wonder what it is about.

At various places you may come across groups of murdered civilians where there will be an appropriate voiceover.

Once you have captured one of the bases you will find damaged armour units in a repair facility.  The ability to repair, re-arm and re-fuel these units is provided so the player has the possibility of a different experience when attacking the other base. 

Throughout the mission you may notice a lot of little things (damaged vehicles, vehicles with little fuel, untidy ammo crates etc.) that indicates the difference between the two armies on the island.  The northern army is ruthless and efficient.  The southern army is sloppy but brutal.

  • Like 1

Share this post


Link to post
Share on other sites

2. Tactics:

This is a mission where there are a lot of soldiers and many of them are on guard so if you make your presence known and stay in one place long enough they will find you.  The key to winning is to survive while whittling them down.  Hit and run, especially run.  It doesn’t matter if the hit is only one soldier – it is one less for you to deal with later.  It is standard OFP that if you hit and wound a soldier – he knows about you, so his group knows about you and the guard units on his side also know about you – it doesn’t matter if the next shot kills him you are a marked man.  In the early stages of the mission when you have an inexperienced team and very little ammunition, just get out of there.  The key priority should be to do them damage and survive.

Later you might have the chance to leave a few mines around your position as you leave as a little present for any armour that might come looking for you.  In fact this is a good way of dealing with the armour in the mission.  A better way is mentioned below (though my long-term preference remains the satchel charge)

La Trinite is a good place to get weapons and ammo as this is where each side leaves the goods they are trading.  However there is a complication, at any one time only the ammo crates of one side are available at La Trinite.  Depending on which side most recently visited the town you may find one set of crates with only rifles and hand guns and associated ammo in them, or you may find crates with rockets, explosives and associated weapons.  You cannot get all you want on a single visit to the town, you need to dodge the visiting convoys to build up your weapon pool.  Also if you kill the ammo truck in one of the convoys the trade will cease and La Trinite will get no more weapons or ammo.  If your presence at La Trinite is detected, and especially if you attack one of the convoys, then the chances of you being able to get any more weapons from there is very slim.  Note that in keeping with the sloppiness of the southern army the crates in the southern hut are untidy (randomly), and in keeping with the efficiency of the northern army you will find a medical cabinet in their hut.

I said above that a good way of dealing with armour is to scatter some mines around when you leave a position known to the enemy.  A better way is to get the other side to kill it, the choppers are particularly good for this.  Get north and south fighting each other (see War Trigger below).

So that is it: don’t attack the convoys until you have got all the weapons you want; don’t get spotted in or near La Trinite; don’t kill the choppers until it is absolutely necessary; and don’t forget the ‘run’ in hit-and-run.  Just in case it is not clear after all this – don’t go attacking any of the main bases until very very late on!!

 

3. Player’s Environmental options:

The player is given the option at the start of the mission to select either: Full Environmental effects, or Reduced Environmental effects.  This feature is provided to enable players with low spec PCs to reduce the load on their CPU by removing some of the environmental effects available in the full mission.  The gameplay will be exactly the same, what will be missing are various sights and sounds that add to the atmosphere.

I chose to allow the player to make the selection rather than doing it myself based on the benchmark of the player’s PC for the following reasons:

1. Some players with low spec PCs may wish to play with all the environmental features selected and be prepared to suffer the resultant lag.

2. The results returned by the benchmark command are not a reliable indicator of the performance of a PC.  Low spec, high lag PCs have been known to return higher benchmark results than more highly powered machines that suffer from less lag.

The results of choosing the Reduced Environmental Effects are:
1. No custom burn/smoke script for destroyed armour.
2. No environmental sounds (birds, dogs, owls, electricity generators, wolf packs, eerie music at Sainte Marie). (See Environmental sounds below)
3. No civilians peeping from houses (see Elusive Civilian Population below).
4. The number of custom AV and AP mines will be halved, from 10 AV and 20 AP mines to 5 AV and 10 AP mines.
5. The flags carried by the leader of several groups will not transfer to the new leader when the previous leader is killed (see Flags with mobile groups below)

  • Like 1

Share this post


Link to post
Share on other sites

4. Cutscenes:

There are a total of 15 cutscenes in this mission but because some are mutually exclusive the maximum that could be seen in any one run through is 13.  Many players will not get the full 13 but most should experience a minimum of 8 or 9 scenes in a successful run through.  In addition, for several scenes the dialogue will be different depending on whether certain things have or have not happened.  A complete list of all possible scenes is as follows:

1. Meeting with Tatyana at Vigny

2. First mountain lodge cut scene when the player meets Ruslan, Karl, Erik and Irena.  Alexi’s greeting here is different depending on whether: he has spoken with Tatyana or not; has previously killed one of the civilians at the lodge or not; arrives on foot or in a vehicle; arrives carrying a weapon or totally unarmed.

3. First civilian hut where the player meets Yuri.

4. Second mountain lodge cutscene when Alexi takes the first group of civilians back to the lodge.  This scene is different depending on whether (i) they arrive back on foot or in a vehicle; (ii) Yuri is alive or not; (iii) Any of the rescued civilians have been killed or not.

5. Second civilian hut where Alexi meets Marek and Pavel.  The dialogue is different depending on whether the north and south armies are already fighting.

6. Meeting with Sergei at Houdan.  The dialogue is different depending on whether: (i) the north and south armies are already fighting; (ii) Alexi has or has not already visited La Trinite.

7 to 10. Woman at Dourdan:

Scene 1: if Alexi visits her before Sergei has told him about her.
Scene 2: First visit after Alexi has been told about her.  The dialogue is different depending on whether Sergei is dead, badly injured, or not badly injured.
Scene 3: Alexi has already spoken to her (Scene 2), but has not yet visited her home in Larche
Scene 4: Alexi has already spoken to her (Scene 2), and has visited her home in Larche.
Not a scene as such – but something different happens if you try to repeat scene 4.

11 to 14. Le Port Concentration Camp:

Scene 1: Alexi arrives at the camp before Pavel (the medic with the second group of civilians) has joined the team.  In this case Viktor will join him and there will be no further scenes here.
Scene 2: Alexi arrives at the camp after Pavel has joined the team and Pavel is still alive.  In this case Viktor will not join and Scene 4 below becomes a possibility.
Scene 3: Alexi first arrives at the camp after Pavel has joined and then subsequently killed.  In this case Viktor will join and there will be no further scenes here.
Scene 4: (only possible after Scene 2): Alexi returns to the camp after Pavel has been killed.  In this case Viktor will join and there will be no further scenes here.

15. Endscene when the mission has been completed successfully.  In the endscene the player is shown all of his team members, the living ones first and next those that have died.  There is some sad music playing while looking at the dead ones, the track chosen depends on how long it has to play for and so will depend on how many casualties your team took.  Also there is a shot of ‘The innocent’.  If you have visited the woman at Dourdan after visiting her house in Larche, then you will see her again here.  If you did not discover her fate then the shot you get in this scene is of the dead civilians by the truck south of Houdan.

 

5. Trade:

It will become clear to the player during the mission that La Trinite is a special place.  Sergei tells the player that the two sides are trading there.  This trade is simulated as follows: there are two huts at La Trinite and road convoys running back and forth between the two main bases (Chapoi in the south and the airbase in the north) and La Trinite.  The content of the huts and the ammo tucks in the convoys represent the trading taking place. 

When the northern convoy travels from the airbase to La Trinite it carries rifles, hand guns and associated ammunition.  When the southern convoy travels from Chapoi to La Trinite it carries mainly explosives, rockets and associated weapons.  When a convoy arrives at La Trinite the weapons and ammo carried by the convoy are placed in ammo crates in one of the huts and the weapons and ammo in the other hut are placed in the ammo truck in the convoy.  The convoy then returns to its base.

So the contents of the huts at La Trinite will depend on which convoy last visited the town and the contents of the ammo truck in the convoy will depend on whether it is travelling north (Chapoi to La Trinite, La Trinite to the airbase) or south (airbase to La Trinite, La Trinite to Chapoi).

Note that the soldiers are not good record keepers so if some of the stuff they leave at La Trinite goes missing then no one notices. J

 

There is one further refinement.  Each side will take strong exception to any damage being done to its hut at La Trinite.  If a convoy arrives at La Trinite and finds its hut destroyed then they are likely to call in some infantry – with obvious consequences when the other side’s convoy arrives.

  • Like 1

Share this post


Link to post
Share on other sites

6. Stolen vehicles:

The trade that takes place at La Trinite makes this a very attractive place to the player.  There will be a real temptation for the player to park a truck there and to load it up with all the weapons the player wants in between visits by the convoys.  There is a nasty surprise waiting for any player that does this. 

Empty vehicles left in the vicinity of La Trinite will be captured by the next convoy to visit the town and will be driven to the relevant base.  If the vehicle is not a tank the crew will then disembark.  Captured tanks will remain fully crewed and could cause a problem to the player later.  This applies to any vehicle from a bicycle to an Abrams to a chopper.  Getting it to work for a chopper was a bit of a pain, for reasons I will not go into here, but was necessary as there is a very small chance that the player might capture a chopper during the mission.  In doing this I noticed some interestingly different behaviours of several vehicles.  The M113 Ambulance and V80 chopper were a real pain to get right.  The fact that I spent time on them even though these vehicles do not feature in the mission is testament to my level of insanity.  Several vehicles (bicycle, motorcycle, jeep) sometimes will not make it to the base.  Despite my best efforts and depending on their location they may try to go through La Trinite and in doing so hit one of the wire barricades or buildings and become disabled.  This is not a bad result, nevertheless, to assist them the wire barricades now move smoothly out of the way to open the roads out of town.

In determining how far from the town an empty vehicle must be to be captured I have used the level of rain and fog to estimate the likely visibility (see Weather below).

 

So by all means park a vehicle in La Trinite to load up with weapons – just make sure you get it away from the town before the next convoy arrives.

 

7. Stationary Flags:

There is a flag in each of the two main bases and in each of the towns on the two front-lines.  If any of these locations are occupied by soldiers from the opposing side, driving out, or killing, the original occupants then one of the capturing soldiers will run to the flagpole, the flag that is there will run down the pole and vanish and the flag of the new occupiers will be raised on the flagpole.  The unit that changed the flag will then salute the new flag.  This flag changing can be repeated indefinitely, so if the original occupiers mount a successful counter attack then the flag will be changed back in the same way.  Originally this was implemented using triggers, but to reduce lag it is now done using a script that runs at slightly more than one minute intervals. 

In addition to each side putting up its own flag, Alexi (the player) and his team can also put up the flag of the old Malden government.  If the area around a flagpole is empty of soldiers but if the player or anyone of his team are close by then one of them may run over the to flagpole and raise the flag.  If the player is close by he can change the flag by going to the flagpole.  If the player is the only one of his team near the flagpole that is not in a vehicle then it must be him that changes the flag. 

Note the flags at La Trinite (one for each side) do not change.

 

8. Flags with mobile groups:

In addition to the flags flying from flagpoles certain infantry and vehicle groups also carry flags.  Groups that are located near to their base do not carry flags but all the others do.  The flag is carried by the leader of the group.  When the leader is killed the flag will, after a delay, be transferred to the new group leader.  Note though that this will not happen if the player has selected Reduced Environmental features at the start of the mission, in that case the flag will lie with the fallen leader.

  • Like 1

Share this post


Link to post
Share on other sites

9. Elusive Civilian Population:

I wanted to give a fleeting impression of civilians still being around in some of the towns that have not been destroyed, but only in a way that the player may just happen to see.  Many players I feel sure will not see this and the ones that do might not believe their eyes.  That is the effect I am trying to create.  To do this, every few minutes some civilians will be setPosed to one of many buildingPos locations in a selection of buildings in some of the towns.  As buildingPos are usually placed behind windows the civilians should be visible from outside the building.  After a random delay the civilians are then removed – only to re-appear some minutes later at other randomly selected locations.  The positions used are selected at random, but with the following restrictions: no ground floor location is selected, and no position is selected if it is close enough to the player that he might be able to get to the building before the civilians disappear again.  It is meant to be the sort of thing that might surprise the player when reconnoitring the town from a distance using binoculars or a sniper scope.  Only buildings in Goissy, Larche and Saint Louis are used for this. Note that I have had to work around a bug in FlashPoint that results in buildingPos locations moving a significant distance from their correct location after a save and restart.

This is turned off if Reduced Environmental effects is selected.

 

10. Atrocities:

There are several places on the map where there are individual or groups of bodies.  For many of these if the player approaches them he will get a voiceover from Alexi that is meant to add to the atmosphere of the mission (see also ‘Skill levels’ below).  Atrocities with voiceovers are located at:

-       several individual bodies in Vigny

-       Hut at Db50

-       Bus at Dg47

-       Hut at Gc39

-       Barn at Fb52/53

-       Truck at Fg58/59

-       Piles of bodies: La Pessagne; Arudy; Dourdan and in Stamenov’s compound

-       Dead officers also in Stamenov’s compound

In particular: remember the scene in the intro of a woman being escorted to a barn?  That is the barn at Fb52/53.

Each of these has a voiceover.  Originally I had a separate trigger for each one, but to help reduce lag I reduced this to one trigger in total.  That trigger is moved about periodically (every 30 seconds or so) depending where the player is, and when triggered it checks its location so that it will play the correct voiceover.

This feature is not turned off by selecting Reduced Environmental effects as it adds a lot to the atmosphere and only requires one trigger to implement.

 

11. Random Weapons:

When Alexi meets Sergei (the Russian soldier) at Houdan one of the many things Sergei tells him is that in the south there is no discipline and soldiers even steal each other’s weapons.  To reflect this, approximately 50% (it is random) of all west soldiers in the southern army will be carrying east weapons and vice versa.  This applies to M16/AK74s; sniper rifles; machine guns and rocket launchers.

In addition a small proportion of soldiers in the southern army will be carrying Kozlice shotguns and also a small proportion of the southern soldiers that should be carrying AK74s will in fact be carrying AK47s.  For this reason ammo trucks in the southern army will also carry Kozlice and AK47 ammo.

The code used to do this for M16 and AK74 carriers is as follows:
{if ("M16" in weapons _x) then {_x removeMagazines "M16";_x removeWeapon "M16";_x addMagazine "AK74";_x addMagazine "AK74";_x addMagazine "AK74";_x addMagazine "AK74";_x addweapon "AK74";_x selectWeapon (primaryWeapon _x)}} forEach _tempLoons

{if (("AK74" in weapons _x) and (50 > random 100)) then {_x removeMagazines "AK74";_x removeWeapon "AK74";_x addMagazine "M16";_x addMagazine "M16";_x addMagazine "M16";_x addMagazine "M16";_x addweapon "M16";_x selectWeapon (primaryWeapon _x)}} forEach _tempLoons

 

The above lines convert all M16 carriers to AK74 carriers and then converts 50% of all AK74 carriers to M16 carriers and so will ensure that approximately 50% of all M16 carriers will instead be carrying an AK74, and similarly 50% of all AK74 carriers will in fact be carrying an M16. 

  • Like 1

Share this post


Link to post
Share on other sites

12. Incomplete magazine load-out:

When the resistance fighters join your team they will not have a full complement of ammunition, representing the shortage of ammunition available to them and the difficult times they have been through.  Their ammunition is selected randomly just before they join your team and so could be different each time.

A small percentage of LAW and RPG carriers in the mission will start the mission with only two rockets and one hand grenade instead of having the normal three rockets.

This is meant to be an island where things are in short supply, but I also want each side to have plenty of ammunition to fight with.  The way I dealt with this is through extensive use of {killed} Event Handlers.  Almost every soldier on the island has one or more {killed} Event Handlers that remove magazines, rockets, hand grenades and satchel charges from him at the moment of death.  That way the AI solders can have a full load of ammo for fighting the player and each other, but when the player searches the dead bodies it will appear to be an island that is short of ammunition.  This is deliberate and makes discovering the workings of the trade La Trinite, and the capture of an ammo truck very valuable to the player.

An example of one instruction that achieves this is:

{if (PrimaryWeapon _x in ["M16","AK74","AK47","M60","PK","M21","SVDDragunov"]) then {_x AddEventHandler [{killed}, {_weap = primaryWeapon (_this select 0); (_this select 0) removemagazine _weap;(_this select 0) removemagazine _weap;if (25 > random 100) then {(_this select 0) removeMagazine _weap};(_this select 0) removeMagazine "HandGrenade";(_this select 0) removeMagazine "HandGrenade";(_this select 0) removeMagazine "HandGrenade";if (50 > random 100) then {(_this select 0) removeMagazine "HandGrenade"};(_this select 0) removeWeapon _weap;(_this select 0) addWeapon _weap}]}} forEach (_tempLoons + East_loons)

There are other similar lines for other weapons.  This can all be found in initUnits.sqs

 

13. Officers:

Just in case you have not noticed.  There are no officers in the southern army but each group in the northern army is led by an officer – some are US and some are Soviet officers.  You may have found the bodies of the southern officers in Chapoi when you were there.  This is all consistent with what Sergei tells the player at Houdan.

 

14. Prison break from Chapoi:

On visiting the woman at Dourdan the player will be told about the whole population of Sainte Marie being taken away to Chapoi.  At some point during the mission the civilians that are imprisoned in Chapoi will have an opportunity to escape, and they take it.  It may be that when they escape there are still enemy soldiers around and if this is the case then the solders may open fire on them.  Any civilians that manage to escape from Chapoi will return home to Sainte Marie, and as they are unaware of the significance of the signs around their town will end up being killed by the mine field there.  This will all happen.  The player may or may not see it and may or may not understand the significance if he does see it.  If he remembers what the woman in Dourdan told him he should be able to work it out.  At the very minimum the player should see civilian bodies scattered around Chapoi and find their empty prison.

I have also inserted a voice message from Alexi about this prison break – but this will only occur if Alexi knows about any of the escapees  (his knowsabout level needs to be > 0.000001 for at least one of the civilians for this to happen – I had to experiment quite a lot to get that number.).  It is just sufficient to trigger the message if the player sees the escape from a distance through a sniper scope.  See also Skill Levels below.

 

This is not turned off if Reduced Environmental effects is selected.  It is part of the story and is not very expensive in resources.

  • Like 1

Share this post


Link to post
Share on other sites

15. OFP Bug – Re-arming empty armoured units:

I could hardly believe this when I first came across it.  If an armoured unit has no artillery shells of a particular type, then it cannot get any more from an ammo truck.  So for example if you have an Abrams that has no HEAT shells, either because they have all been fired or because of a removeMagazine command, then going to an ammo truck will not allow it to get anymore.  The same is true for Sabots, but interestingly not for machine gun ammunition.  As far as I can tell this problem afflicts all armoured units that fire artillery shells (ie not Shilka/Vulcan).  It is as if the standard rearm at ammo truck action will only top-up rounds that it finds in the tank, but not add new rounds if none exist – even though the tank would normally have them.  This gave me a problem with this mission as there are several armoured units that are in for repair in each of the two main bases.  Obviously an armoured unit that is in for repair should have all of its ammunition removed.

My solution to this was to write a script that is activated by a {getIn} Event Handler attached to the relevant armoured units.  This script will detect when the vehicle is close to any ammo truck and will give the player the action to rearm.  The script automatically detects what type of tank it is dealing with and gives it the correct ammunition.  I have made it sound exactly the same as the standard OFP rearm action.  The differences between my script and the standard OFP rearm action are:

-       The standard OFP rearm gives the player the action to: ‘Rearm at Ammo Truck’ my script gives the player the action ‘Re-arm at Ammo Truck’.  The hyphen in Re-arm is deliberate so that I will know which script is active.

-       My script is only attached to vehicles that start the mission with no ammo

-       My script can only be activated by the player.

 

16. Sainte Marie minefield:

There is a minefield at Sainte Marie.  The mines are hand grenades that are detonated a random distance from the selected victim and a random distance underground so will not always be fatal.  Features of the minefield are:

-       there are a limited number of mines in the town

-       the time duration between explosions is random and depends on the number of units in the town so that it will sound realistic.

-       only one trigger was used to make it work

The intention here is to give the player the impression of a genuine mine field with mines placed randomly in the town, but to do it is such a way that only one trigger is used so keeping down the load on the CPU.

 

17. ‘Ear candy’ Choppers and mad women:

I wanted to have choppers constantly flying overhead during the early part of the mission and I did not want to have a limitation on where they could go.  In the early stages of the mission the north and south armies are not in contact and there is no fighting between the two.  That does not stay the case for long if there are enemy choppers flying overhead.  Even if the choppers are set to be captive and never fire they will still cause a war.  This is because ground units on guard will attempt to follow an enemy chopper even if it is set to captive.  With this happening it doesn’t take long before opposing groups come into contact with each other and a war starts on its own.

My solution is to have the choppers in the early part of the mission (in fact until the war breaks out) crewed by civilians.  The pilots are both female to help redress the gender balance elsewhere in the mission and in OFP in general.  Once the war starts the civilian crew is exchanged for a military crew and the two civilian gunners are deleted.  The two civilian female pilots are not deleted and will for the rest of the mission follow the chopper waypoints that are moved about randomly so there is no telling where these women will turn up.  Beta testers loved them and when I removed them from one version there was a clamour to have them back.  The beta testers referred to these as ‘mad women’ because of the way they would run blindly through a pitched battle.

This should not detract from the logic of the story.  In the early part of the mission these helicopters are observing the truce (Sergei tells you this when you meet him in Houdan).  Using a civilian crew that gets changed for a military crew once fighting starts between the two sides is quite logical.  Note also that once the fighting starts the choppers will each return to their own base to simulate the crew change before returning to the battle.

 

During the mission if your team members report to you the presence of a “Chopper†then it is crewed by civilians, if they report the presence of a “Hind†or “Cobra†then it has a military crew.

  • Like 1

Share this post


Link to post
Share on other sites

18. Soldiers Surrender/runaway:

I have put a lot of effort into making sure that the mission does not suffer from the lost last loon problem.  There is an extensive script for each side that ensures that when a side is close to defeat all the units of that side converge on its base. and when a side has lost its leader (Stamenov in the south and Andropov in the north) and is down to a small number of soldiers then remaining units of that side will drop their weapons and stop fighting.  In the case of the northern army any surviving soldiers will run to the base and will surrender.  In the south any soldiers that are in or near the wired compound will surrender, all the others will run away.  In addition if any of the southern soldiers that are running away go close to Alexi they will stop running and surrender. 

Under some rare circumstances this can come together to give some very interesting results.  One beta tester (Macguba) so weakened the southern army that the northern army attacked it (see ‘War trigger’ below).  In fact the northern army with the player’s help did so well that it captured the southern base of Chapoi.  This produced a wonderful screen shot of surrendered southern soldiers with their hand on their heads, surrounded by armed northern soldiers.

 

19. War trigger:

Causing the north and south armies to start fighting is a useful way to get help in reducing the numbers of enemy that have to be dealt with.  There are several ways to cause the war to start, mostly these involve the player getting units from each side to see each other.  Examples include:

-       having units chase the player and the player leading them into the territory of the opposing side (this is quite difficult to do safely)

-       attacking the convoy of one side at a location where surviving units may come into contact with the opposite side’s convoy.  In other words at La Trinite.

-       destroying a hut in La Trinite.  When the relevant convoy arrives and discovers the damage some infantry may be dispatched to check it out, with obvious consequences when the other side’s convoy arrives.

-       unbalanced forces:  There is also a way to cause one side to decide that it will attack the other side.  If the player concentrates on damaging one side only, then the forces can become significantly out of balance and the strong side may then decide to launch an all out attack on the weak side.  This check is carried out as follows:

o   The strength of each side is assessed.  This is done by counting the number of living individuals (not vehicles) of that side and then adding a bonus for certain of the armour units that are still operational.

o   If the strong side outnumbers the weaker side by more than a certain ratio then the strong side will, if they know they are strong, launch an all out attack on the weaker side.

o   The ratio above which the strongest side will attack is determined as follows:

§  1.5

§  + 0.2 if the leader of the weakest side is still alive

§  - 0.2 if the leader of the strongest side is still alive

§  - 0.1 for each one of the three border towns that the weakest side has lost control of.  Control is determined by which flag is flying there.

§  + a random number in the range 0 to 0.5

(For example: if Stamenov is dead, Andropov is alive, the civilian flag is flying at Arudy and Dourdan and the Southern army is the weakest then the trigger level for the northern army to attack is:
(Strength of southern army) * (1.5 – 0.2 – 0.1 –0.1 + random 0.5) < (Strength of the northern army)

o   The check is repeated approximately every 5 minutes.

o   On its own, achieving the superiority shown above will still not be sufficient to cause the strong side to launch an all out attack.  It is necessary that the strong side also has the ability to obtain the intelligence that it is sufficiently strong.  This is determined as follows:

§  If the two sides are, or have been, fighting then each side is assumed to know the strength of the other.

§  If a side has a helicopter flying then it is assumed to know the strength of the other side.  This is consistent with what Sergei tells Alexi in Houdan.  Sergei is clearly someone who should be listened to.

Note that bringing down a chopper too soon will prevent that side from launching an unprovoked attack on the other side.  The player needs to take care and not just rush around blasting things.

In the case of a war starting by the two sides coming into contact (not an all out attack) then most of the fighting will take place at that point of first contact as guard units from both sides get sucked into the conflict.  If that happens each side will also attack the other’s main base with a single (but powerful) armoured group.

  • Like 1

Share this post


Link to post
Share on other sites

20. All out attack - Plan of attack:

In the case of one side determining that it is strong enough to mount an all out attack on the other side it will use the following plan of attack (note that ownership of a town is determined by which flag is flying there):

Andropov (Northern Army):

Two infantry groups and an armoured group will attack La Pessagne.  Once the town has been captured one infantry group will remain in occupation and the remaining forces will move on Chapoi.

Three infantry groups will attack Arudy.  Once the town has been captured one group will remain in occupation and the remaining forces will move on Chapoi.

Six infantry groups and an armoured group will attack Dourdan.  Once captured one infantry group will remain in occupation and the remaining forces will move on Chapoi.

A separate armoured group will attack Chapoi directly.

If the attacking army suffers significant casualties then up to four additional infantry groups will be released one at a time from the forces at the airbase to join the attack on Chapoi.

Helicopters will operate independently.

A maximum is placed on the number of units attacking Chapoi so as not to generate too much lag if they all arrive there at the same time.

Stamenov (Southern Army)

Ignore Goisse.  Stamenov is not a military genius but he is probably right, if he has enough strength to attack then Andropov must be so weak that Goisse cannot be a threat – can it?  In addition the airbase is a tough nut to crack, so Stamenov will need to concentrate his forces on this task.

Four infantry groups attack Larche.  Once the town has been captured one group remains in occupation and the remaining forces join the attack on Saint Louis and the airbase.

Seven infantry groups (plus any coming from Larche) and two armoured groups attack Saint Louis.  Once the town has been captured one infantry group will remain in occupation and the remaining forces will move on the airbase.

A separate armoured group will attack the airbase directly

If the attacking army suffers significant casualties then up to four additional infantry groups will be released one at a time from the forces around Chapoi to join the attack on the airbase.

Helicopters will operate independently.

A maximum is placed on the number of units attacking Saint Louis and the airbase so as not to generate too much lag if they all arrive there at the same time.

A Counter-attack

If one side initiates an attack as described above and either due to some misfortune on their part or the action of the player they suffer significant losses then the conditions may become favourable for the other side to initiate its own attack.  If this happens there will be a counter-attack.  In practice this is highly unlikely, but the coding of the mission will allow this to happen if the correct conditions arise.

Randomness

Note that the Northern attack on Chapoi and the Southern attack on the airbase use several groups that are also ‘on Guard’.  These groups may be distracted from their attack to deal with the player and his team should they start getting involved or to deal with other enemy units that have been detected so the whole thing is quite unpredictable.

 

21. Weather:

The rain, overcast and fog levels are controlled constantly throughout the mission.  The rain intensity is dependant on the overcast level.  The overcast level and the fog level are each set every 60 seconds.  For both the overcast and fog there is an initial random period at the start of the mission when the level remains constant.  After this initial period the level follows a sine wave so ensuring the intensity reduces and increases smoothly throughout the mission.  There is one additional piece of sophistication:  If left as described above the weather at some point late in the mission could be as bad as it is at the start of the mission.  In order to give the player a different experience later in the mission the maximum level of overcast and fog will reduce as the player makes progress.  In fact the maximum levels of each will reduce as the size of the smallest of the opposing armies diminishes.  So killing a soldier from the side that is currently the smallest will result in a small improvement in the future weather, killing a soldier from the side with the largest army will have no effect on the future weather.  This is the only illogical thing that I know of in the mission, but it results in a good weather pattern.  It means for instance that the player cannot leave the mission to soak for several hours so as to get better weather.

Despite having random elements the weather model ensures that the fog and overcast levels are both at a minimum at about 16:15.  As this is close to sunset it should be quite pretty by then.

This is all controlled by:
weather.sqs and
fog.sqs

  • Like 2

Share this post


Link to post
Share on other sites

22. Convoys and Patrols:

Each side has one patrol consisting of four M2 jeeps and one convoy consisting of an APC (Bradley or BMP), a 5t truck, an ammo ural, a ural (used by one of the infantry groups that travel with the convoy) and a Vulcan.

Each of the jeep patrols follow a circular route.  The routes are:

South patrol: East from Chapoi, then north to Dourdan, west to La Passagne, then south and east back to Chapoi.

North patrol: north and west from the fuel station north west of the airbase to the most north westerly T junction, south and west to Goisse, south and east to a T junction, north to another T junction, east to Larche and hence on to Saint Louis and then back to the fuel station.

The convoys run from their base (Chapoi or the airbase) to La Trinite and back. 

The jeep patrols are refuelled and repaired when they get back to their fuel station base (kill the fuel station and there will be no refuelling).  The convoys are refuelled and repaired when they are back at their own base with its own fuel station.  Again, kill the fuel station and the refuelling will not happen.

All simple stuff, but getting it to work reliably took and age.  The problems that needed to be dealt with are:

Convoys meeting at La Trinite: Clearly the south convoy has a much longer journey than the north convoy so if it were left to run unconstrained the two convoys would eventually arrive at La Trinite at about the same time and a war would start.  This is dealt with by only allowing one convoy at a time to be en-route to La Trinite.  So as soon as the south convoy leaves Chapoi the north convoy is prevented from leaving the airbase.  The north convoy will stay at the airbase until either the south convoy leaves La Trinite heading south or the south convoy is destroyed.  Similarly the south convoy will stay at Chapoi until the north convoy either leaves La Trinite or is destroyed.  In setting this all up care was taken not to have a situation where by random chance both convoys arrive at their checkpoint simultaneously, are told they can go and then each set the flag stopping the other one a millisecond too late for it to be effective.  I also had to avoid the problem of both waiting for the other and so getting stuck.  This was done as follows:

-       the north convoy uses two waypoints for this.  At the first it checks to see if it is safe to proceed and if it is it sets a flag that will prevent the south convoy from leaving its base, at the second waypoint it checks again to see if it is safe to proceed.

-       the south convoy uses only one waypoint for this.  At that waypoint it checks to see if it is safe to proceed and if it is it sets the flag to stop the north convoy.

If both convoys use the two waypoint method it is possible for both convoys to get stuck at their second waypoint waiting for the other convoy.  If both convoys use the one waypoint method it is just possible that each will arrive at the waypoint at exactly the same time, find that it is safe to proceed and set the flag to stop the other too late for it to have any effect.  The selected solution is the only one that will work reliably.

Vehicles sharing the same piece of road:  The routes of the jeep patrols use some of the same road as the convoys.  In the north the road from Saint Louis east to the T junction by the airbase is used by both the jeep patrol and the convoy.  In the south the road shared is from Chapoi to Dourdan.  Many times the two groups of vehicles can successfully negotiate their way past each other, but often they get into difficulties.  As I want this island to run forever if left alone even an occasional problem is not acceptable.  To make this work each group of vehicles has some waypoints where they check to see if it is safe to proceed and where they set flags telling the other group that it is not safe for them.  Virtual traffic lights in other words.  Obviously care was taken to avoid any possibility that both groups would end up waiting for the other or that both groups would simultaneously find that it was safe for them to go when it wasn’t.

This introduces surprisingly little delay into the journeys of the vehicles.  In the north the stretch of road involved is very short.  In the south the jeep patrol can usually do two circuits for every one of the convoy.  The pattern that usually develops is:

-       the south jeep patrol is waiting at the fuel station west of Chapoi, the convoy arrives at Chapoi and gets off the road so releasing the patrol

-       the patrol is faster than the convoy so shortly after passing Chapoi the patrol releases the convoy – which then sets off for La Trinite.

-       the patrol is sufficiently fast that it will get back to its fuel station just as the convoy arrives at La Trinite.

-       the patrol then continues on its second circuit without delay and will release the convoy to pass through Dourdan once it has cleared the town.

-       the patrol gets back to the fuel station and has a short wait until the convoy reaches Chapoi, after which the whole cycle is repeated.

Non-lead vehicles getting stuck:  The OFP route finding routine, especially for vehicles that are close behind another vehicle can occasionally cause the non-lead vehicles to run off the road, get stuck behind a tree or two vehicles can get stuck both facing each other.  Quite often they will eventually sort themselves out, but sometimes they cannot.  In a mission that lasts a few minutes this would hardly ever occur but in this mission these vehicles need to keep running for hours if necessary.  To solve this I have scripts that will check each of the convoys and each of the patrols at approximately 5 minute intervals.  The scripts check the distance between each vehicle and the lead vehicle.  If the distance exceeds a set amount then the vehicle is setPosed an appropriate distance behind the lead.  This is not done if:

-       the vehicle is damaged such that it cannot move

-       the vehicle has no driver or has a driver of a different side (clearly if the player has captured a vehicle then this script should not apply to that vehicle!)

In all the beta testing this never caused a problem with the player noticing the setPos in action.

Lead vehicles getting stuck:   Very rarely a lead vehicle will run off the road and in its attempts to get back on to its correct route it may find itself facing one of the other vehicles in its group.  In this situation neither vehicle can move and they will be completely stuck.  To deal with this I have a script that checks to see if the lead vehicle has been stationary for a long period and if it has it moves it a few meters to one side, if it remains stuck it moves it twice that distance to the other side, then three times that distance to the first side and so on.  Usually only the first move is necessary to clear the problem.

Vehicles being damaged:  Occasionally a vehicle may run off the road and hit a tree at some speed.  The vehicle may have taken that corner 99 times but on the 100th it crashes.  There is one particularly nasty hairpin bend west of Larche that has put many jeeps out of action.  To deal with this the jeeps descend that stretch of road travelling slowly, and also the trees at the bend that cause the damage are destroyed by a setDammage 1 at the start of the mission.

In addition, vehicles may simply collide with each other or some unpredictable obstruction and be damaged so much that it cannot move.  To deal with this the vehicle monitoring scripts also check to see if any vehicle has been damaged such that it cannot move, and if it still has crew alive (they will have got out as soon as the vehicle became unable to move).  Any such vehicle will be repaired and the crew will then get back in and continue its journey.  This is to simulate running repairs being carried out by the crew.  For reasons of mission design this problem had to be solved differently for the jeep patrols and the convoys

 

All of the above resulted from many weeks of soak testing the mission.  I wanted to make sure that the vehicles would keep running forever if the player did not do anything.  I travelled many miles as the gunner in each of the jeep patrols and as the gunner in the Vulcan in each convoy.  In de-bug mode the mission will constantly display the location of the key units in the mission on the map (a capability disabled in the released mission).  I watched this for hours to see what was going on.  Surprisingly the mission could run for 20+ hours without a problem and then suddenly one would occur.  Eventually I got it so that I could start the mission on Sunday evening and it was all still running perfectly the next weekend.

 

23. Convoy guards:

 

The convoys each carry two groups of infantry.  If on its journey the convoy detects an enemy (resistance or north, for the southern convoy; resistance or south for the northern convoy) then the infantry units will disembark and attack the enemy.  Once the enemy is dead or they have lost contact, the infantry will re-board the convoy and it will continue on its journey.  When each convoy gets to La Trinite these groups of infantry will disembark, search the town and then re-board their vehicles.  While they are in the town the contents of the ammo crates in La Trinite will be swapped with the contents of the ammo truck in the convoy.

  • Like 1

Share this post


Link to post
Share on other sites

24. Re-boarding the convoy at La Trinite:

Most of the time the convoy guards successfully re-board their vehicles at La Trinite, but just occasionally they do not.  I have a script that detects when this happens and physically puts them into their truck.  In all my play testing and in all the beta testing this has never caused a problem with the player noticing it.

 

25. Another strange bug:

There appears to be something strange happening with the GetIn/GetOut; Load/Transport Unload waypoints at La Trinite.  They worked perfectly during months of beta testing, then they failed with v1.30.  The type of failure was strange.  The convoys would run fine for a time but then on the fourth of fifth visit of the southern convoy to La Trinite one of the infantry groups would not get out – even though they had done so on previous trips to La Trinite. 

I solved this problem by replacing all the GetIn/GetOut and Load/Transport Unload waypoints with Move waypoints, and using scripts to cause the infantry to get in and out of their vehicles.

 

26. Music players in vehicles:

Most vehicles have a music system installed.  When the player gets in any vehicle with a music system he will be given the option to turn the music on.  I have selected several OFP tracks that I felt were suitable for driving plus a track from the same piece of music that was used in the intro.  These tracks are in a set sequence, but each time the system is turned on it will select a track at random to play, after completing one track the next in the list is played.  When the last track on the list is finished the music will go back to the first track on the list, looping for as long as the system is turned on.  I found this to be better than selecting a random track each time as that resulted in too much repetition even when I prevent the same track from being played on consecutive occasions.  The player is given an action to turn the music off while in the vehicle.  The music will also be turned off when the player exits the vehicle or the vehicle is so badly damaged it cannot move.

The thing that took most time with this was getting the volumes correct for different vehicles.  The sound of the engine differs widely for the vehicles available in Flashpoint and so that the music does not swamp, or be swamped by, the noise of the engine it is necessary for the script to detect which vehicle the player is in and set the volume of the music at an appropriate level.

A vehicle that is too damaged to move will not have any music capability.  Music capability will be restored when the vehicle is repaired.  The only vehicles in the mission that do not have music capability are police jeeps, motorcycles and boats.

 

27. Environmental sounds:

I have tried to enhance the atmosphere of the mission by making use of some environmental sounds.  There are several locations where, under certain circumstances (usually no enemies present), the player may hear the sound of birds or of a dog barking.  The bird song used is chosen at random so as not to be predictable.  During the hours of darkness an owl is used instead of any of the other birds.  During the day there will be no birds if it is raining.  I originally tried to do this using sound objects, but there are some problems with this: 1) it is not possible to create or move a sound object during the mission; 2) It is not possible to turn the sound off if it is coming from a sound object; 3) after a time a sound object will stop making its sound.  As a result I have had to use triggers that are moved to a random position near the player, taking care to ensure the trigger was placed at ground level (the default is for FlashPoint to place a trigger that it has moved at sea level and of course that could result in the sounds not being heard because the source of the sound would be too far away).

I have also created the sound of electricity generators.  One is in a building in the airbase and one in a building in Chapoi.  If the building is badly damaged the generator will stop.  This is implemented using only one trigger that is moved to the correct location depending on where the player is.  Crawling round Chapoi in the dark dogging Black Ops with that nose in the background I find quite spooky!

In some circumstances the player may come across the sounds of a pack of wolves.  They mainly only occur when visibility is limited.  Occurrence of the wolves is very unpredictable as follows:

-       the wolves will usually only occur when there is poor visibility either because it is dark, or quite foggy or it is raining quite hard, or at high altitudes.  There is a small probability that they will occur in times of good visibility just to make them even more unpredictable.

-       they do not occur below 100 metres above sea level.

-       the number of wolves in each pack is a random number depending on how foggy it is (more fog can mean more wolves), how rainy it is (more rain can mean more wolves) and whether or not it is night time (more wolves may be about in the night).

-       the distance of the wolves from the player is also a random number where the maximum value allowed is reduced in the dark hours of the night and also as fog and rain intensity increase.

In summary, the worse the visibility the more likely the player is to hear a wolf pack, the more wolves there are likely to be in the pack and the closer the individual wolves are likely to be to the player.

Many players will complete the mission before it gets dark, but if they don’t they could be in for an interesting experience, especially if they venture to high altitudes in bad weather during the night.  I can vouch for this personally, my playing style is quite slow and I often play through to dawn the next day.

The sound of wolves used is a mixture of the sound files that come with the game and actual recordings of real wolves.  One of the sounds is of a wolf growling.  This occurs about 1% of the time.  Even though I made the mission this sound occurring close to me while playing he mission still causes me to jump.

To understand the wolves more fully examine the following scripts in the sequence:

1.     WolfSound.sqs:  This creates the sound of a single wolf.  This script is called from WolfPack.sqs;

2.     WolfPack.sqs:  This creates individual wolves to make up the wolf pack.  This script is called from CheckForWolves.sqs;

3.     CheckForWolves.sqs:  Under certain conditions this creates a wolf pack.  This script is called every 5 minutes from: Housekeeping.sqs

All of these sounds are turned off if Reduced Environmental effects is selected.

  • Like 2

Share this post


Link to post
Share on other sites

28. Visiting the offshore islands:

The player starts on the shore next to a boat he has just arrived in.  The boat is damaged, has no weapons and has very little fuel.  As this is the boat he is supposed to have just got out of I did not want to lock it to prevent the player getting back in.  If I did nothing further there would be nothing to stop the player sailing off to any of the offshore islands and finding a whole range of units, civilians etc. that will be brought onto the island later in the mission.  I could have created a shell to destroy the boat if the player used it but that felt a little crude.  Instead, the speed of the boat is checked every few minutes and if it is moving I have a script that will create a fully armed, crewed and flying chopper and set it to target the boat.  Creating a crewed chopper in the air was not a trivial task, but I wanted to be able to create it over the sea.  The chopper will either be a Hind or a Cobra, selected at random.

I have also set the fuel level of the boat to be very low so as to discourage the player from using it.  Apart from finding his uncle he would also need to find some fuel to return to his family.

 

29. Messages when re-organising the team:

I have provided the facility for the player to reorganise his team so that for example he can choose his number 2, put the medic I the middle and the civis on the outside etc.  When doing this team members will speak to the player.  The messages are selected randomly from a list, but the list changes dynamically during the mission as progress is made and individuals are killed, or join the squad.  Access to the woman at Dourdan is only available to the player by being told about her when reorganising the team.  Sergei is the one with the information, but other members of the team will report to you what he told them about her during subsequent conversations.  The background music chosen while all this is happening is different from the list used for driving to.

 

30. Skill levels:

The skill levels of the team reflect the fact that, at the start, several of them are untrained civilians and others are trained fighters.  However during the mission the skill levels of the team members increases as a result of certain events.

Skill Levels are:
 < 0.25                                    Novice
 >= 0.25 and <= 0.45            Rookie
 > 0.45 and <= 0.65            Recruit
 > 0.65 and <= 0.85            Veteran
 > 0.85                                    Expert

 

The initial levels are:
Alexi                         0.10(as the player this is automatically raised to 1.0)
Karl                         0.66
Ruslan             0.06
Erik                         0.04
Irena                         0.04
Yuri                         0.66
Marek                         0.40
Pavel                         0.30
Sergei                         0.50
Viktor                         0.80

 

The skill level of all current team members increases when:
- 1st civilians arrive at lodge                                                 0.02
- 2nd civilians arrive at lodge                                                 0.02
- north and south start fighting                                    0.03
- Sergei joins the team                                                            0.02
- speak to the woman at Dourdan                                    0.02
- visit the house in Larche                                                0.03
- visit the camp at Le Port                                                0.10
- raise the first civilian flag                                                0.03
- a leader (Stamenov or Andropov) is killed                        0.30
- one side is destroyed                                                            0.30
- each atrocity visited                                                            0.02
- observe the escape of
     prisoners from Chapoi                                                0.10
- every 45 minutes                                                            0.015
    (equivalent to 0.02 per hour)
- team rating increases by 3000                                    0.10
    (equivalent to killing 15 normal loons)

Note that the above skill level increases are multiplied by:
0.5            for Ruslan
0.6            for Erik
1.5            for Irena
0.5            for Pavel
0.8            for Yuri
0.7            for Marek
So not all the team members will progress at the same rate.  Irena is a quick learner, and Ruslan is distracted by what happened to his wife.

The team rating is calculated as the sum of the ratings of all members of the team.  The mechanics are slightly complicated as I did not want the team to suffer significantly if a highly rated member was killed.  For this reason I have used the increase in the average rating (total rating /number of team members) between checks to determine if skill levels should increase.

It also seems there are some inconsistencies in rating kills.  Kill a normal soldier and the rating of the killer increases by 200.  Killing a West officer is worth 500 but killing an East officer is worth 1000.  Killing vehicles will also give a rating increase to the killer over and above that resulting from killing the crew.

Killing the enemy is one of the quickest ways to increase the skill level of the team, but be aware that kills made by driving over them or by use of the custom AV and AP mines do not count.

There is a time element to the increase in skill level of each member of the team representing the effect of mutual learning from each other.

 

Increased skill levels for raising the Malden flag and for visiting the atrocities are meant to represent the effect of improved morale (flag), or increased anger and determination (atrocities) 

  • Like 1

Share this post


Link to post
Share on other sites

31. Save Games:

The player starts with 42 savegames and does not get any more.  The reason for this is to remove the hint messages that would spoil the atmosphere of the mission if savegames were to be added during the mission.  I selected 42 because that is the answer to Life the Universe and Everything.  (See: http://en.wikipedia.org/wiki/The_Answer_to_Life_the_Universe_and_Everything#The_Ultimate_AnswerAll my calculations of the number of savegames came out close to 42 so I assumed the difference between 42 and the number I was calculating was due to my calculating error.

 

32. Visiting the locations out of sequence:

There are two groups of civilians that the player is told about in the early stage of the mission.  He then visits them to complete his objectives.  It is important that the story flows that way, so if the player were to visit these locations before he has been told about them it would create a significant continuity problem in the cutscenes.  I did not wish to write cutscenes for every unlikely eventuality so instead, if the player approaches either of these locations before being told about them environment sounds of M16 and AK74 firing will begin at several locations around him and few (random) seconds later the player will hear the sound of a bullet hitting a body (chosen at random) and he will then die.  To make sure of his death I create bullet inside his body as well as doing a setDammage 1.  The mission is large enough without adding cut scenes to deal with aberrant players.

A similar thing happens if either of the enemy bases or the concentration camp at Le Port are visited before the player goes to the mountain lodge.  This is most unlikely and so this solution is unlikely to impact any but the most unusual player.

This was achieved using one set of triggers that are moved about depending on which of these no-go areas the player is closest to.  These triggers are deleted when the first group of civilians arrives at the mountain lodge, from this point on there are no no-go areas.

The woman at Dourdan can be visited at any time and the dialogue will be appropriate.

If the player goes to Houdan before he has been told about the place he will not find Sergei or his weapon.  That is logical Sergei will be out on one of his walks – or visiting the woman at Dourdan.

Visiting the house in Larche will only generate a voiceover if the player has previously been told about the significance of the house by the woman at Dourdan.

 

33. Different dialogue in the cutscenes:

In this mission the player has a great deal of freedom to decide what to do and when to do it.  As a result it has been necessary to create alternative dialogue for several of the cutscenes to deal with the various possibilities that might arise, for example:

-the player has or has not done certain things before the scene (for example visited La Trinite)

-certain individuals might not be alive when the scene happens (for example the woman in Dourdan asks after Sergei.  The response and the subsequent conversation is different depending on whether or not Sergei is alive badly injured or uninjured at that time.)

-the war has started or not

This is particularly evident in the cutscene at the La Port concentration camp.  When the player gets there.

Le Port Concentration Camp cutscene(s)

There are several options for how this scene will go, and it is possible to have more than one scene if the player visits the camp more than once.

If the player arrives at the camp before he has visited the second group of civilians and collected Pavel (the medic), then Alexi and Viktor (the medic in the camp) will have a conversation and Viktor will join the team.  There will be no more scenes if the player revisits the camp.

If Pavel has already joined Alexi and is still alive when the player first gets to the camp then after a conversation in which Viktor explains that he and Pavel both trained together, Viktor will remain in the camp.  Providing Pavel is not subsequently killed any future visits to the camp by the player will not result in a cutscene, but if Pavel is killed and the player then returns to the camp there will be another cutscene and Viktor will join the team.

If Pavel has already joined Alexi, but was killed before Alexi first visits the camp then the cutscene will involve a conversation between Alexi and Viktor and Viktor will then join the team.  There will be no more scenes if the player revisits the camp.

So in summary:  The first time the player arrives at the Le Port concentration camp without a medic in his team Viktor will join him and so the team will acquire a medic.

 

34. State of bodies:

There are several groups of dead bodies in the mission.  A simple setDammage 1 will leave them all face down.  I want some variety in the state of the bodies and so wanted to have several of them face up.  There are several face up switchMove positions possible, I have chosen two of them.  At the start of the mission I have a script that will randomly put some of these bodies into one of the face up positions.  Approximately 40% of the bodies will be face down and 30% of them face up in each of the two possible face up positions.  The code to do this is:

_bodies = (units group Chapoi_Officers) + (units group Hut3_civ1) + (units group Dourdan_civ1) + (units group Arudy_civ1) + (units group LaP_civ1) + (units group Chapoi_civ1)

 

{if (43 > random 100) then {_x switchmove "CombatDeadVer2";_x setDammage 1}} forEach _bodies

{if (30 > random 100) then {_x switchmove "CombatDeadVer3";_x setDammage 1}} forEach _bodies

Why the 43?  That line will put 43% of the units into the Ver2 position, but the next line will change 30% to the Ver3 position.  The end result is: 40% in the default face down position, 30% on the Ver2 position and 30% in the Ver3 position.

  • Like 1

Share this post


Link to post
Share on other sites

35. Driving over soldiers:

There is a feature of OFP that allows the player sometimes to get away with killing soldiers by driving over them without the soldiers reacting to the player and killing him.  There are several factors that seem to impact on this – civilian vehicles are a particular problem, as is low visibility say because it is night time.  I have addressed this problem by having a script running the whole time the player is in a vehicle.  This script will continually check for the presence of nearby soldiers and will reveal the player to them.  It doesn’t always result in the player being shot at, but it does often enough to discourage players from doing it.

 

36. Avoiding conflicting messages:

The player has a lot of freedom to do things in a sequence that they decide, as a result I cannot predict when each of the possible cutscenes will be triggered.  In addition there are many voice messages in the mission that will occur under certain circumstances.  I also cannot predict when these will occur either.  As a result it could be possible for some voice messages to overlap, or to occur during a cutscene.  This would produce a clumsy result.  To avoid this I have a global variable called okForMsg that is set to true in init.sqs and the code for most cutscenes and voice messages start with:

@okForMsg
okForMsg = false

and end with:

okForMsg = true

There are some messages that must happen irrespective of what else is going on, the voice of the woman pleading not to be shot by Stamenov is one of these.  In these cases I do not check the value of okForMsg.

 

37. De-Bugging and Testing:

The mission starts in the early dawn, it is dark, raining and it is foggy, 4x speed is not allowed and certain cutscenes etc are not available until certain other things have happened.  So how did I test a mission in this state?  Well the answer is I didn’t.

If you look in the mission editor you will see the weather set to sunny, there is no fog and the time is midday.  If you look in init.sqs the first lines of code are:

DeBug = false
_setEnvironment = true

These are important variables governing the state of the mission.  If _ setEnvironment is set to false then the weather, fog level and time of day will be left at the setting given in the mission editor giving excellent visibility.

If DeBug is set to true then many things happen.  Hint and sideChat diagnostic messages are turned on, 4x is allowed, certain scripts are disabled and a unit position monitoring script is turned on.  This unit position monitoring script will display the location of all key units on the map and update the position every couple of seconds.  In the release version of the mission this script will still run if DeBug = true but the location of the units will not be displayed because I have deleted the relevant markers to help avoid the large savegame bug.  To turn this feature back on you will need to create some markers in the mission editor.  Look in showPos.sqs to see the names of the markers required.  I used red for ‘e’ markers and green for ‘w’ markers.  Convoy vehicle are denoted by ‘c’ and patrol jeeps by ‘p’.

 

If you wish to test any of the things described in this document in the mission editor then please be aware that:

-       the mission takes a bit of time to initialise.  There are a lot of scripts running that initialise things in the first few seconds of the mission, for example the content of ammo crates and the state of health of some armour units.  I delay some of these initialisation scripts to spread out the demand on the computer at the start pf the mission.  I also delay the start of the main loop in ‘Housekeeping.sqs’ by nearly 2 minutes at the start of the mission.  As it is Housekeeping.sqs that moves the triggers to give the player most of the voiceovers you would need to wait at least this long before you could get the voiceovers in a reliable way.

-       certain things can only happen in a particular sequence and so what you wish to test may not be possible without making other changes.  An example of this is meeting Sergei.  If the player goes to Houdan before the second mountain lodge cutscene when the player is told about the need to search Houdan then Sergei and his weapons will not be there (this is fine from a plot point of view – he has just gone for a walk or to visit the woman in Dourdan).

See the Appendix 1 for detailed instructions on how to test most things in the mission.

 

38. Other stuff:

Other stuff that might have been missed:

-       One of the guards in the house in Vigny is sitting down on the red recliner chair with his rifle on the floor beside him.  If he is killed in that position he will die realistically.  If one of his mates spot the enemy (you), or is killed then he will stand up, bend down and pick up his rifle then go to COMBAT.  Only the most observant player will notice this.

-       At the end of the cutscene with Tatyana the location of the mountain lodge appears on the map.  This should not be a surprise.  Alexi is a family member and if you look at the photograph of Nikolai in the briefing you will see that it was taken at the lodge.  Alexi is family, knows about the place.

-       When reorganising the team Ruslan tells you that he does not want to go to Vigny until the island is clear of soldiers and he can bring Tatyana home in peace.  If you take Ruslan too close to Vigny he will object (you will get a voiceover) and will then move off away from the town.

-       If a player gets into a vehicle that is too damaged to move, or has no fuel, or if he is in the vehicle when it is damaged sufficiently that it cannot move or it runs out of fuel while the player is in it there will be an appropriate voiceover.  There are two possible voiceovers for ‘too damaged to move’ and two for ‘out of fuel’.  The voiceover used is selected at random, because there are only two voiceovers each there may be some repetition, but it is unpredictable. 

-       You will get only one message for each vehicle for each time it is too damaged to move or it runs out of fuel.  If you repair or refuel it and then later damage it again or run out of fuel again you will again get an appropriate message.  This can go on indefinitely.  In other words repeatedly getting into a vehicle that is damaged or out fuel will not result in irritation from messages being repeated, but if it is subsequently fixed then the messages will come back when relevant.

-       The mission is intended to be played in Veteran mode.  If the player starts the mission in Cadet mode they will receive a message recommending them to change their settings.

-       For all the cutscenes except two Alexi has his NV Goggles removed if he has them.  The two exceptions are the scene with the woman in the attic in Dourdan and the scene at the concentration camp at Le Port.  There is no source of light for either of these so if it is dark enough for Alexi to wear NVGs when he gets there he will certainly need them on to see the cut scene.

-       Some cutscenes involve the death of one or more units (three soldiers being shot in the intro and Tatyana being killed at Vigny).  Rather that use setDammage 1 I have camcreated a bullet within their body to make the whole thing look more realistic.

-       In the end scene looking down on the mountain lodge – the civilians that were rescued in the early part of the game run from the lodge ready to start their new life.

-       There are several mixed armour/infantry groups.  These groups comprise a main battle tank (Abrams or T80) and APC (BMP or Bradley) and a squad of six infantry.  The infantry start off in the APC, but will automatically dismount when close to the enemy, and then remount again if the group sets off on a long journey.  This technique I obtained from Macguba’s Un-Impossible mission.

-       The first message you get from each of your team when you reorganise them is predetermined.  After that the messages are selected randomly from a list of available messages.  These available messages change throughout the mission and can depend on certain events having happened – or not happened.

-       The radio message you get while at the mountain lodge can only be got by going into the ruin and activating the Turn on radio action.  However if before listening to the radio the player goes too far from the lodge then one of his team will alert him to the message on the radio.

-       All the streetlights on the island have been turned off

-       When the Southern convoy is completely disabled a road block will be erected just north of Dourdan using the wire and fencing that is lying at the side of the road.

-       All the fuel stations other than those guarded by soldiers, have had their fuel removed.

-       In the final scene there is some background music while you are shown your fallen comrades.  There are several suitable tracks.  The track used is selected on the basis of how long the music is and how long it needs to play for.  So the track chosen can be different depending on how many casualties you have had in your team.

-       Getting enough illumination on the graves of Uncle Nikolai and his friends in the mountain cut scene was a problem.  To solve it I have an unlit fire nearby, the fire is lit just before that part of the scene and then it is deleted as soon as that part is finished.

-       Did you visit Sainte Marie?  Did you hear the music drifting from a music system left on by one of the inhabitants when they were hauled away by Stamenov’s soldiers?  This is turned off if Reduced Features is selected by the player at the star of the mission.  Even when not turned off it sometimes is not there.

-       Were you curious about the road block on the road leading to Le Port?  If you visit Le Port you will find a concentration camp and a cutscene

-       Did you visit the woman in Dourdan?  Getting a cutscene to trigger only when the player is on the top floor of a building is not a trivial task.  Player getPos select 2 gives the distance the player is above the floor he is currently on!  I spent ages getting this so the cutscene would trigger when the player got to the top of the ladder – only to find that due to a bug in FlashPoint after saving and restoring the mission the action to climb the ladder is not available to the player!  As a result of this I now start the cutscene when the player reaches the bottom of the ladder, and at the end of the scene he is deposited back on the same floor.

-       You may have noticed some bottles on the table in Tatyana’s house in Vigny.  If the table is destroyed the bottles would normally stay where they are suspended in space.  I have attached a killed Event Handler to the table to move the bottles onto the floor to give a more realistic effect.  I have done something similar to the medical cabinet that can be found in the northern hut at La Trinite.

-       I presume you found the AV and AP tripwires and detonators at La Trinite, the map of Larche from the woman in Dourdan, and that you experienced the dialog for reorganising your team.  If not then you must have missed half of the mission.

 

THobson
trevor_hobson@hotmail.com

  • Like 1

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×