Local time:[SSGM 4.0 Plugin] Domination Release 1.0
Renegade Creativity!
Welcome to Renegadeskins! You'll need to login in order to use all the features, like downloads, and view all the sections of this site.


Registration is free and will only take a few seconds of your time.
Features of a registered account:
-Your allowed to post and comment Skins.
-No Ads.
And much more

Renegade Creativity!

Forum Statistics: 2764 Threads | 19028 Posts | 1528 Users | Welcome to our newest member Sean23
 
HomeFAQSearchMemberlistRegisterStaffLog in
We're attempting to expand to support more games, please post skinable games suggestions and tell your friends!

Share | 
 

 [SSGM 4.0 Plugin] Domination Release 1.0

View previous topic View next topic Go down 
AuthorMessage
marcin205  
  
avatar
   Active Member


Number of posts : 986

Age : 33

Reputation : 36

Registration date : 2008-11-11


PostSubject: [SSGM 4.0 Plugin] Domination Release 1.0   Mon Jun 11, 2012 1:01 pm

Quote :
Hi gamers Smile

WEBSITE: http://www.ultraaow.com
DOWNLOAD: http://www.ultraaow.com/downloads/Domination_Plugin_SSGM4.zip

I've been working on a new plugin that will enable a Domination Mode on the map(s) you choose.

Domination is basically this:
You have a few (up to 8 ) Control Points on a map. When you repair one of these Control Points
you will start getting 1 Capture Point per second. When the configurable capture points
requirement to win has been met the team that collected most Capture Points will win.
When a Capture Point is captured a vehicle or two can spawn, configurable in the mapsection.
To lookup the status of the game score type: !score | !points | !status

You can load the plugin and then mix it with other type maps and modes so you can turn off
Domination Mode on maps you dont want to use it on simply by setting the DOM_CP1_Create=0 under
the [mapname.mix_DOM] section.
This allows mixing AOW, Coop, Sniping and Domination on different maps Smile

I also tried to keep it MOD independent so you can use it in Renegade, A Path Beyond and
Tiberium Crystal War or any other Renegade based modification.
To use the plugin on other mods than Renegade you will have to edit the [Domination] section
options and enter a custom Control Point preset, skintype, Sniper presets and sounds.

I've also coded in a simple Sniper Mode so you can have snipers only on domination mode enabled
maps. Snipers do have C4 though, needed to kill the Control Points.
To enable sniper only mode on a certain map you enter a 1 for the option DOM_Snipers_Only under
the [mapname.mix_DOM] section. Also under this section you can set what Sniper characters to use,
you could also set it to PIC's and Raveshaws if you would like that.

There is an option called Start_With_Repair_Guns under [Domination] which will grant all players
a repairgun if they do not already have one when they spawn.

It also has options to disable base defeneses, vehicle factories and harvesters if you do not
want them ingame. The building destruction takes place 8 seconds into the game, exactly enough
time for both Harvesters to be created in case you DO want them ingame.

You can also make the buildings indestructible by setting DOM_Invincible_Buildings=1 under the
[mapname.mix_DOM] section.

Since domination uses custom sounds for capturing and losing a control point, the game client
(players) need to have the DominationSounds in their data folder. NOTE: These sounds are NOT
required, if people don't have them its fine, they just won't be able to hear when a Control Point
is captured or lost.

You can do two things:
1) TT 4.0 Downloader
Create a Package for download on your server using the TT built in recourcemanager.
This way clients that have Scripts 4.0 can download the DominationSounds.mix files when
they connect to your server.

How to do this?:
Copy the file DominationSounds.mix to your server data folder.
Next open a Command Prompt window and changedirectory to where your server is installed.
Once there type this (change path to where the fds is located):
PackageEditor convert "C:\Westwood\RenegadeFDS\Server\data\DominationSounds.mix" 1.0 CNC3
Press enter and the server will create a package for the file
Next we need to install the package by typing:
PackageEditor install "DominationSounds" [enter]
And press enter, the package will then be installed.
Now locate the ttfs folder for your server and upload its contents to your website. Then set the
repositoryUrl link in tt.cfg to your website ttfs location. EXAMPLE below:
repositoryUrl = "http://www.ultraaow.com/renegade/ttfs/";
Setting up tt.cfg and have clients auto-download the dominationsounds package when they join
the server. You have to set up a gameDefinition for each map you host domination mode on.
Like:


--begin tt.cfg example--


Quote :
gameDefinitions:
{
Field:
{
mapName = "C&C_Field";
packages = ["DominationSounds"];
serverPresetsFile = "objects.aow";
};
Hourglass:
{
mapName = "C&C_Hourglass";
packages = ["DominationSounds"];
serverPresetsFile = "objects.aow";
};
WallsFlying:
{
mapName = "C&C_Walls_Flying";
packages = ["DominationSounds"];
serverPresetsFile = "objects.aow";
};
};

rotation:
[
"Field",
"Hourglass",
"WallsFlying"
];

downloader:
{
repositoryUrl = "http://www.ultraaow.com/renegade/ttfs/";
};

--end tt.cfg example--

Quote :

If you have problems or need help or have suggestions then please contact me in one of these ways:

www.multiplayerforums.com - forums
zunnie@multiplayerforums.com - email
irc.multiplayerforums.com #MPF - irc

Very Happy

Greetz zunnie



Creator:Zunnie


===Download===


I was interested in setting the team score so I attempted to track down the cTeam::Set_Score() function in the Windows FDS with success.

I'm not sure about the side-effects my function has but if you want you can try using the following Set_Team_Score() function to set the team score for a team:


Code:
RENEGADE_FUNCTION
char *Find_Team(int team)
AT2(0x0041DA10,0x0041DA10);

void Set_Team_Score(int team, float score)
{
   char* cTeam = Find_Team(team);
   _asm
   {
      mov ecx, cTeam
      push score
      mov ebx, 0x41C900
      call ebx
   }
}


Quote :
You'll have to call the function for both teams whenever a player joins, it doesn't set the proper score with this method until the score changes after the guy joins for some reason. You need to add the following in a player join hook:

Code:

void Toys::OnPlayerJoin(int PlayerID,const char *PlayerName)
{
   Set_Team_Score(1, Get_Team_Score(1));
   Set_Team_Score(0, Get_Team_Score(0));
}


Quote :
Just for completeness here's also setting the team kills and deaths:



Code:
void Set_Team_Kills(int team, int kills)
{
   char* cTeam = Find_Team(team);
   _asm
   {
      mov ecx, cTeam
      push kills
      mov ebx, 0x41C8B4
      call ebx
   }
}

void Set_Team_Deaths(int team, int Deaths)
{
   char* cTeam = Find_Team(team);
   _asm
   {
      mov ecx, cTeam
      push Deaths
      mov ebx, 0x41C8D6
      call ebx
   }
}
Back to top Go down
 

[SSGM 4.0 Plugin] Domination Release 1.0

View previous topic View next topic Back to top 
Page 1 of 1

Permissions in this forum:You cannot reply to topics in this forum
Renegade Creativity! :: Video Game Skins :: Renegade Skins :: -Other Downloads- :: ServerSide Plugins :: Plugins SSGM :: Plugins SSGM 4.0-
Jump to: