The online racing simulator
Searching in All forums
(201 results)
Victor
Developer
Quote from farcar :For the record, mod downloads take between virtually instant, and about 3 seconds for me.
In in Sydney with a 50Mbps link.

I seem to be getting pretty low latency to liveforspeed.net as well, which is surprising.

Ping statistics for 172.67.203.131:
Packets: Sent = 10, Received = 10, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 9ms, Maximum = 15ms, Average = 11ms

liveforspeed.net is actually pointing to cloudflare, hence the low ping.
You can try lfs.net instead
Victor
Developer
Ah, yeah I've added those:
"staffPick": boolean // Mod is selected for Staff Pick
"tweakMod": boolean // Mod is categorised as a Tweak Mod

Thanks for the rating float remark Have adjusted my doc.
It can be 0 though, if noone has voted.
Victor
Developer
Quote from sinanju :I was going to test and get some feedback on a new LA1 Layout Square track I made, but it doesn't appear as a track choice on LFS Hosting.

Both layouts I've made for the Layout Squares are showing up in the Layouts Tab.


Ah yes, that's fixed.
Victor
Developer
Ah yes, that's updated. Thanks!
Victor
Developer
Quote from jezeveccz :After buying the credit, I only uploaded a test skin of the vehicle as a test. After deleting it and creating a new one, the skin is not saved on my web page and when I preview it and show the preview, the skin is broken. Both in color and in the way it looks. After leaving the site it disappears completely.

Hi, I'm trying to reproduce this error, but I'm not sure how to. There is one thing in your description that is not clear to me; "the skin is not saved on my web page and when I preview it and show the preview, the skin is broken" but if it's not saved, how can there be a preview?
Maybe you can try the following, in your browser, press F12 to open the dev console. There will be a "Console" tab there. Select that and try to upload the skin again. Are there any messages in that "Console" tab then?

EDIT - I've added some debug messages for me to hopefully find out a bit more what's going on. Though we may have to give it a few attempts to figure this one out. So please try to upload your skin again.
Last edited by Victor, .
Victor
Developer
Oooh sorry, I hate it when sites do that. This was an oversight and I usually write my configs to allow both with and without / .
So that's fixed now.
Victor
Developer
An idea I had when in early development was to create a public mod comments thread for each mod on the forum. All functionality we need is there already - subscribe, notifications, etc.

Then on the mod's details page, I can simply display the same thread with all the same functionality you find here on the forum. It would simply be a forum thread, just displayed on the mod's details page (as well as the forum).
Mod Publication Log
Victor
Developer
You can subscribe to this thread to be informed of newly published (public) Vehicle Mods.

Only new mods will be listed here; not their updates.

