DialogueChecker (Latest version: V3.07, 18 December 2016) (2 Viewers)

AaRL

Vivacious Visitor
Joined
Feb 17, 2011
Re: DialogueChecker (Latest version: V1.23, 5 August 2013)

Thanks for your tireless effort to improve the dialogue system within SDT. Your checker really saves time and really, patience. Especially when searching for that rouge " that's messing up the whole dialogue...

Voting that this should be sticky or at least, added/linked to within the dialogue making guide
 

Pim_gd

Content Creator
Joined
Jan 25, 2013
Re: DialogueChecker (Latest version: V1.23, 5 August 2013)

I think I'll split the variable system over several updates. First update will be variable identification - the checker will check to see that all variables that are being used have been declared or are standard variables provided by mods.
That said...
What mods set dialogue variables?
I'll be checking Animtoolsv6, BEv2_4 and DialogueActions, but there might be other mods that add variables.
 

Pim_gd

Content Creator
Joined
Jan 25, 2013
Re: DialogueChecker (Latest version: V1.24, 12 August 2013)

Yay double posts (But this is update and not conversation).

August 12, 2013
Introducing v1.24!
- Introducing checks for variables!
- Added checks for verifying that all variables declared in initial_settings are used.
- Added checks for verifying that no unknown variables are referenced in set and check line-attributes.
- Added checks for verifying that no unknown variables are inserted as substitutes.
- Implemented support for variables from BreastExpansionPlusV2_4 and DialogueActions 0.97 Hotfix 2.1.
- Added checks for possible conflicts if a dialogue is used with a dialogue mod - since dialogue mods insert the variables, they should not be declared in initial_settings.
- Added a message to the "Invalid next target" issue if the referenced target has spaces.
Link in OP.
The archive download, containing the source of the DialogueChecker, as well as the current and all the previous versions has also been updated.

I expect bugs because I programmed this quite terribly and I had to go hunting for differences between != -1 and == -1, and it got quite annoying. So if you have a dialogue that causes the checker to start spewing lines, post it here and I'll see to it that the bugs get fixed.

August 13, 2013
Introducing v1.25!
- Fixed a bug where legitimate variable inserts were treated as invalid. Bug was introduced in v1.24.
Link in OP.
The archive download, containing the source of the DialogueChecker, as well as the current and all the previous versions has also been updated.

I knew I'd have bugs.

Another edit:
I plan on overhauling the system via which the DialogueChecker works. This overhaul will be v2.00.
When I created the DialogueChecker, all I wanted was something that:
- Splitted the Dialogue into separate lines
- Checked each line for certain string patterns
- If a pattern was found in a line, dump the line number, the line and the found pattern in a string, to be output in someway.

So, all I really needed was 1 Class to do this. A couple features got tacked on, and this was the result:

