Du bist nicht angemeldet.

  • Anmelden
  • Registrieren

suxx-

unregistriert

1

01.06.2004, 21:48

[Tutorial] OGL Aimbot

Guten Abend,

ich habe mich dazu entschlossen ein Aimbot Tutorial zu schreiben. Diese Methode des Zielens benutze ich in dem aktuellen spieletermine.de OGL Hook 1.0 der morgen veröffentlicht wird.


Gut dann fangen wir auch gleich an mit der Structur

Quellcode

1
2
3
4
5
6
7
8
typedef struct {
          int mode;
          int target;
          int fov;
          bool thru;
          bool active;
          float zone;
  } aim_s;



soweit ist sicher alles verständlich




  • mode - ob mouse 1 oder autoshot usw.
  • target - ziel sprich terror oder ct
  • fov - field of view in pixel
  • thru - visible prüfung
  • active an/aus
  • zone - jedoch in px auf der Z-Achse
Nun noch zwei Structuren für die Modelerkennung und das eigentliche Zielen

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
typedef struct {
          int team;
          int num;
          bool get;
          float min_vertex;
          float max_vertex;
          float highest_x;
          float highest_y;
          float highest_z;
          float lowest_x;
          float lowest_y;
          float lowest_z;
          float height;
          float distance;
          float vertex;
  }model_s;
  
  typedef struct {
          int team;
          float x;
          float y;
          float z;
          float distance;
          float vector_x;
          float vector_y;
          float vector_z;
  }player_s;


Der bisherige Code kommt in eine extra Datei z.B. "vars.h" oder "aimbot.h".

Und nun geht es zu der Modelerkennung die wir für den Aimbot brauchen damit wir wissen ob es ein Terror oder ein CT ist.

Als erstes deklinieren wir die Structuren

Quellcode

1
2
3
aim_s aim;
  model_s model;
  player_s player[40];


player[40] deshalb weil ich sonst öffters einen crash hatte ansich undenkbar da Half-Life ja nur max. 32 Player hat jedoch war es so.

glPopMatrix:

Quellcode

1
if (model.get) model.get = false;

Wie setzten die Bool auf true damit wir wissen das HL ein Model Drawed.


glShadeModel:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
GLdouble wx,wy,wz;
          
          glGetDoublev(GL_MODELVIEW_MATRIX,mm);
          glGetDoublev(GL_PROJECTION_MATRIX ,pm);
          glDisable(GL_TEXTURE_2D);
  
          if ((mode == GL_SMOOTH) && (!model.get)) 
          {
                  model.get = true;
                  model.highest_z = -99999;
                  model.lowest_z = -99999;
                  model.vertex = 0;
          }
          else 
          {
                  if (model.get) 
                  {
                  gluProject(model.highest_x,model.highest_y,model.highest_z,mm,pm,vp,&wx ,&wy ,&wz );
                         model.distance = getDist(model.highest_x,model.highest_y,model.highest_z,origin[0],origin[1],origin[2])/40;
  
                         if ((model.vertex>=model.min_vertex) && (model.vertex<=model.max_vertex))
                          {
                                 modelnum = checkVertex(0,-1,model.vertex);
                          if ((modelnum < 8) && (modelnum != -1) && (model.height>40) && (model.height<90) && model.num <=40)
                                  {
                                  player[model.num].x = model.highest_x;
                                  player[model.num].y = model.highest_y;
                                  player[model.num].z = model.highest_z;
                                  player[model.num].distance = model.distance;
                                  if ((modelnum < 4) && (modelnum != -1))
                                   player[model.num].team = 1;
                                  else if ((modelnum > 3) && (modelnum < 8))
                                   player[model.num].team = 0;
                                          else
                                   player[model.num].team = -1;
                                         model.num++;
                                  }
                          }
                  }
          }
          glEnable(GL_TEXTURE_2D);

Wir speichern alle Models die in ein Array damit wir später darauf zurück greifen können.Ansich ist der Code selbst erklärend da die Variablen klar benannet sind.


glTranslatef

Quellcode

1
2
3
4
5
6
if (((x!=0) && (y!=0) && (z!=0)))
          {
                  origin[0]=x*-1;
                  origin[1]=y*-1;
                  origin[2]=z*-1;
          }

