Enhanced Configuration Project: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "mw-mw-collapsed" to "mw-collapsed")
m (Text replacement - "[[Image:" to "[[File:")
 
(19 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[Category:Operation Flashpoint: Community Mod Pages]]
{{GameCategory|ofp|Community Mod Pages}}
= Enhanced Configuration Project (ECP) =
= Enhanced Configuration Project (ECP) =
The Enhanced Configuration Project aims to increase the potential of OFP through providing enhanced configuration files and associated scripts that run without any in-mission triggers or code.
The Enhanced Configuration Project aims to increase the potential of OFP through providing enhanced configuration files and associated scripts that run without any in-mission triggers or code.


{|class="wikitable mw-collapsible" style="width:70em"
{| class="wikitable mw-collapsible" style="width:70em"
! <h3 style="text-align: left;">What is the ECP:</h3>
! <h3 style="text-align: left;">What is the ECP:</h3>
|-
|-
|
|
[[Image:Ecp_cover_medium.jpg|thumb|164px|left|ECP Cover]]
[[File:Ecp_cover_medium.jpg|thumb|164px|left|ECP Cover]]
===The ECP provides:===
=== The ECP provides: ===
* Improved gameplay
* Improved gameplay
* Big brained AI
* Big brained AI
Line 14: Line 14:
* Improved sound
* Improved sound
* Realism enhancements
* Realism enhancements
[[Image:ECPBMPinstaller_vertical.jpg|thumb|164px|left| ECP installer]]
[[File:ECPBMPinstaller_vertical.jpg|thumb|164px|left| ECP installer]]
<br>
<br>
<br>
<br>
Line 34: Line 34:
In addition to increasing the enjoyment of the game for individuals, we aim to provide an open-source enhanced configuration for use by all mods.
In addition to increasing the enjoyment of the game for individuals, we aim to provide an open-source enhanced configuration for use by all mods.
|}
|}
=Using the ECP=
= Using the ECP =


==Core Features==
== Core Features ==
There are many reasons why you should use the ECP mod instead of standard OFP. OFP provides a rich scripting language and configuration system, and we have tried to push the envelope with regards to in-game effects without you requiring a P4 3.0 GHz in order to enjoy it. The ECP does not provide new units or terrain. Our overall goal is to improve the quality of gameplay through configuration modification and effects scripting. We'll leave the addons to those who are skilled in that area, and we offer the ECP as a backbone to whoever is interested. The ECP (core) provides the following features across all OFP missions and campaigns.
There are many reasons why you should use the ECP mod instead of standard OFP. OFP provides a rich scripting language and configuration system, and we have tried to push the envelope with regards to in-game effects without you requiring a P4 3.0 GHz in order to enjoy it. The ECP does not provide new units or terrain. Our overall goal is to improve the quality of gameplay through configuration modification and effects scripting. We'll leave the addons to those who are skilled in that area, and we offer the ECP as a backbone to whoever is interested. The ECP (core) provides the following features across all OFP missions and campaigns.


{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <h3 style="text-align: left;">General:</h3>
! <h3 style="text-align: left;">General:</h3>
|-
|-
|
|
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">ECP event handling concept and initial algorithm</div>
! <div style="text-align: left;">ECP event handling concept and initial algorithm</div>
|-
|-
Line 53: Line 53:
For those events not monitored by the EHs,  a quasi-event monitoring system has been developed to enable a wide selection of effects.
For those events not monitored by the EHs,  a quasi-event monitoring system has been developed to enable a wide selection of effects.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Configuration modifications (Updated)</div>
! <div style="text-align: left;">Configuration modifications (Updated)</div>
|-
|-
Line 64: Line 64:
* Improved environmental sound
* Improved environmental sound
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Editor's Debug Spectator©</div>
! <div style="text-align: left;">Editor's Debug Spectator©</div>
|-
|-
Line 71: Line 71:
* Attention to developers! The Debug Spectator© is a copyrighted feature, provided as courtesy of P.J.M. for the ECP. It can't be modified by anyone but its author or used elsewhere than the official ECP mod.
* Attention to developers! The Debug Spectator© is a copyrighted feature, provided as courtesy of P.J.M. for the ECP. It can't be modified by anyone but its author or used elsewhere than the official ECP mod.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Flexible game startup (New)</div>
! <div style="text-align: left;">Flexible game startup (New)</div>
|-
|-
Line 78: Line 78:
of the default intro or use the -nosplash flag.
of the default intro or use the -nosplash flag.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">In-game ECP Settings Editor (Updated)</div>
! <div style="text-align: left;">In-game ECP Settings Editor (Updated)</div>
|-
|-
|
|
This dialog, accessible via the pause menu, permits in-game configuration of the most common ECP settings during a mission. However, it doesn't modify the settings files, IE it's settings are not directly saved and stored when the game is closed, for this you will have to edit the start up settings files directly.
This dialog, accessible via the pause menu, permits in-game configuration of the most common ECP settings during a mission. However, it doesn't modify the settings files, IE it is settings are not directly saved and stored when the game is closed, for this you will have to edit the start up settings files directly.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Level Of Detail</div>
! <div style="text-align: left;">Level Of Detail</div>
|-
|-
Line 90: Line 90:
In order to make the ECP more efficient, level of detail (changing effects depending on whether or not a player can see them) has been implemented.
In order to make the ECP more efficient, level of detail (changing effects depending on whether or not a player can see them) has been implemented.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">New main menu cut-scenes</div>
! <div style="text-align: left;">New main menu cut-scenes</div>
|-
|-
Line 96: Line 96:
Getting tired of seeing the same old main menu cutscenes? We've taken some steps to fix that.
Getting tired of seeing the same old main menu cutscenes? We've taken some steps to fix that.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Redesigned editor GUI (Updated)</div>
! <div style="text-align: left;">Redesigned editor GUI (Updated)</div>
|-
|-
Line 102: Line 102:
The redesigned main menu and editor GUI's is an eye-candy addition to enhance the interaction between the player/designer and the game.
The redesigned main menu and editor GUI's is an eye-candy addition to enhance the interaction between the player/designer and the game.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Redesigned main menu GUI (New)</div>
! <div style="text-align: left;">Redesigned main menu GUI (New)</div>
|-
|-
Line 108: Line 108:
The redesigned main menu and editor GUI's is an eye-candy addition to enhance the interaction between the player/designer and the game.
The redesigned main menu and editor GUI's is an eye-candy addition to enhance the interaction between the player/designer and the game.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Scripting resources (Extended)</div>
! <div style="text-align: left;">Scripting resources (Extended)</div>
|-
|-
Line 114: Line 114:
ECP provides a wide set of functions for development or mission design, gathered in the ECP_resources array. See ECP Functions for more information.
ECP provides a wide set of functions for development or mission design, gathered in the ECP_resources array. See ECP Functions for more information.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Spectator script</div>
! <div style="text-align: left;">Spectator script</div>
|-
|-
Line 122: Line 122:
|}
|}


{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <h3 style="text-align: left;">ECP Performance:</h3>
! <h3 style="text-align: left;">ECP Performance:</h3>
|-
|-
|
|
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Core redesign and code optimisation (New)</div>
! <div style="text-align: left;">Core redesign and code optimisation (New)</div>
|-
|-
Line 133: Line 133:
enjoy an instant ECP startup followed by very smooth gameplay, even on the low-end pc's. The performance hit is generally unnoticeable, regardless of mission or computer characteristics.
enjoy an instant ECP startup followed by very smooth gameplay, even on the low-end pc's. The performance hit is generally unnoticeable, regardless of mission or computer characteristics.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Dynamic Global Array Structure (DGAS) architecture (New)</div>
! <div style="text-align: left;">Dynamic Global Array Structure (DGAS) architecture (New)</div>
|-
|-
|
|
In order to prevent the crash-to-desktop (CTD) issue on mission resume we implemented an array database system, DGAS, represented by five global variables, from/to which the ECP data is
In order to prevent the crash-to-desktop (CTD) issue on mission resume we implemented an array database system, DGAS, represented by five global variables, from/to which the ECP data is
processed and stored. This method proved to be quite reliable. As a result, players can save their missions without corrupting the savegame log - this is not assured, but it's still a great step forward to prevent the problem.
processed and stored. This method proved to be quite reliable. As a result, players can save their missions without corrupting the savegame log - this is not assured, but it is still a great step forward to prevent the problem.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Enhanced MP reliability through the Array Interchange Monitor (AIM) (New)</div>
! <div style="text-align: left;">Enhanced MP reliability through the Array Interchange Monitor (AIM) (New)</div>
|-
|-
Line 149: Line 149:
|}
|}


{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <h3 style="text-align: left;">Simulations:</h3>
! <h3 style="text-align: left;">Simulations:</h3>
|-
|-
|
|
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">AI information sharing and Adaptive Ally Detection (AAD) (New)</div>
! <div style="text-align: left;">AI information sharing and Adaptive Ally Detection (AAD) (New)</div>
|-
|-
Line 160: Line 160:
knowledge.
knowledge.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">AI join</div>
! <div style="text-align: left;">AI join</div>
|-
|-
Line 166: Line 166:
The player, if leader, can join single units to his/her squad - e.g.: last member of another squad, a crashed pilot, etc.
The player, if leader, can join single units to his/her squad - e.g.: last member of another squad, a crashed pilot, etc.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">AI release (New)</div>
! <div style="text-align: left;">AI release (New)</div>
|-
|-
Line 172: Line 172:
The player, if leader, can release units from his/her squad. Combined with AI join, allows replacing units in a full squad.
The player, if leader, can release units from his/her squad. Combined with AI join, allows replacing units in a full squad.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">AI surrendering and PoW interaction (New)</div>
! <div style="text-align: left;">AI surrendering and PoW interaction (New)</div>
|-
|-
Line 180: Line 180:
On the other hand, player side units, that have surrendered but not been taken captive, can be told to fight.
On the other hand, player side units, that have surrendered but not been taken captive, can be told to fight.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">AT/AA launcher backblast damage</div>
! <div style="text-align: left;">AT/AA launcher backblast damage</div>
|-
|-
Line 186: Line 186:
Units standing at an AT/AA launcher's Back Blast Danger Area (BBDA), upon fire, will be caught by the backblast debris and get critically injured or even killed!
Units standing at an AT/AA launcher's Back Blast Danger Area (BBDA), upon fire, will be caught by the backblast debris and get critically injured or even killed!
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Bleeding damage (Updated)</div>
! <div style="text-align: left;">Bleeding damage (Updated)</div>
|-
|-
Line 192: Line 192:
Units bound by bleeding effects can suffer blood loss damage until being deceased or, otherwise, healed.
Units bound by bleeding effects can suffer blood loss damage until being deceased or, otherwise, healed.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Bouncing fragmentation grenades (New)</div>
! <div style="text-align: left;">Bouncing fragmentation grenades (New)</div>
|-
|-
Line 199: Line 199:
allowing air blasts.
allowing air blasts.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Bouncing smoke grenades and smoke simulation (New)</div>
! <div style="text-align: left;">Bouncing smoke grenades and smoke simulation (New)</div>
|-
|-
Line 205: Line 205:
A set of smoke grenades that replaces the default smoke grenades according to their colour and unit's side. Depending on type, the grenades have specific fuse and smoke release times. In addition, these grenades can be effectively used for screening purposes that works on AI also.
A set of smoke grenades that replaces the default smoke grenades according to their colour and unit's side. Depending on type, the grenades have specific fuse and smoke release times. In addition, these grenades can be effectively used for screening purposes that works on AI also.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">High Altitude Low opening (HALO) Parachutes (Updated)</div>
! <div style="text-align: left;">High Altitude Low opening (HALO) Parachutes (Updated)</div>
|-
|-
Line 211: Line 211:
HALO parachutes allow the player to decide when to open his/her parachute. It includes altimeter and auto-opening, preventing thus fatalities during cut-scenes.
HALO parachutes allow the player to decide when to open his/her parachute. It includes altimeter and auto-opening, preventing thus fatalities during cut-scenes.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Helo Coms (New)</div>
! <div style="text-align: left;">Helo Coms (New)</div>
|-
|-
Line 217: Line 217:
The Helo Coms gives the player, if leader, full control over its squad helicopter, providing landing, insertion, extraction and flight altitude commands.
The Helo Coms gives the player, if leader, full control over its squad helicopter, providing landing, insertion, extraction and flight altitude commands.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">IR AA jamming and visual counter-measures</div>
! <div style="text-align: left;">IR AA jamming and visual counter-measures</div>
|-
|-
Line 223: Line 223:
Aircraft engaged by AA guided weapons will release flares on the sky, an effect complemented by IR jamming, changing the trajectory of the missile. This is ideal for missions with air transportation, but rather limited during air combat.
Aircraft engaged by AA guided weapons will release flares on the sky, an effect complemented by IR jamming, changing the trajectory of the missile. This is ideal for missions with air transportation, but rather limited during air combat.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Multiple ordnance suppression (MOS) (New)</div>
! <div style="text-align: left;">Multiple ordnance suppression (MOS) (New)</div>
|-
|-
Line 229: Line 229:
The player will suffer visual and auditive suppression from most ordnance blasts at close range depending on the blast magnitude.
The player will suffer visual and auditive suppression from most ordnance blasts at close range depending on the blast magnitude.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Random Weather and Snow (Updated)</div>
! <div style="text-align: left;">Random Weather and Snow (Updated)</div>
|-
|-
Line 235: Line 235:
Using the Island Detection Algorithm, developed by snYpir and further enhanced, ECP determines which island a particular mission is being played on. From this, random weather settings can be defined on a per-island basis. This means that weather may change more than once in a mission, at a rate chosen to the player appropriate to the particular island. In addition, snow can be implemented either for specific areas on a map (for example the snowy peaks on Nogova) or across an entire island (ie Winter Nogojev). Users can also add their own islands to the islands settings file via the 'ECP Island Matrix Tool'.
Using the Island Detection Algorithm, developed by snYpir and further enhanced, ECP determines which island a particular mission is being played on. From this, random weather settings can be defined on a per-island basis. This means that weather may change more than once in a mission, at a rate chosen to the player appropriate to the particular island. In addition, snow can be implemented either for specific areas on a map (for example the snowy peaks on Nogova) or across an entire island (ie Winter Nogojev). Users can also add their own islands to the islands settings file via the 'ECP Island Matrix Tool'.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Tail rotor failure</div>
! <div style="text-align: left;">Tail rotor failure</div>
|-
|-
Line 243: Line 243:
|}
|}


