Releases: Kinematics/NetTally
1.7.0
March 30, 2016
- The method of storing BBCode markup internally has changed, in order to avoid conflating regular []'s with BBCode []'s. It now uses white angle brackets, such as 『b』. You may see this in the Manage Votes window, because that's how the votes are stored until the final output. It's not a mistake, and it won't interfere with the output window results that you copy, which will still use standard brackets for BBCode.
- Markup inside tasks is now stripped. "[x][[b]Name[/b]] Janice" (now interpreted as "[x][『b』Name『/b』] Janice") will become just "[x][Name] Janice". Use of such markup when writing the votes will not interfere with the tally. This is just for the purpose of the tally output.
- Change: A couple global options (ignore whitespace, and allow vote labels) have been changed so that all the formatting options default to false. This is to avoid confusion about some options defaulting to true, and some to false, and trying to figure out if changing a given option is returning it to the default or not.
- Fix bug in updating the vote lists when merging votes.
- Fix bug in clearing tasks when one of the other tasks for a given vote line is entirely whitespace or punctuation, and whitespace and punctuation is currently being ignored (the default).
- Fix bug where changing whether to ignore whitespace and punctuation would not take effect until the next program restart.
- Naming plans after the user's own username is now allowed again.
[x] username -- This will always be a proxy vote for the user, incorporating their entire vote, even if they have a plan by the same name.
[x] plan username -- This will always use the plan named "username" if it exists; otherwise it will fall back to being a standard user proxy vote.
For clarity in terminology:
Proxy vote - Voting for a name that represents another user or a named plan, so that you're effectively copying that vote. This may be written as "Plan XXX" or just "XXX".
User proxy - A proxy vote for another user.
Plan proxy - A proxy vote for a named plan (whether a base plan or an embedded plan).
Pinned proxy - This is a proxy vote for another user that only uses the version of their vote that existed at the time the user made the proxy vote. That is, the proxy's vote must be earlier in the thread than the user's vote.
Non-pinned proxy/tracking proxy (or just "proxy") - A user proxy vote that will use the last version of a vote made by the specified user, even if that post is later in the thread than the vote that refers to it.
User proxy votes are "tracking" by default. This doesn't apply to plan proxy votes, because plans are defined before any votes are tallied.
- The format for pinned proxy votes has changed. Previously, "Plan Kinematics" made a proxy vote "pinned", while "Kinematics" on its own allowed it to track the latest version of that user's vote. The new format to indicate a pinned proxy is:
[x] ^Kinematics
The circumflex character (^) indicates that the program should only look for posts by that user that are earlier in the thread than the post being made (given that the circumflex looks a bit like an upward arrow). An alternative form is:
[x] Pin Kinematics
to indicate that it should use a pinned version of that user's vote.
Note that such syntax is incompatible with other tally programs at this time. However, since they tend to not offer the option for pinned votes in the first place, it shouldn't be a problem.
Also note that a plan that starts with the word "pin" will still be found.
1.6.0
March 10, 2016
- Main new feature: Add ability to undo actions in the Manage Votes window. Merges, deletes, and joins can be undone. The undo buffer is preserved even if you close the Manage Votes window, so you can undo them after opening it back up again. There is no limit to the number of actions that can be undone.
- Add global option to disable generating plans from vote labels (ie: a line that defines a plan name, but has no content, and is the first line of the vote).
- Add global option to place all types of output modes inside an overall spoiler block.
- Add global option to disable proxy vote tallies (ie: referring to another user's name in order to import their vote) in order to avoid issues of a valid vote line matching a user's name.
- Rewrite handling of option to trim extended vote text so that it is more correct, and can handle more options. Separation characters inside parentheses are ignored. If there are multiple separation characters, the one closest to the 30% location is selected.
- Update vote parsing, for handling votes that are plan names, but have no other content. This is primarily for votes where there's only a plan name label for the vote, and the actual plan content is contained in the post, rather than detailed as part of the vote.
- Adjusted UI in the Global Options window to group similar options together for clarity of purpose.
- Fix bug in total voter count when plans are deleted during vote management.
- Fix parsing that still allowed the '+' character to be considered valid, after removal of that option.
- Fix bug in deleting ranked vote options in the Manage Votes window.
- Fix bug in sorting ranked votes in the Manage Votes window.
1.5.11
January 19, 2016
- Fix: Ensure that any attempts to get the task of a vote block only pass in the first line of the vote. Prevents blank vote lines from causing spurious task entries.
- Improve error reporting when pages are unable to be loaded.
1.5.10
January 16, 2016
- Fix: Add a newline after closing a div to avoid issues of text collapsing together.
- Change: User config information is now saved to the program's local directory (if possible), in addition to the AppData directory (if possible). This allows easy portability between systems while still allowing new versions that are unzipped into new directories to use the same user config. Likewise, it will keep the user config data even if you run it on systems that wouldn't allow you to save to the AppData directory (for example, library computers).
- The portable user.config file is always checked first.
- Change: Debug Mode is now handled through the global options window, instead of the debug.txt file.
- Change: The global options window has been tweaked some for space.
1.5.9
January 7, 2016
- Revised algorithm for trimming extended text lines. Should be more reliable.
- Fix: Plan names that were voted for that had added extra punctuation (such as an ending period) properly recognize the original plan name, now, instead of creating a new vote entry. Mainly a cleanup of a leftover string comparison issue.
- Add new display mode: Normal, No Voters. Primarily for allowing examination of the full votes without voter list noise getting in the way.
- Add new global option: Ignore Spoilers. Default is unset. If set, tallies will ignore spoiler blocks in posts (that is, treat spoiler blocks as if they didn't exist, and parse the post normally otherwise).
1.5.8
January 4, 2016
- Fix: Remove excess whitespace after certain types of BBCode cleanup.
- Fix: Lack of a threadmark page would fail when that option was checked, rather than falling back on the start/end post numbers.
- Fix: Future references could override later votes.
- Change: "Kinematic's Plan" will be recognized as a valid plan name when defining automatic plans, even without the "Plan:" prefix.
1.5.7
December 28, 2015
- Fix: Label on button to edit quest name wasn't resetting properly.
- Put back code to handle upgrading very old versions of NetTally config files.
1.5.6
December 24, 2015
- Additional restrictions to prevent reattempting loading of web pages that give various status codes indicating that they are not available.
1.5.5
December 24, 2015
- Fix: Adjust querying threadmarks to handle new features (as added on Sufficient Velocity) that allow reordering and nesting threadmarks.
- If a threadmark is filtered (either due to the default 'omake' filter, or a custom filter), all nested child threadmarks are also ignored. Otherwise, nested threadmarks count normally for finding the "latest" threadmark, and are considered to be after the parent threadmark.
1.5.4
December 23, 2015
- Votes that are the same other than URL markup should be considered matching votes.
- Rearrange UI some, for better balance of control positions.
- Add quest-specific options dialog.
- Posts-per-page is moved to quest-specific options.
- Added ability to specify a custom list of strings that are used for ignoring threadmarks (the way 'omake' is now).
- Various code cleanup.