Skip to content

Releases: jacob-keller/L0G-101086

v3.3.0 refine location information

14 Jan 07:03
Compare
Choose a tag to compare

Recent changes to simpleArcParse have made it logical to report location (wing/fractal) information directly within simpleArcParse. This will reduce future maintenance burden for adding additional encounters, since only simpleArcParse needs to be updated.

Changes since v3.1.0

  • Twisted Castle will be properly named and have location data
  • Location data is no longer tracked in the module file, but new versions of simpleArcParse will report it
  • simpleArcParse now correctly tags fractal CM encounters as challenge motes, rather than reporting " (CM)" in their boss name.

You must update simpleArcParse.exe for the new version, as it depends on the location data generated by the simpleArcParse program now, rather than generating that itself based on the encounter name.

support publishing fractal encounters

25 Dec 00:04
Compare
Choose a tag to compare

The major feature in this release is support for additional fractals beyond the CMs.

Changes since v3.1.0

  • Remove the shortened name of Qadim the Peerless
  • Don't immediately exit when failing to upload a file. Instead, modify the file's LastWriteTime so that it is new and then continue. Keep track of every failed upload and display a log message containing all failures after the upload completes. This makes upload failures more obvious. Now, on intermittent upload failures, simply re-running the script will pick up any missing files.
  • Comment out the build-template update in the update-arcdps.ps1 script, since ArcDPS build templates have been defeatured.
  • Add a JSON content-type header to the discord upload, enabling the upload script to work with the new discord API.
  • Update the C++ JSON library submodule
  • Cleanup the formatting in simpleArcParse/main.cpp
  • Refactor the boss name mapping in simpleArcParse, making it easier to add new IDs in the future.
  • Use the term "players" instead of "raiders", so that it's more generic to both fractals and raids
  • Move a print statement about uploading to a specific guild's discord until after deciding if there are any encounters to upload
  • Update simpleArcParse to support naming several fractal encounters based on their encounter ID
  • Properly categorize a number of encounters as fractals
  • Add "wing" identifications for several fractal encounters, using the fractal name.

Support "The Key of Ahdashim" raid bosses

12 Jun 04:51
Compare
Choose a tag to compare

The primary goal of this release is to add support for naming the new raid bosses in wing 7.

Changes since v3.0.1

  • Limit initial upload and format time to a maximum of 2 days, to prevent new users from attempting to upload significant backlogs.
  • Re-write the update-arcdps.ps1 script to reduce duplicate code, and use the correct hash file when determining if new versions need to be uploaded.
  • Add a new upload-and-format script which just runs the upload-logs script followed by the format-encounters script
  • Update simpleArcParse to handle the new wing 7 boss ids
  • Update the powershell module to handle raid wing information for new bosses

v3.0.1: simpleArcParse updates

31 Mar 10:01
Compare
Choose a tag to compare

This release is a minor update which only includes new functionality for simpleArcParse. The main scripts have not been modified.

The main motivation for this release is to enable extracting Guild UID values from the CBTS_GUILD events that ArcDPS now supports in the newest EVTC files. These values are extracted from the combat events section and match the values as used by the GW2 API. Currently these are not used by the main upload/format scripts, but that may happen in a future release. (As always, patches welcome!)

Changes to simpleArcParse since v3.0.0

  • Update the nlohmann JSON parsing library
  • Add encounter IDs for wing5 Rainbow Road and the three statue events
  • Update the EVTC structure definitions from the ArcDPS website
  • Refactor how simpleArcParse searches through combat events
  • Zero-allocate a few structure to ensure they start from a clean state
  • Add support for extracting Guild UID values from newer versions of ArcDPS EVTC files

v3.0.0: remove gw2raidar support

26 Mar 08:19
Compare
Choose a tag to compare

This is a major release, as it's been some time since the last update.

BREAKING CHANGE

