Autor Beitrag
wdbee Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 628
Erhaltene Danke: 1



BeitragVerfasst: Do 15.02.07 16:06 
Hallo Delphin Drivers,

da gab es noch ein Problem mit der Ansteuerung der Boxengasse. Der Grund ist, dass es Boxengassen links oder rechts neben der Rennstrecke geben kann. Deshalb wird nicht nur der Abstand von der Mitte der Rennstrecke (= Dist(S,P)) benötigt, sondern auch das Vorzeichen (sprich die Richtung links oder rechts). Nun ist das eine Sache der Rennstrecke und nicht des Fahrzeugs, weshalb die alte Lösung da mal Probleme bereitete. Um die Richtung korrekt zu bestimmen, ist es nötig den Differenzvektor vom Punkt S (Mitte der Fahrbahn am aktuellen Ort) zum Punkt P (auf der Anfahrt zur Boxengasse querab von S) mit der normierten (d.h. Länge = 1.0) Richtung nach Rechts (Tor2D = ToRight nur X und Y) zu multiplizieren.

Am Ende der function TDriver.GetTargetPoint muss es also heißen:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
  if oPit.InPit then                             // In der Boxengasse den
    Offset := Mult(oCurrSec.Tor2D,Sub(S,P))      // Offset aus Rennstrecke
  else                                           // statt Fahrzeug ermitteln
    Offset := PlanOffset;                        // ansonsten je nach
  Result := Add(S,Mult(-Offset,N));              // Situation steuern


Diese Lösung arbeitet bei der Ein- und Ausfahrt aus der Boxengasse richtig.

Viel Spaß

wdbee
wdbee Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 628
Erhaltene Danke: 1



BeitragVerfasst: Mo 26.02.07 18:27 
Noch ein Fehler:

In UnitFilter in der function TFilterBrakeColl.Filter muss der Faktor 0.9 sein und nicht 1.1!

ausblenden Delphi-Quelltext
1:
  if Distance > 0.9 * Driver.Opponents[I].Distance then					


Sorry

wdbee
Horst_H
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1654
Erhaltene Danke: 244

WIN10,PuppyLinux
FreePascal,Lazarus
BeitragVerfasst: Mo 26.02.07 19:42 
Hallo,

dann will ich mal hoffen, das dies Auffahrunfälle aufhören :-) , bei denen sich Delphin und MeinerEiner selbst krankenhausreif(PitStop) fahren.
Ich habe es endlich geschafft auf dem Oval-track E-track 5 ein Endurance-Rennen (500 km) bis zum Ende zu überleben, obwohl kein Pit-Stop vorhanden ist(Nur Alleinfahrt.In einem normalen Rennen, fahren einen die anderen kaputt)
Dabei muss der Verbrauch auf 20kg/ 100 km ~ 24l /100 km gesenkt werden. Üblicherweise werden so 70 l/100 km dort verbraucht (BernieW2 8 die 1,6 km in 24:03 mue auf 3, denn ist kein Abflug möglich ), sodass die Wagen nach 100 Runden aus dem Rennen sind (wobei der Delphin mit 111 Runden als letzter stehenblieb, obwohl auf die ausrollenden BT's auffuhr, soweit schaut der nicht voraus, bzw lenkt dran vorbei).

Bei Delphin und Abkömmlingen kann man die Drehzahlschwelle shift und shiftmargin einstellen
statt soetwas:
ausblenden Quelltext
1:
2:
3:
4:
<attnum name="max pressure" unit="kPa" min="100" max="150000" val="43000"/>
..
<attnum name="shift" unit="1" min="0" max="1.0" val="0.91"/>
<attnum name="shiftmargin" unit="1" min="0" max="10" val="4.0"/>

eben soetwas:
ausblenden Quelltext
1:
2:
3:
4:
<attnum name="max pressure" unit="kPa" min="100" max="150000" val="100"/>
..
<attnum name="shift" unit="1" min="0" max="1.0" val="0.2"/>
<attnum name="shiftmargin" unit="1" min="0" max="10" val="10.0"/>

das bedeutet,dass man den Bremsdruck soweit reduziert das Bremsen minimal schleifen.
Mit shift stellt man ein, dass beim Erreichem einer Drehzahl von 0.2* Maximale Drehzahl (redline) im höherem Gang, wird hochgeschaltet und erst sehr spät (shiftmargin) wieder runter (hier eben nie).
Dann fährt MeinerEiner mit 2000 Upm und 174 min und delphin mit 2500 Upm in 176 min und wdbee_2007 in 171 min und bei fast 3000 Upm, wobei die Differentialübersetzungen angepasst sind.
Der Wirkungsgrad ist nun mal in der Nähe des höchsten Drehmomentes (Autodaten sind in C:\Programme\torcs\cars\clkdtm\clkdtm.xml speziell section engine abgelegt ) eben höher Siehe Verbrauchskennfelder z.B hier www.uni-magdeburg.de...MWJ2001/tschoeke.pdf schöne Datei mit Fahrwiderständen etc. wobei in der Rollreibung cr die Abtriebswerte unberücksichtigt sind, weil es nicht um Rennautos geht sondern um das 1-Liter Auto )
Ein TempoMat könnte die Verbrauchswerte noch senken, denn Konstantfahrt ist ja sparsamer.

