wc3campaigns
WC3C Homepage - www.wc3c.netUser Control Panel (Requires Log-In)Engage in discussions with other users and join contests in the WC3C forums!Read one of our many tutorials, ranging in difficulty from beginner to advanced!Show off your artistic talents in the WC3C Gallery!Download quality models, textures, spells (vJASS/JASS), systems, and scripts!Download maps that have passed through our rigorous approval process!

Go Back   Wc3C.net > Resources > Code Resources > Systems
User Name
Password
Register Rules Get Hosted! Chat Pastebin FAQ and Rules Members List Calendar



Reply
 
Thread Tools Search this Thread
Old 03-11-2006, 10:18 PM   #16
Functiona
User
 
Join Date: Mar 2006
Posts: 5

Functiona has little to show at this moment (0)

Question

this is awesome, atleast for that you'r vid. but can you help me to use it? im kinda new, and i need some basics to do own campaign, and dont remind me that newbies should not start at making campaign, i know it. i just do maps with triggers etc, so can you help me a little with this? because i dunno how i could do such trigger, i mean that unit is specific area, and ill do rect to area where is the event, or whateva. but can ya tell me how can i do such as when unit get hitted, it will err.. fly back or whatever, im 92- so i'm not good at english ^^ + i live in finland and none know where it is :).. back to the point, so how can it do it? would be easier to do this just as an tool :P that makes auto. triggers etc :)

Last edited by Functiona : 03-11-2006 at 10:20 PM.
Functiona is offline   Reply With Quote
Sponsored Links - Login to hide this ad!
Old 03-11-2006, 10:41 PM   #17
Anitarf
Procrastination Incarnate


Development Director
 
Join Date: Feb 2004
Posts: 8,190

Submissions (19)

Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)

2008 Spell olympics - Fire - SilverApproved Map: Old School Alliance TacticsHero Contest #2 - 3rd PlaceSpell making session 2 winner

Default

I'm don't entirely understand what precisely you need help with. I get the impression that you're not yet at a skill level to be able to use this system comfortably. You are of course welcome to take a look at it, read through the documentation; however, if it doesn't make much sense, you shouldn't try using it. Otherwise, if you get the general idea and have any specific questions about the system, don't hesitate to send me a personal message, or post a thread about it in the trigger or cinematics forum.
__________________
Anitarf is offline   Reply With Quote
Old 03-12-2006, 02:44 AM   #18
Functiona
User
 
Join Date: Mar 2006
Posts: 5

Functiona has little to show at this moment (0)

Default

allright ^^ well, im not kinda in sence of triggers at warcraft since i was good in AoM: TT and they were diffirent there, more simple but less options ^^ oh well, ill read docs and everything, see if i can get crab from the picture :)
Functiona is offline   Reply With Quote
Old 08-06-2006, 11:24 AM   #19
Armelior
User
 
Armelior's Avatar
 
Join Date: Feb 2006
Posts: 72

Submissions (3)

Armelior will become famous soon enough (44)Armelior will become famous soon enough (44)

Default

I was wondering, this seem perfect for duel fights but I suppose for ranged battles between two armies it's too much work since you have to create every single unit ?
Also, when you make a scene with this, can you make another scene with normal GUI triggering in the same map ? Because if you want to add dialogues for instance, you can't do it with your system, or I missed something ?

Anyway deserves + rep.
Armelior is offline   Reply With Quote
Old 08-06-2006, 03:42 PM   #20
Fin.
User
 
Fin.'s Avatar
 
Join Date: Jun 2006
Posts: 66

Submissions (1)

Fin. will become famous soon enough (34)Fin. will become famous soon enough (34)

Default

You use the external function to use GUI triggers with the system, so it really doesnt limit you from doing anything that you might wish to do in GUI.
__________________
Vengeance Lost
A cinematic series
Fin. is offline   Reply With Quote
Old 08-07-2006, 12:32 PM   #21
iNfraNe
PhD
 
iNfraNe's Avatar


Cinematics Moderator
 
Join Date: Dec 2003
Posts: 2,283

Submissions (7)

iNfraNe is just really nice (266)iNfraNe is just really nice (266)iNfraNe is just really nice (266)iNfraNe is just really nice (266)iNfraNe is just really nice (266)

Approved Map: Mortar Ball

Send a message via MSN to iNfraNe
Default

Indeed. Large battles will be better to do the normal way since they will be to heavy on the cache&execution of the system. Using external functions from within to time them correctly is the best option.
__________________
Ever so slightly active.
Table:
Past Projects:
The Spirit of Vengeance (Cinematic, Blizzard contest winner)
Elimination Tournament
Mortar Ball
iNfraNe is offline   Reply With Quote
Old 11-08-2006, 06:46 AM   #22
CaptainPicard
User
 
CaptainPicard's Avatar
 
Join Date: May 2006
Posts: 205

Submissions (4)

CaptainPicard will become famous soon enough (55)CaptainPicard will become famous soon enough (55)

Approved Map: The Story of the Norj'Hal Elves

Default

I've just started putting this in my map, but it seems I have a problem.

If I engage the cinematic system using
Collapse JASS:
call InitCinematicSystem() 
, then it seems that the camera freezes... I can't move it at all. Perhaps I can move it for 1/100th of a second, but then it snaps right back to where it started. I haven't typed any such code to lock the camera in one place, to my knowledge.

Any ideas?

Thanks,

Capt. Picard
CaptainPicard is offline   Reply With Quote
Old 11-08-2006, 09:45 AM   #23
Anitarf
Procrastination Incarnate


Development Director
 
Join Date: Feb 2004
Posts: 8,190

Submissions (19)

Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)

2008 Spell olympics - Fire - SilverApproved Map: Old School Alliance TacticsHero Contest #2 - 3rd PlaceSpell making session 2 winner

Default

The problem you're having is my fault; the system was initialy designed for cinematic-only maps, so I forgot to include an on/off function. Once the system is started, it assumes total control over the camera and doesn't let go.

There are two ways to fix this:
1. Wait for the next version of the cinematic system, which is actualy the very next thing on my to-do list, but it may still take a while, or...

2. Hack it yourself. It's rather simple, I'll tell you precisely how. Create a new global trigger variable, let's call it "cameraTrigger". Then locate the CameraSystemInit function in the map's custom script section - the function is the last one of the camera system functions, just before the particle system. Add another line to it, so it looks like this:
Collapse JASS:
function CameraSystemInit takes nothing returns nothing
    local trigger t = CreateTrigger()
    call TriggerRegisterTimerEventPeriodic( t, CameraPeriod() )
    call TriggerAddAction( t, function CameraMainLoop )
    set udg_cameraTrigger = t
    set t = null

    call ApplyCameraInstantly( GetCurrentCameraSetup() )
endfunction

There, now you have the camera periodic trigger stored in a global variable and you can turn it on and off at will. While it's turned off, it will not move the camera, so players will have full control over it.
__________________

Last edited by Anitarf : 11-08-2006 at 09:45 AM.
Anitarf is offline   Reply With Quote
Old 11-21-2006, 10:25 AM   #24
CaptainPicard
User
 
CaptainPicard's Avatar
 
Join Date: May 2006
Posts: 205

Submissions (4)

CaptainPicard will become famous soon enough (55)CaptainPicard will become famous soon enough (55)

Approved Map: The Story of the Norj'Hal Elves

Default

Working great...

Wow I'm impressed with this thing.
CaptainPicard is offline   Reply With Quote
Old 11-23-2006, 05:43 PM   #25
CaptainPicard
User
 
CaptainPicard's Avatar
 
Join Date: May 2006
Posts: 205

Submissions (4)

CaptainPicard will become famous soon enough (55)CaptainPicard will become famous soon enough (55)

Approved Map: The Story of the Norj'Hal Elves

Default

Hi guys,

I've been making reat use of your cinematic system (it is by far the best tool I've found in WC3 modding!), but I have a few questions:

1.) I seem to have trouble creating certain units via the "CreateActor" function. Particularly, it seems that creating custom units is SOMETIMES a problem. I can create them just fine via the "Create Unit(s) Facing Angle" function, and I suppose I could then mimic the actions of "CreateActor" but I'm not sure why I've been having this trouble in the first place. Also, I haven't found any in-game units that can't be created via this function. Any ideas?

