Home of Gamehacking - Archiv
[Diskussionsthread] TrainerModul v2.0 - Druckversion

+- Home of Gamehacking - Archiv (http://archiv-homeofgamehacking.de)
+-- Forum: Releases (http://archiv-homeofgamehacking.de/forumdisplay.php?fid=4)
+--- Forum: HoG Releases (http://archiv-homeofgamehacking.de/forumdisplay.php?fid=24)
+---- Forum: Support- und Diskussion (http://archiv-homeofgamehacking.de/forumdisplay.php?fid=51)
+---- Thema: [Diskussionsthread] TrainerModul v2.0 (/showthread.php?tid=1151)

Seiten: 1 2 3 4


RE: TrainerModul v2.0 - iNvIcTUs oRCuS - 09.08.2013

Hab ich doch oben bereits erklärt.

Was Du grade als Integer (Int16) bezeichnest wird mit Vorzeichen (Signed) interpretiert. Heißt also das Du so einen minimalen Wert von −32.768 und einen maximalen Wert von 32.767 haben kannst. Und selbst dir dürfte dabei auffallen das der Wert 65.535 größer ist als 32.767.
Und das was Du als UInt16 bezeichnest heißt nichts anderes als Unsigned Integer 16 oder auch, was gebräuchlicher ist, Unsigned Short Integer oder Unsigned Word. Und da kannst Du einen minimalen Wert von 0 und einen maximalen Wert von 2hoch16 -1 haben, was 65.535 entspricht.


TrainerModul v2.4 nun hier - Xiantrius - 20.05.2014

Hallo zusammen, ich weis es ist ewig her und habe mal heute mir die Zeit genommen um den Trainermodul v2.3 komplett zu überarbeiten und einige Fehler behoben in Modul und hoffe das kein einziger Fehler mehr drin ist.
>>> Hier Download -> Trainermodul2.4 <<<


RE: TrainerModul v2.0 - DerBaum - 20.05.2014

Du könntest bei der Write/read Pointer Funktion den Datentyp casten und somit die 5-6 Funktionen auf eine einzige reduzieren.

Auch bei z .B.

Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 'Hier werden Werte in Double ausgegeben mit Kommazahl
    Public Function Read_Double_Pointer_8Byte1_32Bit1(ByVal address As Int32, Optional ByVal Offset() As Int32 = Nothing)
        address = Read_4Byte_32Bit(address)
        If Not IsNothing(Offset) Then
            For i = 0 To Offset.Length - 1
                address = Read_Double_32Bit1(address + Offset(i))
            Next
        End If
        Return address
    End Function
    'Hier werden Werte in Double ausgegeben aufgerundete Zahl
    Public Function Read_Double_Pointer_8Byte1_32Bit2(ByVal address As Int32, Optional ByVal Offset() As Int32 = Nothing)
        address = Read_Double_32Bit2(address)
        If Not IsNothing(Offset) Then
            For i = 0 To Offset.Length - 1
                address = Read_Double_32Bit2(address + Offset(i))
            Next
        End If
        Return address
    End Function


könnte man das ganze mit einem zusätzlichen Parameter als Boolean zusammenfassen.

Die RPM und WPM Deklarationen kannst du mit einem Handle zu einem Ein- bzw. Zweizeiler zusammenfassen. So ließe sich das Modul noch um etliches reduzieren was der Überschaubarkeit zu gute kommt.