NEW Half-Life Timer By Zerotech

Started by Zerotech
17/11/2016 14:34
Page 1 of 2
Zerotech17/11/2016 14:34

I have now developed a new timer which hopefully you will appreciate.

Release Candidate 4 - http://gamebanana.com/maps/192990

This timer, has the 2 digit ms display and it works. Also the timer comes in 2 versions both button activated and zone activated.

See this video of my timer getting activated.

Video Link : https://www.youtube.com/watch?v=QEJmOjZV8xw

This timer will activate from the moment you walk into or press the button, however I have come across with amxmodx timer plugins that there is seem to be a delay in activating the in game timer. To remedy the problem the delay must be deactivated and recompiled.

Hopefully you will appreciate this timer and will undoubtedly change the way how speedruns will work.

psh17/11/2016 14:43

You can create your own timer but need your mobile phone to record a video of the timer? This sounds like a paradox.

bluemagic mapper17/11/2016 16:10(edited 17/11/2016 16:11)

I will wait what spr1n say on that timer. I had a look and the timer looks cool. I like the way you made digits and the whole timer doesnt take too much entities. I hope it wont have any time bug or some issue.
Despite my effort in the past trigger_multiple timer activation is not compatible with demochecking tools yet and it is not allowed to use it in XJ maps. (hopefully it will change soon, cosy-climbing community is more permissive in it)

GJ :)

Zerotech17/11/2016 19:37(edited 17/11/2016 19:39)

Thanks heaps.

My source code has both button and zone activated. It shouldn't be bugged and yes comparing entity counts I actually used a lot less entities despite my timer being slightly wider and a lot thinner.

Having a timer that works and uses less entities results in being better performance in map gameplay.

That is fine if you need an opinion to see if they like it or not.

dEMolite mapper17/11/2016 19:41

details on how you approached the timer. What have you done else in this timer and what have you made better that the other timers don't have?

What is the entity count of the timer?

Zerotech17/11/2016 20:09(edited 17/11/2016 20:14)

All i know from my source code the rc4 revision is that there are 240 point entities and 50 solid entities all up is 290 which is less than 300 overall.

I have had a look at spr1n's timer and it uses well over 450 entities most of them uses func_train and path_corner which uses significantly more memory than func_wall_toggle.

I've managed to get some help with the half-life 1 mapping forums about certain entites in regards to multisource and env_global.

The timer includes the 2 digit milliseconds in addition to the seconds and minutes for accuracy so when an hour is passed it rolls back over to 0 so in a way the timer will run infinitely in a loop until it is stopped manually.

There is also a reset feature which basically turning off the counter and clearing the timer, so in a way you can repeat the speedruns without having to change map or disconnect. In essence you can always start the timer repeatedly without worrying the display timer not working which this timer does work.

Also the timer uses default textures controlled by func_wall_toggle which uses significantly less memory than custom textures and using func_train and path_corner to move the timer to represent a number.

Since I have made the timer in a digital look it allows me to control how i want to represent a number hence reusing the same texture to generate different numbers which is why there is a significant low entity count.

I have tested both with button activated and zone activated from going point a to point b i always get the same results which is why the timer i have is pretty much proven to be reliable.

bluemagic mapper17/11/2016 21:26

wait..... Are we talking about the same spr1n's timer??

http://xtreme-jumps.eu/e107_plugins/forum/forum_viewtopic.php?225302

There is version with sprites digits which uses 221 PointEntities and 3 SolidEntities. You have to choose one of those digits bars and delete the rest of them.
Most of the entities are trigger_relays and game_counters (and env_sprites for digits of course).

Your counter mostly uses trigger_relays and game_counters as well. I have not looked at how it works but I guess it will be as acurate as spr1n's timer is. :)

Zerotech18/11/2016 01:12(edited 18/11/2016 01:13)

Here is a follow up video i just made with fraps to give you a better quality experience between zone and button activated timers.

