[LUA] Script vor Diebstahl sichern. (checkPremissions)

    • [LUA] Script vor Diebstahl sichern. (checkPremissions)

      Hallo, heute möchte ich euch zeigen wie Ihr eurer MTA Script vor Diebstahl schützen könnt.
      Manchmal verkauft man ein Script oder gibt es weiter, und möchte nicht das es an Dritte Personen geht...
      Wir stellen eine Tabelle mit mit der IP sowie dem Port vom Server.

      Quellcode

      1. local data= {
      2. ip = "IP SERVER",
      3. port = "PORT SERVER",
      4. }
      5. addEventHandler("onResourceStart", resourceRoot, function()
      6. checkPermission()
      7. end)


      Als nächstes die Funktion die es ausliest.

      Quellcode

      1. function checkPermission()
      2. if data.ip and data.port then
      3. local serverIP = getServerIP()
      4. if tostring(data.ip) == serverIP and tostring(data.port) == getServerPort() then
      5. return true
      6. else
      7. return false
      8. end
      9. end
      10. end
      Alles anzeigen
      Jetzt kommt die Funktion, die prüft ob die IP zum Server passt.

      Quellcode

      1. function getServerIP()
      2. callRemote("http://www.test.de/getServerIp.php", function(value)
      3. if value ~= "ERROR" then
      4. outputDebugScript("Die IP Stimmt!")
      5. serverIP = value
      6. end
      7. end)
      8. return serverIP
      9. end
      Nun sind wir mit lua. fertig, Fangen wir mit der meta an.
      Das Script Arbeitet vom Server aus, doch wir müssen die Funktion checkPremission exportieren.

      Quellcode

      1. <meta>
      2. <script src="rocky.lua" type="server" />
      3. <export function="checkPremission" type="server" />
      4. </meta>
      Jetzt müssen wir unser lua Script Complieren.
      Falls das Sicherung Script und unser Script nicht im gleichen Verzeichnis sind, fügen wir folgendes ins Script ein.

      Quellcode

      1. if exports["rocky.lua"]:checkPermissions() then
      Nun kommt die Nachricht unter dem Code.

      Quellcode

      1. else
      2. outputChatBox("Dieses Script wurde gestohlen")
      3. outputDebugString("Sehr böser Mann!")
      4. return end

      Falls wir unser Script und das Sicherung Script im gleichen Verzeichnis haben fügen wir ins Script folgendes ein.

      Quellcode

      1. if checkPermissions() then
      2. --Unser Script
      3. else
      4. outputChatBox("Dieses Script wurde gestohlen")
      5. outputDebugString("Böser Mann")
      6. return end