(I've abstracted the functions here to tasks - otherwise the DialogueChecker class would have a long list.)

There's a Main class, which serves as the entry point to the application. It also creates the graphical output. There is a class for CheckBoxes and a class for TextBlocks, which I ripped out of some other project of mine (an experiment+survey about the usage of instructions in games, was quite interesting, results of that were that people still seem to want to read the manual, but it has to be interactive (TUTORIAL).)

There's also a StringFunctions class, which does a couple things to Strings which didn't really belong in the DialogueChecker.
And then there is the DialogueChecker class.
The DialogueChecker class currently spans 1535 lines, and would probably keep growing. This is getting dangerous. If left unchecked, the DialogueChecker class can become a huge mess. It's already a mess of hardcoded checks and line-parsing, but trying to figure out variables in such an environment would no doubt cause an even bigger mess. It would still work, but it would get harder and harder to make changes to.
An example of why it's hard to make changes:
I've been asked to make certain parts of issues a different color. This shouldn't be much of a problem, as you can change parameters in the constructor of the native TextFormat class to change the colors that your TextField uses (and I use TextFields in my TextBlock class). However, highlighting a particular segment when you get the entire output of the DialogueChecker thrown at you in one go is nigh impossible.
Recently, I had to change the way I work with dialogue variables in order to implement the first half of the variable system. This caused quite a lot of bugs. These bugs were mostly caused by the tangled mess that is the DialogueChecker.

Sooo, Pim, whatcha gonna do 'bout it?
Well, I have here a new schematic for the DialogueChecker!

Whoa Pim, that's huge! Isn't this a lot of work?

No.
Well yeah, it's a bit of typing.
But all I'm doing is splitting these 1500 lines up into a couple more classes. I'm re-structuring the code. You can probably see some elements from Dialogues in here, such as Variables, Triggers, Lines, and more.
By restructuring the code, it will be easier to add certain features.


Newly possible supported features:
- Different sorting of issues
- New categories, allowing you to filter as needed
- More complex checks, including second part of variable system

Internal:
- Easily finding lines by lineName
-- This allows me to find all instances of "intro1", for instance.
-- This allows me to compare the check line-attribute for one line, and the next line.
--- Example: You have 2 intro dialogues, one for starting in a held position and one for starting in a free position.
But you made a small mistake - you copied the held dialogue for the free dialogue to use as a base, and you forgot to change "held":"true" to "held":"false".
The checker will be able to find that all instances of "intro1" require held to be true, whilst another line that refers to intro1 has a requirement for held to be false.

More features will become apparent as I discover what I can do with more freedom.

Additionally, the DialogueChecker's structure will resemble more of an Object-Oriented style. This will make it easier for other coders to read the code and make changes to it.

Elaboration on classes:
Main:
Entry point.
Role: Communication between Display and DialogueChecker, initializing everything.

DialogueChecker:
Class to convert the settings of Display to something we can check with.
Role: Running the checking process by calling functions on appropriate classes.

Dialogue:
Container for all the lines and the full dialogue.
Role: being a properly-searchable and accessible datastructure for SDT dialogues.

Line:
Object representation of a single line in a dialogue.
Role: Storing data regarding a line of a dialogue. Making it easier to check stuff.

Variable:
Object representation of a single variable in a dialogue.
Role: Keeping track of all possible values it can have. Possibly its usages as well.

VariableInsertion:
For variable insertions in lines.

VariableSubstitution:
VariableInsertion for *YOU*, *ME*, *FINISHES* and friends.

VariableType:
Enumeration of variable datatypes. Will be used for checks of the style category - don't mix and match datatypes, people.

LineAttribute:
To hold a single lineattribute.

Trigger:
For representing triggers.
Will probably be used to allow me to see how a line will affect the mood and held variables.

might do other classes later
 

Pim_gd

Content Creator
Joined
Jan 25, 2013
Re: DialogueChecker (Latest version: V1.26, 19 August 2013)

August 19, 2013
Introducing v1.26!
- Fixed a bug where illegitimate variable inserts were treated as valid, if no initial_settings line was present. Bug introduced in v1.25.
- Work is progressing on v2. The classes meant as datastructure have all been finished, save for Dialogue and Issue.
Link in OP.
The archive download, containing the source of the DialogueChecker, as well as the current and all the previous versions has also been updated.

I've programmed the Line class and all the classes that Line points to. Next will be to write the Issue, Severity and Dialogue classes, and to create the structure for the Checkers.
 

Pim_gd

Content Creator
Joined
Jan 25, 2013
Re: DialogueChecker (Latest version: V1.27, 24 August 2013)

August 24, 2013
Introducing v1.27!
- Fixed a bug where the DialogueChecker would crash if [!,] was found in a line. Bug introduced in v1.15 as a duplicated issue and worsened to crash in v1.19.
- Fixed a bug which caused [?,] not to be checked for. Bug introduced in v1.15 (the check never was properly added).

Link in OP.
The archive download, containing the source of the DialogueChecker, as well as the current and all the previous versions has also been updated.

The DialogueChecker is more overgrown than I had anticipated, so it might take some time before v2 is completed.
I don't intend to release v2 until it can check for everything that v1 can, and maybe a bit more.

The Issue, Severity and Dialogue classes have been finished. A base setup for the Checkers is there, but it seems the new system only works really well when you know what you're looking for (space behind %0A, for instance). Finding double spaces in the new setup is a disaster, so I just decided to copy-pasta the old code in for now so I could test the Issue class.

If you like reading source code hate, you can download the archive. It contains source for v2 in the src folder. When I was programming the parsing section for the dialogue... (Dialogue class) well, you can look at the code and comments and basically see someone break down one bit at a time. Parsers are fun. I imagine this thing will spawn many bugs, but hey.

Next up will be modifying the Issue and Checkers with the old checks so that they make proper use of the Issue class. That way the error messages are built up in sections by the Issue class, and I might be able to color specific sections (the location of the error in the line, hmm?) of text. I could even further abstract the checks, so that code basically boils down to a function call consisting of the thing to check for, the message to display and what severity it would be.
That would reduce bugs too...

There's a small problem though. I'll be having a day job starting next month (September), so that leaves me with less time to work with. I don't want this project to stall, because if it does, it will get trashed. The ease of the DialogueChecker so far has been that I can just open the project and easily add features without having to think a lot. So if I can't get a full working v2 out within the next week, expect a version that doesn't allow you to customize the filtering and such. The time saved on the UI might allow me to finish the checking section.

Once a fully capable version of v2 is out, I intend to support v1 for another month. Support means that I fix any bugs I hear of, but I won't add new features if they're complex (more than 10 minutes work). If a dialogue modder (mods that modify how dialogues work) adds new linetypes, triggers or variables in that month, I'll add them in v1. After that month, v1 will become unsupported. You'll be free to use it but I won't update it to include new linetypes and such, and if you find a bug, well, I probably won't be fixing it. I do want to know about the bug though, as it might be present in some form in v2.

Woo quad post.
 

Slingerbult

Content Creator
Joined
Sep 15, 2012
Re: DialogueChecker (Latest version: V1.27, 24 August 2013)

Awesomeness pim :) I'm more motivated to write another dialogue just so I can use your checker, lol!

