Total-RP / Total-RP-3-Extended

Extended module for the Total RP 3 add-on for World of Warcraft, adding creation tools.
http://extended.totalrp.com
11 stars 13 forks source link

Convenience functions for Cutscenes & the Campaign editor #146

Open Seleves opened 5 years ago

Seleves commented 5 years ago

Hi, this is yet another wishlist, sorry for that :-)

Selectable Quest Objective Ids It's very comfortable to browse for items, cutscenes, etc. when using effects or conditions. It also works for workflows but objectives need to be manually typed/copy-pasted. It would be nice to have a select box (similar to workflows) that lets us choose quickly.

Copy Conditions There is an option to copy entire effects, but I find myself often in the position that I only need to copy the condition. Example: run 3 effects (e.g. play sound, give item, display text) if one complex condition is met, run 3 other effects if another complex condition is met. This usually apperas when there is an "else" branch.

Next Cutscene step This is related to https://github.com/Ellypse/Total-RP-3-Extended/issues/38. Maybe it is sufficient to add an optional step index to the effect "play cutscene", i.e. that one can start a cutscene at an arbitrary index. There might be problems with backtracking the scene settings, though.

Wait for Input Similar to Wait for Loot, it would be nice to block a cutscene until the user hat entered some text (input box effect). Actually all these effects could be combined into one "wait for user" flag.

NPC Caching When I use NPCs that are not cached, I will see a "random" other NPC model until it's cached. It's very hard to predict which model should be cached and when, but can you make an effect that forces caching (i.e. call the getModel in a hidden frame) of an NPC id?

Solanya commented 5 years ago

Hey :

I will probably close this ticket and reopen separate ones for the last two issues for easier management.

Seleves commented 5 years ago

Some remarks regarding the NPC cache: This is not a problem when one uses NPCs that are near the player. It occurs when the NPC is from an unrelated and not recently loaded area. Try it with NPCs from an instance: 61408, 61412, 61528, 61463. (Ragefire Chasm)

So, there is one minor problem where no NPC is displayed, but the more confusing one is when the wrong guy is shown. I'm not sure how reliable OnModelLoaded is. If it is reliable then one can just hide the model frame until the event fires. However it might be simpler to let the creator decide :-) Since it is a corner case anyway, it might be sufficient to add one effect that calls SetCreature, that the creator can call heuristically, e.g. on quest start or similar

Solanya commented 5 years ago

Got it. I'd rather have it solved in the code itself instead of an effect, but I will look into the issue, potentially in the next version. Thanks for the write-up !