• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

Control Point Income and Housing Based Income

Status
Not open for further replies.
Level 3
Joined
Jun 3, 2010
Messages
44
Looking to add in a Income System to supplement Goldmine based RTS map I am working on. To be honest, I have no clue how to do that. My knowledge of triggers and such is very limited, and what I do know I am probably doing the hard and long way. If anyone knows some basics about Control Point and Housing based income triggers and what not, Your imput/help/aid would be muuuch appreciated!
 
Level 3
Joined
Jun 3, 2010
Messages
44
Erm...

Control Point: Same way Azeroth Wars Control Points work. You attack the circle of power, killing it and it comes under your control. There is only going to be roughly 20 control points

Housing Based: You build a building, in this case I will use the ogres

I want to limit it to 10 buildings of said base, like the Ogre Hut, The Orcish Domicile, Human Refuge. Each building will be upgradeable 5 times

Ogre Hut 1:10g per minute
Ogre Hut 2: 20g per minute
Ogre hut 3: 30g per minute
Ogre hut 4: 40g per minute
Ogre hut 5 : 50g per minute

Total income with 10 Huts at level 5 building is 500 gold per minute

And so forth for the humans and orcs


The income systems are not meant to be the only source of income, they are meant to supplement it, so as to not count any player out who only control one mine, or who has been forced into a corner.
 
Level 9
Joined
Oct 11, 2009
Messages
477
All of the actions you want are obviously in the Player section, limit number of units, adding gold/lumber....

For the income you just add (10 X (Number of (Ogre Hut))) gold/lumber to the player.



That's all info I can give you.
 
Level 9
Joined
Oct 11, 2009
Messages
477
I think you didn't understand....

Use separate actions......



If you can't understand, review the resource system that I made for my modern warfare map. Don't mind the other actions like for the gold mine resource production. I'm generous to share this.....


  • Resource System
    • Events
      • Time - Every 1.25 seconds of game time
    • Conditions
    • Actions
      • Set UpkeepPlayers[1] = (All players matching (((Matching player) Food used) Less than 51))
      • Player Group - Pick every player in UpkeepPlayers[1] and do (Actions)
        • Loop - Actions
          • Set Upkeep[(Player number of (Picked player))] = 1.00
          • Custom script: call DestroyForce(udg_UpkeepPlayers[1])
      • Set UpkeepPlayers[2] = (All players matching (((Matching player) Food used) Greater than 50))
      • Player Group - Pick every player in UpkeepPlayers[2] and do (Actions)
        • Loop - Actions
          • Set Upkeep[(Player number of (Picked player))] = 0.70
          • Custom script: call DestroyForce(udg_UpkeepPlayers[2])
      • Set UpkeepPlayers[3] = (All players matching (((Matching player) Food used) Greater than 80))
      • Player Group - Pick every player in UpkeepPlayers[3] and do (Actions)
        • Loop - Actions
          • Set Upkeep[(Player number of (Picked player))] = 0.40
          • Custom script: call DestroyForce(udg_UpkeepPlayers[3])
      • Custom script: set bj_wantDestroyGroup = true
      • Unit Group - Pick every unit in (Units in (Entire map) matching (((Matching unit) Not equal to BuildingUnderConstruction[(Custom value of (Matching unit))]) and (((((Matching unit) is alive) Equal to True) and (((Matching unit) is paused) Equal to False)) and (((Unit-type of (Matching unit) and do (Actions)
        • Loop - Actions
          • Player - Add (Integer((50.00 x Upkeep[(Player number of (Owner of (Picked unit)))]))) to (Owner of (Picked unit)) Current lumber
          • Floating Text - Create floating text that reads (+ + (String((Integer((50.00 x Upkeep[(Player number of (Owner of (Picked unit)))])))))) above (Picked unit) with Z offset 0.00, using font size 10.00, color (0.00%, 25.90%, 100.00%), and 0.00% transparency
          • Floating Text - Change (Last created floating text): Disable permanence
          • Floating Text - Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
          • Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
          • Floating Text - Change the fading age of (Last created floating text) to 3.00 seconds
          • Floating Text - Hide (Last created floating text) for (All players)
          • Floating Text - Show (Last created floating text) for (Player group((Owner of (Picked unit))))
      • Custom script: set bj_wantDestroyGroup = true
      • Unit Group - Pick every unit in (Units in (Entire map) matching ((((Unit-type of (Matching unit)) Equal to ) or (((Unit-type of (Matching unit)) Equal to ) or (((Unit-type of (Matching unit)) Equal to ) or ((Unit-type of (Matching unit)) Equal to )))) and ((((Matching unit) is alive) Equal and do (Actions)
        • Loop - Actions
          • Player - Add (Integer((75.00 x Upkeep[(Player number of (Owner of (Picked unit)))]))) to (Owner of (Picked unit)) Current gold
          • Neutral Building - Add (Integer((-75.00 x Upkeep[(Player number of (Owner of (Picked unit)))]))) gold to (Picked unit)
          • Floating Text - Create floating text that reads (+ + (String((Integer((75.00 x Upkeep[(Player number of (Owner of (Picked unit)))])))))) above (Picked unit) with Z offset 0.00, using font size 10.00, color (100.00%, 80.00%, 0.00%), and 0.00% transparency
          • Floating Text - Change (Last created floating text): Disable permanence
          • Floating Text - Set the velocity of (Last created floating text) to 64.00 towards 90.00 degrees
          • Floating Text - Change the lifespan of (Last created floating text) to 4.00 seconds
          • Floating Text - Change the fading age of (Last created floating text) to 3.00 seconds
          • Floating Text - Hide (Last created floating text) for (All players)
          • Floating Text - Show (Last created floating text) for (Player group((Owner of (Picked unit))))

It leak many player groups, its up to you to clean them...
 
Level 3
Joined
Jun 3, 2010
Messages
44
Like I said before, My knoweldge of triggers is very limited. But I think that helped a bit.

Edit: Also, If I am reading that right, It looks like the first few are based of the upkeep, Which is not what its based off of. Its just going to be straight gains. Again, I might be misunderstanding also.
 
Level 3
Joined
Jun 3, 2010
Messages
44
Wait. I think I got it :D

Which just leaves me with needing some points on the Control Point system
 
Status
Not open for further replies.
Top