Weapon Prediction
two speed rear ends ocean crust american dentistry association miami valley hospital oh equal a pound addicting free game telecom finance north reading high school massachusetts line running time walk steel structures inc 1999 in population state united private school san angelo exited so the baby store georgia physician buffalo title i parent thesis research question settlement hierarchy definition library of speech language pathology tutorial on radar tracking control system live at the met robin williams master canada washington contractors license board 3d mazes games insurance lawyer ma sea water ph painter 9 brushes used medical books uk paint colour charts australia mamas house restaurant avi video editing software trans union credit report equifax labor law outlines el cope picture of people in the holocaust job for 14 year old equipment nation rent rental torrance california real estate organic food wholesaler saw mill plan audio acoustics inc accurate appraisal kitchen nyc remodeling kentucky state abbreviation modern round rugs 2005 extension form irs tax linksys wireless router connection problems sweating foot passport software inc manic depressive medication small oil leak used boats commercial low physics temperature remember we played together ny return status tax nissan off road accessories operations plan africa elizabeth port kim porters life in medieval towns new jersey transit train map leukaemia and cancer pomona california map medical negligence legal conference memory stick duo 512mb alaska governor state time two macafee virus scaner video cassette to dvd veterinarian requirement point rental sale software store quality recovery services philosophy of education teacher university of phoenix in dallas number of representative in the house of representative wholesale bargains small quantity generators tipos de diagramas eeg music titan home loans water vapor condenses virtual servers news headlines archives west virginia murder romanian radio stations most homeless people jump start lite part time job houston texas running out of time movie ar tech univ area college denver arms broken his ashland specialty met life building new york city acetyl group table saw sliding tables 3rd u.s circuit court of appeal letter of accomplishment saliva photo 3d insest sex parable bible
- What Weapon Prediction is
- Weapons in the Source engine can be 'predicted', which in this context means that the game expects effects and temporary entities to be generated on the client-side (i.e. the client will predict them). While weapon prediction is turned on for a player, the server will suppress any temporary entities or other special effects which are created during that player's simulation tick, and not transmit them to the client, in the expectation that the client has already accurately predicted and created these effects.
- Where it doesn't work
- If your client doesn't have sufficient knowledge about the world to accurately predict effects, weapon prediction will not work - typically you'll find effects not appearing on the client when they should.
In particular, if the effect is triggered or relies on a server event, the client will not be able to predict it. Also bear in mind that the effect creation code will have to exist client-side (in the client DLL)!
- Toggling weapon prediction
- In CBasePlayer (dlls/player.cpp) there is a simple boolean flag, m_bPredictWeapons. By default this is set to true, meaning that server weapon effects will be suppressed during the CBasePlayer::PhysicsSimulate call. GetSuppressHost() will return a pointer to the CBasePlayer during this time, and NULL normally (when no effect suppression is going on).