OpenCoop is a cooperative multiplayer modification for Doom³. Up to 4 Players can fight over Lan or Internet the Id Software campaing, the Addon "Ressurection Of Evil" or one of 42 custommaps as InHell or ClassicDoom for example. You can customise you playermodel with 13 individual heads and tint your amor over a colorslider. Every player can pick up weapons and armor once. Collected health from medpacks or heathstations goes into a heathpool, where you take HP from when respawning after dying. The AI got tweaked to act smarter with multiply attackers and the strength scales depending on the number of players. In "Hellwave" gametype you fight against waves of monsters on the original DM maps or on one of 3 new custommaps.

Report RSS 4: New script commands

OpenCoop Tutorial 4

Posted by on - Basic Mapping/Technical

We have got a number of new script commands for OpenCoop. Most of them
are modified old ones which just send the information over the network.

New events for all entities:

  • scriptEvent void setNetShaderParm( float parm, float value );

    Sets the value of the specified shader parm and tansmits it over the network.


  • scriptEvent float startNetSndShader( string shaderName, float channel, float netSync )

    Plays a specific sound shader on the channel and returns the length
    of the sound in seconds. This is not the prefered method of playing a
    sound since you must ensure that the sound is loaded and transmits it
    over the network is netSync is true.


New events for sys. :

  • scriptEvent float getSkill();

    Returns the current skill level.

  • scriptEvent float numPlayers();

    Returns the number of players currently playing. Spectators are ignored.


  • scriptEvent entity getClosestPlayer( vector position );

    Returns the closest player. Spectators are ignored.


New events for info_player_start, info_player_coop and info_player_deathmatch:

  • scriptEvent void enable();

    Enables the spawn.


  • scriptEvent void disable();

    Disables the spawn.


New events for info_location:

  • scriptEvent float numPlayers();

    Returns the number of players in this location.


  • scriptEvent float allPlayersIn();

    Returns true, if all players are in this location, false otherwise.


  • scriptEvent float noPlayersIn();

    Returns true, if no players are in this location, false otherwise.

Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account: