LiveSplit เป็นโปรแกรมจับเวลาสำหรับนักวิ่งความเร็วที่ทั้งใช้งานง่ายและเต็มไปด้วยคุณสมบัติต่างๆ
การบูรณาการ Speedrun.com: Speedrun.com ได้รับการบูรณาการเข้ากับ LiveSplit โดยสมบูรณ์ คุณสามารถเรียกดูบอร์ดผู้นำ ดาวน์โหลดการแยก และแม้แต่ส่งการวิ่งของคุณเองได้โดยตรงจาก LiveSplit คุณยังสามารถแสดงสถิติโลกสำหรับเกมที่คุณเล่นด้วยส่วนประกอบสถิติโลกได้
การกำหนดเวลาที่แม่นยำ: LiveSplit ซิงโครไนซ์กับนาฬิกาอะตอมโดยอัตโนมัติผ่านอินเทอร์เน็ตเพื่อประเมินความไม่ถูกต้องของตัวจับเวลาท้องถิ่นในพีซี ตัวจับเวลาของ LiveSplit จะปรับตัวจับเวลาท้องถิ่นโดยอัตโนมัติเพื่อแก้ไขความไม่ถูกต้องเหล่านั้น
เวลาเกมและการแบ่งอัตโนมัติ: LiveSplit จะตรวจจับโดยอัตโนมัติว่าเวลาเกมและ/หรือการแบ่งอัตโนมัติพร้อมใช้งานสำหรับเกมหรือไม่ และให้คุณเปิดใช้งานได้ใน Splits Editor Game Time จะถูกอ่านโดยตรงจากโปรแกรมจำลองหรือเกมพีซี และคุณสามารถใช้งานได้โดยสลับเป็นเวลาเกมภายใต้ Compare Against
ส่วนประกอบวิดีโอ: ด้วยส่วนประกอบวิดีโอ คุณสามารถเล่นวิดีโอจากไฟล์ในเครื่องควบคู่ไปกับการวิ่งของคุณได้ วิดีโอจะเริ่มเมื่อคุณเริ่มวิ่งและหยุดทุกครั้งที่คุณรีเซ็ต คุณยังสามารถระบุได้ว่าวิดีโอควรเริ่มที่จุดใด
การแข่งรถ: ใน LiveSplit คุณสามารถเริ่มและเข้าร่วมการแข่งขันบน SpeedRunsLive หรือ racetime.gg ภายใน LiveSplit ได้ ตัวจับเวลาจะเริ่มต้นโดยอัตโนมัติเมื่อการแข่งขันเริ่มต้นและเขียน .done
โดยอัตโนมัติทุกครั้งที่คุณเสร็จสิ้นการแข่งขัน นอกจากนี้คุณยังสามารถเปรียบเทียบการวิ่งปัจจุบันของคุณกับนักวิ่งคนอื่นๆ ในระหว่างการแข่งขันได้ ตราบใดที่พวกเขาใช้ LiveSplit เช่นกัน
การเปรียบเทียบ: ใน LiveSplit คุณสามารถสลับระหว่างการเปรียบเทียบหลายรายการได้แบบไดนามิก แม้ว่าจะอยู่ระหว่างดำเนินการก็ตาม คุณสามารถเปรียบเทียบการวิ่งของคุณกับการเปรียบเทียบที่คุณกำหนดเอง หรือเปรียบเทียบกับการเปรียบเทียบที่สร้างขึ้นโดยอัตโนมัติหลายรายการ เช่น ผลรวมของกลุ่มที่ดีที่สุด หรือการวิ่งเฉลี่ยของคุณ ขณะแข่งบน SpeedRunsLive การเปรียบเทียบสำหรับนักวิ่งคนอื่นๆ จะถูกสร้างขึ้นโดยอัตโนมัติเช่นกัน
ระบบเค้าโครง: ผู้ใช้สามารถปรับเปลี่ยนรูปลักษณ์ของ LiveSplit ทุกส่วนได้โดยใช้เค้าโครง ผู้ใช้ทุกคนสามารถเพิ่มหรือลบชิ้นส่วนต่างๆ พร้อมกับสามารถจัดเรียงและปรับแต่งแต่ละส่วนของ LiveSplit ได้ คุณสามารถใช้ภาพพื้นหลังของคุณเองได้
การปรับขนาดแบบไดนามิก: LiveSplit สามารถปรับขนาดเป็นขนาดใดก็ได้เพื่อให้ดูดีในการสตรีม เมื่อขนาดของ LiveSplit เปลี่ยนไป ชิ้นส่วนทั้งหมดจะถูกขยายขนาดโดยอัตโนมัติเพื่อรักษารูปลักษณ์เอาไว้
การแชร์การวิ่ง: สามารถแชร์การวิ่งใดก็ได้บน Speedrun.com และ X (Twitter) การแยกยังสามารถกระจายโดยใช้การแยก i/o และนำเข้าจาก URL คุณยังสามารถแชร์ภาพหน้าจอของการแยกของคุณไปยัง Imgur หรือบันทึกเป็นไฟล์ได้ ชื่อ Twitch ของคุณสามารถอัปเดตได้ตามเกมที่คุณกำลังเล่น
การพัฒนาส่วนประกอบ: ทุกคนสามารถพัฒนาส่วนประกอบของตนเองที่สามารถแชร์และใช้กับ LiveSplit ได้อย่างง่ายดาย ส่วนประกอบที่สามารถดาวน์โหลดเพิ่มเติมได้สามารถพบได้ในส่วนส่วนประกอบ
เราต้องการความช่วยเหลือจากคุณ!
คุณสามารถเรียกดูปัญหาเพื่อค้นหาปัญหาที่ดีในการเริ่มต้นใช้งาน เลือกรายการที่ยังไม่ได้ทำหรือกำลังดำเนินการ กำหนดตัวคุณเอง แล้วลากไปที่ "กำลังดำเนินการ"
แยกโครงการ
โคลน repo ที่แยกของคุณ: 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 คุณต้องติดตั้งส่วนประกอบต่อไปนี้:
.NET 8.0 SDK
.NET Framework 4.8.1 ชุดนักพัฒนา
หลังจากการโคลนนิ่ง เพียงเรียกใช้ dotnet build LiveSplit.sln
จากรูทของที่เก็บ
หากต้องการใช้ Visual Studio คุณต้องติดตั้งเวอร์ชันที่รองรับ .NET SDK เวอร์ชันที่คุณติดตั้ง ในขณะที่เขียน เวอร์ชันล่าสุดคือ Visual Studio 2022
ไม่มีการดึงโมดูลย่อยเมื่อคุณแยก/โคลน repo ซึ่งทำให้โปรเจ็กต์ไม่สร้าง มีสองวิธีในการแก้ไขปัญหานี้:
การโคลนนิ่งเป็นครั้งแรก: git clone --recursive https://github.com/LiveSplit/LiveSplit.git
หากโคลนไว้แล้ว ให้ดำเนินการนี้ในไดเร็กทอรีราก: git submodule update --init --recursive
คุณสามารถดูเอกสารเกี่ยวกับวิธีพัฒนา ทดสอบ และส่ง Auto Splitter ได้ที่นี่:
เอกสารแยกอัตโนมัติ
LiveSplit Server ภายในช่วยให้โปรแกรมอื่นๆ และคอมพิวเตอร์อื่นๆ สามารถควบคุม LiveSplit ได้ เซิร์ฟเวอร์สามารถรับการเชื่อมต่อผ่านไปป์ที่มีชื่อซึ่งอยู่ที่ <hostname>pipeLiveSplit
( .
คือชื่อโฮสต์หากไคลเอนต์และเซิร์ฟเวอร์อยู่บนคอมพิวเตอร์เครื่องเดียวกัน), TCP/IP แบบดิบ หรือเซิร์ฟเวอร์ WebSocket (WS) ซึ่งอยู่ที่ ws://<hostname>:port/livesplit
ไปป์ที่มีชื่อจะเปิดอยู่เสมอในขณะที่ LiveSplit กำลังทำงาน แต่เซิร์ฟเวอร์ TCP และ WS ต้อง เริ่มทำงานก่อนที่โปรแกรมจะสามารถพูดคุยกับพวกเขาได้ (คลิกขวาที่ LiveSplit -> Control -> Start TCP/WS Server) คุณ ต้อง เริ่มต้นสิ่งที่คุณต้องการใช้ด้วยตนเองทุกครั้งที่คุณเปิด LiveSplit เซิร์ฟเวอร์ TCP และ WS ไม่สามารถทำงานพร้อมกันได้เนื่องจากเซิร์ฟเวอร์ WS ทำงานบน TCP/IP
Server Port คือประตู (หนึ่งในหลายพัน) บนคอมพิวเตอร์ของคุณที่โปรแกรมนี้ส่งข้อมูลผ่าน ค่าเริ่มต้นคือ 16834 ซึ่งควรจะใช้ได้สำหรับคนส่วนใหญ่ แต่พอร์ตบางพอร์ตอาจถูกบล็อก ทั้งนี้ขึ้นอยู่กับการกำหนดค่าเครือข่าย ดูเพิ่มเติมที่https://en.wikipedia.org/wiki/Port_%28computer_networking%29
Android LiveSplit ระยะไกล : https://github.com/Ekelbatzen/LiveSplit.Remote.Android
SplitNotes : https://github.com/joelnir/SplitNotes
ไคลเอนต์ระยะไกลแยกอัตโนมัติ : https://github.com/RavenX8/LiveSplit.Server.Client
ทำอะไรเจ๋งๆ บ้างไหม? ลองเพิ่มมันเข้าไปในรายการนี้
คำสั่งจะคำนึงถึงขนาดตัวพิมพ์และลงท้ายด้วยบรรทัดใหม่ คุณสามารถจัดเตรียมพารามิเตอร์ได้โดยใช้ช่องว่างหลังคำสั่ง และส่งพารามิเตอร์ในภายหลัง ( <command><space><parameters><newline>
)
คำสั่งบางคำสั่งจะตอบสนองต่อข้อมูลและบางคำสั่งก็ไม่ตอบสนอง ทุกการตอบกลับจะลงท้ายด้วยอักขระขึ้นบรรทัดใหม่ โปรดทราบว่าเนื่องจากเซิร์ฟเวอร์ WS มีแนวคิดเกี่ยวกับข้อความ คำสั่งและการตอบกลับที่ส่งไปนั้นจึงไม่ลงท้ายด้วยอักขระขึ้นบรรทัดใหม่
เวลาและเดลต้าทั้งหมดที่ส่งคืนโดยเซิร์ฟเวอร์จะถูกจัดรูปแบบตาม Constant Format Specifier ของ C# เซิร์ฟเวอร์จะยอมรับเวลาในรูปแบบต่อไปนี้: [-][[[d.]hh:]mm:]ss[.fffffff]
ฟิลด์ชั่วโมงสามารถมีค่ามากกว่า 23 ได้ แม้ว่าจะมีวันอยู่ก็ตาม แต่ละฟิลด์ไม่จำเป็นต้องมีเลขศูนย์ คำสั่งใดๆ ที่ส่งคืนเวลาหรือสตริงสามารถส่งคืนยัติภังค์เดียว -
เพื่อระบุว่าเป็น "null" หรือค่าที่ไม่ถูกต้อง คำสั่งที่ใช้การเปรียบเทียบหรือ NAME จะใช้สตริงธรรมดาที่อาจมีการเว้นวรรค เนื่องจากใช้เป็นตัวคั่นเพื่อทำเครื่องหมายจุดสิ้นสุดของคำสั่ง อักขระขึ้นบรรทัดใหม่อาจไม่ปรากฏที่ใดก็ได้ภายในคำสั่ง
คำสั่งที่ไม่สร้างการตอบสนอง:
สตาร์ทเตอร์สปลิท
แยก
ไม่แยก
ข้ามแยก
หยุดชั่วคราว
ประวัติย่อ
รีเซ็ต
ตัวจับเวลาเริ่มต้น
ตั้งเวลาเล่นเกม TIME
ตั้งเวลาโหลด TIME
เพิ่มเวลาโหลด TIME
หยุดเวลาเล่นเกมชั่วคราว
ยกเลิกการหยุดเวลาเล่นเกม
หยุดเวลาเล่นเกมไว้เสมอ
ตั้งค่าการเปรียบเทียบ การเปรียบเทียบ
เปลี่ยนเป็นเรียลไทม์
เปลี่ยนไปเป็นเวลาเล่นเกม
setsplitname ชื่อดัชนี
ตั้งค่าปัจจุบันแยกชื่อ NAME
คำสั่งที่ส่งคืนเวลา:
รับเดลต้า
การเปรียบเทียบ getdelta
รับเวลาแบ่งเวลา
รับการเปรียบเทียบการแบ่งเวลา
รับกระแสเรียลไทม์
รับเวลาเล่นเกมปัจจุบัน
รับเวลาปัจจุบัน
รับเวลาสุดท้าย
รับการเปรียบเทียบเวลาสุดท้าย
รับการเปรียบเทียบเวลาที่คาดการณ์ไว้
ได้รับเวลาที่ดีที่สุด
คำสั่งที่ส่งคืน int:
ได้รับsplitindex
(ส่งคืน -1 หากตัวจับเวลาไม่ทำงาน)
คำสั่งที่ส่งคืนสตริง:
รับปัจจุบันแยกชื่อ
รับชื่อแยกก่อนหน้า
รับตัวจับเวลาปัจจุบัน
ปิง
(คืน pong
เสมอ)
คำสั่งถูกกำหนดไว้ที่ ProcessMessage
ใน "CommandServer.cs"
นำเข้าซ็อกเก็ต = socket.socket(socket.AF_INET, socket.SOCK_STREAM)s.connect(("localhost", 16834))s.send(b"starttimern")
นำเข้า java.io.IOException; นำเข้า java.io.PrintWriter; นำเข้า java.net.Socket; คลาสสาธารณะ MainTest { โมฆะคงที่สาธารณะ main (String [] args) พ่น IOException {Socket socket = new Socket ("localhost", 16834) ; นักเขียน PrintWriter = ใหม่ PrintWriter(socket.getOutputStream());writer.println("starttimer");writer.flush();socket.close(); - -
ซอฟต์แวร์ที่ใช้ Lua นั้นสามารถใช้เป็นไคลเอนต์ได้ อย่างไรก็ตาม ต้องมีไลบรารี lua io เพื่อให้สคริปต์ใช้งานได้ มีเอกสารฉบับเต็มอยู่ที่นี่
need "io"self.LSEndpoint = "\.pipeLiveSplit" --Localhost LiveSplit pipe.self.LSPipe = io.open(self.LSEndpoint, "w") --เปิด/เริ่มไปป์ จำเป็นต้องมีการล้างข้อมูลหลังจากทุกๆ command.self.LSPipe:write "starttimern"self.LSPipe:flush()self.LSPipe:close() --สามารถเปิดทิ้งไว้ได้ตามต้องการ
การใช้งานไคลเอ็นต์ Node.js มีอยู่ที่นี่: https://github.com/satanch/node-livesplit-client
อัปเดตเวอร์ชันของส่วนประกอบใด ๆ ที่เปลี่ยนแปลง (สร้างแท็ก Git และอัปเดตไฟล์โรงงานสำหรับแต่ละส่วนประกอบ) เพื่อให้ตรงกับเวอร์ชัน LiveSplit ใหม่
สร้างแท็ก Git สำหรับเวอร์ชันใหม่
ดาวน์โหลด LiveSplit_Build
และ UpdateManagerExe
จาก GitHub Actions build สำหรับแท็ก Git ใหม่
สร้าง GitHub release สำหรับเวอร์ชันใหม่ และอัปโหลดไฟล์ ZIP บิลด์ LiveSplit ด้วยชื่อไฟล์ที่ถูกต้อง (เช่น LiveSplit_1.8.21.zip
)
แก้ไขไฟล์ในโฟลเดอร์อัพเดตของ LiveSplit.github.io และยอมรับการเปลี่ยนแปลง:
คัดลอกไฟล์ที่เปลี่ยนแปลงจากไฟล์ ZIP บิลด์ LiveSplit ที่ดาวน์โหลดไปยังโฟลเดอร์อัพเดต
คัดลอกไฟล์ที่เปลี่ยนแปลงจากการดาวน์โหลด Update Manager ZIP file เพื่อแทนที่ UpdateManagerV2.exe
และ UpdateManagerV2.exe.config
เพิ่มเวอร์ชันใหม่ให้กับอัพเดต XML สำหรับ ( update.xml
, update.updater.xml
และอัพเดต XML สำหรับคอมโพเนนต์ใดๆ ที่เปลี่ยนแปลง)
แก้ไข DLL และอัปเดต XML สำหรับ LiveSplit.TheRun ใน repo
อัปเดตเวอร์ชันในหน้าดาวน์โหลด
ใบอนุญาต MIT (MIT)
ลิขสิทธิ์ (c) 2013 Christopher Serr และ Sergey Papushin
อนุญาตให้บุคคลใดก็ตามที่ได้รับสำเนาของซอฟต์แวร์นี้และไฟล์เอกสารที่เกี่ยวข้อง ("ซอฟต์แวร์") อนุญาตโดยไม่เสียค่าใช้จ่าย เพื่อจัดการกับซอฟต์แวร์โดยไม่มีข้อจำกัด รวมถึงแต่ไม่จำกัดเพียงสิทธิ์ในการใช้ คัดลอก ปรับเปลี่ยน ผสาน เผยแพร่ แจกจ่าย ให้อนุญาตช่วง และ/หรือขายสำเนาของซอฟต์แวร์ และอนุญาตให้บุคคลที่ได้รับซอฟต์แวร์นี้สามารถทำได้ ภายใต้เงื่อนไขต่อไปนี้:
ประกาศเกี่ยวกับลิขสิทธิ์ข้างต้นและประกาศการอนุญาตนี้จะรวมอยู่ในสำเนาทั้งหมดหรือส่วนสำคัญของซอฟต์แวร์
ซอฟต์แวร์นี้มีให้ "ตามที่เป็น" โดยไม่มีการรับประกันใดๆ ทั้งโดยชัดแจ้งหรือโดยนัย ซึ่งรวมถึงแต่ไม่จำกัดเพียงการรับประกันความสามารถในการค้าขาย ความเหมาะสมสำหรับวัตถุประสงค์เฉพาะ และการไม่ละเมิด ไม่ว่าในกรณีใดผู้เขียนหรือผู้ถือลิขสิทธิ์จะต้องรับผิดต่อการเรียกร้องค่าเสียหายหรือความรับผิดอื่นใดไม่ว่าในการกระทำของสัญญาการละเมิดหรืออย่างอื่นที่เกิดขึ้นจากหรือเกี่ยวข้องกับซอฟต์แวร์หรือการใช้งานหรือข้อตกลงอื่น ๆ ใน ซอฟต์แวร์.