{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <h3 style="text-align: left;">Effects:</h3>
! <h3 style="text-align: left;">Effects:</h3>
|-
|-
|
|
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Aircraft altitude warning</div>
! <div style="text-align: left;">Aircraft altitude warning</div>
|-
|-
Line 253: Line 253:
An altitude alarm will sound when flying dangerously low.
An altitude alarm will sound when flying dangerously low.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Aircraft smoke</div>
! <div style="text-align: left;">Aircraft smoke</div>
|-
|-
Line 260: Line 260:
eventually blow up in the air from accumulated damage.
eventually blow up in the air from accumulated damage.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">AT/AA launcher backblast</div>
! <div style="text-align: left;">AT/AA launcher backblast</div>
|-
|-
Line 267: Line 267:
their BBDA or risk court-martial!
their BBDA or risk court-martial!
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">AT/AA smoke trail (Extended)</div>
! <div style="text-align: left;">AT/AA smoke trail (Extended)</div>
|-
|-
Line 273: Line 273:
All rockets and missiles now have more realistic smoke trails.
All rockets and missiles now have more realistic smoke trails.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Blood spurt and bleeding (Updated)</div>
! <div style="text-align: left;">Blood spurt and bleeding (Updated)</div>
|-
|-
Line 280: Line 280:
|}
|}


{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Burning men (Updated)</div>
! <div style="text-align: left;">Burning men (Updated)</div>
|-
|-
Line 286: Line 286:
Some crew will leave their burning vehicles, running and screaming in despair while being consumed by the flames. Not recommended for sensitive people... It can be even more terrifying when we watch a burning man bailing off a falling chopper...Oooooh!
Some crew will leave their burning vehicles, running and screaming in despair while being consumed by the flames. Not recommended for sensitive people... It can be even more terrifying when we watch a burning man bailing off a falling chopper...Oooooh!
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Buzzing flies (Updated)</div>
! <div style="text-align: left;">Buzzing flies (Updated)</div>
|-
|-
Line 292: Line 292:
A while after being dead, some corpses might be infested by buzzing annoying flies. This effect brings home the true morbidity of combat.
A while after being dead, some corpses might be infested by buzzing annoying flies. This effect brings home the true morbidity of combat.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Church chanting, animated fountains and lighting effects (New)</div>
! <div style="text-align: left;">Church chanting, animated fountains and lighting effects (New)</div>
|-
|-
Line 298: Line 298:
Missing the monks chanting in churches? Flowing water in fountains? Now, the ECP provides both effects, complemented by fancy lighting effects visible at night.
Missing the monks chanting in churches? Flowing water in fountains? Now, the ECP provides both effects, complemented by fancy lighting effects visible at night.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Explosion craters (New)</div>
! <div style="text-align: left;">Explosion craters (New)</div>
|-
|-
Line 304: Line 304:
3D craters will appear underneath vehicles that suffered catastrophic explosions. These can be used for cover.
3D craters will appear underneath vehicles that suffered catastrophic explosions. These can be used for cover.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Explosion effects (Updated & Extended)</div>
! <div style="text-align: left;">Explosion effects (Updated & Extended)</div>
|-
|-
Line 310: Line 310:
ECP provides many new explosion effects, from simple smoke blasts to amazingly hot fireballs, with debris and dust all over the place! This not only affects vehicles, but also the most varied ordnance. Followed by great fire effects, this is one of the most interesting and complete set of effects provided.
ECP provides many new explosion effects, from simple smoke blasts to amazingly hot fireballs, with debris and dust all over the place! This not only affects vehicles, but also the most varied ordnance. Followed by great fire effects, this is one of the most interesting and complete set of effects provided.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Fire effects (Updated & Extended)</div>
! <div style="text-align: left;">Fire effects (Updated & Extended)</div>
|-
|-
Line 316: Line 316:
Vehicles, houses, debris, men: everything burns! Flaming nights and smoky days envelope us in the most exciting combat environments.
Vehicles, houses, debris, men: everything burns! Flaming nights and smoky days envelope us in the most exciting combat environments.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Helicopter dust</div>
! <div style="text-align: left;">Helicopter dust</div>
|-
|-
Line 322: Line 322:
There are available two rotorwash dust effects for helicopters. Start the engines and embark or disembark between dust clouds.
There are available two rotorwash dust effects for helicopters. Start the engines and embark or disembark between dust clouds.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Mounted machine gun cartridges (New)</div>
! <div style="text-align: left;">Mounted machine gun cartridges (New)</div>
|-
|-
Line 328: Line 328:
Now, heavy machine guns mounted on vehicles or tripods discharge bullet cartridges too.
Now, heavy machine guns mounted on vehicles or tripods discharge bullet cartridges too.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Shell and bullet whiz (Extended)</div>
! <div style="text-align: left;">Shell and bullet whiz (Extended)</div>
|-
|-
Line 334: Line 334:
Thanks to our sound guru, Zayfod, flying lead can be heard! The player will hear the whiz of bullets and cannon shells passing close. Keep your heads down!
Thanks to our sound guru, Zayfod, flying lead can be heard! The player will hear the whiz of bullets and cannon shells passing close. Keep your heads down!
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Tank main gun flash (New)</div>
! <div style="text-align: left;">Tank main gun flash (New)</div>
|-
|-
Line 340: Line 340:
From ORCS' code, we implemented this amazing effect that brightens and expands the flash of a tank's main gun.
From ORCS' code, we implemented this amazing effect that brightens and expands the flash of a tank's main gun.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Tank shock dust</div>
! <div style="text-align: left;">Tank shock dust</div>
|-
|-
Line 346: Line 346:
Just like in real life, shock wave dust will be formed around a tank upon firing its main gun.
Just like in real life, shock wave dust will be formed around a tank upon firing its main gun.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Working lighthouses (Updated)</div>
! <div style="text-align: left;">Working lighthouses (Updated)</div>
|-
|-
Line 352: Line 352:
The lighthouses from recognised islands will effectively work, with searchlight, fog horn and exterior lighting above the door.
The lighthouses from recognised islands will effectively work, with searchlight, fog horn and exterior lighting above the door.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Muzzle smoke/flash (New)</div>
! <div style="text-align: left;">Muzzle smoke/flash (New)</div>
|-
|-
Line 360: Line 360:
|}
|}


==Optional Plugins==
== Optional Plugins ==
ECP Plug-Ins are ECP exclusive addons that resort to the existing structure to provide new features - new experiences. Install, enable and experiment! Download plug-ins from the ECP links at the bottom of the page.
ECP Plug-Ins are ECP exclusive addons that resort to the existing structure to provide new features - new experiences. Install, enable and experiment! Download plug-ins from the ECP links at the bottom of the page.


{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <h3 style="text-align: left;">Sounds:</h3>
! <h3 style="text-align: left;">Sounds:</h3>
|-
|-
|
|
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Dynamic Range Sounds (DR)</div>
! <div style="text-align: left;">Dynamic Range Sounds (DR)</div>
|-
|-
Line 374: Line 374:
along the year of 2003. Thenceforward, Zayfod has improved the sound configuration, assuring the plugin remains adequate to the new sound features and visual simulations.
along the year of 2003. Thenceforward, Zayfod has improved the sound configuration, assuring the plugin remains adequate to the new sound features and visual simulations.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Dynamic Speaking AI (DSAI)</div>
! <div style="text-align: left;">Dynamic Speaking AI (DSAI)</div>
|-
|-
Line 380: Line 380:
The Dynamic Speaking AI (DSAI) plugin is one of our greatest novelties and represents another conquest over the game limitations, that we take delight in sharing with the community. Based on the AI information sharing interaction tree, the DSAI simulates circumstantial AI dialogue. According to their behaviour and the situation, the AI units talk, scream and act. It provides the player an unique scenery of envelopment, which turns out to be quite useful in combat situations. Enjoy it!
The Dynamic Speaking AI (DSAI) plugin is one of our greatest novelties and represents another conquest over the game limitations, that we take delight in sharing with the community. Based on the AI information sharing interaction tree, the DSAI simulates circumstantial AI dialogue. According to their behaviour and the situation, the AI units talk, scream and act. It provides the player an unique scenery of envelopment, which turns out to be quite useful in combat situations. Enjoy it!
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Radio Chatter (RC)</div>
! <div style="text-align: left;">Radio Chatter (RC)</div>
|-
|-
|
|
The Radio Chatter (RC) plugin is a very thrilling feature in mounted combat. Armoured and air transportation are now accompanied with radio chatter from real combat scenarios, leading you into a deeper realm of fantasy. This effect is still only available onboard of air and armoured vehicles. Sometimes, the chatter might not have much to do with the circumstances since it's mostly associated with combat environments. Nevertheless, it gives the impression to the player that they are in a world where many other things are happening around them, perhaps on other islands or other parts of the island. Its de/activation is available through the settings dialog, in game.
The Radio Chatter (RC) plugin is a very thrilling feature in mounted combat. Armoured and air transportation are now accompanied with radio chatter from real combat scenarios, leading you into a deeper realm of fantasy. This effect is still only available onboard of air and armoured vehicles. Sometimes, the chatter might not have much to do with the circumstances since it is mostly associated with combat environments. Nevertheless, it gives the impression to the player that they are in a world where many other things are happening around them, perhaps on other islands or other parts of the island. Its de/activation is available through the settings dialog, in game.
|}
|}
|}
|}


