How to disable 2 trigger_relay's running Created 7 years ago2016-11-10 14:06:01 UTC by Zerotech Zerotech

Created 7 years ago2016-11-10 14:06:01 UTC by Zerotech Zerotech

Posted 7 years ago2016-11-10 14:06:01 UTC Post #332238
I have gotten a new working HL1 Timer that is a Zone-Based trigger that allows you to walk into the start and the display timer activates and walking to another zone will disable it.

There is an issue with that problem.

What I have found out, from the initial first-timer to activate the triggers the timer display actually works but the problem is repeating it whilst in the map without having to use the 'reconnect' command.

The map will crash if you enter and stop the timer repeatedly, I am trying to fix it up but only one problem remains is the condition of 2 trigger_relays.

What the 2 trigger_relays are doing is running one t1 as trigger_relay no.1 and t2 trigger_relay no.2 and another trigger_relay activates t3, that trigger relays 1 and 2 are doing are running in a loop repeating each other while the 2nd trigger relay activates the 3rd trigger upon 2nd triggers request while triggers no1 and no2 are repeating each other.

I need to know if there is a way to disable or break a trigger_relay while it is running in a loop.

That is the only condition i have a problem with that prevents my timer to reset properly.

I can show you my map design and/or source code to figure out what needs to be done so i can fix up the problem, otherwise my timer is complete.

Any ideas on where to find help will be gladly appreciated.
Posted 7 years ago2016-11-10 14:21:19 UTC Post #332239
You could use a master to control activation. You'll have to route your relays through an entity that supports masters for this to work though.
Posted 7 years ago2016-11-10 14:30:01 UTC Post #332240
Cool thanks, so all i need to find is like an entity that has a master feature built-in and tie that in with another entity like multisource for example.

trigger_relay does not have a master feature unfortunately but trigger_auto does.
Posted 7 years ago2016-11-10 15:15:42 UTC Post #332241
func_button can be used for this, just make sure players can't +use the brush it's tied to.
Posted 7 years ago2016-11-10 15:39:01 UTC Post #332242
ok i have seen the func_button but can i ask a question.

from what i have seen from the additional presets you can actually touch it to auto-activate but can you also go through it as well?

so in a way it works just like trigger_multiple but not just touching it but to actually go through it.

since its a brush entity i don't think it will work, i know one brush entity that you can go through a texture is func_illusionary but that serves no purpopse for me.
Posted 7 years ago2016-11-10 16:38:09 UTC Post #332243
func_button is normally solid, but you can set it to trigger if touched.
Posted 7 years ago2016-11-10 16:50:43 UTC Post #332245
I have taken a good look at the map i was making and compared it with a modified kreedz timer, it looks simular but the env_global triggers act differently so what i need to do is the timer ticking to stay at the same global state with the display using the triggers counter_start and counter_off if you cant seem to understand what i meant ill try to explain.

From a kreedz timer there are 4 env_global entities which are map controlled that affects the entire map.

2 of those env_global entities work co-operatively meaning the display portion of my timer will work running or stopped but that is only one part of the timer ive actually got working.

The other 2 env_global entities one of them is to deal with the ticking or the counter cycle which trigger_relays control that allows the control of ticking from one entity to another which is effectively 2 trigger relays running in a loop.

The last env_global is a reset system which not only refreshes the counter to 0 also it disables the counter running in a loop also as a flipside you can use multi_managers to clear out the timer display completely.

The difference between turning off a display and clearing the display and turning off the trigger relays is clearly black and white.

What i also want for the counter_off is to also disable the counter tick cycle but keep the display frozen while the reset feature also clears the display whilst making the counter cycle disabled.

The counter cycle is controlled by a series of game_counters and multi_managers with trigger_relays and func_wall_toggle.

The difference between the kreedz timer and my timer are kreedz uses a set of texture brushes that requires func_wall as well as func_train, path_corner or path_track as well as a bunch of trigger_relays which ive found out from the timer itself has over 500 triggers to activate the timer but the timer itself is inaccurate due to delay points between entities.

What I plan to do is to reduce the amount of entites required so instead of path_corner, func_train and func_walls i opted for func_wall_toggle, game_counters and multi_managers so that way the multi_managers will generate like the number 6 by turning on and off a texture which you can make textures in general visible or invisble.

So all i need to do is set the trigger_multiples to a master name and establish 4 env_globals instead of 2 and get the naming conventions right.

The difference in entity count with my timer is less than 250 compared to the kreedz timer which uses over 500 so performance wise it will make a big difference and ive also tested out my timer which the 1st run will yield perfect results.

hopefully when ive found out the problems i can honestly say in due time i will have a working timer that i would say people who play bhop, surf or deathrun maps will enjoy and hopefully adopt my new timer.
Posted 7 years ago2016-11-11 12:59:40 UTC Post #332246
I have now made some modifications to the map, it no longer crashes but the timer does not disable but the reset feature works.

You did tell me to create master names on the activation triggers which is what i did, also for the master triggers to work they need to be tied in with an entity so i chose multisource as the entity for that to work.

