computer must attack you with random units, how??

MissKerrigan

Active Member
Reaction score
23
Hi Guys,

Alright, what I want is quitte simple, the computer must attack you with random units
The computer may only attack you with the next types of units, there are:

- marines
- stalkers
- hydralisks

The 3 units you see above here has ALL 3 sizes:

- small
- medium
- large

(small marines, medium marines, large marines etc...)

So if you can count there are 9 types of enemy units :)
I duplicated the marine, stalker and the hydralisk 3 times and made it my own units diffirent sizes in the editor
Now I got 2 things I wanna create:

1. the computer must attack you with a RANDOM unit type
2. first it attacks you with 4 units, then 6, then 8 etc...

(the computer may only attack you with ONE type of unit, all stalkers, all marines or all hydralisks)

I know this should be simple to create, but I just don't know which variables and stuff I need for this

note: players are in middle and enemies coming from 4 sides, they must come from random locations but all units must come together from the same location

Can you help me with this?

MissKerrigan
 

Dave312

Censored for your safe viewing
Reaction score
269
How do you determine whether it is the small, medium or large version of the unit the computer attacks with? Is it a random mix? Or does it change over time (ie starts off only using small units, then after say 10 minutes the computer only uses medium unit etc)

Also how often should the computer attack the player?
 

MissKerrigan

Active Member
Reaction score
23
ok,

You and your team-mates having diffirent units
For example, the marauder deals more damage to large units while the ghost hits small better
That's why I make the enemies 'small' 'medium' and 'large'

I just having trouble with the triggers
Here are the game rules in case I wasn't clear enough:

- the computer may only attack you with ONE kind of unit type, so this means not 2 hydralisks + 2 marines for example, or 2 large hydralisk + 4 small hydralisks

- the computer must attack you every 2 minutes
- the computer can attack you with the next units:

1. small marines
2. medium marines
3. large marines
4. small hydralisks
5. medium hydralisks
6. large hydralisks
7. small stalkers
8. medium stalkers
9. large stalkers

- after 2 minutes, the computer must attack you with 4 units
- after 4 minutes, the computer must attack you with 6 units

etc...

although! after 10 minutes the computer should increase the number to 15 and then +5 every time

Example:

2 minutes: computer attacks with 4 medium hydralisks
4 minutes: computer attacks with 6 small stalkers
6 minutes: computer attacks with 8 large hydralisks
8 minutes: computer attacks with 10 large marines
10 minutes: computer attack with 15 large stalkers

(this up here is an example, the computer could also attacks you with 4 small marines the first attack)

- there are four diffirent locations where the computer must coming from:

1. North
2. West
3. South
4. East

(the players are in the middle of the map)

Am I clear now?

MissKerrigan
 

X-maul

AKA: Demtrod
Reaction score
201
You will just have to create a global variable of type "Unit Type" with the array size of 9.

You then create a trigger which runs at map initialization that will set your unit types into the variable.
It would look something like this:
Code:
Start
    Events
        Game - Map initialization
    Local Variables
    Conditions
    Actions
        Variable - Set UnitTypeVariable[0] = small marines
        Variable - Set UnitTypeVariable[1] = medium marines
        Variable - Set UnitTypeVariable[2] = large marines
        Variable - Set UnitTypeVariable[3] = small hydralisks
        Variable - Set UnitTypeVariable[4] = medium hydralisks
        Variable - Set UnitTypeVariable[5] = large hydralisks
        Variable - Set UnitTypeVariable[6] = small stalkers
        Variable - Set UnitTypeVariable[7] = medium stalkers
        Variable - Set UnitTypeVariable[8] = large stalkers
Now you will need a Global Variable of the type "Integer", this will set the amount of units spawned each time. (The initial value of this variable should be set to 4)
I would do the increasing number by having a trigger that increases it depending on the time. So make it look like this:
Code:
Increasing Trigger
    Events
        Timer - Elapsed time is 240.0 Game Time seconds
    Local Variables
    Conditions
    Actions
        Variable - Set IntegerVariable = (IntegerVariable + 2)
        General - Wait 120.0 Game Time seconds
        Variable - Set IntegerVariable = (IntegerVariable + 2)
        General - Wait 120.0 Game Time seconds
        Variable - Set IntegerVariable = (IntegerVariable + 2)
        General - Wait 120.0 Game Time seconds
        Variable - Set IntegerVariable = 15
        General - Wait 120.0 Game Time seconds
        General - Repeat (Actions) forever
            Actions
                Variable - Set IntegerVariable = (IntegerVariable + 5)
                General - Wait 120.0 Game Time seconds
The spawning trigger would be pretty standard, I asume you know how to make spawn units and make them attack and such, but to spawn the random units, you will use this:

Code:
        Unit - Create IntegerVariable UnitTypeVariable[(Random integer between 0 and 8)] for player 1 at Point using point facing (No Options)
You just use this as the spawning action, but if you need any further help, you just make sure to ask :)
 

MissKerrigan

Active Member
Reaction score
23
thanks Mister x-maul! x

- but the repeating actions must not repeat the actions which tells the units coming again after 2 minutes

- create 'integerVariable UnitTypeVariable'?? where can I find this?
 

X-maul

AKA: Demtrod
Reaction score
201
- create 'integerVariable UnitTypeVariable'?? where can I find this?
It's a normal "Unit - Create" action, and instead of a number, I set the IntegerVariable. And instead of a unit type, i set the UnitTypeVariable.
- but the repeating actions must not repeat the actions which tells the units coming again after 2 minutes
Please rewrite that :)
I'm not sure I understand it. Do you mean that that action that spawns units must not repeat in the repeat action?
 

MissKerrigan

Active Member
Reaction score
23
haha yes I was a bit unclear ehm...

Your repeat actions trigger, does it repeat all of the actions?
This should be wrong, because the units must not come after 2 minutes when the fifth round is on
 

X-maul

AKA: Demtrod
Reaction score
201
The "Repeat" action does only repeat the action inside the action :)

In this case it will increase the valie of the variable, wait 120 seconds and then do it again.
This trigger wont spawn any units. You should have a seperate trigger spawning your units.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top