MTA:SA Auf Android/IOS

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • Deine Antworten haben alles bestätigt, du weisst nicht wovon du sprichst. Ja ich habe keine Ahnung davon, aber ich habe schonmal mit einem MTA Dev wochenlang an Vice City geübt und weiß so ziemlich um was es da geht (nicht zwingend wie es geht).

      1.) Hier geht es um Speicheraddressen welche du nicht mit Cheatengine und so einem Kiddykram siehst.#

      Beispiel: Du findest vielleicht heraus wie man ein Auto spawnt, vielleicht mit ein wenig probieren welche Parameter es braucht. Für einen MP bringt dir das aber null. Du musst wissen, wie die Engine die Fahrzeuge verwaltet, in welchen Pools sie landen, von was sie alles erben etc, den du willst es ja mehreren Clients zur Verfügung stellen. Viel Spaß mit deinen Hintergrundprogrammen, welche dir gerade mal einen veränderten Hexwert beim ändern vom Geld zeigen, das ist ne ganz andere Liga.

      2.) Mit Events abfangen meint niemand das Eventsystem von MTA und triggern kannst du da einen Scheiß. All das Triggern und die Events sind Dinge welche die MTA Dev´s sich selber ausgedacht haben, das hast du so im Spiel nicht. Mit Events meinte ich, und das wüsstest du, wenn du einen Funken Ahnung hättest, der Moment wenn sich die Engine während des Spielstarts im System meldet und sich die Grafikkarte zu eigen machen möchte.

      3.) Du musst dir für jede Funktion eine eigene Interpretation schreiben ob du willst oder nicht. Mit Javascript/CSS/CSSG kommst du da null weiter, tiefste C++ Kenntnisse wirst du brauchen denn damit ist das Spiel geschrieben und damit musst du dir deinen eigenen Hack und die API schreiben.

      4.) Die Jungs von JC3:MP haben ja nicht mit JC3 angefangen, davor waren noch ein paar andere Spiele wie GTA:SA, GTA4, Mafia2, GTA5 usw....

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von [email protected] ()

    • [email protected] schrieb:

      Deine Antworten haben alles bestätigt, du weisst nicht wovon du sprichst.
      Ja ich habe keine Ahnung, ich weiß von nichts. Ich habe nicht 1 App programmiert. Du weißt alles, du hast schon 100 Apps programmiert.
      Ne Spaß beiseite.

      Hast du das Triggern echt ernst genommen? Es ist nicht ohne Grund in Anführungszeichen. :D ;(


      [email protected] schrieb:

      Die Jungs von JC3:MP haben ja nichtmit JC3 angefangen, davor waren noch ein paar andere wie GTA4, Mafia2 usw....
      Trotzdem ist jedes Spiel anders geschrieben..

      Ne ich geb auf.. lass gut sein...

      Ich werd mich mal ransetzen, hab schon paar interessierte Leute zusammengetrommelt, ja das war ernst gemeint, einfach um dir eins reinzuwürgen . :D :*

      Corbert schrieb:

      Kannst dich jetzt hinter deiner Mauer aus passiv aggressiven Klassikern wie "mimimi" oder "typisch Com" natürlich wie der Boss fühlen, weil du es jetzt allen mal so richtig gegeben hast
    • Nun gebe ich nochmal meinen Senf dazu.

      One, du stellst dir das viel zu einfach vor.
      Es reicht nicht MTA zu kennen. Du musst sogar fähig sein, einen eigenen Kernel für dein Smartphone zu compilieren. Und selbst dann bist du nich meilenweit davon entfernt irgendwas zum laufen zu bekommen. Ich sitz da schon ne ganzschöne Weile dran und kann sagen, dass der Weg MEGA hart ist. Hello World != Coding

      Du brauchst zum Debuggen sogar deinen EIGENEN DEBUGGER

      Bin nun mehrere Monate schon am Werkeln und bis auf die MTA-Console geht noch nichts.
      Reicht für ein Textadventure ;)

      Es verschlingt wahnsinnig viel Zeit.
      [Blockierte Grafik: https://media.giphy.com/media/3oKIP6ZL6nnykKFuLe/giphy.gif]
      Post's never die :D
    • Ach du Kacke stelten so nen Müll gelesen. Hat ein paar Android Apps entwickelt und meint, er sei dazu in der Lage solch ein komplexes Thema anzugehen. An den Punkten, die @[email protected] gebracht hat, sollte man schon merken, dass deine Hobby-Skills da nicht weiterhelfen.

      Durfte Justus bei sowas auch mal über die Schulter gucken, davon abgesehen, dass es sogar auf einem Windows System schon mehr als Komplex war. Zumal man auf einem Android Gerät noch weitere Einschränkungen hat.
    • Sowas wirst Du auf iOS nicht zum laufen bringen. Bei Android wäre es wohl möglich, aber ich denke kaum, dass sich einer die Mühe machen wird ...

      Hier treffen einige Leute echt kuriose Aussagen ...
      Java ist das Leidvollste was der Informatik seit MS-DOS wiederfahren ist.
      Alan Kay - Professor für Informatik
    • Fazit:
      Jetzt hicke ich schon seid parr tagen dran.
      RemotePlay:

      Sinnlos und langweillig mehr sage ich nicht dazu :D

      MTA auf dem Android ?(Tablet Only!!)
      Ich habe da eine möglichkeit gefunden. Wenn da auch mal etwas geschummelt wurde :D

      ich habe mir denn Limbo Pc emulator geholt und da alles nauf geklatsch an leistung was mein tablet hergitb.
      Daraufhin habe ich win 8.1 drauf installieren können( dies dauerte verdammte 3 Stunden!!!!)
      Nache veruchen lief das system einigermaßen flüssig.
      Dann kahm das erste Problem: GTA SA starten ging nicht so einfach wie ich es gerne hätte. Zumal fragt er dich nach einer Soundkartr bzw. Audio ab. Nach versuchen hin und her hatt es dann doch geklappt. Leider ohne touch. Ich habe mir dann grad usb C zu USB Adabter geholt und damit eine tastazur gekauft.
      Das Speil lief nicjt gut. Hier und da abstürze vom system etc.
      Dann habe ich MTA drauf. Keine abstürzde dafür misserable steuerung so wie 12/23FPS also nichts das wahre. Aber es war unabhängig von anderen rechnern. Ich werde weiter probieren um das best mögliche resultat zu erbringen.
      [Blockierte Grafik: https://www2.pic-upload.de/img/33116536/NextLife.png]
      Genaue Script zählung
      Lines Without Empty Lines And Comment Lines: 14946
      Lines Without Empty Lines: 13833
      Lines With Empty Lines: 18775
      Files: 149
      Functions: 2345

      Pre-Alpha
    • dolan schrieb:

      Wow, mit nem Emulator. Dass ist ja jetzt auch nicht sonderlich schwer.
      es geht hier darum ne möglichst leichte alteenative zu finden und nicht um Maraton scripten ;) ob emulator oder net gehn tut es. Ich suche noch bessere alternativen
      [Blockierte Grafik: https://www2.pic-upload.de/img/33116536/NextLife.png]
      Genaue Script zählung
      Lines Without Empty Lines And Comment Lines: 14946
      Lines Without Empty Lines: 13833
      Lines With Empty Lines: 18775
      Files: 149
      Functions: 2345

      Pre-Alpha
    • Um GTA San Andreas inklusive MTA auf Linux laufen zu lassen, gibt es ja bekanntlich Wine. Dies hat bei mir soweit auch ganz gut funktioniert.

      Es wird derzeit auch an einer Wine-Version für Android gearbeitet, mit welcher es auch schon teilweise möglich ist, Windows Code auf Android Geräten laufen zu lassen.

      Ich weiß nicht, ob es in naher Zukunft einen ähnlichen Funktionsumfang wie auf Linux geben wird, jedoch wollte ich dies nur mal als kleinen Tipp bzw. als eine Info hier mit einwerfen.
      Allerdings habe ich da dann auch so meine bedenken, ob Windows Spiele wirklich so gut laufen, selbst wenn es nur GTA San Andreas ist, welches nicht all zu hohe Leistungsanforderungen hat.

      Naja, falls sich das trotzdem mal jemand anschauen möchte: wiki.winehq.org/Portability
      DEAL WITH IT.

      github.com/DKongHD
      Altes OOP UI-Framework: github.com/DKongHD/MTA-Framework-OOP
    • The|One schrieb:

      ScReaM schrieb:

      Außerdem wie willst du den verbieten das jemand sowas auf einem Handy spielt?

      JavaScript-Quellcode

      1. DisplayMetrics metrics = new DisplayMetrics();
      2. getWindowManager().getDefaultDisplay().getMetrics(metrics);
      3. int width = metrics.widthPixels;
      4. int height = metrics.heightPixels;
      5. if (SharedCode.width > 1100 || SharedCode.height > 1100){
      6. // spielbar
      7. }else{
      8. //auflösung kleiner als tablet wie ein handy
      9. }
      Abgesehen davon, dass es nicht die schlauste Lösung ist es nach der Auflösung zu checken, da es ja Tablets
      gibt, die groß sind aber eine kleine Auflösung haben, hast du sogar diese Lösung einfach
      noch googlen müssen (stackoverflow.com/questions/92…is-a-smartphone-or-tablet).

      Ist zwar jetzt nichts schlimmes daran, aber wenn du bereits bei solch einer einfachen Lösung googlen musst, frage ich mich
      wie du dir vorstellst MTA zu übertragen..

      Übermut tut selten gut.
    • The|One schrieb:

      Sorry wollte mir für sowas hier kein Aufwand machen
      Wow, das.... wow. "Sorry, bin heute nicht zur Arbeit gekommen. Andere machen das schon. Wollte mir für sowas keinen Aufwand machen."
      Kunde -> Ich hätte kein ein Programm von ihnen mit dem ich mich mit meinem Server über SSH verbinden kann.
      Du -> Hier, "Putty". Das macht dann 10€.
      Kunde -> Das gibt es aber kostenlos?
      Du -> Ja, wollte mir aber keinen Aufwand machen extra etwas EIGENES für Sie zu programmieren.

      Wahnsinn.
    • [email protected] schrieb:

      3.) nun hast du schon irre Aufwand betrieben aber noch nichts was du machen kannst, jetzt kommt die eigentliche Arbeit du musst jede GTA Funktion welche du mit viel Glück in den Speicheraddressen gefunden hast, mit eigenem Code nachbauen und anstelle der Originalen in den Speicher laden
      Du kannst problemlos die existierenden Funktionen wieder aufrufen, nachbauen musst du da nichts.

      [email protected] schrieb:

      2.) wenn du endlich verstanden hast was da passiert, musst du dir ein passendes Event suchen, welches dir eine Schwachstelle bietet um es abzufangen, nachzubauen und mit deiner eigenen Lücke wieder in den Speicher zu laden


      [b]In der Regel nimmt man die Initialisierung der Grafikschnittstelle dafür. Es reicht aber nicht zu wissen wann da was passiert, sondern genau was da passiert. Du fängst diese Initialisierung ab und baust dir deine eigene Initisalisierung nach und gibst sie an das Spiel weiter ohne dass es davon etwas merkt, dann ist nämlich sofort Schluß. Da auf Android kein DirectX zur Verfügung steht, wirst du nichts vom MTA Core nehmen können, sondern darfst dir alles in OpenGL selber erlernen.
      [/b]
      Eine Schwachstelle brauchst du eigentlich auch nicht wirklich. Code in fremden Prozessen ausführen ist relativ einfach. Sobald du einmal deinen eigenen Code in dem Zielprozess ausführen kannst, kannst du dann die existierenden Funktionen direkt patchen, da ist es relativ egal, was genau du verwendest. DirectX wird nur häufig genutzt, da man hier direkt Dinge zeichnen kann und dies sehr einfach zu hooken ist (da die Funktionsparameter ja dokumentiert sind). Mit 64 Bit Programmen geht das ganze sogar etwas einfacher, da hier nicht mehr so viele komische Calling-Conventions (Arten wie einzelne Funktionen aufgerufen werden müssen) verwendet werden.

      Das Hooken von Funktionen ist eigentlich relativ simpel (etwas vereinfacht):

      - Du nimmst die Adresse deiner Funktion und kopierst die ersten X Bytes raus.
      - Anstelle der ersten X Bytes fügst du jetzt eine jmp/call-Instruktion ein, die deinen Hook aufruft.
      -> Jetzt wird unsere Funktion statt der originalen Aufgerufen

      Um jetzt wieder zum originalen Code zurückzugehen, musst du nur die rauskopierten X Bytes ausführen und dann zum originalcode zurückspringen.

      The|One schrieb:



      [email protected] schrieb:

      du musst "Reverse Engineering betreiben um zu verstehen welche Speicheradressen für was verwendet werden, das alleine kann schon Wochen oder Monate dauern, wenn man das nie gemacht hat
      Da hast du bedingt Recht. Speicheradressen findet man aber heutzutage einfach mit Hintergrundprogrammen heraus.
      Damit kommst du ggf. an einzelne Adressen. Problem ist dann, dass du damit relativ wenig anfangen kannst. Du hast dann im besten Fall z.B. die Adresse einer Funktion zum Erzeugen von Fahrzeugen, du kennst aber nicht die Bedingungen unter welchen du diese Funktion aufrufen darfst. Selbst wenn du die mit den gleichen Parametern wie das Spiel aufrufst, kann es leicht dazu kommen, dass das Spiel einfach crasht, weil du z.B. das Fahrzeug im falschen Thread oder während des Renderings erzeugt hast, das Spiel aber davon ausgeht, dass Fahrzeuge nur zu einem bestimmten Zeitpunkt erstellt werden können.

      The|One schrieb:

      [email protected] schrieb:

      Die Leute von JC3:MP
      Du weißt welchen Sicherheits-Unterschied zwischen einem Spiel liegt was 2004 und 2015 rausgekommen ist ja?
      Da gibt es keinen wirklichen "Sicherheitsunterschied". Einzig Denuvo findet man an einigen Stellen, aber das betrifft den Großteil des Codes nicht. Ansonsten ist da eher einfach der Spielecode etwas komplexer geworden, da bei modernen Spielen natürlich auch mehr Multithreading und neuere Renderingfeatures verwendet werden. Aber bei Singleplayer Spielen wird in der Regel nichts unternommen um gegen Injections vorzugehen, wozu auch?
      Mich per PN bezüglich Freischaltungen zu nerven ist der beste Weg eine Freischaltung zu verhindern.

      neon-gaming.de
    • Ich habe mich entschlossen mit der Hilfe von Python Modding, bekannt für Modmenü erstellung bei BF1 etc bei Youtube, eine MTA Android App zu entwickeln.

      Wir haben erkannt wie einfach es ist auf die "Memory adresses" zuzugreifen und zu editieren.
      Zugleich auch wie schwer es ist zb. ein AC Modul zu schreiben (Denn die Hacks die es beim PC gibt sind nicht gleich die Hacks die es beim Handy gibt).

      Ich freue mich für jede Hilfe denn zu zweit wird das glaube ein bisschen sehr viel & schwierig.
      Näheres gibt es in der Zukunft.

      Lg

      Corbert schrieb:

      Kannst dich jetzt hinter deiner Mauer aus passiv aggressiven Klassikern wie "mimimi" oder "typisch Com" natürlich wie der Boss fühlen, weil du es jetzt allen mal so richtig gegeben hast

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von The0ne ()