Hier Speichern wir unsere aktuelle Position in dem Raster in einem Array damit wir die Distance zwischen uns und den Playermodels berechnen können.

glVertex3f

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
if (model.get)
          {
                  model.vertex++;
                  if ( (z > model.highest_z) || (model.highest_z==-99999))
                  {
                          model.highest_x=x;
                          model.highest_y=y;
                          model.highest_z=z;
                  }
                  if ( (z < model.lowest_z) || (model.lowest_z==-99999)) {
                          model.lowest_x=x;
                          model.lowest_y=y;
                          model.lowest_z=z;
                  }
  
                  model.height=model.highest_z-model.lowest_z;
          }

Hier gucken wir ob ein Model gemalt wird und wenn ja dann speichern wir dessen hösten und niedrigsten Vertex in einer Variable.

glVertex3fv:

Quellcode

1
modelviewport=true;

Wenn HL diese Funktion aufruft ist das Model fertig gemalt.

glViewport:

Quellcode

1
2
3
4
5
6
7
8
if (modelviewport)
          {
                  model.highest_z=-99999;
                  model.lowest_z=-99999;
                  model.vector_x=0;
                  model.vector_y=0;
                  modelviewport=false;
          }

Hier setzten wir die Variablen zurück damit das Spiel von neuem Beginnen kann.

wglSwapBuffers:

Quellcode

1
2
3
if (!draw.menu && aim.active && ( ((aim.mode == 0) && (mouse.button == 1)) || ((aim.mode == 1) && (mouse.button == 2)) || (aim.mode == 2) || (aim.mode == 3) ) )
                          DoAim();
          model.num = 0;


Hier aufgepasst ich wette ihr habt euer KeyHandling anders realisiert z.B. mit GetAsyncKeyStat(); dann müsst ihr das hier anpassen.

So nun das eigentliche Zielen

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
void DoAim(void)
  {
          int num=-1;
          float distance=99999.0;
         // Wenn Aim thru aus ist dann müssen wir überprüfen ob wir das Model sehen und gleichzeitig finden wir das Model was am nähesten bei uns ist.
          if (!aim.thru)
          {
                  for (int i=0;i < model.num;i++)
                  {
                          if ((player[i].distance < distance)  
                                 && (aim.target == player[i].team))
                          {
                                  if (checkVisible(i))
                                  {
                                         distance = player[i].distance;
                                         num = i;
                                  }
                          }
                  }
          }
  // Wenn Aim thru aus ist müssen wir nur das näheste Model finden
          else
          {
                  for (int i=0;i < model.num;i++)
                  {
                         if ((player[i].distance < distance) && (aim.target == player[i].team))
                          {
                                  distance = player[i].distance;
                                  num = i;
                          }
                  }
          }
          
          // Wenn es ein Model gibt das den Kriterien entspricht dann Ziehlen wir hier darauf
          if (num != -1)
          {
                  GLdouble wx,wy,wz;
              gluProject(player[num].x,player[num].y,player[num].z-aim.zone,mm,pm,vp,&wx ,&wy ,&wz );
                  
                  if (aim.active && (player[num].team == aim.target))
                  {
                         if ((wx>=vp[2]/2-aim.fov/2) && (wx<=vp[2]/2+aim.fov/2) && (wy>=vp[3]/2-aim.fov/2) && (wy<=vp[3]/2+aim.fov/2)) //Gucken ob das Model im AimFOV ist (da seh ich gerade das ich das noch verbessern kann jedoch nciht in diesem tut :))
                          {
                                 int aimx=(float)((wx*65535)/vp[2]);
                                 int aimy=(float)(((vp[3]-wy)*65535)/vp[3]);
  
                          mouse_event(MOUSEEVENTF_MOVE|MOUSEEVENTF_ABSOLUTE,aimx,aimy,0,0);
                                  if (aim.mode == 3)
                                  { // Mein Cooler Autoshot :)
                                         if (iShoot > 20)
                                         {        
                                                 bWait = true;
                                          }
                                  if (bWait && (iShoot > 50))
                                          {
                                                 bWait = false;
                                          iShoot = 0;        
                                          }
  
                                         KeyHandle(MK_LBUTTON);
                                  if (!bWait && (iShoot %10 == 0))
                                          {
                                   mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
                                   mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);
                                          }
                                         iShoot++;
                                  }
                          }
                  }
          }
  }

