• 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!
  • Read Evilhog's interview with Gregory Alper, the original composer of the music for WarCraft: Orcs & Humans 🔗Click here to read the full interview.

Ways to test and balance map.

Status
Not open for further replies.
Level 2
Joined
Jan 1, 2012
Messages
12
Hi again !

Making progress with the map means getting to test it, only problem is, all my buddies are away on holiday and the map ain't ready to be thrown onto the internet yet. So I'm going to ask for advice and guidence. LOL

1. Any ideas on how to create AI (Triggers most probably) for COMPUTER players to build towers next to paths, upgrading them as needed and also to send a random ammount of creeps affordable ?

1.1) I know of a way to forcibly get the computer player to build towers in random regions, but if I'm not mistaken doing so would create a vast ammount of leaks and having 3 computer players could slow down the game heavily at later stages.

2. How do I constantly kill spawns on a defeated player's island ?

Thank you for your time at reading this and hoping for your response.

Credits to all who helped along development would be given in a special "Arena" made inside the map and to the description a list of names.
 

Dr Super Good

Spell Reviewer
Level 64
Joined
Jan 18, 2005
Messages
27,255
1. Any ideas on how to create AI (Triggers most probably) for COMPUTER players to build towers next to paths, upgrading them as needed and also to send a random ammount of creeps affordable ?
Unfortunatly this sort of AI is very hard to do as will most likly end up a scripted sequence based on how you think the map should be played. AI can never replace humans when it comes to ballencing so you will just have to wait till your firends come back. You can however debug ballence to some extent. In a tower wars you can script spawns at regular intervals and increasing quantities to mimic realistic behaviour so you can ballence towers to some extent. Fine ballencing will always need proper human vs human combat.

1.1) I know of a way to forcibly get the computer player to build towers in random regions, but if I'm not mistaken doing so would create a vast ammount of leaks and having 3 computer players could slow down the game heavily at later stages.
Learn to program... There should be virtually no leaks next to game engine or map flaws.

2. How do I constantly kill spawns on a defeated player's island ?
Turn their spawner off for a start. You can then enumerate through all spawned units currently active and remove them. Yes removing them does create a leak but so does letting them die in every way possible (this is a fault with the game engine).
 
Level 2
Joined
Jan 1, 2012
Messages
12
Okay, so the AI would be a hard one, but not impossible, guess I'll have to take a look at that and work on it after V1 of the map is done. As for the killing (sounds quite a bit evil), I have a Spawn Trigger for each player, which I would love to have as 1 global trigger. Anyways, here's what I'm using:
  • Unit - Create 1 (Unit-type of (Sold unit)) for Player 12 (Brown) at (Center of GREEN BOTTOM SPAWN <gen>) facing Default building facing degrees
  • Unit - Create 1 (Unit-type of (Sold unit)) for Player 12 (Brown) at (Center of PURPLE LEFT SPAWN <gen>) facing Default building facing degrees
  • Unit - Create 1 (Unit-type of (Sold unit)) for Player 12 (Brown) at (Center of BLUE RIGHT SPAWN <gen>) facing Default building facing degrees
If I were to change it from that to:
  • If (blueAlive Equal to True) then do (Unit - Create 1 (Unit-type of (Sold unit)) for Player 12 (Brown) at (Center of BLUE RIGHT SPAWN <gen>) facing Default building facing degrees) else do (Do nothing)
I would be able to control the spawns to a player's location, right? The Boolean is set upon player defeat. I know this reaks of leakage, just want to get everything to work first then solve the leakage problems, or atleast reduce them.
 
Level 14
Joined
Apr 20, 2009
Messages
1,543
Okay, so the AI would be a hard one, but not impossible, guess I'll have to take a look at that and work on it after V1 of the map is done. As for the killing (sounds quite a bit evil), I have a Spawn Trigger for each player, which I would love to have as 1 global trigger. Anyways, here's what I'm using:
  • Unit - Create 1 (Unit-type of (Sold unit)) for Player 12 (Brown) at (Center of GREEN BOTTOM SPAWN <gen>) facing Default building facing degrees
  • Unit - Create 1 (Unit-type of (Sold unit)) for Player 12 (Brown) at (Center of PURPLE LEFT SPAWN <gen>) facing Default building facing degrees
  • Unit - Create 1 (Unit-type of (Sold unit)) for Player 12 (Brown) at (Center of BLUE RIGHT SPAWN <gen>) facing Default building facing degrees
If I were to change it from that to:
  • If (blueAlive Equal to True) then do (Unit - Create 1 (Unit-type of (Sold unit)) for Player 12 (Brown) at (Center of BLUE RIGHT SPAWN <gen>) facing Default building facing degrees) else do (Do nothing)
I would be able to control the spawns to a player's location, right? The Boolean is set upon player defeat.

What do you mean with being abled to control the spawns to a player's location exactly?

Also for the leaks: simply create a point variable called Temp_Location or something like that.

Then set it to be the location, use the variable instead of the location and afterwards use a Custom Script with the following code:

Call RemoveLocation(udg_Temp_Location)


So for example:

  • Your Trigger
    • Events
    • Conditions
    • Actions
      • Set Temp_Location = Center of BLUE RIGHT SPAWN <gen>
      • Unit - Create 1 (Unit-type of (Sold unit)) for Player 12 (Brown) at Temp_Location facing Default building facing
      • Custom script: call RemoveLocation(udg_Temp_Location)
Also, you might want to set Unit-type of(Sold unit) to a variable if your using it more then once. Since referencing a variable is faster then using yet another function call.
 
Status
Not open for further replies.
Top