By "the Map -> Player Properties list bugs out" I specifically mean it appears to reset the player list to default, but not truly because the map won't work until you actually click the reset-to-default button.
A game-stopper bug has been introduced in the latest patch. To reproduce:
Create a new map in the editor.
In the Map -> Player Properties dialogue box, assign all 16 player slots to be active players (change their Control to something other than "None".
Go to File -> Test Document.
The game cannot load the map!
If this bug occurs when playing a map online with other people, the entire user interface breaks - most buttons disappear, attempting to log out does nothing, and if you attempt to exit the game it crashes. Additionally, if you save and load the map in the galaxy editor, this error appears in the editor's message window:
Unable to load 'Map Info' from ''
After loading, the Map -> Player Properties list bugs out, the map is unplayable until you click "reset to defaults" and re-assign the list. A map with fifteen players works (any empty slot will do), but if all sixteen player slots are assigned, the game can break.
Maps with 16 players worked before the patch without error.
I'm getting really concerned too. After patching, my map won't load at all anymore! I click Test Document, it hops over to SC2 and gives an error message: "Unable to load map."
A record I use has an array and the size of the array's current usage stored within it. Due to the above problem, this simple statement cannot be done in the galaxy editor:
if(someStruct.arraysize>4){
This requires either custom scripting or creating a local variable for every record member the user wishes to compare data to. This behavior is likely an error since boolean data members work, but others don't, and record members are valid on the right side of a comparison operator, but not on the left side. This sort of bizzare inconsistency leads me to believe there's a bug somewhere.
Comparison operators are broken for record (struct) data types in the trigger module.
Create a record someRecord.
Create an integer variable for someRecord.
In a trigger, create an If statement.
Create a comparison for the If statement.
On the left side of the comparison, select someRecord.
Click the 'member' field. No members of the record can be selected, even though the integer member created in step 2 is a valid data type for comparison operators.
Additionally, no values can be selected on the right-hand side.
Workarounds
Until this is fixed, you can:
Enter the comparison directly as custom text
If you want to compare the member to a variable, you can place the variable on the left-hand side and the record on the right-hand side.
However, it is impossible to compare the member to a value directly in the editor with > and < operators. Only boolean data types appear to not be broken.
Now, when you wish to use the operator, select the one that has Source listed as Global. If/when Blizzard fixes the operator, you won't need to update your map, you'll already be using a correct version.
Obviously if you're creating your own library or a mod you'd vary these steps, but probably know what you're doing in that case anyways.
1) Invisible to all players
2) Power splat is visible when unit is selected
"No draw" behavior flag, did #1 but not #2.
Trigger action "hide unit", didn't satisfy #2.
Trigger action "unload model for unit", worked for #2 but showed the no-model sphere for #1.
Alternatively, is there a way to change the model (sphere) that shows up for units with no model?
The trigger action "Change unit vertex coloring" from the WC3 editor would work perfectly, but the SC2 version lacks the capability to change a unit's transparency. Is there any other way in the GE to change transparency?
So it seems the problem is not a lack of a way to get a player's name, but that we can't do anything with that information to check what their name is.
In the trigger module, if you change a line of a custom script action but cannot see that whole line due to it extending off the edge of the screen, the line will not change.
Steps:
Create a custom script action.
In the edit box (lower-right viewpane) hold down the "a" key until there's a line of a's stretching slightly past the edge of the screen (a scrollbar appears).
De-select the custom script action (such as by clicking the Events section of the trigger).
The custom script will not update to reflect the text you have entered.
If you widen the text box of the lower-right viewpane, you can repeat this successfully with the same length of text. The length of the line is limited to the width of the text box.
The "Find Units" function takes its "Unit Type" parameter as a type String, instead of type Unit Type, which is inconsistent with other functions that use unit types.
I searched the api doc for a TextToString function and didn't find one... does it exist by some unusual name?
It's strange the above code didn't produce compile or run-time errors if the operator doesn't exist. Perhaps it's some low-level implicit operation actually comparing the memory address the variables point to?
Terrain module: Add-to-selection cursor needs redesigning. (This is the cursor when you hold shift while editing.) It's a box with no marker or crosshair at the location you're actually pointing at, making precision work or selecting small objects very difficult.
Terrain module: Terrain selection does not show what is selected after releasing the mouse button. Also, when pasting terrain, the selection outline is difficult to see with grids turned on. In addition, the selection does not match the area you select. For example, if you drag a box around 1 tile, it actually selects 4 tiles.
Terrain module: When you have a menu open and right-click the Terrain Module main viewscreen, your current camera position jumps up and left.
Data module: There is no way to edit the raw data of a line in the data editor (I'm referring to something different from the 'show as raw data' option). This is especially frustrating for data elements that have arrays. An example of this is CAbilTrain and its derived abilities. The various "InfoArray" fields of this ability cannot be edited individually.
To change a single "Button Flag" value that you can see right there on the screen, you have to double click (brings up a dialogue box) then double-click again (brings up another box), then double-click a third time (brings up yet another box), then click the drop-down list, and finally can set the value you want. Doing this for multiple fields is frustrating and time-wasting.
The solution is to have a shift hotkey, where if you hold shift, you can edit the text values of a data element directly rather than through UI dialogue boxes. The WC3 editor had this feature half a decade ago.
Trigger module: The "Library" viewpane is exceptionally slow to navigate. Creating a trigger here takes a full two seconds, when it's virtually instantaneous in the "Triggers" viewpane.
0
By "the Map -> Player Properties list bugs out" I specifically mean it appears to reset the player list to default, but not truly because the map won't work until you actually click the reset-to-default button.
0
A game-stopper bug has been introduced in the latest patch. To reproduce:
The game cannot load the map!
If this bug occurs when playing a map online with other people, the entire user interface breaks - most buttons disappear, attempting to log out does nothing, and if you attempt to exit the game it crashes. Additionally, if you save and load the map in the galaxy editor, this error appears in the editor's message window:
Unable to load 'Map Info' from ''
After loading, the Map -> Player Properties list bugs out, the map is unplayable until you click "reset to defaults" and re-assign the list. A map with fifteen players works (any empty slot will do), but if all sixteen player slots are assigned, the game can break.
Maps with 16 players worked before the patch without error.
Cross-posted: http://forums.battle.net/thread.html?topicId=24702266874&postId=246998851617&sid=5000#0
0
I'm getting really concerned too. After patching, my map won't load at all anymore! I click Test Document, it hops over to SC2 and gives an error message: "Unable to load map."
0
@vjeux: Go
A record I use has an array and the size of the array's current usage stored within it. Due to the above problem, this simple statement cannot be done in the galaxy editor:
This requires either custom scripting or creating a local variable for every record member the user wishes to compare data to. This behavior is likely an error since boolean data members work, but others don't, and record members are valid on the right side of a comparison operator, but not on the left side. This sort of bizzare inconsistency leads me to believe there's a bug somewhere.
0
Comparison operators are broken for record (struct) data types in the trigger module.
Workarounds
Until this is fixed, you can:
However, it is impossible to compare the member to a value directly in the editor with > and < operators. Only boolean data types appear to not be broken.
0
If you initialize a variable to a function result, the "Grammar" view for parameters can no longer be used to change that variable's initial value.
One possible solution is wrapping the function call in grammar view with a set of parenthesis to click on.
0
The built-in "within bounds" macro (operator) is bugged. It reads:
((#PARAM(value) <= #PARAM(min)) && (#PARAM(value) >= #PARAM(max)))
This is checking X <= minimum, and X >= maximum. The min and max parameters should be reversed.
Workaround
((#PARAM(value) <= #PARAM(max)) && (#PARAM(value) >= #PARAM(min)))
Now, when you wish to use the operator, select the one that has Source listed as Global. If/when Blizzard fixes the operator, you won't need to update your map, you'll already be using a correct version.
Obviously if you're creating your own library or a mod you'd vary these steps, but probably know what you're doing in that case anyways.
0
Is there a way to change a unit such that it's:
1) Invisible to all players
2) Power splat is visible when unit is selected
Alternatively, is there a way to change the model (sphere) that shows up for units with no model?
The trigger action "Change unit vertex coloring" from the WC3 editor would work perfectly, but the SC2 version lacks the capability to change a unit's transparency. Is there any other way in the GE to change transparency?
0
@vjeux: Go
So it seems the problem is not a lack of a way to get a player's name, but that we can't do anything with that information to check what their name is.
0
In the trigger module, if you change a line of a custom script action but cannot see that whole line due to it extending off the edge of the screen, the line will not change.
Steps:
The custom script will not update to reflect the text you have entered.
If you widen the text box of the lower-right viewpane, you can repeat this successfully with the same length of text. The length of the line is limited to the width of the text box.
0
Is there any way to get the name of a trigger?
0
The "Find Units" function takes its "Unit Type" parameter as a type String, instead of type Unit Type, which is inconsistent with other functions that use unit types.
0
@xhatix: Go
I searched the api doc for a TextToString function and didn't find one... does it exist by some unusual name?
It's strange the above code didn't produce compile or run-time errors if the operator doesn't exist. Perhaps it's some low-level implicit operation actually comparing the memory address the variables point to?
0
Several issues with usability in the new editor:
To change a single "Button Flag" value that you can see right there on the screen, you have to double click (brings up a dialogue box) then double-click again (brings up another box), then double-click a third time (brings up yet another box), then click the drop-down list, and finally can set the value you want. Doing this for multiple fields is frustrating and time-wasting.
The solution is to have a shift hotkey, where if you hold shift, you can edit the text values of a data element directly rather than through UI dialogue boxes. The WC3 editor had this feature half a decade ago.
0
The hardest part is the ingame error reports are so vague, it can be really difficult to track down which array is causing an out-of-bounds error.