Ich habe zu spät gesehen , das der Wirkungsgrad für den 4.ten Gang mit über 98% der Beste ist, während der 6.te nur 94% hat.


Ein anderes Problem hat sich nun ergeben:
Aeromagicwerte (Verstärkung des Unterbodeneffektes?) größer als 2 steigern den Abtrieb nicht mehr!.
Ich bestimme die Grenzgeschwindigkeiten mit den Werten cw und ca....
Übertragbare Kraft = mue*Senkrechte Kraft auf die Strasse.(f(masse,cr,cw,ca,v2,RadiusXY(Kurve),RadiusXZ(Kuppe) ))
Wenn die Querkraft(Zentrifugalkkraft) gleich der übertragbaren Kraft ist die Grenzgeschwindigkeit erreicht.
Nun fliegt MeinerEiner gnadenlos aus der Kurve und bremst zu spät, kommt also nicht über die Runden, wenn aeromagic die 2.0 überschreitet.

Diese 2.0 sind wohl der Grenzwert für eine topfebene Strecke wie hhr-track oder die e-track's

Gruß Horst
GTA-Place
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
EE-Regisseur
Beiträge: 5248
Erhaltene Danke: 2

WIN XP, IE 7, FF 2.0
Delphi 7, Lazarus
BeitragVerfasst: Mo 26.02.07 20:45 
Aktuelle Zeit auf HHR-Track: 1:28:12

_________________
"Wer Ego-Shooter Killerspiele nennt, muss konsequenterweise jeden Horrorstreifen als Killerfilm bezeichnen." (Zeit.de)
Horst_H
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1654
Erhaltene Danke: 244

WIN10,PuppyLinux
FreePascal,Lazarus
BeitragVerfasst: Mo 26.02.07 22:28 
Hallo,

ich habe doch schon mal mein setup für den Original delphin hier angegeben
www.delphi-forum.de/download.php?id=5329 das laut wdbee die 1:25.07 im qualifying geschafft haben soll.
Ich benutze auch wieder Delphi7 (Dank Deiner umarbeiung) auf dem Desktop-Rechner und Turbo-Delphi auf dem notebooki.
Das lässt sich sicher noch verbessern.
MeinerEiner bremst z.B mit 26000 als Bremsdruck am besten (Kein Zwischengas beim bremsen vor der Spitzkehre) aeromagic bis 2.0 macht die Kiste schneller und den Winkel des Heckflügels auf 4 Grad müsste den Anpressdruck an der Hinterachse erhöhen und die Kurvengeschwinbdigkeit positiv beeinflussen, ohne die Kiste langsamer werden zu lassen.

Das Problem vom delphin und meinereiner sind die ersten beiden Kurven nach Start und Ziel.
Die anderen Wagen fahren diese rund an und meinereiner fährt diese Kurve sehr eckig an, obwohl nur einen kleine Winkel hat, weil sich der Roboter bisher nur für den Radius aber nicht für die Bogenlänge interessiert.(oder habe ich das selbst bei mir ausgbaut?? )
Ich teste mal ob das wirklich etwas bringt.
Anbei ein Schnappschuß wo die BT's in Aalborg die Straße blockieren.
Einloggen, um Attachments anzusehen!
wdbee Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 628
Erhaltene Danke: 1



BeitragVerfasst: Mo 26.02.07 23:05 
Hallo GTA-Place, hallo Horst,

