configs_export

package
v0.78.3 Latest Latest
Warning

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

Go to latest
Published: Oct 5, 2024 License: AGPL-3.0 Imports: 23 Imported by: 8

Documentation

Index

Constants

This section is empty.

Variables

View Source
var LogOgE = math.Log10(math.E)
View Source
var Pi180 = 180 / math.Pi // number turning radians to degrees
View Source
var TypeClassRegex *regexp.Regexp

Functions

func Buyable added in v0.33.0

func Buyable(Bases []*GoodAtBase) bool

func DistanceForVecs added in v0.54.0

func DistanceForVecs(Pos1 *semantic.Vect, Pos2 *semantic.Vect) (float64, error)

func Empty added in v0.33.0

func Empty(phrase string) bool

func GetMaxRadius added in v0.54.1

func GetMaxRadius(Size *semantic.Vect) (float64, error)

func GetPricePerVoume added in v0.57.0

func GetPricePerVoume(price int, volume float64) float64

func InitRegexExpression added in v0.24.0

func InitRegexExpression(expression string) *regexp.Regexp

func IsAnyVignetteWithinNPCSpawnRange added in v0.55.0

func IsAnyVignetteWithinNPCSpawnRange(system *systems_mapped.System, npc_spawn_zone *systems_mapped.MissionPatrolZone) bool

func NameWithSpacesOnly added in v0.15.0

func NameWithSpacesOnly(word string) bool

func VectorToSectorCoord added in v0.70.0

func VectorToSectorCoord(system *universe_mapped.System, pos cfgtype.Vector) string

Types

type Ammo added in v0.49.0

type Ammo struct {
	Name  string
	Price int

	HitPts           int
	AmmoLimit        int
	Volume           float64
	MunitionLifetime float64

	Nickname     string
	NameID       int
	InfoID       int
	SeekerType   string
	SeekerRange  int
	SeekerFovDeg int

	Bases []*GoodAtBase

	*DiscoveryTechCompat
}

type Base

type Base struct {
	Name             string
	Archetypes       []string
	Nickname         string
	FactionName      string
	System           string
	SystemNickname   string
	Region           string
	StridName        int
	InfocardID       int
	Infocard         InfocardKey
	File             utils_types.FilePath
	BGCS_base_run_by string
	MarketGoods      []MarketGood
	Pos              cfgtype.Vector
	SectorCoord      string

	Missions BaseMissions
	BaseAllTradeRoutes
	BaseAllRoutes
	MiningInfo
}

func FilterToUserfulBases added in v0.33.0

func FilterToUserfulBases(bases []*Base) []*Base

func FitlerToUsefulOres added in v0.69.0

func FitlerToUsefulOres(bases []*Base) []*Base

type BaseAllRoutes added in v0.78.0

type BaseAllRoutes struct {
	AllRoutes []*ComboRoute
}

type BaseAllTradeRoutes added in v0.78.0

type BaseAllTradeRoutes struct {
	TradeRoutes        []*ComboTradeRoute
	BestTransportRoute *TradeRoute
	BestFrigateRoute   *TradeRoute
	BestFreighterRoute *TradeRoute
}

type BaseInfo added in v0.50.0

type BaseInfo struct {
	BaseName    string
	SystemName  string
	Region      string
	FactionName string
	BasePos     cfgtype.Vector
	SectorCoord string
}

type BaseMissions added in v0.52.0

type BaseMissions struct {
	MinOffers         int
	MaxOffers         int
	Factions          []MissioNFaction
	NpcRanksAtBaseMap map[int]bool
	NpcRanksAtBase    []int

	EnemiesAtBaseMap map[string]EnemyFaction

	MinMoneyAward int
	MaxMoneyAward int
	Vignettes     int
	Err           error
}

type BaseRoute added in v0.78.0

type BaseRoute struct {
	*Route
	FromBase *Base
	ToBase   *Base
}

func NewBaseRoute added in v0.78.0

func NewBaseRoute(g *GraphResults, FromBase *Base, ToBase *Base) *BaseRoute

type Bribe added in v0.70.3

type Bribe struct {
	BaseNickname string
	BaseInfo
	Chance float64
}

type ComboRoute added in v0.78.0

type ComboRoute struct {
	Transport *BaseRoute
	Frigate   *BaseRoute
	Freighter *BaseRoute
}

type ComboTradeRoute added in v0.65.0

type ComboTradeRoute struct {
	Transport *TradeRoute
	Frigate   *TradeRoute
	Freighter *TradeRoute
}

type Commodity added in v0.19.0