Diese Funktion Rufen wir jeweils zum Ende eines jeden Frames auf.

Nun noch Funktionen die ihr für die umsetzung braucht

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
int IsPointVisible(GLdouble x, GLdouble y, GLdouble z)
  {        
          GLdouble        winX, winY, winZ;
          GLfloat                pix;
  
          glGetDoublev(GL_MODELVIEW_MATRIX,mm);
          glGetDoublev(GL_PROJECTION_MATRIX ,pm);
  
          if (gluProject (x, y, z, mm, pm, vp, &winX, &winY, &winZ) == GL_TRUE)
          {
                  glReadPixels((int)winX,(int)winY,1,1,GL_DEPTH_COMPONENT ,GL_FLOAT,&pix);
                  if (pix > winZ) 
                          return 1;
                  else 
                          return 0;
          }
          else
                  return 0;
  }


Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int checkVertex (int start, int offset, float vertcount) 
  {
          if (offset == -1) 
                  offset = vertexcount;
          for(int i=start;i < offset+1;i++) 
          {
                  for (int y=0; y < 3;y++) {
                          if (vertcount == vertex[i].vert[y])
                          {
                                 sprintf(curmodel,"%s",vertex[i].name);
                                  return i;
                          }
                  }
          }
          return -1;
  }





Diese Funktion muss nur einmal aufgerufen werden.

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
void loadModelRec (void)
  {
          // Gign
          sprintf(vertex[0].name,"%c%c%c%c",103,105,103,110);
          vertex[0].vert[0] = 1158;
          vertex[0].vert[1] = 1262;
          vertex[0].vert[2] = 0;
  
          // GSG-9
          sprintf(vertex[1].name,"%c%c%c%c",103,115,103,57);
          vertex[1].vert[0] = 1110;
          vertex[1].vert[1] = 1214;
          vertex[1].vert[2] = 0;
  
          // Sas
          sprintf(vertex[2].name,"%c%c%c",115,97,115);
          vertex[2].vert[0] = 1052;
          vertex[2].vert[1] = 1156;
          vertex[2].vert[2] = 0;
  
          // Seal
          sprintf(vertex[3].name,"%c%c%c%c",115,101,97,108);
          vertex[3].vert[0] = 1130;
          vertex[3].vert[1] = 1234;
          vertex[3].vert[2] = 0;
  
          // Leet
          sprintf(vertex[4].name,"%c%c%c%c",108,101,101,116);
          vertex[4].vert[0] = 1162;
          vertex[4].vert[1] = 1230;
          vertex[4].vert[2] = 0;
  
          // Arctic
          sprintf(vertex[5].name,"%c%c%c%c%c%c",97,114,99,116,105,99);
          vertex[5].vert[0] = 1061;
          vertex[5].vert[1] = 1129;
          vertex[5].vert[2] = 0;
  
          // Terror
          sprintf(vertex[6].name,"%c%c%c%c%c%c",116,101,114,114,111,114);
          vertex[6].vert[0] = 1078;
          vertex[6].vert[1] = 1146;
          vertex[6].vert[2] = 0;
  
          // Guerilla
          sprintf(vertex[7].name,"%c%c%c%c%c%c%c%c",103,117,101,114,105,108,108,97);
          vertex[7].vert[0] = 1136;
          vertex[7].vert[1] = 1078;
          vertex[7].vert[2] = 0;
  
          // M4A1
          sprintf(vertex[8].name,"%c%c%c%c",109,52,97,49);
          vertex[8].vert[0] = 238;
          vertex[8].vert[1] = 0;
          vertex[8].vert[2] = 0;
  
          // AK 47
          sprintf(vertex[9].name,"%c%c%c%c",97,107,52,55);
          vertex[9].vert[0] = 214;
          vertex[9].vert[1] = 0;
          vertex[9].vert[2] = 0;
  
          // USP
          sprintf(vertex[10].name,"%c%c%c",117,115,112);
          vertex[10].vert[0] = 164;
          vertex[10].vert[1] = 0;
          vertex[10].vert[2] = 0;
  
          // Knife
          sprintf(vertex[11].name,"%c%c%c%c%c",107,110,105,102,101);
          vertex[11].vert[0] = 172;
          vertex[11].vert[1] = 0;
          vertex[11].vert[2] = 0;
  
          // Deagle
          sprintf(vertex[12].name,"%c%c%c%c%c%c",100,101,97,103,108,101);
          vertex[12].vert[0] = 170;
          vertex[12].vert[1] = 0;
          vertex[12].vert[2] = 0;
  
          // Gallil
          sprintf(vertex[13].name,"%c%c%c%c%c%c",103,97,108,108,105,108);
          vertex[13].vert[0] = 288;
          vertex[13].vert[1] = 0;
          vertex[13].vert[2] = 0;
  
          // Glock18
          sprintf(vertex[14].name,"%c%c%c%c%c%c%c",103,108,111,99,107,49,56);
          vertex[14].vert[0] = 144;
          vertex[14].vert[1] = 130;
          vertex[14].vert[2] = 0;
  
          // Granade
          sprintf(vertex[15].name,"%c%c%c%c%c%c%c",103,114,97,110,97,100,101);
          vertex[15].vert[0] = 98;
          vertex[15].vert[1] = 0;
          vertex[15].vert[2] = 0;
  
          // xm1014
          sprintf(vertex[16].name,"%c%c%c%c%c%c",120,109,49,48,49,52);
          vertex[16].vert[0] = 232;
          vertex[16].vert[1] = 0;
          vertex[16].vert[2] = 0;
  
          // AUG
          sprintf(vertex[17].name,"%c%c%c",97,117,103);
          vertex[17].vert[0] = 252;
          vertex[17].vert[1] = 0;
          vertex[17].vert[2] = 0;
  
          //MP5
          sprintf(vertex[18].name,"%c%c%c",109,112,53);
          vertex[18].vert[0] = 290;
          vertex[18].vert[1] = 0;
          vertex[18].vert[2] = 0;
  
          // SG 552
          sprintf(vertex[19].name,"%c%c%c%c%c",115,103,53,53,50);
          vertex[19].vert[0] = 264;
          vertex[19].vert[1] = 0;
          vertex[19].vert[2] = 0;
  
          // C4
          sprintf(vertex[20].name,"%c%c",99,52);
          vertex[20].vert[0] = 0;
          vertex[20].vert[1] = 0;
          vertex[20].vert[2] = 0;
  
          // M3
          sprintf(vertex[21].name,"%c%c",109,51);
          vertex[21].vert[0] = 226;
          vertex[21].vert[1] = 0;
          vertex[21].vert[2] = 0;
  
          // Elites
          sprintf(vertex[22].name,"%c%c%c%c%c%c",101,108,105,116,101,115);
          vertex[22].vert[0] = 388;
          vertex[22].vert[1] = 0;
          vertex[22].vert[2] = 0;
  
          // Mac10
          sprintf(vertex[23].name,"%c%c%c%c%c",109,97,99,49,48);
          vertex[23].vert[0] = 216;
          vertex[23].vert[1] = 0;
          vertex[23].vert[2] = 0;
  
          // UMP .45
          sprintf(vertex[24].name,"%c%c%c%c%c",117,109,112,52,53);
          vertex[24].vert[0] = 245;
          vertex[24].vert[1] = 0;
          vertex[24].vert[2] = 0;
  
          // TMP
          sprintf(vertex[25].name,"%c%c%c",116,109,112);
          vertex[25].vert[0] = 182;
          vertex[25].vert[1] = 0;
          vertex[25].vert[2] = 0;
  
          // P 90
          sprintf(vertex[26].name,"%c%c%c",112,57,48);
          vertex[26].vert[0] = 140;
          vertex[26].vert[1] = 0;
          vertex[26].vert[2] = 0;
  
          // Para
          sprintf(vertex[27].name,"%c%c%c%c",112,97,114,97);
          vertex[27].vert[0] = 222;
          vertex[27].vert[1] = 0;
          vertex[27].vert[2] = 0;
  
          // SG550
          sprintf(vertex[28].name,"%c%c%c%c%c",115,103,53,53,48);
          vertex[28].vert[0] = 274;
          vertex[28].vert[1] = 0;
          vertex[28].vert[2] = 0;
          
          // Shield
          sprintf(vertex[29].name,"%c%c%c%c%c%c",115,104,105,101,108,100);
          vertex[29].vert[0] = 306;
          vertex[29].vert[1] = 0;
          vertex[29].vert[2] = 0;
  
          // Scout
          sprintf(vertex[30].name,"%c%c%c%c%c",115,99,111,117,116);
          vertex[30].vert[0] = 146;
          vertex[30].vert[1] = 0;
          vertex[30].vert[2] = 0;
  
          // AWP
          sprintf(vertex[31].name,"%c%c%c",97,119,112);
          vertex[31].vert[0] = 224;
          vertex[31].vert[1] = 0;
          vertex[31].vert[2] = 0;
  
          // G3SG1
          sprintf(vertex[32].name,"%c%c%c%c%c",103,51,115,103,49);
          vertex[32].vert[0] = 250;
          vertex[32].vert[1] = 0;
          vertex[32].vert[2] = 0;
  
          // Famas
          sprintf(vertex[33].name,"%c%c%c%c%c",102,97,109,97,115);
          vertex[33].vert[0] = 266;
          vertex[33].vert[1] = 0;
          vertex[33].vert[2] = 0;
  
          vertexcount = 33;
  }


