• Please make sure you are familiar with the forum rules. You can find them here: https://forums.tripwireinteractive.com/index.php?threads/forum-rules.2334636/

Code Trouble Brewing and Building

I'm having trouble brewing, I've added the correct line under modpackages in ROeditor.ini.
The Cmd.exe start location is C:\Program Files (x86)\Steam\SteamApps\common\Red Orchestra 2\Binaries\Win64
and target C:\Windows\System32\cmd.exe.
fairly sure those are right as well, as last time I brewed I didn't have trouble.
It keeps asking me to re-build Scripts even if they are not in either the published or unpublished folder, this happens even with the command line rogame brewcontent, it suggests to rebuild if I don't click yes, nothing happens, it crashes during the build process without completing.
Don't know what I did, now it seems to work, as far as I can tell, one question for the mutator I'm working on it keeps saying this (look at the image)
s4rwxZR.png
 
Last edited:
//=============================================================================
// MutObjectiveAlterations
//=============================================================================
// An objective Mutator that changes objective values
//=============================================================================
// Red Orchestra 2 Source
//
// - Tobias "Beskar Mando" Moos
// All Rights Reserved.
//=============================================================================
MutObjectiveAlterations extends ROMutator;
// Used to track ownership state
//enum EObjectiveState
//{
// OBJ_Axis,
// OBJ_Allies,
// OBJ_Neutral
//};
//
// Objective Settings
//var() byte ObjIndex; Unique Objective Index per layout(16, 32, 64 player version) set by the Build Paths function in the Editor
//var() byte ObjRepIndex; Globally Unique Index
//var() localized string ObjName; The name of this objective as it should be displayed to the player
//var string ObjShortName; Short name for this objective(assigned in code as A-Z)
//var() EObjectiveState InitialObjState; The original state of the objective
//var EObjectiveState AppliedInitialObjState; The original state of the objective



// Objective status variables
var EObjectiveState ObjState; Manages the state of the objective
var bool bEnabled; Whether or not this objective is enabled for the current configuration(generally based off the MaxPlayers setting on the server)
//var bool bLocked; Tracks whether or not this objective can be Activated/Deactivated
//var bool bActive; Tracks whether this objective is currently active
//var byte CapTeamIndex; The team that has captured or is currently capturing this objective
var config bool MatchLive;





// Interprets commands and broadcasts their execution
function Mutate(string MutateString, PlayerController Sender)
{
// Get player name for broadcasts
local string MyPlayerName;
MyPlayerName = Sender.PlayerReplicationInfo.PlayerName;

// always call super class implementation!
Super.Mutate(MutateString, Sender);

if ( MutateString ~= "EnableObjective" && IsAdmin(Sender) )
{
if( bLocked== true && MatchLive == false )

//Currently doesn't do anything except broadcast, we'll need to add a new string for the specified objective, this is just a generalization

Level.Game.Broadcast( self, "[Objective]" Enabled by "$MyPlayerName$" );
}
else if( MutateString ~= "DisableObjective" && IsAdmin(Sender) )
{
//Currently doesn't do anything except broadcast, we'll need to add a new string for the specified objective, this is just a generalization

if( bLocked== false && MatchLive == false )
{
Level.Game.Broadcast( self, "[Objective] Disabled by "$MyPlayerName$" );
}
}

else if (MutateString ~= "Add Role" && IsAdmin(Sender) )
//Opens user friendly interface, we'll get to this later (will be a lot of work! Definitely won't be in alpha version!), this will allow us to customize all squads to our preferences, before match live (this can be different, this is just for another mutator that goes hand in hand with this one)
If (MatchLive==false )
{
// add all that fancy and stupidly complex code here
}
//More commands coming soon!

This is most of the mutator, it will be more than just an objective modification mutator, at the moment all it should do is when a mutate command is put into the console, it should broadcast a corresponding message.
 
Last edited:
Upvote 0
Well I did the lazy method and told it to extend to the object class, that worked now it says something else, which I'll figure out today. I really wish someone would put up a mutator thread, on how to make them, Might as well do it myself after this.

You've a bad class definition.

Code:
MutObjectiveAlterations extends ROMutator

should read

Code:
class MutObjectiveAlterations extends ROMutator
 
Upvote 0