• 0

    posted a message on Kaboomer Model?

    @DrSuperEvil: Go

    Thanks but this isn't quite that issue. It's not a dependency issue, the Kaboomer model is just plain missing, I open up the .SC2mod directly and it's not there, the rest are. It's a bit frustrating.

    Posted in: Miscellaneous Development
  • 0

    posted a message on Kaboomer Model?

    I'm having an odd problem, I tried downloading the Left2Die.SC2Mod and also the mod file included for those units on this site, and all of the models work fine, but the Kaboomer.m3 is the default sphere model, has anyone had a similar problem and found out why? Is the Kaboomer model simply elsewhere and mislabeled and I haven't found it?

    Posted in: Miscellaneous Development
  • 0

    posted a message on A basic cinematic

    I learned everything I really needed about triggers needed for cinematics from Blizzard's maps, they're also a good example of some best practices. (Using action queues, cleanup triggers, dealing with cinematic skipping etc.) The only thing you really need to do is handle transmissions differently... (Unless you're actually making your own lip sync data for your Voice Acting)

    Here's what I've been doing for my campaign, I created a simple action event:

    Campaign Cinematic Transmission
        Options: Action
        Return Type: (None)
        Parameters
            First Transmission? = false <Boolean>
            Talk Icon? = true <Boolean>
            Speaker = No Unit <Unit>
            Name = No Text <Text>
            Message = No Text <Text>
            Wrapped Message = No Text <Text>
            Sound Link = Editor Default Sound <Sound Link>
            Buffer = 0.0 <Real>
        Grammar Text: Campaign Cinematic Transmission(First Transmission?, Talk Icon?, Speaker, Name, Message, Wrapped Message, Sound Link, Buffer)
        Hint Text: (None)
        Custom Script Code
        Local Variables
        Actions
            Sound - Mute Mission channel for (All players)
            Sound - Mute Voice channel for (All players)
            General - If (Conditions) then do (Actions) else do (Actions)
                If
                    First Transmission? == true
                Then
                    Sound - Play UI_TransmissionStart (1) for (All players) (at 100.0% volume, skip the first 0.0 seconds)
                Else
            Sound - Play UI_TransmissionText (1) for (All players) (at 100.0% volume, skip the first 0.0 seconds)
            General - If (Conditions) then do (Actions) else do (Actions)
                If
                    (Text Wrapped Message has been set) == true
                Then
                    UI - Display Wrapped Message for (All players) to Cinematic area
                Else
                    UI - Display Message for (All players) to Cinematic area
            Transmission - Send transmission to (All players) from (Speaker with Flash (Do Not override portrait) playing Talk) playing Sound Link with name Name and message Message using (Cinematic portrait at Bottom Left) playing Talk (Add Buffer seconds, Don't Wait until it finishes)
            General - If (Conditions) then do (Actions) else do (Actions)
                If
                    Talk Icon? == true
                Then
                    Actor - Attach TalkIcon (Unnamed) to Origin on Speaker
                Else
            General - Wait 1.5 Real Time seconds
            Sound - Stop (Last played sound) After Fading
            Transmission - Wait until (Last sent transmission) is 0.0 seconds from being finished
            UI - Clear All Messages for (All players)
            Sound - Unmute Voice channel for (All players)
            Sound - Unmute Mission channel for (All players)
    

    This is for cinematics, it prints cinematic style dialog on the screen, using the wrapped text string. It only uses the wrapped text if you include it, and it only needs to be included if your dialog is going to go for more than one line. I don't use return in the original dialog string because that will be sent to the subtitle, which auto-wraps. This is largely optional, but I felt that it gave a better feel when there was no voice acting, as opposed to the normal subtitles, you shouldn't include this for non-cinematic transmissions.

    "First Transmission" is simply a boolean dictating whether the "Begin Transmission" sound effect plays, and is unnecessary if you don't want it. "TalkIcon?" determines whether the dialog actor appears over the unit when they talk.

    The big thing here is muting the voice and mission channel, this trigger is for when you don't have VO but want the character to animate. In this case, you pass a sound link that works for that character, which animates their lips. You can spend as much or as little time as you want making it look appropriate. Generally, I simply find a sound link for that character that is the closest # of seconds to the dialog (read at the pace it would be VO'd at) I'm including. Your player is not going to be reading and watching their lips to see if they sync.

    This method could be used for included VO as well! How? Mute the audio channel of the VO you're using the lip sync from, and make sure the VO you're adding is in a different audio channel. Keep in mind that the player will be much more sensitive to discrepancies in the lip syncing with VO, because they'll be watching instead of reading. For scenes where something interesting is going on in the background, you won't have to worry as much, but for exposition spend extra effort finding a close match perhaps, if you don't want to keep having to go in and out of game, try finding dialog that has a similar syllable structure, that should do the trick.

    I also have a few recommendations for anyone who is using a similar script or will use this one. You should also include a boolean to shift between left and right side of the screen portraits. I currently have two action definitions (one for left and one for right) because I haven't gotten to a final re-factoring pass on my map yet, but it's something I'll definitely be doing. Additionally, you may want to include a boolean to determine whether the action waits for the dialog to complete or not. Most of the time you'll want to wait, but not having as way to not wait can make it difficult to create cutscenes where something begins or stops happening during a character speaking. (It's possible, but messy as it would require you calling another trigger with a wait before you have them talk.) Just be careful that you set the default values for these booleans to the most common setting you will use to save yourself some time.

    Posted in: Triggers
  • 0

    posted a message on Difficulty Settings & Dialog Scaling

    @Tolkfan: Go

    The .exe thing was super helpful, at least now I can get it out amongst friends for difficulty/playability testing. Curious, is there a way to set gamespeed via command line?

    Posted in: Triggers
  • 0

    posted a message on Attack order

    @ShadowDancer93: Go

    I believe setting up an attack wave should work, that orders the AI to command the units in an attack, as opposed to simply ordering them to attack an area. They should attack any enemy units in their way. It's also a better idea to use attack waves in most situations (again, I believe. I haven't touched AI much.)

    Posted in: Triggers
  • 0

    posted a message on Soundtrack Query

    This is an indexing question: Where, if anywhere, can I view a soundtrack, and view how the cues and indexes are linked to each individual track? If I cannot view this anywhere (I tried the data editor, but there were only a handful of mostly blank fields for each soundtrack) can anyone clue me in on how Blizzard mapped out their indexes and queues?

    If I look at all the music tracks in the sound link section, and say I figure out THanson03MusicAlt(2) (as it appears in the sound links) is what I want to play,

    • Sound - Play Music THanson02MusicAlt (2) for (All players) (with cue Any Cue) and Do make default

    Does not result in the track that I found in sound links (and of course you can't preview a soundtrack item.) At first I thought it was an indexing issue (in one place they started at 0, and in another place 1) but for certain soundtracks I was wholly unable to access certain tracks.

    I'm starting to think I might be missing something, especially since I have absolutely no idea what cues do.

    And a small question that's more of a trigger question, but I'm going to add it here, because it has to do with sound and doesn't warrant it's own topic. Does pause soundtrack not work on initialization? I call this...

    • Sound - Set default Music soundtrack to (Whatever)
    • Sound - Pause Music soundtrack for (All players) (Immediately)

    And it doesn't work, it plays music regardless. Yet if I add a small wait before the pause, it works. Is this just a bug?

    Posted in: Miscellaneous Development
  • 0

    posted a message on Hide unit's owner

    @grenegg: Go

    There isn't really anything inherently wrong with using "Last Created" as far as I am aware. Setting a unit to a variable before modifying it is only necessary if you're going to be accessing the unit outside of the scope of that trigger. "Last Created" ignores all other triggers, so there's no danger of modifying the wrong unit unless your logic inside the trigger is broken.

    There are a lot of situations where you might be creating a unit and just want to set some information for it before sending it out on its merry way, with no intention of ever touching it again. Whether it's an attack wave, or a temporary unit actor for a cut-scene, etc. Creating a variable for these types of units if you have no intention of accessing them again is actually creating clutter that you don't need.

    On the topic of the question at hand, despite the fact that it was answered, I'm still curious why the OP's original method didn't work. I'm using

    Unit - Turn (Last created unit) Status Bar state Off Unit - Turn (Last created unit) Tooltips state Off Unit - Turn (Last created unit) Targetable state Off Unit - Turn (Last created unit) Selectable state Off Unit - Turn (Last created unit) Invulnerable state On

    to set units I create to be actors in a looping backdrop scene that I play behind my campaign menu, and it works perfectly. Interesting that you can set this state for a player overall though, very helpful info nugget!

    Posted in: Triggers
  • 0

    posted a message on Dialogs and Buttons

    @Scbroodsc2: Go

    There is a way to detect which dialog button is pressed, I have yet to touch dialog buttons though. (A few quick Google searches should answer it if you're determined, I remember reading it, I just don't remember it off the top of my head. Though I'm sure someone else will answer it soon.)

    But for prototyping (which it seems is what you're doing) I would use Screen Buttons instead, you should be able to find them under triggers. They're much more straightforward to set up, and they are assigned a trigger to call when pressed. They're simple, but for prototyping, it's all you really need, and I'd suggest using them over dialog buttons if you're not trying to make a fancy UI for an end user.

    Posted in: Triggers
  • 0

    posted a message on Difficulty Settings & Dialog Scaling

    @Tolkfan: Go

    Thanks, though it's bad news, I suppose it's better to know.

    A small question about running a map with the SC2.exe (dragging it onto the icon, etc) directly, how do you get this to affect difficulty? My editor difficulty is set to brutal, but maps I run via the .exe run as Normal.

    I may just hold out distributing any maps on battle net (if I can somehow manage to use the difficulty option through the .exe), and hope they eventually make due on their promises to provide better custom campaign support.

    Addendum would be, does set next map and set mission difficulty work for custom maps? If so, I'm considering creating a hub level, or simply allowing the player when they play a map to change the difficulty at the start, then reload the map, and store that difficulty and pass it on to the next map and so on.

    Posted in: Triggers
  • 0

    posted a message on Difficulty Settings & Dialog Scaling

    @wOlfLisK: Go

    Hmm, so their resolutions are converted? Does anyone have the exact conversion, or is there any unofficial documentation on this? I suppose guess and check would work, but I try to avoid that, if I set up the item in photoshop, I'd prefer the fewest number of steps between that and inputting data into the editor.

    Triggers are used in conjunction with a map based difficulty setting in their campaign maps. Units that are placed ahead of time (base structures, defenses etc) (or in the case of no-base levels, almost all units) are determined by that difficulty setting. Basically, click properties on a unit, you can alter a check box for whether a unit is present on a difficulty setting or not, and how often the AI rebuilds it, etc.

    In the case of attack waves that are created later on, or triggered events where units are created, they use triggers to find the player's difficulty level, then spawn the proper amount. I have no issues with this method, but I can't seem to figure out how to select the difficulty ahead of time so that the map loads with the proper difficulty.

    If you go into your editor settings, and under test document select the difficulty setting, (choosing between casual, normal, hard and brutal) that works fine with custom maps, but once it's exported, how to let the end user decide is my issue.

    Edit: I actually seem to have found an old post with my question about difficulty more or less... http://forums.sc2mapster.com/development/map-development/15982-solved-game-difficulty-in-the-lobby/

    It's disheartening that this person didn't seem to find a good answer. To clarify, I am aware and only attempting to use the 4 default blizzard campaign scenario difficulties (not 6 difficulties) so it looks like it's impossible, despite the functionality being built into the editor? It seems almost impossible that they would build a button two levels deep... View> Show Difficulty (and even default include a hot key for it) AND build it into the test document menu, and yet not have any functionality for it with finished levels.

    I'm really hoping someone has the answer to this, and I will be eternally grateful!

    Posted in: Triggers
  • 0

    posted a message on Difficulty Settings & Dialog Scaling

    Ah, thanks this attributes thing is interesting, I hadn't seen it before, though after exploring it a bit I don't think it really answers the root of my question, though I suppose this is the best way to do it if it turns out what I would like to do is impossible.

    I realize that difficulty is in fact a variable, that being said, if you change that variable, it doesn't change unit placement. For instance, if I suddenly change the difficulty to Brutal, units marked as "Brutal only (not word for word)" in their properties, will not suddenly appear. If I use the attributes editor to set the difficulty though, are you saying that because the variable is changed before the map is loaded (or rather, the map is initialized with that variable) that the unit placement will be proper? If so, thanks so much, I will look into implementing this solution immediately!

    Regarding the second question, uploading my map would be a totally overkill for answering this question, because it's a full level, so in order to skip unnecessary time and data, I'll just try to paste the evil triggers in question, if that doesn't work though, I'll rip the achievement library I'm trying to create out to an empty map and upload it.

    • Trigger - Turn (Current trigger) Off
    • Dialog - Create a Modal dialog of size (530, 115) at (0, 0) relative to Center of screen
    • Variable - Set Zerg BBQ AcheievementDialog = (Last created dialog)
    • Dialog - Create an image for dialog Zerg BBQ AcheievementDialog with the dimensions (530, 115) anchored to Center with an offset of (0, 0) setting the tooltip to "" using the image Assets\Textures\ui_achievement_metalframe.dds as a EndCap type with tiled set to false tint color White and blend mode Normal
    • Dialog - Create an image for dialog Zerg BBQ AcheievementDialog with the dimensions (67, 66) anchored to Left with an offset of (25, 0) setting the tooltip to "" using the image Assets\Textures\btn-unit-zerg-zergling.dds as a Normal type with tiled set to true tint color White and blend mode Normal
    • Dialog - Create a label for dialog Zerg BBQ AcheievementDialog with the dimensions (200, 15) anchored to Top Left with an offset of (115, 25) with the text "Zerg BBQ" color set to White text writeout set to false with a writeout duration of 2.0
    • Dialog - Create a label for dialog Zerg BBQ AcheievementDialog with the dimensions (300, 50) anchored to Top Left with an offset of (115, 50) with the text "Kill 10 enemy units in the "Wastela..." color set to White text writeout set to false with a writeout duration of 2.0
    • Dialog - Show Zerg BBQ AcheievementDialog for (All players)

    What this should essentially make is an achievement (more or less) using the dimensions achievements appear to be at least on my screen resolution, what ends up happening instead is this...

    achieve_fail

    As you can see, these are definitely not the dimensions specified.

    I had also sort of squeezed a more general question into the end, which had nothing to do with this specific problem, and I'm just curious how scaling of dialogs work. Like, if I wanted to reproduce the campaign mission end screen, is that even possible, considering that screen scales to the player's resolution, do dialog items accept %s and is screen resolution a variable we can access?

    Posted in: Triggers
  • 0

    posted a message on Difficulty Settings & Dialog Scaling

    I've yet to post here, so I suppose a hello is in order... Hello!

    I generally try to answer my own questions, regardless of how long they may take to answer, but as I near completion on the map I am currently working on, two unanswered questions are starting to become gaping maws of wasted time, so I thought I might appeal here in hopes that someone else has the answers readily available, and I've merely missed the obvious.

    Question 1: Is there a way to allow Campaign-Style difficulty selection for the player?

    (Apologies as this isn't specifically a trigger question, and I suppose it could have/should have gone in the miscellaneous section.) I'm creating a single-player campaign, I realize there appears to be very little support for this sort of thing as far as custom maps go. (The custom game-type does not seem to be set up for this.) Anyways, if I publish the map there is no way on Battle.net (as far as I can tell) to chose between difficulty settings.

    Additionally, dragging and dropping the file onto SC2.exe seems to result in the "Normal" difficulty mode regardless of the editor's test document default difficulty setting.

    It seems impossible that there would be amazingly helpful built in functionality for supporting the 4 campaign difficulties, (Such as View>Difficulty) and yet no way to use them in a map. And I'd like to avoid building a dialog item into the map to chose difficulties, as I'd have to add and remove a whole lot of units via triggers, which is cumbersome.

    If there is no built in support to allow campaign-style difficulty settings for maps, is anyone aware of any triggers that can be used to switch between unit layouts that were set for difficulties, or re-initialize the map at a different difficulty setting?

    Question 2: What's up with dialog items?

    Okay, so this question is a two parter. Firstly, I've created for example a modal dialog with dimensions 530x115 and then inside of that created dialog image item with the same dimensions with an end-cap style image (I'd love to have simply applied that end-cap style image to the modal dialog, but I couldn't seem to figure out a way to tell the modal dialog that the image I was applying was an end-cap) and the resulting image that appears is of completely different dimensions.

    Manually checking it turned out to be something more like 425x88. This is a strange problem and I wish I could provide more information, but I've isolated the triggers and this always happens, so it couldn't be anything but this. If it helps I was using the achievement frame end-caps.

    The second part about dialog items is, I'm curious, how do they scale? This question is more like, since dialog items all take set pixel dimensions, does that mean I have to make things small enough to run on the lowest possible resolution, because I can't set them to be a %? For instance, if I wanted to recreate the campaign victory screen, all of the assets are there, and although painful to do, it could be faithfully re-created. But the official campaign end screen scales to your resolution, can I achieve this with a custom created dialog?

    Posted in: Triggers
  • To post a comment, please or register a new account.