Video Link: https://www.youtube.com/watch?v=2y0kigcnbhw

So far I have implemented the zone timer onto 2 of my bhop maps that i have re-released, before i plan to overall change my experience with bhop maps to adopt the new zonal timer i just like to test it out throughoughly, so far people have reported that the timer does indeed work 100%.

fakan18/11/2016 01:29

Only if this has been there when I started to play kz on lan and had no clue about amx plugins, the timer reset is an awesome feature, also love the miliseconds, great work imo.

JocA Banned18/11/2016 14:25

honestly i dont know how exactly is this better than previously versions, im not really into it, but i can say, GOOD JOB FOR EFFORT MAN! :)

spr1n mapper19/11/2016 20:37

Zerotech, good job for the effort, however it is a waste of time, at least within this community.

I did not look into your timer in-depth, but there are some important things I need to bring up.

1. Timer accuracy. You should check your timer against demo tools that register time or at least use amxx plugin. Personally I made sure my own timer has accuracy of +/-0.005 seconds with stable engine fps for every single digit available and all timer states and has no offsets etc. etc. As far as I see you haven't done that, have you?

2. Areal activation. There are a few problems with it. First and most important there are no admin tools that can detect areal activation in new maps and verify time. Such maps already exist on XJ, but those are integrated exceptions and new ones cannot be permitted until XJ admin demo tool upgrade. The other problems include improper resets (especially with multiple players) and unfair activation from the other side of the trigger (contrary to what mappers may intend to build)

3. Ingame timer accuracy is a gimmick. Basically you will never get accurate results past tenth of a second. Gouldsource engine will always lag a bit and any 100% accurate ingame timer (such as my timer) will still be off in real game. It will be every time for anything less than tenth of a second, making hundreds of a second in your timer just a gimmick and never accurate in practice unfortunately. That's exactly why I limited my own timer with tenth of a second despite having accuracy of +/-0.005, its a waste of resources and will be inaccurate with any frame drop (which is almost always).

4. Your timer does not bring anything new to the table so far. Ingame timers are visual and cultural representations, while actual time is registered using demo tools and amxx plugins, not map timer itself. Official kreedz timer is not rather accurate but just 236 entities (39 precache), and my timer is 219 entities (13 precache) and 100% accurate (as much as engine fps allows it). Both timers are already good enough for any map here and have less resources than your timer (as you claim it has 240 entities and 50 precache).

Of course your timer can be used in kreedz maps, as long as it has correct button settings and is approximately correct for the visual representation of the time. Hundreds of a second is neat to have if it fits map theme, but can be easily added to existing timers with little effort and its realistically not any more accurate.

fykseN mapperrecord holder Tournament #119/11/2016 21:57

spr1ned

Zerotech20/11/2016 01:20(edited 20/11/2016 01:35)

I agree spr1n that valve's hl engine has an issue with timings.

The timer accuracy can be modified to suit all amxmodx plugins by setting the delay other than 0.001 or else which is tick controlled by a trigger_relay or modifying the amx plugin without a delay in it.

As for the button activator not the zone activator but the button activator that can be fixed by carving the button so that the button can only be pressed from a particular direction. I agree that the whole func_button which was made at the time that the button itself is an whole entity which you can press from any direction but that can be remedied by carving the button as a texture and inside of the texture you can add the func_button to it so you are in a way forced to press the button from a particular direction.

However my timer does has a reset function which i have outlined which is a new thing for speedrunners that they find this feature very useful.

Also the timer does not require any custom files to use the timer, so you can simply copy and paste the board without the need of external files and you are good to go, plus its fully customizable so you can change the colour of the board or the digits.

You did say the ms timer does bring into question, yes you can criticize the validity of the ms timer but however we as a whole hl community we have only really explored 10% of the actual game engine's capabilites. I still question the ms timer about it's accuracy i have although it reported to be 100% working. Well that is something people will have their opinions on.

