The online racing simulator
Searching in All forums
(990 results)
NotAnIllusion
S3 licensed
Second was better than the first.
NotAnIllusion
S3 licensed
134 to 142 were spent under yellows when 'bottom went off, and Courtney got a penalty for intentionally driving too slowly while trying to avoid double stacking. All of that is in the vod :\.

All three messed up in that incident to be honest, even Tander. There's precedent for either a redress or a points penalty for a "level 1" incident which nudging McLaughlin off was classified as. A random time penalty is neither of those. The Pither related time penalty was different, it was for failing to redress in 3-4 laps. Obviously McLaughlin's rejoin wasn't clean, and Tander was blind to not see what Whincup was trying to do. Even as it happened, I was wondering how Tander failed to simply pass Whincup on the outside. Slowing down, tucking behind him and *then* trying to go through the middle was a mindboggling choice to say the least.

Perhaps the redressing of positions should only be done with the direction of race control in the future..
NotAnIllusion
S3 licensed
Could someone with SuperView confirm for me whether or not this Saturday's vods are of terrible quality, please? Seems to be stuck on a low bitrate, instead of going higher and sometimes dipping lower as it usually does.
NotAnIllusion
S3 licensed
Try: Click "UDP" so that it becomes "TCP".
NotAnIllusion
S3 licensed
28 or 18.8 GB?

I don't know if anyone uses PPjoy+GlovePIE, Vjoy or the like, because it would be interesting to see if it's possible to use a wheel and pedals as they were a gamepad since it doesn't have wheel support at the moment.

I'm not going to bother downloading it, my ancient laptop is wellll below the minimum specifications. Sad day, I could have become a console peasant, but failed Frown
NotAnIllusion
S3 licensed
Phillip Island V8 Supercars was good, as expected. Meanwhile in Japan, the first round of the Super GT championship took place.

https://www.youtube.com/watch?v=J0fndvfbC98
NotAnIllusion
S3 licensed
Because vans and trailers exist.
NotAnIllusion
S3 licensed
The first ever running of the 6 Hours of Bathurst is starting soon. It's a production car + historic endurance race.

Live stream and timing: http://www.bathurstmotorfestival.com.au/live

Entry list: http://www.bathurstmotorfestival.com.au/event-info/entry-list

Qualification news (results): http://www.bathurstmotorfestival.com.au/news-6hr-sat

V8 Supercars' Chaz Mostert on pole.
NotAnIllusion
S3 licensed
Melbourne Formula 1 event V8 Supercars support races https://www.youtube.com/user/MrRacenut9

4x 12 lap races, no championship points so it's a free-for-all Wink
NotAnIllusion
S3 licensed
I guess at least Rosberg, if not Hamilton would have overtaken Vettel had he been on mediums, so the supersofts and softs strategy wasn't is bad as I'd first imagined it to be. Still a shame that Ferrari couldn't manage to convert a one-two. If only Mercedes would get starts that bad all through the season.

Hamilton dropped to 6th, didn't gain anything from the red flag and still almost caught Rosberg. My conclusion is that had Hamilton started from the inside rather than the outside, he wouldn't have gotten shafted by Rosberg going wide in turn one on lap one. He's still the better Mercedes driver, even though Rosberg won. Which is fine of course, he did well to avoid mistakes and to get the win.

Veeery lucky for Grosjean, that's not where Haas will finish in the rest of the season, but fair enough, he drove a solid race. Palmer did a great job as well, he seems steady like Kovalainen, but better. The chumps of the race were Verstappen with his spin and radio antics, and especially Gutierrez. What an utter knobhead choice to move from the inside towards the side where Alonso was passing and thus causing the crash. Good thing to see Alonso plop out of the wreckage in one piece. Button's pace was very disappointing Frown.
NotAnIllusion
S3 licensed
The new format is not catastrophically bad for the first two qualifying sessions, but not ideal either. It's terrible for the last qualifying session, I hope at least that gets changed for the next race weekend.

Rosberg appears to still have no answer for Hamilton. Crash in practice, mistakes in the first and third qualifying. Hamilton going from strength to strength it seems. I'm still hoping for a close race for the WDC title, but it's not looking rosy at the moment.

Good job by Jolyon Palmer.
NotAnIllusion
S3 licensed
Heh, I had to go have a second look because I didn't even notice since I usually skip the pre-race stuff Tongue
NotAnIllusion
S3 licensed
The message from Reiza said that non-Steam GCSE owners would be eligible for a free copy of Automobilista upon adding GCSE to Steam. I don't know whether it was a limited-time deal (i.e. before Stea EA release) and whether it required a key or something.
NotAnIllusion
S3 licensed
I've seen it.

Spoiler - click to reveal
- Surprised that Pye got it, but there's the race in which to lose the lead yet..
- Very happy to see Mostert right back up there.
- It looks as if Van Gisbergen will need a few weekends to catch up to Whincup.
- Go away Frosty Frown


What an insane finish to race two. Ban this sick filth! Fap

Race 3, what a fiasco. The racing itself was exciting, as one might expect given the circumstances, but these rules mang. Something needs to change, because that was a proper mess.

Regarding the start issue
Spoiler - click to revealSource: http://www.v8central.com/snitz3403/topic.asp?TOPIC_ID=40825&whichpage=9#845397
Quote :
9.4.6 The SC will withdraw in the prescribed manner when directed by the RD.
9.4.7 The race will be considered started when the leading Car crosses the Control Line at the end of that lap.

So I guess what should have happened is that the safety car and the field would do some non-race 'recon' laps. Then the 'safety car lights out' and pit-in call would happen, and the race would start as per the second rule. That clearly did not happen.

Also,
http://tentenths.com/forum/showpost.php?p=3620514&postcount=22
http://tentenths.com/forum/showpost.php?p=3620551&postcount=27


And the other issue
Spoiler - click to revealAs terrible as the 140L rule is, it is in the rulebook and choosing to ignore it midrace with no warning would be a bad call. Then again, it seems that the race control managed to come up with a completely new rule at the start of the race..

Down with forced number of pit stops, forced fill-ups etc. 140L fuel and X number of tyres available for the race. Use as much or little as necessary, job done. Personally, I don't have a huuuge problem with time-limited races for the regular season. A 1h45 dry race ending up a 5h washout isn't really fun to follow live, whether it be V8SCs, F1s, GTs or 'Murican circle racing.
Last edited by NotAnIllusion, .
2016 Touring Car racing (WTCC, BTCC, DTM, V8 Supercars, etc.)
NotAnIllusion
S3 licensed
The 2016 V8 Supercars season pass is now available. The season starts this weekend with the Clipsal 500 in Adelaide, NSW.

- All quali sessions live and vod.
- All race sessions live and vod.

AUD 39.95, I was billed 27.26€. It appears that PayPal is the only available payment processor this year. Well worth the money if one is interested in the series, in my opinion.

Quote :SuperView
39.95 AUD
2016 Championship Pass

Every 2016 championship qualifying session
Every 2016 championship race
On-Demand replays of 2016 championship qualifying sessions and races
Watch LIVE & uninterrupted

Not available within Australia or New Zealand. Excludes Australian Grand Prix

NotAnIllusion
S3 licensed
NotAnIllusion
S3 licensed
Quote from EeekiE :I'm proud of the tricks that an old dog has learned.

Who's a good boy? Who's a good booy? Tongue

In all seriousness, that sounds fantastic. I'm glad that both of you seem to have enjoyed the process, and it's good to see LFS still has its uses beyond cruising (joke). If Mr. EeekiE Sr. is reading this, jolly good show!
NotAnIllusion
S3 licensed
Maybe a Greasemonkey script could be used meanwhile, it seems that there's a ignore/block script for a different board. Not ideal, but might be something to consider as an alternative.
NotAnIllusion
S3 licensed
I see American cities listed there, so I would assume so. Never done convoys myself, I'd imagine they're boring af if one isn't on voice comms.. Tongue
NotAnIllusion
S3 licensed
I don't play single player at all to be honest. The psychological effect of knowing that there are no real people anywhere does nothing for me in ETS2/ATS Tongue

You can organise "real" (read: large) convoys at http://ets2c.com/ and such convoys may get admin assistance if needed, but if all you're looking to do is drive around a bit with a small group, you don't need to do anything special. Pick the same job or at least ones that are to the same city, hit the road ^^.
Last edited by NotAnIllusion, .
NotAnIllusion
S3 licensed
0.0.7
- tidying, cleanup
- no sql

Spoiler - click to reveal

<?php 

class ABGap extends Plugins
{
    const 
URL 'https://www.lfs.net/forum/thread/89031-ABGap-%28code-dump%2C-unsupported%29';
    const 
NAME 'ABGap';
    const 
AUTHOR 'notanillusion';
    const 
VERSION '0.0.7';
    const 
DESCRIPTION 'Gap delta to car ahead and behind';
    
    const 
GAP_AHEAD = -1;
    const 
GAP_BEHIND 1;
    
    const 
SPLIT_LAP 255;

    public function 
__construct ()
    {        
        
$this->registerPacket('onLap'ISP_LAP);    // record times, display gaps
        
$this->registerPacket('onMci'ISP_MCI);    // update positions
        
$this->registerPacket('onNpl'ISP_NPL);    // add new plids
        
$this->registerPacket('onPll'ISP_PLL);    // remove unusued plids
        
$this->registerPacket('onRst'ISP_RST);    // update total splits and laps, fresh db table
        
$this->registerPacket('onSpx'ISP_SPX);    // record times, display gaps
        
$this->registerPacket('onSta'ISP_STA);    // update viewplid
        
        
$this->timing = array();        // plid, lap, split, pos, time
        
$this->playerData = array();    // plid => array(pos, lap), ...
        
$this->viewPlid 0;
        
$this->laps 0;
        
$this->splits 0;
    }
    
    
/// *** PACKET FUNCTIONS START *** ///
    
    
public function onLap (IS_LAP $lap)
    {
        if (!
count($this->playerData)) { return; }         // ignore hotlap mode
        
        
$pos $this->playerData[$lap->PLID]['pos'];
        
$this->addTime($lap->PLID$lap->LapsDone$this::SPLIT_LAP$pos$lap->ETime);
        
        
// Don't check for gap ahead if we're 1st.
        
if ($lap->PLID === $this->viewPlid && $this->playerData[$this->viewPlid]['pos'] > 1)
        {
            
$plidAhead $this->getPlidAhead($pos$lap->LapsDone$this::SPLIT_LAP);
            
            
// Sometimes when cars are really close to one another across a split, the SPX for the car behind in positions
            // can arrive first. Don't display gap when that happens.
            
if ($plidAhead === null) { return; }

            
$this->sendGap($plidAhead$this::GAP_AHEAD$lap->LapsDone$this::SPLIT_LAP);
        }
        
        
// Don't check for gap behind if we're last.
        
if (!$this->isLastPlaceByPlid($this->viewPlid))
        {
            if (
$this->getPlidAhead($pos$lap->LapsDone$this::SPLIT_LAP) == $this->viewPlid)
            {
                
$this->sendGap($lap->PLID$this::GAP_BEHIND$lap->LapsDone$this::SPLIT_LAP);
            }
        }
    }

    public function 
onMci (IS_MCI $mci)
    {
        foreach (
$mci->Info as $compcar)
        {
            if (!
$compcar->Position) { continue; }
            
            
$this->playerData[$compcar->PLID]['pos'] = $compcar->Position;
            
$this->playerData[$compcar->PLID]['lap'] = $compcar->Lap;
        }
    }
    
    public function 
onNpl (IS_NPL $npl)
    {
        
$this->playerData[$npl->PLID]['pos'] = $npl->NumP;
        
$this->playerData[$npl->PLID]['lap'] = 1;
    }
    
    public function 
onPll (IS_PLL $pll)
    {
        unset(
$this->playerData[$pll->PLID]);
    }
    
    public function 
onRst (IS_RST $rst)
    {
        
$this->laps $rst->RaceLaps;
        
$this->splits $this->getNumSplitsRst($rst);
        
        
$this->playerData = array();
        
$this->timing = array();
    }
    
    public function 
onSpx (IS_SPX $spx)
    {
        if (!
count($this->playerData)) { return; }
        
        
$pos $this->playerData[$spx->PLID]['pos'];
        
$lap $this->playerData[$spx->PLID]['lap'];
        
        if (!
$lap) { $lap++; }
        
        
$this->addTime($spx->PLID$lap$spx->Split$this->playerData[$spx->PLID]['pos'], $spx->ETime);
        
        if (
$spx->PLID === $this->viewPlid && $this->playerData[$this->viewPlid]['pos'] > 1)
        {
            
$plidAhead $this->getPlidAhead($pos$lap$spx->Split);
            
            if (
$plidAhead === null) { return; }
            
            
$this->sendGap($plidAhead$this::GAP_AHEAD$lap$spx->Split);
        }
        
        if (!
$this->isLastPlaceByPlid($this->viewPlid))
        {
            if (
$this->getPlidAhead($pos$lap$spx->Split) == $this->viewPlid)
            {
                
$this->sendGap($spx->PLID$this::GAP_BEHIND$lap$spx->Split);
            }
        }
    }
    
    public function 
onSta (IS_STA $sta)
    {
        
$this->viewPlid $sta->ViewPLID;
    }
    
    
/// *** PACKET FUNCTIONS END *** ///
    
    
function addTime ($plid$lap$split$pos$time)
    {
        
$entry = array
        (
            
'plid' => $plid,
            
'lap' => $lap,
            
'split' => $split,
            
'pos' => $pos,
            
'time' => $time
        
);
        
        
array_push($this->timing$entry);
    }
    
    function 
getGap ($a$b$lap$split)
    {
        
$plidACurTime $this->getTime($a$lap$split);
        
$plidBCurTime $this->getTime($b$lap$split);
        
$gap $plidACurTime $plidBCurTime;
        
        return 
$gap;
    }
    