Diese Funktion brauchen wir auch nur einmal aufrufen

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
void SetMinMaxVertex(void)
  {
          for(int i=0;i < vertexcount + 1;i++)
          {
                  for (int y=0; y < 3;y++)
                  {
                          if (vertex[i].vert[y] < model.min_vertex)
                                 model.min_vertex = vertex[i].vert[y];
                          if (vertex[i].vert[y] > model.max_vertex)
                                 model.max_vertex = vertex[i].vert[y];
                  }
          }
  }


Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
bool checkVisible(int number)
  {
          if (number == -1)
                  return false;
          bool gldepthtest=false;
          bool visible=false;
          if (glIsEnabled(GL_DEPTH_TEST))
                  gldepthtest=true;
          glEnable(GL_DEPTH_TEST);
  
          if (IsPointVisible(player[number].x,player[number].y,player[number].z+5)) visible = true;
     else if (IsPointVisible(player[number].x-10,player[number].y-10,player[number].z-30)) visible = true;
          else if (IsPointVisible(player[number].x+10,player[number].y-10,player[number].z-30)) visible = true;
          else if (IsPointVisible(player[number].x+10,player[number].y+10,player[number].z-55)) visible = true;
          else if (IsPointVisible(player[number].x-10,player[number].y+10,player[number].z-55)) visible = true;
          if (!gldepthtest)
                  glDisable(GL_DEPTH_TEST);
  
          return visible;
  }

