config

package
v1.0.66 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 24, 2024 License: MIT Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ConfigFileName         = "SSM.json"
	ConfigFile             = ""
	SSMHomeDir             = ""
	EngineConfig           Engine
	GameConfig             Game
	ServerSettingsConfig   ServerSettings
	GameUserSettingsConfig GameUserSettings
	ScalabilityConfig      Scalability
)

Functions

func CreateGameConfigFile added in v1.0.50

func CreateGameConfigFile(obj GameConfigFile) error

func GetName added in v1.0.50

func GetName(a interface{}) string

GetName Returns the collection Name

func LoadConfigFile

func LoadConfigFile()

func LoadGameConfigFile added in v1.0.50

func LoadGameConfigFile(obj GameConfigFile) error

func LoadGameConfigFiles added in v1.0.50

func LoadGameConfigFiles(files ...GameConfigFile) error

func SaveConfig

func SaveConfig()

func SaveGameConfigFile added in v1.0.50

func SaveGameConfigFile(obj GameConfigFile) error

func SaveGameConfigFiles added in v1.0.50

func SaveGameConfigFiles(files ...GameConfigFile) error

func SetDefaultValues

func SetDefaultValues()

func UpdateIniFiles

func UpdateIniFiles() error

Types

type Backup

type Backup struct {
	Keep       int       `json:"keep"`
	Interval   int       `json:"interval"`
	NextBackup time.Time `json:"nextBackup"`
}

type Config

type Config struct {
	HomeDir       string   `json:"homedir"`
	DataDir       string   `json:"datadir"`
	SFDir         string   `json:"sfdir"`
	LogDir        string   `json:"logdir"`
	BackupDir     string   `json:"backupdir"`
	SFConfigDir   string   `json:"sfconfigdir"`
	ModsDir       string   `json:"sfmodsdir"`
	ModConfigsDir string   `json:"sfmodconfigsdir"`
	APIKey        string   `json:"apikey"`
	URL           string   `json:"ssmurl"`
	SF            SFConfig `json:"sf"`
	Version       string   `json:"version"`
	Backup        Backup   `json:"backup"`
}

func GetConfig

func GetConfig() *Config

type Engine added in v1.0.50

type Engine struct {
	ConfiguredInternetSpeed int64 `inisection:"/Script/Engine.Player" inikey:"ConfiguredInternetSpeed"`
	ConfiguredLanSpeed      int64 `inisection:"/Script/Engine.Player" inikey:"ConfiguredLanSpeed"`

	NetClientTicksPerSecond int64 `inisection:"/Script/Engine.Engine" inikey:"NetClientTicksPerSecond"`

	IpNetDriver_NetServerMaxTickRate  int64 `inisection:"/Script/OnlineSubsystemUtils.IpNetDriver" inikey:"NetServerMaxTickRate"`
	IpNetDriver_MaxNetTickRate        int64 `inisection:"/Script/OnlineSubsystemUtils.IpNetDriver" inikey:"MaxNetTickRate"`
	IpNetDriver_MaxInternetClientRate int64 `inisection:"/Script/OnlineSubsystemUtils.IpNetDriver" inikey:"MaxInternetClientRate"`
	IpNetDriver_MaxClientRate         int64 `inisection:"/Script/OnlineSubsystemUtils.IpNetDriver" inikey:"MaxClientRate"`
	IpNetDriver_LanServerMaxTickRate  int64 `inisection:"/Script/OnlineSubsystemUtils.IpNetDriver" inikey:"LanServerMaxTickRate"`
	IpNetDriver_InitialConnectTimeout int64 `inisection:"/Script/OnlineSubsystemUtils.IpNetDriver" inikey:"InitialConnectTimeout"`
	IpNetDriver_ConnectionTimeout     int64 `inisection:"/Script/OnlineSubsystemUtils.IpNetDriver" inikey:"ConnectionTimeout"`

	EpicNetDriver_NetServerMaxTickRate int64 `inisection:"/Script/SocketSubsystemEpic.EpicNetDriver" inikey:"NetServerMaxTickRate"`
	EpicNetDriver_LanServerMaxTickRate int64 `inisection:"/Script/SocketSubsystemEpic.EpicNetDriver" inikey:"LanServerMaxTickRate"`
}

