1. Forum
    1. Unerledigte Themen
  2. Artikel
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  4. Blog
    1. Artikel
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Forum
  • Blog-Artikel
  • Seiten
  • Erweiterte Suche
  1. StageTwo - Deine Wohlfühloase
  2. Mitglieder
  3. Twice

Beiträge von Twice

  • Komprimierung auslesen

    • Twice
    • 24. Oktober 2011 um 23:35

    Vielleicht hilft dir das?

    http://partners.adobe.com/public/developer/en/tiff/TIFF6.pdf

  • sro_client.exe patchen/verändern

    • Twice
    • 24. Oktober 2011 um 17:03

    Silkroad übersetzt seine Unique-Strings, wie zum Beispiel "UIID_OR_WHATEVER_WELCOME_MESSAGE" mit einer Funktion in die jeweilige Sprache.
    Wie gesagt, Push an einer Stelle dann einfach nicht den Buffer, sondern deinen String.

    MfG

  • sro_client.exe patchen/verändern

    • Twice
    • 24. Oktober 2011 um 16:58

    Du kannst 'ne andere Adresse Pushen lassen und dann in der Data Section deinen anderen String hinschreiben.

    MfG

  • Excel Makro IF

    • Twice
    • 23. Oktober 2011 um 16:51

    EndIf?

    Und in VB muss man das glaube ich in eine Zeile schreiben.

  • Fuß verletzt

    • Twice
    • 21. Oktober 2011 um 17:06

    Danke für die Antworten. :)

  • Fuß verletzt

    • Twice
    • 21. Oktober 2011 um 15:47

    Hi,
    ich schilder mal mein Problem, in der Hoffnung, dass einer von euch Nachwuchs-Doktoren mir helfen kann.
    Gestern Nachmittag bin ich im Sportunterricht böse mit dem Fuß umgeknickt (habe ein herrliches Knacken gehört).
    Das tat dann tierisch weh und ich hab den Fuß hochgelegt und gekühlt. Irgendwie bin ich dann nach Hause gehumpelt und habe gehofft, dass es heute besser geht.
    Dem war leider nicht so. Heute morgen war es ganz schlimm, sodass ich nur auf einem Bein durch das Haus gehüpft bin, aber dann habe ich 2 Tabletten Paracetamol genommen (10 Uhr) und jetzt (16 Uhr) sind die Schmerzen wesentlich erträglicher. Mich kann leider keiner zum Arzt fahren, weil meine Eltern beide bis Dienstag weg sind.
    Heute Abend (9 Uhr) und Morgen Abend feiern zwei meiner Bekannten ihren 18. Geburtstag und da würde ich natürlich gerne dabei sein und mich in Ruhe betrinken.
    Gibts da immernoch (also ca. 11 Stunden später) Probleme mit den Tabletten und kann jemand die Verletzung diagnostizieren, wenn ich die Schmerzpartie beschreibe:
    Ich kann meinen Fußgelenk recht weit bewegen, wobei nach innen nicht so gut. Ich kann meine Zehen zwar nach unten drücken, wenn ich versuche sie hochzuziehen tut's weh. Wenn ich auftrete habe ich am Spann bis zum äußeren Knöchel ein Schmerzen.

    Dankeschön.

  • Gaddafi ist tot - Libyer bejubeln Ende des Diktators

    • Twice
    • 20. Oktober 2011 um 17:49

    Schade :S

  • StageTwo im neuen Gewand

    • Twice
    • 17. Oktober 2011 um 01:13

    Können wir den Background wenigstens über die gesamte Seite legen und nicht nur die paar Pixel da oben? Sieht echt nicht schön aus, wenn man runter scrollt und nur noch die Farbe sieht.

    MFG

  • NEUER FALL: China: LKW-Fahrer überfährt Fünfjährigen zweimal

    • Twice
    • 16. Oktober 2011 um 22:00

    Big Deal...

    Ihr perversen "Solche Leute sollte man ..." seit auch nicht besser.

  • Korrektur Lesen einer Kurzfassung

    • Twice
    • 16. Oktober 2011 um 15:01
    Zitat von Cervantys

    // Selbstverständlich könnt ihr mir auch Verbesserungsvorschläge die nichts mit der Rechtschreibung zu tun haben posten ^^

    Mit dem Wissen um das Risiko mich hier vollständig zu blamieren:
    Es heißt "das Zeitintervall"

    MfG

  • Korrektur Lesen einer Kurzfassung

    • Twice
    • 16. Oktober 2011 um 14:44

    Wenn du das Genitiv-S bei MSVS benutzen möchtest, muss danach noch ein Subjekt kommen.
    Deine Wortwahl ist auch komisch: implantiert, Hauptfunktionalität ...
    Zur Rechtschreibung darf ich ja nichts sagen.

    Try again

  • Welche Serien schaut ihr?

    • Twice
    • 15. Oktober 2011 um 19:46

    Family Guy steht nicht in der Umfrage?

    Modern Family guck ich noch und Desperate Housewives.

  • Abspeichern bei Driver San Francisco

    • Twice
    • 12. Oktober 2011 um 22:31

    gute Frage !

  • Speicher schnell durchsuchen (C#) ?

    • Twice
    • 12. Oktober 2011 um 20:26

    Guck, wie die Module davon lesen oder da rein schreiben und mach du das gleiche.

    MfG

  • [.NET] Kollisionen

    • Twice
    • 12. Oktober 2011 um 15:06

    DIe Vertices deiner Entities verbinden und dann auf Strecken intersections checken.

    MfG

  • [.NET] Kollisionen

    • Twice
    • 12. Oktober 2011 um 14:02
    Code
    float CMath::CalculateLineSlope( Line_t& line )
    {
    	return ( line.end.y - line.start.y ) / ( line.end.x - line.start.x );
    }
    
    
    // ----------------------------------------------------------------------
    
    
    float CMath::CalculateLineAxisInterceptY( Line_t& line )
    {
    	return ( line.start.x * line.end.y - line.end.x * line.start.y ) / ( line.start.x - line.end.x );
    }
    
    
    // ----------------------------------------------------------------------
    
    
    bool CMath::FindLinesIntersection( Line_t& line0, Line_t& line1, vec2* pOutColPos )
    {
    	if ( pOutColPos == NULL )
    		return false;
    
    
    	line0.slope = CalculateLineSlope( line0 );
    	line0.axisInterceptY = CalculateLineAxisInterceptY( line0 );
    
    
    	line1.slope = CalculateLineSlope( line1 );
    	line1.axisInterceptY = CalculateLineAxisInterceptY( line1 );
    
    
    	if ( line0.axisInterceptY == line1.axisInterceptY )
    		return false;
    
    	// Special Cases (Straight vertical lines are no linear functions)
    	bool bIsOnLine0 = false;
    	bool bIsOnLine1 = false;
    	if ( line0.start.x == line0.end.x && line1.start.x == line1.end.x )
    	{
    		return false;
    	}
    	else if ( line0.start.x == line0.end.x )
    	{
    		pOutColPos->x = line0.start.x;
    		pOutColPos->y = line1.slope * pOutColPos->x + line1.axisInterceptY;
    	}
    	else if ( line1.start.x == line1.end.x )
    	{
    		pOutColPos->x = line1.start.x;
    		pOutColPos->y = line0.slope * pOutColPos->x + line0.axisInterceptY;
    	}
    	else
    	{
    		pOutColPos->x = (  line1.axisInterceptY -  line0.axisInterceptY ) / ( line0.slope - line1.slope );
    		pOutColPos->y = line0.slope * pOutColPos->x + line0.axisInterceptY;
    	}
    
    
    	// TODO: Do it smarter, dumbass!
    
    
    	if ( line0.start.x < line0.end.x )
    		bIsOnLine0 = ( pOutColPos->x <= line0.end.x && pOutColPos->x >= line0.start.x );
    	else if ( line0.start.x > line0.end.x )
    		bIsOnLine0 = ( pOutColPos->x >= line0.end.x && pOutColPos->x <= line0.start.x );
    	else
    	{
    		if ( line0.start.y < line0.end.y )
    			bIsOnLine0 = ( pOutColPos->y >= line0.start.y && pOutColPos->y <= line0.end.y );
    		else if ( line0.start.y > line0.end.y )
    			bIsOnLine0 = ( pOutColPos->y <= line0.start.y && pOutColPos->y >= line0.end.y );
    		else
    			bIsOnLine0 = ( *pOutColPos == line0.start && *pOutColPos == line0.end );
    	}
    
    
    	if ( line1.start.x < line1.end.x )
    		bIsOnLine1 = ( pOutColPos->x <= line1.end.x && pOutColPos->x >= line1.start.x );
    	else if ( line1.start.x > line1.end.x )
    		bIsOnLine1 = ( pOutColPos->x >= line1.end.x && pOutColPos->x <= line1.start.x );
    	else
    	{
    		if ( line1.start.y < line1.end.y )
    			bIsOnLine1 = ( pOutColPos->y >= line1.start.y && pOutColPos->y <= line1.end.y );
    		else if ( line1.start.y > line0.end.y )
    			bIsOnLine1 = ( pOutColPos->y <= line1.start.y && pOutColPos->y >= line1.end.y );
    		else
    			bIsOnLine1 = ( *pOutColPos == line1.start && *pOutColPos == line1.end );
    	}
    
    	return ( bIsOnLine0 && bIsOnLine1 );
    }
    Alles anzeigen
    Code
    struct Collision_t
    {
    	vec2		start;
    	vec2		end;
    	float		frac;
    	vec2		colPos;
    	int			entIndex;
    };
    
    
    bool CEntity::TraceLine( vec2& start, vec2& end, Collision_t* pOutCol )
    {
    	if ( pOutCol == NULL )
    		return false;
    
    
    	pOutCol->start = start;
    	pOutCol->end = end;
    	pOutCol->frac = 1000000.0f;
    	pOutCol->entIndex = -1;
    
    
    	Line_t line0;
    	line0.start = start;
    	line0.end = end;
    
    
    	for ( size_t i = 0; i < g_pEntityList->size( ); i++ )
    	{
    		CEntity* pCurEnt = ( *g_pEntityList )[ i ];
    		if ( pCurEnt == NULL || pCurEnt == this )
    			continue;
    
    
    		vec2 center = pCurEnt->GetPosition( );
    		vector< vec2 > vertices = pCurEnt->GetVertices( );
    
    
    		size_t iNumVertices = vertices.size( );
    		for ( size_t j = 0; j < iNumVertices; j++ )
    		{
    			int iNextVertIndex = ( j == iNumVertices - 1 ) ? 0 : j + 1;
    			vec2 curVert = vertices[ j ];
    			vec2 nextVert = vertices[ iNextVertIndex ];
    
    
    			Line_t line1;
    			line1.start = center + curVert;
    			line1.end = center + nextVert;
    
    
    			vec2 colPos;
    			if ( CMath::FindLinesIntersection( line0, line1, &colPos ) )
    			{
    				float frac = length( colPos - start ) / length( end - start );
    
    
    				if ( frac < pOutCol->frac )
    				{
    					pOutCol->frac = frac;
    					pOutCol->colPos = colPos;
    					pOutCol->entIndex = i;
    				}
    			}
    		}
    	}
    
    
    	return ( pOutCol->entIndex >= 0 );
    }
    
    
    // ----------------------------------------------------------------------
    
    
    void CEntity::UpdatePosition( float flTimeElapsed )
    {
    	m_flTimeElapsed = flTimeElapsed;	// For further use.
    	vec2 newPos = m_position + m_velocity * flTimeElapsed;
    
    
    	// Debug...
    	g_pDrawing->SetDrawColor( colorRed );
    	g_pDrawing->DrawLine( m_position, m_position + m_velocity * 10 );
    	g_pDrawing->SetDrawColor( colorWhite );
    
    
    	Move( newPos );
    }
    Alles anzeigen
    Code
    void CBall::Move( vec2& newPos )
    {
    	Collision_t col;
    	memset( &col, 0, sizeof( Collision_t ) );
    	col.frac = 1000000.0f;
    
    
    	int colVert = -1;
    	for ( size_t i = 0; i < m_vertices.size( ); i++ )
    	{
    		vec2 curVert = m_position + m_vertices[ i ];
    		vec2 destVert = newPos - m_position + curVert;
    
    
    		Collision_t curCol;
    		if ( TraceLine( curVert, destVert, &curCol ) )
    		{
    			if ( length( ( destVert - curVert ) ) * curCol.frac < length( ( destVert - curVert ) ) * col.frac )
    			{
    				colVert = i;
    				memcpy( &col, &curCol, sizeof( Collision_t ) );
    			}
    		}
    	}
    
    
    	if ( colVert >= 0 )
    	{
    		vec2 delta = col.colPos - ( m_position + m_vertices[ colVert ] );
    
    
    		m_position += delta;
    
    
    		OnCollide( &col );
    		return;
    	}
    	else
    		m_position = newPos;
    }
    Alles anzeigen

    Das ist die Killisionserkennung meines Pong-Spiels.

  • derbotter20's Hilfe Thread

    • Twice
    • 6. Oktober 2011 um 21:34

    Natürlich nicht

  • dll. bearbeiten (IP ändern)

    • Twice
    • 27. September 2011 um 22:11

    IDA Pro + Hex-Rays Decompiler und lebenslange Erfahrung.

  • Speicher schnell durchsuchen (C#) ?

    • Twice
    • 27. September 2011 um 22:07

    Greif dir den PE Header des Moduls und scan nur die .text Section. Am besten liest du dann in blöcken und nicht jedes Byte einzeln.
    Es ist ja klar, dass das ganze so lange dauert, weil du knapp 2GB absuchst.

    MfG

  • dll. bearbeiten (IP ändern)

    • Twice
    • 27. September 2011 um 18:52
    Code
    .data:100590AC ; char *off_100590AC
    .data:100590AC off_100590ACdd offset a46_4_71_141_3 ; DATA XREF: sub_100042A0+64r
    .data:100590AC                                     ; "46.4.71.141   "
    .data:100590B0 ; char *off_100590B0
    .data:100590B0 off_100590B0dd offset a46_4_71_141_4 ; DATA XREF: sub_100042A0+7Dr
    .data:100590B0                                     ; "46.4.71.141   "
    .data:100590B4 ; char *off_100590B4
    .data:100590B4 off_100590B4dd offset a46_4_71_141_5 ; DATA XREF: sub_100042A0+97r
    .data:100590B4                                     ; "46.4.71.141   "
    .data:100590B8 ; char *off_100590B8
    .data:100590B8 off_100590B8dd offset a46_4_71_141_6 ; DATA XREF: sub_100042A0+B1r
    .data:100590B8                                     ; "46.4.71.141   "
    .data:100590BC ; char *off_100590BC
    .data:100590BC off_100590BCdd offset a46_4_71_141_7
    .data:100590BC                                     ; DATA XREF: sub_100042A0:loc_10004361r
    .data:100590BC                                     ; "46.4.71.141   "
    Alles anzeigen
    Code
    BOOL __thiscall sub_100042A0(void *this, SOCKET a2)
    {
      int v3; // [sp+4h] [bp-4Ch]@12
      int v4; // [sp+8h] [bp-48h]@1
      void *v5; // [sp+14h] [bp-3Ch]@11
      int v6; // [sp+1Ch] [bp-34h]@14
      SOCKET v7; // [sp+20h] [bp-30h]@1
      int v8; // [sp+24h] [bp-2Ch]@1
      struct sockaddr name; // [sp+28h] [bp-28h]@1
      unsigned int v10; // [sp+38h] [bp-18h]@1
      SOCKET s; // [sp+3Ch] [bp-14h]@1
      HANDLE hObject; // [sp+40h] [bp-10h]@10
      int v13; // [sp+4Ch] [bp-4h]@11
      int v14; // [sp+50h] [bp+0h]@1
    
    
      v10 = (unsigned int)&v14 ^ __security_cookie;
      v4 = (int)this;
      name.sa_family = 0;
      *(_DWORD *)&name.sa_data[0] = 0;
      *(_DWORD *)&name.sa_data[4] = 0;
      *(_DWORD *)&name.sa_data[8] = 0;
      *(_WORD *)&name.sa_data[12] = 0;
      v8 = 0;
      v7 = a2;
      s = socket(2, 1, 0);
      if ( dword_100590C0 )
      {
    	switch ( dword_100590C0 )
    	{
      	case 1:
        	*(_DWORD *)&name.sa_data[2] = inet_addr(off_100590B0);
        	break;
      	case 2:
        	*(_DWORD *)&name.sa_data[2] = inet_addr(off_100590B4);
        	break;
      	case 3:
        	*(_DWORD *)&name.sa_data[2] = inet_addr(off_100590B8);
        	break;
      	default:
        	*(_DWORD *)&name.sa_data[2] = inet_addr(off_100590BC);
        	break;
    	}
      }
      else
      {
    	*(_DWORD *)&name.sa_data[2] = inet_addr(off_100590AC);
      }
      name.sa_family = 2;
      *(_WORD *)&name.sa_data[0] = htons(0x3DA3u);
      hObject = CreateMutexA(0, 1, "DONTHOOK");
      if ( !connect(s, &name, 16) )
      {
    	EnterCriticalSection((LPCRITICAL_SECTION)(v4 + 196));
    	v5 = operator new(0x700F8u);
    	v13 = 0;
    	if ( v5 )
      	v3 = sub_10007530(v5);
    	else
      	v3 = 0;
    	v13 = -1;
    	v6 = v3;
    	sub_10007780(v4, v7, s, 1);
    	if ( (unsigned __int8)sub_10007880(*(HWND *)(v4 + 68)) )
    	{
      	sub_1000C9E0(&v6);
    	}
    	else
    	{
      	if ( v6 )
        	sub_100044B0(1);
    	}
    	LeaveCriticalSection((LPCRITICAL_SECTION)(v4 + 196));
    	CloseHandle(hObject);
      }
      return CloseHandle(hObject);
    }
    Alles anzeigen
  1. Datenschutzerklärung
  2. Impressum