ich habe da noch etwas gefunden, was geändert werden sollte. Bisher wird der Sicherheitsabstand (FRONTCOLL_MARGIN) bei der Berechnung des Bremsweges immer eingerechnet. Bei der Ansteuerung der Box musste er deshalb berücksichtigt werden. Das ist so sehr ungeschickt. Wirklich benötigt wird er nur, wenn es darum geht, hinter einem Konkurrenten zu bremsen. Deshalb ist es sinnvoller, ihn dort zu addieren und ihn überall sonst wegzulassen.

In UnitDriver ändern:
ausblenden volle Höhe Delphi-Quelltext
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:
//==========================================================================*
// Bremsweg schätzen
//--------------------------------------------------------------------------*
function TDriver.BrakeDist(TargetSpeedSqr, Mu: Tdble): Tdble;
var
  C, D: Tdble;
begin
  C := Mu * G;
  D := (Ca * Mu + Cw) / Mass;
  Result := -ln((C + TargetSpeedSqr*D) / (C + CurrSpeedSqr*D)) / (2.0 * D);
end;
//==========================================================================*

//==========================================================================*
// Bremsweg schätzen
//--------------------------------------------------------------------------*
function TDriver.BrakeDist(ActSpeedSqr,TargetSpeedSqr, Mu: Tdble): Tdble;
var
  C, D: Tdble;
begin
  C := Mu * G;
  D := (Ca * Mu + Cw) / Mass;
  Result := -ln((C + TargetSpeedSqr*D) / (C + ActSpeedSqr*D)) / (2.0 * D);
end;
//==========================================================================*

//==========================================================================*
// Bremsweg schätzen
//--------------------------------------------------------------------------*
class function TDriver.BrakeDist(ActSpeedSqr,TargetSpeedSqr
  ,Mu,Ca,Cw,Mass: Tdble): Tdble;
var
  C, D: Tdble;
begin
  C := Mu * G;
  D := (Ca * Mu + Cw) / Mass;
  Result := -ln((C + TargetSpeedSqr*D) / (C + ActSpeedSqr*D)) / (2.0 * D);
end;
//==========================================================================*

In UnitFilter ändern:
ausblenden volle Höhe Delphi-Quelltext
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:
//==========================================================================*
// Geschwindigkeitsregelung zur Einhaltung des Tempolimits in der Boxengasse
//--------------------------------------------------------------------------*
function TFilterBrakePit.Filter(Signal: Tdble):Tdble;
const
  PIT_BRAKE_AHEAD = 200.0// [m] Workaround for "broken" pitentries
var
  DL, Dw: Tdble;
  S: Tdble;
  Dist: Tdble;
begin
  Result := Signal;

  if oDriver.Pit.PitStop                         // Anfahrt zum Eingang
    and (not oDriver.Pit.InPit) then             // der Boxengasse?
  begin                                          // Falls Einfahrt zur Box
    RtDistToPit                                  // sehr kurz ist, Abstand
      (oDriver.Car^,oDriver.Track^,DL,Dw);       // Box bestimmen
    if DL < PIT_BRAKE_AHEAD then                 // und Bremspunkt
    begin                                        // überwachen, ggf.
      if Driver.BrakeDist(0.0,oDriver.PitMu) > DL then
      begin                                      //   Sofort
        Result := 1.0;                           //   eine Vollbremsung
        Exit;                                    //   hinlegen
      end;
    end;
  end;

  if oDriver.Pit.InPit then                      // Sind wir in Boxengasse?
  begin                                          // Wenn ja
    S := oDriver.Pit.Station(oDriver.DistFromStartLine);
    if oDriver.Pit.PitStop then                  //   noch auf der Anfahrt?
    begin
      Dist := oDriver.Pit.NPitStart - S;         // Abstand vom Beginn Temol.
                                                 // Bremspunkt bezogen auf
                                                 // Beginn des Tempolimits
      if ((S < oDriver.Pit.NPitStart)            // oder Tempolimit selbst
        and (oDriver.BrakeDist(oDriver.Pit.SpeedLimit,Driver.PitMu) > Dist))
        or ((S > oDriver.Pit.NPitStart)
        and (oDriver.CurrSpeedSqr > oDriver.Pit.SpeedLimitSqr)) then
        Result := oDriver.Pit.GetPitSpeedLimitBrake(Driver.CurrSpeedSqr);

      Dist := oDriver.Pit.NPitLoc - S;           // Abstand von der Box
      if oDriver.Pit.IsTimeout(Dist) then        // Abbruch wenn kein Service
      begin
        oDriver.Pit.PitStop := False;
        Result := 0.0;
      end
      else // Zusätzlich überwachen: Bremspunkt für Stillstand in Box
      begin
        if (S <= oDriver.Pit.NPitLoc)            // Wir sind noch vor der Box
          and (oDriver.BrakeDistPit > Dist) then // haben aber Bremspunkt für
          Result := 1.0                          //   Box schon erreicht
        else if S > oDriver.Pit.NPitLoc then     // Wir sind angekommen
        begin                                    // Beim Stehen in der Box
          oDriver.GearCmd := 0;                  //   Gang raus
          oDriver.AccelCmd := 0.0;               //   Gas weg
          oDriver.Standing := True;              //   Flag für Unstuck-Pause
          oDriver.ClutchCmd := 1.0;              //   Kupplung treten
          Result := 1.0;                         //   Bremsen
        end;
      end;
    end
    else // Wir sind schon auf der Ausfahrt
    begin
      if S < oDriver.Pit.NPitEnd then
      begin // Noch gilt Tempolimit
        if oDriver.CurrSpeedSqr > oDriver.Pit.SpeedLimitSqr then
          Result := oDriver.Pit.GetPitSpeedLimitBrake(Driver.CurrSpeedSqr);
      end;
    end;
  end;