    function 
getNumSplitsRst ($rst)
    {
        
$splits 0;
        
        for (
$i 3$i 0$i--)
        {
            if (
$rst->{"Split$i"} && $rst->{"Split$i"} != 65535)
            {
                
$splits $i;
                break;
            }
        }
        
        return 
$splits;
    }
    
    function 
getPlidAhead ($pos$lap$split)
    {
        
$pos--;
        
$plid null;
        
        foreach (
$this->timing as $entry)
        {
            if (
$entry['pos'] == $pos && $entry['lap'] == $lap && $entry['split'] == $split) { $plid $entry['plid']; }
        }
        
        return 
$plid;
    }
    
    function 
getTime ($plid$lap$split)
    {
        
$time 0;
        
        foreach (
$this->timing as $entry)
        {
            if (
$entry['plid'] == $plid && $entry['lap'] == $lap && $entry['split'] == $split) { $time $entry['time']; }
        }
        
        return 
$time;
    }
    
    function 
isLastPlaceByPlid ($plid)
    {
        
$last false;
        
        if (
$this->playerData[$plid]['pos'] >= count($this->playerData)) { $last true; }
        
        return 
$last;
    }
    
    function 
ms2str ($ms$ahead)
    {
        
$retval '';
        
$hour abs($ms / (1000 60 60));
        
        if (
$hour >= 1)    { $retval .= strval(intval($hour)) . ':'; }
        
        
$min = ($hour intval($hour)) * 60;
        
        if (
$hour >= && $min 1)    { $retval .= '00:'; }
        else if (
$min >= 10) { $retval .= strval(intval($min)) . ':'; }
        else if (
$min && $min 10) { $retval .= '0' strval(intval($min)) . ':'; }
        
        
$sec = ($min intval($min)) * 60;
        
$retval .= number_format($sec3);
        
        if (
$ms >= && $ahead 0) { $retval "^1+$retval"; }
        else if (
$ms && $ahead 0) { $retval "^2-$retval"; }
        else if (
$ms >= && $ahead 0) { $retval "^1-$retval"; }
        else if (
$ms && $ahead 0) { $retval "^2+$retval"; }
        
        return 
$retval;
    }
    
    function 
sendGap ($plid$mode$lap$split)
    {
        if (
$split === false) { return; }
        
        if (
$this->splits === 0) { $split $this::SPLIT_LAP; }
        
        
$curGap $this->getGap($this->viewPlid$plid$lap$split);
        
        switch (
$split)
        {
            case 
$this::SPLIT_LAP:
                
$split $this->splits;
                break;
            
            case 
1:
                
$split $this::SPLIT_LAP;
                
$lap--;
                break;
            
            default:
                if (
$this->splits === 0) { $lap--; } 
                else { 
$split--; }
                break;
        }
        
        
$prevGap $this->getGap($this->viewPlid$plid$lap$split);
        
        
$gapDelta $curGap $prevGap;

        if (
$mode == $this::GAP_BEHIND) { $msg '^3Gap delta to car behind: '; }
        else { 
$msg '^3Gap delta to car ahead: '; }
        
        
$timemsg $this->ms2str($gapDelta$mode);
        
$msg .= $timemsg;
        
        
IS_MSL()->Msg($msg)->Send();
    }
}

?>

NotAnIllusion
S3 licensed
Btw, what is the procedure to follow if a submission is updated significantly enough that it may warrant re-approval? Post in the approved thread, re-submit, etc.?
NotAnIllusion
S3 licensed
Played a couple of hours of ATS, and visited all of Californ-i-a.

Issues first:
- The engine braking sound is monumentally terrible. I wondered what a drowning rhino sounds like, now I know.
- Being able to visit the whole of California and Nevada in half a day is a bit meh. It would get old in single player mode, fortunately it seems that multiplayer is mere days away from release.
- Urgently needs more official truck models, especially older, boxier ones.
- Some merge and exit lanes and ramps are still far too short.
- AI vehicles still always block lane changes on highways when indicating.
- Too easy to get stuck in the small circular construction site areas.
- No bluegrass radio station, no hookers at filling stations.

Positives:
- Looks better, coastal roads are cool.
- Cities are better.
- Parking is better, but there could still be a more difficulterer choice.

Other:
- Trailer brake appears to not work the same way as it does in ETS2. In ETS2 it could be used at speed as a brake, but in ATS nothing happens in a similar situation. I guess it's a trailer park brake now.
- Seen lots of whining about fines. Relatively higher than in ETS2, but I haven't gotten a single one I couldn't have prevented by paying attention to what I was doing.
NotAnIllusion
S3 licensed
Analog steer smooth in misc for smoothing the steering. There is no way to fine tune deadzones, all you get is remove deadzones yes/no.
FGED GREDG RDFGDR GSFDG