• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

[Trigger] Animated Pirctures - Very accurate timing problem

Status
Not open for further replies.
Level 2
Joined
Jul 31, 2016
Messages
7
Hello there,

I need some help with my cinematic trigger. So I have this idea, where I would make a little "cutscene" with imported images, that would be displayed in split seconds. To be more precisely, I want to display 6 Images per second. I tried to use the "Wait" Command, but it is very inaccurate. It feels like the minimum is only ~0.30 seconds. But I need at least timers with 0.15 second.

The question is now: What could I use to make those precise timings, which should also work in multiplayer and not cause desyncs?

Thanks for any help in advance :)
 
Last edited:
Level 2
Joined
Jul 31, 2016
Messages
7
I don't know how. But it is really simple. I use a custom function to display a Image on a temporary Point, then I transition into one "Wait" Command. Then it's just rinse and repeat.

I have a extra a camera set up, so they picture covers the whole screen. Everything else works perfectly fine. It's just, the "Wait" Trigger is buggy and I need a more accurate solution to make small pauses between my Images.
 
Level 2
Joined
Jul 31, 2016
Messages
7
Hello Chapsy, thanks for your reply.
I am still not 100% sure how do implement your code.
I use this (How to: Display Images in-game) Tutorial to display my Images. So now I got custom scripts calling these new functions. And I guess I have to use arrays now, but how exactly would I do this? This is what I got so far:

  • ImageDisplay
  • Events
  • Time - Every 0.15 seconds of game time
  • Conditions
  • Actions
  • set udg_tmpPoint = GetRectCenter(gg_rct_Gebiet_003)
  • set udg_Int1 = ( udg_Int1 + 1 )
  • Image - Show tmpImage[Int1]
  • Custom script:set udg_tmpImage = CreateImageExLoc("war3mapImported\\S (1).BLP", 1500.00, udg_tmpPoint, 1, true)
  • Custom script:set udg_tmpImage = CreateImageExLoc("war3mapImported\\B (1).BLP", 1500.00, udg_tmpPoint, 1, true)
  • Custom script:set udg_tmpImage = CreateImageExLoc("war3mapImported\\S (2).BLP", 1500.00, udg_tmpPoint, 1, true)
  • Custom script:set udg_tmpImage = CreateImageExLoc("war3mapImported\\B (2).BLP", 1500.00, udg_tmpPoint, 1, true)
  • Custom script:set udg_tmpImage = CreateImageExLoc("war3mapImported\\S (3).BLP", 1500.00, udg_tmpPoint, 1, true)
  • Custom script:set udg_tmpImage = CreateImageExLoc("war3mapImported\\B (3).BLP", 1500.00, udg_tmpPoint, 1, true)
  • Custom script:set udg_tmpImage = CreateImageExLoc("war3mapImported\\S (4).BLP", 1500.00, udg_tmpPoint, 1, true)
  • Custom script:set udg_tmpImage = CreateImageExLoc("war3mapImported\\B (4).BLP", 1500.00, udg_tmpPoint, 1, true)
  • Custom script:set udg_tmpImage = CreateImageExLoc("war3mapImported\\S (5).BLP", 1500.00, udg_tmpPoint, 1, true)
  • Custom script:set udg_tmpImage = CreateImageExLoc("war3mapImported\\B (5).BLP", 1500.00, udg_tmpPoint, 1, true)
  • Custom script:set udg_tmpImage = CreateImageExLoc("war3mapImported\\S (6).BLP", 1500.00, udg_tmpPoint, 1, true)
  • Custom script:set udg_tmpImage = CreateImageExLoc("war3mapImported\\B (6).BLP", 1500.00, udg_tmpPoint, 1, true)
  • Custom script:set udg_tmpImage = CreateImageExLoc("war3mapImported\\S (7).BLP", 1500.00, udg_tmpPoint, 1, true)
  • Custom script:set udg_tmpImage = CreateImageExLoc("war3mapImported\\B (7).BLP", 1500.00, udg_tmpPoint, 1, true)
  • Custom script:set udg_tmpImage = CreateImageExLoc("war3mapImported\\S (8).BLP", 1500.00, udg_tmpPoint, 1, true)
  • Custom script:set udg_tmpImage = CreateImageExLoc("war3mapImported\\B (8).BLP", 1500.00, udg_tmpPoint, 1, true)
  • Custom script:set udg_tmpImage = CreateImageExLoc("war3mapImported\\S (9).BLP", 1500.00, udg_tmpPoint, 1, true)
  • Custom script:set udg_tmpImage = CreateImageExLoc("war3mapImported\\B (9).BLP", 1500.00, udg_tmpPoint, 1, true)
  • Custom script:set udg_tmpImage = CreateImageExLoc("war3mapImported\\S (10).BLP", 1500.00, udg_tmpPoint, 1, true)
  • Custom script:set udg_tmpImage = CreateImageExLoc("war3mapImported\\B (10).BLP", 1500.00, udg_tmpPoint, 1, true)
 
Last edited:

Chaosy

Tutorial Reviewer
Level 40
Joined
Jun 9, 2011
Messages
13,183
Firstly: How to easily post triggers

And I think you could do it that way too. Move all the custom scripts into another trigger though, you only want to create them once, not every x seconds.
Then do
page.gif
Image - Hide tmpImage[Int1]
set udg_Int1 = ( udg_Int1 + 1 )
page.gif
Image - Show tmpImage[Int1]
 
Level 2
Joined
Jul 31, 2016
Messages
7
Thanks, this works perfectly :)


One other side question: Can you actually play real custom cutscenes from movies on multiplayer maps?
 
Status
Not open for further replies.
Top