1) Install Blueprint
Follow the official Blueprint install steps for your panel.
2) Apply the One‑Time Core Patch (Auto‑Register)
Edit:Code:app/Providers/EventServiceProvider.php
Add these imports at the top:
PHP:use Illuminate\Support\Facades\Event; use Pterodactyl\BlueprintFramework\Libraries\ExtensionLibrary\BlueprintBaseLibrary;
Add this method inside the class:
PHP:private function registerBlueprintExtensionListeners(): void { try { $blueprint = app(BlueprintBaseLibrary::class); } catch (\Throwable) { return; } foreach ($blueprint->extensionsConfigs() as $config) { $listen = $config['events']['listen'] ?? null; if (!is_array($listen)) { continue; } foreach ($listen as $event => $listeners) { if (is_string($event)) { $event = str_replace('\\\\', '\\', $event); } if (is_string($listeners)) { Event::listen($event, str_replace('\\\\', '\\', $listeners)); continue; } if (!is_array($listeners)) { continue; } foreach ($listeners as $listener) { if (!is_string($listener)) { continue; } Event::listen($event, str_replace('\\\\', '\\', $listener)); } } } }
Call it inside boot():
PHP:public function boot(): void { parent::boot(); $this->registerBlueprintExtensionListeners(); User::observe(UserObserver::class); Server::observe(ServerObserver::class); Subuser::observe(SubuserObserver::class); EggVariable::observe(EggVariableObserver::class); }
3) Clear caches
Bash:cd /var/www/pterodactyl php artisan optimize:clear
4) Install PteroHook
Bash:cd /var/www/pterodactyl blueprint -install pterohook.blueprint
5) Set Webhook URL
Admin Panel → Extensions → PteroHook → paste Discord webhook URL → Save
Done.
Events will now trigger Discord alerts automatically.