func (*Engine) SetDefaults added in v1.0.50

func (obj *Engine) SetDefaults()

type Game added in v1.0.50

type Game struct {
	TotalNetBandwidth   int64 `inisection:"/Script/Engine.GameNetworkManager" inikey:"TotalNetBandwidth"`
	MaxDynamicBandwidth int64 `inisection:"/Script/Engine.GameNetworkManager" inikey:"MaxDynamicBandwidth"`
	MinDynamicBandwidth int64 `inisection:"/Script/Engine.GameNetworkManager" inikey:"MinDynamicBandwidth"`

	MaxPlayers int64 `inisection:"/Script/Engine.GameSession" inikey:"MaxPlayers"`
}

func (*Game) SetDefaults added in v1.0.50

func (obj *Game) SetDefaults()

type GameConfigFile added in v1.0.50

type GameConfigFile interface {
	SetDefaults()
}

type GameUserSettings added in v1.0.50

type GameUserSettings struct {
	AutosaveInterval      float32 `ini:"FG.AutosaveInterval"`
	NetworkQuality        int64   `ini:"FG.NetworkQuality"`
	DisableSeasonalEvents int64   `ini:"FG.DisableSeasonalEvents"`
}

func (GameUserSettings) Save added in v1.0.50

func (obj GameUserSettings) Save() error

func (*GameUserSettings) SetDefaults added in v1.0.50

func (obj *GameUserSettings) SetDefaults()

func (GameUserSettings) UpdateFloats added in v1.0.50

func (obj GameUserSettings) UpdateFloats() error

func (GameUserSettings) UpdateInts added in v1.0.50

func (obj GameUserSettings) UpdateInts() error

type SFConfig

type SFConfig struct {
	PortOffset            int     `json:"portOffset"`
	UpdateSFOnStart       bool    `json:"updateSFOnStart"`
	AutoRestart           bool    `json:"autoRestart"`
	AutoPause             bool    `json:"autoPause"`
	AutoSaveOnDisconnect  bool    `json:"autoSaveOnDisconnect"`
	AutoSaveInterval      float32 `json:"autoSaveInterval"`
	DisableSeasonalEvents bool    `json:"disableSeasonalEvents"`
	SFBranch              string  `json:"sfbranch"`
	InstalledVer          int64   `json:"installedVer"`
	AvilableVer           int64   `json:"avaliableVer"`
	WorkerThreads         int     `json:"workerThreads"`
	MaxPlayers            int     `json:"maxPlayers"`
	APIToken              string  `json:"apiToken"`
}

type Scalability added in v1.0.52

type Scalability struct {
	ConfiguredInternetSpeed int64 `inisection:"NetworkQuality@3" inikey:"ConfiguredInternetSpeed"`
	ConfiguredLanSpeed      int64 `inisection:"NetworkQuality@3" inikey:"ConfiguredLanSpeed"`
	TotalNetBandwidth       int64 `inisection:"NetworkQuality@3" inikey:"TotalNetBandwidth"`
	MaxDynamicBandwidth     int64 `inisection:"NetworkQuality@3" inikey:"MaxDynamicBandwidth"`
	MinDynamicBandwidth     int64 `inisection:"NetworkQuality@3" inikey:"MinDynamicBandwidth"`
	MaxInternetClientRate   int64 `inisection:"NetworkQuality@3" inikey:"MaxInternetClientRate"`
	MaxClientRate           int64 `inisection:"NetworkQuality@3" inikey:"MaxClientRate"`
}

func (*Scalability) SetDefaults added in v1.0.52

func (obj *Scalability) SetDefaults()

type ServerSettings added in v1.0.50

type ServerSettings struct {
	AutoPause            string `inisection:"/Script/FactoryGame.FGServerSubsystem" inikey:"mAutoPause"`
	AutoSaveOnDisconnect string `inisection:"/Script/FactoryGame.FGServerSubsystem" inikey:"mAutoSaveOnDisconnect"`
}

func (*ServerSettings) SetDefaults added in v1.0.50

func (obj *ServerSettings) SetDefaults()

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL