ARC عبارة عن فئة PHP خفيفة الوزن ، تتيح لك التوصيل وإرسال الأوامر بسهولة إلى خادم Battleye الخاص بك ، بما في ذلك خوادم لعبة Arma 3 و Arma 2 و Arma 2: OA .
ARC 2.2 يتطلب فقط PHP 5.4 أو أعلى!
إذا لم تقم بالفعل ، قم بتنزيل الملحن.
$ curl -s http://getcomposer.org/installer | phpتتطلب الآن وتثبيت قوس.
$ composer require nizarii/arma-rcon-class
$ composer install اختر إصدارًا وقم بتضمين ARC في مشروعك: require_once 'arc.php'; .
بعد تثبيت ARC ، يمكنك بسهولة استخدام ARC كما هو موضح أدناه. سيقوم تلقائيًا بإنشاء اتصال جديد ومصادقة.
use Nizarii ARC ;
$ rcon = new ARC (string $ ServerIP , string $ RConPassword [, int $ Port = 2302 [, array $ Options = array ()]]); يمكنك إرسال أوامر مع وظيفة command() .
//...
$ rcon -> command ( ' YourCommand ' ); سوف يرمي ARC Exception إذا حدث أي خطأ. قد ترغب في لف الرمز الخاص بك في مجموعة تجرب .
use Nizarii ARC ;
try {
$ rcon = new ARC ( ' 127.0.0.1 ' , ' password ' );
$ array = $ rcon -> getPlayersArray ();
$ rcon
-> sayGlobal ( ' example ' )
-> kickPlayer ( 1 , ' example ' )
-> sayPlayer ( 0 , ' example ' )
-> disconnect ()
;
$ rcon -> getBans (); // Throws exception, because the connection was closed
} catch ( Exception $ e ) {
echo " Ups! Something went wrong: { $ e -> getMessage ()}" ;
} يرجى النظر في أن ARC فقط يتحقق مما إذا كان قد تم إرسال الأمر بنجاح عبر المقبس إلى الخادم. لا يتحقق من تنفيذ الأمر بواسطة الخادم.
يمكن تمرير الخيارات إلى ARC كصفيف عبر المعلمة الرابعة من المنشئ. الخيارات التالية متاحة حاليًا:
int timeoutSec = 1 : تعيين قيمة مهلة على الاتصال.bool autosavebans = false : يحفظ تلقائيًا bans.txt بعد حظر اللاعب أو محظوره.bool debug = false : تشغيل وضع التصحيح ، يعمل فقط على "SocketLoop ()" و "SocketLoopClose ()" اقتراحات للخيارات الجديدة هي دائما موضع ترحيب! ؟
الاستخدام الأساسي:
use Nizarii ARC ;
$ rcon = new ARC ( ' 127.0.0.1 ' , ' RConPassword ' , 2322 , [
' timeoutSec ' => 2
]);
//... يتميز ARC بالعديد من الوظائف لإرسال أوامر Battleye أسهل. بعد إنشاء اتصالات جديدة كما هو موضح أعلاه ، يمكنك استخدام أي من هذه الوظائف:
string command(string $command) : يرسل أي أمر إلى خادم Battleye.string getPlayers() : إرجاع قائمة مع جميع اللاعبين ، والتي موجودة حاليًا على الخادم.array getPlayersArray() : مثل "GetPlayers ()" ، ولكن ينظم القائمة إلى صفيف.string getMissions() : تحصل على قائمة بالبعثات المتاحة على الخادم.string getBans() : يحصل على قائمة بجميع حظر الخادم.array getBansArray() : يحصل على مجموعة من جميع الحظر.object kickPlayer(int $player [, string $reason = 'Admin Kick']) : يركل لاعب موجود حاليًا على الخادم.object sayGlobal(string $message) : يرسل رسالة عالمية إلى جميع اللاعبين.object sayPlayer(int $player, string $message) : يرسل رسالة إلى لاعب معين.object loadScripts() : يقوم بتحميل ملف "scripts.txt" دون الحاجة إلى إعادة تشغيل الخادم.object maxPing(int $ping) : يغير قيمة الحد الأقصى. إذا كان لدى اللاعب Ping أعلى ، فسيتم ركله من الخادم.object changePassword(string $password) : تغيير كلمة مرور RCON.object loadBans() : (إعادة) تحميل قائمة الحظر من "bans.txt".object banPlayer(string $player [, string $reason = 'Banned' [, int $time = 0]]) : حظر أن يكون اللاعب GUID من الخادم (إذا كان الوقت 0 ، فسيكون الحظر دائم).object addBan(string $player [, string $reason = 'Banned' [, int $time = 0]]) : مثل "banplayer ()" ، ولكنه يسمح بحظر لاعب غير موجود حاليًا على الخادم.object removeBan(int $banid) : يزيل الحظر.object writeBans() : يزيل الحظر المنتهية الصلاحية من ملف الحظر.object getBEServerVersion() : يحصل على الإصدار الحالي من الخادم BE.disconnect() : يغلق الاتصال الحالي.object reconnect() : يغلق الاتصال الحالي ويقوم بإنشاء توصيل جديد.resource getSocket() : احصل على المقبس ، الذي يستخدمه ARC لإرسال الأوامر إلى الخادم.boolean socketLoop(int $loop = -1) : احصل على دفق مقبس ثابت. حلقة $ هي عدد الحلقات التي سيتم تشغيلها حتى الخروج من الطريقة. لاحظ أنه سيتم إعادة تعيين التسلسل. ضبط على حلقات لا حصر لها افتراضيا.boolean socketLoopClose(int $loop = -1) : مشابه باسم "SocketLoop ()" ، ولكن يتم قطع الاتصال بعد الحلقات. ضبط على حلقات لا حصر لها افتراضيا.array readPackageRaw(string $msg) : اجعل حزمة تنسيق Bettleye قابلة للقراءة لبرنامجك. استخدم $ MSG مع رأس غير قابل للقراءة وسلسلة غير معدلة. سيبدأ الصفيف كـ [0] => "FF" عند وجود رأس صحيح. تحتوي قيمة الصفيف [1] على معلومات مهمة عن نوع الرعاية التي يحتاجها لاتصالك. لمزيد من المعلومات ، انقر هنا. انظر هنا لمزيد من المعلومات حول أوامر Battleye
بفضل جميع المساهمين لتقديم المشكلات والرمز المساهم ، بما في ذلك:
المساهمون الجدد نرحب دائمًا ❤
ARC مرخصة بموجب ترخيص معهد ماساتشوستس للتكنولوجيا . عرض ملف LICENSE لمزيد من المعلومات.