You can help with the review process in the Vehicle Mod Reviews forum section.
Last edited by Scawen, .
Victor
Developer
(the reply is maybe a bit too detailed, but hey, now you'll know how it works Smile )

I have built a flood detection / protection mechanism that works in hardware on our switch. When a packet flood is detected, it will start dropping packets that exceed the rate limit, so the game server will never be overwhelmed. BUT, it also then adds all client IP addresses to a whitelist that has no rate limit, ensuring that connected clients can continue to play without any issue. Insim connections are however not included in this whitelist. Maybe I should.

Currently the policer rule is this:

policer gameserver-policer {
if-exceeding {
bandwidth-limit 5m;
burst-size-limit 25k;
}
then discard;
}

This is applied only to incoming traffic, so the 5mbit of incoming traffic is really never reached under normal circumstances.
The burst size is what's triggering the anti-ddos in your case, as probably you're sending a lot of packets to the game server in a very short time span.

As a test, I have raised the burst value to 50k. Please do your thing and let's see if your tests still trigger the protection. I'll be keeping an eye on this.
Victor
Developer
Quote from Drifteris :Some people already mentioned it but i'll say it again. What about paying like a 1 pound for a mod upload/review process (could be more idk). As in licensed mods wouldn't be approved but such slight modifications would be allowed.

No way to play around with such mods online even though they can be fun. I do understand that there are modders working on new mods and so on. I've started myself doing one project but it will take me months to complete. It's a lot of work and i do have a day job as well.

With paid system, mod list wouldn't get cluttered by useless mods. And we have rating system, if rating is bad, remove mod after certain time. Everybody wins.

I paid few times already to increase maximum slots for skins uploads.

A problem arises when money comes into play with mods. One could state that LFS then makes money from mods with externally downloaded 3d models that have certain non-commercial copyright licenses applied (which are many of them out there). E.g. the "CreativeCommons Attribution-NonCommercial (BY-NC)". I know these 1 pound payments are peanuts, but laws are very black and white and we want to remain as legit as possible and also not complicate this system more than it can already be in certain cases. So don't think we should go there at this time.
Victor
Developer
Longer term, yes I'd like to add stats and stuff to the API as well, so we have everything in one place.

And yep for simple stuff like this you don't need curl! Smile
Victor
Developer
Thank you for these tests! So ping wise Tokyo isn't that bad, but it's all ruined by huge packet loss.
I'm going to forward this to the network people at i3d and see if there is anything we / they can do about it.
Victor
Developer
should be fixed, sry about that one - forgot to update a rewrite rule on prod.
Victor
Developer
Aha - even if you only use the client_credentials flow, the lib I use still requires you to enter a redirect-uri. For both of you I've added https://www.lfs.net as a test and it works.
I don't wanna hack this in the lib itself, so I think I have to enforce the redirect uri in the form, even if you don't use it.
Victor
Developer
I can reproduce. Will investigate.
Victor
Developer
Quote from kagurazakayukari :It's mainly because there are so many network traffic just to bypass the GFW to Japan/Singapore/US (not many to EU even with normal traffic) via some kind of tunnel tech so people can access Youtube or other things,this tooks most of bandwidth, plus the total bandwidth is actually limited per each person/device. We only have 6 oversea cables and cables to Japan are less than half, more to Taiwan, South Korea and US, most bandwidth are to Hong Kong of course.

So in the daytime I do have some difficulty on browsing lfs.net because it's so slow. Cross country traffic usually in lowest priorty. This is the reason I'm worrying of cancel dedi usage and it does hard to truely solved.

Right now the traffic is low so my ping of Asian server is 80ms atm. I've check the 0.6V and the low latency server are coming from Russia/Korea 150ms+. There is no Hong Kong or Taiwan server so I'm not sure.

Hi,

Can you try pinging the following IP addresses? I'm curious what the results are for you:

Japan: 103.194.166.91
Hong Kong: 43.239.136.59
Singapore: 213.179.200.59
United Arab Emirates: 185.179.202.59
Russia: 188.122.82.59
West US: 162.244.52.59
Victor
Developer
Quote from gemini 95 :Downloading replays one by one works by clicking on the link.
But when I tick 1 or more replays, select download and press go, this error comes:

The page at https://www.lfs.net/static/replays/packs/replays-341499-1636315112.zip does not exist.

This has been fixed. You'll have to select the replays again from your hosts's web panel. That pasted zip file doesn't exist and will never work.
Victor
Developer
Quote from the_angry_angel :Is it safe to assume the relay will still exist in the new world order? And is there any possibility to default servers into the relay unless private or explicitly disabled?

The only reason I’m asking is that with no dcon this makes the relay a more valuable tool for testing libraries, etc.

Hi TAA! Yes, the relay works also with the new hosts, however there's no full support for the new sizebyte yet. It's coming up.
Victor
Developer
Quote from Bass-Driver :I cannot get the modded carnames to work. Somehow when i convert the characters to Hex, there is always one char that doesn't convert well. I have been looking on the web about converting Strings into bytes and than to Hex and trying several methods, but with no luck.

Hmm what are you trying to do here?

Taking a guess: you would like to get the name of a mod.

InSim only uses the hex vehicle mod identifiers to indicate which car a person is using. That identifier is nothing more than a random string. It's not the actual mod name. The mod name isn't shown anywhere in InSim but it can be looked up via our new API. I've written a quick note about that here: https://www.lfs.net/forum/post/1969337#post1969337
You could cache those ids and names hard because they never change. So once looked up, you can store them locally and never have to look them up again. But, it does require you to add Oauth2 and API lookups to your program.
I'm not sure if in the future InSim will show the actual name of a mod.

But maybe that's not what you meant at all Smile
Victor
Developer
hmm but it's json? No xpath stuff needed.
Anyway, don't let us hijack the insim topic Smile

edit - oh maybe you mean you are now parsing a web page - yeah .. that's not ideal Smile
Victor
Developer
Quote from xspeedasx :Would it be possible to get the "nice" name of the mod car (RB4 GT T5 RESCUE~002 in this case) from server through inSim? Or at least a RET API connection to current mod list?

Yes! I've been working on a new RESTful API to cater for this and other, future functionality.
I'll be writing full documentation for this soon, but I'll write the highlights here. If you are familiar with Oauth2 authentication you should be able to knock something up fairly quickly.

First, register your application at https://www.lfs.net/account/api .
You can then request a Bearer token with your client ID and client secret at id.lfs.net. Quick example:

// Request a Bearer token by using the client_credentials grant type.
// This requires client_id and client_secret.
// One can simply fetch that by POSTing those values. See below for example.

$accessTokenUrl = 'https://id.lfs.net/oauth2/access_token';
$accessTokenPost = [
'grant_type' => 'client_credentials',
'client_id' => 'dfffniwufhnfr823nhr',
'client_secret' => '4n8rrrn3ycnf48ycf8ny4r',
];

$context = stream_context_create([
'http' => [
'method' => 'POST',
'header' => 'Content-Type: application/x-www-form-urlencoded',
'content' => http_build_query($accessTokenPost),
'ignore_errors' => true,
]
]);
$result = file_get_contents($accessTokenUrl, false, $context);
if ($result)
{
$json = json_decode($result);
print_r($json);
}
else
{
var_dump($http_response_header);
var_dump($result);
}

With the obtained Bearer token, you can use our new API at https://api.lfs.net . Quick example:

$bearerToken = 'abcdefetc';
$apiUrl = 'https://api.lfs.net/vehiclemod';
$opts = array('http' =>
array(
'method' => 'GET',
'header' => 'Authorization: Bearer '.$bearerToken,
)
);

$result = file_get_contents(
$apiUrl,
false,
stream_context_create($opts)
);

if ($result)
{
header('Content-Type: application/json');
echo $result;
}
else
{
var_dump($http_response_header);
var_dump($result);
}

That gives you a list of all vehicle mods. The schema of a VehicleModSummary object:

{
"data": {
"id": string // Vehicle Mod identifier. AKA Skin ID, in HEX format
"name": string // Vehicle Mod name
"descriptionShort": string // Short description
"description": string // Description
"userId": int // Uploader user ID
"userName": string // Uploader user Name
"wip": boolean // Work In Progress
"publishedAt": int // Unixtimestamp of publish date
"numDownloads": int // Number of downloads
"curUsage": int // Number of racers using this mod online right now
"rating": float // Rating, from 0 - 5
"numRatings": int // Number of people who rated
"version": int // Vehicle Mod Version
"lastDownloadedAt": int // Unixtimestamp of last download date
"class": int // Vehicle class
"ev": boolean // Electric Vehicle if true
}
}
}

