DMA Coin Co-op Engine

An addon-free engine that allows anyone to easily create dynamic coop campaigns. Features modular scripts for easy unit/weapon replacement.


Do not refresh or leave this page!

File Description

An addon-free engine that allows anyone to easily create dynamic coop campaigns. Features modular scripts for easy unit/weapon replacement.

Read More

Download '' (101KB)

Coin Coop Engine (CCE)
Public Beta v0.1

By Dynamic Mission Alliance (DMA)
21 September 2005

DMA CCE Credits

Design and scripting: 

Supplementary scripting, design, support, testing and feedback:

Save/Reload scripts:
CrashDome (Sinews of War)

Incorporates scripts by:

Support system inspired by snYpir.



CoIn Coop Engine is a tool for mission makers to easily make their own dynamic missions. You may release missions based on CCE without the permission of DMA. However, DMA requests that the mission maker makes SIGNIFICANT ENHANCEMENTS (eg. new mission types, new campaign elements, etc) to any mission planned for release. A simple port of units/island is not enough. The reason we ask this is to promote expansion and creativity.

You do NOT have permission to update core CCE and release it without DMA's permission. The reason for this is that I wish to keep CCE modular and easily edited. If several non-DMA versions of core CCE were available, updating and supporting could become difficult.

If you make new spawn/weapon/support scripts for CCE, please contact TacRod (or another member of DMA) and any improvements will be included in a future update of CCE. Full credit will be given.

If you have any questions, please contact a member of DMA.


Operation Flashpoint 1.96

DMA Naval or Army replacement configs are not required, but are STRONGLY recommended for the best play experience.


It should work in both MP and SP, with as many players as will fit in the group "PLAYER_GROUP".

The basic goal of CCE is to engage in a series of missions with enemy insurgents. Killing them decreases their popularity, morale and equipment. If their morale and material reaches zero, then you win. However, losing friendlies, failing missions (or, when implemented, killing civilians) reduces the "commitment" of your superiors. If commitment reaches zero, you lose.

To understand what this code is supposed to do, it is advisable that you play Dynamic Afghanistan (or CoIn). If you have not done so, then please go to this link:;act=ST;f=55;t=45597


MISSION: Speak to the CO to be assigned a mission. When you see the "RTB for debrief" text, return and speak to him again.

REST: Marked on the the map, this function is REQUIRED after every mission. It heals and rearms soldiers. During this time, a purge will run, deleting all enemy units and most friendly ones.

REARM: Deletes all ammo and adds a full load to each soldier


Info: Select from the radio to display current mission, location, etc.

Move helo: Click this radio option, then click on the map to move the insertion helo to the click location. May be changed in-flight.

Helo orders: Using this dialogue, you are able to give specific orders to the helo.

Teleport: Click the radio option, then click on the map where you want to go. Squad will be teleported to that position. This is not intended for in-game use. It is mainly for debugging missions.

Support: Click the desired location for support and then a dialogue will offer you the following options:

 - CAS: 2 gunships move to the location and engage any enemy they find
 - Artillery: Delivers a 4-gun sustained barrage to the mapclick location. Currently unlimited, will eventually be restricted.
 - Flares: Lights the night sky up with a barrage of flares.


1. Strange spawn errors:
 - Sometimes AI have their weapons removed by the enemy weapons script, but no new one is allocated
 - Sometimes AI seem to spawn in the water, even after their logic has been placed
 - Sometimes AI squads fail to attack in Wave and defence missions

2. Bodies of dead players are not cleaned up after respawn

3. Gameplay not balanced

4. Helo dialogues appear for all players

5. Possible to use "getout" from helos in flight

6. CTDs reported by some players in Wave missions. The only cause I can think of is memory problems. CCE has a LOT of scripts running each mission.


A few words on design decisions:

* Playabilty

This release is essentially an engine, NOT a fully-fledged mission. I know in it's basic form CCE is not all it could be. The base is not well laid-out, no effort has been put into atmosphere. I have put all of my energy into the technical side of things. I am hoping that members of the OFP community will take this basic mission and enhance it, much as Honchoblack enhanced the original CoIn, resulting in Dynamic Afghanistan.

* Variable Names

Yes, the scripting is fairly inefficient. This has been done for the benefit of people who wish to edit. CCE uses quite a web of scripts, so I have tried to make it as easy as possible to get familiar with them. Variables named "clc" are not as meaningful as "client_code".

* Spawning/purging

By using spawn scripts and deleting nearly everything during the purge, I hope to make unit replacement easy.

* Client Code/Radio Code

I have tried to use as few global variables as possible. To do this, I have used client_code to send messages to the server (one integer globvar as opposed to a dozen or so booleans). When they are broadcast to the server with publicvariable, the server_loop picks up the number sent and executes the matching script on the server. The reverse is true with server_code and client_loop. For effects and messages to be displayed on client pcs, the client_loop picks up server_code.

; 0 = no action
; 1 = mission
; 2 = moveout
; 3 = rtb
; 4 = medevac
; 5 = rearm
; 6 = rest
; 7 = cas
; 8 = arty
; 9 = flares
; 10 = airstrike
; 11 = insertion
; 99 = info update

* Issuing Support Calls

Due to the large number of publicvariables that are issued, it is conceivable that too many support calls could result in problems on the server. I have tried to make the server "lock" with each support call, but to avoid problems, it may be best if each squad has a designated "RTO" who handles all mapclicks. 

