• 0

    posted a message on How to block air pathing?

    Under Terrain, click on the Pathing icon. That should give you a "No Pathing" option to paint your map with.

    Posted in: Miscellaneous Development
  • 0

    posted a message on Requirements on shared unit ability

    I've got a map in which two players are trying to defend a shared building (Player 11 - Alliance with Shared Control/Spending/etc) as well as some of their own buildings (Players 1 and 2). If the shared building dies, they lose. Since there are no builder units in my map I have all buildings spawning via triggers at specified locations. However if all of the buildings get destroyed, I want the player to be able to pay to rebuild their basic structure.

    I added the ability to the Shared Building. It works and spawns the building as I want it to. The problem is I want the ability to be disabled for the player if his basic building is alive.

    I set the Requirements to: Use - Not (Tech Tree Cheat) - Count Unit Pylon Completed (Tech Tree Cheat)

    Then I added this requirement to the Ability (not the Command Card but the ability itself under Abilities -> Info+) requirement. It still shows up and allows me to spawn a new Pylon regardless of if there is a Pylon already on my map for that player.

    I'm not sure if it's a Shared Control issue meaning that the game is checking whether Player 11 has a Pylon instead of Player 1 or if I did something with the requirements wrong.

    Posted in: Miscellaneous Development
  • 0

    posted a message on Ability to allow Firebat to shoot out of both hands
    Quote from PSGMud: Go

    Do I have to make a dummy actor/model for this?

    Right now he shoots out of 1 hand, and I can't get him to do both.

    The default settings have him shoot out of both. You must have changed something to cause him to only shoot out of one hand.

    Posted in: Miscellaneous Development
  • 0

    posted a message on [Library] STARCODE v1.4

    Apparently I'm doing something incredibly wrong. I'm trying to basically create an Achievement system where it tracks total number of kills, wins, losses and a few other specific Achievements and then assigns you a rank based off of those Achievements. When I run through a single game, the game runs perfectly. It levels me up when I complete Avhievements and tracks my total number of kills. However, once I load the game the second time, it sets my ranks to 21, my wins to around 3,000, my losses to around 7,000, and my total kills to 0.

    I do have a dialog box that tracks the Total Kills and it shows the correct number at the end of the game. It just changes after I load a new game. Note that most of the Achievements are supposed to be set to either 0 or 1 to see if they're complete. Only rank, wins, losses, and kills go higher than that.

    Here's my code I'm using. The first trigger is what I use at the Map Init phase.

    Load Achievements
        Events
        Local Variables
            TempString = "" <String>
            TempInteger = 0 <Integer>
        Conditions
        Actions
            Bank - Preload and synchronize bank "UnderSiege" for player 1
            Bank - Preload and synchronize bank "UnderSiege" for player 2
            Bank - Preload and synchronize bank "UnderSiege" for player 3
            Bank - Preload and synchronize bank "UnderSiege" for player 4
            Bank - Preload and synchronize bank "UnderSiege" for player 5
            Bank - Preload and synchronize bank "UnderSiege" for player 6
            Bank - Preload and synchronize bank "UnderSiege" for player 7
            Bank - Preload and synchronize bank "UnderSiege" for player 8
            Player Group - Pick each player in (Active Players) and do (Actions)
                Actions
                    Bank - Open bank "UnderSiege" for player (Picked player)
                    General - If (Conditions) then do (Actions) else do (Actions)
                        If
                            (Bank (Last opened bank) has "UnderSiege" in section "UnderSiege") == true
                        Then
                            Variable - Set TempString] = (Load key "UnderSiege" of section "UnderSiege" from bank (Last opened bank) as a String)
                        Else
                    <Starcode> Start Code()
                    Variable - Set TempString = (<Starcode> Decrypt String(TempString], "MyKey"))
                    Variable - Set TempString = (<Starcode> Decompress String(TempString))
                    <Starcode> Set Code(TempString)
                    Variable - Set Achieve Tutorial[(Picked player)] = (<Starcode> Get Integer Value(1))
                    Variable - Set Achieve 4 Towers[(Picked player)] = (<Starcode> Get Integer Value(2))
                    Variable - Set Achieve 1000 Kills[(Picked player)] = (<Starcode> Get Integer Value(3))
                    Variable - Set Achieve 5000 Kills[(Picked player)] = (<Starcode> Get Integer Value(4))
                    Variable - Set Achieve 10000 Kills[(Picked player)] = (<Starcode> Get Integer Value(5))
                    Variable - Set Achieve 50000 Kills[(Picked player)] = (<Starcode> Get Integer Value(6))
                    Variable - Set Achieve 1 Win[(Picked player)] = (<Starcode> Get Integer Value(7))
                    Variable - Set Achieve 10 Wins[(Picked player)] = (<Starcode> Get Integer Value(8))
                    Variable - Set Achieve 100 Wins[(Picked player)] = (<Starcode> Get Integer Value(9))
                    Variable - Set Achieve Future Use[(Picked player)] = (<Starcode> Get Integer Value(10))
                    Variable - Set Achieve Rank[(Picked player)] = (<Starcode> Get Integer Value(21))
                    Variable - Set Achieve Total Wins[(Picked player)] = (<Starcode> Get Integer Value(9999))
                    Variable - Set Achieve Total Losses[(Picked player)] = (<Starcode> Get Integer Value(9998))
                    Variable - Set Achieve Total Kills[(Picked player)] = (<Starcode> Get Integer Value(999999))
                    General - If (Conditions) then do (Actions) else do (Actions)
                        If
                            Achieve Rank[(Picked player)] == 0
                        Then
                            Variable - Set Achieve Rank[(Picked player)] = 1
                        Else
    

    And then this is what happens when I check for win conditions and end the game in Victory (it's the same code for the Defeat conditions).

                                    <Starcode> Start Code()
                                    <Starcode> Store Integer Value(Achieve Tutorial[(Picked player)], 1)
                                    <Starcode> Store Integer Value(Achieve 4 Towers[(Picked player)], 2)
                                    <Starcode> Store Integer Value(Achieve 1000 Kills[(Picked player)], 3)
                                    <Starcode> Store Integer Value(Achieve 5000 Kills[(Picked player)], 4)
                                    <Starcode> Store Integer Value(Achieve 10000 Kills[(Picked player)], 5)
                                    <Starcode> Store Integer Value(Achieve 50000 Kills[(Picked player)], 6)
                                    <Starcode> Store Integer Value(Achieve 1 Win[(Picked player)], 7)
                                    <Starcode> Store Integer Value(Achieve 10 Wins[(Picked player)], 8)
                                    <Starcode> Store Integer Value(Achieve 100 Wins[(Picked player)], 9)
                                    <Starcode> Store Integer Value(Achieve Future Use[(Picked player)], 10)
                                    <Starcode> Store Integer Value(Achieve Rank[(Picked player)], 21)
                                    <Starcode> Store Integer Value(Achieve Total Wins[(Picked player)], 9999)
                                    <Starcode> Store Integer Value(Achieve Total Losses[(Picked player)], 9998)
                                    <Starcode> Store Integer Value(Achieve Total Kills[(Picked player)], 999999)
                                    Variable - Set TempString = (<Starcode> Compress String((<Starcode> Get Code())))
                                    Variable - Set TempString = (<Starcode> Encrypt String(TempString, "MyKey"))
                                    Bank - Open bank "UnderSiege" for player (Picked player)
                                    Bank - Store string TempString as "UnderSiege" of section "UnderSiege" in bank (Last opened bank)
                                    Bank - Save bank (Last opened bank)
                                    Game - End game in Victory for player (Picked player) (Show dialogs, Show score screen)
    

    What did I do wrong?

    Posted in: Trigger Libraries & Scripts
  • 0

    posted a message on Game Variants - Number of Players
    Quote from Eiviyn: Go

    @siege911: Go

    You did miss something. I'd explain here but the tutorial says it far better than I could. In short, make 2 game variants, one of which has 8 slots, the other has 8 slots with 4 closed.

    Oh I see. It's under Player Controller in Game Variants. The Tutorial said to go to Map -> Properties to setup players (I assumed that meant "Player Properties" as just "Properties" is not an option). Under that area, there is no way to specify player controllers by Variant, only for the whole map. That's why I was getting so confused. The tutorial sent me in the wrong direction, which is why I asked the question here (and kept getting the run-around). I didn't see the Player Controller Attribute under the Game Variant section.

    That makes more sense now. Thanks.

    Posted in: Miscellaneous Development
  • 0

    posted a message on Game Variants - Number of Players
    Quote from BumpInTheNight: Go

    @siege911: Go

    There is a great tutorial in the tutorial section about how to setup game modes like what you're looking to do. Check it out in the resource subforum's tutorial section under tutorial listing's beginners section for the complete guide to lobby and game modes. Its a great tutorial that I highly recommend looking at along with many of the other great tutorials listed there in the tutorial section. It was also the first hit when I did a search for 'game mode' up in the search box which I always tend to use before posting new threads with questions to see if someone's already answered it. :)

    Tutorial.

    Already looked over that tutorial before posting this question. Didn't give me information about the specific thing I am looking to do unless I missed something.

    Posted in: Miscellaneous Development
  • 0

    posted a message on Game Variants - Number of Players

    I want to create a map in which there is an 8 player game mode and a 4 player game mode. Is there a way to set it up so that I can do a Game Variant where there are 8 spots in the lobby as well as a variant where there are 4 spots in the lobby?

    The only other thing I can think of is running a Trigger in game in which checks if there are 4 or less players and prompting the players for a 4 player option, but I'd prefer to do it on the lobby level.

    Posted in: Miscellaneous Development
  • 0

    posted a message on Player Color in Dialog Item (Label)

    @Grogian: Go

    Worked like a charm. That's odd though. Thanks.

    Posted in: Miscellaneous Development
  • 0

    posted a message on Player Color in Dialog Item (Label)

    Here's my code:

    Dialog - Create a label for dialog (Last created dialog) with the dimensions (130, 20) anchored to Top Left with an offset of (130, (((Picked player) * 20) + 75)) with the text (Name of player (Picked player)) color set to (Color((Default player (Picked player) color))) text writeout set to false with a writeout duration of 2.0
    

    The player name shows up with no problem, however it stays as white when the player color is red. Did I miss something?

    Posted in: Miscellaneous Development
  • 0

    posted a message on conditions aren't even working

    @FIRETRUCKEU: Go

    Are those 2 different conditions and you want to check if both are correct before running the action? If so, the Editor treats it as an OR statement I believe. You need to have the condition be an AND condition and put those two conditions under the AND condition.

    Posted in: Miscellaneous Development
  • 0

    posted a message on [Library] STARCODE v1.4

    Just to verify what I'm doing is correct:

    We take a bunch of Integer values that correlate with various saves or upgrades or whatever and then run those integers through the Starcode using Store Integer ([integer number], [maximum value]). The maximum value is an actual maximum value but also an identifier on how you retrieve the integer you are looking for. Anyways, then you save the string (TempString in the example map) to a Bank so it's an encrypted save.

    When you load the map again, you load the string from the Bank, run it through the Starcode and load the Integers by assigning various variables by doing Variable - Set [whatever] = (<Starcode> Get Integer Value([maximum value from above Store command]). Then you can just have your game load the appropriate upgrades based off of those integers.

    Is that about correct?

    Posted in: Trigger Libraries & Scripts
  • 0

    posted a message on Help a noob with spawning/ai triggers

    @Noofertonson: Go

    You need to issue an order targeting a point. That gets them to attack.

    The one caveat is that by default you only order a single unit to attack. The easiest way to do this is do a For-Each statement. Let's say you want 40 Zerglings to spawn and attack the Player Starting Point.

    For each [Insert Your Variable Here] from 1 - 40 Increment 1 Create 1 Zergling at some point Issue Order to Last Created Unit to Attack Targeting Player 1 Starting Location

    This will create 40 Zerglings all at once and attack. Additionally, if you want more of a stream of units instead of a large group, you can add "Wait 1.0 Game Time seconds" or any other value of your choice and they will spawn one at a time and attack. Play with the wait time to get a tight line or a widely spread line.

    Posted in: Triggers
  • 0

    posted a message on triggering - hero pick menu at map start

    @godakuma: Go

    Here's the simple answer assuming you know at least a little about triggers, otherwise search for some tutorials about the specifics.

    Basically, you would create a bunch of Dialog Buttons on Map Initialization. Each one would be assigned a particular variable as dialog buttons don't really work unless they are assigned to a variable. They could be text dialog buttons or images. Whatever your fancy but text is easier.

    Then you would have a trigger that checks if a button is pressed. You check which button is pressed via it's variable and assign a Unit Type variable associated with the button.

    Then you can run a trigger that starts your map, spawns your hero (based off of the Unit Type variable), etc.

    Posted in: Triggers
  • 0

    posted a message on Behavior that modifies ability energy cost
    Quote from Gruuj: Go

    I'm trying to work out how to create a behaviour that when applied to a unit modifies the energy cost of the unit's abilities.

    I thought I could do it through a modify unit effect but as far as I can tell all the stuff related to cost in a modify unit effect is bugged or flat out doesnt work. For instance, if I choose an ability and the change the vital energy value all it does is remove the energy cost of the chosen ability multiplied by the value in the vital field from the units energy.

    So basically, I'm wondering if anybody knows how to do this. I'm probably just missing something obvious.

    Does it have to be a "Behavior"? Can it be an Upgrade? If so, look up the "(Medic) Stabalizer Medpacks" Upgrade. It's under the Campaign dependencies but that will do what you are wanting as a button upgrade.

    Posted in: Miscellaneous Development
  • 0

    posted a message on Removing ability from unit
    Quote from Lillehest: Go

    @siege911: Go

    I have a neutral unit which has an ability that lets you take control of it. Once you've taken control of it i want that ability to disappear, since it no longer has any use.

    You still would likely do this under the Requirements are in the Data Editor. Look up any of the Learn [Ability] Requirements. Under Requirement+ they stop Showing the Upgrade if it's "Queued or Better" but you can change this to "Complete" or whatever you want. It doesn't even have to be a legitimate Upgrade. It can just be a placeholder Upgrade that does nothing.

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