==ECP Settings==
== ECP Settings ==
The ECP has both new effects and simulations. Effects are purely visual changes to enhance your OFP experience. Simulations are 'things that happen' and they may modify gameplay.
The ECP has both new effects and simulations. Effects are purely visual changes to enhance your OFP experience. Simulations are 'things that happen' and they may modify gameplay.


Line 395: Line 395:
# Via the settings files in the @ECP folder, or
# Via the settings files in the @ECP folder, or
# Via the ECP settings dialog.
# Via the ECP settings dialog.
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <h3 style="text-align: left;">ECP Settings:</h3>
! <h3 style="text-align: left;">ECP Settings:</h3>
|-
|-
|
|
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">ECP Settings Files</div>
! <div style="text-align: left;">ECP Settings Files</div>
|-
|-
Line 411: Line 411:
* ECP_Island_Settings.sqf > gathers information regarding island configuration.
* ECP_Island_Settings.sqf > gathers information regarding island configuration.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">ECP Settings Dialog</div>
! <div style="text-align: left;">ECP Settings Dialog</div>
|-
|-
Line 417: Line 417:
The ECP Settings Dialog is accessible via the 'pause' (ESC key) screen whilst playing OFP. This dialog allows you to configure the support pack for the particular mission you are playing. It does not save the settings to disk. If you want to change settings across all your missions you must edit the settings files as detailed above. Note that certain settings will not be able to be changed during multiplayer games (they will be set by the server from variables defined in the settings files).
The ECP Settings Dialog is accessible via the 'pause' (ESC key) screen whilst playing OFP. This dialog allows you to configure the support pack for the particular mission you are playing. It does not save the settings to disk. If you want to change settings across all your missions you must edit the settings files as detailed above. Note that certain settings will not be able to be changed during multiplayer games (they will be set by the server from variables defined in the settings files).
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">ECP Override Settings</div>
! <div style="text-align: left;">ECP Override Settings</div>
|-
|-
Line 433: Line 433:
We recommend that you become familiar with the ECP_settings.sqf and customise all effects for your PC so that you eventually won't need to use the 'ECP_override' variable at all.
We recommend that you become familiar with the ECP_settings.sqf and customise all effects for your PC so that you eventually won't need to use the 'ECP_override' variable at all.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Effects Distance</div>
! <div style="text-align: left;">Effects Distance</div>
|-
|-
Line 446: Line 446:


To disable the effects distance concept set ECP_lod_enable equal to false:
To disable the effects distance concept set ECP_lod_enable equal to false:
<code>ECP_local set [ 16 , false ];</code>
<code style="display: block">ECP_local set [16 , false ];</code>
|}
|}
|}
|}


==ECP Multiplayer==
== ECP Multiplayer ==
The ECP is fully compatible with MP play. It is recommended that all computers play with the ECP mod to prevent 'modified config.bin' error messages. It is important that all computers have the same version of the ECP as well.
The ECP is fully compatible with MP play. It is recommended that all computers play with the ECP mod to prevent 'modified config.bin' error messages. It is important that all computers have the same version of the ECP as well.


Line 457: Line 457:
The ECP will operate in either dedicated or designated server mode.
The ECP will operate in either dedicated or designated server mode.


{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <h3 style="text-align: left;">Multiplayer:</h3>
! <h3 style="text-align: left;">Multiplayer:</h3>
|-
|-
|
|
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Dedicated Server</div>
! <div style="text-align: left;">Dedicated Server</div>
|-
|-
Line 468: Line 468:
dedicated server will be used by all connected to the server. All 'effect settings' are local to the client computers - you could turn off blood on a client, for example, and this would not effect any other computer on the network.
dedicated server will be used by all connected to the server. All 'effect settings' are local to the client computers - you could turn off blood on a client, for example, and this would not effect any other computer on the network.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Designated Server</div>
! <div style="text-align: left;">Designated Server</div>
|-
|-
Line 475: Line 475:
to act as a designated server. The 'simulation settings' on this designated server will be used on all computers. Unfortunately there is currently no way for the ECP to determine which is the actual server in this sort of game (we are working on it!).
to act as a designated server. The 'simulation settings' on this designated server will be used on all computers. Unfortunately there is currently no way for the ECP to determine which is the actual server in this sort of game (we are working on it!).
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Important Notes!</div>
! <div style="text-align: left;">Important Notes!</div>
|-
|-
Line 486: Line 486:
|}
|}


==ECP Mission Editing==
== ECP Mission Editing ==
The ECP is designed with mission editing in mind, and all ECP settings can be explicitly defined by a mission editor for a specific mission. In order to know which values you should modify in the ECP database, take the ECP_Settings.sqf as reference.
The ECP is designed with mission editing in mind, and all ECP settings can be explicitly defined by a mission editor for a specific mission. In order to know which values you should modify in the ECP database, take the ECP_Settings.sqf as reference.


{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <h3 style="text-align: left;">Mission Editing:</h3>
! <h3 style="text-align: left;">Mission Editing:</h3>
|-
|-
|
|
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Overriding ECP settings File</div>
! <div style="text-align: left;">Overriding ECP settings File</div>
|-
|-
Line 499: Line 499:
Suppose, for example, that you don't want tail rotor failure to occur in your mission. In your
Suppose, for example, that you don't want tail rotor failure to occur in your mission. In your
mission's init.sqs file you would have:
mission's init.sqs file you would have:
<code>ECP_public set [ 5 , true ]</code>
<code style="display: block">ECP_public set [5 , true ]</code>
This would replace the user-defined value in ECP_Settings.sqf. There are also a great range of values and functions that you can use within your ECP-compatible mission.
This would replace the user-defined value in ECP_Settings.sqf. There are also a great range of values and functions that you can use within your ECP-compatible mission.


Line 507: Line 507:
* How do I use the ECP Editor Enhancement?
* How do I use the ECP Editor Enhancement?
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">ECP Database Values</div>
! <div style="text-align: left;">ECP Database Values</div>
|-
|-
Line 516: Line 516:
It may be:
It may be:
<br>
<br>
<code>ECP_server_id == -2 // Server not yet chosen</code>
<code style="display: block">ECP_server_id == -2 // Server not yet chosen</code>
<br>
<br>
<code>ECP_server_id == -1 // Dedicated server or standalone game</code>
<code style="display: block">ECP_server_id == -1 // Dedicated server or standalone game</code>
<br>
<br>
<code>ECP_server_id >= 0 // Designated server (one of the clients is acting as ECP designated server)</code>
<code style="display: block">ECP_server_id >= 0 // Designated server (one of the clients is acting as ECP designated server)</code>
<br>
<br>
ECP_is_server will equal true on the computer that is server.
ECP_is_server will equal true on the computer that is server.
* <code>ECP_Internal select 24 // (ECP_island_array) - Array</code>
* <code style="display: block">ECP_Internal select 24 // (ECP_island_array) - Array</code>
ECP_island_array contains information regarding the current island (loaded from
ECP_island_array contains information regarding the current island (loaded from
ECP_Island_Settings.sqf). It will contain the default island settings (specified in
ECP_Island_Settings.sqf). It will contain the default island settings (specified in
ECP_Settings.sqf) if the current island could not be detected.
ECP_Settings.sqf) if the current island could not be detected.
See the top of ECP_Island_Settings.sqf for a description of each element in ECP_island_array.
See the top of ECP_Island_Settings.sqf for a description of each element in ECP_island_array.
* <code>ECP_Internal select 18 // (ECP_units) - Array</code>
* <code style="display: block">ECP_Internal select 18 // (ECP_units) - Array</code>
This variable is an array of all 'man' units recognised by the ECP.
This variable is an array of all 'man' units recognised by the ECP.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">ECP Database Functions</div>
! <div style="text-align: left;">ECP Database Functions</div>
|-
|-
|
|
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">ECP system functions</div>
! <div style="text-align: left;">ECP system functions</div>
|-
|-
Line 544: Line 544:
* Activation: Anybody (Once) when 'Present'
* Activation: Anybody (Once) when 'Present'
* Condition: this
* Condition: this
* On Activation: <code>thislist call (ECP_resources select 30)</code>
* On Activation: <code style="display: block">thislist call (ECP_resources select 30)</code>
From ECP 1.057.
From ECP 1.057.
* <"unit or camera"> call (ECP_resources select 25)
* <"unit or camera"> call (ECP_resources select 25)
Line 551: Line 551:
From ECP 1.065.
From ECP 1.065.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">ECP Island related functions</div>
! <div style="text-align: left;">ECP Island related functions</div>
|-
|-
Line 560: Line 560:
A key component of an island definition is the island matrix. This is the 'key' used to determine what island is currently being used. This function, ECP_GetMatrix, will display a dialog that can be used to calculate the island matrix. See ECP_Island_Settings.sqf for more information.
A key component of an island definition is the island matrix. This is the 'key' used to determine what island is currently being used. This function, ECP_GetMatrix, will display a dialog that can be used to calculate the island matrix. See ECP_Island_Settings.sqf for more information.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">ECP Height and Distance functions</div>
! <div style="text-align: left;">ECP Height and Distance functions</div>
|-
|-
Line 579: Line 579:
ECP_distance3DSqr returns the 3D distance squared from <position 1> to <position 2>. This is faster than ECP_distance3D because it doesn't perform a sqrt.
ECP_distance3DSqr returns the 3D distance squared from <position 1> to <position 2>. This is faster than ECP_distance3D because it doesn't perform a sqrt.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">ECP Direction functions</div>
! <div style="text-align: left;">ECP Direction functions</div>
|-
|-
Line 590: Line 590:
ECP_inAng returns true if <position in sector> is within the sector at <center_angle> degrees of an angle <sector width> degrees wide.
ECP_inAng returns true if <position in sector> is within the sector at <center_angle> degrees of an angle <sector width> degrees wide.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">ECP Vector related functions</div>
! <div style="text-align: left;">ECP Vector related functions</div>
|-
|-
Line 610: Line 610:
ECP_vAdd returns <vector 1> added to <vector 2>. From ECP 1.057.
ECP_vAdd returns <vector 1> added to <vector 2>. From ECP 1.057.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">ECP Misc functions</div>
! <div style="text-align: left;">ECP Misc functions</div>
|-
|-
Line 634: Line 634:
|}
|}
|}
|}
==ECP Compatible Addons==
== ECP Compatible Addons ==
Updated 03/06/05
Updated 03/06/05
If you are making an addon that provides a new vehicle, and defines it's own 'class EventHandlers', you'll need to do the following in order to make it ECP compatible.
If you are making an addon that provides a new vehicle, and defines it is own 'class EventHandlers', you'll need to do the following in order to make it ECP compatible.


{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <h3 style="text-align: left;">Adding ECP Eventhandlers:</h3>
! <h3 style="text-align: left;">Adding ECP Eventhandlers:</h3>
|-
|-
|
|
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">ECP Superclass eventhandler</div>
! <div style="text-align: left;">ECP Superclass eventhandler</div>
|-
|-
Line 654: Line 654:
}
}
For example, if you were making a new boat addon, you'd do the following:
For example, if you were making a new boat addon, you'd do the following:
<code>
<code style="display: block">class ECP_EventHandlers {};
class ECP_EventHandlers {};
class CfgVehicles
class CfgVehicles
{
{
Line 681: Line 680:
* getout: _this call (ECP_resources select 75);
* getout: _this call (ECP_resources select 75);
In the above example, you could enable ECP fired events as well as custom ones by using:
In the above example, you could enable ECP fired events as well as custom ones by using:
<code>
<code style="display: block">class EventHandlers : ECP_EventHandlers
class EventHandlers : ECP_EventHandlers
{
{
fired="_this call (ECP_resources select 41); hint {fire!}";
fired="_this call (ECP_resources select 41); hint {fire!}";
Line 690: Line 688:
|}
|}
|}
|}
==Using ECP in your MOD==
== Using ECP in your MOD ==
ECP is open-source and we are happy for other mods to use our scripts and config settings. We do ask that:
ECP is open-source and we are happy for other mods to use our scripts and config settings. We do ask that:
* Full credit is given to either a) the ECP mod or b) individual script authors as appropriate.
* Full credit is given to either a) the ECP mod or b) individual script authors as appropriate.
Line 697: Line 695:
* You must read and agree to the ECP End User License Agreement.
* You must read and agree to the ECP End User License Agreement.


{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <h3 style="text-align: left;">ECP End User License Agreement:</h3>
! <h3 style="text-align: left;">ECP End User License Agreement:</h3>
|-
|-
Line 756: Line 754:
The ECP development version will be required if you intend to use ECP as a backbone to your mod. Contact us if you require assistance and we can provide this to you.
The ECP development version will be required if you intend to use ECP as a backbone to your mod. Contact us if you require assistance and we can provide this to you.


==Limitations==
== Limitations ==
ECP requires OFP version 1.96 or higher.
ECP requires OFP version 1.96 or higher.
<br>
<br>
Line 762: Line 760:
release):
release):


{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <h3 style="text-align: left;">Limitations:</h3>
! <h3 style="text-align: left;">Limitations:</h3>
|-
|-
|
|
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Multiplayer (MP) compatibility</div>
! <div style="text-align: left;">Multiplayer (MP) compatibility</div>
|-
|-
Line 777: Line 775:
In order to get around this problem a designated server will be automatically allocated by ECP if there is no dedicated server. This designated server will then control weather, for example.
In order to get around this problem a designated server will be automatically allocated by ECP if there is no dedicated server. This designated server will then control weather, for example.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Grenades not always responding to real-world physics</div>
! <div style="text-align: left;">Grenades not always responding to real-world physics</div>
|-
|-
Line 785: Line 783:
|}
|}


