Skip to content

ozy24/q2re-plasmagib

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

2 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Plasmagib mod for Quake 2 Rerelease

This small server-side mode adds a new gametype called "Plasmagib". Inspired by Quake Live lightning-gun-only servers, this mod restricts players to only using the Plasma beam weapon in fast paced matches that encourages accurate tracking.

🎯 Features

Core Gameplay

  • Quake Live Lightning Gun Feel: Faster fire rate, reduced knockback, limited range
  • Infinite Ammo: No need to hunt for cells - focus on fragging
  • Weapon Spawns Disabled: Only plasma beam spawns in Plasmagib mode
  • Forced Gibbing: Optional visceral deaths with plasma beam kills

Advanced Features

  • Dual Weapon Modes: Toggle between Quake Live and original Q2 plasma beam attributes
  • Damage-Based Scoring: Score points based on damage dealt, not just kills
  • Vampiric Damage: Heal yourself based on damage dealt (optional)
  • Accuracy Tracking: Real-time accuracy statistics with HUD display
  • Bot Support: Full bot compatibility

Full CVAR list

Console Variables (CVars)

Cvar Default Description
g_plasmagib 0 Main toggle - Enable/disable Plasmagib mode
g_plasmagib_ql_gunfeel 1 Weapon attributes - QL vs original plasma beam feel
g_plasmagib_gib_on_death 1 Forced gibbing - Gib players on plasma beam death
g_plasmagib_vampiric_dmg 0 Vampiric healing - Heal based on damage dealt (max 200 HP)
g_plasmagib_damage_scoring 1 Damage scoring - Score points based on damage (10 dmg = 1 point)
g_plasmagib_acc_sv 1 Server accuracy - Show accuracy on player HUD (no client modification required)
g_plasmagib_acc_cl 0 Client HUD accuracy - Show accuracy on player HUD (nicer but requires client game_x64.dll)

πŸš€ Installation

Prerequisites

  • Quake 2 Rerelease (Steam/GOG version)
  • Visual Studio 2022 (Community Edition or higher)
  • vcpkg (included in project)

Building from Source

  1. Clone this repository:

    git clone https://github.com/yourusername/q2re-plasmagib.git
    cd q2re-plasmagib
  2. Navigate to the rerelease directory:

    cd q2re-plasmagib/rerelease
  3. Build the project:

    build.bat
  4. Copy the generated game_x64.dll to your Quake 2 Rerelease folder

Quick Start

  1. Enable Plasmagib mode: g_plasmagib 1
  2. Start a deathmatch game

Weapon Attributes

Quake Live Mode (g_plasmagib_ql_gunfeel 1)

  • Damage: 7 per hit
  • Knockback: 15 (minimal)
  • Range: 768 units (limited)
  • Fire Rate: Fast (frames 8-10)

Original Mode (g_plasmagib_ql_gunfeel 0)

  • Damage: 15 per hit
  • Knockback: 75 (high)
  • Range: 8192 units (unlimited)
  • Fire Rate: Slower (frames 8-13)

Recommended Settings

g_plasmagib 1
g_plasmagib_ql_gunfeel 1
g_plasmagib_gib_on_death 1
g_plasmagib_damage_scoring 1
g_plasmagib_vampiric_dmg 0  // Enable for more aggressive gameplay

πŸ€– Bot Support

The mod includes full bot compatibility:

  • Bots understand plasma beam mechanics
  • AI adjustments for QL-style gameplay
  • Proper bot difficulty scaling

πŸ”§ Technical Details

Weapon Mechanics

  • Hit Registration: Instant hit-scan weapon with precise tracking
  • Range Limitation: QL mode implements proper range falloff
  • Damage Calculation: Real-time damage tracking with remainder system
  • Accuracy System: Tracks shots fired vs. shots hit with sub-frame precision

Performance

  • Optimized Rendering: Efficient beam rendering with minimal performance impact
  • Network Friendly: Optimized network code for multiplayer stability
  • Memory Efficient: Minimal memory footprint increase

πŸ“Š Statistics

The mod tracks comprehensive statistics:

  • Accuracy Percentage: Real-time tracking of hit/miss ratio
  • Damage Dealt: Total damage inflicted on opponents
  • Score System: Flexible scoring based on damage or kills
  • Performance Metrics: Frame rate and network optimization

πŸ› οΈ Development

Project Structure

q2re-plasmagib/
β”œβ”€β”€ rerelease/           # Main mod source code
β”‚   β”œβ”€β”€ g_*.cpp         # Game logic
β”‚   β”œβ”€β”€ p_*.cpp         # Player/physics code
β”‚   β”œβ”€β”€ rogue/          # Rogue mission pack integration
β”‚   └── build.bat       # Build script
β”œβ”€β”€ original/           # Original Q2 reference code
β”œβ”€β”€ fgd/               # Mapping tools
└── README.md          # This file

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Test thoroughly
  5. Submit a pull request

Building Requirements

  • C++17 or later
  • Windows SDK 10.0.19041.0 or later
  • vcpkg for dependency management

πŸ“œ License

This project is licensed under the GNU General Public License v2.0 - see the LICENSE file for details.

πŸ™ Credits

  • id Software - Original Quake 2 engine and game
  • Nightdive Studios - Quake 2 Rerelease engine improvements
  • Quake Live Community - Lightning Gun mechanics inspiration
  • Contributors - All community members who helped improve this mod

πŸ“ž Support

  • Issues: Report bugs via GitHub Issues
  • Discussions: Join the community discussion
  • Wiki: Check the project wiki for detailed guides

πŸš€ Changelog

Latest Version

  • βœ… Vampiric damage system
  • βœ… Dual weapon mode support (QL vs Original)
  • βœ… Advanced accuracy tracking
  • βœ… Damage-based scoring system
  • βœ… Full bot compatibility
  • βœ… Optimized performance and networking

Ready to frag? Enable Plasmagib mode and experience the lightning! ⚑

"In the arena, only the fastest survive."

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages