The custom game setting doesn't matter. The only time it can be chosen is when you use the "Create Game" option. People who join your map via the custom games list cannot change your game mode settings.
The custom game setting doesn't matter. The only time it can be chosen is when you use the "Create Game" option. People who join your map via the custom games list cannot change your game mode settings.
Yes, this is what I meant when I said the custom mode only showed up in "private" games and that in "public" games it was fine.
However, it is important to me that I be able to control the game variants in all cases, whether people are joining via the popularity list or whether they are creating a game and inviting friends.
Note that the "open game to public" button that is available when you create a "private" match prevents further changes to the game variant - does this mean that if someone created a private lobby of your map, changed to the "custom" variant, and opened the game to public, nobody would be able to join? (since the popularity list does not show custom under the category field.) Or would people be able to join, but it is set to custom and therefore broken? Neither case is desirable.
Something helpful, Data editor: Game UI Data->AutoVariant. From Snow on sc2c.org.
Great find! Were you able to accomplish anything with this, though? I played around with it, and all I was able to do was to change the name and description of the custom "mode" that is available when selecting the custom "category."
Also of interest is Game UI Data -> Data - Game Categories, which lets you change the name of the default "custom" category, it's description, and which modes it has available. These actually have an effect on the game, but deleting it does nothing. I'm going to try editing these some more, if the actual variants data for the custom category/mode could be edited as well as the names, it would solve the problem. (You could just make that the only category, with whatever name you want.)
I dont know what I am doing wrong. I copy the tutorial exactly, but instead of creating a unit for me, it creates the unit for the nuetral player.
EDIT: never mind, stupid mistake on my part.
Ok, I downloaded this, but I can't test it online, because uploading fails either when I copy the code to my map or when I try to upload yours as a testmap.
Any suggestions on that? Because this looks like exactly what I need, I'm very desperate on that issue. I have a map with pre-colored starting positions, that people can see in the preview picture while in the lobby (e.g. spawnpoint Red: middle, spawnpoint Blue: lower left).
Now I want to Place the players from the lobby due to which color they choose in the lobby.
Any Tutorial/help would be very cool.
Any other solution for this? I know that something like that is possible, for kinda that is used in e.g. Retribution TD. Would be really great if anyone could help me on that topic.
Basically what it does is it reads an attribute value (I created my own) and then sets some variables and runs actions based upon that. It's also able to read any attribute, including color, but I haven't tried it with that. One the map, the bases or whatever that the player is going to are placed into a unit group that is given to the player and anything involving locations for that base goes off of variables set in the get player faction trigger.
Ok, trying to reproduce that I have trouble with "Player-Faction", "Faction-Player", "HumanPlaying" and "FactionAlive" you use. What kind of variables are that and where do you create them? Global?
Yes they're global variables. Player-Faction and Faction-Player are player variable arrays. The player faction is so I can get what faction the player is assigned to (Like Player-Faction[1] gives me what faction Player 1 is) wheres Faction-Player is just the inverse of that (Faction-Player[1] gives me what player was assigned to Faction 1). Human Playing and Faction Alive are just booleans I use to track certain things related to those factions.
Like I have two teams, a team loses if either there are no more humans or all of the factions have been killed, those two variables are used for that (among other things)
Err, ok, I hope I can "translate" this to my system of only having one team (co-op). Quite confused, but I'll let you know. Thank you very much so far.
Ok, I don't get it. What would I have to do if I have only one team and no need booleans (I think I don't need them)?
I just want to select the start point from the lobby and ingame just spawn my building unit at place "ChosenColor" (which is start point) for the player.
And I can't find a variable type that is "player variable (<array>)"
Oh, sorry, wasted some of your time, its just an integer variable that stores the player numbers (things run together in my head sometimes :) )
It being an array is just set in the variable itself (theres an array flag you set after defining it as an integer). As far as your map, if ALL you're doing is picking which spot to start them at and there is no need down the line to reference who you placed where, you can just do something that ignores a lot of my setup (which I have because I reference a lot of that information later) and in the get selected faction trigger rescue the player units and set the player color based on that.
So you'd have the units you want as red placed in the mapmaker for player one, use a unit variable thats all of player 1's units and if the player selected the red color attribute, rescue player 1's units for that player (and set that player's color to red)
Ok, it works perfect for being placed where you chose at the lobby and setting the color for the unit (builder), but now I have a problem to create a working if-statement for which startpoint was chosen (or which color my building unit got) and therefore spawn only waves for that ones.
EDIT: I got it, boolean was the clue! Thank you so much!!!
Ok, the color test just did for 2 players somehow and not for more... so I have a new problem here:
I got the following dropdowns in the lobby menu I added:
Blue Spawn
Teal Spawn
Red Spawn ... and so on
Now when the game starts everyone is placed at the right spot, but either no color (white) or random color (even with some colors duplicated) are assigned.
I want to specify that when player x chooses "Blue Spawn" gets also the blue color attached.
In GameVariants I set all color settings to (random). In my custom game attribute I set player colors to:
Player 1 - Blue - locked
Player 2 - Teal - locked
Not sure about this, but I locked it, because players should not get confused choosing some stuff in the color tab in the lobby which should have no effect. Everything should be assigned via my own game attribute as described above.
So what I basically need (in theory) is: The function that says which player chose Spawn X should also set which color the player will be at the same time. The chosen (set) color should be stored in a variable or array, so that I can update my leaderboard,too. So I need to have some another variables/arrays/whatever? How would it look like? My logic ends in the jungle of my Trigger Editor these days :(
Use an action that sets the player color to the desired color and have it change color of existing units. You can do this in the same part of the trigger that assigns people where they're going, its just one more action. Don't worry about locking colors or anything like that in attributes or variants, it can just be done at run-time (at least thats how I do it).
Rollback Post to RevisionRollBack
To post a comment, please login or register a new account.
I need to remember rule 1 of posting:
make sure you read all previous post before you reply.
Okay so I have a little revelation.
The custom game setting doesn't matter. The only time it can be chosen is when you use the "Create Game" option. People who join your map via the custom games list cannot change your game mode settings.
Something helpful, Data editor: Game UI Data->AutoVariant. From Snow on sc2c.org.
@Eiviyn: Go
Yes, this is what I meant when I said the custom mode only showed up in "private" games and that in "public" games it was fine.
However, it is important to me that I be able to control the game variants in all cases, whether people are joining via the popularity list or whether they are creating a game and inviting friends.
Note that the "open game to public" button that is available when you create a "private" match prevents further changes to the game variant - does this mean that if someone created a private lobby of your map, changed to the "custom" variant, and opened the game to public, nobody would be able to join? (since the popularity list does not show custom under the category field.) Or would people be able to join, but it is set to custom and therefore broken? Neither case is desirable.
@adovid: Go
Great find! Were you able to accomplish anything with this, though? I played around with it, and all I was able to do was to change the name and description of the custom "mode" that is available when selecting the custom "category."
Also of interest is Game UI Data -> Data - Game Categories, which lets you change the name of the default "custom" category, it's description, and which modes it has available. These actually have an effect on the game, but deleting it does nothing. I'm going to try editing these some more, if the actual variants data for the custom category/mode could be edited as well as the names, it would solve the problem. (You could just make that the only category, with whatever name you want.)
I dont know what I am doing wrong. I copy the tutorial exactly, but instead of creating a unit for me, it creates the unit for the nuetral player. EDIT: never mind, stupid mistake on my part.
Ok, I downloaded this, but I can't test it online, because uploading fails either when I copy the code to my map or when I try to upload yours as a testmap. Any suggestions on that? Because this looks like exactly what I need, I'm very desperate on that issue. I have a map with pre-colored starting positions, that people can see in the preview picture while in the lobby (e.g. spawnpoint Red: middle, spawnpoint Blue: lower left). Now I want to Place the players from the lobby due to which color they choose in the lobby. Any Tutorial/help would be very cool.
Any other solution for this? I know that something like that is possible, for kinda that is used in e.g. Retribution TD. Would be really great if anyone could help me on that topic.
push?! :(
@Lorthas: Go
This is how I've done it:
http://paste.sc2mapster.com/2750/
http://paste.sc2mapster.com/2751/
http://paste.sc2mapster.com/2752/
Basically what it does is it reads an attribute value (I created my own) and then sets some variables and runs actions based upon that. It's also able to read any attribute, including color, but I haven't tried it with that. One the map, the bases or whatever that the player is going to are placed into a unit group that is given to the player and anything involving locations for that base goes off of variables set in the get player faction trigger.
@Diablito816: Go
Ok, trying to reproduce that I have trouble with "Player-Faction", "Faction-Player", "HumanPlaying" and "FactionAlive" you use. What kind of variables are that and where do you create them? Global?
@Lorthas: Go
Yes they're global variables. Player-Faction and Faction-Player are player variable arrays. The player faction is so I can get what faction the player is assigned to (Like Player-Faction[1] gives me what faction Player 1 is) wheres Faction-Player is just the inverse of that (Faction-Player[1] gives me what player was assigned to Faction 1). Human Playing and Faction Alive are just booleans I use to track certain things related to those factions.
Like I have two teams, a team loses if either there are no more humans or all of the factions have been killed, those two variables are used for that (among other things)
@Diablito816: Go
Err, ok, I hope I can "translate" this to my system of only having one team (co-op). Quite confused, but I'll let you know. Thank you very much so far.
Ok, I don't get it. What would I have to do if I have only one team and no need booleans (I think I don't need them)?
I just want to select the start point from the lobby and ingame just spawn my building unit at place "ChosenColor" (which is start point) for the player.
And I can't find a variable type that is "player variable (<array>)"
@Lorthas: Go
Oh, sorry, wasted some of your time, its just an integer variable that stores the player numbers (things run together in my head sometimes :) )
It being an array is just set in the variable itself (theres an array flag you set after defining it as an integer). As far as your map, if ALL you're doing is picking which spot to start them at and there is no need down the line to reference who you placed where, you can just do something that ignores a lot of my setup (which I have because I reference a lot of that information later) and in the get selected faction trigger rescue the player units and set the player color based on that.
So you'd have the units you want as red placed in the mapmaker for player one, use a unit variable thats all of player 1's units and if the player selected the red color attribute, rescue player 1's units for that player (and set that player's color to red)
@Diablito816: Go
Ok, it works perfect for being placed where you chose at the lobby and setting the color for the unit (builder), but now I have a problem to create a working if-statement for which startpoint was chosen (or which color my building unit got) and therefore spawn only waves for that ones.
EDIT: I got it, boolean was the clue! Thank you so much!!!
@Lorthas: Go
Ok, the color test just did for 2 players somehow and not for more... so I have a new problem here:
I got the following dropdowns in the lobby menu I added: Blue Spawn Teal Spawn Red Spawn ... and so on
Now when the game starts everyone is placed at the right spot, but either no color (white) or random color (even with some colors duplicated) are assigned. I want to specify that when player x chooses "Blue Spawn" gets also the blue color attached.
In GameVariants I set all color settings to (random). In my custom game attribute I set player colors to: Player 1 - Blue - locked Player 2 - Teal - locked
Not sure about this, but I locked it, because players should not get confused choosing some stuff in the color tab in the lobby which should have no effect. Everything should be assigned via my own game attribute as described above.
So what I basically need (in theory) is: The function that says which player chose Spawn X should also set which color the player will be at the same time. The chosen (set) color should be stored in a variable or array, so that I can update my leaderboard,too. So I need to have some another variables/arrays/whatever? How would it look like? My logic ends in the jungle of my Trigger Editor these days :(
@Lorthas: Go
Use an action that sets the player color to the desired color and have it change color of existing units. You can do this in the same part of the trigger that assigns people where they're going, its just one more action. Don't worry about locking colors or anything like that in attributes or variants, it can just be done at run-time (at least thats how I do it).