subay

Meister

Beiträge: 1 843

2

01.06.2004, 21:58

nice tut :D

ach ja suxx: das geht doch gar net ;)

gruß subay

Timberland

unregistriert

3

02.06.2004, 13:32

Werde ich mal nächste Woche testen. :)

suxx-

unregistriert

4

06.06.2004, 18:41

und auch dieses Tutorial hat sich auf die lange Reise an die Öffentlichkeit begeben und nun erscheint es in voller Pracht vor euch :D

HF damit

X-Terminator

Fortgeschrittener

Beiträge: 361

5

06.06.2004, 23:35

@suxx

kannst du mal wieder son noob tut machen sooooo Screenshots. so wie der WH u. Lambert. des hat ich in 1min gg

ich versteh nämlicht net wo bool hingehörrt und diese anderen sachen. bei dem anfänger tut konnte man alles schön überblicken. Dafür mein respekt. es ist bestimmt nicht einfach sowas sooo zu vereinfachen. aber wenn dus noch schaft den aimbot für die anfänger rüberzubringen u. das menu, dann wär ich und bestimmt stimm ich für mehrere user glücklich.

pls help uzz
:)

darude

Fortgeschrittener

Beiträge: 235

6

07.06.2004, 00:30

Zitat von »subay«

nice tut :D

ach ja suxx: das geht doch gar net ;)

gruß subay



Wie soll man das denn verstehen ?! ;)

suxx-

unregistriert

7

07.06.2004, 05:59

Zitat von »darude«

Wie soll man das denn verstehen ?! ;)
nen insider kann nur mein subaylein und ich verstehen :P der aimbot funtzt wunderbar hier ein paar bilder

