[No] Running game code above 35 tic limit

Moderator: GZDoom Developers

Running game code above 35 tic limit

Postby Smedis2 » Mon May 27, 2019 11:12 am

I'm not sure if this has ever been asked before. I couldn't find anything but it's something that I'm fully aware is pretty drastic and would cause a lot of compatibilty issues in the long-term, but it's been kind of irking me ever since I started playing all of those years ago.

With the increasing power of GZDoom and the increasing complexities of most modern WADs, I still feel like relying exclusively on Doom's 35 tic logic system causes a lot of "jerkiness" in terms of stuff like placing actors over other actors, making objects like laser sights on weapons, etc.

I'm not calling for a total re-write of the engine, but it'd be neat to have the option so effects and objects that rely on being placed in a certain spot is instantaneous and not janky looking like it is now.
A good example of this is from a WAD I tried making a while ago which featured a segment in which you drive a car similarly to Outrun. This is what it looks like without capped frames and this is what it looks like with capped frames. I'm aware that not everybody's gonna be trying to make silly quasi-racing game minigames in their WADs, but I thought it'd be a good example as to what I'm referring to.

I will admit this is a bit of an OCD thing, but I feel like some better method to smooth out instant teleportation scripts would be nice, even if it doesn't involve what I've mentioned above.
User avatar
Smedis2
 
Joined: 01 Jul 2016
Discord: Smeddy Too#7051
Twitch ID: Smedis9

Re: Running game code above 35 tic limit

Postby Rachael » Mon May 27, 2019 11:28 am

No - with the way Doom is structured, doing this could be a disaster. Modern games run at lower tic rates, not higher.

Unfortunately, this is one of those trying to fit a square into a circular hole issues. The engine does not seem to fit your needs. Sorry.
User avatar
Rachael
Webmaster
 
Joined: 13 Jan 2004
Discord: Rachael#3767
Twitch ID: madamerachelle
Github ID: madame-rachelle
Graphics Processor: nVidia with Vulkan support

Re: Running game code above 35 tic limit

Postby m8f » Mon May 27, 2019 11:36 am

You can have smooth laser sights with 35 tic per second rate.
User avatar
m8f
the dreamer
 
 
 
Joined: 29 Dec 2017
Discord: m8f#0629
Github ID: mmaulwurff

Re: Running game code above 35 tic limit

Postby KeksDose » Mon May 27, 2019 12:45 pm

Your issue can be fixed. gzd interpolates certain movements between two such logical frames you described, just like the camera is. Look into Warp or SetOrigin with interpolation flags set.
User avatar
KeksDose
kek
 
Joined: 05 Jul 2007
Location: MOOOOON
Discord: MemeDose#2089

Re: Running game code above 35 tic limit

Postby Darkcrafter » Tue May 28, 2019 9:29 am

Rachael wrote:No - with the way Doom is structured, doing this could be a disaster. Modern games run at lower tic rates, not higher.

Unfortunately, this is one of those trying to fit a square into a circular hole issues. The engine does not seem to fit your needs. Sorry.


Well I just played BF4 on a 60Hz tick rate server :wink: but it requires a more powerful hardware to handle it well (that's what my pc is absolutely capable of)
User avatar
Darkcrafter
 
Joined: 23 Sep 2017
Location: South Russia
Operating System: Windows 10/8.1/8 64-bit
Graphics Processor: ATI/AMD (Modern GZDoom)

Re: Running game code above 35 tic limit

Postby Rachael » Tue May 28, 2019 3:23 pm

You are dreadfully confused, my friend. Modern games don't run high tic rates at all. Most of the time they run at 10 tics per second, and according to what I've read, Battlefield 4 is included in that.

The net update rate may, however, be different. This is common for some more modern games where the net updates happen "as they come" but the actual processing happens at a much slower rate. This is allowed because the client/server model does not require deterministic syncing like GZDoom does.
User avatar
Rachael
Webmaster
 
Joined: 13 Jan 2004
Discord: Rachael#3767
Twitch ID: madamerachelle
Github ID: madame-rachelle
Graphics Processor: nVidia with Vulkan support

Re: Running game code above 35 tic limit

Postby StroggVorbis » Tue May 28, 2019 3:36 pm

What I don't understand is why id chose an odd number. Why not 36 tics? This would allow for halving up to two times without a remainder and thus have things with half or quarter second durations without rounding errors. If you want something to last a half second, the duration would be rounded down from 17.5 to 17, so it's always either shorter or longer (18 tics) than a half second.
User avatar
StroggVorbis
Donut eat me pls!
 
Joined: 08 Nov 2017
Location: Germany
Operating System: Windows Vista/7 64-bit
Graphics Processor: nVidia with Vulkan support

Re: Running game code above 35 tic limit

Postby Rachael » Tue May 28, 2019 3:38 pm

I think they chose it because monitors were syncing at 70Hz. 35 is half of that. Back in the DOS days, that looked really smooth.
User avatar
Rachael
Webmaster
 
Joined: 13 Jan 2004
Discord: Rachael#3767
Twitch ID: madamerachelle
Github ID: madame-rachelle
Graphics Processor: nVidia with Vulkan support

Re: Running game code above 35 tic limit

Postby StroggVorbis » Tue May 28, 2019 3:42 pm

Ah, makes sense because Wolfenstein 3D ran at 70Hz and because of that ECWolf accepts half tics. Actions still run at 35ths of a second but due to the addition of a thinker states get executed every half tic.

At least this is how I understood it from the wiki page:
https://maniacsvault.net/ecwolf/wiki/DECORATE
User avatar
StroggVorbis
Donut eat me pls!
 
Joined: 08 Nov 2017
Location: Germany
Operating System: Windows Vista/7 64-bit
Graphics Processor: nVidia with Vulkan support


Return to Closed Feature Suggestions

Who is online

Users browsing this forum: No registered users and 4 guests