• 0

    posted a message on Buying an ability from the unit

    @ArchaicTruth: Go You don't need to manually put the resource cost in the tooltip, in the cost+ section of the ability, look for "Cost Display" and select "Minerals". This will put the mineral cost in the tooltip for you with a mineral icon. Setting the mineral cost in the cost+ section should also mean that the ability will be unusable if the player does not have the resources to use the ability.

    Posted in: Miscellaneous Development
  • 0

    posted a message on Changing Unit Acquisition Distance

    @Roar_Man: Go

    It sounds like you want to adjust the "Attack" ability for the unit. Change the "Auto-acquire target" from 18 to whatever you want it to be.

    Posted in: Miscellaneous Development
  • 0

    posted a message on Making A Graviton Beam Tower

    @draco89123: Go

    You can probably give the ability a custom validator object, which will cause the tower to not use the ability if there is only 1 unit left within it's radius. For your upgrades, the first upgrade would make it so that if there is zero or one unit, no effect is used, if there are 2 units, it will apply the "lift 1" effect. If there are 3 or more units, it will use the "lift 2 effect". In this way, there is always at least one unit traveling.

    Posted in: Miscellaneous Development
  • 0

    posted a message on Using the Destroy persistent effect

    @Grogian: Go Why would you need the period effect or the search area? Just set the weapon's acquire target range to be equal to or less than the AoE splash range. The Land Mine should have a weapon, which has a set effect. The set effect will have 2 effects, 1) Generic Suicide (same built-in effect that the Baneling uses) and 2) A damage effect. (you don't need to use a search effect since the weapon won't trigger unless there is already a target within range and you can make the damage effect deal AoE damage without the assistance of a Search Effect).

    Posted in: Miscellaneous Development
  • 0

    posted a message on Unit: move forward until blocked, then turn and repeat.

    @Eiviyn: Go

    That's what I thought about at first too, Eiviyn, however, the problem with that method is that it doesn't command the unit to move every x seconds. Since it doesn't have small increments of movement, the game's pathing will make the unit travel around barriers, thus it's no longer walking in a straight line. While you could remove the unit's lateral movement, I don't know what that will do to the pathing (will it walk all the way to the wall or will it stop at the fork in the road trying to move to the side, but unable to do so?).

    My initial idea, before I posted, was to tell it to move to the other end of the map with lateral movement disabled and then use a "Unit has Idled" (or whatever it's called) event for a trigger. The trigger would then manually tell which direction for the unit to face and tell it to move in the opposite direction. However, as I said, I dunno what that will do to the pathing of the unit, thus I didn't bring it up. My hope was that without lateral movement, the moment the unit hits a wall, it will start idling since it's unable to move to the sides, thus giving the appearance that the unit turned around almost instantly.

    Posted in: Miscellaneous Development
  • 0

    posted a message on SC map remake

    The way that I've been describing my Cerebrate's map is that it is a 5v5 Special Forces map, where whoever kills the opposing Cerebrate first wins. I've completed the proof of concepts and I should make a demo of the alpha version in about 2 weeks or so (after my final exams are over). After looking into the option of each player controlling one unit that is spamming abilities (RPG or WoW style), I heard criticism that it was turning into DotA with more enemies. Since then, however, I discovered some tech limitations of the intended "abilities target your cursor" approach that I was planning. I'm now debating whether to return to a control-several-units, Special Forces style.

    Posted in: Project Workplace
  • 0

    posted a message on Unit: move forward until blocked, then turn and repeat.

    @DysprosiumDy: Go

    This thread makes me want to make a pool simulation game. :p

    Posted in: Miscellaneous Development
  • 0

    posted a message on Random start locations

    I hacked at it and came up with a trigger solution. I only did this for 3v3. It will be borked for 2v2 and 1v1, but you can make it similar to this, just use an if-else statement. "temp Points [6]" will store the points in order of location on the map. Once a player position has been found, it will assign that player a starting point within the "Starting Locations[6]" global variable, where the array index is the player number (0 = player 1, ..., 5 = player 6)

    This trigger should set a random player 1-3 at a random location followed by the two allied players placed at positions loc + 1 and loc + 2 (It will randomly select which player. If the loc variable surpasses the max player count, it will loop back to 0 with the cycle action). The purpose of making the initial player be random is that you don't want player 1 to always be on the left and player 3 always on the right or something like that. The purpose of making the initial location random is you don't want the first team to always be locations 0 to 2 and the second team 3 to 5 or vice versa.

    Melee Initialization
        Events
            Game - Map initialization
        Local Variables
            loc = 0 <Integer>
            player = 0 <Integer>
            temp Points = No Point <Point[6]>
            temp Num = 0 <Integer>
        Conditions
        Actions
            Variable - Set temp Points[0] = Start Point 1
            Variable - Set temp Points[1] = Start Point 2
            Variable - Set temp Points[2] = Start Point 3
            Variable - Set temp Points[3] = Start Point 4
            Variable - Set temp Points[4] = Start Point 5
            Variable - Set temp Points[5] = Start Point 6
            Variable - Set loc = (Random integer between 0 and 5)
            Variable - Set player = (Random integer between 0 and 2)
            Variable - Set Starting Locations[player] = temp Points[loc]
            Math - Cycle loc from 0 through 5
            Variable - Set temp Num = (Random integer between 1 and 2)
            General - If (Conditions) then do multiple (Actions)
                If Then Else
                    General - Else if (Conditions) then do (Actions)
                        Else If
                            player == 0
                        Then
                            General - If (Conditions) then do (Actions) else do (Actions)
                                If
                                    temp Num == 1
                                Then
                                    Variable - Set Starting Locations[1] = temp Points[loc]
                                    Math - Cycle loc from 0 through 5
                                    Variable - Set Starting Locations[2] = temp Points[loc]
                                Else
                                    Variable - Set Starting Locations[2] = temp Points[loc]
                                    Math - Cycle loc from 0 through 5
                                    Variable - Set Starting Locations[1] = temp Points[loc]
                    General - Else if (Conditions) then do (Actions)
                        Else If
                            player == 1
                        Then
                            General - If (Conditions) then do (Actions) else do (Actions)
                                If
                                    temp Num == 1
                                Then
                                    Variable - Set Starting Locations[0] = temp Points[loc]
                                    Math - Cycle loc from 0 through 5
                                    Variable - Set Starting Locations[2] = temp Points[loc]
                                Else
                                    Variable - Set Starting Locations[2] = temp Points[loc]
                                    Math - Cycle loc from 0 through 5
                                    Variable - Set Starting Locations[0] = temp Points[loc]
                    General - Else if (Conditions) then do (Actions)
                        Else If
                        Then
                            General - If (Conditions) then do (Actions) else do (Actions)
                                If
                                    temp Num == 1
                                Then
                                    Variable - Set Starting Locations[0] = temp Points[loc]
                                    Math - Cycle loc from 0 through 5
                                    Variable - Set Starting Locations[1] = temp Points[loc]
                                Else
                                    Variable - Set Starting Locations[1] = temp Points[loc]
                                    Math - Cycle loc from 0 through 5
                                    Variable - Set Starting Locations[0] = temp Points[loc]
            Math - Cycle loc from 0 through 5
            Variable - Set player = (Random integer between 3 and 5)
            Variable - Set Starting Locations[player] = temp Points[loc]
            General - If (Conditions) then do (Actions) else do (Actions)
                If
                    loc >= 5
                Then
                    Variable - Set loc = 0
                Else
                    Variable - Modify loc: + 1
            General - If (Conditions) then do multiple (Actions)
                If Then Else
                    General - Else if (Conditions) then do (Actions)
                        Else If
                            player == 3
                        Then
                            General - If (Conditions) then do (Actions) else do (Actions)
                                If
                                    temp Num == 1
                                Then
                                    Variable - Set Starting Locations[4] = temp Points[loc]
                                    Math - Cycle loc from 0 through 5
                                    Variable - Set Starting Locations[5] = temp Points[loc]
                                Else
                                    Variable - Set Starting Locations[5] = temp Points[loc]
                                    Math - Cycle loc from 0 through 5
                                    Variable - Set Starting Locations[4] = temp Points[loc]
                    General - Else if (Conditions) then do (Actions)
                        Else If
                            player == 4
                        Then
                            General - If (Conditions) then do (Actions) else do (Actions)
                                If
                                    temp Num == 1
                                Then
                                    Variable - Set Starting Locations[3] = temp Points[loc]
                                    Math - Cycle loc from 0 through 5
                                    Variable - Set Starting Locations[5] = temp Points[loc]
                                Else
                                    Variable - Set Starting Locations[5] = temp Points[loc]
                                    Math - Cycle loc from 0 through 5
                                    Variable - Set Starting Locations[3] = temp Points[loc]
                    General - Else if (Conditions) then do (Actions)
                        Else If
                        Then
                            General - If (Conditions) then do (Actions) else do (Actions)
                                If
                                    temp Num == 1
                                Then
                                    Variable - Set Starting Locations[3] = temp Points[loc]
                                    Math - Cycle loc from 0 through 5
                                    Variable - Set Starting Locations[4] = temp Points[loc]
                                Else
                                    Variable - Set Starting Locations[4] = temp Points[loc]
                                    Math - Cycle loc from 0 through 5
                                    Variable - Set Starting Locations[3] = temp Points[loc]
    
    Posted in: Miscellaneous Development
  • 0

    posted a message on Return name of region

    Yeah, the lack of being able to call regions/points by name is annoying. I had a league of points set up base0-hatchery, base1-hatchery, ect that I would have loved to just say:

    for each n 0 to 10 { array[n] = PointFromStrring("base" + n + "-hatchery") };

    I had about 12 buildings with 10 points each. :/ That woulda saved a bunch of time. Luckily, I at least realized a workaround before trying to assign all 120 or so Points and then I deleted 110 of those Points. :p

    Posted in: Triggers
  • 0

    posted a message on Unit: move forward until blocked, then turn and repeat.

    My preliminary spider sense guess work says this should be pretty doable with a trigger. The easiest should be against other units. Have an event proc every 0.2 second or so that causes the unit to move half a square in front of it.. Use a "closest unit" action and see if any unit is within the combined radius of the two units. If they are within each other's radius, then they impacted. You can then use some momentum physics to determine the effect of the impact with a new velocity (I'm talking about pinballs colliding here, so two round balls).

    Collision with walls should also be doable. Each time your 0.2 second timer procs, look ahead half a square and use the "is point pathable" condition (or something similar). This trigger will let you know if you won't be able make your next half square journey forward, thus you'll need to adjust movement. I'm not positive how to find out which direction your unit will travel in after hitting the wall as I have no idea how you'd be able to tell which way you impacted the wall. (diagonally, horizontally/vertically).

    Posted in: Miscellaneous Development
  • 0

    posted a message on Making Upgrade apply to a single unit

    I'm pretty sure the only way to do this is through behaviors, a behavior that will give them the ability while the behavior is on the unit.

    Posted in: Miscellaneous Development
  • 0

    posted a message on How to fix an attack animation that is shooting from the base of a unit.

    The only thing prefixes change is the order that they're listed in. The Data Editor is listed alphabetically (if you click on the "field" at the top of the list to gain the triangle icon next to it, which is so by default). With the prefixes, similar fields are bunched together since the prefixes themselves denote similar fields "art", "attachment", "Event", ect. Without the prefixes, fields of a similar type are intermingled. You can do a quick test of it to see what I mean, I just did so a second a go to double check before posting.

    Posted in: Miscellaneous Development
  • 0

    posted a message on How to fix an attack animation that is shooting from the base of a unit.
    Quote from Kalithumos: Go

    3.Go to your damage actor and scroll down to where you see Missile (or Art - Missile whichever setting you have on) Doubleclick this and type in the name of your Missile Actor. THIS IS VERY IMPORTANT!

    I always forget that you can turn prefixes like "Art - " off. I find it sooo much more convenient having similar fields grouped together. So after you figured out the prefix, is that what ended up fixing this?

    Posted in: Miscellaneous Development
  • 0

    posted a message on Find the size of an array?

    @s3rius:

    Here's exactly what I have so you can see what I meant:

    Base Settings <Record>
        MAX_BASES = 10 <Integer>
        MAX_DRONES = 18 <Integer>
        DEBUG_ON = false <Boolean>
        waveGroup = No Unit Group <Unit Group>
        defenseGroup = No Unit Group <Unit Group>
        waypoint = No Point <Point>
        ...
    setting <Base Settings>
    bases[10] = No Region <Region> //Thread is about this variable.
    

    I was trying to set the MAX_BASES, MAX_DRONES, and DEBUG_ON variables to constants when the errors were popping up. The setting variable is the only instance of the Base Settings record. Really, the only reason I made the 'base settings' record was because I have about a dozen variables (and constants) that I don't want to see every time I open up the list of variables. I'm not sure I get the reasoning why constants should be disabled within a record if the user wants it that way. Yeah, you create a new copy of the same constant each time the record is declared, but if the user wants it that way, what's the problem? While I haven't tested it, I'd assume setting <Base Settings> wouldn't cause an error if you set it to a constant so that you can make a record of constants, now that I think about it... Scratch that, I just looked at the Galaxy code, so this isn't possible either.

    And about the linearity of the triggers, variables, ect, yeah, they're declared linearly, but what I meant is that Blizzard added some restrictions to it so that there's nothing you can do to make the order of them make a difference in game. I'd be all for removing those restrictions, however. In essence, Blizzard made it more noob-friendly by adding these limitations.

    Posted in: Miscellaneous Development
  • 0

    posted a message on How to fix an attack animation that is shooting from the base of a unit.

    In addition to the launch attachment query, you need to make sure the "Art - Missile" field is set up correctly. I know this one got me for awhile when my Photon Cannon got messed up. I kept seeing the ball of energy coming out from my High Templar's feet and I kept thinking over and over "my launch attachment query+ is messed up". Turns out it was the Art - Missile field that was messed up. For the High Templar throwing Photon Cannon example:

    Attachment - Launch Attachment Query+: Right 0:Center (throws the missile from the right hand of my High Templar)

    Art - Missile: MageArcaneBarrageAttackMissile (<- I couldn't think of a unique ability name)

    Posted in: Miscellaneous Development
  • To post a comment, please or register a new account.