AMXXPawn Language - Extended

An extended, modern and powerful development experience for the classic AMXXPawn language.

View the Project on GitHub NiceFeatures/amxxpawn-language

Página Inicial | Histórico de Mudanças

This project revives and modernizes the development experience for AMX Mod X scripters. If you love creating plugins for Half-Life, Counter-Strike 1.6, and other GoldSrc mods but miss modern tools, this extension is for you.

It transforms VS Code into a powerful IDE for Pawn, bringing features that were previously exclusive to newer languages.

✨ What’s New (v1.5.3)

Fixed


✨ What’s New (v1.5.1)

Fixed


✨ What’s New (v1.5.0)

Added


✨ What’s New (v1.4.0)

Added

Fixed


✨ What’s New (v1.3.2)

Fixed


✨ What’s New (v1.3.1)

Fixed


✨ What’s New (v1.3.0)

Added


✨ What’s New (v1.2.9)

Added


✨ What’s New (v1.2.8)

Fixed


✨ What’s New (v1.2.7)

Added


✨ What’s New (v1.2.6)

Added


✨ What’s New (v1.2.5)

Added


✨ What’s New (v1.2.4)

Added


✨ What’s New (v1.2.2)

Fixed


✨ What’s New (v1.2.1)

Added


✨ What’s New (v1.2.0)

Added


✨ What’s New (v1.1.9)

Fixed


✨ What’s New (v1.1.8)

Fixed


✨ What’s New (v1.1.7)


✨ Key Features (Extended Version)

Unlike the original extension, this Extended version provides tailored optimizations focused on local custom workflows, alongside a complete Language Server toolset:

🚀 Installation

  1. Install Visual Studio Code.
  2. Open the Extensions tab (Ctrl+Shift+X).
  3. Search for AMXXPawn Language Service.
  4. Click Install.
  5. Reload VS Code and enjoy!

You can also install it directly from the Marketplace page.

⚙️ Configuration (Optional Customization)

By default, the extension automatically downloads and sets up the AMXX compiler for you (Zero Configuration!). However, if you want to use a specific, custom compiler version, you can tell the extension where it is located.

  1. Open VS Code Settings (Ctrl + ,).
  2. Click the “Open settings.json” icon in the upper-right corner.
  3. Add the following properties to your settings.json:
{
    // Path to the amxxpc compiler executable.
    // (Leave empty or undefined to use the auto-downloaded compiler)
    "amxxpawn.compiler.executablePath": "C:\\path\\to\\your\\compiler\\amxxpc.exe",

    // List of folders where the extension should look for .inc files.
    // (Leave empty to use the auto-downloaded compiler's include directory)
    "amxxpawn.compiler.includePaths": [
        "C:\\path\\to\\your\\compiler\\include"
    ],

    // Enables or disables inline text errors in the editor (false by default).
    // Keep it false if you use extensions like Error Lens to avoid duplicate messages.
    "amxxpawn.compiler.inlineErrors": false,

    // --- RECOMMENDED SETTING ---
    // For a cleaner and smarter autocomplete experience,
    // disable generic suggestions based on words in the file.
    "editor.wordBasedSuggestions": "off"
}

IMPORTANT for Windows users: In JSON files, you must use double backslashes (\\) or forward slashes (/) in paths.

Practical Example:

{
    "amxxpawn.compiler.executablePath": "C:/AMXX/compiler/amxxpc.exe",
    "amxxpawn.compiler.includePaths": [
        "C:/AMXX/compiler/include"
    ]
}

⌨️ Available Commands

Open the Command Palette (Ctrl+Shift+P) and type AMXXPawn to see the available commands:

Keyboard Shortcuts

Shortcut Action Description
Ctrl+Click Go to Definition Jump to the definition of the symbol under the cursor
Shift+F12 Find All References Find all occurrences of the symbol in the current document and includes
F2 Rename Symbol Rename all occurrences of a variable, function, or constant in the document
▶️ button Compile Plugin Click the play button in the editor title bar to compile

🛠️ For Developers and Contributors

This project is a modernization of a legacy codebase, now using TypeScript and the latest vscode-languageclient APIs. Contributions are very welcome!

To compile and test locally:

  1. Clone the repository:
    git clone https://github.com/NiceFeatures/amxxpawn-language.git
  2. Install dependencies:
    npm install
  3. Compile the project (bundle with esbuild):
    npm run esbuild
  4. Open the project in VS Code and press F5 to start a debugging session.

🙏 Acknowledgements

This project is a continuation and modernization of the incredible work originally done by KliPPy. All credit for the solid foundation and the original idea goes to him.

📄 License

This project is licensed under the GPL-3.0. See the LICENSE file for more details.