need help with cp_minecraft map

static2601

L2: Junior Member
Nov 4, 2010
79
4
Ok, im making a Minecraft map that is control points and I am having trouble with something i want to happen when you start capping a point, hoping you could help. They way this is setup, the dungeon is the spawn room for the red team and the object is to capture the room by lighting it up with torches then spawning there would be disabled and you would have to capture the others the same way.

So, I'm having trouble getting the torches to appear, they would, oncap, spawn one torch at a time every three seconds or so. Then, onendcap, they would be put out.
I first set it up, oncap> pt_torch1_cp1>respawn after 3 seconds, then oncap> pt_torch2_cp1> respawn, and so on til there all spawned, but when you stop capping they need to stop spawning and get put out at the same rate they were spawned. So im having trouble with that and wondering if there is an entity maybe a timer or something and how i might set it up. thanks
 

A Boojum Snark

Toraipoddodezain Mazahabado
aa
Nov 2, 2007
4,775
7,669
Firstly, I think you are misunderstanding the outputs. OnCapTeam1, OnCapTeam2 and OnEndCap all refer to the capture being completed and the point changing ownership. None of them will be useful for doing things during the capture progress.

Second, I am confused about what your torches actually are because you mention a "respawn" input. I would think just using a func_brush would be the thing to do.

Last, you wouldn't actually be able to change the lighting, since there is a very low limit on the number of dynamic lights you can have in one area (max of 2).

I can help with the logic if you explain how/what your torches are, and if you are ok with the lighting issue.
 

static2601

L2: Junior Member
Nov 4, 2010
79
4
Firstly, I think you are misunderstanding the outputs. OnCapTeam1, OnCapTeam2 and OnEndCap all refer to the capture being completed and the point changing ownership. None of them will be useful for doing things during the capture progress.

ok, when the team starts to cap that point, i want the torches to slowly appear as if their being placed, but you you die or stop capping the torches would be reversed, so they would disappear.
Second, I am confused about what your torches actually are because you mention a "respawn" input. I would think just using a func_brush would be the thing to do.
Well it was forcespawn, not respawn. i made a torch a brush and put a point_template to forcespawn it or make it reappear.

Last, you wouldn't actually be able to change the lighting, since there is a very low limit on the number of dynamic lights you can have in one area (max of 2).
im not sure about the lighting right now, but i might just make one light the turns on and off, ive done something like this with lighting before.

I can help with the logic if you explain how/what your torches are, and if you are ok with the lighting issue.
so if youve played minecraft, when you enter a dungeon, its dark and monsters spawn, and when you place 4 torches around the spawner, they stop spawning. this would be when the point is captured and you would move on to the next one. I've only just cameup with the idea last night and have been working on a proof of concept to see if it will work before i build the map.
 

A Boojum Snark

Toraipoddodezain Mazahabado
aa
Nov 2, 2007
4,775
7,669
Yeah, I've played minecraft, I just meant what you answered about the template.

So, you don't need a template. A func_brush can be enabled/disabled at will by itself. That is all your torches should be.

You will need two logic_relay, one for turning the torches on, one for turning them off. Set them up using the OnTrigger output to send Enable or Disable (not Toggle) to the torches, with whatever delays on the inputs you want.

Next, since the trigger_capture_area isn't helpful for this, make a trigger_multiple the same size and location and filter it to the blue team. Set it up with the following outputs:
Output|Target|Input|Parameter|Delay
OnStartTouchAll|the 'off' relay|CancelPending||0
OnStartTouchAll|the 'on' relay|Trigger||.05
OnEndTouchAll|the 'on' relay|CancelPending||0
OnEndTouchAll|the 'off' relay|Trigger||.05

This way, when blue touches the point the torches will begin appearing, and if they are all killed/leave they will disappear. The caveat here is that if red gets on the point and blocks the capture, the torches will continue lighting up. However, trying to account for this and have them pause would be more trouble than it is worth, since due to the unpredictability of the capture/decay rate you can't really make them match the capture progress anyway.

Last, you want this to not happen after the point is taken, so add the following to the trigger_capture_area
Output|Target|Input
OnEndCap|the trigger_multiple|Kill
 

static2601

L2: Junior Member
Nov 4, 2010
79
4
Yeah, I've played minecraft, I just meant what you answered about the template.

So, you don't need a template. A func_brush can be enabled/disabled at will by itself. That is all your torches should be.

You will need two logic_relay, one for turning the torches on, one for turning them off. Set them up using the OnTrigger output to send Enable or Disable (not Toggle) to the torches, with whatever delays on the inputs you want.

Next, since the trigger_capture_area isn't helpful for this, make a trigger_multiple the same size and location and filter it to the blue team. Set it up with the following outputs:
Output|Target|Input|Parameter|Delay
OnStartTouchAll|the 'off' relay|CancelPending||0
OnStartTouchAll|the 'on' relay|Trigger||.05
OnEndTouchAll|the 'on' relay|CancelPending||0
OnEndTouchAll|the 'off' relay|Trigger||.05

This way, when blue touches the point the torches will begin appearing, and if they are all killed/leave they will disappear. The caveat here is that if red gets on the point and blocks the capture, the torches will continue lighting up. However, trying to account for this and have them pause would be more trouble than it is worth, since due to the unpredictability of the capture/decay rate you can't really make them match the capture progress anyway.

Last, you want this to not happen after the point is taken, so add the following to the trigger_capture_area
Output|Target|Input
OnEndCap|the trigger_multiple|Kill
Ok, could you tell me how to setup the logic_relays because i cant get the torches to appear, i have it set to start disabled for all the torches and the logic_relay on is setup like this:
Output|Target|Input|Parameter|Delay
OnTrigger|torch_1|Enable||3
OnTrigger|torch_2|Enable||6
OnTrigger|torch_3|enable||9
OnTrigger|torch_4|enable||12
and for the logic_relay off:
Output|Target|Input|Parameter|Delay
OnTrigger|torch_1|Disable||12
OnTrigger|torch_2|Disable||9
OnTrigger|torch_3|Disable||6
OnTrigger|torch_4|Disable||3
 

static2601

L2: Junior Member
Nov 4, 2010
79
4
ok, i got it to work but what happens is, when your touching the trigger, and you let 2 torches enable, then leave, it will remove torch_2 after 9 seconds rather then 3. So i have another idea but can't get it to work, Tried putting a func_rotating_door with the no draw texture and no collide and have it rotate, touching a trigger for every torch there is, then on end touch it would reverse. But the problem is I can't get it to activate the torch triggers (i have the flags checked for physics objects and i also added a func_phybox handle to swing into these triggers.
 

A Boojum Snark

Toraipoddodezain Mazahabado
aa
Nov 2, 2007
4,775
7,669
I think the easiest solution would be to just have them disappear in the same order they appear. Your idea would work, as would a few others, but they all would be more work and entities than it is worth.
 

static2601

L2: Junior Member
Nov 4, 2010
79
4
I think the easiest solution would be to just have them disappear in the same order they appear. Your idea would work, as would a few others, but they all would be more work and entities than it is worth.

I think i found the best and easiest way for now. I put a func_linear and parented a func_phybox to the bottom and had it move across 4 triggers, each trigger will spawn a torch on starttouch and removes on endtouch. then nodrawed everything and moved it out of my map. So onstartcap, func_linear will move across the triggers then retract on endcap and stay on captured. I tested it and it all works good, just have to get the timing right.