type Commodity struct {
	Nickname              string
	Name                  string
	Combinable            bool
	Volume                float64
	NameID                int
	InfocardID            int
	Infocard              InfocardKey
	Bases                 []*GoodAtBase
	PriceBestBaseBuysFor  int
	PriceBestBaseSellsFor int
	ProffitMargin         int
	BaseAllTradeRoutes
}

type CompatibleIDsForTractor added in v0.58.0

type CompatibleIDsForTractor struct {
	TechCompat float64
	Tractor    Tractor
}

func GetOrederedTechCompat added in v0.74.0

func GetOrederedTechCompat(TractorsByID map[cfgtype.TractorID]Tractor, DiscoveryTechCompat *DiscoveryTechCompat) []CompatibleIDsForTractor

type CounterMeasure added in v0.35.0

type CounterMeasure struct {
	Name  string
	Price int

	HitPts        int
	AIRange       int
	AmmoLimit     int
	Lifetime      int
	Range         int
	DiversionPctg int

	Lootable bool
	Nickname string
	NameID   int
	InfoID   int

	Bases []*GoodAtBase

	*DiscoveryTechCompat
}

type DamageBonus added in v0.21.0

type DamageBonus struct {
	Type     string
	Modifier float64
}

type DiffToMoney added in v0.52.0

type DiffToMoney struct {
	MinLevel   float64
	MoneyAward int
}

type DiscoveryIDRephacks added in v0.71.0

type DiscoveryIDRephacks struct {
	Rephacks map[cfgtype.FactionNick]Rephack
}

func (DiscoveryIDRephacks) GetRephacksList added in v0.71.0

func (r DiscoveryIDRephacks) GetRephacksList() []Rephack

type DiscoveryTechCompat added in v0.44.0

type DiscoveryTechCompat struct {
	TechcompatByID map[cfgtype.TractorID]float64
	TechCell       string
}

func CalculateTechCompat added in v0.44.0

func CalculateTechCompat(Discovery *configs_mapped.DiscoveryConfig, ids []Tractor, nickname string) *DiscoveryTechCompat

type EnemyFaction added in v0.55.0

type EnemyFaction struct {
	Faction
	NpcExist bool
}

type Engine added in v0.29.0

type Engine struct {
	Name  string
	Price int

	CruiseSpeed      int
	CruiseChargeTime int
	LinearDrag       int
	MaxForce         int
	ReverseFraction  float64
	ImpulseSpeed     float64

	HpType      string
	FlameEffect string
	TrailEffect string

	Nickname string
	NameID   int
	InfoID   int

	Bases []*GoodAtBase
	*DiscoveryTechCompat
}

type EquipmentSlot added in v0.27.0

type EquipmentSlot struct {
	SlotName     string
	AllowedEquip []string
}

type Exporter

type Exporter struct {
	Bases            []*Base
	MiningOperations []*Base

	Factions     []Faction
	Infocards    Infocards
	Commodities  []*Commodity
	Guns         []Gun
	Missiles     []Gun
	Mines        []Mine
	Shields      []Shield
	Thrusters    []Thruster
	Ships        []Ship
	Tractors     []Tractor
	TractorsByID map[cfgtype.TractorID]Tractor
	Engines      []Engine
	CMs          []CounterMeasure
	Scanners     []Scanner
	Ammos        []Ammo
	// contains filtered or unexported fields
}

func Export added in v0.13.0

func Export(configs *configs_mapped.MappedConfigs) *Exporter

func NewExporter

func NewExporter(configs *configs_mapped.MappedConfigs, opts ...OptExport) *Exporter

func (*Exporter) AllRoutes added in v0.78.0

func (e *Exporter) AllRoutes(
	bases []*Base,
) []*Base

func (*Exporter) Buyable added in v0.61.2

func (e *Exporter) Buyable(Bases []*GoodAtBase) bool

func (*Exporter) Export added in v0.13.0

func (e *Exporter) Export() *Exporter

func (*Exporter) FilterToUsefulAmmo added in v0.61.2

func (e *Exporter) FilterToUsefulAmmo(cms []Ammo) []Ammo

func (*Exporter) FilterToUsefulCommodities added in v0.61.2

func (e *Exporter) FilterToUsefulCommodities(commodities []*Commodity) []*Commodity

func (*Exporter) FilterToUsefulCounterMeasures added in v0.61.2

func (e *Exporter) FilterToUsefulCounterMeasures(cms []CounterMeasure) []CounterMeasure

func (*Exporter) FilterToUsefulEngines added in v0.61.2

func (e *Exporter) FilterToUsefulEngines(engines []Engine) []Engine

func (*Exporter) FilterToUsefulGun added in v0.61.2

func (e *Exporter) FilterToUsefulGun(guns []Gun) []Gun

func (*Exporter) FilterToUsefulMines added in v0.61.2

func (e *Exporter) FilterToUsefulMines(mines []Mine) []Mine

func (*Exporter) FilterToUsefulShields added in v0.61.2

func (e *Exporter) FilterToUsefulShields(shields []Shield) []Shield

func (*Exporter) FilterToUsefulShips added in v0.61.2

func (e *Exporter) FilterToUsefulShips(ships []Ship) []Ship

func (*Exporter) FilterToUsefulThrusters added in v0.61.2

func (e *Exporter) FilterToUsefulThrusters(thrusters []Thruster) []Thruster

func (*Exporter) FilterToUsefulTractors added in v0.61.2

func (e *Exporter) FilterToUsefulTractors(tractors []Tractor) []Tractor

func (*Exporter) FilterToUserfulScanners added in v0.61.2

func (e *Exporter) FilterToUserfulScanners(items []Scanner) []Scanner

func (*Exporter) GetAmmo added in v0.49.0

func (e *Exporter) GetAmmo(ids []Tractor) []Ammo

func (*Exporter) GetAtBasesSold added in v0.21.0

func (e *Exporter) GetAtBasesSold(commodity GetAtBasesInput) []*GoodAtBase

func (*Exporter) GetBaseInfo added in v0.50.0

func (e *Exporter) GetBaseInfo(base_nickname universe_mapped.BaseNickname) BaseInfo

func (*Exporter) GetBases added in v0.18.0

func (e *Exporter) GetBases() []*Base

func (*Exporter) GetBuyableShields added in v0.70.4

func (e *Exporter) GetBuyableShields(shields []Shield) map[string]bool

func (*Exporter) GetCommodities added in v0.19.0

func (e *Exporter) GetCommodities() []*Commodity

func (*Exporter) GetCounterMeasures added in v0.35.0

func (e *Exporter) GetCounterMeasures(ids []Tractor) []CounterMeasure

func (*Exporter) GetEngineSpeed added in v0.61.0

func (e *Exporter) GetEngineSpeed(engine_info *equip_mapped.Engine) int

func (*Exporter) GetEngines added in v0.29.0

func (e *Exporter) GetEngines(ids []Tractor) []Engine

func (*Exporter) GetFactionName added in v0.71.0

func (e *Exporter) GetFactionName(nickname cfgtype.FactionNick) string

func (*Exporter) GetFactions added in v0.13.0

func (e *Exporter) GetFactions(bases []*Base) []Faction

func (*Exporter) GetGuns added in v0.20.0

func (e *Exporter) GetGuns(ids []Tractor, buyable_ship_tech map[string]bool) []Gun

func (*Exporter) GetInfocardName added in v0.59.0

func (e *Exporter) GetInfocardName(ids_name int, nickname string) string

func (*Exporter) GetMines added in v0.23.0

func (e *Exporter) GetMines(ids []Tractor) []Mine

func (*Exporter) GetMissiles added in v0.22.0

func (e *Exporter) GetMissiles(ids []Tractor, buyable_ship_tech map[string]bool) []Gun

func (*Exporter) GetMissions added in v0.51.5

func (e *Exporter) GetMissions(bases []*Base, factions []Faction) []*Base

func (*Exporter) GetOres added in v0.69.0

func (e *Exporter) GetOres(Commodities []*Commodity) []*Base

func (*Exporter) GetRegionName added in v0.67.0

func (e *Exporter) GetRegionName(system *universe_mapped.System) string

func (*Exporter) GetScanners added in v0.48.0

func (e *Exporter) GetScanners(ids []Tractor) []Scanner

func (*Exporter) GetShields added in v0.24.0

func (e *Exporter) GetShields(ids []Tractor) []Shield

func (*Exporter) GetShips added in v0.26.0

func (e *Exporter) GetShips(ids []Tractor, TractorsByID map[cfgtype.TractorID]Tractor) []Ship

func (*Exporter) GetThrusters added in v0.25.0

func (e *Exporter) GetThrusters(ids []Tractor) []Thruster

func (*Exporter) GetTractors added in v0.28.0

func (e *Exporter) GetTractors() []Tractor

func (*Exporter) NewEnemyFaction added in v0.55.0

func (e *Exporter) NewEnemyFaction(faction Faction, npc_ranks []int) EnemyFaction

Calculates for enemy faction percentage of ships defined in faction_props/npcships.ini If they aren't defined, Freelancer will be showing corrupted no missions when they encounter.

func (*Exporter) TradePaths added in v0.64.0

func (e *Exporter) TradePaths(
	bases []*Base,
	commodities []*Commodity,
) ([]*Base, []*Commodity)

type Faction added in v0.13.0

type Faction struct {
	Name      string
	ShortName string
	Nickname  string

	ObjectDestruction float64
	MissionSuccess    float64
	MissionFailure    float64
	MissionAbort      float64

	InfonameID  int
	InfocardID  int
	Infocard    InfocardKey
	Reputations []Reputation
	Bribes      []Bribe
}

func FilterToUsefulFactions added in v0.33.0

func FilterToUsefulFactions(factions []Faction) []Faction

type GetAtBasesInput added in v0.21.0

type GetAtBasesInput struct {
	Nickname string
	Price    int
	Volume   float64
}

type GoodAtBase added in v0.21.0

type GoodAtBase struct {
	BaseNickname      string
	BaseSells         bool
	PriceBaseBuysFor  int
	PriceBaseSellsFor int
	Volume            float64
	LevelRequired     int
	RepRequired       float64

	BaseInfo
}

type GraphResults added in v0.65.0

type GraphResults struct {
	// contains filtered or unexported fields
}

func NewGraphResults added in v0.65.0

func NewGraphResults(
	e *Exporter,
	avgCruiserSpeed int,
	can_visit_freighter_only_jhs trades.WithFreighterPaths,
	mining_bases_by_system map[string][]trades.ExtraBase,
) *GraphResults

type Gun added in v0.20.0

type Gun struct {
	Nickname string
	Name     string
	Type     string
	Price    int
	Class    string
	HpType   string
	IdsName  int
	IdsInfo  int
	Volume   float64

	HitPts       string
	PowerUsage   float64
	PowerPerSec  float64
	Refire       float64
	Range        float64
	Toughness    float64
	IsAutoTurret bool
	Lootable     bool

	RequiredAmmo bool
	// AmmoPrice     int
	// AmmoBases     []*GoodAtBase
	// AmmoName      string
	HullDamage      int
	EnergyDamage    int
	ShieldDamage    int
	AvgShieldDamage int
	DamageType      string
	LifeTime        float64
	Speed           float64
	GunTurnRate     float64
	DispersionAngle float64

	HullDamagePerSec       float64
	AvgShieldDamagePerSec  float64
	EnergyDamagePerSec     float64
	PowerUsagePerSec       float64
	AvgEfficiency          float64
	HullEfficiency         float64
	ShieldEfficiency       float64
	EnergyDamageEfficiency float64

	Bases         []*GoodAtBase
	DamageBonuses []DamageBonus

	Missile
	*DiscoveryTechCompat
	GunDetailed
}

type GunDetailed added in v0.72.0

type GunDetailed struct {
	FlashParticleName string
	ConstEffect       string
	MunitionHitEffect string
}

type Infocard added in v0.6.1

type Infocard []string

type InfocardKey added in v0.17.0

type InfocardKey string

type Infocards added in v0.58.3

type Infocards map[InfocardKey]Infocard

type MarketGood added in v0.8.0

type MarketGood struct {
	Name     string
	Nickname string
	HpType   string
	Type     string

	LevelRequired int
	RepRequired   float64
	Infocard      InfocardKey

	BaseSells     bool
	PriceModifier float64
	PriceBase     int
	PriceToBuy    int
	PriceToSell   *int
}

type Mine added in v0.23.0

type Mine struct {
	Name      string
	Price     int
	AmmoPrice int
	Nickname  string
	IdsName   int
	IdsInfo   int

	HullDamage    int
	EnergyDamange int
	ShieldDamage  int
	PowerUsage    float64

	Value              float64
	Refire             float64
	DetonationDistance float64
	Radius             float64
	SeekDistance       int
	TopSpeed           int
	Acceleration       int
	LinearDrag         float64
	LifeTime           float64
	OwnerSafe          int
	Toughness          float64

	HitPts   int
	Lootable bool

	Bases []*GoodAtBase

	*DiscoveryTechCompat
}

type MiningInfo added in v0.69.1

type MiningInfo struct {
	DynamicLootMin        int
	DynamicLootMax        int
	DynamicLootDifficulty int
	MinedGood             MarketGood
}

type Missile added in v0.22.0

type Missile struct {
	MaxAngularVelocity float64
}

type MissioNFaction added in v0.52.0

type MissioNFaction struct {
	FactionName     string
	FactionNickname string
	MinDifficulty   float64
	MaxDifficulty   float64
	Weight          int

	Infocard InfocardKey

	MinAward int
	MaxAward int
	NpcRanks []int
	Enemies  []EnemyFaction
	Err      error
}

