Interested in the cutting edge development of audio-only games? Really love to read change logs? Instructed by your UROP supervisor to read this page? If any of these match you, then you've come to the right place! The latest build of Click to Speak is still heavily in development and here are its known issues. It should be noted that while there are plenty of new features rolling in, some older, rather important features have taken a short hiatus in the transition.
Previously Existing Features that Need to Be Written Again:
- The Script Player has not been rewritten to work with the new system (although the new system mirrors the old one closely so this should be relatively straightforward)
- The Sound Editor has not been rewritten to work with the new system (in my quick attempt to do this, file loading / playing work great although the waveform is not displayed)
- The Exceptions / Options tab has not been rewritten to work with the new system. (Replace FNodeDatas with Nodes and you'll be 95% of the way there)
- Main Script tab does not auto-generate all of the necessary Nodes as you type. This will require the Advanced Breakpoints feature working fully.
- CSV and text file exports
- Branch lines (I spent a while on this and could not get it to work. Good luck!)
- Save does not work since the Sound Editor / Exceptions tabs have not been rewritten. However the NodeContainer's save function does work.
Known Issues with Code that Really Should Already Work:
- Calling up a New Game does not initialize a blank Node correctly so the game displays nothing and the Orphan Tab consequently crashes the editor
- The initial load and deleting are noticeably slow, will have to switch to selective updates
- Advanced Breakpoints feature does not accommodate multiple lines
- Advanced Breakpoints feature does not enjoy multiple, overlapping breakpoints.
- Advanced Breakpoints jump when clicked on, don't work when moved quickly, sometimes scroll offscreen.
- Loading a new game when an existing game is already running doesn't work right. Need to doublecheck all of the clear() functions and TextEditor3's events.
- Sometimes when it is feeling particularly moody, Delete won't quite work as predicted (sometimes one random Node will be left behind. I haven't figure out a pattern behind this) This could possible be from XML issues since the test files are handwritten.
Places for Refactoring:
- There are two variables for each DialogueNode that are called _show and _visible. They do very different things but their names are ambiguous. Clear up this confusion!
- Once the new architecture is firmly in place, rename DialogueNodeExp to DialogueNode and toss out the old version. That should clear up the two files' shared ambiguity.
- refreshDialogueNodes in the DialogueNodeContainer should really be rewritten to do selective updates.