The major change in this release is that gw2raidar support has been entirely removed. The reasons for this are numerous.

  • gw2raidar uploading is problematic, because the upload doesn't return a permalink immediately. Instead, there is a lot of futzing around with digging through their API and trying to correlate the links to the correct local boss files. This is fragile, and slow.
  • gw2raidar devs haven't responded to my requests for a better API that allows me to request a permalink for a specific file I uploaded
  • In my experience, their site has been slow, and difficult to use. Many users have told me that they do not enable gw2raidar uploads anymore. I have also stopped enabling it. This means that I'm likely to break the support as I continue to update and add new features.

If you are interested in the gw2raidar support, you're welcome to stick to the v2.5.0 release, or fork this project. If an active developer is willing to maintain the support in the current code, I'm willing to work with you, but I no longer have time to maintain the support given the above issues.

Highlights

This release also includes several other useful updates, including the following new features

  • format-encounters learned to group bosses together by checking the time between them. Instead of just grouping all bosses on a single day, the script will keep a group of encounters together as long as there isn't a large gap where no boss was killed. This allows keeping consistent groupings together when publishing a set of encounters that crosses the date line. The groups will always keep raids, golem training encounters, and fractals separately. Additionally, encounters of separate guilds will not be grouped.
  • format-encounters learned to optionally post a "total duration" of a set of grouped encounters. This duration includes possibly un-published failed encounters, and is the total time from the start of the first encounter in the set until the end of the last encounter. This data can be useful for showing approximately how long your group takes to clear that set of encounters.
  • simpleArcParse gained support for outputting data in a simple JSON format, and is now the main format used by the other scripts. Note that the old keywords continue to work for backwards compatibility.
  • you can now use an environment variable to modify what configuration file is loaded. This can be used to write wrapper scripts which run the upload and format using different configurations.
  • simpleArcParse now can handle training golem encounters correctly

Changes since v2.5.0

  • Mark Bandit Trio as a wing2 boss
  • avoid storing the precise duration string if it's empty
  • use the best available timestamp if there is no LOGEND event when calculating duration
  • refactor how we split encounters into groups, to prepare for more robust grouping
  • check for each dll when attempting to download the experimental ArcDPS versions
  • remove the v1 to v2 configuration conversion script
  • add vim modelines to the .ps1 files
  • remove gw2raidar support entirely (see highlights above for more information)
  • completely drop support for loading the old v1 configuration format
  • combine commonConfigurationFields into the v2 configuration section
  • Add a new "publish_encounters" option for guilds
  • Add local start and end time extraction support in simpleArcParse
  • improve logic for grouping encounters based on "time" (see highlights for details)
  • add support for showing an estimate of the total time a block of encounters ran
  • Avoid crashing if an encounter doesn't get recognized as belonging to any guild
  • Add an environment variable to control what configuration file to load
  • add training golem IDs to simpleArcParse
  • log golem encounters separately from raids and fractals
  • add a new JSON output format for simpleArcParse
  • convert the upload and format scripts to use the JSON format.

v2.5.0: Support configuring discord_map behavior

23 Dec 23:52
Compare
Choose a tag to compare

This release implements a new feature to configure how a guild's discord map is used when determining the player listing at the bottom of each post. This implements issue #22.

Bugs fixed in 2.5.0

  • Make the test for simpleArcParse version more robust by using a try/catch in order to display a more useful warning to the user that the command failed, possibly due to antivirus software interference.

Changes since v2.4.2:

  • Change most log commands to also output to the console, instead of only the log file
  • Display the total number of encounters when uploading and formatting
  • While uploading each encounter, display the encounter number out of the total as an indicator of about how far the script has progressed
  • Standardize the text for waiting for the user to confirm script exit to "Press enter to exit"
  • Log to the log file even when in debug mode
  • Update the example configuration files
  • Add a new l0g-101086.Tests.ps1 script intended to be used to test the module file. Going forward, I hope to add new unit tests when making changes, and slowly grow the test suite until it has decent coverage of the module functions. Hopefully this can help reduce and prevent future regressions.

