Renegade Public Forums
C&C: Renegade --> Dying since 2003™, resurrected in 2024!
Home » Renegade Discussions » Mod Release Forum » [SSGM4 PLUGIN] Domination Release 1.0
[SSGM4 PLUGIN] Domination Release 1.0 [message #464125] Fri, 09 March 2012 20:18 Go to next message
zunnie is currently offline  zunnie
Messages: 2959
Registered: September 2003
Location: Netherlands
Karma: 0
General (2 Stars)

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--
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 = "[url]http://www.ultraaow.com/renegade/ttfs/[/url]";
};

--end tt.cfg example--



2) Distribute the DominationSounds.zip and have people install the wav files into their data folder
before they join the server.


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

Smile

Greetz zunnie


https://multiplayerforums.com/uploads/monthly_2018_03/TCW2_Signature.png.6236a0dbc6e1e53472a18fe8cd15e47b.png

[Updated on: Sat, 10 March 2012 13:30]

Report message to a moderator

Re: [SSGM4 PLUGIN] Domination Release 1.0 [message #464142 is a reply to message #464125] Sat, 10 March 2012 06:45 Go to previous messageGo to next message
zunnie is currently offline  zunnie
Messages: 2959
Registered: September 2003
Location: Netherlands
Karma: 0
General (2 Stars)

I've put u a testserver if you want to check it out:

gamespy:
ip = 188.138.84.233
port = 8000

wol/xwis:
nickname = a0000000x
title = www.UltraAOW.com 4.0 Domination

player slots: 52


https://multiplayerforums.com/uploads/monthly_2018_03/TCW2_Signature.png.6236a0dbc6e1e53472a18fe8cd15e47b.png
Re: [SSGM4 PLUGIN] Domination Release 1.0 [message #464146 is a reply to message #464125] Sat, 10 March 2012 09:32 Go to previous messageGo to next message
NACHO-ARG is currently offline  NACHO-ARG
Messages: 397
Registered: October 2010
Karma: 0
Commander
never liked otter gamemodes apart from c&c one but nice job though.
Re: [SSGM4 PLUGIN] Domination Release 1.0 [message #464147 is a reply to message #464125] Sat, 10 March 2012 09:33 Go to previous messageGo to next message
zunnie is currently offline  zunnie
Messages: 2959
Registered: September 2003
Location: Netherlands
Karma: 0
General (2 Stars)

You can combine this with AOW Razz
YOu can have base destruction enabled and all that and in addition to that have capture points Smile


https://multiplayerforums.com/uploads/monthly_2018_03/TCW2_Signature.png.6236a0dbc6e1e53472a18fe8cd15e47b.png
Re: [SSGM4 PLUGIN] Domination Release 1.0 [message #464710 is a reply to message #464125] Tue, 20 March 2012 15:12 Go to previous messageGo to next message
iRANian is currently offline  iRANian
Messages: 4308
Registered: April 2011
Karma: 0
General (4 Stars)
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:

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
	}
}


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:

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


Long time and well respected Renegade community member, programmer, modder and tester.

Scripts 4.0 private beta tester since May 2011.

My Renegade server plugins releases
Re: [SSGM4 PLUGIN] Domination Release 1.0 [message #464711 is a reply to message #464125] Tue, 20 March 2012 15:33 Go to previous message
iRANian is currently offline  iRANian
Messages: 4308
Registered: April 2011
Karma: 0
General (4 Stars)
Just for completeness here's also setting the team kills and deaths:

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
	}
}


Long time and well respected Renegade community member, programmer, modder and tester.

Scripts 4.0 private beta tester since May 2011.

My Renegade server plugins releases
Previous Topic: [MAP] C&C_Nod_Invasion
Next Topic: [MAP] C&C_Tropical
Goto Forum:
  


Current Time: Sat Nov 09 01:55:05 MST 2024

Total time taken to generate the page: 0.00894 seconds