(Also, no quint-post for you!)
 

f93

Casual Client
Joined
Jul 8, 2013
Re: DialogueChecker (Latest version: V1.27, 24 August 2013)

Without the dialogue checker, it would probably take me an order of magnitude longer to get my dialogues working. So good luck with your job, and with coding the V2 checker.
 

Pim_gd

Content Creator
Joined
Jan 25, 2013
Re: DialogueChecker (Latest version: V1.28, 26 August 2013)

August 26, 2013
Introducing v1.28!
- Added a check to see if a line has both [:] and ["], but the colon occurs later than the double quote. In effect, checks if a linename does not contain double quotes.
Link in OP.
The archive download, containing the source of the DialogueChecker, as well as the current and all the previous versions has also been updated.

It's a small update, but I'm not really actively working on v1 any longer, so I figured directly releasing was the way to go.
I spotted this one in a dialogue and I was sure I had this one covered, but here's the catch...
Previously the checker was looking for lines that have double quotes, but are missing a colon.
If you add line-attributes, you suddenly have colons, and as such, the checker doesn't spot the mistake.

DialogueChecker v1 feature list, compared to v2:
Legend: Green = Implemented
Orange = It kinda works, but not completely / OH GOD THE BUGS
Red = Not implemented yet

Checks:
Grammar:
[ ] - Double space is always bad. Try using Б if you need a delay in the display of your dialogue.
[,,] - Double comma is a grammatical error. Introduced in v1.04.
[ ,] - Space in from of comma is a grammatical error. Introduced in v1.04.
[,?] - Grammatical error. Introduced in v1.05.
[,!] - Grammatical error. Introduced in v1.05.
[ !] - Space before exclamation mark is a grammatical error. Introduced in v1.05.
[ ?] - Space before question mark is a grammatical error. Introduced in v1.05.
[!.] - Grammatical error. (Whitelisted: [!...]. Whitelisting added in v1.11)
[?.] - Grammatical error. (Whitelisted: [?...]. Whitelisting added in v1.11)
[%0A ] - Space at start of new line
[:" ] - Space at start of new line (or you have spaces in your variables - which is not wrong)
[ . ] - Space before end of line is a grammatical error. Introduced in v1.10.
[.!.] - Grammatical error. Introduced in v1.12.
[.?.] - Grammatical error. Introduced in v1.12.
[.?] - Grammatical error, double sentence ending. Introduced in v1.12.
[.,] - Grammatical error, wrongfully continued sentence. Introduced in v1.12.
[.!] - Grammatical error, double sentence ending. Introduced in v1.12.
[.,.] - Grammatical error. Maybe it's a wrongfully typed ellipsis? Introduced in v1.12.
[!,] - Grammatical error, as a finished sentence shouldn't be continued with a comma. Introduced in v1.15.
[?,] - Grammatical error, as a finished sentence shouldn't be continued with a comma. Introduced in v1.15.

Whitelisted (if detected during their relative checks):
[!...] - To check for [!.], but allow [!...]. Added in v1.11.
[?...] - To check for [?.], but allow [?...]. Added in v1.11.
[...!] - To check for [.!], but allow [...!]. Added in v1.12.
[...?] - To check for [.?], but allow [...?]. Added in v1.12.
[...,] - To check for [.,], but allow [...,]. Added in v1.12.


Syntax:
[: ] - Indicates probable line fault at the start
[ :] - Indicates probable line fault at the start or in a variable
[::] - Duplicate colon indicates a mistake in the syntax (typo). Introduced in v1.21.
[[[] - Wrong trigger.
[]]] - Wrong trigger ending.
[{style] - improper use of style attribute
[set:] - improper use of set attribute.
[check:] - improper use of check attribute. Introduced in v1.06.
[style:] - improper use of style attribute. Introduced in v1.06.
[mood:] - improper use of mood attribute. Introduced in v1.06.
[next:] - improper use of next attribute. Introduced in v1.06.
[held:] - (only if not as line start) improper use of held attribute. Introduced in v1.07.
[},{] - Coding error. Introduced in v1.06.
[%01] - Old delay string. Should be replaced with Б for a cleaner dialogue. Introduced in v1.08.
[[]] - Empty trigger. Introduced in v1.08.
[dialogue-name] - This might be a setting the writer wanted to set. SDT works with underscores - use [dialogue_name]. Introduced in v1.09.
[initial-settings] - This might be a setting the writer wanted to set. SDT works with underscores - use [initial_settings]. Introduced in v1.09.
- Uneven amount of asterisks on one line - Indicates a possible coding error. Added in v1.04.
- Uneven amount of double quotes on one line - Indicates a possible coding error. Added in v1.04.
- Mismatch in counts of [ and ] on one line - Indicates a possible coding error. Added in v1.06.
- Mismatch in counts of { and } on one line - Indicates a possible coding error. Added in v1.06.
- If 3 or more double quotes are present, check if the 3rd double quote comes before a { character ("""{). Indicates a possible coding error. Added in v1.07.
- Wrongly placed trigger openings and endings, such as {intro:"hello![NORMAL_MOOD] ]intro2["}. Introduced in v1.08.
- Illegal colons: if a line has :", and the : of that is the first occurance of :, check if there are colons between the first double and the second double quote. Added in v1.10.
- Misplaced colons: check if a line has double quotes before the first occurance of a colon - if so, this is likely a misplaced colon. Added in v1.28.

- Illegal asterisks: The checker parses the initial_settings line to identify the variables the dialogue uses. If an undefined variable is referenced, the checker raises an error. Added in v1.11.
- Line-attributes: At the end of each line, through the use of JSON certain line-attributes can be set. The checker validates these line-attributes. Added in v1.16.
- If parsing of line-attributes has stopped but the : character is present in the remaining string, an error is raised. Added in v1.20.
-- The values of mood, style and held are validated as well. Added in v1.16.
-- Undefined values are treated as an error. Added in v1.18.
--- Illegal mood values are treated as a SEVERE issue. Added in v1.17.


Substitutes:
[ *YOU*,] - space before comma if player name is not set
[ *ME*,] - space before comma if girl name is not set
[ *YOU*!] - space before exclamation mark if player name is not set
[ *ME*!] - space before exclamation mark if girl name is not set
[ *YOU*?] - space before question mark if player name is not set
[ *ME*?] - space before question mark if girl name is not set
[ *YOU* ] - double space if player name is not set
[ *ME* ] - double space if girl's name is not set
[ *YOUR* ] - double space if player name is not set
[ *MY* ] - double space if girl name is not set
["*YOU* ] - space at line start if player name is not set
["*YOUR* ] - space at line start if player name is not set
["*ME* ] - space at line start if girl name is not set
["*MY* ] - space at line start if girl name is not set


Special:
- Removes Б if no errors are found in the normal line, to see if the removal of Б would cause errors (as SDT does not display Бs). Added in v1.10.
- Removes triggers if no errors are found in the normal line, to see if the removal of triggers would cause errors (as SDT does not display triggers in text). Added in v1.12.
- Checks if all the lines are capable of being triggered. If a trigger has a variable in it, the checker tries to match the non-variable portion of the trigger to any lines. Added in v1.14.
- Checks if all triggers are valid triggers or reference to existing lines. Triggers with variables are ignored in this process. Added in v1.14.

- Commented lines are checked for invalid mood values as this is a SEVERE issue. Added in v1.17.
- Variables defined in initial_settings are compared to the rest of the dialogue to see if they are being used. If the checker finds an unused variable, it will be reported. Added in v1.24.
- If a variable is used in the dialogue, the checker checks if the variable exists. If it does not, an issue is raised. Added in v1.24.


Settings:
- Filtering issues:
-- Syntax
-- Grammar

-- Substitutes
-- Style
-- Line Usage
-- Variables


- Customized Linebreak
- Comment filter (Currently stuck to "On")

Other features:
- Displaying amount of severe issues
- List external dependancies (usage of variables/triggers/linenames implemented by dialogue mods) Detection is implemented already, but it doesn't store that info yet.
- Varied "clean dialogue" messages based on filtering settings
- List execution time

Additional features in already implemented in v2:
- Listing amount of Major and Minor issues
- A lot of internal stuff that doesn't really concern the end user

This list has been moved to the 2nd post of this thread and will be updated when I see fit / whenever v1 is updated.
EDIT: This list is outdated already - I managed to get the substitutes in, the comment filter, and a bunch of other things! All that I have left is variables and line usage... then v2 can be released!
 

Pim_gd

Content Creator
Joined
Jan 25, 2013
Re: DialogueChecker (Latest version: V1.29, 27 August 2013)

August 27, 2013
Introducing v1.29!
- Added support for VariableArithmetic(v1.01).
- Added a check for [,.] (Grammar)
- Whitelisted [,...]
Link in OP.
The archive download, containing the source of the DialogueChecker, as well as the current and all the previous versions has also been updated.

Was rather busy (and sidetracked) today. Maybe I can have v2 up by Friday.
EDIT: Curses, I made a typo in the error message for [,.]. Well, I'm not making a separate version for that XD.
"Grammatical error (comma before comma ending: ,.) on line (...)"
"comma before comma ending" -> "comma before period ending"

August 28, 2013
Introducing v1.30!
- Added support for VariableArithmetic(v1.02+), by validating all triggers that start with "VA_". Maybe I'll implement a specific list with warnings for triggers not on the list in v2 of the checker later. This change makes it easier for the DialogueChecker to stay isolated from VariableArithmetic.
- Fixed aforementioned stupid typo in issue-message for [,.] (Grammar)
Link in OP.
The archive download, containing the source of the DialogueChecker, as well as the current and all the previous versions has also been updated.

August 28, 2013
Introducing v1.31!
- Fixed a bug where the DialogueChecker would crash or otherwise start throwing errors if variables were separated by 1 space. (2 spaces will still crash, don't do that.) Bug was added in v1.11.
- Added error-catching. In case of a crash, the checker will now properly throw the error at the user, instead of acting broken by doing nothing. Please send me crash reports if you get errors.
Link in OP.
The archive download, containing the source of the DialogueChecker, as well as the current and all the previous versions has also been updated.

After a short test, I see that the error message for placing 2 spaces between variables is
"Okay, so... something went horribly wrong.
Please send me the dialogue you have placed in the top box, combined with the error down here.
null".
Please still do as the checker says - If I run the checker on the dialogue locally, I'll be able to access the proper stack trace and thus resolve the problem in a new version.
 

Pim_gd

Content Creator
Joined
Jan 25, 2013
Re: DialogueChecker (Latest version: V2.00, 29 August 2013)

August 29, 2013
Introducing v2.00! (WOOOOOOOOOOOOOOOOOOO)
- New way of dialogue parsing. I now hate writing parser code.
- Expanded issue severities. Issues can now be of Severity SEVERE (Crashes SDT/Flash), MAJOR (Changes expected output) and MINOR (Works, but it could be better)
- Allowed filtering of issues based on Severities. If issues are filtered out by this method, the checker will report that the checker contains suppressed issues.
- The checker now reports how many issues of each severity were detected.
- Integrated Substitute checks into Grammar.
- Added filters for variable checks and checks regarding line usage.
- Altered internal mechanics regarding checking for dependencies. Checking for variables and line usage is mandatory for proper dependency checking.
- Added checks for excess characters (Syntax). Excess characters are characters between the line name and the line content, between the line content and line attributes, and after the line attributes.
- When lines are stripped of delay characters, triggers and variable substitutions, the checker now displays the non-stripped and the stripped line.
- The checker now has responses for empty input and for default input to assist the user.
- Implemented 2 missing variables for DialogueActions (v0.97 hotfix 2.1) - panties and bottoms.
Link in OP.
The archive download, containing the source of the DialogueChecker, as well as the current and all the previous versions has also been updated.
Versions of V1 will be supported until sometime around 1 October 2013. Support means that I will implement any changes necessary to cooperate with dialogue mods, as long as I estimate that these changes are not too time-consuming (more than an hour is a no-go), as well as fixing any bugs.
The reason for supporting the latest version of the V1 branch is to prevent a major bug in the engine of V2 from strongly affecting users.

Technical details:
- TextElement was not implemented, nor was the Display class. The display system will be possibly be overhauled in a later version, when more screen space is necessary.
-- This means colored text will have to wait.
- SubstituteChecker was not implemented - instead it was integrated in GrammarChecker. This means you have to enable checking grammar in order to check for substitutes. The checker will display messages if you try to check substitutes without checking grammar.
- Internal datastructure was not entirely clean from the parsing. This means that it is possible for issues to have strange snippets. In all instances that this has occured, the line in question was tagged for multiple issues.
-- This means that lines with multiple issues should be treated as unstable - what the checker says about them doesn't have to be true. Perform the analysis of the line in question yourself, using the detected issues as a guideline.
- Different browsers have different native fonts. I had to squeeze things together a bit, so browsers with wider fonts might lead to text getting cut off. Tell me if that happens, and I'll try to give that bit of text a bit more room.

In other news, I have wiped the ideas list clean of the things I didn't think of as really useful, and implemented a system similar to Dante's, as my time will be limited in the future (dayjob!). You can vote for an infinite amount of features and you can request features and I'll add them to the list. When making changes to the checker (or whenever I feel like it), I'll implement things from the list, based on how many votes a feature has and how long I estimate adding a feature would take. However, bigger features don't require more votes. The features that I kept on the list are starting at 0 votes because I want to know if people are still interested. I'm also not counting my own votes because I know I'll have plenty of personal bias when deciding what I'll implement from the list XD.

That leaves me with [strike]one[/strike] only a couple things to say:
Enjoy the new version! And don't hesitate to post or PM if you have problems with the DialogueChecker.

August 29, 2013
Introducing v1.32!
- Implemented 2 missing variables for DialogueActions (v0.97 hotfix 2.1) - panties and bottoms.
- This branch will be supported until sometime around 1 October 2013. Support of this application entails implementation of support for dialogue mods (like currently has been done with Animtools, VariableArithmetic, DialogueActions and BreastExpansionPlus), as well as fixing any bugs that are found, provided it is possible to make the changes within a reasonable timespan (< 1 hour).
Link in OP.
The archive download, containing the source of the DialogueChecker, as well as the current and all the previous versions has also been updated.

August 29, 2013
Introducing v2.01!
- Fixed display of "linebreak:" for custom linebreak input box.
- Gave labels for "Check Substitutes", "Check Variables", "Check Line Usage", "Check Syntax" and "Check Grammar" a bit more room to prevent words from being cut off.
Link in OP.
The archive download, containing the source of the DialogueChecker, as well as the current and all the previous versions has also been updated.

How hard can it be to make things work on the first try? This hard. You can have your program completely working, and when you upload it, the display glitches.

August 30, 2013
Introducing v2.02!
- Removed some left-over debugging code. (Specifically, some trace statements)
- Fixed a bug where the checker would state a mod makes use of "the following dependencies", then displays none. Bug was added in v2.00.
- Added a check for variables with asterisks in their name (Variables - Minor) as they can't be inserted into a dialogue line.
- Added a check for spaces in triggers (Syntax - Major) as triggers can't have spaces in them, or they will show in the dialogue line when it is played.
Link in OP.
The archive download, containing the source of the DialogueChecker, as well as the current and all the previous versions has also been updated.
 

AaRL

Vivacious Visitor
Joined
Feb 17, 2011
Re: DialogueChecker (Latest version: V2.02, 30 August 2013)

I just wanted to thank you (Yet again) for continuing to improve on my works by helping me correct them with your checker and your sharp eye for spelling and grammar.
 

Pim_gd

Content Creator
Joined
Jan 25, 2013
Re: DialogueChecker (Latest version: V2.03, 1 September 2013)

AaRL, I'm trying to improve the dialogues for SDT to be a whole new level of awesome. If you can think of any features that would help you out with creating your dialogues, let me know and I'll see about adding them.
That said...

September 1, 2013
Introducing v2.03!
- Added checks for lines that contain more than 2 instances of double quotes, but doesn't contain line-attributes (Syntax - Major).
- Support for DialogueActionsv0.99.
- Added check for lines starting with a comma as that's an invalid way to begin a sentence (Grammar - Minor).
-- Removed one of AaRL's dialogues from the testset as it contains issues (Lines starting with comma).
Link in OP.

Introducing v1.33!
- Implemented support for DialogueActionsv0.99.
Link in OP.
The archive download, containing the source of the DialogueChecker, as well as the current and all the previous versions has also been updated.

Oh and AaRL if you have updated your dialogues tell me, and I'll redownload them all so I can update the .txts I have in my testset folder.
 

ModGuy

Content Creator
Joined
Feb 17, 2011
Re: DialogueChecker (Latest version: V2.03, 1 September 2013)

For the purposes of readability, you could use the htmlText functionality of a textfield to apply formatting to the output.
As it stands, it all runs together as a wall of text, it would be easier to identify exactly where errors occur by colour instead of index.
You can also apply general styling to the output in terms of headers to indicate where each new error begins and so on.
Given that you can determine the index of an error, you can highlight a few characters before and after the error index.
Other applications of this might be colour coding the error severity, hyperlinking indexes to instantly navigate to the error in the input window and so on.
 

Pim_gd

Content Creator
Joined
Jan 25, 2013
Re: DialogueChecker (Latest version: V2.04, 2 September 2013)

September 2, 2013
Introducing v2.04!
- Added a function that will re-check lines for grammar mistakes by filling in substitutes.
- Added check for lines starting with a disconnected exclamation mark. ["! ] (Grammar - Minor)
- Added check for lines starting with a disconnected period. [". ] (Grammar - Minor)
- Added a credits button.
- Improved comment filter: lines without colons but with double quotes are only seen as valid if they have 2 or less spaces before their first double quote.
Link in OP.
The archive download, containing the source of the DialogueChecker, as well as the current and all the previous versions has also been updated.

Since I've taken over development of DialogueActions, I'll be implementing more detailed checks in the DialogueChecker regarding functionality of DialogueActions.
However due to something I'd like to call an "effort threshold", I'll be updating the DialogueChecker as I see fit, rather than together with every DialogueActions update. An effort threshold can be described as "the minimum amount of effort required to accomplish an action" - by linking the DialogueChecker to DialogueActions, every patch to DialogueActions requires a patch of DialogueChecker, each involving their own build process, documentation and such. I'd have to do much more to accomplish the same in DialogueActions, possibly resulting in me making less updates (because I wouldn't want to update the checker straight after). Just a friendly disclaimer.

September 5, 2013
Introducing v2.05!
-Implemented checks for deprecated triggers.
- Added support for Animtoolsv7.
- Added support for DialogueActions v1.00.
- Added a check for lines containing [CHANGE_BACKGROUND] or [FADE_BACKGROUND_<hex>] - if they don't set the background variable, an issue is raised (Line Usage - Major).
Link in OP.
The archive download, containing the source of the DialogueChecker, as well as the current and all the previous versions has also been updated.

September 5, 2013
Introducing v1.34!
- Added support for Animtoolsv7.
- Added support for DialogueActions v1.00.
Link in OP.
The archive download, containing the source of the DialogueChecker, as well as the current and all the previous versions has also been updated.
 

Pim_gd

Content Creator
Joined
Jan 25, 2013
Re: DialogueChecker (Latest version: V2.06, 29 September 2013)

September 29, 2013
Introducing v2.06!
- Added support for DialogueActions v1.06.
- Discontinued V1.
Download link in OP.
The archive download, containing the source of the DialogueChecker, as well as the current and all the previous versions has also been updated.

SWFcabin is having some issues for me, so I can't upload the DialogueChecker there. I'll retry a couple times today, and otherwise I'll be looking for alternatives.
 

Bluey5

Potential Patron
Joined
Aug 22, 2013
Re: DialogueChecker (Latest version: V2.06, 29 September 2013)

How do you make animtools dialogue?
 

Pim_gd

Content Creator
Joined
Jan 25, 2013
Re: DialogueChecker (Latest version: V2.06, 29 September 2013)

I've managed to upload v2.06 to SWFCabin.

Bluey5 said:
How do you make animtools dialogue?
Mind elaborating?

Animtoolsv7 has the following dialogue features:
Line types of Animtools:
'cuminher', triggers when bodycontact is enabled and cumming in her
'bodycontactspaceheldpush' triggers when bodycontact is enabled and pressing 'space' inside her

Triggers of Animtools:
[ANIMTOOLS_$POSITIONFILENAME] (use '[ANIMTOOLS_positionfilename]' action to load positions)
 

Bluey5

Potential Patron
Joined
Aug 22, 2013
Re: DialogueChecker (Latest version: V2.06, 29 September 2013)

So all I need is [ANIMTOOLS_positionfilename] and [cuminher] on the notepad and it will trigger with animtools? That was pretty much what I was asking. I don't need bodycontactspaceheldpush though.
 

Pim_gd

Content Creator
Joined
Jan 25, 2013
Re: DialogueChecker (Latest version: V2.06, 29 September 2013)

Why don't you make another thread with a bit of dialogue that you've been working on, and I'll tell you if you're doing it right?
I don't want to go off topic in a thread like this.
 

Users who are viewing this thread

Top


Are you 18 or older?

This website requires you to be 18 years of age or older. Please verify your age to view the content, or click Exit to leave.