New Features since 2.4.2:

  • A new load-module.ps1 script, which can be run from within a powershell console to load the module file and config object. Useful for debugging or manually calling module functions for uploading individual encounters
  • New config options for guilds
    • "show_players" is used to set how the discord map is used
      • "none" disables showing player names
      • "discord_if_possible" retains previous behavior of using discord names if possible, but otherwise falling back to account names. If "show_players" is unconfigured, this is the default behavior.
      • "discord_only" causes only the discord names to show, but not the other account names
      • "accounts_only" disables mapping to the discord name, and simply shows all the account names
    • "prefix_players_text" is used to allow custom text prefixing the player list, such as an '@here' ping

Note about simpleArcParse: For now, I'm going to keep uploading only the Code::Blocks GCC build. If you desire the other builds of simpleArcParse, please let me know, and I will add them to the release page.

v2.4.2: even more fixes and refinements

21 Dec 01:45
Compare
Choose a tag to compare

This release is primarily a bug fix release to fix bugs reported to me since v2.4.0 and v2.4.1 were released.

Bugs fixed since v2.4.1

  • (hopefully) fix support for using uncompressed EVTC files again
  • don't crash if attempting to format only unsuccessful logs.
    • currently we only support formatting successful logs, but this should be configurable in the future
  • Fix a bad invocation of Test-Path using the -Dir parameter which doesn't exist

Changes since v2.4.0

  • Shorten the name for the "Skorvald the Shattered (CM)" fractal encounter to "Skorvald (CM)"
  • Allow specifying emojis based on the short or long name of the encounter (long name is used if both are provided in the emoji map)
  • Fix the simpleArcParse code to compile with Visual Studio
    • use [[gnu::unused]] instead of the less portable attribute((unused))
    • Add a Visual Studio 2017 solution .sln file to load and build using Visual Studio
  • Change the default path for discord_json_data
    • Your config won't automatically change. If you want to remove the evraids reference, feel free to edit the configuration file.
  • Move some logging lines to be more helpful
    • Only log when we actually upload to dps.report or gw2raidar
    • Log when we format encounters
    • Be more verbose about when a path is invalid

Now that simpleArcParse can be built using Visual Studio, I have provided simpleArcParse.exe files build using Visual Studio as well as GCC (via Code::Blocks).

v2.4.1

19 Dec 06:33
Compare
Choose a tag to compare

This is a minor release with updates based on feedback after posting about the v2.4.0 release on reddit.

Changes since v2.4.0

  • Update error messages when files can't be found
  • Correct README.md about the use of "no" vs "none"
    • Also add support for "none" and "yes" as synonyms to "no" and "all" respectively for the configuration values upload_dps_report and upload_gw2raidar, so that the old README is also accurate for new versions of the scripts.
  • Allow setting the "raids" configuration value for a guild to false, so that a guild can ignore regular raid encounters.
    • Possibly need to investigate changing this to allow configuring exactly which encounters to use instead of the raids/fractals split...
  • Add an example configuration file that has multiple guilds.

v2.4.0: Support the Freezie boss

18 Dec 06:37
Compare
Choose a tag to compare

This update adds support for the Freezie boss to simpleArcParse. It also fixes a bug in how we report unknown encounters.

Releases prior to this version may cause format-encounter.ps1 to crash, due to reading garbage data for the boss name. You should update at least simpleArcParse.exe in order to avoid this.

v2.3.0: more precise duration times

13 Dec 05:13
Compare
Choose a tag to compare

This release updates how we calculate the duration times, to use the method used by dps.report. This means we can report encounter durations in milliseconds, and we get a more accurate timestamp of when the boss is actually defeated, rather than the end of logging.

You must upgrade to the simpleArcParse v1.3.0 included as part of this release

New features since v2.2.0

  • Add new precise duration timestamps, and use these instead of the older server time based values