New things are popping up on the hl engine we have begun to realize there is a lot you can do but not many have explored or realized its full potential.

deniS20/11/2016 19:01

I'd like, if mappers would do just 2 buttons, start & stop, without time at end, because it's just useless, we use amxx or metamod plugins, to see time, just my opinion.

spr1n mapper20/11/2016 22:19

I'm sorry you feel resistant to what I said Zerotech, I don't mean to discourage you, but everything I said still stands and you are surrounding yourself with misconceptions. Please feel free to read again what I wrote.

Many things you say are faulty, nothing personal, but I can't let you be so arrogantly misleading (or just uneducated if you did not intend that)

Originally posted by Zerotech
Also the timer does not require any custom files to use the timer, so you can simply copy and paste the board without the need of external files and you are good to go, plus its fully customizable so you can change the colour of the board or the digits.

Once again:
my timer does not use buggy entities like func_trains and is 100% accurate.
both my timer and kreedz timer use less resources than yours.
both my timer and kreedz timer do not require additional files.
both my timer and kreedz timer can be easily customized.

Originally posted by Zerotech
As for the button activator not the zone activator but the button activator that can be fixed by ...

I wasn't talking about buttons at all, everything I said there applies to zone triggers. I don't know how obvious button usage through the whole kz history suddenly became an aspect of question to you in such context.

Originally posted by Zerotech
The timer accuracy can be modified to suit all amxmodx plugins by setting the delay other than 0.001 or else which is tick controlled by a trigger_relay or modifying the amx plugin without a delay in it.
... I still question the ms timer about it's accuracy i have although it reported to be 100% working. Well that is something people will have their opinions on.

What I suggested is at least simple QA using amxx and/or demo tools, to ensure corresponding real time without major errors and offsets, for all working scenarios. "Opinions" are irrelevant if we talk about accuracy since it doesn't translate to a meaningful result in this case.

Originally posted by Zerotech
However my timer does has a reset function which i have outlined which is a new thing for speedrunners that they find this feature very useful.

I admit its a good feature that never had its place. In the first few years of kreedz it was all about public servers and resets would be rather disruptive. Nowadays however its just too many maps already released for that feature to matter in the eyes or speedrunners of this community. And don't forget it is solved by some demo recording plugins. So there is very little value behind it.

Originally posted by Zerotech
You did say the ms timer does bring into question, yes you can criticize the validity of the ms timer but however we as a whole hl community we have only really explored 10% of the actual game engine's capabilites...

New things are popping up on the hl engine we have begun to realize there is a lot you can do but not many have explored or realized its full potential.

I cant stress enough how wrong this last sentence is. Of course mappers can put together interesting things and implement cool ideas, BUT in the end we are all limited by certain amount of entities, with certain number of options. All of them known and its depressingly limited, hence the development of superior engines like hlfx, svencoop and even mighty source which all originated where goldsource left off. Its just an outdated nightmare for mappers.


I really don't have anything against your timer despite the fact I believe its a waste of time with two redundant new features (developing whole new timer to outcome value ratio in consideration of existing timers is a waste of time in my book, its just a visual representation of time, not real time), keep working if you feel like it, but please don't go promoting your timer by diminishing or discrediting work of other people. There are several widely used good timers made by me (2 versions), kreedz and sadpuppy.
Please educate yourself on the topic before making misleading or untrue statements.

Zerotech24/11/2016 22:53

Originally posted by spr1n
I'm sorry you feel resistant to what I said Zerotech, I don't mean to discourage you, but everything I said still stands and you are surrounding yourself with misconceptions. Please feel free to read again what I wrote.


Many things you say are faulty, nothing personal, but I can't let you be so arrogantly misleading (or just uneducated if you did not intend that)


OK but that thought is coming from you, let everyone here make that judgement and their decision about this.

Originally posted by spr1n
Once again:
my timer does not use buggy entities like func_trains and is 100% accurate.
both my timer and kreedz timer use less resources than yours.
both my timer and kreedz timer do not require additional files.
both my timer and kreedz timer can be easily customized.


