Replies: 14 comments 38 replies
-
I see there's an issue for stateful audio, which is a good idea. What are your thoughts on moving to the Web Audio API for things like gapless loops? |
Beta Was this translation helpful? Give feedback.
-
Users have always been able to create macro aliases, but it would be nice if that capability were easier to access or, at least, more exposed. For example, in v2 (and v3) you can do the following: Macro.add('la', 'linkappend'); I propose a macro that provides access to the feature as well, e.g., something like For example:
|
Beta Was this translation helpful? Give feedback.
-
I like Sugarcube 2 a lot, so it's hard for me to think of anything. I don't think it's missing anything crucial. So I'll I'll try to list out quality of life things. None of this may be possible - or there may be solutions already - but I figure it doesn't hurt to raise it. Audio I'm running some Javascript you kindly provided for handling BGM and sound (thanks for that!). Audio is one of the areas I bump heads with, particularly when it comes to projects stopping or starting. I guess some things I'd be interested in would be expansions to these audio features, like:
Delayed Text Again, an area I'm using some JS which you awesomely provided. This is an area I spend a lot of time in. Currently I mark off each sentence with a delayed class, so each sentence appears in a staggered way. This can be time-consuming with longer projects. Again, not sure if this is possible, but maybe if there some way to mark a passage with a tag, and it applies delayed text to that passage - either per sentence or per character (Not sure how it would figure out the length of a sentence, though, so maybe not). I guess I'm just asking for more innate support for playing around with delayed text. That's all I've got for now - I'll post again if I can think of anything else. |
Beta Was this translation helpful? Give feedback.
-
Support for swipe touch gesture for sidebar for better mobile usability. |
Beta Was this translation helpful? Give feedback.
-
I wish for a more elegant way to modify the currently immutable passages array, so that hasVisited() can be more easily simulated during a testing situation. I don't currently use save files to do later-story testing because it still takes "too long" to make little tweaks here and there (ie I have "too many" variables to track for a choice-heavy IF) to said save files. So I have considered making a duplicate visited() function that does the same thing as hasVisited() but looks through a mutable array of passages (that I track of in passagedone), but that's another array (smaller if I don't count duplicate passage visits). I would probably do that for when transfering game data from one game to another (like a sequel), but for a single game I wonder if there can be a more elegant way. My current method is having a debug HUB passage jump to passages I want hasVisited() to register as true and have those passages have checks that send me back to the debug HUB where I can jump directly to later chapters of a story to do testing on that chapter alone. This ad hoc method looks really messy, and I wish I can keep related debugging code just inside the debug HUB, set passage visit to true like I can set flag variables to true. Thank you! 😇 |
Beta Was this translation helpful? Give feedback.
-
Saves should (optionally?) include the current variable values, instead of just the values that the passage had when you entered it, if there have been any changes to the story or temporary values. That data would be stored in the save file as an "extra" bit of information, not included in or changing the passage history. Thus, loading would probably need two extra steps, where it would load the passage with the data you had when you entered the passage, then it would update those variables to match what they were when the game was saved, then the passage would execute (allowing it to display those changed values), and then it would update those variables again to match what they were when the game was saved (in case the passage execution changed any of the variables). (Perhaps make those two updates into A, B, or A+B options?) That should make the page display as it was when saved (in most cases, though admittedly not all cases) as well as the variables having the same values as when saved. As an example, think about saving during a character creation screen. Most people would assume that they could design their character, save, and then if they reloaded, they'd be back at the same point they were when they saved. As it is currently, by default they'd be back to the defaults on that character creation screen if they reloaded the save. For another idea, how about the ability to add "triggers" to story variables, so that the "trigger" code would be executed anytime that variable changes? Some code would need to be put in to detect infinite loops (when two or more variables keep triggering each other), but triggers would remove the need to put widget/macro/function calls after changing certain variables which then always need to update something else (like health bars and such) or allow variables to automatically "clamp" themselves to within certain value ranges. The "trigger" function would receive the variable name, the old value, and the new value, and if a value was returned by the function, then that variable would be set to the returned value, instead of the new value (essentially acting like a "getter"). You might also want the ability to "pause" and "unpause" individual triggers, for cases where they're going to be updated repeatedly in a short amount of time, and the "trigger" doesn't need to be called until the end. The "unpause" would activate the "trigger" if the value had changed since the "pause" was initiated. |
Beta Was this translation helpful? Give feedback.
-
SugarCube should move to GitHub flavored markdown. I feel like this was discussed before, I just wanted to get it here to get it on the record and see what people's opinions are. |
Beta Was this translation helpful? Give feedback.
-
A way to run |
Beta Was this translation helpful? Give feedback.
-
what I would not like in version 3 are any passages that swallow output. Even if you should never have output on certain passages, swallowing output can cause some difficult to troubleshoot bugs. |
Beta Was this translation helpful? Give feedback.
-
Move special passages to tags. Like The benefits are numerous:
I'd be okay with deprecating old special passages instead of outright removal. |
Beta Was this translation helpful? Give feedback.
-
Not sure if this is feasible or something that should be added on the story format level in the first place, but maybe some buttons on the sidebar (or somewhere else) to in/decrease base font size of the passages? I've heard multiple people write their own implementations for it, and it's a nice thing to support out of the box from an accessibility perspective. Maybe also have one or more options related to it in the Config API, for example to disable it, or to specify the font sizes it should use, etc. |
Beta Was this translation helpful? Give feedback.
-
Rather than only having a fixed number of save slots, additionally have an option for an unrestricted number of save slots, where on the Save/Load screen you have the option to save as a new slot or overwrite/delete existing save slots on the save page, and it also shows the amount of save space remaining (and perhaps how much space a save would require?). |
Beta Was this translation helpful? Give feedback.
-
Been a while, and this is a bit late.
|
Beta Was this translation helpful? Give feedback.
-
|
Beta Was this translation helpful? Give feedback.
-
What features would you most like to see in, or not see in, SugarCube v3?
You're not limited to a single item, so feel free to go nuts.
NOTE: This is a community wishlist, not a promise to add or remove anything.
Beta Was this translation helpful? Give feedback.
All reactions