I could try texturing it if you wanted. I have never tried to skin a 3D model from scratch before (but have had no problem editing textures in the past), so should be fun ... feel free to dropbox me a link etc. I can't promise I can even do it but I am more than willing to try it out in my spare time.
Judging from what you have written, you will need to do something along the lines of:
First you need to identify the players.
Second you need to assign them to an array.
Third you need to verify the teams.
Fourth you need to assign them to a team array.
Each line above can basically be it's own function - may I suggest that you do the following:
Records are basically like folders, so instead of having 10 variables arrays relating to the player, you can have 1 record (an array) and inside it ten normal variables and it works the same way. It keeps it extremely organised and all it does is move the [Array] number from like Playernumber[15] to Player[15].Number,
It is better to rewrite your code now than later to include Records - trust me on this.
Create a Record called "Player Data", then create a Variable Type of Record [Array 15] and call it "Player" and point it to Player Data.
Inside that record you can create everything relating to the player. So create three integers, one called "position_number" the others called "team_number" and "team_position_number".
Next create a Record like we did before, this time calling it "Global Data" and a variable [No Array] pointing to it called "Global".
Create an integer array called "position" [Array 15], create another integer [No Array] call it "amountofplayers".
Create an integer [No Array] call it "amountofteams". Create an integer [No Array] call it "maxplayers" and set this to (15).
Next create another Record call it "Team Data and a variable [Array 4] called "Team"
Create an integer array called "position" [Array 15], create another integer [No Array] call it "amountofplayers".
Create a text variable and call it "name" (just so we can see the team's name).
Alrighty here we go ...
Foreword: Most of this (Like the general idea of how it works) is based off how Tofu does it, however, I use quite a few more records and set quite a more more variables, so I have kept it as simple as possible for OP to learn from.
First thing you are going to need is to Identify the teams, IE - Setup Teams.
Create an Action Definition, call it Setup Teams - Add this to Map Intialization (create new action definition, search for setup teams).
Secondly, you are going to need is to check players.
Create an Action Definition, call it Check Players. - Add this to Map Intialization or Game Start Trigger (anytime after Setup Teams).
CheckPlayersOptions:ActionReturnType:(None)ParametersGrammarText:CheckPlayers()HintText:(None)CustomScriptCodeLocalVariablesx=0<Integer>player=1<Integer>ActionsGeneral-While(Conditions)aretrue,do(Actions)Conditionsplayer<=Global.maxplayersActionsGeneral-If(Conditions)thendo(Actions)elsedo(Actions)If(Statusofplayerplayer)==Playing(Controllerofplayerplayer)==UserThenVariable-Modifyx:+1Variable-SetGlobal.position[x] = player
Variable - Set Player[player].position_number = x
Else
Variable - Modify player: + 1
Variable - Set Global.amountofplayers = x
So this has basically just identified our players as HUMAN, and assigned them to an array, skipping over any computers it may find. The array is "Global.Position" and the length of the array is "Global.Amountofplayers".
Next we want to set the teams - there are many different ways to do this and I would suggest making each way it's own Action Definition so that you can switch them later if you add in game mode options. Alternatively you may see a similarity between this and the check players function, this is because they are basically doing a different thing in the same way. You could add this to that function but you wouldn't be able to add in more game modes (like Random Teams) later on.
Add this after the Check Players function.
DefaultTeamsOptions:ActionReturnType:(None)ParametersGrammarText:DefaultTeams()HintText:(None)CustomScriptCodeLocalVariablesteam=1<Integer>ActionsGeneral-While(Conditions)aretrue,do(Actions)Conditionsteam<=Global.amountsofteamsActionsGeneral-If(Conditions)thendo(Actions)elsedo(Actions)If(Numberofplayersin(Playersonteamteam))>=1ThenPlayerGroup-Pickeachplayerin(Playersonteamteam)anddo(Actions)ActionsGeneral-If(Conditions)thendo(Actions)elsedo(Actions)If(Controllerofplayer(Pickedplayer))==User(Statusofplayer(Pickedplayer))==PlayingThenVariable-ModifyTeam[team].amountsofplayers: + 1
Variable - Set Team[team].position[Team[team].amountsofplayers] = (Picked player)
Variable - Set Player[(Pickedplayer)].team_number = team
Variable - Set Player[(Pickedplayer)].team_position_number = Team[team].amountsofplayers
Else
Else
Variable - Modify team: + 1
This would create an array of players for each team. If you wanted to create a Player Group then you would create one inside the Team Data record, and then EMPTY it as the first thing inside the Team Loop and then add each the player to it where it sets all the player's data.
If you wanted to create units at the center of a team's base you would create a variable inside the team data record of type region, set the region in Setup Team thing (under the name), and then you could do Create Unit for Team[loop_team].position[loop_player] at center of region Team[loop_team].region
Once set up like this, and you understand how it works, your possibilities are endless.
They stated in an interview years ago that WoW did not mean that there would never be a Warcraft IV, and that there were many people at Blizzard who would like to see it happen and they wished that they could bring it to the table.
That being said, the Starcraft II engine would only need very minimal upgrades to support Warcraft IV, specifically an amphibious system. Everything else is art, as those who came from Wc3 to Sc2 can see how very similar the two engines are.
It would not surprise me if Warcraft 3 would be ported to Starcraft II as a little gift to battle.net from our beloved devs in Blizzard (who probably did it on their own time and not Blizzard's time).
D3 CE cost me $138 compared to $99 USD in the USA - did I mention the Australian dollar has been worth more than the US dollar for going on three years?
I saw no reason to get the WOL CE, but I will definately try to get the HOTS CE ... I just want the Artbook so in case one day I meet Samwise, I can get it signed. Seriously, I have been waiting for the Zerg Expansion Artbook since I heard of Starcraft II ... I live for Zerg and Samwise, like really, you have no idea how much respect I have for him ... and I love me some zergies. <3 ...;'
You can override assets for each locale - thanks to Xuzaca (Blizz) for posting the info.
This is very important when you keep in mind that Global Play is coming.
List of Locales
deDE = German
enGB = English (used in the UK | AU | NZ)
enSG = English (used in Singapore)
enUS = English
esES = Castilian Spanish
esMX = Latin American Spanish
frFR = French
itIT = Italian
koKR = Korean
plPL = Polish
ruRU = Russian
zhCN = Simplified Chinese
zhTW = Traditional Chinese
Localizing Assets
You can overwrite existing Blizzard assets or even your own assets by putting them into the right path. Your Base path will be the default, and will be over-ridden by any other locale that you define. Hence, your Base should theoritically be in English being the most widely-spread langauge, and adding additional locales when needed.
How to do it
Import your base Assets into "Base.SC2Assets\Assets\Textures", then using the list above you can import overrides into their own folders/paths.
Important Info
Have the same name as the asset they're supposed to override
Are in the correct, locale-specific archive (Base.SC2Assets vs. koKR.SC2Assets)
Have the same path within that archive as the asset they're supposed to override
(Base.SC2Assets\Assets\Textures\x.dds vs. koKR.SC2Assets\Assets\Textures\x.dds)
If you really want to improve your life mate you can, but I do not believe anything that I could say would possibly make a difference, because I did not listen when I was younger, and had to learn the hard way. It has taken me many years to get where I am now, and it was very difficult to achieve. With that being said,
I have had a really hard life, but the way in which I chose to deal with things that happened to me defined me as the good person I am today. It was not the events as such that created me, but instead, the way in which I chose to react to them.
0
You are removing the unit before creating one of the triggering unit (which does no longer exist).
Move it instead.
0
I need Samwise to make some cool art for Tofu ... maybe some Panda's eating out at a Chinese Restaurant?
0
I could try texturing it if you wanted. I have never tried to skin a 3D model from scratch before (but have had no problem editing textures in the past), so should be fun ... feel free to dropbox me a link etc. I can't promise I can even do it but I am more than willing to try it out in my spare time.
0
I need to get me some of that shit ...
0
I can take a look, I aint gonna fill out your form because I can't be stuffed, if you want me PM me and I can make time. :)
0
Override the asset file or override the UI file.
I overrid the asset file because it was simplier.
0
Judging from what you have written, you will need to do something along the lines of:
First you need to identify the players.
Second you need to assign them to an array.
Third you need to verify the teams.
Fourth you need to assign them to a team array.
Each line above can basically be it's own function - may I suggest that you do the following:
Records are basically like folders, so instead of having 10 variables arrays relating to the player, you can have 1 record (an array) and inside it ten normal variables and it works the same way. It keeps it extremely organised and all it does is move the [Array] number from like Playernumber[15] to Player[15].Number,
It is better to rewrite your code now than later to include Records - trust me on this.
Create a Record called "Player Data", then create a Variable Type of Record [Array 15] and call it "Player" and point it to Player Data.
Inside that record you can create everything relating to the player. So create three integers, one called "position_number" the others called "team_number" and "team_position_number".
Next create a Record like we did before, this time calling it "Global Data" and a variable [No Array] pointing to it called "Global".
Create an integer array called "position" [Array 15], create another integer [No Array] call it "amountofplayers".
Create an integer [No Array] call it "amountofteams". Create an integer [No Array] call it "maxplayers" and set this to (15).
Next create another Record call it "Team Data and a variable [Array 4] called "Team"
Create an integer array called "position" [Array 15], create another integer [No Array] call it "amountofplayers".
Create a text variable and call it "name" (just so we can see the team's name).
Alrighty here we go ...
Foreword: Most of this (Like the general idea of how it works) is based off how Tofu does it, however, I use quite a few more records and set quite a more more variables, so I have kept it as simple as possible for OP to learn from.
First thing you are going to need is to Identify the teams, IE - Setup Teams.
Create an Action Definition, call it Setup Teams - Add this to Map Intialization (create new action definition, search for setup teams).
Secondly, you are going to need is to check players.
Create an Action Definition, call it Check Players. - Add this to Map Intialization or Game Start Trigger (anytime after Setup Teams).
So this has basically just identified our players as HUMAN, and assigned them to an array, skipping over any computers it may find. The array is "Global.Position" and the length of the array is "Global.Amountofplayers".
Next we want to set the teams - there are many different ways to do this and I would suggest making each way it's own Action Definition so that you can switch them later if you add in game mode options. Alternatively you may see a similarity between this and the check players function, this is because they are basically doing a different thing in the same way. You could add this to that function but you wouldn't be able to add in more game modes (like Random Teams) later on.
Add this after the Check Players function.
This would create an array of players for each team. If you wanted to create a Player Group then you would create one inside the Team Data record, and then EMPTY it as the first thing inside the Team Loop and then add each the player to it where it sets all the player's data.
You would call this through a LOOP.
Like:
If you wanted to create units at the center of a team's base you would create a variable inside the team data record of type region, set the region in Setup Team thing (under the name), and then you could do Create Unit for Team[loop_team].position[loop_player] at center of region Team[loop_team].region
Once set up like this, and you understand how it works, your possibilities are endless.
0
They stated in an interview years ago that WoW did not mean that there would never be a Warcraft IV, and that there were many people at Blizzard who would like to see it happen and they wished that they could bring it to the table.
That being said, the Starcraft II engine would only need very minimal upgrades to support Warcraft IV, specifically an amphibious system. Everything else is art, as those who came from Wc3 to Sc2 can see how very similar the two engines are.
It would not surprise me if Warcraft 3 would be ported to Starcraft II as a little gift to battle.net from our beloved devs in Blizzard (who probably did it on their own time and not Blizzard's time).
0
D3 CE cost me $138 compared to $99 USD in the USA - did I mention the Australian dollar has been worth more than the US dollar for going on three years?
I saw no reason to get the WOL CE, but I will definately try to get the HOTS CE ... I just want the Artbook so in case one day I meet Samwise, I can get it signed. Seriously, I have been waiting for the Zerg Expansion Artbook since I heard of Starcraft II ... I live for Zerg and Samwise, like really, you have no idea how much respect I have for him ... and I love me some zergies. <3 ...;'
0
Or you can just set tile to false. Depending on the anchor it will cut off the rest.
0
Google Bubble Sort.
0
Localizing Assets
You can override assets for each locale - thanks to Xuzaca (Blizz) for posting the info.
This is very important when you keep in mind that Global Play is coming.
List of Locales
Localizing Assets
You can overwrite existing Blizzard assets or even your own assets by putting them into the right path. Your Base path will be the default, and will be over-ridden by any other locale that you define. Hence, your Base should theoritically be in English being the most widely-spread langauge, and adding additional locales when needed.
How to do it
Import your base Assets into "Base.SC2Assets\Assets\Textures", then using the list above you can import overrides into their own folders/paths.
Important Info
(Base.SC2Assets\Assets\Textures\x.dds vs. koKR.SC2Assets\Assets\Textures\x.dds)
0
You can create a custom leaderboard with this functionality but as far as I know, the default one does not do this.
0
If you really want to improve your life mate you can, but I do not believe anything that I could say would possibly make a difference, because I did not listen when I was younger, and had to learn the hard way. It has taken me many years to get where I am now, and it was very difficult to achieve. With that being said,
I have had a really hard life, but the way in which I chose to deal with things that happened to me defined me as the good person I am today. It was not the events as such that created me, but instead, the way in which I chose to react to them.
I honestly hope you find your way mate.
0
....