I ask, really, because I'm scared to death that importing some custom spells I made on a scratchwork map (with custom ability references) somehow messed up the unit/item/doodad/ability numbering on my map. I had to correct a few of the ability names and fields because some gobbledygook got in there, but now that I've done that things seem to be OK (other than the CreateActor function, which I'm still not sure about).

2.) Whew. OK, shorter question: there seem to be some camera jolts, despite the fact that I've very carefully linked the ScriptCamera functions to operate [0.00 -> 0.40] [0.40 -> 0.90] ... etc., using the "3" flag for the camera movement type. These cameras are not wildly different, yet it seems to treat them that way... could it be that the Distance-to-Target setting is sufficiently different (perhaps by as little as 150) to give rise to this effect?

3.) The ScriptActColour function works, it seems, but the transition from fully transparent to fully opaque is not smooth at all for the instance I use it (the Sentry model). I use a duration of 2.25. But, it seems to rapidly switch from transparent->opaque, in a split second. (EDIT: I tried making a Sentry opaque by replacing the Warden in your cinematic demo map with a Sentry, and it works fine--a smooth 2.25-second fade, just like I told it to do).

4.) What about manipulating flying units with the ScriptActSlide function? If I'd like to have a unit flying at 100, then gradually change its flying height to 200 as it slides using your system and have it stay at height 200 at the end of the slide, could I do that? I suppose I could hack my own if that's needed.

(EDIT) 5.) I'm also curious about this "thread limit" thing. I've got about 100 lines of code in the scripting function that I'm using so far and I don't seem to have hit it. Apparently it's exacerbated by the listing of different Script functions out of order, which I had started to do thinking it was OK but will now revise.

(EDIT) 6.) I notice in your Spirit of Vengenance cinematic you apparently use an older version of this system, where you just call StoreInteger(...) directly rather than using the WriteToScene wrapper function. I like how you've broken this thing up into multiple different scenes by using different functions. Like you've suggested, I made a trigger that runs at Map Initialization, converted it to custom text, and started typing in between the lines like so:

Collapse JASS:
function Trig_TEST_Actions takes nothing returns nothing
 < MY SCRIPT CALLS >
endfunction

How can I place multiple functions in a single trigger as you have done with the "Scene1 Init" trigger (which contains what seems to be a distinct function "Scene1Init" without a space/underscore in its name)?

Thanks so much!

Captain Picard

Last edited by CaptainPicard : 11-23-2006 at 06:53 PM.
CaptainPicard is offline   Reply With Quote
Old 11-24-2006, 09:58 PM   #26
Anitarf
Procrastination Incarnate


Development Director
 
Join Date: Feb 2004
Posts: 8,190

Submissions (19)

Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)

2008 Spell olympics - Fire - SilverApproved Map: Old School Alliance TacticsHero Contest #2 - 3rd PlaceSpell making session 2 winner

Default

1.) I have no idea why CreateActor could fail, except because of false input. Please double check that you are passing a valit unit code and player to the function.
If all else fails, you can just preplace an actor or create it by other means - the system can work with any unit as long as it's stored in the actor array (this will change with future versions but it's still true now).

2.) I'm not sure what kind of jolts you are getting. The system was designed for smooth camera transitions no matter at what point do you interrupt the previous camera movement; if this is not the case, then this is a serious issue.
Another possibility is that you are just getting very rapid accelerations due to very short time frames within which you are working (your example mentions times like 0.4 seconds). This is normal. The engine tries to accomplish what you demand from it - this can often seem wrong until you refine the camera positions and transition times.

3.) An example of a working transition from transparent to opaque would be the appearance of the watchers in tSoV. So, it works and you must be doing something wrong. :) Note that any changes made to a unit's opacity outside the cinematic system are not registered by the system, so it might consider an otherwise transparent unit as opaque.

4.) The ScriptActSlide was created with ground units in mind, so it doesn't support air unit movement directly - it will not change a unit's fly height unless a gravity factor is specified, in which case it will move the unit in a parabolic curve. You can, however, easily change the unit's fly height with external functions. As long as you don't specify a gravity factor, the system will ignore the unit's height while moving it.

5.) You don't have to worry about the thread limit until you hit it. That should be fairly obvious, should it happen: some actions that you scripted won't occur. You can also easily make a check, put a debug message as the last action in your script initialization function, if you see the message when the game starts then the thread limit was obviously not hit.

6.) in JASS, you can make up functions as you please. Just type a new function using the same format: function <functionname> takes nothing returns nothing and endfunction, then execute it with the ExecuteFunc native (this starts it in a new thread, thus you avoid the threadlimit by breaking up the initialization function into multiple functions and executing them one after another).
__________________
Anitarf is offline   Reply With Quote
Old 11-25-2006, 01:31 AM   #27
CaptainPicard
User
 
