(it says "Signup temporarily closed" and you can still click to see the signed up racers)
The option is activated on "Edit season" page as seen in the screenshot.
I've realised duplicate number detection is a bit complicated as it needs to retrieve quite a bit of info and search through it and present error messages to the user, preventing them submitting their updates. It's more complicated than you might expect because of the fully customisable entry fields. I might try something simpler like highlighting duplicate numbers in red, just when the page is displayed. Something to make it easier for admins without doing the full job. It might even be better that way, in case a new user selected a number that is really reserved for someone else like last year's winner, etc.
People are free to suggest what they want and I will choose what I do and how to manage my time.
If other people will be deciding what I do I might as well go and get a job as a programmer and earn 5 times the salary.
I'd be grateful if community members wouldn't try to be self appointed LFS project managers.
I did one afternoon's work and a morning fixing it, on something that people have been waiting for, for longer than people have been waiting for tyre physics. This had no bearing at all on the completion of the tyre physics. Please avoid making up rubbish and allow people to make sensible suggestions if they wish to.
But before once again rejecting the mod that was designed to allow some amount of fun, in this case I was able to spend a few hours doing something that allows a huge amount of possibilities. Then rejecting the mod, I'm not just being the nasty developer again.
I believe you are wrong about the calendar and league stuff. A lot of people were interested, especially in the calendar and it lead directly to the league stuff.
After discovering all the bugs and unfinished work in the league stuff, which I encountered while looking at the calendar which was so ugly before, it was near impossible for me to leave the league pages in that state. Victor had basically started a few things there but they were not finished and there were bugs, although basically he has written a good system. Unfortunately for us, he didn't take the time to work through the issues before he got fed up working on LFS. So I'm still left picking up the pieces when I find them.
It's actually a good thing, that I don't like leaving rubbish unfinished code lying around. That's how I work and I believe it leads to good things.
It's pointless to be worried about me delaying some extremely difficult head scratching work that I have been working on this week, to do something that the programmers here can do some super things with.
The tyre stuff is so extremely difficult, requiring a lot of experimentation and even disturbed sleep in the night, trying to think of the next way to attempt to fix the issue I'm trying to deal with. It's not the kind of thing I can just sit there and do it. It required pushes and recovery. I don't really expect people to understand. But after a strong push on Monday to Wednesday it is good for me mentally do to do some rapid coding that can increase the possibilities of LFS. It was 'one day' but there are always a few things to fix. Again, I believe that is a good thing. If I actually knew how long anything would take, I wouldn't even start it.
So I hope some people are very happy now that I have taken the time to explain why I make decisions. It would actually save me time if I could be allowed to do my job without having to explain every step I take. Maybe just watch and see why I do things, then you wouldn't be so confused.
I can easily copy that over to round signups and the signup administration page. I'll also handle team skin (if a 'Skin' field is found in Team details instead of player details, which would be a good idea if all team members are sharing a car).
EDIT: Just fixed it, now it does a download with the correct filename, instead of just presenting an image with the wrong name. If there's a better way to do the http download, do let me know. This is done with a php file specific to this task and it can set whatever http headers are required.
EDIT2: Changed to view the skin in the browser but now with the correct filename in case if you decide to save it.
Here are some zips with 2D top down views of updated South City and Kyoto Ring in 3072x3072 png.
EDIT: for comparison I've also generated Westhill in the same format.
Note: some of the newly filled in areas of South City are not actually driveable. There are so many new driveable areas but to get the job finished there has to be some scenery which is not updated to full detail level.
I don't want to get involved in a conversation but I'll say a few things then I'll unsubscribe from the thread.
I think Eric knows what I have been going through this year and probably didn't want to bother me with a progress report. And on the other hand he took on a pretty monumental task and so maybe he wanted it near complete before showing anything. I don't know really, I have not tried to discuss a progress report with him.
He did even more finishing of South City and has done repairs and updates on all the other tracks too. There's a curious thing about finishing things, as anyone knows who takes on big projects. The 'last few things' take a lot longer than expected.
But the biggest task he has been on for a long time, is Kyoto. Not only has the track had a lot of work done, but also the surrounding areas, it has had a treatment that could remind you of Westhill. I think he saw the potential and went for it. I'm sure you will be very happy to see a progress report about it when the time comes.
I just want to make it clear, I didn't start this year saying, "OK, now I will spend the first 7 months of the year doing web stuff that is out of my comfort zone". I didn't know at the start of the year that Victor would be more involved with his other job and gradually become more reluctant to work on Live for Speed.
The reality is I encountered a barrage of emergency situations (and growing problems) which needed attention. To list a few:
1) Mod hacks that were destroying the online experience
2) Mod submission spam that was overwhelming the reviewers
3) Bugs in mods system e.g. archives of deleted mods never being removed
4) Apparent leak of passwords that LFS users had given to a pirate website years ago
5) Bugs in hosting system causing crashes, slowdowns, etc.
6) DDoS attacks on web server
7) DDoS attacks on game servers
This is not a complete list, it's just off the top of my head. Each of these things took days or weeks to resolve, but at the start of each task I couldn't really delegate the task to community members. I just had to look into the issues and figure out what is going wrong, although the relevant systems were not written my me, and at the start of this year I really had no idea how it all worked. After figuring out the issue, either fix it (sometimes simple) or implement new systems as required (not usually simple).
I'm just explaining how one task after another has come my way, preventing me from doing whatever was planned, and this has sometimes been very frustrating, but it's not something that could be delegated to community members.
This new patch is intended to be a stable release. With all the fixes done, I hope that our systems may be stable for a while. This should let me focus on the tyre physics, to complete it to a good condition so it can possibly be released, along with some remaining graphical tasks. I can't give a time frame for this, as so far this year I've had almost no time to look into it. It seems like now I'm where I thought I would be at the start of January.
At least with all the delays on my side, Eric has had more time to do extra good work and keep up the detail. I have also learned a whole lot about PHP and SQL and understand how our web systems work. For example I was able to do this whole 0.7F update release alone without Victor's help.
As some of you may know, I've been looking around in the hosting system a lot recently and have done some fixes and updates that were necessary as some things were going wrong. It's a big system that Victor created but as he has a separate full time job, he prefers to be less involved with Live for Speed these days. He's still there to help but a lot of the website and hosting maintenance must now be done by me.
One thing I noticed is that the host log files just keep on growing endlessly but I don't think this is a good idea. For example, the biggest one is 15 GB in size which I think is just too big for a file that no-one ever looks at. Six other hosts also have a log file over 1 GB.
This is not an urgent problem but I think it should be fixed before too long. I'm wondering how it should really be done.
A few questions I am wondering about.
Do you even have access to these log files? I know you can see a few pages in the 'Virtual console' window - is that it?
What should you really be able to see, or what would you like to see?
I'm wondering if there could be some practical way of preventing the endless growth but provide what is needed. For example, maybe you only really need a few days' worth of log to be visible?
Just brainstorming now, but how about if each day a new log would be started, and only keep the logs from a few days? Maybe there's a normal way to do this kind of thing, I don't know so that's why I'm asking. Just try to keep it simple and practical please.
Well for several weeks now nearly all development has ceased on my side as some strange people are doing daily attacks on our servers, for unknown reasons.
I mean, we are just trying to provide some entertainment for the people of the world. And although we are one of the world's smallest game developers, these peculiar individuals derive pleasure from bringing down our game servers.
One of the updates to make the servers more robust was to close open ports. One of those open ports on each server was the one listening for ping requests. As such it was a target for attacks, so the servers are now more resilient without leaving that port open.
Anyway, regardless, the attackers have found new ways to attack so everything is pretty pointless. But now you know the reason why.
The whole year I have been dealing with hacks, cracks and attacks. It's pretty joyless and not the reason I do this job. It would be great if the attackers could find something else to do, and I might get a chance to work on developing Live for Speed, for the benefit of all the world's people.
1) DDoS was common before we did the hosting, so developing a new solution for self-hosting would not miraculously solve DDoS issues.
2) It's not just about developers earning a bit less money due to piracy. I don't think you understand the severity, when an illegal master server was able to replicate our services (allegedly 'free' although that wasn't quite true) we didn't earn enough money to live on. This isn't about asking for sympathy, it's a simple statement of fact that if you can't earn enough to pay the bills, you have to get another job.
There are still more things to try, of course I don't know if they'll do much good. The trouble with DDoS these days, for everyone, not just LFS developers, is that every time you increase your defences, the attackers just come back with a bigger attack.
We're on the same side here, I'm working long days on this.
This time, I will answer you, but in future I will ignore any posts that have my name in it. I am not the server guy and I have work to do, that I can never do this year, because the whole year I am dealing with website and server troubles, that were never my job.
Information:
There was a DDoS attack this morning, between around 10:10 and 10:20 UTC. It was ongoing while you wrote your post above.
I can see no problems with the server last night, from looking at our graphs.
Adam, there is a problem with your post. It is no information to me, to say that connection problems started and there was a crash.
You need to describe, step by step, what symptoms you experienced. Don't try to theorise what the problem is. There are attacks and there have been server problems. Just describe what happens and let one of us try to figure out what is actually going wrong.
If you can describe what symptoms you experienced, and what UTC time that occurred then we can try to relate your experience with what we see on our activity graphs.
Hi, sorry it has taken so long to get back to you.
This system was written by Victor but he has been very busy at his full time job so I have to take over some of the maintenance he would have done in the past. I'm learning more about the website but there's a lot to take in and I don't know how everything works.
I found the old folder of your host on the Netherlands server. I think that shouldn't really remain when you move your host, so I have deleted it (leaving the one in USA that is still running). Please could you try moving it to the Netherlands again and see if it now works?
Now imagine going and asking that person to stop that job and work full time doing something that you want them to do for no money at all.
Will they just say "OK, that's fine, I don't really need money anyway" ?
Seriously Joe, if you can't start to spend 5 seconds using your brain before writing forum posts, we will have to give you a long ban. You are going around writing rubbish far too much and it is becoming a distraction.
You are welcome to use the button to report the post if someone makes an offensive comment. Do you think I read every post in minute detail? Maybe, I am very busy so I have to read over things quite quickly, even if I am following a thread, and might not have time to analyse every word.
On the other hand, I suppose if someone came to the forum every few days and wrote repeated posts about how bad the people of a certain nation are, it would get noticed. Especially if this went on for many years.
The person we are now talking about has been extremely negative, toxic and unpleasant for a very long time. I don't know why someone like that keeps coming back. I'd be happy if he stayed away for good. But something tells me to always be very tolerant and give tiny short bans even when long ones seem deserved.
It's pretty hard doing this job when under attack so often. Also, I could do something else. I do this job for the community members. So it's actually quite upsetting to hear constant anger from bitter members who really have no idea what they are talking about or what is involved.
You submitted a street car (because of course, there aren't enough bimmers and bimmys and bavarias on the system already). Then from what I can see you changed it to a racing car, then later back to a street car, and then later back to a racing car.
Maybe if you were paying a monthly subscription for mod usage, we could hire a team of people whose sole job is to manage the mods system. But we are running a system that is free to use and it is supported by a few volunteers who are trying to make it good for everyone.
We don't have the manpower to constantly monitor your tricks and buy ever more servers to keep hundreds of versions of mods on.
Mods saved our business from total collapse, but now it's becoming a massive drain on my development time. I've spent nearly the whole of January dealing with mods (not to mention most of 2021 and 2023 as well).
No problem, I was just interested, as I saw the frame rate hits, when a lot of cars were on screen, and also seemingly in panning shots with a few cars on screen.
I wondered if there were any problems in LFS so I built a profiler version to see what's up and I spotted a lot of CPU usage in "Draw driver" and "Draw meshes" (that includes subobjects) and "Draw wheels" (includes spoke objects) and also similar issues in the alpha pass. This particular CPU usage is not related in any way to number of polygons. Thousands of polygons may be drawn in a single draw call, which is also the same for one single triangle. LFS does a good job of combining all triangles of a single material, into a single draw call. No matter how many cutouts you use, they will still be combined together if they are using a single material and in a single object.
This heavy CPU usage which is (I think, roughly) double that of an XR turbo led me to look in the model a bit, specially near subobjects and spoke objects. That's where I noticed this use of multiple textures. Also the concealed driver thing which is just one switch to fix.
When the cars are initially generated (when leaving pits) and when there is a collision, this is when the number of triangles (actually vertices) is a problem. All these vertices and triangles must be created on the CPU and then sent to the graphics card. When damage occurs, the model must be deformed and it is all sent to the graphics card again.
But for a modern graphics card, this number of vertices isn't really a problem regarding drawing the car each frame (when there is no collision). The number of materials is more of a problem, and also subobjects that are not "attachments". Each movable subobject requires a new matrix to be sent to the graphics card and of course a whole batch of draw calls for its materials (which cannot be combined with the main object's materials).
Taking the example of the steering wheel, if those textures are all used only in the steering wheel, then it is a perfect case to make a special texture for that steering wheel. I imagine those 11 (or was it 12) 128x128 textures I talked about, going onto a new texture of 512x512 and you use the 16 squares, leaving a few spare.
It is not a problem to use the same texture in two different subobjects if that is convenient, or for subobjects to share a texture with the main object. But it brings no specific benefit, other than maybe reducing the total size of textures in the whole model. That is more about what texture cutouts you can fit on what pages.
For example, I wouldn't suggest using really massive textures to try to share everything in the whole model. It can be good to use smaller textures, if that is convenient for one (or a few) subobjects. So... don't worry about different subobjects sharing a texture, that is OK, but don't go mad and try to combine everything, which would require extra big textures for no benefit.
However, "attachment" subobjects are a different case, as they don't move, they are combined with the main object. So it's a good idea to share textures with the main object (and/or other attachments) in that case.
I want to help with the materials display in the cutout editor (as described, there is a bug). I am interested to try and add a CPU display in the vehicle editor so you can see the results of your improvements.
EDIT: added image showing materials in my fixed version, that will be more helpful to see the results after you share textures.
EDIT2: added another image showing the combined list of materials, when attachments are combined with main object.
I think you mean: multiple, selectable wheel styles in a single vehicle.
It's something I'd like to do eventually but it's a big job, cannot be done in a compatible version.
As I keep saying, I'm working on the development version now, not mods (which I've been working on for two years already).
EDIT: OK, apparently I'm losing track of time. Here's a rough history.
We have been working on the new graphics and physics versions for years.
2021 I spent most of the year on mods which we released that year.
2022 was a bit more on mods then back to graphics, multithreading, etc.
2023 I seemed to get pulled back onto mods for most of the year.
The end of 2023 was an unforgettable extreme push on mods so it would be much appreciated if people wouldn't keep asking for big changes to the mods system right now. I can do a few updates here and there to the editor. But my main focus is the new development version.
Well you can discuss amongst yourselves, but I am only one programmer and I think the priority is completing the new graphics and physics version. Limits were discussed and set long ago. Unfortunately, hackers learned to get around the limits. I've spent the last two years working on improvements for mods, delaying the big release that everyone wants. I worked right up to the limit of my health before the Christmas holidays, to allow me to get back to the main task.
Now I have learned half the mod creators use a hack to bypass the limits, while other people complain about glitches when people leave the pits. My job is to make sure that doesn't happen, then get back to what I am supposed to be working on. The game is supposed to run smoothly and that is the most important thing.
I'm not going to drop what I am working on to continue working on more updates for mods. I hope you understand.
I prefer it if you don't tell me how to do my job. Nothing here is meaningless and I update because it is extremely important to check these changes thoroughly in the last few days before a massive update.
If you don't want to be involved in testing, don't download the test patch in the first place.
And when were you forced to update? Your whole post is rubbish.
I understand why you chose to use unrealistic settings before, even if I don't agree with that approach.
To make a good mod in the proper way, the thing is to get as accurate values and settings as possible. If there are physical problems it's really my job to sort that out by improving the physics model. I do understand slight tweaks to mods to deal with imperfect physics.
But the mod still has massive downforce now, even after the steering model changes. Speaking as a mod user (not as a developer) I'd like to explain that makes me simply not want to use the mod at all. No bike in the world has F1-style downforce, as it's impossible. In my opinion the undertray should be deleted, the downforce set to zero and then work on the bike's geometry, mass, weight distribution, suspension, drag, etc. to make it as near to a real 600 as possible, then it will be a fun mod to use.
It would be very hard and far beyond the scope of this test patch to make the AI generation work in a separate thread so it doesn't hang between updates while it iterates the path improvements. You should generate offline (and outside of VR) any AI paths you want to use. Maybe you could use a separate LFS instance.
About the speed of AI, it's not your fault but I'm getting a bit tired of explaining so many times, the AI's driving ability (handling of one car, nothing to do with the overtaking) is all specific to the tyre model in question and has already been improved to some extent in the development version, but I will not be working on that for the public version, as it would be pure wasted time.
Nothing about their speed has got worse in the test patches, as I haven't worked on that. But you could verify by starting an earlier exe, run a single AI and see if the lap times are the same. That's your job as a tester really. I assert that their lone car driving ability is not changed. You are welcome to prove me wrong.
I see, that is a very clever and useful feature. It looks like Daniel did a great job with it. I wish a version of Lazy was available, without the "hack" stuff (that needed to be updated with each version version of LFS) and only the InSim features (that usually remain compatible when LFS updates).
To track the lap and store it in a new data format, do the comparisons and save and load that data at the right times, it's a pretty complicated task. It's good that I have looked at it, I should have another read of Mandula's very good post. It needs time to sink in though.
I can see how such a feature would be good (and most useful) to support natively, but also could make the point that this is the reason for InSim, so other programmers can do this stuff so I can focus on the core.
I've been thinking for a few minutes about this, for example what would happen if I simply enabled a background texture for s_clock_formula / s_clock_f1 / s_clock_f3 / s_clock_fbm (or some of them).
The thing is these clock textures are very hard coded, without adjustment. So I think a proper job for these clocks would be to provide adjustment sliders and many other forms of customisation. And that is what I really can't do at this time.
But... in theory it could be easy to enable a background texture for at least some of them. I'm not sure how much use you could make of it, with these current non-adjustable versions of the textures.
But maybe it's more useful than I think. Do let me know, please.
LFS should be able to do a good job of assigning groups when loading a obj. I know because I wrote a big function to do it!
It depends on the vertices not being fused. From a quick glance in the code I can't get my head round it entirely, but is it that normals have to be exported? So that the vertices in the different smoothing groups refer to different normals?
LFS doesn't use smoothing groups as defined in the obj specification, so there is no point saving them in the obj.
I think it should be possible to do the export in such a way that LFS gets all the smoothing groups right.
This is not to say that turbofan's suggested function couldn't be useful, but hopefully is not necessary in this case if the export is done in the right way that LFS can work out the groups automatically. Certainly it should work fine for Blender exports, but if it's not possible in exports from other software I'd like to know about it.
EDIT: I thought there was something in the LFS manual about it but I can't see it in a quick search. Anyway here's a few tips for Blender. https://youtu.be/Rf6HK_niFjo?t=66