end;
//==========================================================================*

//==========================================================================*
// Abbremsen wegen eines Rivalen oder eines Teammitgliedes
//--------------------------------------------------------------------------*
function TFilterBrakeColl.Filter(Signal: Tdble): Tdble;
var
  I: Int;
  Mu: Tdble;
  Distance: Tdble;
begin
  Result := Signal;

  Mu := Driver.Mu;
  for I := 0 to Driver.Opponents.Count - 1 do
  begin
    if (Driver.Opponents[I].State and OPP_TEAMBRAKE) <> 0 then
      Result := Max(0.5,Result);

    if (Driver.Opponents[I].State and OPP_COLL) <> 0 then
    begin
      Distance := FRONTCOLL_MARGIN + Driver.BrakeDist    // Hier wird er gebraucht
        (Driver.SpeedX,Driver.Opponents[I].Speed,Mu);
      if Distance > 0.9 * Driver.Opponents[I].Distance then
      begin
        Result := 1.0;
        Exit;
      end;
    end;
  end;
end;
//==========================================================================*


Dadurch sollte sich das Anbremsen der Kurven verbessern lassen.
Horst_H
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1654
Erhaltene Danke: 244

WIN10,PuppyLinux
FreePascal,Lazarus
BeitragVerfasst: Di 27.02.07 00:32 
Hallo,

ich habe noch ein wenig am Delphin herungeschraubt:
1:24.64 im Qualifying nach 20 Runden practice

Gruß Horst
Einloggen, um Attachments anzusehen!
Horst_H
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1654
Erhaltene Danke: 244

WIN10,PuppyLinux
FreePascal,Lazarus
BeitragVerfasst: Di 27.02.07 07:27 
Hallo,

der Schnappschuss von den BT's fehlte oben.
Nach vielen Runden sind diese falsch trainiert oder zu ähnlich angelernt das sie sich selbst im Wege stehen.
Auf dem Bild ist die 2.te Runde des Rennesns und die BT's stehen an der Stelle dort schon seit der ersten Runde also schon über einer Minute, links unten noch keine Rundenzeit, und werden später durch wdbee so oft geschubst bis es weitergeht. BernieW schafft es fast immer passend zu bremsen, zögert aber bei der Vorbeifahrt , er steht schon 0.7 Sekunden bis wdbee eben nicht mehr passend bremst und die beiden ausreichend weit verschiebt.

Gruß Horst
Einloggen, um Attachments anzusehen!
wdbee Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 628
Erhaltene Danke: 1



BeitragVerfasst: Di 27.02.07 17:56 
Hallo,

mit den oben beschriebenen Maßnahmen habe ich den delphin V1.0.X etwas verbessert. Zusätzlich habe ich die Angabe des Schätzwertes für den Treibstoffverbrauch von kg/Runde auf kg/100km umgestellt. Außerdem arbeite ich noch an den Erweiterungen für das "Pit Sharing", also das gemeinsame Nutzen einer Box durch mehrere Teammitglieder. Dies ist ein neue Funktion von TORCS ab V1.3.0, die aber per default abgeschaltet ist. Wenn ich das mal getestet habe, werde ich ein Update bereitstellen.