The only problem now is that 2 trigger relays are still working in a loop and i just need to break that and i will then have a working timer.
Posted 7 years ago2016-11-11 15:20:57 UTC Post #332247
Ok I have managed to get the timer not to crash, what I have done is use 2 multi_mangers and one trigger_entity so the timer shows properly and resetting works but i have unable to stop it.

Is there a way to break or disable a multi_manager from running in a loop?

that is all i need, ive fixed the timer working so it will not crash every time it starts or restart i just need to figure out a way how to break a multi_manager from looping.
Posted 7 years ago2016-11-11 16:23:35 UTC Post #332248
"Is there a way to break or disable a multi_manager from running in a loop?"

yes.

To have a multi_manager run in a loop I would have the multimanager (MM) set up so something is between it and it starting over again - such as:

MM runs and triggers things - as its last operation, MM triggers different entity - Different Entity triggers MM to start the loop again.

To make the Loop stop, just disable the entity in the middle of the chain.

For example, I might set it up so the MM runs, then triggers a game_counter (with a limit of 1, so it fires when triggered) that then triggers the MM again. Using a multisource and an env_global you could enable and disable the game_counter because a game_counter can have a master.
Posted 7 years ago2016-11-12 07:12:01 UTC Post #332253
Thanks heaps.

From what you have said, you should not run 2 multi_managers in a loop, pretty much you don't want 2 trigger_relays to run infinitely because i know that you cannot break it no matter what which is what i have found out.

You did say you can run a game_counter in a loop which i do like and therefore it can be broken with the help of multisource and env_global.

i will give this a try and see the results, i will let you know the outcome very soon.

Stay tuned.
Posted 7 years ago2016-11-12 12:25:56 UTC Post #332254
So by the timer design according to kreedz timer all i need to do is establish 2 triggers.

1. Activate a trigger_relay to run a variable to run in a loop.
2. Deactivate a trigger_relay to stop variable to stop a loop from running.

I will investigate on how this can work, with the help of multisource and multi_manager.

However in order for that to work i have to ensure i use trigger_relay and make it work without 2 trigger relays to run in a loop.
Posted 7 years ago2016-11-13 05:32:49 UTC Post #332262
It appears according to my map design that the triggers supposed to work, but there is a conflict with multisource and env_global and I am happy to release my source code and can you point to me where i am going wrong.

Source: http://www.mediafire.com/file/n787gqpnfiydzwf/hl_timer-zerotech-wip1j.rar

so far according to design it supposed to work but the timer does activate and reset but the deactivation does not work.
Posted 7 years ago2016-11-13 08:37:52 UTC Post #332263
UPDATE: Source - http://www.mediafire.com/file/6hv645gle48t30h/hl_timer-zerotech-wip1l.rar

I've begun to realise the map design for this version all of the triggers should work. the only problem are the env_global entities and the global states associated with it.

I have looked very carefully about the env_global from one of the timers it seems that 2 of them are associated with a statename the same and the other 2 another state with the same name. However I have discovered with each of the env_global triggers that have the same global state name the functions perform differenly.

In essence, what the clever people did was to have both states in a toggle mode which allows the states to turn off and on from func_button and/or trigger_multiple.

Technically the design i have there there is nothing wrong with it with functionality except the states of env_global of how they are triggered.

Set one of env_global
1. have one trigger mode on and initial state as on.
2. has trigger mode on and initial state as off.

Both have initial states set with the prefix

Set two of env_global
1. has trigger mode off and initial state on
2. has trigger mode off and initial state off

both do not have initial state set with the prefix.

The question i like to ask with the triggers that are tied into the multisource which states they should belong to. That is something i am happy to find out.

Hopefully if i am correct i will get a timer that works 100%.

I can see why 4 env_global entities exist to allow to turn on/off the triggers manually.

So hopefully i get the env_globals and the states to work correctly, if i managed to get it working i have no doubt that it will need to be tested thoroughly to ensure that the timer works before i plan to release the final source code for all map developer sites so that way all of the bhop, surf, deathrun etc. will benefit with a working timer.

Players from all communities have demanded a working timer that actually works not only in map design, but also with plugins with the aid of amxmodx and 3rd party tools like demoviewer so that way we can compare the times of speedruns in general will work perfectly every time.

I have no doubt this will change the way how we view and play speedruns in general.
Posted 7 years ago2016-11-16 18:24:39 UTC Post #332308
UPDATE: I have cleaned up the triggers so its less now.

What I have gotten it to work is the start and disable timer working, but the reset and repeat function isnt working atm.

It is a shame but however upon testing the timer it is working 100%.

Link : http://www.mediafire.com/file/54d1e2wao2bh564/hl_timer-wip2c.rar

Check out the source code and map to view how the timer is working and if you know how to get the reset function to work so the timer can work repeatedly that would be appreciated.
Posted 7 years ago2016-11-16 20:01:49 UTC Post #332309
OK I think I've got it working now, its just that the timer is not 100% accurate but it functions 100%. now all i have to do is set the timer so it displays the time correctly and I think i am done.

Link: http://www.mediafire.com/file/2y61nw9cub4nffo/hl_timer-wip3c.rar
You must be logged in to post a response.