sqdclib-2.1.0.jar
Curse Maven Snippet
What's new
2.1.0
Cutscene Timeline and SQDCLib Integration Requirements
This section covers the interface requirements for SQDCLib, with the goal of putting the cinematic, dialogue, abilities, opacity, and aura all on the same timeline instead of each running on its own.
1. Per-tick cutscene callback Currently a parallel counter drives opacity, aura, and dialogue, starting on the same tick as cutscene playback. As soon as the player skips or interrupts, the two sides fall out of sync. We need the cutscene to fire once per tick on the server, carrying the player, cutscene id, current tick, and total duration, with the tick on the same timeline as the cutscene definition. With this, opacity, aura, dialogue, and abilities can all be pinned to the cutscene's real tick.
2. Playback starting from a specified tick We need support for starting playback from a specified tick, as well as seeking to a specified tick. This is used to implement "on reconnect, skip the first 400 ticks and jump straight to the dialogue and blackout." This is not currently possible; only whole-segment skipping works.
3. Camera can look at a point Camera keyframes need to support an optional look-at point. The boss drifts toward the player; right now the orientation for each frame of the 120° orbit is hand-computed, and as soon as it moves the camera goes off. With a look-at point, the orientation is back-computed from the position, and the existing orientation is only used as a fallback.
4. Custom StoryAction types We need to be able to register new cutscene event types, with the namespace owned by the caller. This way the cutscene data can directly contain custom events (e.g. "humanoid reveal" at a certain tick), instead of stuffing all the logic into the parallel counter.
5. Dialogue portraits Dialogue nodes need to support an optional portrait, with the dialogue screen drawing a 48×48 block (or per the image's aspect ratio) to the left of the text box. This is the only proper way to do "dedicated portraits."
6. Cutscene finished event with a reason The finished event needs to distinguish "played to the end" from "was skipped." Otherwise, after skipping the cinematic, there is no way to know whether the boss should still spawn and whether the music should stop.
7. Cutscenes with their own audio track (optional) The cutscene definition can carry a music track, played automatically on start and stopped automatically on finish or skip. This avoids having to start the sound manually at tick 0, and avoids being unable to stop it on skip.
This mod has no additional files