Die Probe für die Maßnahmen war ein neuer Lauf und daher eine neue Zeit für den laufenden Wettkampf: 1:24:57 für die Qualifikation auf hhr-track (Verbesserte Version mit 20 gleichlangen Boxen, deshalb aber leicht verschobenem Startpunkt). Die Zeit wurde nach einem 20-Runden-Training erreicht.

Für die Strecke habe ich mal versucht etwas Landschaft bereitzustellen. Die Dateien im Zip-Archiv müssen in das hhr-tack-Verzeichnis kopiert werden (z.B. "C:\Programme\TORCS\tracks\road\hhr-track").

Im Setup-Archiv sind das Setup und die Karma-Datei (="Lernfaktoren") dazu. Bitte denkt daran, dass vorhandene Karmadateien auf der neuen Strecke nicht mehr passen, da der Startpunkt verschoben ist!

Sorry, aber sonst wären die Boxen nicht nutzbar gewesen!
Einloggen, um Attachments anzusehen!
Horst_H
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1654
Erhaltene Danke: 244

WIN10,PuppyLinux
FreePascal,Lazarus
BeitragVerfasst: Mi 28.02.07 13:45 
Hallo,

die Änderungen bewirken eine Verlangsamung meiner Einstellungen auf 1:24.96 also 0.3 Sekunden.
Aber ich bekomme deine Fahrzeit nicht hin. Ändere doch die Quelldateien zu Beginn dieses Threads, damit wir alle die gleiche Basis nutzen.
Ich schlage vor, die Konstante WidthDiv in privaten Einstellungen einzufügen:
UnitDriver.pas
ausblenden Delphi-Quelltext
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:
const
BOTNAME_ATT_WIDTHDIV = 'useable road width';   // Anteil Fahrbahn
dann:
TDriver = class(TDriverBaseClass)
  private
    oActOffset: Tdble;                           // Kursabweichung
    oAeroMagic: Tdble;                           // Ca-Tuningfaktor
    oAlone: Integer;                             // Indikator für Umfeld
    oBorder: Tdble;                              // Randabstand
    oBrakeDistPit: Tdble;                        // Bremsabstand für Box

    oWidthDiv : tDble;                           // Nutzbare Strassenbreite
.....
  property WidthDiv : tDble
      read oWidthDiv;
  
//==========================================================================*
// Experte für die Einstellung des Rennwagens
//--------------------------------------------------------------------------*
procedure TDriver.GetParamExpert(var CarSettings: PCarSettings);
var
  Fuel: Tdble;
begin
....
 oWidthDiv := GfParmGetNum(CarSettings
    , BOTNAME_PRIV, BOTNAME_ATT_WIDTHDIV
    ,nil,3.0);
  WriteLn(Format('WidthDiv: %0.2f',[oWidthDiv]));
....

und WidthDiv eben mit oWidthDiv zu ersetzen in
UnitFilter.pas die letzten Zeilen
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
    begin
      Tm := Abs(Driver.ToMiddle);
      W := Seg.Width / Driver.WidthDiv;
      if Tm > W then
        Result := 0;
    end;
  end;
end;
//==========================================================================*
end.
//--------------------------------------------------------------------------*
// end of file UnitFilter.pas
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*


Bei MeinerEiner nutze ich fast immer die volle Fahrbahnbreite. Nur auf Oletheros Road nehme ich ein schmales Band um die Mitte, aber das rettet mich auch nicht, ist aber etwas schneller am PitStopp :-)

Gruß Horst
Edit:
in der %trackname%.xml -Datei in der section private fehlt dann soetwas.
2 als minimum heisst die volle Breite (Nutzbreite = 2/oWidthDiv ) 100 eben nur 2% der Fahrbahnbreite, vielleicht sollt man es leserlicher gestalten, indem man % Angaben nimmt und im Programm umrechnet.
ausblenden Quelltext
1:
    <attnum name="useable road width" unit="1" min="2" max="100" val="2"/>					


Edit:Edit:
mit dieser Einstellung von WidthDiv = 2 komme ich wieder auf 1:24.75.
wdbee Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 628
Erhaltene Danke: 1



BeitragVerfasst: Mi 28.02.07 20:35 
Hallo Horst,

