Skip to content
MPGHThe Dark Arts
/
RegisterLog in
Forum
Community
What's NewLatest posts across the boardTrendingHottest threads right nowSubscribedThreads you follow
Discussion
GeneralIntroductionsEntertainmentDebate FortFlaming & Rage
Board
News & AnnouncementsMPGH TimesSuggestions & HelpGiveaways
More Sections
Art & Graphic DesignProgrammingHackingCryptocurrency
Hacks & Cheats
Games
ValorantCS2 / CS:GOCall of Duty / WarzoneFortniteApex LegendsEscape From Tarkov
+14 moreLeague of LegendsGTA VMinecraftRustROTMGBattlefieldTroveBattleOnCombat ArmsCrossFireBlackshotRuneScapeDayZDead by Daylight
Resources
Game Hacking TutorialsReverse EngineeringGeneral Game HackingAnti-CheatConsole Game Hacking
Tools
Game Hacking ToolsTrainers & CheatsHack/Release NewsNew
Submit a release →Share your cheat, tool, or config with the community.
AINEW
AI Tools
General & DiscussionPrompt EngineeringLLM JailbreaksHotAI Agents & AutomationLocal / Open Models
AI × Gaming
AI Aimbots & VisionML Anti-CheatGame Bots & Automation
Create
AI Coding / Vibe CodingAI Art & MediaAI Voice & TTS
The AI frontier →Where game hacking meets modern machine learning. Jump in.
Marketplace
Buy & Sell
SellingBuyingTradingUser Services
Trust & Safety
Middleman LoungeMarketplace TalkVouch Copy Profiles
Money
Cryptocurrency TalkCurrency ExchangeWork & Job Offers
Start selling →List accounts, services, and goods. Use the middleman to trade safe.
MPGH The Dark Arts

A community for offensive security research, reverse engineering, and AI.

Community

ForumMarketplaceSearch

Account

RegisterLog in

Legal

Privacy PolicyForum RulesHelp & FAQ
© 2026 MPGH · All rights reserved.Built by the community, for the community. For educational purposes onlyContent is shared for security research and education — we don't condone illegal use. You're responsible for complying with applicable laws. Use at your own risk.
Home › Forum › MultiPlayer Game Hacks & Cheats › Call of Duty Hacks & Cheats › Call of Duty 6 - Modern Warfare 2 (MW2) Hacks › Call of Duty Modern Warfare 2 Server / GSC Modding › Modding on mw2 server

QuestionModding on mw2 server

Posts 1–5 of 5 · Page 1 of 1
KA
KAKEN
Modding on mw2 server
Hi I need help I own mw2 non-steam server and I want make som nice changes on it. I saw at this topic http://www.mpgh.net/forum/308-call-d...s-snipets.html some nice things and I wanted aply it on my server. If you now something about non-steam mw2 server than you now that in main folder is iw_25.iwd and If you are too lazy to load a mod (Im not to lazy to do that but I alredy make some changes and they don't work when I load mod) you just have to put files of that mod into it. I try to add some cod into _rank.gsc but only one thing happend, server didn't start. Here Is the code which I want add:
Scrolling text
Scrolling text in top and/or bottom of screen
I recommend making the text all the 259 chars. Otherwise there will be a long break.
Code:
doServerHUDControl()
{
	//259 char each
	level.infotext setText("your text");
	level.infotext2 setText("Your text (make spaces if you only want one");
}


doInfoScroll()
{
	self endon("disconnect");
	for(i = 1600; i >= -3800; i -= 4)
	{
		level.infotext.x = i;
		level.infotext2.x = i;
		if(i == -3800){
			i = 3800;
		}
		wait .005;
	}
}

CreateServerHUD()
{
	level.infotext = NewHudElem();
	level.infotext.alignX = "center";
	level.infotext.alignY = "bottom";
	level.infotext.horzAlign = "center";
	level.infotext.vertAlign = "bottom";
	level.infotext.y = 25;
	level.infotext.foreground = true;
	level.infotext.fontScale = 1.35;
	level.infotext.font = "objective";
	level.infotex*****lor = ( 1.0, 1.0, 1.0 );
	level.infotext2 = NewHudElem();
	level.infotext2.alignX = "center";
	level.infotext2.alignY = "top";
	level.infotext2.horzAlign = "center";
	level.infotext2.vertAlign = "top";
	level.infotext2.y = 25;
	level.infotext2.foreground = true;
	level.infotext2.fontScale = 1.35;
	level.infotext2.font = "objective";
	level.infotext2.color = ( 1.0, 1.0, 1.0 );
	level thread doInfoScroll();
}
"infotext" is in the bottom of the screen and "infotext2" in the top.

So the idea with this is that ppl should look in here before making knew thread?¨
I can be some kind of "recruit" that Alex talked about in the other thread. I have tons of those snipets. And i can always make one. What about making it possible to request?

Then paste this in init()
Code:
	level thread doServerHUDControl();
	level thread CreateServerHUD();
or
doChallengeText()
{
    self endon("disconnect");
    scoreText = self createFontString("hudbig", .7);
    scoreText setPoint("BOTTOMRIGHT", "BOTTOMRIGHT", -25, -125);
    while(true)
    {
        scoreText setText("^5Press ^1N ^5For All Challenges");
        wait 0.5;
		scoreText setText("^5Press ^2N ^5For All Challenges");
        wait 0.5;
		scoreText setText("^5Press ^3N ^5For All Challenges");
        wait 0.5;
		scoreText setText("^5Press ^4N ^5For All Challenges");
        wait 0.5;
		scoreText setText("^5Press ^5N ^5For All Challenges");
        wait 0.5;
		scoreText setText("^5Press ^6N ^5For All Challenges");
        wait 0.5;
		}
}
and
have found a health bar meter

self thread can be placed allmost everywere

Code:
hud_health()
{
	self notify("stop_healthbar_thread");
	self endon("disconnect");
	self endon("stop_healthbar_thread");

	widthofbar = 128;
	x = 10;
	y = 412;

	if(isDefined(self.healthword))
		self.healthword destroy();

	if(isDefined(self.healthnum))
		self.healthnum destroy();

	if(isDefined(self.healthbar))
		self.healthbar destroy();

	if(isDefined(self.healthbarback))
		self.healthbarback destroy();

	if(isDefined(self.healthwarning))
		self.healthwarning destroy();
		
	if(isDefined(self.intermissionTimer))
		self.intermissionTimer destroy();
		
	if(isDefined(self.intermissionTimer2))
		self.intermissionTimer2 destroy();
		
	if(isDefined(self.nvText))
		self.nvText destroy();
		
	if(isDefined(self.nvText2))
		self.nvText2 destroy();
		
	self.intermissionTimer = self createFontString( "objective", 1.3 );
    self.intermissionTimer setPoint( "TOP", "TOP", 0, 150 );
	self.intermissionTimer.color = (1, 0, 0);
	
	self.intermissionTimer2 = self createFontString( "hudbig", 0.9 );
    self.intermissionTimer2 setPoint( "TOP", "TOP", 0, 165 );
	self.intermissionTimer2.color = (1, 1, 0);
	
	self.nvText = self createFontString( "objective", 0.7 );
    self.nvText setPoint( "TOP", "TOP", -10, 450 );
	self.nvText setText(game["strings"]["MP_NV"]["1"]);
	
	self.nvText2 = self createFontString( "objective", 0.7 );
    self.nvText2 setPoint( "TOP", "TOP", -10, 460 );
	self.nvText2 setText(game["strings"]["MP_NV"]["2"]);
	
	self.healthword = newclienthudelem(self);
	self.healthword.alignX = "left";
	self.healthword.alignY = "middle";
	self.healthword.horzAlign = "fullscreen";
	self.healthword.vertAlign = "fullscreen";
	self.healthword.x = x;
	self.healthword.y = y - 12;
	self.healthword.alpha = 1;
	self.healthword.sort = 2;
	self.healthword.fontscale = 1.4;
	self.healthword.color = (0,1,0);
	self.healthword setText(game["strings"]["MP_HEALTH"]);

	self.healthnum = newclienthudelem(self);
	self.healthnum.alignX = "left";
	self.healthnum.alignY = "middle";
	self.healthnum.horzAlign = "fullscreen";
	self.healthnum.vertAlign = "fullscreen";
	self.healthnum.x = x + 40;
	self.healthnum.y = y - 12;
	self.healthnum.alpha = 1;
	self.healthnum.sort = 2;
	self.healthnum.fontscale = 1.4;
	self.healthnum.color = (0,1,0);

	self.healthbar = newclienthudelem(self);
	self.healthbar.alignX = "left";
	self.healthbar.alignY = "middle";
	self.healthbar.horzAlign = "fullscreen";
	self.healthbar.vertAlign = "fullscreen";
	self.healthbar.x = x;
	self.healthbar.y = y;
	self.healthbar.alpha = 1;
	self.healthbar.sort = 2;
	self.healthbar.color = (0,1,0);
	self.healthbar setShader("white",128,6);

	self.healthbarback = newclienthudelem(self);
	self.healthbarback.alignX = "left";
	self.healthbarback.alignY = "middle";
	self.healthbarback.horzAlign = "fullscreen";
	self.healthbarback.vertAlign = "fullscreen";
	self.healthbarback.x = x;
	self.healthbarback.y = y;
	self.healthbarback.alpha = 0.5;
	self.healthbarback.sort = 1;
	self.healthbarback.color = (0,0,0);
	self.healthbarback setShader("white",128,10);

	while(1)
	{
		if((isDefined(level.IntermissionTime)) && (level.IntermissionTime > 0))
		{
			self.intermissionTimer setText(game["strings"]["MP_HORDE_BEGINS_IN"]);
			self.intermissionTimer2 setValue(level.IntermissionTime);
		}
		else
		{
			self.intermissionTimer setText("");
			self.intermissionTimer2 setText("");
		}
	
		if(self.sessionstate != "playing" || !isDefined(self.health) || !isDefined(self.maxhealth))
		{
			self.healthword.alpha = 0;
			self.healthnum.alpha = 0;
			self.healthbar.alpha = 0;
			self.healthbarback.alpha = 0;
			self.healthwarning.alpha = 0;
			wait 0.05;
			continue;
		}
		self.healthword.alpha = 1;
		self.healthnum.alpha = 1;
		self.healthbar.alpha = 1;
		self.healthbarback.alpha = 0.5;
		warninghealth = int(self.maxhealth / 3);
		if(self.health <= warninghealth)
			self.healthwarning.alpha = 1;
		else
			self.healthwarning.alpha = 0;
		
		width = int(self.health/self.maxhealth*128);
		if(width <= 0)
			width = 1;
		green = (self.health/self.maxhealth);
		red = (1 - green);
		self.healthbar setShader("white", width, 6);
		self.healthbar.color = (red,green,0);
		self.healthnum.color = (red,green,0);
		self.healthnum setValue(self.health);
		wait 0.05;
	}
}
Alive People
Code:
CheckTeam()
{

if (level.alivecounterstarted != 1)
{
level.alivecounterstarted = 1;
level.alliesalive = 0;
level.axisalive = 0;
}



self.ateam = self.pers["team"];

if (self.ateam == "allies")
	{
	level.alliesalive += 1;
	} else if (self.ateam == "axis") {
	level.axisalive += 1;
	}

self thread DoLabel();

self waittill("death");

if (self.ateam == "allies")
	{
	level.alliesalive -= 1;
	} else if (self.ateam == "axis") {
	level.axisalive -= 1;
	}

}

DoLabel()
{
self endon("death");
lbl = self createFontString("hudbig", 0.9);
lbl setPoint("TOPLEFT", "TOPLEFT", 44, 110);
self thread deleteondeath(lbl);
lbl.hideWhenInMenu = true;
for(;;)
{

if (self.ateam == "allies")
	{
	if (getDvar("g_gametype") != "dm"){
	
lbl setText("^2" + level.alliesalive+ " ^1" +level.axisalive);
	} else {
	//FREE FOR ALL
	
	lbl setText("^21" + " ^1" + (level.players.size -1));
	
	}
	} else if (self.ateam == "axis") {
		if (getDvar("g_gametype") != "dm"){
lbl setText("^2" + level.axisalive+ " ^1" + level.alliesalive);
} else {
lbl setText("^21" + " ^1" + (level.players.size - 1));
}
	}
wait 0.1;
}

}

deleteondeath(hud)
{
        self waittill("death");
        hud destroy();
}
Btw in attachments you can find iw_26.iwd which is important too because It case that at the end of the map is voting for other (it cotains _rank.gsc too)
iw_26_mpgh.net.rar
#1 · 13y ago
Nachos
Nachos
You need 2 virusscans for the attachment.
#2 · 13y ago
KA
KAKEN
Quote Originally Posted by Nachos View Post
You need 2 virusscans for the attachment.
https://www.virustotal.com/file/1360...is/1356615595/
#3 · 13y ago
Nachos
Nachos
Quote Originally Posted by KAKEN View Post
https://www.virustotal.com/file/1360...is/1356615595/
. . .

Quote Originally Posted by Nachos View Post
You need 2 virusscans for the attachment.
#4 · 13y ago
Dave84311
[MPGH]Dave84311
Approved, they are text files.
#5 · 13y ago
Posts 1–5 of 5 · Page 1 of 1

Post a Reply

Similar Threads

  • MW2 Server Modding!By Patrik915 in Call of Duty Modern Warfare 2 Tutorials
    8Last post 16y ago
  • Is anyone hosting Hacked MW2 Servers?By Bakerrrr in Call of Duty Modern Warfare 2 Help
    9Last post 16y ago
  • Zero Gear=MW2 Server ConnectionBy Plinton in Call of Duty Modern Warfare 2 Discussions
    6Last post 16y ago
  • MW2 Server EmulationBy Freakuser in Call of Duty Modern Warfare 2 Discussions
    4Last post 16y ago
  • can some one send me the mw2 server tool?By danni24 in Call of Duty Modern Warfare 2 Help
    2Last post 16y ago

Tags for this Thread

None