CaptainPicard's Avatar
 
Join Date: May 2006
Posts: 205

Submissions (4)

CaptainPicard will become famous soon enough (55)CaptainPicard will become famous soon enough (55)

Approved Map: The Story of the Norj'Hal Elves

Default

Aha!

This clear sup a lot for me.

1.) Still not sure here, but I'll keep looking for what may have gone wrong.

2.) My jolts have been somewhat smoothed out. I think it's OK now.

3.) Yes, I did just that: I changed th opacity of the unit outside the camera system. I'll rework that and see how that goes.

4.) Great! I've got a 100th-second periodic timer system of my own running in parallel to your system (I refer to it as "backstage"). I can easily script the flying heights in there so long as I can keep your system from grabbing hold of those parameters.

5.) I'll keep this in mind about the thread limit. It's good that nothing goes insidiously wrong.

Thanks for your help!

Capt. Picard
CaptainPicard is offline   Reply With Quote
Old 11-25-2006, 11:38 AM   #28
Anitarf
Procrastination Incarnate


Development Director
 
Join Date: Feb 2004
Posts: 8,190

Submissions (19)

Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)

2008 Spell olympics - Fire - SilverApproved Map: Old School Alliance TacticsHero Contest #2 - 3rd PlaceSpell making session 2 winner

Default

When working with cameras, remember that the smooth camera motion doesn't require you to use as many cameras as you woul use normaly, in fact, it's easier to get good results with fewer camera objects spaced further apart. Because the motion is nonlinear, the required camera transition times are often different from what you'd expect.

For example, you have three camera positions, one where the camera starts, one where you send it to to give it some initial speed and the last one to which you want to get to at the end of the shot. Changing the duration of the first camera transition does not only change how fast the camera will accelerate at start, but also changes it's final speed which then affects what kind of acceleration it will need in the second transition to get to the last position in time.
If you had another camera you wanted to go to after this, then things get difficult to calibrate since the camera's final speed at the end of the second transition is influenced by two camera positions and their transition times; it gets increasingly difficult to decide what parameters to tweak to get it right. This is somehow easier if you're operating within a flexible time, but in tSoV, for example, where scene durations were fixed because of the limited duration and because it had to fit with it's music, I don't think I ever did any smooth camera motions that would go over more than 3 camera "waypoints".

If you keep all these things in mind, then calibrating cameras to suit your needs should be easier to control and less random.
__________________
Anitarf is offline   Reply With Quote
Old 11-26-2006, 06:26 AM   #29
CaptainPicard
User
 
CaptainPicard's Avatar
 
Join Date: May 2006
Posts: 205

Submissions (4)

CaptainPicard will become famous soon enough (55)CaptainPicard will become famous soon enough (55)

Approved Map: The Story of the Norj'Hal Elves

Default

One more question:

We've discussed problems associated with attempting to move the camera when the cinematics are engaged. This is fixed now, but is there a problem with playing sounds outside the cinematic system while cinematics are running? I ask because there isn't quite as muh sound control within the system as I'd like in some cases.

Thanks!

Capt. Picard
CaptainPicard is offline   Reply With Quote
Old 11-28-2006, 01:34 AM   #30
Anitarf
Procrastination Incarnate


Development Director
 
Join Date: Feb 2004
Posts: 8,190

Submissions (19)

Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)Anitarf has a brilliant future (903)

2008 Spell olympics - Fire - SilverApproved Map: Old School Alliance TacticsHero Contest #2 - 3rd PlaceSpell making session 2 winner

Default

Anything that the cinematic system doesn't assume control of can be manipulated by outside functions. The system only takes over the camera and unit positions/facing angles/vertex colouring - only while those values are being changed, so if a unit isn't being moved by the system then it can be moved in other ways. The system in no way affects how the game plays sounds (except affecting 3D sounds with it's camera position), so they can be used independantly.

What kind of sound control do you require?
__________________
Anitarf is offline   Reply With Quote
Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off


All times are GMT. The time now is 06:19 AM.


Affiliates
The Hubb The JASS Vault Clan WEnW Campaign Creations Clan CBS GamesModding Flixreel Videos

Powered by vBulletin (Copyright ©2000 - 2019, Jelsoft Enterprises Ltd).
Hosted by www.OICcam.com
IT Support and Services provided by Executive IT Services