summaryrefslogtreecommitdiff
path: root/src/game/g_active.c
AgeCommit message (Collapse)Author
2013-01-03Improvements, fixes, and cleanups to smooth regenBen Millwood
* Store player class regeneration rates as floats * Only calculate regen modifier once if replenishing multiple health points simultaneously
2013-01-03* fix infinite loop in new regen code when aliens admitdefeatRoman Tetelman
2013-01-03Only regenerate health while aliveBen Millwood
2013-01-03Smooth regenerationBen Millwood
A regen rate of 4 hp/s now means you regenerate one health point every quarter of a second (fixes #28)
2013-01-03* ckit repairs automatically without having to press mouse2 (fixes issue #3)Roman Tetelman
2013-01-03* Allow boosters to give poison within the first 30 seconds of the gameBen Millwood
* Allow /noclip and /where to be used by spectators * Allow /noclip and /setviewpos to be used by specs even when cheats are off * Run PM_Weapon and set view height while noclipping * Make player speed while spectating or noclipping configurable via cg_flySpeed * Remove requirement for cgame's cvartable to have a non-null vmCvar pointer * Make PM_Paralyzed a macro and add a similar category, PM_Live * Stop dretches from biting dead buildings
2013-01-03* Remove SS_INFESTING and PM_SPINTERMISSION since they were not usedBen Millwood
* Merge SS_WALLCLIMBINGCEILING and EF_WALLCLIMBCEILING * Remove ui_emoticons, using the value of cg_emoticons for both contexts. * Add PM_Paralyzed() to get rid of all the silly >= PM_DEAD comparisons * Don't allow players to taunt while dead * Fix full ammo check in reload (oops) * Fiddle with bg_lib.h _MAX/_MIN defines, fix min(), add [u]intX_t typedefs * Remove non-functional cgame command (thanks Amanieu for spotting)
2013-01-03* from __future__ import thirdpersonspec (Lakitu7)Roman Tetelman
2013-01-03* Booster was providing extra regeneration without an overmind present (bob)Roman Tetelman
2013-01-03 * Add BG_EventName and use it to simplify a series of debugging messagesBen Millwood
* Correct crouch check in ClientTimerActions * Ensure animation togglebit on buildables is only used once per frame (bug 3377) * Make G_FloodLimited more robust and with a pointlessly informative return value * Add a brief comment to the G_SayArg* functions to explain their purpose, which wasn't at all clear to me until I experimented with them * Remove more redundant va()s * Remove an unused variable and associated functions that were causing a compiler warning
2013-01-03* fix for unlagged being turned off for clients who spawn (bob)Roman Tetelman
* fix ui_messagemode2
2013-01-03* add cg_unlagged to allow clients to disable backward reconcilliation for ↵Roman Tetelman
their own attacks only
2013-01-03* players dying to structures no longer give full credit towards stagesRoman Tetelman
* credit for damage done is reset when a player/structure heals to full
2013-01-03 * Fix tabsBen Millwood
* Fix bsuits * Um.
2013-01-03* voice chat stuff (no, not like TeamSpeak)Tony J. White
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-03* (bug 3057) Granger breaks under certain conditions (Risujin)M. Kristall
* (bug 3256) G_admin_print to a tty should not decolour if com_ansiColor is set (Ben Millwood) * (bug 3392) Console is affected by flag @ (Chris "Lakitu7" Schwarz) * Automatically load default admin levels when g_admin is disabled, since admin commands can still be used (since r894) * Make return value of G_SelectiveRadiusDamage useful and use it for Overmind and Reactor attacks * /entitylist was skipping entity 0 * Check original search string against IP and slot number for !ban * Preserve score and ping so they are always reported correctly * Random refactoring and formatting fixes
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* 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-03Need to clear the Tyrant's fall velocity before every PMove or we can get ↵Michael Levin
insta-squashed telenodes from garbage fallVelocity values.
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* Spawn queue displays ordinals ("You are 2nd in the spawn queue")Michael Levin
* Server does not communicate the number of eggs and telenodes to all clients anymore -- the correct number of spawns is passed to the client when they are in the spawn queue only (puts PERS_UNUSED to use) Sticky and dead spectate (holy fuck that was hard for something so simple sounding): * Big thanks to Lakitu7 for passing along the patch (with contributions from TJW, Undeference, and R1CH) * UI has a new option to enable/disable sticky spectate * Spectators get to see the full dying animation * Dead players can spectate their teammates whether they are in the spawn queue or not I corrected several nasty bugs and recoded a LOT of the patch. Potentially the "spawn without a weapon" thing may have been fixed but maybe not. There are possibly other new bugs so keep an eye out for them.
2013-01-03* Norfenstein's increased Dretch attack repeatMichael Levin
Scaled back the gameplay implications of the recent wallwalking changes a bit: * Wallwalking players will not get knocked off walls by knockback forces * Cannot shove enemies again * Shoving will still knock wallwalkers off of you * Getting shoved off of someone while toggle wallwalking will not disable your WW
2013-01-03* Shut up some compiler warnings (but not all of them)Ben Millwood
* Move ClientCommand error messages to menu system * cg_disableWarningDialogs 2 == no messages at all * decide clientside what kind of dialog to use and merge some redundant menus as a result * add spec dialog (pretty much identical to human/alien dialogs)
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-03* Started updating infopanes with Badger, need to do moreMichael Levin
* Fixed a bug where regular Basilisk would not heal faster by a booster sometimes (found thanks to new GUI indicator!) * Un-reverted Lucifer Cannon sound heard by others, with Norf's blessing * Added a Help menu listing mod changes and other stuff (ESC -> Help), edit ui/help.txt * Human HUD item list will now wrap around so that it never hides items, also made it a little wider GUI cross changes: * Human GUI health cross glows when medkit is active * Alien GUI health cross glows when on creep * Double, triple healing rates show as multiple crosses
2013-01-03Another bugfix, Lucifer Cannon won't start charging again after an overcharge.Michael Levin
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* 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-03* Dodge no longer drains stamina while flying with a jetpackMichael Levin
* Stamina will replenish when moving whith jetpack on * Damage region calculation code rewrite to be correct and compact * Added damage test function (cheats only), \damage [damage] * Norfenstein's balance tweaks: Dretch HP 25 -> 20, Basilisk grab time reduced
2013-01-03Added armour files to version control.Michael Levin
2007-10-30* (bug 3384) Remove server side armoury refresh and replace with UI sideTim Angus
refresh * Add trap_Key_SetOverstrikeMode and trap_Key_GetOverstrikeMode to cgame * Change Text_[Width|Height] to return floats * Add Text_Em[Width|Height] * Add CG_AlignText to cut down on code duplication * Add itemDef_t::textvalignment for vertical text alignment * Add UI_DrawTextBlock to replace a lot of duplicate code * Rewrite text wrapping code from scratch so that it actually works * Add UI_OwnerDrawText * Add expression evaluator to .menu parser * Split off Border_Paint from Window_Paint * Scale slider items to fit their rect * Rework edit field widgets to behave somewhat more correctly * Fix a few listbox widget layout issues * Don't display scrollbars in "notselectable" listbox widgets * Make scoreboard team labels ownerdrawn * Menu script rework + Use the expression evaluator to replace lots and lots of absolute coords with relative ones, hopefully easing future maintenance + Remove lots and lots of textalign[xy] that were present to work around broken text alignment routines + Replace a bunch of numeric constants with ones from menudef.h + Compose the huds from tremulous_common_hud.h + Generally neaten things up + Lots of whitespace fixes
2007-10-01* Fix to bug where crouching and moving wouldn't replenish staminaTim Angus
* s/MASK_PLAYERSOLID & ~CONTENTS_BODY/MASK_DEADSOLID/ * When finding a player in the server browser, only list each server once
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
2007-09-23* (bug 2756) s/damage/dmg/Tim Angus
* (bug 2717) Move respawning for ClientThink to ClientEndFrame * Remove redundant cvar g_forcerespawn
2007-09-22* (bug 3309) Fix to angle clamping (/dev/humancontroller)Tim Angus
* (bug 3298) Boosters still heal and give poison when dead (David Severwright) * (bug 3070) Check map rotation targets exist during compilation * (bug 3282) Add missing terminating ^7 to chatText (Ben Millwood) * (bug 3357) Extend obituary name length to MAX_NAME_LENGTH (Rocinante)
2007-09-21* Remove lots and lots of redundant commentsTim Angus
2007-09-16* (bug 2783) Rework lcannon firing logicTim Angus
* Remove STAT_BOOSTEDTIME, instead inferring it via SS_BOOSTED * Set EF_TELEPORT_BIT when buying or selling the bsuit
2007-06-12* ClientCommand() rewriteM. Kristall
2007-03-25* ingame menus redesignedTony J. White
* spectators can now participate in non-team votes * added teamvote "admitdefeat" * replaced "nextmap" vote with "draw" * removed vote "clientkick" vote (uses "kick" instead) * removed teamvote "teamclientkick" (uses "kick" instead) * renamed teamvote "teamkick" to teamvote "kick" * added teamvote "denybuild" and "allowbuild" * added vote "mute" and "unmute" * added !denybuild and !allowbuild g_admin commands * added /ignore and /unignore commands (and menu support) * Game -> Info (formerly About) shows server settings instead of local ones * Voting keys can now be configured in the Options menu * Voting key binds now display with the vote status (F3 and F4 will be the eventual default binds for "teamvote yes" and "teamvote no" respectively)
2006-12-30* (bug 2960) Pain indication no longer displayed during intermissionTim Angus
* (bug 2858) Wrong collision mask allowing bad spawns * Adv Granger spit now slows players as it was always supposed to
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-11* (bug 2961) G_UnlaggedCalc() crash on map load when using .so instead of qvmTony 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-12-04* (bug 2934) cap health sent as eventParm at 255 to prevent too many tyrantTony J. White
pain sounds from int8_t overflow/underrun ( Risujin ) * (bug 2934) prevent int8_t overflow/underrun on eventParm in G_AddEvent and print WARNING when this occurs.