Staredit Network > Forums > Modding Assistance > Topic: Buildin' a Sentry
Buildin' a Sentry
Feb 28 2016, 3:02 am
By: SCRuler  

Feb 28 2016, 3:02 am SCRuler Post #1



Would it be possible to have a non-worker unit (say a modded firebat) be able to build/spawn and/or repair buildings/units?
Say, take a firebat hero or whatever. Would you be able to make him gain the ability to repair mechanical units? And/or would you be able to make a spell or give the order to build a unit/small building (like for example a sentry type thing, based perhaps on the installation floor gun)?



None.

Feb 28 2016, 7:12 am Sand Wraith Post #2

she*

I've gotten a Zealot to build and repair buildings the same way that SCVs do it. I don't remember if you need any more animations to script. The Firegraft portion: you have to check the requirements for each building/unit your Firebat can build (make sure that it can be built by the default worker, and also the Firebat using something like "Or... Current Unit is.... Firebat").

After that, all you really need is to copy in some build buttons from the SCV's sub-menus (or use a sub-menu yourself).




Feb 28 2016, 8:02 am Corbo Post #3

ALL PRAISE YOUR SUPREME LORD CORBO

Quote from Sand Wraith
I've gotten a Zealot to build and repair buildings the same way that SCVs do it. I don't remember if you need any more animations to script. The Firegraft portion: you have to check the requirements for each building/unit your Firebat can build (make sure that it can be built by the default worker, and also the Firebat using something like "Or... Current Unit is.... Firebat").

After that, all you really need is to copy in some build buttons from the SCV's sub-menus (or use a sub-menu yourself).

Yeah, you do need the iscript animations for it. It's something like SpecialAnimation2 or something like so. I suggest just looking at how SCV works, what it does when it's repairing/building and doing so in the other unit's iscript as well.

GL HF GG NO RM NR 20

Post has been edited 2 time(s), last time on Apr 8 2016, 2:36 am by Roy.




Feb 28 2016, 9:24 pm SCRuler Post #4



Thats another thing: Can I use the installation turrets as the buildable sentries?
Also, how do I make fresh sub-menus? I've been trying to make one so larva can morph into the hero strains.
I tried but I hit a roadblock.



None.

Feb 28 2016, 9:45 pm Corbo Post #5

ALL PRAISE YOUR SUPREME LORD CORBO

Sure. The installation turrets will need their building animations as well, though.

As for the fresh sub-menus, it's just a matter of creating a new button set and then calling to the new button set ID. Watch how SCVs do it so you can know which actions/conditions to use.

Post has been edited 2 time(s), last time on Apr 8 2016, 2:34 am by Roy.




Feb 28 2016, 10:32 pm SCRuler Post #6



I tried, but the change displayed buttons function seems to call to a "unit id", which is listed in the first tab on firegraft and includes such things as "replay:paused"
Could you take a look in firegraft? Just to cover bases my version is 1.16.1 I think.

I'll start looking at building animations and iscript for my engineer hero.

is it possible to make a structure/like unit that acts as a healer/energy regenerator?

Also I took a look at the iscripts, and the SCV one has "SCVAlmostBuilt" followed by SCVLocal00 in it, which appears to be the build animation. It lists SpecialState1 and 2 as empty.
SO should I use an "AlmostBuilt" animation entry for, say, the firebat, if I want to let the firebat hero do the sentry buildin'?

Also, the iscripts for the gun traps are weird. they use almostbuilt entries for their triggering and attack animation.

Attachments:
ShitModBeta1.exe
Hits: 2 Size: 2057.01kb

Post has been edited 2 time(s), last time on Feb 28 2016, 11:53 pm by SCRuler.



None.

Feb 29 2016, 1:35 am Corbo Post #7

ALL PRAISE YOUR SUPREME LORD CORBO

Quote from SCRuler
I tried, but the change displayed buttons function seems to call to a "unit id", which is listed in the first tab on firegraft and includes such things as "replay:paused"
Could you take a look in firegraft? Just to cover bases my version is 1.16.1 I think.

