Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
There has been many improvements since the first release of this map.
In this map you basically snipe your enemies.
There is currently FFA mode and Team Deathmatch mode where you have to reach a certain amout of kills to win.The game should be balanced and there shouldn't be any bugs.
There will be more items in the later versions.
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
\\CREDITS: \\\\
\\Sniper model : qassamzed \\\\
\\Bullet model : Talon the Mage\\\\\
\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\
11:21, 10th Oct 2009
ap0calypse: Rejected (until updated)
Not fit for approval for a while, work on it some more and I'll test the next version.
Don't be hasty, only when you are sure the map can get approved, you can update this.
11:21, 10th Oct 2009
ap0calypse: Rejected (until updated)
Not fit for approval for a while, work on it some more and I'll test the next version.
Don't be hasty, only when you are sure the map can get approved, you can update this.
Yeah, Marksmen, without the "S"... And, try to make lives, if a sniper dies, he looses 1 life, and the last sniper alive wins, i really don't know how to make a simple GUI for the last alive in 1 trigger, i can make it in 12 triggers but it's too long... And make an ending cinematic with the winner so all can know the winner, instead of instant defeat...
And i like the "They killed kanny" cinematic, (Southpark)
Yeah, Marksmen, without the "S"... And, try to make lives, if a sniper dies, he looses 1 life, and the last sniper alive wins, i really don't know how to make a simple GUI for the last alive in 1 trigger, i can make it in 12 triggers but it's too long... And make an ending cinematic with the winner so all can know the winner, instead of instant defeat...
And i like the "They killed kanny" cinematic, (Southpark)
I'm still a noob GUI guy so when i learn how to do the lives and stuff i'll add it in
Hey can you send me the 12 trigger version of yours, i might be able to make it smaller
The terrain is really bad, it only has 1 real tileset (grass cliff and shop bricks not counted).
I suppose the triggers aren't good either, since apparantly you don't know how to add lives, meaning you don't know how to use variables (properly).
You can add the life-trigger and victory/defeat trigger and multiboard update trigger into 1 trigger, by the way... (yeah, that's a bit more efficient than Bugbuster96's 12 triggers + lives trigger).
Anyhow, it's supposed to be something like this:
Add this action in the trigger with "Map Init":
Set Players = (All players matching ((((Matching player) controller) Equal to User) and (((Matching player) slot status) Equal to Is playing)))
This is the "Sniper Dies"-trigger:
Sniper Dies
Events
Unit - A unit Dies
Conditions
(Unit-type of (Triggering unit)) Equal to Footman
Actions
Set lives[(Player number of (Owner of (Dying unit)))] = (lives[(Player number of (Owner of (Dying unit)))] - 1)
Set kills[(Player number of (Owner of (Killing unit)))] = (kills[(Player number of (Owner of (Killing unit)))] + 1)
Multiboard - Set the text for (Last created multiboard) item in column 2, row (1 + (Player number of (Owner of (Killing unit)))) to (String(kills[(Player number of (Owner of (Killing unit)))]))
Multiboard - Set the text for (Last created multiboard) item in column 3, row (1 + (Player number of (Owner of (Dying unit)))) to (String(lives[(Player number of (Owner of (Dying unit)))]))
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
lives[(Player number of (Owner of (Dying unit)))] Equal to 0
Then - Actions
Player Group - Remove (Owner of (Dying unit)) from Players
Player Group - Add (Owner of (Dying unit)) to Defeated
Visibility - Create an initially Enabled visibility modifier for (Owner of (Dying unit)) emitting Visibility across (Playable map area)
Multiboard - Set the icon for (Last created multiboard) item in column 1, row (1 + (Player number of (Owner of (Dying unit)))) to ReplaceableTextures\CommandButtons\BTNCancel.blp
Multiboard - Set the text for (Last created multiboard) item in column 1, row (1 + (Player number of (Owner of (Dying unit)))) to (|c00666666 + ((Name of (Owner of (Dying unit))) + |r))
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Number of players in Players) Equal to 1
Then - Actions
Game - Display to (All players) for 10.00 seconds the text: ((Name of (Owner of (Killing unit))) + has won, the game will end in 5 seconds)
Wait 5.00 seconds
Player Group - Pick every player in Players and do (Actions)
Loop - Actions
Game - Victory (Picked player) (Show dialogs, Show scores)
Player Group - Pick every player in Defeated and do (Actions)
Loop - Actions
Game - Defeat (Picked player) with the message: Defeat!
Else - Actions
Else - Actions
For each (Integer i) from 1 to 20, do (Actions)
Loop - Actions
Set loc[1] = (Random point in (Playable map area))
Set Group = (Units within 600.00 of loc[1])
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
i Less than 20
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Number of units in Group) Greater than 0
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Dying unit) is alive) Equal to False
Then - Actions
Hero - Instantly revive (Dying unit) at loc[1], Show revival graphics
Camera - Pan camera for (Owner of (Dying unit)) to loc[1] over 0.00 seconds
Selection - Select (Dying unit) for (Owner of (Dying unit))
Else - Actions
Else - Actions
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Dying unit) is alive) Equal to False
Then - Actions
Hero - Instantly revive (Dying unit) at loc[1], Show revival graphics
Camera - Pan camera for (Owner of (Dying unit)) to loc[1] over 0.00 seconds
Selection - Select (Dying unit) for (Owner of (Dying unit))
Else - Actions
Custom script: call RemoveLocation(udg_loc[1])
Custom script: call DestroyGroup(udg_Group)
I didn't test it, but I believe it does this when a sniper dies:
Increases the kills of the killer by 1 (and update it in the multiboard)
Decrease the lives of the dying sniper by 1 (and update it in the multiboard - you'll need to add a column for it).
When there is only 1 sniper left, the game will end in 5 seconds
It will instantly revive the sniper, it also checks whether there are nearby snipers nearby (so you won't spawn near another sniper, unless you're out of luck).
When a player runs out of lives, he will be added to another group (as a spectator), his name on the multiboard will be gray and his icon will be the cancel-button.
Also, the camera-trigger isn't really good, I prefer this trigger:
CamZ
Events
Player - Player 1 (Red) types a chat message containing -distance as A substring
Conditions
Actions
-------- Maximum Value (Camera can't zoom out further) --------
Set Values[1] = 3000.00
-------- Minimum Value (Camera can't zoom in further) --------
Set Values[2] = 500.00
-------- Do not change below this line --------
For each (Integer A) from 1 to (Length of (Entered chat string)), do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Substring((Entered chat string), (Integer A), (Integer A))) Equal to
Then - Actions
Set Camera_Distance = (Real((Substring((Entered chat string), ((Integer A) + 1), (Length of (Entered chat string))))))
Else - Actions
Camera - Set (Triggering player)'s camera Distance to target to Camera_Distance over 0.20 seconds
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Camera_Distance Greater than or equal to Values[1]
Then - Actions
Camera - Set (Triggering player)'s camera Distance to target to Values[1] over 0.20 seconds
Set Camera_Distance = Values[1]
Game - Display to (All players matching ((Triggering player) Equal to (Matching player))) for 6.00 seconds the text: |c00ff0000Zoomed ou...
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Camera_Distance Less than or equal to Values[2]
Then - Actions
Camera - Set (Triggering player)'s camera Distance to target to Values[2] over 0.20 seconds
Set Camera_Distance = Values[2]
Game - Display to (All players matching ((Triggering player) Equal to (Matching player))) for 6.00 seconds the text: |c00ff0000Zoomed in...
Else - Actions
- You can change the command to absolutely anything (spaces/no spaces/any symbols/...), the trigger will change itself to the length of the command, so you don't need to do anything else ^^
If you type -distance 2600 (for example), your camera zoom will be set to 2600 (standard minimum of 500 and maximum of 3000). Note: you need to copy/paste the event for all players (not the trigger, only the event...).
If anyone could tell me how to make the ability to shoot like CS assualt
The terrain is really bad, it only has 1 real tileset (grass cliff and shop bricks not counted).
I suppose the triggers aren't good either, since apparantly you don't know how to add lives, meaning you don't know how to use variables (properly).
You can add the life-trigger and victory/defeat trigger and multiboard update trigger into 1 trigger, by the way... (yeah, that's a bit more efficient than Bugbuster96's 12 triggers + lives trigger).
Anyhow, it's supposed to be something like this:
Add this action in the trigger with "Map Init":
Set Players = (All players matching ((((Matching player) controller) Equal to User) and (((Matching player) slot status) Equal to Is playing)))
This is the "Sniper Dies"-trigger:
Sniper Dies
Events
Unit - A unit Dies
Conditions
(Unit-type of (Triggering unit)) Equal to Footman
Actions
Set lives[(Player number of (Owner of (Dying unit)))] = (lives[(Player number of (Owner of (Dying unit)))] - 1)
Set kills[(Player number of (Owner of (Killing unit)))] = (kills[(Player number of (Owner of (Killing unit)))] + 1)
Multiboard - Set the text for (Last created multiboard) item in column 2, row (1 + (Player number of (Owner of (Killing unit)))) to (String(kills[(Player number of (Owner of (Killing unit)))]))
Multiboard - Set the text for (Last created multiboard) item in column 3, row (1 + (Player number of (Owner of (Dying unit)))) to (String(lives[(Player number of (Owner of (Dying unit)))]))
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
lives[(Player number of (Owner of (Dying unit)))] Equal to 0
Then - Actions
Player Group - Remove (Owner of (Dying unit)) from Players
Player Group - Add (Owner of (Dying unit)) to Defeated
Visibility - Create an initially Enabled visibility modifier for (Owner of (Dying unit)) emitting Visibility across (Playable map area)
Multiboard - Set the icon for (Last created multiboard) item in column 1, row (1 + (Player number of (Owner of (Dying unit)))) to ReplaceableTextures\CommandButtons\BTNCancel.blp
Multiboard - Set the text for (Last created multiboard) item in column 1, row (1 + (Player number of (Owner of (Dying unit)))) to (|c00666666 + ((Name of (Owner of (Dying unit))) + |r))
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Number of players in Players) Equal to 1
Then - Actions
Game - Display to (All players) for 10.00 seconds the text: ((Name of (Owner of (Killing unit))) + has won, the game will end in 5 seconds)
Wait 5.00 seconds
Player Group - Pick every player in Players and do (Actions)
Loop - Actions
Game - Victory (Picked player) (Show dialogs, Show scores)
Player Group - Pick every player in Defeated and do (Actions)
Loop - Actions
Game - Defeat (Picked player) with the message: Defeat!
Else - Actions
Else - Actions
For each (Integer i) from 1 to 20, do (Actions)
Loop - Actions
Set loc[1] = (Random point in (Playable map area))
Set Group = (Units within 600.00 of loc[1])
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
i Less than 20
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Number of units in Group) Greater than 0
Then - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Dying unit) is alive) Equal to False
Then - Actions
Hero - Instantly revive (Dying unit) at loc[1], Show revival graphics
Camera - Pan camera for (Owner of (Dying unit)) to loc[1] over 0.00 seconds
Selection - Select (Dying unit) for (Owner of (Dying unit))
Else - Actions
Else - Actions
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
((Dying unit) is alive) Equal to False
Then - Actions
Hero - Instantly revive (Dying unit) at loc[1], Show revival graphics
Camera - Pan camera for (Owner of (Dying unit)) to loc[1] over 0.00 seconds
Selection - Select (Dying unit) for (Owner of (Dying unit))
Else - Actions
Custom script: call RemoveLocation(udg_loc[1])
Custom script: call DestroyGroup(udg_Group)
I didn't test it, but I believe it does this when a sniper dies:
Increases the kills of the killer by 1 (and update it in the multiboard)
Decrease the lives of the dying sniper by 1 (and update it in the multiboard - you'll need to add a column for it).
When there is only 1 sniper left, the game will end in 5 seconds
It will instantly revive the sniper, it also checks whether there are nearby snipers nearby (so you won't spawn near another sniper, unless you're out of luck).
When a player runs out of lives, he will be added to another group (as a spectator), his name on the multiboard will be gray and his icon will be the cancel-button.
Also, the camera-trigger isn't really good, I prefer this trigger:
CamZ
Events
Player - Player 1 (Red) types a chat message containing -distance as A substring
Conditions
Actions
-------- Maximum Value (Camera can't zoom out further) --------
Set Values[1] = 3000.00
-------- Minimum Value (Camera can't zoom in further) --------
Set Values[2] = 500.00
-------- Do not change below this line --------
For each (Integer A) from 1 to (Length of (Entered chat string)), do (Actions)
Loop - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
(Substring((Entered chat string), (Integer A), (Integer A))) Equal to
Then - Actions
Set Camera_Distance = (Real((Substring((Entered chat string), ((Integer A) + 1), (Length of (Entered chat string))))))
Else - Actions
Camera - Set (Triggering player)'s camera Distance to target to Camera_Distance over 0.20 seconds
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Camera_Distance Greater than or equal to Values[1]
Then - Actions
Camera - Set (Triggering player)'s camera Distance to target to Values[1] over 0.20 seconds
Set Camera_Distance = Values[1]
Game - Display to (All players matching ((Triggering player) Equal to (Matching player))) for 6.00 seconds the text: |c00ff0000Zoomed ou...
Else - Actions
If (All Conditions are True) then do (Then Actions) else do (Else Actions)
If - Conditions
Camera_Distance Less than or equal to Values[2]
Then - Actions
Camera - Set (Triggering player)'s camera Distance to target to Values[2] over 0.20 seconds
Set Camera_Distance = Values[2]
Game - Display to (All players matching ((Triggering player) Equal to (Matching player))) for 6.00 seconds the text: |c00ff0000Zoomed in...
Else - Actions
- You can change the command to absolutely anything (spaces/no spaces/any symbols/...), the trigger will change itself to the length of the command, so you don't need to do anything else ^^
If you type -distance 2600 (for example), your camera zoom will be set to 2600 (standard minimum of 500 and maximum of 3000). Note: you need to copy/paste the event for all players (not the trigger, only the event...).
Could you explain how you shoot in CS Assault? Is it just something like "click on the button" -> a bullet will fly in the direction you are facing?
Things that need to be changed before approval:
The terrain (definitely).
More abilities.
A better description (read my tutorial, in my signature for it).
Perhaps some game-modes.
Rejected (until updated) Note: I like sniper-maps, that's the reason for the (until updated), I expect the next version to be completely different ^^
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.