Unlimited Build Range

gbomber

New Member
Reaction score
2
this question intrigued me, and I've spent the last hour trying to solve it.

the main problem is, if you want it to truly build with a build order... well, the game views build orders - the things that include green/red tiling - as an order with no target.

I can neither find a way to make building work over a distance - the builder needs to be at least touching the general center area of the target building - nor can I find a way to make it work with dummy units. even if I get a dummy unit working, there's no way I can find to get it to the building I've ordered built.

I'm only working in GUI, and all the "construction" triggers and events refer to buildings that are actually buildings in some state - even cancelled buildings - but not the 'blueprints' you can place. as far as I can tell, there's no way to get the location of 'blueprints' and exploit that to get coords to feed a dummy unit.

good luck.
 

Zurtrogx

Active Member
Reaction score
24
Oh, I see...
That doesn't sound too good at all.
Well, thank you very much for your help, gbomber.

Now, if there are any JASSers out there, is there a way to do it in JASS?
 

HydraRancher

Truth begins in lies
Reaction score
197
Probably not a good ideas BUT

1.make a spell book
add loads of abillities that target a point (base off channel maybe?) then check when they are casted, create an invis builder to build the unit, add an expiration timer.

2.Make a unit able to train units, which turn into the buildings and spawn by the rally point.
 

AceHart

Your Friendly Neighborhood Admin
Reaction score
1,495
Take your building:
Stats - Is a building: false.

Put all structures it should "build" in "Techtree - Structures build".
Set it back to "is a building: false". (Don't worry about the structures "disappearing", they are still there... somewhere)


Take an Acolyte and give him the same list of structures.


Find out what orders are needed for your structures:
Trigger:
  • Get Order
    • Events
      • Unit - A unit owned by Player 1 (Red) Is issued an order targeting a point
    • Conditions
    • Actions
      • Game - Display to (All players) the text: (String((Issued order)))



Put them in a list:
Trigger:
  • Init
    • Events
      • Map initialization
    • Conditions
    • Actions
      • Set Orders[1] = farm
      • Set Orders[2] = townhall
      • Set Orders[3] = humanbarracks
      • Set Orders[4] = altarofkings
      • Set Orders[5] = humanlumbermill
      • Set Orders[6] = scouttower
      • Set OrdersCount = 6


Trigger the rest:
Trigger:
  • Build
    • Events
      • Unit - A unit Is issued an order targeting a point
    • Conditions
      • (Unit-type of (Triggering unit)) Equal to Watch Tower
    • Actions
      • For each (Integer A) from 1 to OrdersCount, do (Actions)
        • Loop - Actions
          • If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            • If - Conditions
              • (String((Issued order))) Equal to Orders[(Integer A)]
            • Then - Actions
              • Set Point = (Target point of issued order)
              • Unit - Create 1 Acolyte for (Owner of (Triggering unit)) at Point facing Default building facing degrees
              • Unit - Add a 7.00 second Generic expiration timer to (Last created unit)
              • Custom script: call IssuePointOrderLoc(bj_lastCreatedUnit, udg_Orders[bj_forLoopAIndex], udg_Point)
              • Custom script: call RemoveLocation( udg_Point )
            • Else - Actions



Optionally with an Acolyte that has no model.
And, just to be sure, remove his attack and make him invulnerable / locust.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top