summaryrefslogtreecommitdiff
path: root/src/game/g_weapon.c
AgeCommit message (Collapse)Author
2013-01-03* Replace reams of BG_Find* functions with: BG_Buildable, BG_Class, BG_Weapon,Tim Angus
BG_Upgrade * Move "overrides/*" to "configs/" and remove all the overriden data from bg_misc.c, instead requiring it to be in the cfg files * Add cfg files to source control * Clean up some naming and typing issues
2013-01-03* Merge clientSession_t::sessionTeam and clientSession_t::spectatorStateTim Angus
* Remove existing team_t (TEAM_FREE, TEAM_SPECTATOR) * s/pTeam_t/team_t/;s/buildableTeam_t/team_t/;s/WUTeam_t/team_t/ * s/pClass_t/class_t/ * s/PERS_TEAM/PERS_SPECSTATE/ * s/STAT_PTEAM/STAT_TEAM/;s/STAT_PCLASS/STAT_CLASS/
2013-01-03Balance changesAsa Kravets
* Adv goon bite range decreased 96->80 (regular goon + 8, to compensate for model size) * Adv goon pounce charge time reverted 600->700 * Goon pounce repeat (delay before being able to chomp) now applies after landing from a pounce instead of hitting with a pounce * Tyrant range decreased 116->100 * Zap damage decreased 50->40
2013-01-03* Mass driver reverted to upstream (function and effect)Michael Levin
* Squad marking removed * Marauder walljump reverted to upstream * Minijump removed Enjoy!
2013-01-03* Buildable health accuracy increased to 8 bits, flags moved to eFlags (EF_B_*)Michael Levin
* Fixed Tesla Generator not firing over turrets or missing small aliens entirely -- it now shoots from the top of its bounding box to the top of its target's bounding box * Dying, evolving, or changing teams properly resets the weapon Flame thrower changes: * Reverted flame thrower missile radius to 15 * Muzzle is offset for flame thrower to shoot from the hand
2013-01-03* Lucifer Cannon projectile and bounding box shrunk a little to fit muzzle ↵Michael Levin
box restrictions * Buying a weapon with a number greater than 15 while having a Construction Kit will not give you zero ammo * Human viewheight shrunk to prevent flamer and new Lucifer Cannon shots from exploding inside the ceiling because on account of the muzzle box -- better aligned with the model now too. This should prevent the flamer from burning people in vents. * Some BG functions made more efficient; BG_GetPlayerWeapon should be used to get a Human's weapon because it may be switching * Adv. Dragoon barbs regenerate 10 seconds after being shot, not at regular intervals * Build weapons should no longer need to be in a block in bg_public.h * Tremulous doesn't use multiple weapons but the G_GiveClientMaxAmmo function will properly restore regular ammunition when a energy weapon is selected * MN_H_NOENERGYAMMOHERE obsolete; Changed some text to acknowledge that energy ammo is now available at armoury * Particles can set 'physicsRadius #' to use a fixed bounding box for collisions * Various HUD elements will immediately update to the new weapon when switching weapons Flamer changes: * Bounding box shrunk slightly * Client-side particles now used a static bounding box that matches the server projectile
2013-01-03* Lucifer cannon projectile a little bigger with chargeMichael Levin
* Sitting on a booster won't make it blink the warning bolt (SS_BOOSTEDWARNING), also made the warning fade * Lucifer Cannon repeat rates fixed * G_Damage() wont deal damage to dead entities * Maybe fixed the buildable killed with shotgun won't show dying anim bug * Attacked hives won't attack back when the OM is dead * The monstrous hive bounding boxes shrunk to something reasonable * Tesla Generator muzzle offset to the ball part, now fires over turrets * HUDs can make vertical charge bars * Human charge bar no longer overlaps scanner * "There are no spawns remaining" Changes to trample attack: * No longer deals locational damage (wtf?) * Charge "holding" restored * Hit repeat rate limited to 50 ms Changes to health cross icons: * Inspired by Techhead, made new icons (sorry, yours didn't look so good in game :-\ ) * Icons fade from one to another * Switched SS_HEALING_2X and SS_HEALING_ACTIVE meaning for Humans -- glows when on medi station, special icon for medkit * Poisoned icon for humans (Techhead's idea)
2013-01-03* Humans hit with Basilisk gas now show a particle effect until it wears offMichael Levin
* Basilisk gas view bob effect now properly accounts for shorter time due to protection * SS_POISONCLOUDED moved to EF_POISONCLOUDED (which used to be EF_TALK for chat balloons) * Added a userinfo cvar cg_alwaysSprint which, when enabled, makes humans sprint all the time (PS_ALWAYSSPRINT) * Power bolt on the Human HUD glows when sprinting (not very visible though)
2013-01-03* Gave Painsaw a crappy looking crosshairMichael Levin
* Change turret behavior again to make them even dumber (will not stay "spun up" anymore or retarget without spinning up again) * DCC will not complain about an attack when something is deconstructed * Fixed "\sell upgrades" command emptying energy weapons when a battery pack was sold with it * Spectators moving to lock view points now set teleport bit, hopefully prevents the ugly lerping Hive changes: * Will not fire unless the missile can actually hit * Will fire from the hive tip rather than the center * Fixed broken code that made hive fire when shot from out of hive range
2013-01-03* Added charge meter to the UI, can be disabled via GUIMichael Levin
* Trample and Lucifer Cannon charging reworked and moved to PMove * Can no longer "cancel" a charging Lucifer Cannon * STAT_MISC2 is now unused, booster and charge information can be inferred elsewhere (STAT_UNUSED) * Trying to fire an empty weapon makes a clicking noise (also a bugfix, apparently the server would spam EV_NOAMMO which did nothing but is now used for the clicking noise -- audible to all players) * Created an alternate, muffled Lucifer Cannon warning noise for other people's Lucifer Cannons * Fixed bug which prevented players from switching to a different player while spectating someone in the spawn queue * Spectators are now properly moved to the lock view position when spectating a player in the spawn queue
2013-01-03* Build delay pie slices are now 5 sec each for both teamsMichael Levin
* Removed individual weapon build delay * Removed Advanced Construction Kit, everything is built by the normal kit * S2+ buildables cannot be built by regular grangers * Clicking to pick team during spectator mode fixed * New cvar: cg_printDuplicate, when set to 0 (default) prevents duplicate messages from being printed to screen (they still show up in console) * Pressing ESC while editing a UI item (esp. new Say menu) will not cause your cursor to disappear next time you open a menu
2013-01-03* Removed unused G_CrushAttack argumentMichael Levin
Alien wallwalking changes: * Can wallwalk on buildables and players * Will cancel when hit with knockback from a shove or splash from a weapon * bg_pmove.c has a viewangles "correction" removed that would screw up the view when wallwalking on top of a player -- I don't know why this "correction" was added, if you find wallwalking bugs later this may be the cause Shove function changes: * Will shove enemy players (pretty weakly in practice) * Will not shove if you aren't trying to move * Can shove wallwalking players (a wallwalking dretch could block Tyrants before!)
2013-01-03* Turrets back to their "dumb" behaviorMichael Levin
Pounce changes: * Mechanics simplified, descriptions in tremulous.h * Client side prediction (no jerkiness) * Pounce will gradually cancel if released in midair or release with insufficent charge
2013-01-03Shut up compiler warnings (and possible bugfix)Ben Millwood
2013-01-03* Removed forced crouching for Tyrant crush, Tyrants should no longer bounce ↵Michael Levin
off of players * Added a new cvar, cg_hudFilesEnable, set to "1" to enable your custom HUD -- this is a temporary workaround to custom HUD incompatibility!
2013-01-03* Oops, Repeater now gives Repeater reward creditsMichael Levin
* Reloading a weapon and switching to blaster will not cause it to be "reloaded" * Removed "team change free" flag, all clients keep credits when changing teams * Human and Alien credits properly converted when switching teams (based on max) * Cannot open both say prompts at the same time anymore
2013-01-03* Mass Driver will only shoot through players and buildablesMichael Levin
* Killing buildables nets a reward (tweak in tremulous.h) * Removed some spurious comments and unused defines from tremulous.h
2013-01-03* Per Lakitu7's suggestion, changed spectator bounding box to match the ↵Michael Levin
dretch bounding box. Prevents spectators from getting stuck in the floor. * Buildables round their health up when encoding health information for transmission, no more 0 hp buildables that aren't dead * Removed the devmap credits hack I put in earlier * Can now use \itemact weapon to switch to weapon, also \itemact weapon/blaster will not repeatedly force a weapon change if that weapon is already selected * Options menu entry for "Sprint" changed to "Sprint / Dodge" with correct bind (+button6) Norfenstein decided to switch to fractional "frags" (aka evos) for Aliens: * BG_ClassCanEvolveFromTo rewritten to be more robust in case classes are shuffled around later * CG_AtHighestClass and BG_UpgradeClassAvailable merged into BG_AlienCanEvolve * Changed BG_GetValueOfHuman to BG_GetValueOfPlayer which now accomodates Aliens too * Aliens now must receive 400 credits per frag point (9 evos = 3600 credits!) * Aliens can only spend whole points * TK/Suicide penalties moved to tremulous.h and converted to credit values * Complex nasty Alien land goes bye-bye
2013-01-03Some more work on the Mass Driver:Michael Levin
* Fixed a bug in SnapVectorTowards which would snap incorrectly if the point was below the world origin. Also added an analogous function to work with normals (SnapVectorNormal). * Added weapon.cfg to source control to set alwaysImpact (to show flash along with blood spurt when hitting a player). * The maximum number of hits allowed moved to tremulous.h, set MDRIVER_MAX_HITS. * Since a the visual effects changed, removed old massDriverFire() function and toggle switch.
2013-01-03* I'm sick of entering \give 9999 every time I need to test something. ↵Michael Levin
Whenever cheats are enabled, players spawn with half-full credits. * Reactor used to deal more damage to each Alien when multiple Aliens attacked it, fixed to ONE radius damage call. Extensive visual modifications to Mass Driver: * Added a short, briefly-displayed pseudo-trail * Impact system modified to have a large impact sprite and otherwise be more consistent with Lasgun * Added several files for the trail and shader * Firing code modified to generate visually correct trails and impact positions * Added a new event for Mass Driver trails, doubles as impact event to save bandwidth The Mass Driver trail extends from the gun rather than the muzzle to be more visually realistic. Shooting it from the muzzle prevents you from even seeing the trail and in 3rd person looks very wrong. The downside to the shifted origin is that the impact positions (multiple hits only) are not aligned with the beam. Had to add a good bit of complicated, mathy code to generate impact events in visually accurate locations. Looks damn good though.
2013-01-03* Acid tube animation fixed (used to include part of dying animation!)Michael Levin
* Acid tube splash damage (from exploding) separated from attack damage, new variable added to tremulous.h to control that and the animation * Class X not allowed at stage # fixed to show the right stage number * Whether or not the mass driver will shoot through objects can be toggled from tremulous.h, don't forget to save g_weapons.c or 'make clean' to get the change compiled!
2013-01-03* Lowered dretch zoffset a bit to better fit inside bounding box, increased ↵Michael Levin
shadow a bit to better fit the larger modelscale we are using * Fulfilled benmachine's lolrequest: mass driver will not fire through players and buildables (but not teammates and team buildables if FF is off)
2013-01-03Added armour files to version control.Michael Levin
2007-09-30* (bug 3002) Fix to alien weapon traces that miss due to world collisionTim Angus
2007-09-27* (bug 3249) Improve repeater interaction with marked deconstructionTim Angus
* (bug 3321) Allow medkits and medistats to operate simultaneously * (bug 3310) Fix odd CalcMuzzlePoint implementation * Random refactoring of g_buildable.c * Add BG_GetClientNormal
2007-09-25* Remove B_REMOVED_TOGGLEBIT, use ps->misc per player insteadTim Angus
* Fix last spawn and uniqueness tests for marked deconstruction * Fix buildable collision tests for non-marked deconstruction * New g_markDeconstruct settings to guard against abuse + 0 off + 1 on, no replacements allowed + 2 on, replacements allowed of same type + 3 on, any replacements allowed * Unlink then relink all buildables when doing build tests * Fixes to tutorial text for marked deconstruction * Remove unused "weaponswitch" client command
2007-09-25* Replace "powerups" state data with "misc"Tim Angus
* Remove ps->ammo[ ] and replace with ps->ammo and ps->clips; this means only one ammo using weapon may be carried at once, but this is the case anyway * No need for BG_(Un)PackAmmoArray anymore, so remove them
2006-12-30* (bug 2952) Reverted trace origin to muzzle for goon pounceTim Angus
2006-12-29* (bug 2973) support for multiple initial base layouts ( Risujin, vcxzet, tjw )Tony J. White
2006-12-29* Buildable destruction marking (via g_markDeconstruct)Tim Angus
* It's now impossible to destroy the last spawn * Start of a new client side buildable status display
2006-12-20* (bug 2780) prevent another buy/sell bind which loses blaster (M. Kristall)Tony J. White
2006-12-09* (bug 2903) Added g_unlagged. This is based on Neil Toronto's unlaggedTony J. White
project. Thanks to kevlarman and WolfWings for help with this implementation for Tremulous.
2006-07-31* Fix to weapon changing bugs #2780 #2777 #2778 #2779 (tjw)Tim Angus
2006-07-31* Fix to ClientSpawn: spawn is NULL bug #2732 (tjw)Tim Angus
* Fix to lcannon spam bug #2758 (tjw) * Fix to goon pounce bug #2758 (tjw)
2006-07-31* Add otherEntityNum to playerState_t... and don't use it... yetTim Angus
* Improve ckit tutorial text * Entities.def correction
2006-06-11* tjw oopsTim Angus
2006-06-10* Fix to worldspawn defaults bugTim Angus
* Fix to > max damage zap bug * Add g_mapConfigs * Fix item switch when run out of ammo * Fix client side buildable tracing * Fix misc_portal_surface documentation
2006-04-09* Removed CS_SCORE? config strings -- they were unusedTim Angus
* Moved server command queuing from game to server -- sv_dequeuePeriod probably needs to be lowered * Added g_friendlyBuildableFire to enable friendly buildable fire
2005-12-10* s/Quake III Arena source code/Tremulous/Tim Angus
* De-quaked various bits and pieces * Integrated Tremulous into the ioq3 source * Relicensed Tremulous to be GPL * It compiles!!!!!!!!11111111!!!!1
2005-12-10* Move the game source from mod/src/ to src/Tim Angus
2005-12-10* Moved existing src directory out the way whilst I merge ioq3Tim Angus
2005-12-08* Reduced Dragoon pounce range to 64 from 96Tim Angus
* Dragoon pounce now incurs 400ms wait before other weapons may be used * Trapper cost down to 8 from 10 * Hovel is now free, but only one can be built * Teslagen damage up to 9 from 7 * Non locational damage does not apply locational armour anymore; instead it averages the armour regions together * Tweaks to pain blends * Added cg_animation.c, which apparently I forgot * Added generate-infopanes.sh and infopanes.def.h
2005-11-27* Fixed death by poison MOD s/antitox/medkit/Tim Angus
* Fixed Marauders momentarily disappearing when wall jumping * Fixed a potential crash bug involving the use of generic1 * Fixed being able to build multiple coincident repeaters if there is no reactor * Fixed incorrect message when invoking "buy ammo" with an energy weapon and no reactor present * Fixed invoking "reload" during a weapon reload causing an unnecessary reload * Fixed aliens having the wrong blood colour when shot with a las gun * Fixed hovel causing invisible builders
2005-11-24* 3D particlesTim Angus
* Brass ejections now done via particle system * static_tranform particle move type * thirdPersonOnly particle and trail system property * Trail jitter now done in two dimensions
2005-11-20* Abstract attachment systemTim Angus
* Scriptable trails system * Various other stuff I'm too tired to try and remember now
2005-10-15* Increased Tesla damage frequencyTim Angus
* Marginally increased Tesla damage * Teslas now produce exaggerated knockback effect * Hives now buildable on walls * Boosters no longer restore Dragoon spitballs * Dragoon spitballs now affected by gravity * Dragoon pounce attack damage reduced to 100 from 160
2005-10-03* Removed jump pad code (and associated media loading)Tim Angus
* Removed loading of some Q3 cruft * Spilled events attached to temporary entities are now reattached to their original entities, fixing the missing flame bug * Fixed "suicide god" bug * Fixed bug where zap ignores armour * Fixed missing particle systems when follow-spectating * Fixed potential bug involving dodgy pointer arithmetic in CG_LoadClientInfo * Cleaned up logic in CG_AddPlayerWeapon * MASK_SHOT traces no longer collide with corpses * Corpses timeout in 20 seconds instead of 60 * Improved robustness of spawn validation, fixing the bug on transit * A crapload of whitespace fixes
2005-09-02* Added width to zap traceTim Angus
* Hopefully fixed the "Ready" issues
2005-09-01* Reworked how weapon changes are performed, fixing bugs in the processTim Angus
* Weapon now drops momentarily when reloading * The stage kill counters are now incremented for structure kills if players did more then 50% of the total damage
2005-08-31* Reimplemented how buildables play damage sounds to not use the event systemTim Angus
* Reworked the ammo/clips packing system to remove the confusion of concepts * Marauder lightning now requires aim, does damage over time and chains to other entities * Implemented the Medkit -- a means for a human to restore health and cure poison in the field * "Disable Build Warnings" replaced with "Disable Warning Dialogs" and improved * Disabled client side ET_MISSILE collision * Sped spectator move speed up * Implemented "step down" physics for all characters; no more jumping down stairs * Re-adjusted step time values * Increased frequency with which the Acid Tube deals damage * G_RadiusSelectiveDamage no longer applies locational damage * Moved some speed adjustment code into prediction; should prevent some prediction misses * Tyrant can no longer charge up forever and must pass a specific minimum charge level * Wrapped all calls to trap_SendServerCommand in order to circumvent the q3amsgboom.cfg exploit * Implemented command queueing for commands sent to clients in order to prevent overflows even sv_floodProtect is off, but not by dropping commands * Added LOS check to creep slowing * Overmind now only complains if there are 0 spawns * Spawns can no longer be built when there is no Overmind/Reactor * The spawn closest to the point of death is chosen preferably if available * Evolving no longer restores all health * "give weapons" and "give ammo" cheats removed * Fixed restoration of energy weapons bug * When selling the battery pack, max ammo is given * Fixed a bug where locational damage could sometimes scale damage to 0 * Added stage information to the end of game stats * Hacked around trap_LinkEntity to allow missiles to have a bounding box displayed * Added G_ClosestEnt * Reduced Dragoon spitball damage from 120 to 110 * Reduced Tyrant claw damage from 120 to 100 * Reduced Tyrant charge damage from 160 to 110 * Increased Barricade regeneration rate from 12 to 14 * Increased Overmind health from 500 to 750 * Decreased Overmind regeneration rate from 10 to 6 * Doubled Blaster speed from 700 to 1400 * Reduced Painsaw damage from 18 to 15 * Reduced Painsaw range from 48.0 to 40.0 * Reduced Grenade price from 300 to 200 * Reduced Shotgun repeat rate from 1200 to 1000 * Increased Shotgun damage from 6 to 7 * Increased Mass driver damage from 35 to 38 * Increased Chaingun damage from 5 to 6 * Reduced Flamer repeat rate from 300 to 200 * Extended Flamer range * Increased ammo on all human weapons * Reduced splashdamage on MG Turrets * Moved build directory from tremulous to tremulous-dev