

MultiPlayer Session Utility (MPSUtil) is DPSwap on steroids!!!!

MPSUtil 1.0

By: Michael Neus  aka  RCAF_GunsJmd/GunsJammed

Email:   GunsJammed@hotmail.com

Web site
http://www.geocities.com/gunsjammed


For use with CFS1/CFS2


Original DPSwap program (version 1.0) written at the request of JG2_Bud_Flight.

MPSUtil created at the request of and as the result of work by RAF_MShine.
Special thanks go out to him for his efforts and patience.


Disclaimer
----------

Use at your own risk.  The author of the MPSUtil is not liable for any problems caused
by this program.


Distribution
------------

You are free to do with this program as you see fit.  It is FREEWARE, and always will be.


Installation
------------

IMPORTANT!!!  If you have an existing older version of DPSwap, make sure you "Restore DP's" before 
running this new version!!!  Once you have restored DP's (in both versions of CFS), you can 
delete the existing DPSwap folder(s) in your CFS main folder(s).  Also, if have have MultiSwap
installed, make sure you restore the original multiplayer mission.

Create a new folder (C:\Program Files\MPSUtil for instance).  Place zip in that folder and extract.
Create shortcut to MPSUtil.exe and place on desktop.  Only a single copy of MPSUtil is needed, and it
will handle both CFS1 and CFS2.


Files included in this package
------------------------------

MPSUTIL.EXE	The program executable.
IDLIST.TXT	ID's of all known objects in CFS1/CFS2.  Used by MPSUtil if it can't find
		the ID of an object in the current multiplayer.mis file.  SHOULD never be needed.
README.TXT	This file
DPFIX.ZIP	Contains 'fixed' CFS1 DP's for use in CFS2.  These go in the "objects_dp"
		folder in your main CFS2 folder.



About the program
-----------------

MPSUtil will create backups of your multiplayer mission file, and any DP's found in your 'object_dps'
and Ships (CFS2) folders the first time it runs.  Therefore, before running MPSUtil, you will want to 
make sure that these files are the ORIGINALS (or at least versions you want backed up).  Also, for
any addon ships (CFS2 again), you will want to ensure that ALLEGIANCE is set correctly in the DP.

NOTE...  Aircraft DP's are NOT backed up and are not not handled by MPSUtil.  Only stock library objects 
and CFS2 ships are handled by this program.


Possible allegiance values are:

  In CFS,
	0 = No allegiance, will shoot at everyone
	1 = Great Britain
	2 = Germany
	3 = US

  In CFS2
	0 = No allegiance, will shoot at everyone
	1 = Great Britain
	2 = Germany
	3 = US
	4 = Japan



There is a bit of a problem with some of the DP's in CFS2.  All the American ships have an
allegiance of 1.  This is not a big problem since MPSUtil treats 1 and 3 the same.

However, the some objects that were brought over to CFS2 from CFS1 are also incorrect.  Again, the
American objects have an alleigiance of 1.  Again, not a big problem.  HOWEVER, the German objects
have an allegiance of 3!!!!  This means they are considered to be allies of the US and Britain.
Not good.  I have included replacement DP's for these objects, found in DPFIX.ZIP.

These allegiances are correct to the best of my knowledge.  If anyone knows that these values
are in error, please contact me ASAP.




Once backups have been done, a dialog will come up.  Select which mission you wish to use for the 
multiplayer session, and which side you will fly for.  Then click "Swap".  Only needed for flying
multiplayer missions.  For normal games, click on 'Restore' to restore your original multiplayer.mis
and DP files.

The selections you chose the last time you ran the program will be selected when you run the
program again.

When you click on "Swap", the mission you selected will overwrite the multiplayer mission file
in your CFS folder, and the appropriate versions of the DP's will be written back into
the original OBJECTS_DP and SHIPS folders.  Enemy DP's will be written without changes, but the
friendly DP's will have the guns modified, preventing them from shooting at you.

Allegiance is determined as follows:

1. If a unit section in the multiplayer.mis file contains an allegiance, that allegiance will
   be used for that unit type.

2. If a unit section does not contain an allegiance, the allegience in the unit type section that
   applies to that unit will be used.

3. If neither the unit not the unit type sections contain an allegiance for an object, the objects
   DP file will be checked for an allegiance.  This really applies only to CFS2, snice CFS1 object DP's
   do not include allegiance info.

4. If no allegiance is found in the previous 3 steps, the object is considered to have an allegiance
   of zero, and will keep its guns.

I went to this extreme to attempt to make things as painless as possible when creating missions.
I found that this was really the only way to handle all of the stock missions in CFS and CFS2, and
to also deal with the infrastructures possible in CFS2.  Infrastructures don't provide a way (at
least within the CFS2 mission editor) to define allegiance.

Warning!!! Because of the fact that an objects DP either keeps it's guns, or loses them (it can't
be both), you CANNOT use a given library object or ship in a mission on both the Allied and Axis 
sides and expect this to work.


In the DP's of friendly objects in the mission, a single gunstation will be written.  The first
gun section will be modified as well.  This combination leaves a single gun in the DP.  This gun
SHOULD not be able to fire at you.  Also, entries are placed in the MPSUITL.INI [MODIFIED_DPS] 
sections so you can see at a glance which DP's have been affected.


Also, for all objects found in the mission that have guns, the CDP's will be deleted so you
will be sure that CFS/CFS2 will create new CDP's.


For players joining late, I suggest guessing which team you will end up on, and swapping to
that team's DP's.  The worst that can happen is you guess wrong, and have to exit the game
to swap the other way.  Therefore, this is probably best used for semi-organized mission play.

There are 2 checkboxes that will allow you to specify how you want a couple of things set within 
the CFS config file.  COLLISION_SECS when set to 0 will reduce the occurance of collisions
provided all players do this.  This is mainly a CFS2 deal.
The DISPLAY_FRACTIONAL_MINUTES setting determines whether fractional minutes or seconds will
be show as far as latitude and longitude are concerned when you use Shift-Z to bring these
up while "in game".  The default setting is 1, meaning fractional minutes are displayed.  If
set to 0 (by unchecking the checkbox), then fraction seconds will be displayed.  Allows placing
starting locations and Brunhost targets a little more precisely.

Once you have swapped (if needed), you can ALSO set the active program if you have Brunhost
available.  MPSUtil will run the appropriate version of the Select program by clicking on the
'Run BRH Select' button.


Finally, if you are going to join or host an IP game, clicking on the next button will allow
you to launch the appropriate program.


Version info
------------

Version 1.0

	First version of MPSUtil.



Guess that's about it.

Good luck, and have fun.


Guns

