OS | Linux |
---|---|
Platform | Ubuntu 22.04.4 |
System Type | x86_64 |
CPU Model | Intel(R) Core™ i7-8700 CPU @ 3.20GHz |
CPU Layout | 1S/6C/12T |
Installed RAM | 64170 |
Virtualization | None |
Module | ADSModule |
Module Application | Application Deployment |
Loaded Plugins | FileManagerPlugin, EmailSenderPlugin, WebRequestPlugin, LocalFileBackupPlugin, CommonCorePlugin |
Application Name | AMP |
Application Version | 2.5.0.0 |
Codename | Callisto |
Tools Version | 2.4.8 |
Release Stream | Mainline |
Build Spec | Release |
Build Date | 22/03/2024 17:32 |
InstanceID | 473997d4-7fdf-4ce6-af32-6608fa5ab470 |
Last Executable | |
Last Arguments | |
Last Process ID | 2839494 |
Problem Description:
If you use TAB Key in the USER CONFIG SETTINGS in allowedVoteCmds or DisableChannels the AMP throws you a
[0] (NullReferenceException) : Object reference not set to an instance of an object
[08:58:44] [Core:FJG53 Error] : at GenericModule.ModuleMain.<MergeTemplate>b__36_0 (Text.RegularExpressions.Match m)
Error
AMP_Server.cfg
// *******
// USER CONFIGURABLE SETTINGS - CHANGE/ADD ADDITIONAL SETTINGS HERE
// *******
// Note that any lines below that begin with // are commented out and will not be applied by the server
// Remove the // from the beginning of any line that you want to apply
// VOTING
allowedVoteCmds[] ={
{ "admin", false, false },
{ "missions", false, false },
{ "mission", false, false },
{ "kick", false, false },
{ "restart", false, false },
{ "reassign", false, false },
{ "kick", false, false }
};
allowedVotedAdminCmds[] ={
{ "mission", false, false },
{ "missions", false, false },
{ "restart", false, false },
{ "reassign", false, false },
{ "kick", false, false }
};
// INGAME SETTINGS
//allowedHTMLLoadURIs[] = {};
// MISSIONS CYCLE
class Missions
{
class Mission1
{
template="xxx.xxx";
difficulty="Custom";
};
};
//missionWhitelist[] = {}; // An empty whitelist means there is no restriction on what missions are available
// OTHER OPTIONS
disableChannels[] = {
{2, false, false},
{4, false, false},
{5, false, false}
};
AMP Log
[08:58:44] [Core:FJG53 Error] : NullReferenceException
[08:58:44] [Core:FJG53 Error] : [0] (NullReferenceException) : Object reference not set to an instance of an object
[08:58:44] [Core:FJG53 Error] : at GenericModule.ModuleMain.<MergeTemplate>b__36_0 (Text.RegularExpressions.Match m)
at Text.RegularExpressions.Regex.Replace (Text.RegularExpressions.MatchEvaluator evaluator, Text.RegularExpressions.Regex regex, String input, Int32 count, Int32 startat)
at Text.RegularExpressions.Regex.Replace (String input, Text.RegularExpressions.MatchEvaluator evaluator, Int32 count, Int32 startat)
at Text.RegularExpressions.Regex.Replace (String input, Text.RegularExpressions.MatchEvaluator evaluator)
at GenericModule.ModuleMain.MergeTemplate (String finalPath, GenericModule.MetaConfigFile fileInfo)
at GenericModule.ModuleMain.MergeConfigFile (String finalPath, GenericModule.MetaConfigFile fileInfo)
at GenericModule.ModuleMain.WriteMetaconfigs ()
at GenericModule.ModuleMain.SaveChanges (String key, String value)
at GenericModule.GenericApp.DoAppStartup (Boolean IsUpdating)
at GenericModule.GenericApp.Start ()
Steps to reproduce:
Copy the USER CONFIG SETTINGS in the AMP_server.cfg
Start Arma 3 Instance
Actions taken to resolve so far:
Remove the Tabs in the mention Configs and it starts normaly
// *******
// USER CONFIGURABLE SETTINGS - CHANGE/ADD ADDITIONAL SETTINGS HERE
// *******
// Note that any lines below that begin with // are commented out and will not be applied by the server
// Remove the // from the beginning of any line that you want to apply
// VOTING
allowedVoteCmds[] ={ { "admin", false, false }, { "missions", false, false }, { "mission", false, false }, { "kick", false, false }, { "restart", false, false }, { "reassign", false, false},{ "kick", false, false } };
allowedVotedAdminCmds[] ={ { "mission", false, false }, { "missions", false, false }, { "restart", false, false }, { "reassign", false, false }, { "kick", false, false } };
// INGAME SETTINGS
//allowedHTMLLoadURIs[] = {};
// MISSIONS CYCLE
class Missions
{
class Mission1
{
template="xxx.xxx";
difficulty="Custom";
};
};
//missionWhitelist[] = {}; // An empty whitelist means there is no restriction on what missions are available
// OTHER OPTIONS
disableChannels[] = { {2, false, false}, {4, false, false}, {5, false, false}};