http://213.239.195.228/suxx/pics/Frags/

und

Zitat von »X-Terminator«

@suxx

kannst du mal wieder son noob tut machen sooooo Screenshots. so wie der WH u. Lambert. des hat ich in 1min gg

ich versteh nämlicht net wo bool hingehörrt und diese anderen sachen. bei dem anfänger tut konnte man alles schön überblicken. Dafür mein respekt. es ist bestimmt nicht einfach sowas sooo zu vereinfachen. aber wenn dus noch schaft den aimbot für die anfänger rüberzubringen u. das menu, dann wär ich und bestimmt stimm ich für mehrere user glücklich.

pls help uzz
:)

Ich wollt emit diesen Tutorials keinen Grundstein für Anfänger legen diese Tutorials sind für Fortgeschrittene gedacht und die werden auch verstehen wo alles hinsoll.

subay

Meister

Beiträge: 1 843

8

07.06.2004, 12:12

Zitat von »X-Terminator«

@suxx

kannst du mal wieder son noob tut machen sooooo Screenshots. so wie der WH u. Lambert. des hat ich in 1min gg



das tut stammt net von suxx sondern von mir... wer lesen kann ist im vorteil, passt zwar net hier rein, aber dashaeb ich jetzt schon 2mal gelesen...
:hooligan:

insider rocken :D

gruß subay

X-Terminator

Fortgeschrittener

Beiträge: 361

9

07.06.2004, 13:23

ok n1 tut@ subay

suxx-

unregistriert

10

07.06.2004, 13:48

Zitat von »X-Terminator«

ok n1 tut@ subay

lol du verstehst auch nichts ^^ :P

X-Terminator

Fortgeschrittener

Beiträge: 361

11

07.06.2004, 17:18

OK ihr seid beide die besten. :digo:

-PrO-

Fortgeschrittener

Beiträge: 207

12

07.06.2004, 17:21

Naja wer das versteht-RESPECT :D
also ich denke ich werde es an dem langenwochenede versuchen zu verstehen..aber denke...no way :D aber dennoch c0oL das du dir die muehe machst und versuchst dein wissen mit uns zu teilen bzw dein wissen niederschreibst ^^

HD30

Anfänger

Beiträge: 7

13

14.06.2004, 16:44

Mal ne ganz blöde frage mit was fürnem programm machst du das ??? :confused:

subay

Meister

Beiträge: 1 843

14

14.06.2004, 16:59

Zitat von »HD30«

Mal ne ganz blöde frage mit was fürnem programm machst du das ??? :confused:


M$ visual studio und die programmiersprache heißt c++

gruß subay

HD30

Anfänger

Beiträge: 7

15

14.06.2004, 17:24

Ich hab MS VisualC++ 6.0 macht das was oder ist das das gleiche ??
wie bekomm ich das ganze jetzt ins spiel??? :digo:

subay

Meister

Beiträge: 1 843

16

14.06.2004, 18:10

Zitat von »HD30«

Ich hab MS VisualC++ 6.0 macht das was oder ist das das gleiche ??
wie bekomm ich das ganze jetzt ins spiel??? :digo:


nö haeb ich auch!
alerdings soltles du ml mit was leichten anfangen was copy & paste ist und nicht mit so einem fortgeschrittenen tut :D

also mach das klick wenn du das geschafft hast dann mach dies

gruß subay

HD30

Anfänger

Beiträge: 7

17

14.06.2004, 18:23

Ok danke! :D

dAvE

Anfänger

Beiträge: 35

18

15.06.2004, 21:41

öhm :confused: wo muss ich

aim_s aim;
model_s model;
player_s player[40];

einbauen?

dAvE

Anfänger

Beiträge: 35

19

27.06.2004, 22:39

mach mal "double * mm;" und "double * pm;" in die header datei.. mein problem ist.. das getDist net definiert ist.. auch bei google find ich nix..

Str1k3r

unregistriert

20

28.06.2004, 05:31

könnte mal jemand, der das kann, den nur den aimbot in nen wrapper machen, und dann hier anhängen ?
dann kann jerder (auch ich) der es nich schafft das mal genauer angucken, wie das funzt !

greeTz

Thema bewerten