I understand that. The part that I don't understand is how to apply this to frames containing many different frames, especially frames that aren't tooltips. E.g. I want to wrap up those two number icons (each one made up of a background image, an image and a label) in a container that could then be positioned anywhere easily. Right now I have the container stretching up all the way to $parent (FullscreenUpperContainer) except for the bottom, which is anchored to the top of the command card, because I can't make it only as tall and wide as it needs to be (without hard-coding values).
Sorry for the delay. The thing is I'm not quite happy with the solution I came up with yet. Specifically, I want to make it so you can have nice tooltips (instead of this) on the icons and also allow you to position them more flexibly (right now it's positioned relative to the command card and changing it to, for example, above the minimap would require several XML edits).
But the layout engine in SC2 is hard...
Just to give you an idea, the functionality I'm trying to leverage ("CollapseLayout"), isn't documented anywhere and comes up with a mere two pages of search results on Google. This is a dark magic that very few people understand and are willing to teach...
Anyway, what I showed you can be done quick & dirty through triggers (minus the tooltips). Do you want an example map for that in the meantime or can it wait? Or do you want me to just send you what I have now?
I meant adding another icon to the unit's equipment array, but I just found out that apparently there's no way to set the level number that way.
However, the same style could be used in a custom UI panel and you could set the textures and number through triggers.
Or would something like this be more to your liking?
The problem with that, I've found, is that the numbers can be pretty difficult to read against the colorful backgrounds, which is why I dimmed them slightly, which helps mitigate that issue.
If you can be more specific how you want it to look I can try making it so.
From now on, I'm going to use the phrase Pick and do anytime I need to refer to the action Pick each (whatever) and do actions. Because it just sounds awesome in my head.
A word of caution: the "pick each..." family of actions suffers from a couple of weird bugs that can cause errors for no apparent reason whatsoever. They cannot be relied upon and as such I recommend getting in the habit of using the "for each..." actions instead.
Ive noticed i didn't need do add the morph ability to the abilities of the new bunker it works just fine without it.With just the set placed on the unit effects under birth it works.
I touched upon this but I wasn't very clear. Since this isn't a normal bunker (as in the bunker from the standard game dependencies), you'll end up having two different types of bunkers on the map. This may be undesirable. That's why I included Part 2 which adds the morph effect to turn the bunker back to a standard bunker immediately after it's garrisoned. My thinking was that you'd use this bunker purely for pre-placing bunkers in the terrain module. But it's of course perfectly fine to skip Part 2 and just have two different types of bunkers in your map.
Here's how to create a second bunker unit that can be pre-placed in the terrain module and will be pre-filled with units when the game starts.
Part 1
Duplicate the normal bunker unit and name it "Bunker Prefilled".
Duplicate the normal bunker actor and set its Unit Name token to "Bunker Prefilled". (This step isn't really required but creating units without actors causes errors during the game).
Create a new effect of type: Create Unit and name it "Create Marines". Set up the unit type you want (Marines) and the number you want to spawn (4 or 6). This will spawn units next to the bunker.
Create a new effect of type: Issue Order and name it "Enter Bunker". Set the ability to "Bunker - Load-Unload (Bunker)". Set the Unit to "Caster" and set the Target to "Target Unit". This will order the bunker to load the units.
Go back to the first effect (Create Unit) and set Effect - Spawn to the effect you just created. The tooltips explain what most of these fields mean.
Now you could go to the new bunker unit and add the Create Unit effect to the "(Basic) Unit: Effect^ +" field and you're done, but there's one small problem...
Part 2
To replace the bunker with a normal bunker:
Create a new ability of type Morph, name it "Replace With Normal Bunker" and add the normal bunker unit to the ability info.
Add this ability to the new bunker unit. You don't need to set up command card buttons for this.
Create a new effect of type: Issue Order and name it "Replace With Normal Bunker". Set the ability to the new morph ability and set the unit to "Caster".
Create a new effect of type Set. Name it "Prefill With Marines" and add the Create Unit effect and the effect to issue the morph order. When we add this effect to the new bunker, it will cause it to spawn the 4–6 units, load them and then morph into a normal bunker.
Add this new Set effect to the new bunker unit for the Birth event.
I need a completely transparent mouse cursor texture in a DDS format that works when imported into a map and used as a cursor texture in the data module.
The file needs to be saved as 8.8.8.8 ARGB 32bpp, unsigned, without MIP maps. The resolution should be 32x32.
I cannot make this texture myself because it apparently can only be created by Photoshop with NVIDIA Texture Tools or the Blizzard Art Tools exporter and I do not have Photoshop. I tried editing an existing cursor texture and saving it with a graphic converter, but it didn't work. I tried various online image conversion services but they didn't work.
Records are a good way to organize a lot of variables that belong together and reduce the amount of clutter in the variable picker. The variables are usually of different types and/or for different functionality. For example, you could name a record "Settings" and store in it variables like "Lock Camera <Boolean>", "Rounds To Win <Integer>" and "Wave Spawn Point <Point>". Records are particularly useful for storing dialog and dialog item variables.
Arrays are for storing multiple values of the same type for the same purpose, such as a bunch of buttons that would be used in a custom list box. Often you'll want to use arrays when you have multiple players and use the player numbers as indexes. Sometimes you don't know exactly how many array elements you'll need but that you probably won't need "more than 100", and in those cases you'd have another variable of type integer to track how many elements there are. Other times you know exactly how many elements you need. You can even use integer constants to set the size of an array, so you could easily change things later.
To use records, you need to first create a record, then create a variable and set its type to "- Record" and then pick your record. If there's only one record in your map, it'll be picked automatically.
Records are similar to data tables, in that they can both act sort of like associative arrays. However, records are preferable because you can directly interact with them in the GUI, whereas data tables require that you manage the names yourself using presets. Data table functions may also perform a little bit slower than record variables. The advantage of data tables is that you can store an arbitrary amount of variables at different points in time in the game, and they can be used to pass data to triggers using generic events. Records are the best choice if you know (almost) exactly how many variables you need of each type.
You can also nest records inside other records to create entire hierarchies of records. To do this, records lower in the hierarchy (or inside other records) must appear first in the trigger list or you'll get a compiler error.
You can also have arrays inside records and record arrays.
What I think may be causing this is that the name of the point is rendered as a text but the ASCII string never converts and then it tries to match strings, but they don't match.
If that were the case, then trying to do this with a point named with basic Latin letters would also fail, which it doesn't.
The reason it doesn't work is because the GUI doesn't allow backslash escape sequences. Escape sequences do work in Galaxy script, but the GUI automatically escapes backslashes so that they're interpreted as literal characters and not part of escape sequences.
E.g.
gv_startK1="\xec\x8b\x9c\xec\x9e\x91\x20\xec\x9e\xa5\xec\x86\x8c\x20\x30\x30\x31";// custom script - worksgv_startK1="\\xec\\x8b\\x9c\\xec\\x9e\\x91\\x20\\xec\\x9e\\xa5\\xec\\x86\\x8c\\x20\\x30\\x30\\x31";// generated by the GUI - doesn't work
If you want to go with this approach, you'll have to switch to the Custom Script option when you set the string value in the GUI, and add quotation marks around it.
But be aware that this isn't a 100% reliable solution either. Some map-makers may rename starting locations to suit their preferences, especially in team-based maps, like "Start Location - Top 1" for example.
Pretty sure this can be done. Look how the graviton beam ability works on the phoenix. There's a "Site (Rocker)" actor which seems to be for oscillations on elevation, pitch and roll.
0
Yep. It's a trigger action called Lock Ally Color Setting.
0
I understand that. The part that I don't understand is how to apply this to frames containing many different frames, especially frames that aren't tooltips. E.g. I want to wrap up those two number icons (each one made up of a background image, an image and a label) in a container that could then be positioned anywhere easily. Right now I have the container stretching up all the way to $parent (FullscreenUpperContainer) except for the bottom, which is anchored to the top of the command card, because I can't make it only as tall and wide as it needs to be (without hard-coding values).
0
Use Countdown Labels and the "Set Dialog Item Current Value" action.
Example: http://peeeq.de/gui.php?id=3881
0
Can anybody create something like RES (Reddit Enhancement Suite) for SC2Mapster to make browsing these forums a bit less awful?
0
Sorry for the delay. The thing is I'm not quite happy with the solution I came up with yet. Specifically, I want to make it so you can have nice tooltips (instead of this) on the icons and also allow you to position them more flexibly (right now it's positioned relative to the command card and changing it to, for example, above the minimap would require several XML edits).
But the layout engine in SC2 is hard...
Just to give you an idea, the functionality I'm trying to leverage ("CollapseLayout"), isn't documented anywhere and comes up with a mere two pages of search results on Google. This is a dark magic that very few people understand and are willing to teach...
Anyway, what I showed you can be done quick & dirty through triggers (minus the tooltips). Do you want an example map for that in the meantime or can it wait? Or do you want me to just send you what I have now?
0
I meant adding another icon to the unit's equipment array, but I just found out that apparently there's no way to set the level number that way.
However, the same style could be used in a custom UI panel and you could set the textures and number through triggers.
Or would something like this be more to your liking?
The problem with that, I've found, is that the numbers can be pretty difficult to read against the colorful backgrounds, which is why I dimmed them slightly, which helps mitigate that issue.
If you can be more specific how you want it to look I can try making it so.
0
How about using the equipment icons?
A word of caution: the "pick each..." family of actions suffers from a couple of weird bugs that can cause errors for no apparent reason whatsoever. They cannot be relied upon and as such I recommend getting in the habit of using the "for each..." actions instead.
0
I touched upon this but I wasn't very clear. Since this isn't a normal bunker (as in the bunker from the standard game dependencies), you'll end up having two different types of bunkers on the map. This may be undesirable. That's why I included Part 2 which adds the morph effect to turn the bunker back to a standard bunker immediately after it's garrisoned. My thinking was that you'd use this bunker purely for pre-placing bunkers in the terrain module. But it's of course perfectly fine to skip Part 2 and just have two different types of bunkers in your map.
Just change the "(Basic) Stats: Cargo Count Maximum^" and "(Basic) Stats: Cargo Space^" fields of the "Bunker - Load-Unload (Bunker)" ability.
The "(Basic) Stats: Cargo Size" field field on the bunker is just how many cargo slots the bunker would occupy if it were loaded inside a transport.
Indeed.
0
Here's how to create a second bunker unit that can be pre-placed in the terrain module and will be pre-filled with units when the game starts.
Part 1
Part 2
To replace the bunker with a normal bunker:
Ta-da!
Oh, and here are the triggers used: http://peeeq.de/gui.php?id=3878
0
I need a completely transparent mouse cursor texture in a DDS format that works when imported into a map and used as a cursor texture in the data module.
The file needs to be saved as 8.8.8.8 ARGB 32bpp, unsigned, without MIP maps. The resolution should be 32x32.
I cannot make this texture myself because it apparently can only be created by Photoshop with NVIDIA Texture Tools or the Blizzard Art Tools exporter and I do not have Photoshop. I tried editing an existing cursor texture and saving it with a graphic converter, but it didn't work. I tried various online image conversion services but they didn't work.
If anyone could do this for me, that'd be great.
0
Records are a good way to organize a lot of variables that belong together and reduce the amount of clutter in the variable picker. The variables are usually of different types and/or for different functionality. For example, you could name a record "Settings" and store in it variables like "Lock Camera <Boolean>", "Rounds To Win <Integer>" and "Wave Spawn Point <Point>". Records are particularly useful for storing dialog and dialog item variables.
Arrays are for storing multiple values of the same type for the same purpose, such as a bunch of buttons that would be used in a custom list box. Often you'll want to use arrays when you have multiple players and use the player numbers as indexes. Sometimes you don't know exactly how many array elements you'll need but that you probably won't need "more than 100", and in those cases you'd have another variable of type integer to track how many elements there are. Other times you know exactly how many elements you need. You can even use integer constants to set the size of an array, so you could easily change things later.
To use records, you need to first create a record, then create a variable and set its type to "- Record" and then pick your record. If there's only one record in your map, it'll be picked automatically.
Records are similar to data tables, in that they can both act sort of like associative arrays. However, records are preferable because you can directly interact with them in the GUI, whereas data tables require that you manage the names yourself using presets. Data table functions may also perform a little bit slower than record variables. The advantage of data tables is that you can store an arbitrary amount of variables at different points in time in the game, and they can be used to pass data to triggers using generic events. Records are the best choice if you know (almost) exactly how many variables you need of each type.
You can also nest records inside other records to create entire hierarchies of records. To do this, records lower in the hierarchy (or inside other records) must appear first in the trigger list or you'll get a compiler error.
You can also have arrays inside records and record arrays.
0
Any idea how to produce the correct DDS textures for cursors without Photoshop?
0
If that were the case, then trying to do this with a point named with basic Latin letters would also fail, which it doesn't.
The reason it doesn't work is because the GUI doesn't allow backslash escape sequences. Escape sequences do work in Galaxy script, but the GUI automatically escapes backslashes so that they're interpreted as literal characters and not part of escape sequences.
E.g.
If you want to go with this approach, you'll have to switch to the Custom Script option when you set the string value in the GUI, and add quotation marks around it.
But be aware that this isn't a 100% reliable solution either. Some map-makers may rename starting locations to suit their preferences, especially in team-based maps, like "Start Location - Top 1" for example.
0
Does anyone know how to recreate these unique features from Brood War or if it's even possible to do so?
1. Installation Staircases
2. Raised Jungle
3. Space Catwalk
0
Pretty sure this can be done. Look how the graviton beam ability works on the phoenix. There's a "Site (Rocker)" actor which seems to be for oscillations on elevation, pitch and roll.
Attach a unit to an actor? I don't think that's how it works.