* Directory Structure

Again, I have tried to make the names natural. Also, to simplify editing spawn/weapon scripts, all of the files that need editing are in WEAPON_FRIENDLY, WEAPON_ENEMY, SPAWN_FRIENDLY and SPAWN_ENEMY respectively.

* Triggers

I have used as few triggers as possible to try to optimise things a little. Mostly I have tried to use scripts with lots of waiting to reduce CPU load.


S&D: Move into the jungle and Kill 10 or more enemy troops

Raid: Attack an enemy concentration and kill most enemy troops

Defence: Defend you base from attack (kill most enemy troops)

Wave: Repel 3 waves of enemy attackers from your base.

Assault: Attack an enemy stronghold and kill most enemies (mission ends when less than 5 enemy troops remain alive). No artillery available for this mission.

S&R: Move to the mission objective. The pilot will join your group (if alive). RTB with him.

COnvoy: At least one truck must make it to the mission objective without much damage.


First of all, a special "thank you" to Honchoblack and Sanctuary for reviving CoIN after I thought it was dead. CCE would NOT exist if it weren't for these guys. They are great to work with, I have been very fortunate to on their team. Thanks guys!

Thanks to Rekster for encouraging a coop version of CoIn and early testing.

Thanks to Keycat for his tip on how to test MP code on a single machine. Without this, CCE would not exist.

Thanks to HawkinsDaFin for testing.

Thanks to CrashDome for the MP save scripts.

And of course, thanks to BIS and the OFP community.


Public beta versions:

- First public release

Alpha versions:

- Removed wave mission due to CTDs

- Removed civilans
- Increased enemy spread in Raid mission
- Changed Raid AI scripts so some enemy squads roam far
- added airstrike code

- Added a script by Killswitch to delete the bodies of dead friendlies
- Fixed a bug where the VIP was not spawning
- Fixed the armoury and resupply crate scripts
- Fixed a bug with the "Rest" blackout ending early
- Fixed a bug where Assault missions ended early
- Added Sanctuary's anti-crash script to the CAS helos

- Fixed convoy mission
- Changed the goal of the raid mission to kill the enemy VIP
- Added the Assault mission
- Added the SaR mission
- Made deleted units warp to a GL_DUMP game logic before deleting to avoid weird MP deleting problems
- General mission script bugfixes

- A lot of dedicated server testing
- Added a dialogue for support
- Added a dialogue for helo orders
- Overhauled the helo system
- Changed the victory conditions from victory points to commitment vs enemy morale/material
- changed the spawn/delete system for AI crews (sometimes not deleting)
- Added scripts for JAM2, GMER, PUKF
- Tweaked the getout scripts again to make it compatible with SP
- Added a friendly death punishment script

- Moved back to BIS units for development
- Changed getout.sqf script to only eject troops in the insertion helo
- Changed the client info request trigger to match the server code/client code system. Stupid bug fixed :D
- Tweaked client\display_info.sqs to use hint to display mission type
- Added client\display_briefing to give a more detailed mission briefing at the start of each mission
- Got the extraction helo working (more or less)
- Implemented basic civilians

- Changed name from CoIn Coop to CoIn Coop Engine (CCE)
- Introduced rest, which now triggers the purge
- Removed the patrol mission as it is too similar to the S&D mission
- Implemented helo insertion (a total SOB to get working)
- Tightened the server_loop and client_loop to a 0.1 second delay to eliminate a problem where the loops would not receive a variable before it was reset
- Changed the insertion helo, empty helo and base armour to spawn during rest
- Implemented weather change and skip time during rest

- Put a longer delay in purge script (before it wasnt deleting enemies)
- Added some ambience to the base, put the CO in a hut, etc
- Added human wave mission

- Moved to SEB Nampack 2 for development
- Added enemy morale, material, popularity
- Added flares and artillery (SP only)
- Removed dispersion script due to MP problems

- Sanctuary added a helo-based Transport option (SP only)
- Added Search and Destroy mission
- Major AI/mission/spawn overhaul (roaming squads)
- Added intel.sqs to track enemy squads
- Added a dispersion script to AI weapons (script is a modified version of one by (Ace Productions)

- Added raid mission
- Renamed to CoIn 3 for consistency


- Attempt to fix buggy moveout: changed all positions parsed with publicvariable from POS to POS_X and POS_Y (OFP can't pass arrays with publicvariable)
- Removed "enemy" marker from briefing(temporary)
- Added script to refresh markers


- 9 US troops playable in coop
- 1 mission type (patrol)
- Enemies in patrol mission should be 3 x squads of 2-4 men each
- Random enemies (BIS) resistance with randomised weapons
- Killing enemies should boost the "victory points" rating
- Randomised mission locations
- Very limited briefings (just "Patrol" or "Mission complete")
- Crate with a range of weapons
- Purging of enemies/CAS between missions

Radio Options:
- CAS radio option (2 x AH64)
- Moveout

Read More

Comments on this File

There are no comments yet. Be the first!

Dynamic Mission Alliance

50 XP

DMA is a loose-knit team of mission makers (Honchoblack, Sanctuary, TacRod) focused on producing gameplay-focused addons and missions. These missions use a variety of triggers and scripts to simula...

Registered 23rd September 2005

20 Files Uploaded

Share This File
Embed File