func_breakables for cs; need help Created 12 years ago2012-04-24 07:55:09 UTC by Skals Skals

Created 12 years ago2012-04-24 07:55:09 UTC by Skals Skals

Posted 12 years ago2012-04-24 07:59:54 UTC Post #305671
Hi there guys, I'm having a hard time figuring out how to do something in CS...

Long story short, What I am trying to make; 1) A box that blows up when the player touches it. and 2) A box that blows up 3 seconds after being touched, via multi_manager. AND I NEED BOTH OF THESE BOXES TO BLOW UP EVERY NEW ROUND, BUT ONLY ONCE PER ROUND.

The real problem I have is that the 'touch' flag for func_breakable doesn't really seem to do anything, and the alternate way of triggering the boxes to explode is through trigger_multiple, however the fault with this method is that the multiple can be triggered multiple times, so it can blow up twice during the same round! (Bug in cs; func_breakables can break as many times as they are triggered, even if the object itself is gone, the gibs and explosion will appear).

My crappy way of fixing this: I put a 2 minute cooldown on each trigger_multiple, so if all goes well the trigger will only happen once every round, however I can't count on that, and if the first round ends within 30 sec and trigger has been activated, the delay is then carried into the next round and the boxes aren't blowing up.

SO WHAT I REALLY NEED:
A method of triggering something when touched only once per round (but repeatable every round). Any means of accomplishing this I'll accept.

If something like a trigger_multiples can be turned off once it's activated, and then turned back on the next round, that will work too. (Trigger_auto is a simple way of turning something on/off every round, and it works)

A method that I cannot use:
Triggering the boxes with other func_breakables with stand on pressure won't work, because [u]I need the boxes to blow up when touched from all angles, so the only way is to coat the boxes with a trigger, or make them themselves explode when touched.[/u]
Skals SkalsLevel Designer
Posted 12 years ago2012-04-24 08:08:04 UTC Post #305672
I suggest moving to Source. A similar problem gave me such a headache with de_twhl2011 that I almost broke my monitor in anger.
Archie ArchieGoodbye Moonmen
Posted 12 years ago2012-04-24 08:32:11 UTC Post #305673
How about masters? Can I turn on a master to disable the trigger_multiple once it's activated, and then trigger_auto off the masters every new round? Is that possible? I think that could work. But how would I go about doing that?
Skals SkalsLevel Designer
Posted 12 years ago2012-04-24 22:17:46 UTC Post #305679
If you can upload a test map of what you've tried already, like a template for me, i can play with it and try to get it to work for ya.

this also, or something similar, might make for some fun entity minichallenges again as well ;)
My crappy way of fixing this: I put a 2 minute cooldown on each trigger_multiple, so if all goes well the trigger will only happen once every round, however I can't count on that, and if the first round ends within 30 sec and trigger has been activated, the delay is then carried into the next round and the boxes aren't blowing up.
can you delay the players from accessing the boxes and/or shorten the cooldown time so this method will work more reliably?
Captain Terror Captain Terrorwhen a man loves a woman
Posted 12 years ago2012-04-25 06:19:48 UTC Post #305681
Hi CT! This is the map I'm doing that for:

http://www.gamebanana.com/cs/maps/164996

Like in Crash Bandicoot, when you touch a nitro crate here, it blows up. And when you touch a TNT crate, theres a 3 second count down, and then it blows up!

What I have at the moment is exactly that, but with trigger_multiples that reset every 2 minutes... so the problem I have is: If the first crate blows up in the first round, and then the round ends in 30 seconds, there will be another 90 seconds before it activates in the next round, so it wont work. See the problem? The wait times are carried over rounds.

Another problem is that If one person is fast, activates it, blows it up, and then another really slow guy touches same area 2 mins later, even though nothing is there it will blow up.

I hope now you understand the problem :/

Edit:
I just tried trigger_change targets... They would have worked perfectly, but they do not reset once they've been used. They only work once and disappear. Is there a way to make them re-triggerable? If yes then that could fix my problem.
Skals SkalsLevel Designer
Posted 12 years ago2012-04-25 09:59:54 UTC Post #305682
It's beyond me why they didn't just code trigger_once to work once a round. I expect that would be quite handy.
Notewell NotewellGIASFELFEBREHBER
Posted 12 years ago2012-04-26 15:43:12 UTC Post #305740
Bump.
Skals SkalsLevel Designer
Posted 12 years ago2012-04-26 17:15:28 UTC Post #305743
"Touch" flag should work, try it with or without some other parameters and flags. Try func_button with "Touch activates" flag. Try zhlt_noclip 1 on it, NULL and BEVEL textures to make it non solid...
Posted 12 years ago2012-04-26 18:06:36 UTC Post #305744
Um, that wouldn't really do anything. I have trigger_multiple that does the same thing. What I was saying is I need a method of triggering the box to blow up [u]ONCE PER ROUND[/u]... Unless button can be made to work only once a round, there is really no point to switch from trigger_multiple to this.
Skals SkalsLevel Designer
Posted 12 years ago2012-04-26 19:04:09 UTC Post #305745
I think it can... I haven't mapped for dozens of years but I think buttons reset every round. Mess around with the settings and flags.

Just experiment man... instead of writing tons of bullshit. EXPERIMENT!
Posted 12 years ago2012-04-26 19:38:19 UTC Post #305746
Well I know that buttons don't reset every round, the delays are carried over, so if set to -1 the button will be off for all the game.
Skals SkalsLevel Designer
Posted 12 years ago2012-04-27 08:25:57 UTC Post #305763
Well lol i am rather new to mapping in goldsource (made just 1½ maps).
But i found a solution to your problem.

So you need something to reset every round start, so a func_breakable restarts every round.
My idea is to coat your breakable box with a trigger_multiple which will trigger a multi_manger, this multi_manager triggers an env_beam then triggers another multi_manger with delay of 1 sec that will switch the env beam off.

This env_beam starts from target1 to target2, in between these target lies another "breakable box" having 1 strength. When the player activates the trigger_multiple it switches on the env_beam doing 99999 dmg to the "breakable box",hence breaking it, which targets your breakable box breaking it.

Now the player can pass number of times nothing will be trigger again because the "breakable box" have been destroyed which cuts the link to your box.

Well if its not clear i did a test map (forgot to put light).
http://www.mediafire.com/?k5847qdciv6mqm7
Posted 12 years ago2012-04-27 10:57:52 UTC Post #305772
You my friend are a geenieus! Thank you very very much.
Skals SkalsLevel Designer
Posted 12 years ago2012-04-27 19:44:24 UTC Post #305795
Would making a brush trigger_multiple around the box that triggers a mm that triggers the box not work?
Posted 12 years ago2012-04-28 06:56:54 UTC Post #305799
@zeeba-g each time the player will pass through the trigger multiple the box will explode even after it has already been triggered.
Posted 12 years ago2012-04-29 03:39:47 UTC Post #305814
You must be logged in to post a response.