natürlich werde ich die geänderte Version dort bereitstellen. Ich kämpfe aber gerade noch mit einigen Punkten im Zusammenhang mit den bezüglich TORCS V1.3.0 offenen Punkten, wie eben dem Pit Sharing. Da werde ich noch etwas Zeit brauchen. Dann werde ich auch deinen Vorschlag (für WidthDiv) noch berücksichtigen.

Hattest du meine neuen Zeiten auf der alten oder der neuen Version der Strecke geprüft? Welche Frameraten schafft denn Deine Grafikkarte mit der neuen Landschaft? Die Bäume brauchen offensichtlich einges am Leistung.

Bis bald

wdbee
Horst_H
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1654
Erhaltene Danke: 244

WIN10,PuppyLinux
FreePascal,Lazarus
BeitragVerfasst: Mi 28.02.07 23:00 
Hallo,

ich habe mal die delphin.dll von Dir jetzt benutzt.
Zuerst habe ich alle *.karma Dateien gelöscht und dann alle Wagen, die dies nutzen, 20 Runden pratice auf hhr-track fahren lassen.
Deinen Delphin habe ich als Delphin 2 rennen lassen und dieser kommt nur auf 1:25.362
Der Wagen fährt er mit zuwenig Sprit und muss in der letzten Runde tanken und so auch im Rennen wen auch nur extrem kurz.
MeinerEiner wird in jedem Rennen von den Delphinen ausgeknockt, ok da muss der Roboter verändert werden.
Aber wenn sich viele streiten und wegschleudern,kann auch BernieW2 gut vorbei.

Die Bildrate bei 4-facher Ablaufgeschwindigkeit geht nach der Spitzkehre auf der Geraden bis auf 23 fps runter, obwohl kaum Bäume da sind, in der Spitzkehre sind es immer noch 71 fps, auf Start und Ziel 99.? fps.
Und das auf einer UrAlt Radeon 7000 mit 64 Mb und AGP 4x . AMD64 3000 (von 1800 auf 2100 Mhz übertaktet(maximal 45 Grad CnQ 31 Grad)).

Also störend ist das nicht.

Ich harre der Dinge, die da kommen

Gruß Horst
Einloggen, um Attachments anzusehen!
wdbee Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 628
Erhaltene Danke: 1



BeitragVerfasst: Do 01.03.07 09:13 
Hallo Horst,

die Zeit, die ich angegeben habe, wurde mit der Karma-Datei erreicht, die ich oben angegeben habe. Wenn die gelöscht wurde kommt etwas anderes bei raus, weil ich das Training nicht mit der Setup-Datei gemacht habe, die für die Qualifikation und für das Rennen verwendet wird!

Die Bäume helfen einem beim Abschätzen des Abstands, wenn man mal versucht selbst zu fahren.
Das eigentliche Problem ist, dass die unwichtige Landschaft aus zu vielen Dreiecken gebildet wird. Besonders der flache Innenbereich ist da unnötig aufwendig abgebildet, und rechts unten die Ecke sieht man im Rennen ja nie. Leider stürzt mein Blender ab, wenn ich versuche das nachzuberarbeiten.

Gruß

wdbee
Horst_H
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1654
Erhaltene Danke: 244

WIN10,PuppyLinux
FreePascal,Lazarus
BeitragVerfasst: Fr 23.03.07 14:03 
Hallo,

ich habe mal Dein Getriebe benutzt, um den Delphin schneller zu machen.
Die 1 min 23 werden unterschritten!
Anbei die Resultate eine Non-Championship Rennens und die "Mechaniker"-Datei.

Gruss Horst
Einloggen, um Attachments anzusehen!
wdbee Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 628
Erhaltene Danke: 1



BeitragVerfasst: Fr 23.03.07 18:36 
Hallo Horst,

ich habe deine neue Zeit in die Tabelle eingetragen. Bitte prüf mal, ob ich die Angaben richtig interpretiert habe.

Auf der TORCS-Site von Andrew Sumner ist ein neues Paket zum Download zu finden. Was er dazu schreibt, klingt recht interessant:

Zitat:

Supercars
A set of six sports cars in their "production" state - ie. not specifically modified for racing. I've taken quite a lot of time & trouble to ensure they're well balanced versus each other, though they do have their own characteristics and some cars may have the edge on some tracks. The download includes a Championship setup and 14 high-quality computer drivers to compete against.