If you allow it, could you please send the source code to me so I can make that comparison?

Originally posted by spr1n
I wasn't talking about buttons at all, everything I said there applies to zone triggers. I don't know how obvious button usage through the whole kz history suddenly became an aspect of question to you in such context.


The timer is not just limited to kz, it applies to all Half-Life and it's mods

Originally posted by spr1n
What I suggested is at least simple QA using amxx and/or demo tools, to ensure corresponding real time without major errors and offsets, for all working scenarios. "Opinions" are irrelevant if we talk about accuracy since it doesn't translate to a meaningful result in this case.


According to amxmodx authour Bailopan, he admitted there is a timing issue that only the devs from amxmodx can fix, see here for info - http://www.bailopan.net/blog/?p=27

Originally posted by spr1n
I admit its a good feature that never had its place. In the first few years of kreedz it was all about public servers and resets would be rather disruptive. Nowadays however its just too many maps already released for that feature to matter in the eyes or speedrunners of this community. And don't forget it is solved by some demo recording plugins. So there is very little value behind it.


I disagree with that statement, players not only want something that works but also it's a conveinience to them.

Originally posted by spr1n
I cant stress enough how wrong this last sentence is. Of course mappers can put together interesting things and implement cool ideas, BUT in the end we are all limited by certain amount of entities, with certain number of options. All of them known and its depressingly limited, hence the development of superior engines like hlfx, svencoop and even mighty source which all originated where goldsource left off. Its just an outdated nightmare for mappers.


If you experiment it triggers the results are unpredictable and yes new things pop up everyday, you may say it's a primitive engine, yes it is. But if you allow imagination go wild you might pick up a thing or 2 about triggers how they actually work and what you can do with different triggers that go along with others that can create interesting things.

You may say its a programmings nightmare because theres not much triggers available, even so you can build something that was first thought to be inconceivable but made possible by applying a concept or a theory and put that theory to the test.

Again your thoughts on the goldsrc engine you may say you cannot do anything more than the engine is capable of, i disagree you can do things to goldsrc that valve has never thought it could have handled
or achieved despite being the engine being approx. 20 years old.

See this video - about the tic tac toe system for goldsrc - https://www.youtube.com/watch?v=nihp6VSWi6w&t=485s

Again you may say its an outdated engine, then why are people continuing to make maps for goldsrc if you believe the goldsrc engine is truly outdated?

Originally posted by spr1n
I really don't have anything against your timer despite the fact I believe its a waste of time with two redundant new features (developing whole new timer to outcome value ratio in consideration of existing timers is a waste of time in my book, its just a visual representation of time, not real time), keep working if you feel like it, but please don't go promoting your timer by diminishing or discrediting work of other people. There are several widely used good timers made by me (2 versions), kreedz and sadpuppy.
Please educate yourself on the topic before making misleading or untrue statements.


What you only done was only made a concept that was mapped for a mod for half-life, while I have improved that concept and applied it to Half-Life.

You can say that you don't want my timer for your reasons above but that is coming from your point of view, if you think my timer is a waste of time, then ask me this...

- Why are players today complain about your timer if you admittedly know that the timer you've built before doesn't work properly in the first place?
- Why would you build a timer and programmed it so it doesn't work properly?
- Why would the players trust your timer spr1n if the concept of the timer you have created is flawed from the start?

Which is exactly the reason why i purposely built the timer, yeah you can agree that my timer is flawed too to some extent, but at least my timer was NOT built under a flawed logic nor a failed concept.

And not only my timer can work with kreedz it can also work with other game modes and its not limited to counter-strike 1.6 either.

Unless i see your source code about the reduced entities i will reserve my judgement, then if you claim you have built a better timer than me, then why haven't you released that timer to the public so the map developers can use it?

If you believe my timer is a waste of time, fine but show me your code first or otherwise i call it too good to be true.

