G'day, I'd like a second pair of eyes on this please. When a ship explodes, the status is set to PEXPLODE, a countdown fuse p_explode is set, and at a particular point in that countdown the explosion damage is assigned to nearby ships using blowup(). I was going to add an explosion frame on a client that gave a flash of light at the frame that the server assigns damage from an explosion. So I went looking into when that happens. But I found that the changes in early 2007 changed which explosion frame was used. Chain reactions would have gone five times faster. Didn't anybody notice? Here's how it works in detail: 1. at the time a ship explodes, p_explode is set to 10, in both the new code and the classic code, 2. p_explode is decremented every simulation frame, 3. in the frame where p_explode is decremented to 6, the explosion damage is assigned, 4. when p_explode reaches zero, the ship status changes to PDEAD, and p_explode is reset to 600, which doesn't matter because; 5. when the ntserv sees the PDEAD it calls death() causing status to change to POUTFIT. It seems that the change from 10 fps to 50 fps should be changing step 1 to set p_explode to 50, and step 5 to assign explosion damage at a p_explode of 30. At the moment in the code the explosion damage is happening at explosion time plus four fiftieths of a second (80ms), instead of four tenths of a second (400ms). Also, explosions are shorter than they should be; 200ms instead of 1000ms. This should *entirely* change base ogging. -- James Cameron http://quozl.linux.org.au/