Ya, it should. The action variable number should call a button set for an existing unit. I am unsure if you can add more "unit" buttons sets. I know that you can make these units call a custom button set you add in FG. Either way there should be plenty unused units which you could assign a button set and call THAT unit as your action variable.

Post has been edited 2 time(s), last time on Apr 8 2016, 2:33 am by Roy.




Feb 29 2016, 4:10 am SCRuler Post #8



Quote from Corbo
Quote from SCRuler
I tried, but the change displayed buttons function seems to call to a "unit id", which is listed in the first tab on firegraft and includes such things as "replay:paused"
Could you take a look in firegraft? Just to cover bases my version is 1.16.1 I think.

Ya, it should. The action variable number should call a button set for an existing unit. I am unsure if you can add more "unit" buttons sets. I know that you can make these units call a custom button set you add in FG. Either way there should be plenty unused units which you could assign a button set and call THAT unit as your action variable.
I've done that, I applied the 'explarva' button set i made for the hero strains to the "overmind" unit id and tried to use that. But it doesn't work for whatever reason. I'm probably doing something wrong.
And strangely, I've somehow removed functionality from the upgrades I tried to make. They were there (at least a couple were) but now they're gone.



None.

Feb 29 2016, 4:10 am SCRuler Post #9



Quote from Corbo
Quote from SCRuler
I tried, but the change displayed buttons function seems to call to a "unit id", which is listed in the first tab on firegraft and includes such things as "replay:paused"
Could you take a look in firegraft? Just to cover bases my version is 1.16.1 I think.

Ya, it should. The action variable number should call a button set for an existing unit. I am unsure if you can add more "unit" buttons sets. I know that you can make these units call a custom button set you add in FG. Either way there should be plenty unused units which you could assign a button set and call THAT unit as your action variable.
I tried doing that, by using the "overmind" unit ID which had nothing attached, and applying the "explarva' button set I made. Yet nothing happened.
The "disabled" thing appears, but when I research the "spell" the button vanishes.
Also, certain upgrades I had in place to research to enhance, say, Hero armor and the Yamato Cannon's damage, have vanished mysteriously.



None.

Feb 29 2016, 5:33 am Sand Wraith Post #10

she*

You can't add more button sets, you can only use some units that aren't used in your mod, more or less.




Feb 29 2016, 5:50 am Corbo Post #11

ALL PRAISE YOUR SUPREME LORD CORBO

Quote from Sand Wraith
You can't add more button sets, you can only use some units that aren't used in your mod, more or less.
I am pretty sure you can. You can at least add new entries for button sets in firegrafts, I am unaware if they just don't work.

What you cannot do is add new units. Am I wrong?

Post has been edited 2 time(s), last time on Apr 8 2016, 2:32 am by Roy.




Feb 29 2016, 6:38 am Pr0nogo Post #12



You can't add new units. You can add new button sets. I do it all the time in FireGraft.




Mar 1 2016, 5:49 pm SCRuler Post #13



Quote from Pr0nogo
You can't add new units. You can add new button sets. I do it all the time in FireGraft.
I'm aware.
I just managed to get the larva button working somehow. Pretty stoked.

Now, I just need to find a means to add a proper animation for the engie hero to build those traps.

Post has been edited 2 time(s), last time on Mar 2 2016, 12:43 am by SCRuler.



None.

Options
  Back to forum