"class":
0: Object
1: Touring car
2: Saloon car
3: Buggy
4: Formula
5: GT
6: Kart
7: Bike
8: Van
9: Truck
10: Formula 1
11: Formula SAE

You can also get more detailed by performing a GET /vehiclemod/{id} which will return:
{
"data": {
"id": string // Vehicle Mod identifier. AKA Skin ID, in HEX format
"name": string // Vehicle Mod name
"descriptionShort": string // Short description
"description": string // Description
"userId": int // Uploader user ID
"userName": string // Uploader user Name
"wip": boolean // Work In Progress
"publishedAt": int // Unixtimestamp of publish date
"numDownloads": int // Number of downloads
"curUsage": int // Number of racers using this mod online right now
"rating": float // Rating, from 0 - 5
"numRatings": int // Number of people who rated
"version": int // Vehicle Mod Version
"lastDownloadedAt": int // Unixtimestamp of last download date
"class": int // Vehicle class
"ev": boolean // Electric Vehicle if true
"vehicle": {
"iceCc": int // ICE cc
"iceNumCylinders": int // ICE number of cylinders
"iceLayout": int // ICE engine layout
"evRedLine": float // EV redline
"drive": int // Drive
"shiftType": int // Shift type
"power": float // Power in kW
"maxPowerRpm": int // Max power at RPM
"torque": float // Torque in Nm
"maxTorqueRpm": int // Max torque at RPM
"mass": float // Total mass of vehicle in kg
"bhp": float // BHP
"powerWeightRatio": float // Power to weight ratio
"bhpTon": float // BHP per ton
"fuelTankSize": float // Fuel tank size. If "ev" = true, its unit is kWh, otherwise litres
}
}
}

"class":
0: Object
1: Touring car
2: Saloon car
3: Buggy
4: Formula
5: GT
6: Kart
7: Bike
8: Van
9: Truck
10: Formula 1
11: Formula SAE

"iceLayout":
0: inline
1: flat
2: V

"drive":
0: None
1: Rear wheel drive
2: Front wheel drive
3: All wheel drive

"shiftType":
0: None
1: H-pattern gearbox
2: Motorbike
3: Sequential
4: Sequential with ignition cut
5: Paddle
6: Electric motor
7: Centrifugal clutch

Hope that gets you going already.
Last edited by Victor, .
Victor
Developer
Hi! Yup, I have to update some other pages too Smile But I'll do that when we're a bit closer to the final release. The official version currently does not include the mods.
Victor
Developer
Yup, to be clear, this is not LFS that has banned you. It's the custom InSim functionality created by the TC people that have set certain rules.
Victor
Developer
Quote from limac92 :BUG Report:
I cannot start server with "/" in name. DCon.exe reads "^s" without any problems. Is it possible to fix it?

Fixed!
Victor
Developer
Quote from pärtan :I now get an "incorrect password" message when trying to select a car from the mod browser / joining servers.
In the server it says something like incorrect mod password.

Please try again
FGED GREDG RDFGDR GSFDG