type OptExport added in v0.13.0

type OptExport func(e *Exporter)

type PathWithNavmap added in v0.70.2

type PathWithNavmap struct {
	trades.DetailedPath
	SectorCoord string
	Pos         cfgtype.Vector
}

type Rephack added in v0.18.0

type Rephack struct {
	FactionName string
	FactionNick cfgtype.FactionNick
	Reputation  float64
	RepType     playercntl_rephacks.RepType
}

type Reputation added in v0.13.0

type Reputation struct {
	Name     string
	Rep      float64
	Empathy  float64
	Nickname string
}

type Route added in v0.78.0

type Route struct {
	// contains filtered or unexported fields
}

func NewRoute added in v0.78.0

func NewRoute(g *GraphResults, from_base_nickname string, to_base_nickname string) *Route

func (*Route) GetCanVisitFreighterOnlyJH added in v0.78.0

func (t *Route) GetCanVisitFreighterOnlyJH() bool

func (*Route) GetCruiseSpeed added in v0.78.0

func (t *Route) GetCruiseSpeed() int

func (*Route) GetDist added in v0.78.0

func (t *Route) GetDist() int

func (*Route) GetID added in v0.78.1

func (c *Route) GetID() string

func (*Route) GetNameByIdsName added in v0.78.0

func (t *Route) GetNameByIdsName(ids_name int) string

func (*Route) GetPaths added in v0.78.0

func (t *Route) GetPaths() []PathWithNavmap

func (*Route) GetTime added in v0.78.0

func (t *Route) GetTime() float64

type Scanner added in v0.48.0

type Scanner struct {
	Name  string
	Price int

	Range          int
	CargoScanRange int

	Lootable bool
	Nickname string
	NameID   int
	InfoID   int

	Bases []*GoodAtBase

	*DiscoveryTechCompat
}

type Shield added in v0.24.0

type Shield struct {
	Name string

	Class      string
	Type       string
	Technology string
	Price      int

	Capacity          int
	RegenerationRate  int
	ConstantPowerDraw int
	Value             float64
	RebuildPowerDraw  int
	OffRebuildTime    int

	Toughness float64
	HitPts    int
	Lootable  bool

	Nickname string
	HpType   string
	IdsName  int
	IdsInfo  int

	Bases []*GoodAtBase

	*DiscoveryTechCompat
}

type Ship added in v0.26.0

type Ship struct {
	Nickname string

	Name      string
	Class     int
	Type      string
	Price     int
	Armor     int
	HoldSize  int
	Nanobots  int
	Batteries int
	Mass      float64

	PowerCapacity     int
	PowerRechargeRate int
	CruiseSpeed       int
	ImpulseSpeed      float64
	ReverseFraction   float64
	ThrustCapacity    int
	ThrustRecharge    int

	MaxAngularSpeedDegS           float64
	AngularDistanceFrom0ToHalfSec float64
	TimeTo90MaxAngularSpeed       float64

	NudgeForce  float64
	StrafeForce float64
	NameID      int
	InfoID      int

	Bases            []*GoodAtBase
	Slots            []EquipmentSlot
	BiggestHardpoint []string

	*DiscoveryTechCompat
}

type Thruster added in v0.25.0

type Thruster struct {
	Name       string
	Price      int
	MaxForce   int
	PowerUsage int
	Efficiency float64
	Value      float64
	Rating     float64
	HitPts     int
	Lootable   bool
	Nickname   string
	NameID     int
	InfoID     int

	Bases []*GoodAtBase

	*DiscoveryTechCompat
}

type Tractor added in v0.28.0

type Tractor struct {
	Name       string
	Price      int
	MaxLength  int
	ReachSpeed int

	Lootable bool
	Nickname cfgtype.TractorID
	NameID   int
	InfoID   int

	Bases []*GoodAtBase
	DiscoveryIDRephacks
}

type TradeRoute added in v0.64.0

type TradeRoute struct {
	Route       *Route
	Commodity   *Commodity
	BuyingGood  *GoodAtBase
	SellingGood *GoodAtBase
}

func NewTradeRoute added in v0.65.0

func NewTradeRoute(g *GraphResults, buying_good *GoodAtBase, selling_good *GoodAtBase, commodity *Commodity) *TradeRoute

func (*TradeRoute) GetProffitPerTime added in v0.65.0

func (t *TradeRoute) GetProffitPerTime() float64

func (*TradeRoute) GetProffitPerV added in v0.64.0

func (t *TradeRoute) GetProffitPerV() float64

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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