Please log in to reply to this topic or to report it.
Members in this topic: None.
[06:25 pm]
m.0.n.3.y -- Here's another question. I'm using switch randomization for powerups. There are 9 powerups, and I only want any of the powerups to appear only about 30% of the time. So I was just going to use 5 switches for a total of 32 options and have the other 23 results restart the randomization process. Is there a better way to do this?
[06:04 pm]
m.0.n.3.y -- NudeRaider
NudeRaider shouted: m.0.n.3.y Pro and Demon already gave correct answers, but let me add a pretty elegant way: Have the detection trigger owned by whoever is convenient for you. A single computer player, a force, all players - it doesn't matter. Now detect for the arbiter in conditions - also doesn't really matter how. In actions just set a dc to 1 for all players or the force that should have the text displayed. It will set the dc for each player to 1 individually. Because of this you can make a 2nd trigger that checks for the dc for current player and remove the dc for current player afterwards.
Ok that makes perfect sense NudeRaider
NudeRaider shouted: This method also has a bonus use: If you detect the arbiter in conditions for current player (set trigger owned accordingly!) then you can do the following: Add 1 to dc for current player AND add 1 to dc for all players. And in your 2nd trigger you can distinguish between players that just are informed and the player that actually had it, because their dc will be 2 instead of 1. So you can give them an additional reward or something dynamically.
Wow that's awesome! I'll definitely be doing this. Thanks for the tip, that's really cool
[05:29 pm]
NudeRaider -- This method also has a bonus use: If you detect the arbiter in conditions for current player (set trigger owned accordingly!) then you can do the following: Add 1 to dc for current player AND add 1 to dc for all players. And in your 2nd trigger you can distinguish between players that just are informed and the player that actually had it, because their dc will be 2 instead of 1. So you can give them an additional reward or something dynamically.
[05:27 pm]
NudeRaider -- m.0.n.3.y
m.0.n.3.y shouted: NEW QUESTION: How is it possible to show text to all players when something occurs? EX: Player 1 builds an Arbiter. Trigger says, When player 1 builds an Arbiter, do something, then remove the Arbiter. Now, I'd like text to show for all other players when P1 builds an Arbiter that says "P1 built an arbiter!". But how is this possible when the the original trigger that detects if P1 built an Arbiter then removes the Arbiter in it's actions? Like, the Arbiter is detected as built, then Action occurs for P1, then Arbiter is removed. So how can you detect if the Arbiter is built to show text to the other plays saying "P1 built an Arbiter" if the other trigger quickly removes the Arbiter? Does that make sense?
Pro and Demon already gave correct answers, but let me add a pretty elegant way: Have the detection trigger owned by whoever is convenient for you. A single computer player, a force, all players - it doesn't matter. Now detect for the arbiter in conditions - also doesn't really matter how. In actions just set a dc to 1 for all players or the force that should have the text displayed. It will set the dc for each player to 1 individually. Because of this you can make a 2nd trigger that checks for the dc for current player and remove the dc for current player afterwards.
[05:22 pm]
NudeRaider -- that's why the All Players thing is neat: When one player runs a wait, their copy of hypers will actually be blocked. But the hyper effect will not be disrupted because the hypers of all the other players are still running.
[05:21 pm]
NudeRaider -- *running at the same time for the same player.
[05:20 pm]
NudeRaider -- m.0.n.3.y
m.0.n.3.y shouted: Mini Moose 2707 Shit. Ok what are the exact circumstances where using wait triggers causes wait blocks and messes things up? EX: If player 8 is a computer and has hyper triggers at the bottom of his list, can I use a few of triggers on each human player 1-6 with a few waits each lasting 50 - 1000ms? I've read the articles in SEN Wiki but still not super clear on it :/
simple: 2 waits running at the same time. Hyper triggers constantly block each other, but they have no other purpose than to force another trigger loop, and stay in that "blocking each other" state as long as possible (=NEO)
[05:17 pm]
NudeRaider -- Dem0n
Dem0n shouted: It's recommended to never use waits if you have hyper triggers.
yes and no. If you have to ask: yes. If you know what you're doing, you can use them in a non-disruptive manner.
[05:15 pm]
NudeRaider -- m.0.n.3.y
m.0.n.3.y shouted: ALSO: @NudeRaider for your "other setup" you mean give the hypers to the "All Players" player checkbox, not to each player individually, right?
That's equivalent. At the start of a game sc parses triggers and creates copies of triggers owned by player groups (forces and all players) to each player that is part of that group. During runtime there's only individual trigger owners.
[04:04 pm]
m.0.n.3.y -- Dem0n
Dem0n shouted: That won't work. And it's one extra trigger with 2 actions. Hardly extra work.
You're right. Thank you!
Please log in to shout.


Members Online: Roy, m.0.n.3.y, Wing Zero