LiveSplit هو برنامج مؤقت للعدائين السريعين، وهو سهل الاستخدام ومليء بالميزات.
تكامل Speedrun.com: تم دمج Speedrun.com بالكامل في LiveSplit. يمكنك تصفح لوحات المتصدرين الخاصة بهم، وتنزيل الأقسام، وحتى إرسال عمليات التشغيل الخاصة بك مباشرةً من LiveSplit. يمكنك أيضًا عرض الأرقام القياسية العالمية للألعاب التي تقوم بتشغيلها باستخدام مكون الرقم القياسي العالمي.
التوقيت الدقيق: يقوم LiveSplit بالمزامنة تلقائيًا مع الساعة الذرية عبر الإنترنت لتقدير عدم دقة المؤقت المحلي في جهاز الكمبيوتر. يقوم مؤقت LiveSplit تلقائيًا بضبط المؤقت المحلي لإصلاح تلك الأخطاء.
وقت اللعب والتقسيم التلقائي: سيكتشف LiveSplit تلقائيًا ما إذا كان وقت اللعب و/أو التقسيم التلقائي متاحًا للعبة ويتيح لك تنشيطه في محرر الانقسامات. تتم قراءة وقت اللعبة تلقائيًا مباشرة من أحد المحاكي أو لعبة الكمبيوتر الشخصي، ويمكنك استخدامه عن طريق التبديل إلى وقت اللعب ضمن مقارنة مقابل.
مكون الفيديو: باستخدام مكون الفيديو، يمكنك تشغيل مقطع فيديو من ملف محلي بجانب التشغيل. سيبدأ الفيديو عند بدء الجري ويتوقف عند إعادة التعيين. يمكنك أيضًا تحديد النقطة التي يجب أن يبدأ عندها الفيديو.
السباق: في LiveSplit، يمكنك بدء السباقات والانضمام إليها على SpeedRunsLive أو Racetime.gg داخل LiveSplit نفسها. يبدأ المؤقت تلقائيًا عندما يبدأ السباق ويكتب تلقائيًا .done
عندما تكمل السباق. يمكنك أيضًا مقارنة جولتك الحالية مع المتسابقين الآخرين أثناء السباق، طالما أنهم يستخدمون LiveSplit أيضًا.
المقارنات: في LiveSplit، يمكنك التبديل ديناميكيًا بين مقارنات متعددة، حتى في منتصف التشغيل. يمكنك إما مقارنة تشغيلك بالمقارنات التي تحددها بنفسك أو مقارنته بمقارنات متعددة يتم إنشاؤها تلقائيًا، مثل مجموع أفضل الشرائح أو متوسط التشغيل. أثناء السباق على SpeedRunsLive، يتم إنشاء مقارنات بين المتسابقين الآخرين تلقائيًا أيضًا.
نظام التخطيط: يمكن للمستخدمين تعديل كل جزء من مظهر LiveSplit باستخدام التخطيطات. يتمتع كل مستخدم بالقدرة على إضافة أجزاء أو إزالتها بالإضافة إلى القدرة على إعادة ترتيب وتخصيص كل جزء من LiveSplit. يمكنك حتى استخدام صور الخلفية الخاصة بك.
تغيير الحجم الديناميكي: يمكن تغيير حجم LiveSplit إلى أي حجم بحيث يبدو جيدًا أثناء البث. مع تغيير حجم LiveSplit، يتم تكبير جميع أجزائه تلقائيًا من أجل الحفاظ على مظهره.
عمليات التشغيل المشاركة: يمكن مشاركة أي عملية تشغيل على Speedrun.com وX (Twitter). يمكن أيضًا توزيع الانقسامات باستخدام عمليات الإدخال/الإخراج المقسمة واستيرادها من عنوان URL. يمكنك أيضًا مشاركة لقطة شاشة لتقسيماتك إلى Imgur أو حفظها كملف. يمكن أيضًا تحديث عنوان Twitch الخاص بك بناءً على اللعبة التي تلعبها.
تطوير المكونات: يمكن لأي شخص تطوير مكوناته الخاصة التي يمكن مشاركتها واستخدامها بسهولة مع LiveSplit. يمكن العثور على مكونات إضافية قابلة للتنزيل في قسم المكونات.
نحن بحاجة لمساعدتكم!
يمكنك تصفح المشكلات للعثور على المشكلات الجيدة للبدء بها. حدد واحدًا لم يتم الانتهاء منه بالفعل أو قيد التقدم، وقم بتعيينه لنفسك، واسحبه إلى "قيد التقدم".
git clone --recursive https://github.com/YourUsername/LiveSplit.git
git checkout -b new-feature
git commit -am 'Add a new feature'
git push origin new-feature
يستخدم LiveSplit .NET Framework 4.8.1. لتجميع LiveSplit، تحتاج إلى تثبيت المكونات التالية:
بعد الاستنساخ، ما عليك سوى تشغيل dotnet build LiveSplit.sln
من جذر المستودع.
لاستخدام Visual Studio، يجب عليك تثبيت إصدار يدعم إصدار .NET SDK الذي قمت بتثبيته. في وقت كتابة هذا التقرير، الإصدار الأحدث هو Visual Studio 2022.
git clone --recursive https://github.com/LiveSplit/LiveSplit.git
git submodule update --init --recursive
يمكن العثور على الوثائق الخاصة بكيفية تطوير واختبار وتقديم Auto Splitter هنا:
وثائق الخائن التلقائي
يسمح خادم LiveSplit الداخلي للبرامج الأخرى وأجهزة الكمبيوتر الأخرى بالتحكم في LiveSplit. يمكن للخادم قبول الاتصالات عبر أنبوب مسمى موجود في \
( .
هو اسم المضيف إذا كان العميل والخادم على نفس الكمبيوتر)، أو TCP/IP أولي، أو خادم WebSocket (WS) ، الموجود في ws://
.
يكون الأنبوب المسمى مفتوحًا دائمًا أثناء تشغيل LiveSplit ولكن يجب بدء تشغيل خوادم TCP وWS قبل أن تتمكن البرامج من التحدث إليهم (انقر بزر الماوس الأيمن على LiveSplit -> التحكم -> بدء تشغيل خادم TCP/WS). يجب عليك تشغيل البرنامج الذي ترغب في استخدامه يدويًا في كل مرة تقوم فيها بتشغيل LiveSplit. لا يمكن تشغيل خوادم TCP وWS في نفس الوقت لأن خادم WS يعمل أعلى TCP/IP.
منفذ الخادم هو الباب (واحد من الآلاف) على جهاز الكمبيوتر الخاص بك الذي يرسل هذا البرنامج البيانات من خلاله. الافتراضي هو 16834. من المفترض أن يكون هذا مناسبًا لمعظم الأشخاص، ولكن اعتمادًا على تكوينات الشبكة، قد يتم حظر بعض المنافذ. راجع أيضًا https://en.wikipedia.org/wiki/Port_%28computer_networking%29.
صنعت شيئا رائعا؟ فكر في إضافته إلى هذه القائمة.
الأوامر حساسة لحالة الأحرف وتنتهي بسطر جديد. يمكنك توفير المعلمات باستخدام مسافة بعد الأمر وإرسال المعلمات بعد ذلك (
).
سوف تستجيب بعض الأوامر بالبيانات والبعض الآخر لن يستجيب. تنتهي كل استجابة بحرف السطر الجديد. لاحظ أنه نظرًا لأن خادم WS لديه مفهوم الرسائل، فإن الأوامر والردود المرسلة عبره لا تنتهي بأحرف السطر الجديد.
يتم تنسيق كافة الأوقات والدلتا التي يتم إرجاعها بواسطة الخادم وفقًا لمحدد التنسيق الثابت الخاص بـ C#. سيقبل الخادم الأوقات بالتنسيق التالي: [-][[[d.]hh:]mm:]ss[.fffffff]
. يمكن أن يكون حقل الساعات أكبر من 23، حتى في حالة وجود أيام. لا تحتاج الحقول الفردية إلى أن تكون مبطنة بالأصفار. يمكن لأي أمر يُرجع وقتًا أو سلسلة أن يُرجع واصلة واحدة -
للإشارة إلى قيمة "فارغة" أو غير صالحة. الأوامر التي تأخذ مقارنة أو اسم تأخذ سلاسل بسيطة قد تتضمن مسافات. نظرًا لأنه يتم استخدامه كمحدد لوضع علامة على نهاية الأمر، فقد لا تظهر أحرف السطر الجديد في أي مكان داخل الأمر.
الأوامر التي لا تولد أي استجابة:
الأوامر التي تعيد الوقت:
الأوامر التي ترجع int:
الأوامر التي ترجع سلسلة:
pong
) يتم تعريف الأوامر في ProcessMessage
في "CommandServer.cs".
import socket
s = socket . socket ( socket . AF_INET , socket . SOCK_STREAM )
s . connect (( "localhost" , 16834 ))
s . send ( b"starttimer n " )
import java . io . IOException ;
import java . io . PrintWriter ;
import java . net . Socket ;
public class MainTest {
public static void main ( String [] args ) throws IOException {
Socket socket = new Socket ( "localhost" , 16834 );
PrintWriter writer = new PrintWriter ( socket . getOutputStream ());
writer . println ( "starttimer" );
writer . flush ();
socket . close ();
}
}
البرنامج الذي يقوم بتنفيذ Lua متاح كعميل. ومع ذلك، يجب أن تكون مكتبة lua io متاحة لاستخدام البرنامج النصي، والوثائق الكاملة متاحة هنا.
require " io "
self . LSEndpoint = " \\ . \ pipe \ LiveSplit " -- Localhost LiveSplit pipe.
self . LSPipe = io.open ( self . LSEndpoint , " w " ) -- Open/start the pipe. Flush is required after every command.
self . LSPipe : write " starttimer n "
self . LSPipe : flush ()
self . LSPipe : close () -- This can be left open as needed.
يتوفر تطبيق عميل Node.js هنا: https://github.com/satanch/node-livesplit-client
LiveSplit_Build
و UpdateManagerExe
من إصدار GitHub Actions لعلامة Git الجديدة.LiveSplit_1.8.21.zip
).UpdateManagerV2.exe
و UpdateManagerV2.exe.config
.update.xml
و update.updater.xml
وXMLs للتحديث لأي مكونات تم تغييرها).رخصة معهد ماساتشوستس للتكنولوجيا (MIT)
حقوق الطبع والنشر (ج) 2013 كريستوفر سير وسيرجي بابوشين
يُمنح الإذن مجانًا لأي شخص يحصل على نسخة من هذا البرنامج وملفات الوثائق المرتبطة به ("البرنامج")، للتعامل في البرنامج دون قيود، بما في ذلك، على سبيل المثال لا الحصر، حقوق الاستخدام والنسخ والتعديل والدمج. ونشر و/أو توزيع وترخيص من الباطن و/أو بيع نسخ من البرنامج، والسماح للأشخاص الذين تم توفير البرنامج لهم بالقيام بذلك، وفقًا للشروط التالية:
يجب تضمين إشعار حقوق الطبع والنشر أعلاه وإشعار الإذن هذا في جميع النسخ أو الأجزاء الكبيرة من البرنامج.
يتم توفير البرنامج "كما هو"، دون أي ضمان من أي نوع، صريحًا أو ضمنيًا، بما في ذلك، على سبيل المثال لا الحصر، ضمانات القابلية للتسويق والملاءمة لغرض معين وعدم الانتهاك. لا يتحمل المؤلفون أو أصحاب حقوق الطبع والنشر بأي حال من الأحوال المسؤولية عن أي مطالبة أو أضرار أو مسؤولية أخرى، سواء في إجراء العقد أو الضرر أو غير ذلك، الناشئة عن أو خارج أو فيما يتعلق بالبرنامج أو الاستخدام أو المعاملات الأخرى في برمجة.