Just before you dismiss my timer completely, why not ask the players here and the admins and the founder here on what they think about it.

HaMMa mapperrecord holder Tournament #324/11/2016 23:18

Thanks to nowadays recording plugins it doesnt matter wich timer is on the map (even the old timer of kreedz) we always get the exact run time and restarting the timer without restarting the server

dEMolite mapper24/11/2016 23:49(edited 24/11/2016 23:49)

since the engine works on a tick tock base.

every timer which is build out of entites, is lacking behind a server timer based plugin or a timer of a hardcoded server entity like kzmod. (since those are using the engine pointers to the engine tick time.)

so every entity when is going to be triggered is fired on a tick base. since every entity can trigger another entity uses another tick time difference. vice versa it will be out of sync with the server tick. thats why its all differs from the real server tick time.


no need into fighting in each other, we just should thank Zerotech for that effort and hopefully he had learned more from the entity system.

Zerotech25/11/2016 10:00

Originally posted by dEMolite
since the engine works on a tick tock base.

every timer which is build out of entites, is lacking behind a server timer based plugin or a timer of a hardcoded server entity like kzmod. (since those are using the engine pointers to the engine tick time.)

so every entity when is going to be triggered is fired on a tick base. since every entity can trigger another entity uses another tick time difference. vice versa it will be out of sync with the server tick. thats why its all differs from the real server tick time.


no need into fighting in each other, we just should thank Zerotech for that effort and hopefully he had learned more from the entity system.


I do apologize earlier that i am upset but all i wanted to do was to attempt to do the right thing and improve the concept of a timer working properly. And as what you have stated you really do want me to try to get the concepts of a timer working properly and i thank you for your support.

I have now begun to realise that the timer in hl1 or goldsrc will never work nor it will will work with source engine either as the authors of amxmodx and sourcemod has locked their tickrates or refresh rates at 30ms or respectively 30fps or 30Hz.

I also understand now that the ticks in game and video in general in regards to televisions work more or less like a clock.

A cycle means a tick meaning it will generate a frame for video and having 100 ticks will generate 100fps in essence for a clock to work properly it needs to cycle exactly 100 cycles or ticks to get a second on screen to work properly.

Unfortunately today we have encountered a problem. it has got nothing to do with our designs of the timer nor it's a half-life issue nor its any game or applications we use today or before, the real issue is the refresh rate of our monitors that it is synced at 60Hz which is an american standard.

The problem with that is a number that has a 6 cannot be multiplied by any number to equal to 100.

This has caused an aging old debate about television standards and we all agree in Europe and in Australia we have adopted the PAL 50Hz standards and only United States, Japan and Mexico uses NTSC at 60Hz.

We all know about the PAL and NTSC debate, personally the game will run better on a PAL monitor than the NTSC for the clock cycles to fully synchronize and to work properly, unfortunately today we will not get that as the stanards of a monitor is locked at 60Hz.

Half-Life engine itself is capable of running the game at 50Hz but like i said we cannot run the game at 50Hz anymore due to the changes of the video standards and also this has ignited even the electrical current debate as to why every country in the world uses AC while only USA, Japan and Mexico uses DC.

it's no wonder why we can never get the timer to work 100% its because we use a video standard that was NOT designed or capable of generating exactly 100 cycles per second and that is a shame really.

dEMolite mapper27/11/2016 19:02(edited 27/11/2016 19:02)

well you picked a nice example with PAL and NTSC, how ever the tick is more mostly on cpu side and can be a bit tricky, depends on how the engine handles the threads of the different engine functions(however gold-/sourceengine are lying big on the graphicle pipe thats why you see differences). but that should not be the discussion all about.

Everytimer has its pros and cons.
Some are using the old kreedztimer, some are using sadpaddys timer and some are using sprints timer and soon some are using your timer. Its nice to see that twhl is still active and is helping everywhere.

Page 1 of 2

Please log in to post replies.