Einführung von LuX: Luau-kompatibles Scripting für BrickBit
Zusammenfassung
BrickBit kündigt LuX an, eine neue Luau-kompatible Scripting-Umgebung, die dem BrickBit-Scripting eine eigene Identität verleiht und gleichzeitig die Kompatibilität mit .lua und .luau beibehält. Das Update zielt darauf ab, Client-, Studio- und Server-APIs zu vereinheitlichen, geteilte Bridge/Client-Muster zu ersetzen und die Studio-Tools mit besserer Autovervollständigung, Dokumentation, Replikation, Netzwerkfunktionen und erweiterten APIs zu verbessern.
Wenn du schon einmal mit Scripting in BrickBit gearbeitet hast, hast du uns wahrscheinlich schon einmal von Luau sprechen hören. Das wird nicht verschwinden, aber wir beginnen damit, der Scripting-Umgebung von BrickBit eine eigene Identität zu geben.
Sie heißt LuX.
LuX ist die Luau-kompatible Scripting-Umgebung von BrickBit. Die Idee ist ziemlich einfach: Behalte die Lua/Luau-Syntax bei, die die Leute bereits kennen, während wir eine API speziell für BrickBit aufbauen.
Das bedeutet, dass Code wie dieser immer noch vertraut aussehen wird:
local Players = game:GetService("Players")
local player = Players.LocalPlayer
print("Hello, " .. player.Name)
Wir entwickeln keine komplett neue Sprache, nur um Dinge anders zu machen. LuX basiert weiterhin auf Luau, und wir möchten die Kompatibilität mit bestehenden .lua- und .luau-Skripten beibehalten.
Was wir ändern, ist alles, was die Sprache umgibt.
Derzeit hat sich das Scripting in BrickBit in verschiedene Richtungen entwickelt. Client-Skripte verwenden Dinge wie game:GetService(), workspace, Instance.new(), Vector3 und Color3, während gehostete Server-Skripte derzeit die separate Bridge-API verwenden.
Es funktioniert, aber zwei völlig unterschiedliche Arten des Scriptings für dasselbe Spiel zu haben, ist nicht der Zustand, den wir beibehalten wollen.
LuX ist unser Plan, das zu bereinigen.
Im Laufe der Zeit möchten wir, dass Studio, der Client und der Spieleserver viel mehr von derselben API teilen. Ein System wie Players sollte sich überall wie Players anfühlen, anstatt eine API in einem Client-Skript und eine andere API auf dem Server zu erfordern.
Wir werden auch weiterhin erweitern, was Skripte tatsächlich tun können. Bessere Instanzen und Events, ordnungsgemäße Replikation, mehr Dienste, verbessertes UI-Scripting, stärkere Datentypen, besseres Networking, vollständigere Physik-APIs und eine viel bessere Autovervollständigung sind alles Bereiche, an denen wir arbeiten möchten.
Einer der größten Teile von LuX wird Studio selbst sein.
Der Skript-Editor sollte wissen, was verfügbar ist, nützliche Autovervollständigung anzeigen, Funktionen und Eigenschaften erklären, warnen, wenn etwas nur auf dem Client oder Server funktioniert, und dieselben API-Informationen wie die tatsächliche Laufzeitumgebung verwenden. Die Dokumentation und Studio sollten sich nicht darüber uneinig sein, ob etwas existiert.
Wir wollen auch nicht so tun, als wäre BrickBit Roblox.
Es wird vertraute Namen geben, wo sie Sinn ergeben, vor allem weil es nützlich ist, Luau-Wissen zwischen Plattformen übertragen zu können, aber LuX wird die API von BrickBit sein. Wenn BrickBit etwas anderes braucht, können wir es richtig aufbauen, anstatt alles zu zwingen, eine andere Plattform zu kopieren.
Nichts wird heute plötzlich kaputt gemacht oder ersetzt. LuX ist der neue Name und die neue Richtung für das Scripting-System, das wir bereits haben, und wir werden es Stück für Stück verbessern, anstatt bestehende Spiele wegzuwerfen.
Für Entwickler sind die wichtigsten Punkte, die man jetzt wissen muss:
LuX verwendet Luau-kompatible Syntax.
Bestehende .lua- und .luau-Skripte bleiben erhalten.
Das aktuelle Client-Scripting verwendet weiterhin die BrickBit-Client-API.
Aktuelle gehostete Server-Skripte unterstützen weiterhin Bridge.
Wir arbeiten auf eine einheitlichere API zwischen Studio, Clients und Servern hin.
Die Dokumentation wird erweitert, während LuX wächst.
Dies ist einer der größeren Teile von BrickBit, den wir in den nächsten Updates verbessern möchten.
Weitere LuX-Dokumentation und Scripting-Änderungen folgen in Kürze.
Discord sent us an expired image link.