Nexgen Server Controller

Discussions about Servers
User avatar
[rev]rato.skt
Adept
Posts: 438
Joined: Mon Aug 16, 2010 1:09 pm

Re: Nexgen Server Controller

Post by [rev]rato.skt »

hi man,

Excellent work, can put support for 2 versions of country flag, CountryFlags3 and CountryFlags32c ?
Brazilian Server:
Alma Negra - 34.95.189.187:7777
Classic - madruga.utbr.cf:7777
Duel - x1.utbr.cf:6666
Letylove49
Adept
Posts: 278
Joined: Tue Feb 28, 2012 7:47 pm
Location: suisse

Re: Nexgen Server Controller

Post by Letylove49 »

i use this and that work :

ServerPackages=CountryFlags32c
ServerPackages=IpToCountry_AOL
ServerPackages=SmartSB110e
ServerActors=ipToCountry.LinkActor

the ccountry flags are on nexgen.
Last edited by Letylove49 on Sun Sep 25, 2022 7:54 am, edited 2 times in total.
Image



Image
Letylove49 aka Alicia
User avatar
Que
Inhuman
Posts: 803
Joined: Mon Dec 09, 2019 5:49 am
Personal rank: ...

Re: Nexgen Server Controller

Post by Que »

[rev]rato.skt wrote: Sat Sep 24, 2022 5:19 pm hi man,

Excellent work, can put support for 2 versions of country flag, CountryFlags3 and CountryFlags32c ?
CountryFlags32d

:tu:
*Join our Discord Here.*
Our mods - MVX , SSB , SmartWFL , UTCmds , BotCommands , Smart Stats , join/leave announcer , NoSmoke , UTLogin , BrightSkins , Server Tran…
*Our Servers
Letylove49
Adept
Posts: 278
Joined: Tue Feb 28, 2012 7:47 pm
Location: suisse

Re: Nexgen Server Controller

Post by Letylove49 »

Que wrote: Sun Sep 25, 2022 12:35 am
[rev]rato.skt wrote: Sat Sep 24, 2022 5:19 pm hi man,

Excellent work, can put support for 2 versions of country flag, CountryFlags3 and CountryFlags32c ?
CountryFlags32d

:tu:
Countryflags32e
Image



Image
Letylove49 aka Alicia
User avatar
Barbie
Godlike
Posts: 2831
Joined: Fri Sep 25, 2015 9:01 pm
Location: moved without proper hashing

Re: Nexgen Server Controller

Post by Barbie »

Barbie wrote: Sat Apr 09, 2022 9:25 pm
ucc.init.log wrote:NexgenController MH-DSFoxtrotV0.NexgenController0 (Function Nexgen112N.NexgenController.MutatorBroadcastMessage:04FC) Accessed None 'P'
Probably reason: variable "P" is used in line 95 without initialisation.
I run again into this because I missed some broadcast messages. :pfff:
Is the chain of MessageMutators, starting with GameInfo.MessageMutator, processed until the last link even if one of the mutators fails in above sense? (I suspect not because of the missing broadcast message.)
"If Origin not in center it be not in center." --Buggie
Letylove49
Adept
Posts: 278
Joined: Tue Feb 28, 2012 7:47 pm
Location: suisse

Re: Nexgen Server Controller

Post by Letylove49 »

i don't know if that can help you but i past the foonction mutatorBroadcastMessage( of Nexgen112N

Code: Select all

 /***************************************************************************************************
 *
 *  $DESCRIPTION  Hooked into the message mutator chain so commands can be detected. This function
 *                is called if a message is send to player. Spectators that use say (not teamsay)
 *                seem to be calling this function instead of mutatorTeamMessage.
 *  $PARAM        sender    The actor that has send the message.
 *  $PARAM        receiver  Pawn receiving the message.
 *  $PARAM        msg       The message that is to be send.
 *  $PARAM        bBeep     Whether or not to make a beep sound once received.
 *  $PARAM        type      Type of the message that is to be send.
 *  $RETURN       True if the message should be send, false if it should be suppressed.
 *  $OVERRIDE
 *
 **************************************************************************************************/
function bool mutatorBroadcastMessage(Actor sender, Pawn receiver, out coerce string msg,
                                      optional bool bBeep, out optional name type) {
	local PlayerReplicationInfo senderPRI;
	local bool bIsCommand;
	local NexgenClient client;
	local bool bIsSpecMessage;
	local int index;
	local PlayerPawn P;
	local NexgenClientCore rpci;
	local string temp1, temp2;
	local bool bSend;

	// Suppress default player join / leave messages.
	if (sender == level.game && right(msg, len(level.game.leftMessage)) ~= level.game.leftMessage ||
	    sender == level.game && right(msg, len(level.game.enteredMessage)) ~= level.game.enteredMessage) {
		return false;
	}

	// Get sender player replication info.
	if (sender != none && sender.isA('Pawn')) {
		senderPRI = Pawn(sender).playerReplicationInfo;
	}

	// Check if we're dealing with a spectator chat message.
	bIsSpecMessage = senderPRI != none && sender.isA('Spectator') &&
	                 left(msg, len(senderPRI.playerName) + 1) ~= (senderPRI.playerName $ ":");

	    // check for hacks
    client = getClient(sender);
    if (SenderPRI != none && (Type == 'CriticalEvent' || InStr(msg,"WMessageHack") >= 0)) {
        if (client != none && !client.hasRight(client.R_Moderate) && (!isBanned(client, temp1, temp2, senderPri.playerName))) {
		   rpci = NexgenClientCore(client.getController(class'NexgenClientCore'.default.ctrlID));
    	   serverAutoBanPlayer(client.playerNum, client.playerName, client.sConf.BP_Forever, 0, "****WMessageHack Detected****");
    	   return false;
        }
    }



	// Check for commands.
	if (bIsSpecMessage && sender == receiver) {
		bIsCommand = handleMsgCommand(PlayerPawn(sender), mid(msg, len(senderPRI.playerName) + 1));
	}

	// Check if spectator is muted.
	if (bIsSpecMessage) {
		client = getClient(sender);
        // check if the message is from a non initialised client, and not the IRC bot, stops banned players spamming
	    if( client == none && !sender.IsA('MessagingSpectator') && Pawn(sender).PlayerReplicationInfo.PlayerName != "player")
            return false;

		if (client != none && client.isMuted() ||
		    sConf.matchModeActivated && sConf.muteSpectatorsDuringMatch &&
		    gInf.gameState == gInf.GS_Playing &&
		    !client.hasRight(client.R_MatchAdmin) && !client.hasRight(client.R_Moderate)) {
			// Spectator is muted, block the message.
			if (sender == receiver) {
				if (bIsCommand) {
					return true;
				} else {
					client.showMsg(lng.mutedReminderMsg);
				}
			}
			return false;
		}
	}

	// Write message to the log.
	if (bIsSpecMessage && sender == receiver) {
		nscLog(msg, LT_Say);
	} else if (!bIsSpecMessage && receiver != none && receiver.nextPawn == none) {
		if (senderPRI == none) {
			nscLog(msg, LT_Message);
		} else {
			nscLog(senderPRI.playerName $ ": " $ msg, LT_Message);
		}
	}

	if (sender != none && sender.isA('Pawn')) {
        if ((bBeep) && (!bIsSpecMessage))
           P.PlayBeepSound ();
	}

	// Notify plugins.
	while (index < arrayCount(plugins) && plugins[index] != none) {
		bSend = plugins[index].mutatorBroadcastMessage(sender, receiver, msg, bBeep, type);
		if (!bSend) return false;
		index++;
	}

	// Allow other message mutators to do their job.
    if (nextMessageMutator != none) {
        return nextMessageMutator.mutatorBroadcastMessage(sender, receiver, msg, bBeep, type);
    } else {
        return true;
    }
}


Image



Image
Letylove49 aka Alicia
User avatar
KillRoy1972
Experienced
Posts: 84
Joined: Mon Oct 15, 2018 10:37 pm

Re: Nexgen Server Controller

Post by KillRoy1972 »

Maybe just a silly question, But how do I turn of the 'boing' hitsound all together?
User avatar
Que
Inhuman
Posts: 803
Joined: Mon Dec 09, 2019 5:49 am
Personal rank: ...

Re: Nexgen Server Controller

Post by Que »

KillRoy1972 wrote: Mon Jan 29, 2024 4:57 pm Maybe just a silly question, But how do I turn of the 'boing' hitsound all together?
Hitsounds are coming from another mod possibly FragNewNet.

If so you can change / set them in console while logged onto server.

Console > hitsounds 0 [enter]

There are 3 different ones I think.

Hitsounds 1 , 2 , 3
*Join our Discord Here.*
Our mods - MVX , SSB , SmartWFL , UTCmds , BotCommands , Smart Stats , join/leave announcer , NoSmoke , UTLogin , BrightSkins , Server Tran…
*Our Servers
User avatar
KillRoy1972
Experienced
Posts: 84
Joined: Mon Oct 15, 2018 10:37 pm

Re: Nexgen Server Controller

Post by KillRoy1972 »

Que wrote: Mon Jan 29, 2024 7:15 pm
KillRoy1972 wrote: Mon Jan 29, 2024 4:57 pm Maybe just a silly question, But how do I turn of the 'boing' hitsound all together?
Hitsounds are coming from another mod possibly FragNewNet.

If so you can change / set them in console while logged onto server.

Console > hitsounds 0 [enter]

There are 3 different ones I think.

Hitsounds 1 , 2 , 3
Thanks! I'm using the 'UGH!' sound now. :)
User avatar
asosed
Adept
Posts: 283
Joined: Fri May 15, 2020 2:36 pm
Location: Russia

Re: Nexgen Server Controller

Post by asosed »

Que wrote: Mon Jan 29, 2024 7:15 pm
KillRoy1972 wrote: Mon Jan 29, 2024 4:57 pm Maybe just a silly question, But how do I turn of the 'boing' hitsound all together?
Hitsounds are coming from another mod possibly FragNewNet.

If so you can change / set them in console while logged onto server.

Console > hitsounds 0 [enter]

There are 3 different ones I think.

Hitsounds 1 , 2 , 3
there are 9 of them :)
Image
Letylove49
Adept
Posts: 278
Joined: Tue Feb 28, 2012 7:47 pm
Location: suisse

Re: Nexgen Server Controller

Post by Letylove49 »

Barbie wrote: Tue Nov 21, 2023 9:26 pm
Barbie wrote: Sat Apr 09, 2022 9:25 pm
ucc.init.log wrote:NexgenController MH-DSFoxtrotV0.NexgenController0 (Function Nexgen112N.NexgenController.MutatorBroadcastMessage:04FC) Accessed None 'P'
Probably reason: variable "P" is used in line 95 without initialisation.
I run again into this because I missed some broadcast messages. :pfff:
Is the chain of MessageMutators, starting with GameInfo.MessageMutator, processed until the last link even if one of the mutators fails in above sense? (I suspect not because of the missing broadcast message.)

Code: Select all

/***************************************************************************************************
 *
 *  $DESCRIPTION  Displays a new message on the screen.
 *  $PARAM        pri      Information about the player that is related with this message.
 *  $PARAM        msg      String containing the message to be displayed.
 *  $PARAM        msgType  Type of the message.
 *  $OVERRIDE
 *
 **************************************************************************************************/
simulated function message(PlayerReplicationInfo pri, coerce string msg, name msgType) {
	local bool bHandleByOriginalHUD;
	
	// Check class responsible for this message.
	bHandleByOriginalHUD = msgType == 'CriticalEvent' ||  msgType == 'MonsterCriticalEvent' ||
	                       client != none && !client.bUseNexgenMessageHUD;
	
	// Handle message.
	if (bHandleByOriginalHUD) {
		if (originalHUD != none) originalHUD.message(pri, msg, msgType);
	} else {
		addMessage(msg, msgType, pri, none);
	}
} 
Pehaps a message type is missing on this fonction ( i have already added MonsterCriticalEvent' to have the green message on the center on MH Gametype on Nexgen112N)
Image



Image
Letylove49 aka Alicia
User avatar
Barbie
Godlike
Posts: 2831
Joined: Fri Sep 25, 2015 9:01 pm
Location: moved without proper hashing

Re: Nexgen Server Controller

Post by Barbie »

Probably reason: variable "P" is used in line 95 without initialisation.
"If Origin not in center it be not in center." --Buggie
Otto Kontroll
Novice
Posts: 24
Joined: Fri Mar 01, 2024 10:55 pm
Personal rank: Private

Re: Nexgen Server Controller

Post by Otto Kontroll »

I know this is a total noob question, but how do I access the NexGen control panel? I have done all the config changes i.e added all the server packages and actors etc based on the install instructions. And I know it all worked because I can see it in the way the game starts and that there is a 'green' bar at the top of the HUD. When the game starts, there is a message saying "type !open" I have tried this in the 'tilde' console and the 'tab' option and it says that cmd is unrecognizable. Can you change that to a key like mapvote. Or am I just missing on how to access the control panel/command line. I tried to go through all the posts here but most are talking about configuring for all the MH or BT, etc type games but haven't seen what to do when it's first installed other then to type "!open" (which doesn't work).

I am so close but it'd these little programming type things that are killing me LOL++

oTTo
User avatar
snowguy
Novice
Posts: 9
Joined: Sun Feb 17, 2019 9:07 am

Re: Nexgen Server Controller

Post by snowguy »

The !open command is what you would type in chat. If you want the command for the console I think it is this: mutate nsc openrcp I can't remember for sure but there might have been a keybinder in nexgen somewhere so you wouldn't have to make the keybind in the user.ini yourself.
Eternity
Skilled
Posts: 176
Joined: Sat Nov 30, 2019 10:56 pm

Re: Nexgen Server Controller

Post by Eternity »

Some clients block write access to their local ini files, which causes problems in some cases...
If that is the case, they always have to manually update their local configs, including key bindings.

Besides mentioned openrcp command, there is also "mutate nsc openvote" that opens a MapVote window.