In den nächsten 4 Wochen werde ich kaum Zeit finden, mich mit TORCS zu beschäftigen. Also etwas Geduld bitte!

Gruß


wdbee


Zuletzt bearbeitet von wdbee am So 25.03.07 10:37, insgesamt 1-mal bearbeitet
wdbee Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 628
Erhaltene Danke: 1



BeitragVerfasst: So 25.03.07 10:37 
Kleiner Tipp für alle, die das neue Supercars-Paket von Andrew Sumner ausprobieren wollen:

Nachdem ich das Paket in das TORCS-Verzeichnis kopiert hatte, stürzte TORCS gleich beim Start komplett ab. Der Grund war offensichtlich der Ordner ..\categories\Supercars (mit dem Makefile). Nach dem ich den gelöscht hatte, lief das Paket!
Horst_H
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1654
Erhaltene Danke: 244

WIN10,PuppyLinux
FreePascal,Lazarus
BeitragVerfasst: Mo 26.03.07 07:37 
Hallo,

ich war auch erstaunt, woran es lag, denn die .xml schienen nichts abstürzendes zu enthalten.
Das werde ich mal testen

Gruß Horst
Horst_H
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1654
Erhaltene Danke: 244

WIN10,PuppyLinux
FreePascal,Lazarus
BeitragVerfasst: Mo 26.03.07 22:31 
Hallo,

es funktioniert ja sehr gut. Die Wagen fahren wirklich sehr schöne Kurven, etwas agresssiver wie BernieW2 8, und von Beginnn an sehr schnelle Rundenzeiten.
Ich habe mal BT3 zu einem Porsche 996 (sc_p996) gemacht und o Wunder, nach 200 Runden Training auf E-track4 war dieser minimal schneller.
Spasseshalber habe ich mal den Delphin mit Freepascal (2.0.4) compiliert und es funktioniert nach minimalen Änderungen (showmesssage diurch writeln ersetzt(kein dialogs im uses),
$define Torcs_1.3.0 eingebaut, aber dann Torcs_1.3.0 durch Torcs_1_3_0 ersetzt, in den units, die dies verlangten).
Tempomässig kann ich keinen Unterschied feststellen, aber ist auch komplett ohne Optimierungen und für 8x486 compiliert.
Zuvor musste ich fp.ini;.cfg löschen, weil es sonst merkwürdige Fehler gab, die eingelesenen Daten aus der xml Datei wurden angezeigt ,aber wtorcs blieb dann hängen, irgendein getLongwindowA?? wurde nicht gefunden und der delphin tauchte nicht mehr auf.
Vielleicht etwas für wdbee' Internetpräsenz

Gruß Horst
wdbee Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 628
Erhaltene Danke: 1



BeitragVerfasst: Di 27.03.07 00:02 
Hallo Horst,

ich sage ja immer wieder, den bt sollte man nicht unterschätzen!
Hast du denn den "skill" des Hymie-Roboters eingestellt?
Der steht auf "Handicap 10", wenn du nichts geändert hast. Wenn du mal einen richtig schnellen Lauf sehen willst, musst du den auf 0 setzen: In Datei ..\torcs\config\raceman\extra\skill.xml.

Ich fahre gerade mit meinem wdbee auf einem sc-996 gegen die Hymie (mit Handicap 10) um die Fehler beim Überholen und Ausweichen auszumerzen. Da stimmt noch einiges nicht so ganz. Mit Handicap 0 ist der Hymie auf E-Track 4 mehr als 4 Sekunden pro Runde schneller als mein wdbee.

Dein Erfolg mit Freepascal ist höchst interessant. Ich hatte das probiert, aber TORCS konnte mit der DLL nichts anfangen. Wenn das unter Windows klappt, könnte es ja auch unter Linux gehen! Das wäre dann natürlich ein Riesenschritt weiter, zu allgemeinen Verwendbarkeit.

Nach Ostern werde ich mich deswegen mal bei dir melden.

wdbee
Horst_H
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1654
Erhaltene Danke: 244

WIN10,PuppyLinux
FreePascal,Lazarus
BeitragVerfasst: Do 29.03.07 22:16 
Hallo,

nur mal als kleiner Schock hymie_sc1 auf Mercedes CLK umgemünzt (Manche Dinge haben keine Wirkung)
Das erste Mal das bei mir 1min 19 auf hhr-track unterschritten wurde.

Gruss Horst
Einloggen, um Attachments anzusehen!