Responsible Use Disclaimer
gKill is a combat/toy/engineering system intended for consensual use in appropriate Second Life environments: combat sandboxes, damage-enabled regions, private testing areas, and situations where everyone involved understands what kind of nonsense they are signing up for.
Do not use this system to harass random people, disrupt events, grief public spaces, attack non-consenting users, evade region rules, or make yourself someone else's problem. If you take this into a random club, store, roleplay region, residential parcel, or other non-combat area and start launching traps or attacks at people who did not opt into it, that is on you.
This device is a tool. How you use it is your responsibility.
I do not endorse griefing, harassment, region disruption, spam, crashing, lag attacks, or abuse of Second Life residents or regions. If you use gKill irresponsibly and get banned, ejected, muted, reported, abuse-reported, estate-banned, blocked, yelled at, or otherwise launched directly into the consequences dimension, that is not my fault.
Use it with friends. Use it in combat regions. Use it in places where the atmosphere makes it clear that combat toys are welcome. Test, experiment, break your own stuff, and have fun.
Just do not be stupid with it.
-Madgeek
Quick Start
- Wear/add the HUD.
- Calibrate the HUD by clicking the dot. Move the HUD wherever you like on-screen.
- Click a target's name.
- Click a module - Try gfind first as a harmless test.
- Chat end to clean up.
Core Targeting and Chat Commands
The chat command line is the most direct way to use gKill. You can control the system via open chat or a private channel that will be communicated to you when you first wear the device. The targeting rules below are also the foundation used by the device's other interface layers.
To trigger a module, type the module name followed by your target's legacy name. You can use a full name or a partial name. Keep in mind that if you use a partial name, all names fitting the pattern in the current region will be matched. For example, if "Ressie Smith" and "InnocentBystander Resident" are both in the region, and you type "gkill res", they will both be targeted. You can't target yourself via full or partial names.
In addition to using a legacy name, there are several other ways that you can target a module:
Do not include the brackets (< and >) in your commands. These simply indicate placeholders.
- <module_name> <target_uuid> - This will trigger <module_name> on <target_uuid>, where <target_uuid> is a 36-character UUID (aka key).
- <module_name> !<display_name> - This will trigger <module_name> on all matching <display_name> in the region.
- <module_name> me - Uses <module_name> on yourself.
- <module_name> - Brings up a dialog of potential targets, so you can select one.
Note: UUID targeting can identify an avatar by key even if they are outside your current region, but it does not let modules act across regions. A module still requires the target to be in its current region before it can activate.
To stop all modules in the current region, chat gstop, end, or stop. They all do the same thing. You can have much more control over what is stopped when you use one of these commands - see 'System Commands' for more details.
Advanced Targeting - Targeting By Range, Filters, and Multiple Targets
You may use * as the <range> parameter for all @ commands for infinite range.- <module_name> @<range> - This will trigger <module_name> on all targets within <range> meters of your position (except yourself).
- <module_name> @<range>.c - This will trigger <module_name> on all targets within <range> meters of your camera's position (except yourself).
- <module_name> @<range>.d - This will trigger <module_name> on all targets within <range> meters of your position (except yourself) in LL damage-enabled land.
- <module_name> @<range>.f - This will trigger <module_name> on all targets within <range> meters of your position (except yourself) who are flying.
- <module_name> @<range>.s - This will trigger <module_name> on all targets within <range> meters of your position (except yourself) who are sitting.
- <module_name> @<range>.m - This will trigger <module_name> on all targets within <range> meters of your position (except yourself) who are in mouselook.
- <module_name> * - This will trigger <module_name> on all targets in the region. This is the same as using <module_name> @*.
You can separate targets with a comma. For example, gkill crooked, !madgeek, @20, me would 'gkill' yourself, everyone within 20m, and anyone in the region with "crooked" in their legacy name or "madgeek" in their display name.
Engineering Note: gKill's command parser has always been fast, even with complex range filters, UUIDs, display-name targeting, and comma-separated multi-target commands. The major v7 improvement is in module dispatch. Rezzed modules can now receive a full target UUID directly at startup, which removes the old multi-step chat handshake between the rezzer and the module. In practical terms, modules wake up already knowing what they are supposed to do, with less chatter, less delay, and fewer moving parts between command and execution.
Control Interfaces
gKill can be controlled through several interface layers. These interfaces are not mutually exclusive; you can use any combination of them at the same time. Chat commands, blue dialogs, the legacy hovertext/prim-button HUD radar, and the modern control panel all operate on the same loaded modules, target resolver, and stop/cleanup system.
Think of these interfaces as different control surfaces for the same engine. Use whichever one is fastest, clearest, or most compatible for the situation you are in.
| Interface | How to Access | Best For | Notes |
|---|---|---|---|
| Chat Command Line | Type module or system commands in open chat, or on the private control channel. | Power-user control, exact targeting, command history, gestures, and macros. | Supports the full targeting syntax: legacy names, display names, UUIDs, ranges, filters, and comma-separated multi-target commands. |
| Blue Dialogs | Click the main HUD button, or chat gmenu. |
Reliable fallback control and familiar old-school Second Life interaction. | Simple, compatible, and easy to follow, but slower than direct chat or HUD-based selection. |
| Legacy HUD Radar | Chat gradar on to enable it, gradar off to disable it, and !calibrate to recalibrate HUD text offset and button size. |
Fast visual target selection without MOAP or a browser. | Uses hovertext and prim buttons. When enabled, it shows the nearest 25 users in the region and lets you click a target, then choose a module. |
| Modern Control Panel | Open the control panel link provided by the gpanel command. This link will remain valid for ~6 hours. Keep it secret! |
Modern visual control, situational awareness, and clear confirmation before execution. | Shows operator and region status, minimap/radar, target list, available actions, selected module state, target stop, and global stop controls. |
Shared backend: All four interfaces talk to the same module inventory and targeting system. Starting a module from one interface and stopping it from another is expected behavior.
Chat Command Line
The fastest and most precise interface once you know the command grammar. Use it when you want direct control, complex filters, UUID targeting, or multiple targets in one command.
Blue Dialogs
The classic Second Life menu system. It is intentionally simple and remains useful as a compatibility layer when you want guided choices instead of typed commands.
Legacy HUD Radar
The old-school hovertext and prim-button radar. It is lightweight, fast, and accessible, especially for quickly selecting targets without interacting with the modern control panel.
Modern Control Panel
The modern HTML/CSS interface. It provides the richest visual overview of the region, target list, selected action, and stop controls. For now you can operate the panel via a web browser. A dedicated in-world HUD-based MOAP interface is 'coming soon'.
Module Reference
The following modules are available by default in 'v7.09.p' of the gKill System.
gKill is designed as a combat and engineering tool, not a denial-of-service device. It does not intentionally include crashers, laggers, spam attacks, region disruptors, or other features whose purpose is to break Second Life rather than play within it. You can rest assured that no device I make will intentionally do any of these things.
Kill Modules5 modules
- gkill Kill The namesake of this entire device, the gkill module is an exceptionally efficient killing machine. If your target is not shielded, they will be 'sent home' instantly. The v7 gkill module uses LSL's Combat2 API, the v6 gkill module has been renamed to 'gpoke'. This module is temp-on-rez and will time out after a few minutes.
- goverkill Kill Kills standing targets shielded with Combat2 API damage negation shields/armor. Will not work on targets sitting on phantom NPVs. This module is temp-on-rez and will time out after a few minutes.
- gpoke Kill Old-school 'gkill'. Single use. This module is temp-on-rez and will time out after a few minutes.
- gstrike Kill Launch a realistic-looking Javelin seeking missile at your target with this module (will even do 60hp anti-tank damage!).
- gninja Kill + Trap An attack that freezes your target in place and kills them, which is nothing new by SL standards. However, gninja is 100% completely invisible. Barring future changes in the way SL works, you can't see it, period. gninja will attempt to kill your target as many times as it can.
Trap Modules4 modules
- gtrap Trap A trap capable of entering no-script/no-entry/no-rez areas (Safe Zones). If your target attempts to sit on the trap, they will be "deformed".
- gnull Trap gnull is virtually the same thing as gninja, minus the killing part (invisible trap).
- gint Trap An "out-of-the-box" style trap. When used, it creates "interceptor" plates in a sphere around your target, inhibiting their motion.
- gint_sp Trap The same thing as gint, however it only uses a single prim (sp = single prim).
Kinetic Modules6 modules
- greflect Kinetic This module will make your target's bullets go backwards. Requires push-enabled land.
- gfreeze Kinetic An attack that inhibits your target from moving properly. No, this will NOT cause your target's computer to "freeze". Requires push-enabled land.
- gwhiz Kinetic Orbits your target. Requires push-enabled land.
- gfling Kinetic Orbits your target in no-push land.
- gdrag Kinetic An attack that allows you to drag a standing target around a region, as if they were flying under your control. After engaging this module on a target, you move your camera to a desired "anchor" location, and left-click your mouse to send your target flying toward that location.
- gshoop Kinetic Shoop Da Whoop! Adapted from the "[AYF] Epic Shoop is Epic" device, with credit to Happ MacDonald for the wonderful scripting.
Follower Modules3 modules
- gtyson Follower Is someone being a badass? Let them know with this.
- gdrain Follower Suck someone's brains out with a giant tube. This module is cosmetic only, but it looks cool.
- gtag Follower Stick a hovertext tag with text of your choosing on someone with this module.
Utility Modules2 modules
- gfind Utility This module will point a particle beam at your target.
- gtpb Utility Teleport you to a target of your choice. Simply target someone with gtpb, then sit on the beam that surrounds your avatar. If your client has RLVa enabled, you will automatically be teleported.
System Commands
Miscellaneous commands:
- ghelp - Provides a link to this help webpage.
- gpanel - Provides a link to your Modern Control Panel. This link will remain valid for ~6 hours. Keep it secret!
- greset - Resets all system scripts.
- gmenu - Brings up the main system dialog menu.
- gtpbc - A self-teleporter. Issue the command, sit on the beam, move your camera somewhere, and click "OK" in the blue dialog to teleport to that location.
- gplat - Will create a very sexy looking platform under you. When you are done, you must type end gplat to get rid of it.
- gradar on/off - Enable/disable the HUD radar UI.
- !calibrate - Recalibrate the radar's HUD text offset & button size.
Ending modules:
You can stop all modules in the current region by chatting gstop, end, or stop. They all do the same thing, and can be used interchangeably.
You can also selectively end modules based on several criteria:
- Module name - end gtrap - Stop all "gtrap" modules in the current region.
- Target partial name - end crook - Stop all modules in the current region targeted to someone with "crook" in their name.
- Target key - end fa68894e-6b8b-4371-a95d-29496007a6dc - Stop all modules in the current region targeted to whatever is assigned the given key.
About gKill
One Last Hurrah
gKill v6 was released in 2012.
After that, I stepped away from Second Life and assumed the system would eventually fade into old-inventory history.
Thirteen years later, I logged back in just to see if any of it still worked - and found people still using it, still asking about it, and still wanting an update.
So here it is: gKill 7.
What gKill Is
gKill 7 is a modular combat HUD for Second Life. It is built for people who enjoy old-school SL combat toys, weapon testing, sandbox chaos, scripted combat experiments, and weird engineering projects that probably should not still work after this many years.
At its core, gKill is a fast targeting and module-launching system. You choose a target, choose an action, and the HUD handles the rest.
Why It Exists
gKill exists because Second Life combat has always been weird, creative, messy, and technically fascinating.
Over the years, I saw plenty of combat HUDs and scripted systems with interesting ideas. Some were genuinely impressive, and a few creators from that scene still have my respect.
But I also saw a lot of trends I wanted to avoid: lag-heavy scripts, crashers, spammy features, fragile builds, inconsistent commands, rough interfaces, and "good enough" engineering.
gKill was my attempt to build the kind of system I wanted to see: fast, modular, polished, predictable, and designed as a complete tool instead of a pile of effects.
It was never meant to be a region-wrecking toybox. It was meant to be a cleaner, sharper, better-engineered take on a very Second Life kind of chaos.
gKill 7 exists because, apparently, this thing still refuses to die.
Generative AI Declaration
Generative AI tools were used to assist with selected visual assets, documentation layout, copy editing, and portions of the front-end HTML/CSS/JavaScript used in the modern control panel and this manual.
Generative AI was not used to create any in-world LSL scripts, combat modules, targeting logic, module behavior, or back-end server-side scripts.