Tic based?

General discussion of the port and Doom-related chat.
Post Reply
Nati46
Forum Regular
Posts: 379
Joined: Mon Jun 04, 2012 11:39 am
Location: Ramat Aviv

Tic based?

#1

Post by Nati46 » Fri Sep 07, 2012 1:08 pm

Hey,
I've been wondering this for a long time, but never actually bothered to get the answer for this.
As far as I know, the original Doom game updates every 1/35th of a second "tic", which is ~28 milliseconds.
I have been playing ZDaemon at some point and I did hear that it works this way aswell, which is also a reason as to why pings there tend to show up at tics (28, 56, 84, and so on) with the real ping showing up on occasion.
However, as you know, in Zandronum, your direct ping result to the server is shown, which implies that the ping shown is the actual time it takes to register all of the client's actions.
The uncapped FPS option further supports this premise, and that Zandronum may indeed be running on a faster update rate than 35hz.
And would this mean that pings which are on the same tick, i.e 87 and 110 would act exactly the same game-wise, since the are both on the 4th tick (112ms)? I've had many games where it feels similiar and a few where I had a noticable difference.
Could anybody familiar with the Zandronum mechanics clear this out?
Last edited by Nati46 on Sat Sep 08, 2012 10:38 am, edited 1 time in total.
Want to know how to run faster? Check this out!

Zandronum Duel Championships

Image

Llewellyn
Forum Regular
Posts: 578
Joined: Mon Jul 02, 2012 7:12 am

RE: Tic based?

#2

Post by Llewellyn » Fri Sep 07, 2012 9:50 pm

Well the client renders faster than once every 1/35, but I don't know if anything besides that is calculated outside once every one thirtyfith of a second. Client positions are probably interpolated inbetween frames though...

Watermelon
Zandrone
Posts: 1244
Joined: Thu Jun 28, 2012 9:07 pm
Location: Rwanda

RE: Tic based?

#3

Post by Watermelon » Sat Sep 08, 2012 2:35 pm

The main question is for a dev to drop by and say if packets that arrive with instructions in between two tics are held until the next tic.

As said previously, I'd assume client positions are interpolated based on velocity.

User avatar
Torr Samaho
Lead Developer
Posts: 1543
Joined: Fri May 25, 2012 6:03 pm
Location: Germany

RE: Tic based?

#4

Post by Torr Samaho » Sat Sep 08, 2012 6:35 pm

I freed the ping from the shackles of Doom's fixed ticrate years ago. The game logic still runs at 35 tics per second, but client and server try to receive packets whenever possible, not only once per tic, and process network commands immediately when receiving them. So pings of 87 and 110 may actually behave slightly differently.

Llewellyn
Forum Regular
Posts: 578
Joined: Mon Jul 02, 2012 7:12 am

RE: Tic based?

#5

Post by Llewellyn » Sat Sep 08, 2012 7:28 pm

Torr Samaho wrote: I freed the ping from the shackles of Doom's fixed ticrate years ago. The game logic still runs at 35 tics per second, but client and server try to receive packets whenever possible, not only once per tic, and process network commands immediately when receiving them. So pings of 87 and 110 may actually behave slightly differently.
Does this cause things like GePlayertInput to change during the current tic or the next one? I would assume the next one otherwise it could change states during tic.

User avatar
Spider
 
Posts: 80
Joined: Sun Jun 03, 2012 1:27 am
Location: Chile

RE: Tic based?

#6

Post by Spider » Sat Sep 08, 2012 7:35 pm

I'm pretty sure when I used to code alot 35 or 33.33 Tics were 1 real second, I might be wrong but I think that it is like that...
I hope I helped you.
Light is white darkness

Llewellyn
Forum Regular
Posts: 578
Joined: Mon Jul 02, 2012 7:12 am

RE: Tic based?

#7

Post by Llewellyn » Sat Sep 08, 2012 8:02 pm

Spider wrote: I'm pretty sure when I used to code alot 35 or 33.33 Tics were 1 real second, I might be wrong but I think that it is like that...
I hope I helped you.
It's 35 and not common knowlege to everyone else in the discussion lol.

User avatar
Torr Samaho
Lead Developer
Posts: 1543
Joined: Fri May 25, 2012 6:03 pm
Location: Germany

RE: Tic based?

#8

Post by Torr Samaho » Sat Sep 15, 2012 6:44 pm

Llewellyn wrote: Does this cause things like GePlayertInput to change during the current tic or the next one? I would assume the next one otherwise it could change states during tic.
Since ACS scripts are only run at the tic rate, you won't see the effect of network commands the server processes between tics in ACS scripts before the next tic.

Post Reply