{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Winter Kolgujev is not detectable</div>
! <div style="text-align: left;">Winter Kolgujev is not detectable</div>
|-
|-
|
|
As Winter Kolgujev is a direct copy of Kolgujev, Winter Kolgujev cannot be detected by the ECP island detection system. Winter Nogojev can be detected however (time to upgrade, people! [ftp://ftp.ofpr.info/ofpd/islands/WinterNogojev11.zip Download Winter Nogojev]).
As Winter Kolgujev is a direct copy of Kolgujev, Winter Kolgujev cannot be detected by the ECP island detection system. Winter Nogojev can be detected however (time to upgrade, people! {{Link|link= ftp://ftp.ofpr.info/ofpd/islands/WinterNogojev11.zip |text= Download Winter Nogojev}}).


The other option is to edit your missions and create a trigger as specified in the answer to "How do I make non-compatible addons work with the ECP?" in the FAQ below.
The other option is to edit your missions and create a trigger as specified in the answer to "How do I make non-compatible addons work with the ECP?" in the FAQ below.
Line 795: Line 793:
|}
|}


==Frequently asked questions (FAQ)==
== Frequently asked questions (FAQ) ==
Go up and read Limitations if you haven't already. Contact the ECP Team if your question isn't answered here. FAQ last updated 03/06/05 (ECP 1.085).
Go up and read Limitations if you have not already. Contact the ECP Team if your question isn't answered here. FAQ last updated 03/06/05 (ECP 1.085).


{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <h3 style="text-align: left;">FAQ:</h3>
! <h3 style="text-align: left;">FAQ:</h3>
|-
|-
|
|
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">General</div>
! <div style="text-align: left;">General</div>
|-
|-
Line 808: Line 806:
'''Q: How do I make a shortcut to run the ECP? (10/01/04)'''
'''Q: How do I make a shortcut to run the ECP? (10/01/04)'''
<br>
<br>
A: Create a shortcut to your latest OFP application. Edit it's properties, and after "FlashpointResistance.exe" enter -mod=@ECP. Hit apply and then OK.
A: Create a shortcut to your latest OFP application. Edit it is properties, and after "FlashpointResistance.exe" enter -mod=@ECP. Hit apply and then OK.
<br>
<br>
<br>
<br>
Line 820: Line 818:
A: You will have to edit the @ECP\ECP_settings.sqf file to suit your needs, e.g. turn off some of the effects. I.e. to turn off chopper dust you would edit '\@ECP\ECP_Settings.sqf' in a text editor (notepad will do) and make the value ECP_h_dust_enable false:
A: You will have to edit the @ECP\ECP_settings.sqf file to suit your needs, e.g. turn off some of the effects. I.e. to turn off chopper dust you would edit '\@ECP\ECP_Settings.sqf' in a text editor (notepad will do) and make the value ECP_h_dust_enable false:
<br>
<br>
<code>ECP_local set [ 33 , false ];</code>
<code style="display: block">ECP_local set [33 , false ];</code>
<br>
<br>
'''Q: How do I use the ECP Debug Spectator©? (05/01/04)'''
'''Q: How do I use the ECP Debug Spectator©? (05/01/04)'''
Line 860: Line 858:
|}
|}


{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Effects</div>
! <div style="text-align: left;">Effects</div>
|-
|-
Line 873: Line 871:
If you are designing a mission, after creating your camera (using camcreate), use the function 'ECP_addLODTgt' (ECP_resources select 25) to register your camera with the ECP. I.e. if I had
If you are designing a mission, after creating your camera (using camcreate), use the function 'ECP_addLODTgt' (ECP_resources select 25) to register your camera with the ECP. I.e. if I had
used 'camcreate' to create a camera called 'camera', I would add it to ECP as follows:
used 'camcreate' to create a camera called 'camera', I would add it to ECP as follows:
<code>"camera" call (ECP_resources select 25)</code>
<code style="display: block">"camera" call (ECP_resources select 25)</code>
You only have to add a particular camera to ECP_lod_target once in a mission. Note that the name of your camera (passed to the function) must be enclosed in inverted commas (").
You only have to add a particular camera to ECP_lod_target once in a mission. Note that the name of your camera (passed to the function) must be enclosed in inverted commas (").
<br>
<br>
Line 909: Line 907:
him to shoot randomly against an "invisible" target. So, the AI will shoot against your last position until it looses the reference. Thus, you'd better move from your position if you don't want to get hit.
him to shoot randomly against an "invisible" target. So, the AI will shoot against your last position until it looses the reference. Thus, you'd better move from your position if you don't want to get hit.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">DSAI</div>
! <div style="text-align: left;">DSAI</div>
|-
|-
Line 953: Line 951:
language.
language.
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Multiplayer</div>
! <div style="text-align: left;">Multiplayer</div>
|-
|-
Line 975: Line 973:
|}
|}


==Credits==
== Credits ==
In this section we'll try to credit everyone who have contributed for the ECP.
In this section we'll try to credit everyone who have contributed for the ECP.
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <h3 style="text-align: left;">Credits:</h3>
! <h3 style="text-align: left;">Credits:</h3>
|-
|-
|
|
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Active ECP Team Members until ECP 1.085 release 24th July 2005:</div>
! <div style="text-align: left;">Active ECP Team Members until ECP 1.085 release 24th July 2005:</div>
|-
|-
Line 1,032: Line 1,030:
|}
|}


{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">ECP Team Members retired as of ECP 1.071 2004 release:</div>
! <div style="text-align: left;">ECP Team Members retired as of ECP 1.071 2004 release:</div>
|-
|-
Line 1,073: Line 1,071:
** VikPack script enhancments
** VikPack script enhancments
|}
|}
{|class="wikitable mw-collapsible mw-collapsed" style="width:70em"
{| class="wikitable mw-collapsible mw-collapsed" style="width:70em"
! <div style="text-align: left;">Additional Thanks To:</div>
! <div style="text-align: left;">Additional Thanks To:</div>
|-
|-
Line 1,112: Line 1,110:
|}
|}


=ECP Promotional Media=
= ECP Promotional Media =


{|class="wikitable mw-collapsible mw-collapsed" style="width:150px"
{| class="wikitable mw-collapsible mw-collapsed" style="width:150px"
! <h3 style="text-align: left;">Screenshots</h3>
! <h3 style="text-align: left;">Screenshots</h3>
|-
|-
|[[Image:Ecp_lighthouse.jpg|thumb|150px|Working Lighthouses]]
|[[File:Ecp_lighthouse.jpg|thumb|150px|Working Lighthouses]]
|[[Image:Ecp_boatboom.jpg|thumb|150px|Boat explosion stage 1]]
|[[File:Ecp_boatboom.jpg|thumb|150px|Boat explosion stage 1]]
|[[Image:Ecp_boatboom2.jpg|thumb|150px|Boat explosion stage 2]]
|[[File:Ecp_boatboom2.jpg|thumb|150px|Boat explosion stage 2]]
|[[Image:Ecp_boatboom3.jpg|thumb|150px|Boat explosion stage 3]]
|[[File:Ecp_boatboom3.jpg|thumb|150px|Boat explosion stage 3]]
|[[Image:Ecp_bullet_shells.jpg|thumb|150px|Persistent shell casings]]
|[[File:Ecp_bullet_shells.jpg|thumb|150px|Persistent shell casings]]
|-
|-
|[[Image:Ecp_burnman.jpg|thumb|150px|Burning vehicle crew]]
|[[File:Ecp_burnman.jpg|thumb|150px|Burning vehicle crew]]
|[[Image:Ecp_church.jpg|thumb|150px|Atmospheric Church lighting 1]]
|[[File:Ecp_church.jpg|thumb|150px|Atmospheric Church lighting 1]]
|[[Image:Ecp_church2.jpg|thumb|150px|Atmospheric Church lighting 2]]
|[[File:Ecp_church2.jpg|thumb|150px|Atmospheric Church lighting 2]]
|[[Image:Ecp_fire.jpg|thumb|150px|Camp fire smoke and embers]]
|[[File:Ecp_fire.jpg|thumb|150px|Camp fire smoke and embers]]
|[[Image:Ecp_fountain.jpg|thumb|150px|Atmospheric fountain lighting and particles]]
|[[File:Ecp_fountain.jpg|thumb|150px|Atmospheric fountain lighting and particles]]
|-
|-
|[[Image:Ecp_grenade.jpg|thumb|150px|Grenade particle effects]]
|[[File:Ecp_grenade.jpg|thumb|150px|Grenade particle effects]]
|[[Image:Ecp_grenade2.jpg|thumb|150px|Bouncing hand grenades]]
|[[File:Ecp_grenade2.jpg|thumb|150px|Bouncing hand grenades]]
|[[Image:Ecp_insertion.jpg|thumb|150px|Helicopter insertion command interface]]
|[[File:Ecp_insertion.jpg|thumb|150px|Helicopter insertion command interface]]
|[[Image:Ecp_magazine.jpg|thumb|150px|Vehicle magazine explosion particle effects 1]]
|[[File:Ecp_magazine.jpg|thumb|150px|Vehicle magazine explosion particle effects 1]]
|[[Image:Ecp_magazine2.jpg|thumb|150px|Vehicle magazine explosion particle effects 2]]
|[[File:Ecp_magazine2.jpg|thumb|150px|Vehicle magazine explosion particle effects 2]]
|-
|-
|[[Image:Ecp_nv.jpg|thumb|150px|Enhanced Night Vision]]
|[[File:Ecp_nv.jpg|thumb|150px|Enhanced Night Vision]]
|[[Image:Ecp_streetlamp.jpg|thumb|150px|Realistic street lamp illumination 1]]
|[[File:Ecp_streetlamp.jpg|thumb|150px|Realistic street lamp illumination 1]]
|[[Image:Ecp_splash.jpg|thumb|150px|Ordnance water impact particle effects ]]
|[[File:Ecp_splash.jpg|thumb|150px|Ordnance water impact particle effects ]]
|[[Image:Ecp_tank.jpg|thumb|150px|Ordnance impact particle effects]]
|[[File:Ecp_tank.jpg|thumb|150px|Ordnance impact particle effects]]
|[[Image:Ecp_trail.jpg|thumb|150px|Missile trail Particle effects]]
|[[File:Ecp_trail.jpg|thumb|150px|Missile trail Particle effects]]
|-
|-
|}
|}


=== Videos ===
=== Videos ===
[[Image:ECP_logo_vid_low_res.jpg|251 px|link=http://www.youtube.com/watch?v=wffNRzJhkbs |alt=Alt text|Youtube]]
[[File:ECP_logo_vid_low_res.jpg|251 px|link=http://www.youtube.com/watch?v=wffNRzJhkbs |alt=Alt text|Youtube]]


=== Review ===
=== Review ===
{|border="0" cellspacing="0" cellpadding="0"
{|border="0" cellspacing="0" cellpadding="0"
|[[Image:ecp_1.085_review.jpg|thumb|150px|Review by Shadow - BIS Forum Admin]]
|[[File:ecp_1.085_review.jpg|thumb|150px|Review by Shadow - BIS Forum Admin]]
|-
|-
|}
|}


=External Links=
= External Links =
===Release Announcement===
=== Release Announcement ===
[http://www.teamodb.com/ecp/ ECP Homepage] '''DEAD LINK'''
{{Link|http://www.teamodb.com/ecp/|ECP Homepage}} '''DEAD LINK'''


[http://forums.bistudio.com/showthread.php?43252-ECP-1-085-Released! ECP 1.085e (latest patch) BI forum release thread]
{{Link|link= http://forums.bistudio.com/showthread.php?43252-ECP-1-085-Released!|text= ECP 1.085e (latest patch) BI forum release thread}}


[http://www.ofpec.com/index.php?option=com_smf&Itemid=36&topic=24815.0 ECP 1.085 Official OFPEC forum release thread]
[http://www.ofpec.com/index.php?option{{=}}com_smf&Itemid{{=}}36&topic{{=}}24815.0 ECP 1.085 Official OFPEC forum release thread]


===Download===
=== Download ===
Be sure to get the 1.085e Patch! Solves CTD.
Be sure to get the 1.085e Patch! Solves CTD.
<br/>
<br>
[http://operationflashpoint.filefront.com/file/Enhanced_Configuration_Project;70118 ECP 1.085 download at Operation Flashpoint Files] ([http://operationflashpoint.filefront.com/file/ECP_Patch;70121 +1.085e Patch])
{{Link|http://operationflashpoint.filefront.com/file/Enhanced_Configuration_Project;70118|ECP 1.085 download at Operation Flashpoint Files}} ({{Link|http://operationflashpoint.filefront.com/file/ECP_Patch;70121|+1.085e Patch}})


[http://ofp.gamepark.cz/index.php?showthis=8705 ECP 1.085 OFP.info release thread with download link (requires language selection first, then the link will work)]
{{Link|link= http://ofp.gamepark.cz/index.php?showthis=8705|text= ECP 1.085 OFP.info release thread with download link (requires language selection first, then the link will work)}}


[ftp://ftp.ofpr.info/ofpd/mods/ECP%20v1.085%20(Full%20Installer).exe ECP 1.085 download at OFP.info Direct Download]
{{Link|link= ftp://ftp.ofpr.info/ofpd/mods/ECP%20v1.085%20(Full%20Installer).exe |text= ECP 1.085 download at OFP.info Direct Download}}

Latest revision as of 00:11, 21 November 2023

Enhanced Configuration Project (ECP)

The Enhanced Configuration Project aims to increase the potential of OFP through providing enhanced configuration files and associated scripts that run without any in-mission triggers or code.

What is the ECP:

ECP Cover

The ECP provides:

  • Improved gameplay
  • Big brained AI
  • Additional special effects
  • Improved sound
  • Realism enhancements
ECP installer









ECP is an OFP 'modification' consisting of the following components:

  • ECP Core
  • ECP Dynamic Speaking AI
  • ECP Dynamic Range sounds
  • ECP Radio Chatter

You only need the ECP Core, however it is highly recommended that you download the other plug-ins as well.

In addition to increasing the enjoyment of the game for individuals, we aim to provide an open-source enhanced configuration for use by all mods.

Using the ECP

Core Features

There are many reasons why you should use the ECP mod instead of standard OFP. OFP provides a rich scripting language and configuration system, and we have tried to push the envelope with regards to in-game effects without you requiring a P4 3.0 GHz in order to enjoy it. The ECP does not provide new units or terrain. Our overall goal is to improve the quality of gameplay through configuration modification and effects scripting. We'll leave the addons to those who are skilled in that area, and we offer the ECP as a backbone to whoever is interested. The ECP (core) provides the following features across all OFP missions and campaigns.

General:

ECP event handling concept and initial algorithm

In 2003, snYpir developed a concept of improved game-play by resorting to the newly offered technology of configured Event Handlers (EHs) within the OFP game engine. These EHs could not be removed by the 'removeEventHandler' command thus they provided a stable base for scripted development. The EHs were triggered by specific run-time events and the data they returned provided the foundation to create new visual effects and simulations.

Since then, the ECP system was updated and expanded to affect all recognised units that have been loaded or created in-game. In order to be recognised, every unit's configuration must be bound to the ECP_EventHandlers superclass. This superclass can be inherited by any addon or else merged with an existing EH.

For those events not monitored by the EHs, a quasi-event monitoring system has been developed to enable a wide selection of effects.

Configuration modifications (Updated)

The game configuration has been enhanced with small but significant implementations:

  • Enhanced AI behaviour in combat
  • Texture specular effects for Direct3D HW T&L
  • Dynamic size cartridges that remain on the ground for longer time
  • Modified smoke, dust, fire and explosion effects
  • Improved environmental sound
Editor's Debug Spectator©

The ECP Debug Spectator extends the OFP mission editor by providing a 3D spectating capability. It includes a debug console and a number of different camera modes (including freelook). It is the ideal tool for mission debugging.

  • Attention to developers! The Debug Spectator© is a copyrighted feature, provided as courtesy of P.J.M. for the ECP. It can't be modified by anyone but its author or used elsewhere than the official ECP mod.
Flexible game startup (New)

The game startup splash screen has been improved for high performance machines, enabling the main menu as soon as the game has been fully loaded. No longer will you have to wait for the end of the default intro or use the -nosplash flag.

In-game ECP Settings Editor (Updated)

This dialog, accessible via the pause menu, permits in-game configuration of the most common ECP settings during a mission. However, it doesn't modify the settings files, IE it is settings are not directly saved and stored when the game is closed, for this you will have to edit the start up settings files directly.

Level Of Detail

In order to make the ECP more efficient, level of detail (changing effects depending on whether or not a player can see them) has been implemented.

New main menu cut-scenes

Getting tired of seeing the same old main menu cutscenes? We've taken some steps to fix that.

Redesigned editor GUI (Updated)

The redesigned main menu and editor GUI's is an eye-candy addition to enhance the interaction between the player/designer and the game.

Redesigned main menu GUI (New)

The redesigned main menu and editor GUI's is an eye-candy addition to enhance the interaction between the player/designer and the game.

Scripting resources (Extended)

ECP provides a wide set of functions for development or mission design, gathered in the ECP_resources array. See ECP Functions for more information.

Spectator script

Kegetys' Spectator Script will automatically initiate when a player dies in a ECP multiplayer game. This can also be set up to run in single player missions. The Spectator Script allows players to follow the action either as a seagull or through various camera modes.

ECP Performance:

Core redesign and code optimisation (New)

Inspired by the need of improving the game performance, we have redesigned the ECP core and improved the code of many effects/simulations scripts. Thanks to such effort, the players can enjoy an instant ECP startup followed by very smooth gameplay, even on the low-end pc's. The performance hit is generally unnoticeable, regardless of mission or computer characteristics.

Dynamic Global Array Structure (DGAS) architecture (New)

In order to prevent the crash-to-desktop (CTD) issue on mission resume we implemented an array database system, DGAS, represented by five global variables, from/to which the ECP data is processed and stored. This method proved to be quite reliable. As a result, players can save their missions without corrupting the savegame log - this is not assured, but it is still a great step forward to prevent the problem.

Enhanced MP reliability through the Array Interchange Monitor (AIM) (New)

As a consequence of the implementation of the DGAS, a new method of MP settings broadcast was developed, followed by an enhancement of the relations between server and client. Now, the game mode is rapidly distinguished and MP missions have a much better support and reliability.

Simulations:

AI information sharing and Adaptive Ally Detection (AAD) (New)

This system allows allied AI units - either from the same side or friendly to the resistance - to share the position of the enemy, depending on their distance from each other and their knowledge.

AI join

The player, if leader, can join single units to his/her squad - e.g.: last member of another squad, a crashed pilot, etc.

AI release (New)

The player, if leader, can release units from his/her squad. Combined with AI join, allows replacing units in a full squad.

AI surrendering and PoW interaction (New)

There is a chance of fleeing units surrendering themselves. The player will be able to capture unfriendly units, interrogate them, collect or destroy their weapons and halt them. However, if the player refuses to capture PoW's or lets them escape, these will regroup, collect weapons from dead bodies and get back in combat! On the other hand, player side units, that have surrendered but not been taken captive, can be told to fight.

AT/AA launcher backblast damage

Units standing at an AT/AA launcher's Back Blast Danger Area (BBDA), upon fire, will be caught by the backblast debris and get critically injured or even killed!

Bleeding damage (Updated)

Units bound by bleeding effects can suffer blood loss damage until being deceased or, otherwise, healed.

Bouncing fragmentation grenades (New)

A set of fragmentation grenades that replaces the default hand grenade according to the unit's side. Depending on type, the grenades have specific fuse times with a random factor, sometimes allowing air blasts.

Bouncing smoke grenades and smoke simulation (New)

A set of smoke grenades that replaces the default smoke grenades according to their colour and unit's side. Depending on type, the grenades have specific fuse and smoke release times. In addition, these grenades can be effectively used for screening purposes that works on AI also.

High Altitude Low opening (HALO) Parachutes (Updated)

HALO parachutes allow the player to decide when to open his/her parachute. It includes altimeter and auto-opening, preventing thus fatalities during cut-scenes.

Helo Coms (New)

The Helo Coms gives the player, if leader, full control over its squad helicopter, providing landing, insertion, extraction and flight altitude commands.

IR AA jamming and visual counter-measures

Aircraft engaged by AA guided weapons will release flares on the sky, an effect complemented by IR jamming, changing the trajectory of the missile. This is ideal for missions with air transportation, but rather limited during air combat.

Multiple ordnance suppression (MOS) (New)

The player will suffer visual and auditive suppression from most ordnance blasts at close range depending on the blast magnitude.

Random Weather and Snow (Updated)

Using the Island Detection Algorithm, developed by snYpir and further enhanced, ECP determines which island a particular mission is being played on. From this, random weather settings can be defined on a per-island basis. This means that weather may change more than once in a mission, at a rate chosen to the player appropriate to the particular island. In addition, snow can be implemented either for specific areas on a map (for example the snowy peaks on Nogova) or across an entire island (ie Winter Nogojev). Users can also add their own islands to the islands settings file via the 'ECP Island Matrix Tool'.

Tail rotor failure

Damaged choppers have a random chance of tail rotor failure. Once the tail rotor fails, the chopper will spin to the ground whilst smoking. Upon crashing, there's a chance of crew, if not already dead, suffering severe injury or even death.

Effects:

Aircraft altitude warning

An altitude alarm will sound when flying dangerously low.

Aircraft smoke

Damaged helicopters (BAS) and planes (RED and Zayfod) will smoke or even burn from the engines, according to the amount of damage. If kept working without being fixed, they'll will eventually blow up in the air from accumulated damage.

AT/AA launcher backblast

The AT/AA weapons now have the back blast effect, complemented by damage on affected units, as in real life. Smoke and debris are spewed out the tube, from the back - AT soldiers must clear their BBDA or risk court-martial!

AT/AA smoke trail (Extended)

All rockets and missiles now have more realistic smoke trails.

Blood spurt and bleeding (Updated)

ECP Blood is a highly reworked version of snYpir's original OFPEC Blood addon. This is now a lag-free blood fest featuring blood spurting, animated blood splashing on the ground and animated bleeding from wounds or critical injuries, which can be complemented by damage from blood loss. Dead bodies also have a chance of bleeding, besides BIS default bleeding.

Burning men (Updated)

Some crew will leave their burning vehicles, running and screaming in despair while being consumed by the flames. Not recommended for sensitive people... It can be even more terrifying when we watch a burning man bailing off a falling chopper...Oooooh!

Buzzing flies (Updated)

A while after being dead, some corpses might be infested by buzzing annoying flies. This effect brings home the true morbidity of combat.

Church chanting, animated fountains and lighting effects (New)

Missing the monks chanting in churches? Flowing water in fountains? Now, the ECP provides both effects, complemented by fancy lighting effects visible at night.

Explosion craters (New)

3D craters will appear underneath vehicles that suffered catastrophic explosions. These can be used for cover.

Explosion effects (Updated & Extended)

ECP provides many new explosion effects, from simple smoke blasts to amazingly hot fireballs, with debris and dust all over the place! This not only affects vehicles, but also the most varied ordnance. Followed by great fire effects, this is one of the most interesting and complete set of effects provided.

Fire effects (Updated & Extended)

Vehicles, houses, debris, men: everything burns! Flaming nights and smoky days envelope us in the most exciting combat environments.

Helicopter dust

There are available two rotorwash dust effects for helicopters. Start the engines and embark or disembark between dust clouds.

Mounted machine gun cartridges (New)

Now, heavy machine guns mounted on vehicles or tripods discharge bullet cartridges too.

Shell and bullet whiz (Extended)

Thanks to our sound guru, Zayfod, flying lead can be heard! The player will hear the whiz of bullets and cannon shells passing close. Keep your heads down!

Tank main gun flash (New)

From ORCS' code, we implemented this amazing effect that brightens and expands the flash of a tank's main gun.

Tank shock dust

Just like in real life, shock wave dust will be formed around a tank upon firing its main gun.

Working lighthouses (Updated)

The lighthouses from recognised islands will effectively work, with searchlight, fog horn and exterior lighting above the door.

Muzzle smoke/flash (New)

Smoke and occasional muzzle flashes come from both small arms fire and vehicle mounted machine guns. Be careful to not give yourself away, the more you fire the more the smoke drifts from your barrel.

Optional Plugins

ECP Plug-Ins are ECP exclusive addons that resort to the existing structure to provide new features - new experiences. Install, enable and experiment! Download plug-ins from the ECP links at the bottom of the page.

Sounds:

Dynamic Range Sounds (DR)

The Dynamic Range (DR) plugin provides an alternative set of realistic sounds for a different game experience, enhancing the human interaction towards the virtual environment. By replacing many default sounds, this plugin is the solution that breaks the routine of OFP sonority. From a pack originally developed by Satchel; PV and Zayfod had perfected and extended DR along the year of 2003. Thenceforward, Zayfod has improved the sound configuration, assuring the plugin remains adequate to the new sound features and visual simulations.

Dynamic Speaking AI (DSAI)

The Dynamic Speaking AI (DSAI) plugin is one of our greatest novelties and represents another conquest over the game limitations, that we take delight in sharing with the community. Based on the AI information sharing interaction tree, the DSAI simulates circumstantial AI dialogue. According to their behaviour and the situation, the AI units talk, scream and act. It provides the player an unique scenery of envelopment, which turns out to be quite useful in combat situations. Enjoy it!

Radio Chatter (RC)

The Radio Chatter (RC) plugin is a very thrilling feature in mounted combat. Armoured and air transportation are now accompanied with radio chatter from real combat scenarios, leading you into a deeper realm of fantasy. This effect is still only available onboard of air and armoured vehicles. Sometimes, the chatter might not have much to do with the circumstances since it is mostly associated with combat environments. Nevertheless, it gives the impression to the player that they are in a world where many other things are happening around them, perhaps on other islands or other parts of the island. Its de/activation is available through the settings dialog, in game.

ECP Settings

The ECP has both new effects and simulations. Effects are purely visual changes to enhance your OFP experience. Simulations are 'things that happen' and they may modify gameplay.

There are two ways to configure ECP effect and simulation settings:

  1. Via the settings files in the @ECP folder, or
  2. Via the ECP settings dialog.

ECP Settings:

ECP Settings Files

The ECP settings files are located in the @ECP folder. Open these up in either notepad or Notepad++ (recommended). The settings files are fairly well commented. You do not need to restart OFP if you load these settings, you only need to restart the current mission.

The available settings files are:

  • ECP_Settings.sqf > contains the settings related to most of simulations and effects.
  • ECP_Blood_Settings.sqf > contains the settings related to blood effects.
  • ECP_Island_Settings.sqf > gathers information regarding island configuration.
ECP Settings Dialog

The ECP Settings Dialog is accessible via the 'pause' (ESC key) screen whilst playing OFP. This dialog allows you to configure the support pack for the particular mission you are playing. It does not save the settings to disk. If you want to change settings across all your missions you must edit the settings files as detailed above. Note that certain settings will not be able to be changed during multiplayer games (they will be set by the server from variables defined in the settings files).

ECP Override Settings

When using the ECP settings dialog you'll notice 'override' settings of low, medium or high. These can be also be set by changing the 'ECP_override' variable in ECP_Settings.sqf.

Following are very approximate system requirements for each override setting:

  • Low - P4 1.5 GHz or slower
  • Medium - P4 1.5 - 2.5 GHz
  • High - P4 2.5 GHz or faster

It is recommended that you set your preferred override in ECP_Settings.sqf correctly to ensure satisfactory performance. This offers a quick way to increase or decrease ECP effects and is intended for those end users that are less familiar with the ECP_settings.sqf and its many options.

We recommend that you become familiar with the ECP_settings.sqf and customise all effects for your PC so that you eventually won't need to use the 'ECP_override' variable at all.

Effects Distance

On the dialog you'll notice a slider for 'effects distance'. This is used to calculate the distance in meters (or closer) that the player must be from an effect in order for the effect to occur. Before ECP determines if the effect will occur it multiplies the 'effects distance' by a multiplier 'LOD multiplier'. The 'LOD multiplier' is set in ECP_Settings.sqf. For example, if the effect distance was set to 300m (ECP default) and the LOD multiplier for blood (ECP_lod_bld_x) was set as 0.5 (ECP default in ECP_Settings.sqf) then the final effects distance would be 150m. So if a unit got hit 300m from the player there would not be a blood spurt from that unit.

We use LOD multipliers because it enables ECP to increase or decrease the final effect range for different effects. Example, the LOD multiplier for explosions (ECP_lod_exp_x) is 2, thus giving a final effect range of 600m. This is because one would expect to see explosion effects at that range but not necessarily blood.

'Effects distance' affects all effect ranges and is universal to all effects.'LOD multiplier' affects only the effect that it is assigned to and it may vary in value for different effects. Effects distance can also be set via the 'ECP_lod_dis' value in ECP_Settings.sqf.

Important! Cutscenes may not have effects visible because of the LOD culling (the player may be too far away from where the cutscene is taking place).

To disable the effects distance concept set ECP_lod_enable equal to false: ECP_local set [16 , false ];

ECP Multiplayer

The ECP is fully compatible with MP play. It is recommended that all computers play with the ECP mod to prevent 'modified config.bin' error messages. It is important that all computers have the same version of the ECP as well.

You may play on non-ECP servers with the ECP installed, however many effects will not be visible because a number of important eventhandlers are registered on remote computers, not your own.

The ECP will operate in either dedicated or designated server mode.

Multiplayer:

Dedicated Server

If you are using a dedicated OFP server (running the OFP executable with the -server option) then the ECP will use dedicated server mode. This means that the 'simulation settings' on the dedicated server will be used by all connected to the server. All 'effect settings' are local to the client computers - you could turn off blood on a client, for example, and this would not effect any other computer on the network.

Designated Server

If you are not using a dedicated server, and the game has been started through the OFP 'multiplayer' interface, then the ECP will automatically pick one of the computers on the network to act as a designated server. The 'simulation settings' on this designated server will be used on all computers. Unfortunately there is currently no way for the ECP to determine which is the actual server in this sort of game (we are working on it!).

Important Notes!

It is ok to run the ECP on your system and connect to non-ECP servers on the internet. All of the ECP computers in the game will synchronise simulation settings amongst themselves as appropriate. Note that some effects will not be seen due to certain eventhandlers being local to other, non-ECP computers.

If you are a mission designer, please put a single trigger or game logic unit name 'ECP_server' in your mission. This will allow the ECP to correctly determine which computer is the server.

ECP Mission Editing

The ECP is designed with mission editing in mind, and all ECP settings can be explicitly defined by a mission editor for a specific mission. In order to know which values you should modify in the ECP database, take the ECP_Settings.sqf as reference.

Mission Editing:

Overriding ECP settings File

Suppose, for example, that you don't want tail rotor failure to occur in your mission. In your mission's init.sqs file you would have: ECP_public set [5 , true ] This would replace the user-defined value in ECP_Settings.sqf. There are also a great range of values and functions that you can use within your ECP-compatible mission.

Here are some important FAQ entries that you should read if you are mission editing with the ECP:

  • Why can't I see ECP effects in my cutscenes?
  • How do I make non-compatible addons work with the ECP?
  • How do I use the ECP Editor Enhancement?
ECP Database Values

When making missions specifically for use with the ECP, the following values might be useful:

  • ECP_server_id / ECP_Internal select 31 (ECP_is_server) - Integer / Boolean

ECP_server_id will contain an ID representing either the dedicated or designated server in an MP game. It may be:
ECP_server_id == -2 // Server not yet chosen
ECP_server_id == -1 // Dedicated server or standalone game
ECP_server_id >= 0 // Designated server (one of the clients is acting as ECP designated server)
ECP_is_server will equal true on the computer that is server.

  • ECP_Internal select 24 // (ECP_island_array) - Array

ECP_island_array contains information regarding the current island (loaded from ECP_Island_Settings.sqf). It will contain the default island settings (specified in ECP_Settings.sqf) if the current island could not be detected. See the top of ECP_Island_Settings.sqf for a description of each element in ECP_island_array.

  • ECP_Internal select 18 // (ECP_units) - Array

This variable is an array of all 'man' units recognised by the ECP.

ECP Database Functions
ECP system functions
  • <list of units> call (ECP_resources select 30)

This function, ECP_addUnits, will add <list of units> to the ECP in a particular mission. It is designed to be used in a trigger with the following characteristics:

  • Size: 50000 x 50000 (as big as the entire map)
  • Activation: Anybody (Once) when 'Present'
  • Condition: this
  • On Activation: thislist call (ECP_resources select 30)

From ECP 1.057.

  • <"unit or camera"> call (ECP_resources select 25)

This function, ECP_addLODTgt, will add <"unit or camera"> to the ECP for the purpose of LOD calculations. Note that the name of the unit or camera must be enclosed in inverted commas (").
From ECP 1.065.

ECP Island related functions
  • <island array> call (ECP_resources select 37)

ECP_AddIsland adds a new island to the ECP island array. This should be done right at the start of a mission. <island array> is as per that described in ECP_Island_Settings.sqf. If the island name already exists, the new island array will replace the old one. Mission designers can use this function to specify their own island settings (rather than use player-defined ones).

  • [<resolution>,<terrain size>,<num indexes>] call (ECP_resources select 37)

A key component of an island definition is the island matrix. This is the 'key' used to determine what island is currently being used. This function, ECP_GetMatrix, will display a dialog that can be used to calculate the island matrix. See ECP_Island_Settings.sqf for more information.

ECP Height and Distance functions
  • [<object>,<game logic unit>] call (ECP_resources select 6)

ECP_getASLHgt returns the height above sea level of <object>.

  • [<position>,<game logic unit 1>,<game logic unit 2>] call (ECP_resources select 7)

ECP_getASLHgtPos returns the height above sea level of <position>.

  • [<position 1>,<position 2>] call (ECP_resources select 8)

ECP_distancePos returns the 2D distance of <position 1> to <position 2>.

  • [<position 1>,<position 2>] call (ECP_resources select 9)

ECP_distancePosSqr returns the 2D distance squared of <position 1> to <position 2>. This is faster than ECP_distancePos because it doesn't perform a sqrt.

  • [<position 1>,<position 2>,<game logic unit 1>,<game logic unit 2>] call (ECP_resources select 10)

ECP_distancePos3D returns the 3D distance from <position 1> to <position 2>. This is a slow, inefficient function. Positions are expected to be height above ground level.

  • [<position 1>,<position 2>] call (ECP_resources select 11)

ECP_distance3D returns the 3D distance from <position 1> to <position 2> using pythagoras theorem. It is expected that the two positions are height above sea level.

  • [<position 1>,<position 2>] call (ECP_resources select 12)

ECP_distance3DSqr returns the 3D distance squared from <position 1> to <position 2>. This is faster than ECP_distance3D because it doesn't perform a sqrt.

ECP Direction functions
  • [<position 1>,<position 2>] call (ECP_resources select 3)

ECP_getDirPos returns the direction in degrees from <position 1> to <position 2>.

  • [<unit>,<position>] call (ECP_resources select 4)

ECP_getDirRelPos returns the relative direction in degrees from <unit> to <position>. 0 degrees is considered to be to the direct front of <unit>, 90 is to the right etc.

  • [<position>,<center_angle>,<sector width>,<position in sector>] call (ECP_resources select 5)

ECP_inAng returns true if <position in sector> is within the sector at <center_angle> degrees of an angle <sector width> degrees wide.

ECP Vector related functions

A vector is considered to be an array containing 3 elements: [x,y,z].

  • [<vector 1>,<vector 2>] call (ECP_resources select 15)

ECP_vDiff returns a vector which is the difference between <vector 1> and <vector 2>.

  • <vector> call (ECP_resources select 16)

ECP_vMag returns a number which is the magnitude of <vector>.

  • <vector> call (ECP_resources select 17)

ECP_vDir returns a number which is the direction of <vector>.

  • <vector> call (ECP_resources select 18)

ECP_vUnit returns a unit vector from <vector>.

  • [<position 1>,<position 2>,<game logic unit 1>,<game logic unit 2>] call (ECP_resources select 19)

ECP_vVelUnit returns a velocity vector from <position 1> to <position 2>. Positions are expected to be height above ground level. The returned velocity vector will be a unit vector.

  • [<vector>,<number>] call (ECP_resources select 20)

ECP_vMultiply returns <vector> multiplied by <number>.

  • [<vector 1>,<vector 2>] call (ECP_resources select 21)

ECP_vAdd returns <vector 1> added to <vector 2>. From ECP 1.057.

ECP Misc functions
  • [<variable>] call (ECP_resources select 0)

ECP_is_Null returns true if <variable> is not defined. Ensure <variable> is not an array or you will CTD.

  • [<variable>] call (ECP_resources select 1)

ECP_is_scalar returns true if <variable> is not defined. Meant for use if <variable> is an array.

  • [<number1>,<number2>] call (ECP_resources select 2)

ECP_getRandom returns a random value between <number1> and <number2>.

  • <array> call (ECP_resources select 23)

ECP_randomElement returns a random element from <array>.

  • <array> call (ECP_resources select 24)

ECP_randomIndex returns a random index (number) from <array>.

  • <number> call (ECP_resources select 13)

ECP_roundn round <number> to the nearest whole number.

  • [<variable>,...] call (ECP_resources select 14)

ECP_echo prints the value of <variable> to the screen. This is the same as doing hint format["%1",<variable>].

  • [<position>,<distance>,<resolution>,<type>] call (ECP_resources select 22)

ECP_nearestObjs returns an array of units of class <type> around <position>, out to a distance of <distance>. <resolution> is the number of meters between nearestObject calls. <position> is a 2D or 3D vector. <distance> and <resolution> are numbers. <type> is a string (object class name). This function is neither fast nor accurate. For experimental use only.

ECP Compatible Addons

Updated 03/06/05 If you are making an addon that provides a new vehicle, and defines it is own 'class EventHandlers', you'll need to do the following in order to make it ECP compatible.

Adding ECP Eventhandlers:

ECP Superclass eventhandler
  • One line above class CfgVehicles, add:

class ECP_EventHandlers {};

  • Where you define your unit's eventhandler, use::

class EventHandlers : ECP_EventHandlers { ... eventhandlers here ... } For example, if you were making a new boat addon, you'd do the following: class ECP_EventHandlers {}; class CfgVehicles { ... class MyBoat : Ship { ... class EventHandlers : ECP_EventHandlers { fired="hint {fire!}"; } } }; Note that any eventhandlers you define in this fashion will replace ECP eventhandlers. In the above example, the new boat unit would not have ECP fired events. It would however have ECP init, hit and killed events.
Advanced!
You can enable ECP events as well as your pre-defined events by using certain ECP EH code and functions. The relevant ones are:

  • init: _this call (ECP_resources select 40);
  • fired: _this call (ECP_resources select 41);
  • killed: _this call (ECP_resources select 42);
  • hit: _this call (ECP_resources select 43);
  • incoming missile: _this call (ECP_resources select 44);
  • getout: _this call (ECP_resources select 75);

In the above example, you could enable ECP fired events as well as custom ones by using: class EventHandlers : ECP_EventHandlers { fired="_this call (ECP_resources select 41); hint {fire!}"; } There is no requirement to define separate init, hit and killed EHs in this case because these are inherited from the ECP_EventHandlers class. The above code would not cause an error if for some reason your addon was used and the ECP was not present.

Using ECP in your MOD

ECP is open-source and we are happy for other mods to use our scripts and config settings. We do ask that:

  • Full credit is given to either a) the ECP mod or b) individual script authors as appropriate.
  • You contact us if you intend to sell a mod that contains ECP components.
  • If you modify or improve scripts please send them to us for inclusion in later ECP releases. You will of course be credited appropriately.
  • You must read and agree to the ECP End User License Agreement.

ECP End User License Agreement:

End User License Agreement

License.

ECP license agreement.

ECP stands for Enhanced Configuration Project.

OFP stands for the game Operation Flashpoint.

OFPR stands for the game Operation Flashpoint Resistance.

IP stands for intellectual property.

MOD stands for modification.

EULA stands for End User License Agreement.

The ECP is a MOD for the game OFPR and OFP.

The ECP Team retain all ownership and copyright for the code within the ECP (in particular, each ECP team member retains ownership and copyright for his/her own code) with the exception to the debug spectate code. The debug spectate code is now privately owned and may not be modified in any way by anyone. The ECP Team has been given permission to retain the debug spectate code within the ECP for the benefit of the community. The debug spectate code may not be used for any military training, may not be sold, may not be leased, may not be rented, may not be developed, and may not be used with any software other than OFP or OFPR.

The ECP is free for all to download, free to use, and free to distribute, and free to develop for the game OFP or OFPR for the purpose of entertainment.

The ECP code may not be used for any military training, may not be sold, may not be leased, may not be rented, and may not be developed or used with any other software other than OFP or OFPR without written permission from the ECP Team and the ECP author of that particular code.

The ECP may be used as a base for third party modifications for the game OFP or OFPR on the condition that any betterment's or code enhancements to any particular ECP code be forwarded to the ECP team for inclusion in the next ECP release, full credit for any enhancements will be given to the author.

If you are using ECP as a base for a third party MOD you may switch off any and all ECP effects and add whatever code you like, but the end user must have clear and definitive instructions on how to re enable any and all ECP effects. Any changes to ECP code MUST be logged and we take NO responsibility for any errors caused by the code when included in a third party MOD.

If you only wish to use one or two particular elements from the ECP for your MOD then full credit MUST be given to the author of that particular code and listed in your MOD. Support for any ECP code that has been isolated and incorporated into any third party MOD will be the responsibility of the MOD author. We will do what we can to help, but it can be very difficult to solve ECP code issues when it has been put into a foreign architecture. That is why we recommend that the ECP remains intact as a single entity, and that it is built on, rather than pulled apart and mutilated. Many of its effects and simulations are all inter linked with the ECP architecture.

The ECP MOD RELEASE VERSION (labelled as such) may not be altered in any way or be released by anyone other than the ECP Team. The ECP Team retains the sole right to develop and release the ECP MOD RELEASE VERSION. We encourage development and inspiration from the community with the ECP MOD DEVELOPMENT VERSION. That is why we make a development version available for the community to download and work on. If you would like your development alterations to be added to the ECP MOD RELEASE VERSION then we would love to have you on board as an ECP team member. If you do not wish to join the ECP Team but you wish to add your ECP development code then you may forward that code to the team and it will be included in the next ECP MOD RELEASE VERSION, full credit will be given to the author and the author will retain his/her ownership and copyright for that particular code.

This ECP EULA must be included with any third party MOD that uses any ECP code or code developed from ECP code.

By the community, for the community.

Disclaimer.

The ECP is in no way affiliated with Bohemia Interactive Studios or Codemasters.

The ECP is not an official modification for the game OFP and OFPR.

The ECP Team is not responsible in any way for any negative results that may happen to your computer after installing the ECP.

Use this software at your own risk.

Note. The ECP requires version OFP 1.96 or higher. Download the appropriate patch from the ‘Operation Flashpoint - Flashnews’ board of the Official Forum:

http://forums.bistudio.com/forum.php

The ECP development version will be required if you intend to use ECP as a backbone to your mod. Contact us if you require assistance and we can provide this to you.

Limitations

ECP requires OFP version 1.96 or higher.
Current (known) limitations of the ECP are as follows (these will probably change with each release):

Limitations:

Multiplayer (MP) compatibility

Although the ECP is MP compatible (effects will be seen on all computers), it is currently impossible for the ECP to detect which computer is the server in a non-dedicated multiplayer game (ie a game started through the multiplayer interface within OFP).

For this reason it is recommended that you use a dedicated server (run OFP with the -server option).

In order to get around this problem a designated server will be automatically allocated by ECP if there is no dedicated server. This designated server will then control weather, for example.

Grenades not always responding to real-world physics

Unfortunately the OFP physics engine is very poor. We'll have to wait for BIS to release a major update before we see objects responding to physics as they would in real life. The bouncing grenades, for example, have to weight 80000Kg (175000lb) in order to stay on ground, otherwise they'd be ejected to outer-space... So, if you throw a grenade on a tank, the tank may incur a small amount of damage upon the grenade bouncing off it.

Winter Kolgujev is not detectable

As Winter Kolgujev is a direct copy of Kolgujev, Winter Kolgujev cannot be detected by the ECP island detection system. Winter Nogojev can be detected however (time to upgrade, people! Download Winter Nogojev link courtesy of
OFP-Faguss.com
).

The other option is to edit your missions and create a trigger as specified in the answer to "How do I make non-compatible addons work with the ECP?" in the FAQ below.

Frequently asked questions (FAQ)

Go up and read Limitations if you have not already. Contact the ECP Team if your question isn't answered here. FAQ last updated 03/06/05 (ECP 1.085).

FAQ:

General

Q: How do I make a shortcut to run the ECP? (10/01/04)
A: Create a shortcut to your latest OFP application. Edit it is properties, and after "FlashpointResistance.exe" enter -mod=@ECP. Hit apply and then OK.

Q: How do I run other mods with the ECP?
A: Add -mod=@ECP;mod name;mod name etc. to the commandline in the shortcut. Note that only one config.bin can be for any one instance of OFP (you can't run FDF and ECP, for example).

Q: I get lag with the ECP, can I stop this?
A: You will have to edit the @ECP\ECP_settings.sqf file to suit your needs, e.g. turn off some of the effects. I.e. to turn off chopper dust you would edit '\@ECP\ECP_Settings.sqf' in a text editor (notepad will do) and make the value ECP_h_dust_enable false:
ECP_local set [33 , false ];
Q: How do I use the ECP Debug Spectator©? (05/01/04)
A: You must first 'Preview' your mission and then the 'Spectate' button in the editor will work. Ensure you 'Preview' after every update, before spectating.
Hit the book icon on the left of the screen (when spectating) for instructions on usage.

Q: Some units don't seem to have effects working! (updated 05/01/04)
A: This is a known bug that happens when using addon units that define their own eventhandlers. See Making ECP Compatible Addons below, or make a trigger in the mission as specified in the answer to the next question.

Q: How do I make non-compatible addons work with the ECP? (05/01/04)
A: You either have to modify the addon's config.cpp file (as specified in Making ECP Compatible Addons), or edit each mission and place in the following trigger:

  • Size: 50000 x 50000 (as big as the entire map)
  • Activation: Anybody (Once) when 'Present'
  • Condition: this
  • On Activation: thislist call (ECP_resources select 30)

Note that you'll need at least one default BIS unit on the map (e.g. a unit of type WEST: Men) in order for the ECP to initialise.

Q: When I disable certain effects/simulations using the ECP settings in game GUI then others are also disabled. Why? (new 03/06/05)
A: Some features require that others are enabled. Example: Grenade suppression requires that bouncing grenades also be enabled.

Q: Is ECP 1.075 backwards compatible with previously made missions designed to work with ECP? (new 03/06/05)
A: Yes If any third party mission has added variables to their mission to disable or enable effects with ECP 1.071, they will still work with ECP 1.075.

Q: When I start OFP I can see my mouse cursor. How do I remove it? (new 03/06/05)
A: Don't do anything. Once the main menu is loaded, the Windows mouse cursor disappears.

Effects

Q: Why can't I see ECP effects in my cutscenes? (17/01/04)
A: From 1.060 ECP uses 'level of detail' (LOD) to determine if effects should be shown or not. It the 'player' unit is too far from the cutscene then effects will not be seen.
If you are simply playing, open @ECP\ECP_Settings.sqf and find the 'ECP_lod_enable' value. Make it equal to false. It is not recommended that you disable LOD for good, because this will decrease frame rate dramatically in big missions.
If you are designing a mission, after creating your camera (using camcreate), use the function 'ECP_addLODTgt' (ECP_resources select 25) to register your camera with the ECP. I.e. if I had used 'camcreate' to create a camera called 'camera', I would add it to ECP as follows: "camera" call (ECP_resources select 25) You only have to add a particular camera to ECP_lod_target once in a mission. Note that the name of your camera (passed to the function) must be enclosed in inverted commas (").

Q: I don't want to turn any effects off, but I get some lag when units are shot? (new 03/06/05)
A: Open up the '\@ECP\ECP_Blood_Settings.sqf' file in a text editor (notepad will do) and change the blood_particle_number to a lower number, default is 50.

Q: Some vehicles don't burn, why?
A: There is a random chance that sometimes a vehicle won't burn. Change ECP_fire_random_chance in ECP_Settings.sqf as required.

Q: I have the new ECP compliant USMC units but when I run ECP Dynamic Range with them I see no smoke trail from the Javelin. Why is this?
A: This is a known bug. We are working on it.

Q: If I stand facing a wall really close (like Im almost touching the wall) and throw a grenade at the wall the grenade disappears, but I hear a bang somewhere else and no damage occurs. (new 03/06/05)
A: This is a known bug. We are working on it. However, I don't think many people would encounter this unless they had a death wish.

Q: Why are the hand grenades sometimes attached to the ground, instead of bouncing as usual? (new 03/06/05)
A: The OFP's engine is not well prepared to handle objects according to the physics laws, in what concerns collisions. Thus, you might sometimes get a nice bouncing effect, sometimes not. Very often, the hand grenade model could disappear underground, due to a bug that is still under study and which is thought to be related with configuration classes dependencies. In order to avoid this issue, we found a simple solution: we set the grenade model Surface property to "Above Surface", preventing it from getting buried and granting a ground level explosion.

Q: It has been declared that the new smoke simulation prevents the AI from viewing beyond the smoke. However, after throwing a smoke grenade towards the enemy, it still fires at me. Why? (new 03/06/05)
A: Well, that's, perhaps, the realistic point of the new smoke obstruction simulation. The AI keeps shooting because it still has the reference of the enemy's last position. You might have noticed, sometimes, the target marks moving along the scenery even after the target stopped. This lag effect is similar when you place a new object between you and the enemy, which forces him to shoot randomly against an "invisible" target. So, the AI will shoot against your last position until it looses the reference. Thus, you'd better move from your position if you don't want to get hit.

DSAI

Q: What is DSAI ? (new 03/06/05)
A: DSAI stands for "Dynamic Speaking AI". AI characters will speak to each other according to their behaviour, the vehicles that they are in, their health, their environment, and their numbers. They will laugh, cough, sneeze, burp, tell jokes, scream commands, call for help etc. They may even strike up a song if their numbers are high enough. As an added feature of DSAI, the AI characters may shuffle around with idle movements (animation's) if they are stationary. DSAI is multiplayer compliant.

Q: Is the player included in DSAI ? (new 03/06/05)
A: No. With the exceptions of screaming "Grenade" and joining in a group's song the player says nothing.

Q: Does everyone hear the same DSAI comments and see the same DSAI animation's in multiplayer? (new 03/06/05)
A: Yes.

Q: Can I choose which sides have DSAI if I don't want all sides to have it activated? (new 03/06/05)
A: Yes.

Q: Can I stipulate certain unit types to not activate DSAI? (new 03/06/05)
A: Yes. ECP automatically excludes snipers from using DSAI.

Q: OK, DSAI doesn't work. I placed a unit on the map and stood there looking at him for ages but he didn't say a bloody word to me. What's up with that? (new 03/06/05)
A: You need to give him a buddy to talk to. AI will not talk to the player (as the player doesn't talk back). Simply place one or more units next to him and they will talk to each other. The units do not have to all be in the same group in order for them to chat. One member of group "A" may talk to one member of group "B" or they may chat within each group.

Q: What languages and accents are catered for in DSAI? (new 03/06/05)
A: Currently DSAI v0.1 uses English with American accent for the West and Russian for East and Resistance sides.

Q: Does this mean we will get British, German, Vietcong versions of DSAI? (new 03/06/05)
A: Maybe. We simply don't have the sound library for it at the moment. If you wish to donate sound voice samples please contact the ECP Team and there may be a release of another language.

Multiplayer

Q: Why do I need to remove files to set up a dedicated server? (new 03/06/05)
A: You don't, the server will work fine with them. They will however take up some of the server's RAM, making it run somewhat slower. This is why we recommend dedicated servers remove these files.

Q: Can I use ECP 1.085 and connect to a server running ECP 1.071? (new 03/06/05)
A: Yes You can, but high ping and some desync will occur on your end. Also, many effects that are determined remotely on the server will not be seen on your client due to the updated ECP network code. So don't friggin' do it, okay?

Q: When I release AI units from my group during a multiplayer game they don't move to the spot on the map where I clicked. Why? (new 03/06/05)
A: This is a known multiplayer bug, we are working on it . A work around is to tell your AI to move to that spot, then once they are there, release them.

Credits

In this section we'll try to credit everyone who have contributed for the ECP.

Credits:

Active ECP Team Members until ECP 1.085 release 24th July 2005:
  • Acecombat
    • Beta-testing
  • GD
    • Beta-testing
  • Homefry
    • Public Relations
  • Kaliyuga
    • Beta-testing
  • Komuna
    • Architectural optimisation
    • Texture and model artist
    • Graphics design
    • Simulation scripting
    • Configuration changes
    • Third-party scripting/programming
  • KTottE
    • Beta-testing
  • Kurayami
    • Advice
    • Configuration tweaking and visual improvement (EECP)
  • Macguba
    • Beta-testing
  • MachoMan
    • Webpage management, third-party scripting/programming
  • RED
    • Effects and simulation scripting
    • Beta-testing
  • Shadow
    • Beta-testing
    • Advice
  • Tim Pink
    • Music composition & production
  • void_false
    • Russian translation
    • Voice acting
  • Zayfod
    • Marketing Campaign
    • Project leadership
    • Sound & multimedia production
    • Code optimisation
    • Effects and simulations scripting
    • Dialog design
    • Voice acting
    • Graphics design
    • Configuration changes
ECP Team Members retired as of ECP 1.071 2004 release:
  • bn880
    • Effects scripting
    • Quality control
  • DeadMeat
    • Modelling advice
  • General Barron
    • Simulation scripting
  • Gummi
    • Camera scripting
  • Hunter
    • Animations
  • Igor Drukov
    • Dialogs
    • Particle systems
    • Effects scripting
  • O'Neil
    • Camera scripting
  • PitViper
    • Dynamic Range Audio
    • Config decryption
  • snYpir
    • Former project leadership
    • Project concept
    • General scripting
    • ECP Private Forum creation
  • Stalker
    • Effects scripting
  • TJ
    • Effects scripting
    • Configuration changes
  • Toadlife
    • HALO script effects
    • Former ECP mirror Admin
  • Vickingo
    • VikPack script enhancments
Additional Thanks To:
  • OFPEC and all its great staff
    • for being our beloved host
  • Noon416, Sui, HuBBa
    • for their support and ECP ftp maintenance
  • BAS, especially TJ
    • for their contribution and support
  • Colonel Klink
    • for his ASL models and support
  • FDF, especially Kegetys
    • for their code
  • Goldmember
    • from GMR mod explosions, for his contribution
  • Vektorboson
    • for his code
  • ORCS
    • for their code
  • Shadow
    • for all his support
  • Insane
    • for all his support and Beta testing
  • Prime
    • For his constant support and dedicated server/zscti/mfcti Beta testing
  • snYpir
    • for starting the ECP (the Mother of all Mods) in the first place
  • The OFP community
    • for your patience, enthusiasm, and inspiration
  • The Beta-testers
    • TZW, especially NedFox
  • Bohemia Interactive Studio and Codemasters
    • for making Operation Flashpoint - the best game ever made!

We would like to thank all the authors of the scripts we used in this pack!

ECP Promotional Media

Screenshots

Working Lighthouses
Boat explosion stage 1
Boat explosion stage 2
Boat explosion stage 3
Persistent shell casings
Burning vehicle crew
Atmospheric Church lighting 1
Atmospheric Church lighting 2
Camp fire smoke and embers
Atmospheric fountain lighting and particles
Grenade particle effects
Bouncing hand grenades
Helicopter insertion command interface
Vehicle magazine explosion particle effects 1
Vehicle magazine explosion particle effects 2
Enhanced Night Vision
Realistic street lamp illumination 1
Ordnance water impact particle effects
Ordnance impact particle effects
Missile trail Particle effects

Videos

Alt text

Review

Review by Shadow - BIS Forum Admin

External Links

Release Announcement

ECP Homepage DEAD LINK

ECP 1.085e (latest patch) BI forum release thread

ECP 1.085 Official OFPEC forum release thread

Download

Be sure to get the 1.085e Patch! Solves CTD.
ECP 1.085 download at Operation Flashpoint Files (+1.085e Patch)

ECP 1.085 OFP.info release thread with download link (requires language selection first, then the link will work) link courtesy of
OFP-Faguss.com

ECP 1.085 download at OFP.info Direct Download link courtesy of
OFP-Faguss.com