Beiträge von LeonMrBonnie

    Ja, alle JS Logiken sind immer einsehbar, da sie am Client ausgeführt werden und nicht am Server.

    Da wäre es aber auch noch Wert zu erwähnen, dass im Falle von Vue (oder auch anderen Frontend Frameworks) meist ein Bundler wie z.B. Vite verwendet wird, wodurch der Code den der Client am Ende erhält bundled und minified ist, wodurch es gar nicht mehr der "originale" Source Code ist und dadurch auch schwerer zu lesen ist.

    Vom bundled Code wird also keiner einfach so copy & paste deine Seite nachbauen können.

    Ich selber habe auch die Entwicklung von TrilogyMP verfolgt, und ich muss sagen der Mod ist bisher extremst enttäuschend. Ich kannte den Hauptentwickler schon bereits bevor er den Mod angefangen hat, und bin daher etwas voreingenommen, da meine vorherigen Erfahrungen mit ihm sehr negativ waren, da er extremst unfreundlich, besserwisserisch und arrogant wirkte. Genau diese Charakterzüge merkt man auch in der Entwicklung von dem Mod.

    Als kleines Beispiel nenne ich mal einen wichtigen Punkt bei jedem Multiplayer Mod; In welcher Sprache schreibe ich Scripts/Gamemodes? Grundsätzlich gibt es hier immer ein paar Sprachen die einem sofort dafür in den Sinn kommen, z.B. Lua, JavaScript etc.

    Der Entwickler von TrilogyMP ist aber stark gegen diese Sprachen abgeneigt (auch wenn sich diese eben perfekt für Scripting bei solchen Mods eignen) und besteht darauf als einzige verfügbare Sprache C++ anzubieten.

    Das ganze macht das natürlich leichter für ihn, da der Mod selber in C++ geschrieben ist, also ist es auch extrem einfach eine C++ Scripting API bereitzustellen, nur ist die Entscheidung C++ zu verwenden extrem fragwürdig.

    C++ ist eine Sprache die nicht für Scripting im Sinne von Multiplayer Mods ausgelegt ist - man kann sie natürlich dafür verwenden, aber einfachere, besonders dynamische Sprachen wie Lua, sind einfach besser geeignet - denn sie ist einfach a) nicht anfängerfreundlich, es ist extrem einfach etwas mit C++ falsch zu sagen (Hallöchen Memory Leaks!) (... ja, bei modernem C++ mit smart pointers ist das ganze einfacher, aber trotzdem kannst du immernoch ganz einfach große Fehler machen, die bei einer Sprache wie Lua nicht deinen ganzen Server crashen), dann auch b) oft einfach viel zu umständlich, denn vieles was man mit wenigen Zeilen Lua schreibt, dauert bei C++ dann mal viel mehr Zeilen, da die standard API in vielen Bereichen noch mangelhaft ist.

    Als aller wichtigstens Punkt warum C++ ungeeignet ist... Es ist C++, du hast kompletten Low-Level Memory Access, du kannst machen was du willst. Ordner erstellen? Kein Ding. Dateien löschen? Easy. Quasi einen kompletten Trojaner laufen lassen? Mit C++ alles kein Ding, hast ja auf alles Zugriff. Das ganze gilt natürlich nur für clientside, serverside C++ verwenden ist kein Problem, da weiß der Serverbesitzer ja welcher Code dort läuft, aber anders ist es eben clientside, wo du dann einfach mal nen Virus kriegen kannst indem du dich mit einem Server verbindest.

    Sicherheit? Brauch man nicht. Der Entwickler sagt man soll einfach nur Servern joinen, wo man den Entwicklern vertraut. Ein völlig schwachsinniges Argument, aber er beharrt auch wenn sich viele dagegen ausgesprochen haben weiterhin darauf, nur C++ zu unterstützen, und einfach so DLLs clientside von Servern laden zu lassen.

    Umstimmen lässt sich der Entwickler gar nicht, in seinen Augen ist das alles okay so.


    Dazu könnte man jetzt auch noch anfangen über seine Pläne den Mod zu monetarisieren (der Mod, der nichtmal veröffentlicht ist, gute Prioritäten, hauptsache fette Scheine machen) rede, aber das würde jetzt hier den Rahmen sprengen, da diese Pläne genauso schwachsinnig sind wie seine Mentalität zu den unterstützten Sprachen.


    TL:DR; Finger weg von Trilogy.

    In alt:V führst du nicht JS Code direkt aus, sondern schickst ein Event an die WebView in welcher der Code ausgeführt wird.

    In deinem Falle wäre es ungefähr so:

    JavaScript: client.js
    invHud.emit("showInventory", data);
    JavaScript: webview.js
    alt.on("showInventory", (data) => {
      gui.inventory.showInventory(data);
    });

    Habe mir einen neuen PC zugelegt. Netzteil und HDD hab ich aus meinem alten PC übernommen.

    Schon vor einer Woche, leider kam das Mainboard kaputt an und ich warte momentan auf ein neues.


    - Case: be quiet! Pure Base 500

    - CPU: AMD Ryzen 9 5900X

    - CPU Cooler: Noctua NH-D15

    - SSD: 1TB Samsung 970 Evo Plus M.2

    - RAM: 32GB Corsair Vengeance LPX DDR4-3600

    - GPU: NVIDIA GTX 1070

    - Mainboard: MSI B550-A Pro

    Bei RAGE oder alt:V muss man halt vieles selbst erstellen. FiveM hat halt ein ähnliches Problem wie SA:MP es hatte das vieles auf einem Gamemode basiert und dann nur der Name geändert wurd (vereinfacht gesagt). Dann ist die Erwähnung noch von verschiedenen Sprachen wichtig z.B. C# Serverseitig und z.B. JavaScript auf der Clientseite (V8 hin oder her). Wenn man dann noch ein eigenes HUD machen will brauchst halt noch HTML, CSS und / oder hier beliebiges JS Framework einfügen als Wissen.

    Weiß nicht wie großartig das anders ist bei FiveM oder RAGE aber bei alt:V gab es bis vor einiger Zeit keine einfache Möglichkeit ein Clothing Pack zu erstellen. Jetzt gibt es ja dafür das Clothing Tool. Ingame Map Editor gab es bis vor ein paar Jahren auch noch nicht.

    Das liegt zum Großteil daran, dass es einfach eine noch sehr viel jüngere und kleinere Szene ist und es deswegen auch einfach weniger Veröffentlichungen gibt.

    Dass man mehrere Sprachen können "muss" kann man natürlich als Nachteil sehen, in meinen Augen aber definitiv ein Nachteil der dadurch ausgeglichen wird, dass du die komplette Macht von HTML, CSS und JS ausnutzen kannst, um auch extrem komplexe UIs zu erstellen.

    Und dass vieles auf einem Gamemode basiert, ist halt leider mittlerweile bei jedem Mod so. Bei FiveM ist es ESX, bei alt:V ist es Valea und bei RageMP ist es keine Ahnung, kenne den Namen nicht, gibt aber da auch eins.

    Der Markt für Gamemodes die einfach Plug & Play sind wird immer existieren, da viele einfach ohne jegliche Vorkenntnisse Server erstellen wollen, weil sie denken dass sie damit den nächsten krassen RP Server auf die Beine stellen. Ist natürlich Quatsch, aber solch Server bekommen insbesondere bei FiveM immer sogar noch eine kleine Playerbase und machen auch oft Profit, obwohl dahinter keinerlei Mühe steckt.

    Grundsätzlich kann ich mich dem nur anschließen dass SA:MP für immer in unserem Herzen am Leben bleibt, aber es ist nun mal nun ein Mod der uralt ist und mittlerweile halt auch gar keinen Support mehr kriegt. Ist halt schon extrem schade dass SA:MP später nur extrem wenig entwickelt wurde und mittlerweile gar nicht mehr. Natürlich, ist der Mod aber auch schon ziemlich solide und kann in seinem momentanen Stand weiterhin verwendet werden.

    Man merkt alleine am Umfang von GTA SA im Vergleich zu GTA V, dass da einfach etwas moderneres besser ist. Aber leider kam die richtige Szene ja nie so wirklich in GTA V an, denn es ist 90% RP Server, und Server aller anderen Art sind meistens schnell tot oder einfach nur langweilig umgesetzt. In SA:MP wurden schon so viele Sachen in diesem "kleinen" Rahmen der Möglichkeiten von GTA SA umgesetzt, dass man sich fragt wo die ganzen innovativen Gamemodes bei GTA V bleiben, obwohl die Möglichkeiten dort 100x so viele sind.


    Ich persönlich habe mit SA:MP schon länger aufgehört, ich erinnere mich gerne zurück an gute Zeiten die ich dort auf Servern verbracht habe, aber das Bedürfnis das wieder in SA:MP zu erleben, ist auch nicht wirklich vorhanden.

    Nutzen lässt es sich exakt gleich, aber diese Strings verbrauchen jetzt nur noch ein Viertel an Speicher! :)

    Sowas kannste doch jetzt nicht in den Raum werfen ohne den technischen Hintergrund zu liefern, pack dein Knowledge aus

    (Mal wieder interessant was für Features PAWN eigentlich hat, die kein Arsch verwendet (hat)...)

    NodeJS updaten bringt nichts, da das JS Module eine eigene NodeJS Version mitliefert. Der alt:V Server verwendet also immer NodeJS v17.7, vor dem Update wurde noch NodeJS v14 verwendet.


    Ich gehe mal davon aus dass du z.B. dieses Package verwendest TS3 NodeJS Library, welches wohl die neue NodeJS Version nicht unterstützt.

    An der Stelle teile ich meine größte Angst mit euch:

    Ich hab mit meinen Bros meine Assi-Sauftour nach Sylt in den nächsten Monaten schon geplant. Ziel ist es natürlich die Schnösel dort so sehr wie möglich abzufucken

    Hallo,

    an sich kannst du das. Es gibt halt nur keinen Server den du auf dem Macbook starten kannst. Den gibt es nur für Windows oder Linux.

    Grüße

    Richtig, da das Interesse dafür zu gering ist.


    Also an sich ist es möglich auf einem Mac zu entwickeln, aber um den Server oder den Client zu starten brauchst du Windows. (Oder auch Linux beim Server)