About DuckAPI
This is a DLL that works directly with the client - it's not a bot and doesn't require any bot to function. It provides the same Python plugin system that phBot offers.
Important: This is not a Silkroad Proxy or a game bot that you need to connect to so it can handle client/server packets. What does that mean? It means you can use it to do things you dream of - even in protected environments like Maxiguard or VsroPlus macro servers.
That also means we can use it standalone, whether launching the game via its original launcher or something like EDX Loader. And we can still use it alongside sBot or mBot - but now with a phBot-like Python plugin system.
Introduction Video
What is DuckAPI, required files, API similarity with phBot, and how to adapt existing phBot plugins
Key Features
Direct Client Integration
Works directly with sro_client.exe without requiring a bot
phBot-Compatible API
Almost identical to phBot APIs for easy plugin adaptation
No Bot Required
Standalone DLL injection system
Works with Protection
Functions in Maxiguard, Vsroplus, KGuard servers
Plugin System
Full Python plugin support with event handlers
Packet Injection
Send and receive client and server packets
Required Files
First, here are the files you'll need to put inside your game folder:
- DuckAPI.dll - this is my DLL that you'll inject into sro_client.exe
- python38.dll - the Python runtime DLL required to run the interpreter
- The Python environment directories inside the python38 folder located in the plugins folder
- A DLL injector - You can download one from here
API Compatibility
The great thing about the APIs I built is that they're almost identical to phBot's. As you'll see in the first video, I took the xPacketTool plugin from phBot and just changed the library names as follows...
Instead of phBot imports:
from phbot import *
import qtbind
Use DuckAPI imports:
from duckapi import *
import duckui
And the rest of the code literally stays the same.
Note: Not all phBot APIs are available in this version of DuckAPI. If you want to reuse a phBot plugin like I did in the video, make sure all used APIs exist in DuckAPI.
Available APIs
DuckUI APIs (User Interface)
Tab & widget creation, manipulation, list operations
DuckAPI Core
Logging functions, packet injection, utility functions
Event Handlers
handle_joymax, handle_silkroad, handle_chat, event_loop
Click below to view the complete API reference with all available functions.
Example Plugins
xPacketTool Plugin
Packet inspection and analysis tool adapted from phBot with minimal code changes. Perfect for understanding packet structure.
Duck Smart Trace
Advanced tracing plugin that works even when the leader uses keyboard movement or presses in the sky. Better than standard phBot trace.
DuckControl (xControl)
Command handling plugin similar to xControl for executing actions based on chat commands from designated leaders.
Additional Tutorial Videos
Duck Smart Trace
A better phBot trace plugin that handles keyboard movement and sky pressing
DuckControl (xControl)
Extend command handling and add new actions like Q1 auto-teleport
Installation & Usage
- Extract all required files (DuckAPI.dll, python38.dll, python38 folder) to your Silkroad game folder
- Use a DLL injector to inject DuckAPI.dll into sro_client.exe
- Place your Python plugins in the plugins folder
- Launch the game and the plugins will load automatically
For detailed setup instructions and plugin development guides, refer to the tutorial videos.