Page 17 of 57

### Re: ZDoom Wiki Thread

Posted: Tue Jun 01, 2010 5:52 pm
Gez wrote:I still want an explanation on that 35.725 tics per second thing. TICRATE is defined as an integer.

Ever wondered why the FPS meter read 36 instead of 35? Randy specifically explained this in a post that I was going to link to here, but I can't find it and I specifically remember it was in off-topic, so it probably got deleted because the thread that he posted in was too old. In fact, I sent a PM to Randy.

And Octics aren't exactly 1/8th of a second because I had severe timing problems with my moving camera while assuming so, trying to get it to align with a script I was writing. I noticed that, assuming an octic was 1/8.0 of a second, my events were slowly desynchronizing, the script firing off too late as the camera was drifting slightly faster than I expected it to, implying that it was shorter than 1/8.0. So I did some quick math, comparing how far along the path the camera was to the first desynchronized event, and the math wound up giving me 1/8.57 instead of exactly 1/8.0.

Using 1/8.57 as a base for my calculations, my script's events now time perfectly with the movement of the camera.

So knowing this is important concerning synchronizing time of events.

### Re: ZDoom Wiki Thread

Posted: Tue Jun 01, 2010 6:03 pm
Gez wrote:I still want an explanation on that 35.725 tics per second thing. TICRATE is defined as an integer.

If I had to guess it's because integer math is used and the precision is only in milliseconds.

Code: Select all
`1000 / 35 = 28.57142857142857142857    (int) = 281000 / 28 = 35.71428571428571428571`

### Re: ZDoom Wiki Thread

Posted: Tue Jun 01, 2010 6:46 pm
Okay, makes sense.

### Re: ZDoom Wiki Thread

Posted: Tue Jun 01, 2010 7:02 pm
As for octics, I looked over my massive array of interpolation points and moving cameras and scripts (which is a horrible mess by the way, I don't want to touch anything like this again), and found out my setup was fubar, so my math based on it was messed up because:

Code: Select all
`[19:56:34] «@Kate» hm, I used 8, so 8 * 8 = 64 seconds, not 60[19:57:00] «@Kate» yeah whoops[19:58:23] «@Kate» so I was off ~4 seconds[19:58:28] «@Kate» which explains it`

Thanks Blzut3 for helping me with this =P

### Re: ZDoom Wiki Thread

Posted: Fri Jun 04, 2010 2:14 am
Should this be added somewhere?
If you want to use script 0, it must be written as <<0>>. This is to avoid using it accidentally, since ZDoom uses script 0 to implement many of the Strife-specific line specials.

### Re: ZDoom Wiki Thread

Posted: Fri Jun 04, 2010 8:16 pm
I don't know that you should be documenting that as something valid from an end-user perspective.

### Re: ZDoom Wiki Thread

Posted: Fri Jun 04, 2010 9:35 pm
The advice in the past was to always not use script 0 since it could be problematic, and with 999 other scripts to use with no one ever coming close to that limit it has never been a problem.

### Re: ZDoom Wiki Thread

Posted: Sun Jun 06, 2010 8:34 am
It looked like the fabled non conflicting loadacs script #.

### Re: ZDoom Wiki Thread

Posted: Sun Jun 06, 2010 8:49 am
And why is it "non-conflicting"? Because nobody uses it! As soon as people start using it, it becomes conflicting!

And guess what? It is already conflicting, since it conflicts with Strife!

So yeah, you really shouldn't use it. There are 999 other values you can take.

### Re: ZDoom Wiki Thread

Posted: Mon Jun 07, 2010 12:15 pm
I just added some descriptions for some Chex actors.

### Re: ZDoom Wiki Thread

Posted: Sat Jun 12, 2010 3:25 pm
ZDG wrote:I just added some descriptions for some Chex actors.

Cool story bro.

### Re: ZDoom Wiki Thread

Posted: Sat Jun 26, 2010 9:19 pm
ZDG wrote:I just added some descriptions for some Chex actors.

They're actually interchangeable, as far as I know. "Summon rocketlauncher" in the console gets you the propulsor.

### Re: ZDoom Wiki Thread

Posted: Sat Jun 26, 2010 9:29 pm
That's only because they share sprites. It's actually still a RocketLauncher and not a propulsor.

### Re: ZDoom Wiki Thread

Posted: Sat Jun 26, 2010 10:50 pm
Inheritance; it's more than a sprite swap, but not a whole lot more.

Spoiler:

### Re: ZDoom Wiki Thread

Posted: Tue Jun 29, 2010 4:23 pm
While documenting the entire byte code specification for ACC++ I noticed a few things.

First the deprecation warning on SetLineBlocking may be a little misleading. This is a Hexen feature, and as such compatibility is a must and not just "may be retained". Perhaps a notice suggestion the use of Line_SetBlocking would be better?

Also it might be worth mentioning the purpose of FunctionName(const:parameters). This serves a purpose in optimizing scripts since a const function doesn't use push instructions for each of it's arguments. From my testing ACC isn't smart enough to automatically optimize such functions when available so it must still be done manually. Outside of all action specials the following functions have the needed PCodes to be const.
• Delay
• Random
• ThingCount
• TagWait
• PolyWait
• ChangeFloor
• ChangeCeiling
• ScriptWait
• SetGravity
• SetAirControl
• GiveInventory
• TakeInventory
• CheckInventory
• Spawn
• SpawnSpot
• SetMusic
• LocalSetMusic
• SetFont