10 Commits

10 changed files with 64 additions and 37 deletions

View File

@@ -36,10 +36,6 @@ public class MissionFailed : Transaction {
return -1;
}
public int Amount {
get { return Entries.Count + 1; }
}
public override string ToString() {
StringBuilder builder = new StringBuilder();
@@ -47,8 +43,7 @@ public class MissionFailed : Transaction {
return "";
}
builder.AppendFormat("{0}x Mission failed: \"{1}\"",
Amount,
builder.AppendFormat(" Mission failed: \"{0}\"",
Mission?.FriendlyName
);

View File

@@ -5,13 +5,23 @@ public class EnglishMissionNames {
{"Chain_FindThePirateLord_name", "Assassination (Pirate Lord) (Chain)"},
{"Chain_RegainFooting_name", "Regain Footing (Chain)"},
{"Chain_SalvageJustice_name", "Assassination (Legal) (Chain)"},
{"Mission_Altruism_Bust_name", "Donate (Bust)" },
{"Mission_Altruism_CivilUnrest_name", "Donate (Civil Unrest)" },
{"Mission_Altruism_name", "Donate"},
{"Mission_Altruism_Outbreak_name", "Donate (Outbreak)" },
{"Mission_AltruismCredits_Bust_name", "Donate Credits (Bust)"},
{"Mission_AltruismCredits_CivilUnrest_name", "Donate Credits (Civil Unrest)" },
{"Mission_AltruismCredits_Famine_name", "Donate Credits (Famine)"},
{"Mission_AltruismCredits_name", "Donate Credits"},
{"Mission_AltruismCredits_Outbreak_name", "Donate Credits (Outbreak)" },
{"Mission_Assassinate_Illegal_BLOPS_name", "Assassination (Illegal)"},
{"Mission_Assassinate_Legal_Corporate_name", "Corporate Assassination (Legal)"},
{"Mission_Assassinate_Legal_Bust_name", "Assassination (Bust, Legal)" },
{"MISSION_assassinate_legal_CivilUnrest_name", "Assassination (Civil Unrest, Legal)" },
{"Mission_Assassinate_Legal_Communism_name", "Assassination (Communism, Legal)" },
{"Mission_Assassinate_Legal_Corporate_name", "Assassination (Corporate, Legal)"},
{"Mission_Assassinate_Legal_War_name", "Assassination (War, Legal)" },
{"Mission_Assassinate_name", "Assassination"},
{"Mission_Assassinate_Planetary_Expansion_name", "Assassination (Planetary Scan, Expansion)" },
{"Mission_Assassinate_Planetary_name", "Assassination (Planetary Scan)"},
{"Mission_Collect_Bust_name", "Provide (Bust)"},
{"Mission_Collect_CivilLiberty_name", "Provide (Civil Liberty)"},
@@ -19,8 +29,10 @@ public class EnglishMissionNames {
{"Mission_Collect_Famine_name", "Provide (Famine)"},
{"Mission_Collect_Industrial_name", "Provide (Industrial)"},
{"Mission_Collect_name", "Provide"},
{"Mission_Collect_Outbreak_name", "Provide (Outbreak)" },
{"Mission_Collect_RankEmp_name", "Provide (Imperial Navy)"},
{"Mission_Collect_Retreat_name", "Provide (Retreat)"},
{"Mission_Courier_CivilUnrest_name", "Courier (Divil Unrest)" },
{"Mission_Courier_Democracy_name", "Courier (Democracy)"},
{"Mission_Courier_Elections_name", "Courier (Elections)"},
{"Mission_Courier_Expansion_name", "Courier (Expansion)"},
@@ -28,8 +40,10 @@ public class EnglishMissionNames {
{"Mission_Courier_Lockdown_name", "Courier (Lockdown)"},
{"Mission_Courier_name", "Courier"},
{"Mission_Courier_RankEmp_name", "Courier (Imperial Navy)"},
{"Mission_Courier_War_name", "Courier (War)" },
{"Mission_Delivery_Agriculture_name", "Delivery (Agriculture)"},
{"Mission_Delivery_Boom_name", "Delivery (Boom)"},
{"Mission_Delivery_CivilUnrest_name", "Delivery (Civil Unrest)"},
{"Mission_Delivery_Democracy_name", "Delivery (Democracy)"},
{"Mission_Delivery_Investment_name", "Delivery (Investment)"},
{"Mission_Delivery_name", "Delivery"},
@@ -71,13 +85,16 @@ public class EnglishMissionNames {
{"Mission_OnFoot_Sabotage_Production_Covert_MB_name", "On Foot Sabotage Production (Covert)"},
{"Mission_OnFoot_Salvage_MB_name", "On Foot Salvage"},
{"Mission_OnFoot_SalvageIllegal_MB_name", "On Foot Salvage (Illegal)"},
{"Mission_PassengerBulk_AIDWORKER_ARRIVING", "Aid Workers Seeking Transport"},
{"Mission_OnFoot_Smuggle_Contact_MB_name", "On Foot Smuggling" },
{"Mission_PassengerBulk_AIDWORKER_ARRIVING", "Seeking Transport (Aid Workers)"},
{"Mission_PassengerBulk_name", "Seeking Transport" },
{"Mission_PassengerVIP", "Passenger (VIP)"},
{"Mission_PassengerVIP_Criminal_BOOM_name", "Passenger Criminal (VIP) (Boom)"},
{"Mission_PassengerVIP_name", "Passenger (VIP)"},
{"Mission_PassengerVIP_Scientist_FAMINE_name", "Passenger Scientist (VIP) (Famine)"},
{"Mission_PassengerVIP_Tourist_BOOM_name", "Passenger Tourist (VIP) (Boom)"},
{"Mission_Rescue_Planet_name", "Planet Rescue"},
{"Mission_Rescue_Planet_Expansion_name", "Planet Rescue (Expansion)" },
{"MISSION_Salvage_CivilUnrest_name", "Salvage (Civil Unrest)"},
{"MISSION_Salvage_Expansion_name", "Salvage (Expansion)"},
{"MISSION_Salvage_Illegal_name", "Salvage (Illegal)"},
@@ -88,6 +105,7 @@ public class EnglishMissionNames {
{"MISSION_Scan_name", "Scan"},
{"Mission_Sightseeing_Criminal_FAMINE_name", "Sightseeing (Criminal) (Famine)"},
{"Mission_Sightseeing_name", "Sightseeing"},
{"Mission_Smuggle_Anarchy_name", "Smuggling (Anarchy)" },
{"Mission_TW_Massacre_Basilisk_Plural_name", "Kill Basilisk" },
{"Mission_TW_Massacre_Basilisk_Singular_name", "Kill Basilisk" },
{"Mission_TW_Massacre_Cyclops_Plural_name", "Kill Cyclops" },

View File

@@ -14,14 +14,24 @@ public class Thargoid {
public static string ThargoidFaction = Factions.Thargoid;
public static Dictionary<ulong, ThargoidVessel> VesselPayout { get; } = new() {
// Up to date values ever since 14.02
{ 65000, ThargoidVessel.Scout },
{ 75000, ThargoidVessel.Scout },
{ 6500000, ThargoidVessel.Cyclops },
{ 20000000, ThargoidVessel.Basilisk },
{ 25000000, ThargoidVessel.Orthrus },
{ 34000000, ThargoidVessel.Medusa },
{ 50000000, ThargoidVessel.Hydra },
// These are the old values pre Update 14.02
{ 80000, ThargoidVessel.Scout },
{ 8000000, ThargoidVessel.Cyclops },
{ 24000000, ThargoidVessel.Basilisk },
// In Update 14.1 the payout for Orthrus has been rebalanced.
{ 30000000, ThargoidVessel.Orthrus },
{ 40000000, ThargoidVessel.Medusa },
// This used to be the old payout value for Orthrus
{ 50000000, ThargoidVessel.Orthrus },
// This used to be the old payout value for Orthrus, it now conflicts
// with Post Update 14.02 Hydra values
//{ 50000000, ThargoidVessel.Orthrus },
{ 60000000, ThargoidVessel.Hydra },
};

View File

@@ -2,7 +2,7 @@
<PropertyGroup>
<TargetFramework>net7.0-windows</TargetFramework>
<OutputType>WinExe</OutputType>
<Version>0.2.5</Version>
<Version>0.2.6</Version>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
<UseWindowsForms>true</UseWindowsForms>
<UseWPF>true</UseWPF>

View File

@@ -8,28 +8,24 @@ namespace EliteBGS.LogGenerator;
public class FailedMissionFormat : LogFormatter {
public string GenerateLog(Objective objective) {
var missions = objective.EnabledOfType<MissionFailed>();
StringBuilder builder = new StringBuilder();
if (missions.Count <= 0) {
return "";
}
foreach (var failed in missions) {
MissionFailedEntry f = failed.Failed;
string name;
StringBuilder builder = new StringBuilder();
if (!string.IsNullOrEmpty(f.Mission.FriendlyName)) {
name = f.Mission.FriendlyName;
} else if (!string.IsNullOrEmpty(f.Mission.LocalisedName)) {
name = f.Mission.LocalisedName;
} else {
name = f.Mission.Name;
}
var grouping = missions
.GroupBy(x => x.Mission.IsOnFoot)
;
if (!string.IsNullOrEmpty(failed.Faction)) {
builder.AppendFormat("Failed mission \"{0}\" targeting {1}\n", name, failed.Faction);
foreach (var group in grouping) {
int amount = group.Count();
if (group.Key) {
builder.AppendFormat("Failed {0} On Foot Mission(s)\n", amount);
} else {
builder.AppendFormat("Failed mission \"{0}\"\n", name);
builder.AppendFormat("Failed {0} Ship Mission(s)\n", amount);
}
}

View File

@@ -17,7 +17,8 @@ public class NonaDiscordLog : DiscordLogGenerator {
suffix = "st";
} else if (today.Day == 2 || today.Day == 22) {
suffix = "nd";
} else if (today.Day == 23) {
// Shakaka wins the price for finding this "bug"!
} else if (today.Day == 3 || today.Day == 23) {
suffix = "rd";
} else {
suffix = "th";

View File

@@ -1,11 +1,11 @@
# EliteBGS
# EDBGS
This tool is meant to help people contributing to the BGS effort to create BGS reports.
The tool allows you to configure BGS objectives, and will then parse your player journal
for tasks you completed relating to that BGS objective. Once the JSON player journal has
been parsed, you may then generate a BGS report you can copy/paste into Discord.
Source code is available [here](https://git.aror.org/florian/edbgs).
Source code is available at [https://codeberg.org/nola/edbgs](https://codeberg.org/nola/edbgs).
Binary downloads can be found here: [https://bgs.n0la.org/](https://bgs.n0la.org/).
@@ -24,6 +24,8 @@ transactions. Currently the tool recognises the following transactions:
* Selling of micro resources (Odyssey only)
* Selling of organic data (Odyssey only)
* Vouchers, including bounty vouchers, combat bonds, and settlement vouchers (aka intel packages)
* Thargoid kills
* Contributions to Thargoid war effort
Vouchers help the faction that is listed for them. If said faction is not present in the
current system, then there is no BGS impact. So the tool looks for all system factions, and
@@ -221,13 +223,11 @@ It would be helpful if you included the JSON player journal. This player journal
## Build Dependencies
Handling of Elite Dangerous player journals have been moved to a separate project called `EDJournal`.
Its source can be found [here](https://git.aror.org/florian/edjournal). This project simply depends
on the binary DLL that `EDJournal` builds.
The project also requires:
The project also requires `Ookii.Dialogs.WPF` controls, which contains the auto complete text box.
And of course, `Newtonsoft.Json` as the JSON parser.
* `Ookii.Dialogs.WPF`
* `Newtonsoft.Json`
* `Extended.Wpf.Toolkit`
## About

View File

@@ -1,5 +1,12 @@
# EliteBGS changelog
## 0.2.6 on 04.02.2023
* Update Post 14.02 Thargoid bounties
* Just summarise failed missions by on-foot and ship, instead of a detailed view
* Add some more English mission names
* Move code hosting to [CodeBerg](https://codeberg.org/)
## 0.2.5 on 20.12.2022
* Repaired mission fails.

View File

@@ -72,7 +72,7 @@ The tool itself is Open Source, licenced unter the GPLv3.
The source code can be found here:
* [https://git.aror.org/florian/EDBGS](https://git.aror.org/florian/EDBGS)
* [https://codeberg.org/nola/edbgs](https://codeberg.org/nola/edbgs)
## Contact

View File

@@ -7,5 +7,5 @@ See [https://bgs.n0la.org/](https://bgs.n0la.org) for further details.
## Requirements
This repository depends on dotnet desktop SDK 7, as well as Newtonsoft.JSON and Ookii
Dialogs.
This repository depends on dotnet desktop SDK 7, as well as Newtonsoft.JSON, Extended
WPF toolkit, and Ookii Dialogs.