The online racing simulator
Searching in All forums
(182 results)
Hollywood
S3 licensed
Yes, definetly player name in addition to the unique username. How about also squad or team name. Additionally it'd be nice to show squad/team results too as I know LOTA has squad battles in each of its series plus other series have only team battles (i.e. IGTC, MoE, etc.).

Quote from Victor :It's been a bit quiet from my end on this topic, but i have been on it
I'm at the point where i've got a nice news submission & edit facility and the only real missing functionality is the results bit.
About that I was wondering if the following field types would be sufficient or if there would be others :

Position
Username
Race time
Gap
Laps
Penalties (can drivers get multiple penalties in your races?)
Points

Anything else? Maybe LFS Playername?

Hollywood
S3 licensed
Yes!! Although I'd say only really news and maybe race results and standings.

Otherwise I think people are wanting LFS to do things they should be doing.

Quote from Brilwing :I don't understand why a registration is needed. Only races results and standings etc. should be submitted to the centralized league system. With the lfsworld name it is possible to add an overview that displays in which league the driver has raced.

Hollywood
S3 licensed
Avoid C++. Its the worst thing in the world to try and learn OOP programming on because its pretty much the lowest level high level language.

And you can do procedural programming in almost any language, C#, Java, Python, PHP, JavaScript, VBScript, etc.

Learning something about what a function is, what a procedure (or method) is, and when to use them are good starting points. Learning data structures (lists, linked lists, stacks, queues, trees, etc.) are another good exercise and is important when it comes down to manipulating data.

But one of the reasons that OOP came into being is almost any program boils down into data that has methods that act on that data. Classes are simply data with methods that act on them. There is not a huge jump between procedural to OOP (unlike say going from traditional OOP to doing IOC based OOP, etc). In fact the paradigms are usually taught in many data structure classes.

The real problem is not whether OOP is easy/hard, whether it should be learned before or after procedural, but rather that people do NOT how to design and structure programs. Or what data structures to use for different situations, or even what the hell a data structure is. And it can be quite apparent when looking at code.

What you should really not do is start with an RAD language and attempt to make programs that way. You won't learn anything of merit.

As an example, I recently ran into a client who was annoyed at their development partners (to put it mildly) and basically pulled the plug on them. We ended up looking at the codebase to determine what it'd be to complete changes and rebuild. What I saw shocked me. The codebase was obviously done by amateurs masquerading as professional developers. The did exactly what I described above; took a RAD language (this case VB.NET with an ASP.NET project) and slapped together things. Its quite apparent that they had no understanding of the fundamentals of programming (even procedural).

The "Learn X in 21 Days" is a complete load of crock.

If you are stuck on "C" then use something simplier like Pascal and learn the fundamentals, and then switch to C and become familiar with its syntax and issues (i.e. no procedures in C). Then move onto C++ and learning OOP.

Quote from iam220 :Don't do this. C#, Java, Python are all Object Oriented. While there is less to worry about when you're actually coding, it's a lot more complex for a absolute beginner that has no understanding of the Object Oriented design.

Start with Pascal, it's a procedural language and it was designed to be a learning language. Once you gain some proficiency in Pascal go ahead and move onto C++.

There may be no right choices, but there are bad choices. There is a reason that most advanced languages (C++ being one) are offered as higher level courses at most colleges (at least the good ones). They are not good introductory level languages. That being said any of the modern high level languages in general should suffice although try and avoid the niche ones or the 'flavor of the day' languages.

I would also say learning some assembly (or at least an Intermediate Language such as those in .NET or Java) would be benefitial too. It helps you understand, at a very low level, what the computer is really trying to accomplish. Its actually quite fun.

Quote :
There is no correct language to choose as a first language, it's a choice that the person who is learning has to make themselves. As a general rule I'd say to learn something modern, that's actively being developed, has a large community, and is well suited to making the sorts of programs you are interested in.

Only 100ks of code? Lightweight. But yes, otherwise I would agree fully. Far cry from doing things in vi/emacs. Or even some of the original GUI compilers.

Quote :
But maybe my perspective is just different on this. I'm working on a web based business application with several 100k lines of code, uncountably many business rules and on average five other programmers who work on the same code. I'd rather have everything nicely grouped together than the intellisense exploding with tons of entries because someone needed a math function in one line of code of a business object that is a few thousand lines big. Having all the BO's functions in there is bad enough (though partial classes do help).

Hollywood
S3 licensed
Well there is LOTA ( http://lfs-lota.net )... you're on the wrong side of the pond most likely for most of the Thurs. night stuff, but w do have the XRT Stock Car Cup on Sundays starting up soon and is a bit more accessible timewise those across the pond. Here's the info on it...
-------------------------

The XRT Stock Car Cup is an XRT-only stock-car type racing series consisting of 4 oval events and 4 road course events. Series features include the traditional stock car racing features such as Safety Car regulated starts/restarts, Safety Car periods, the "Lucky Dog" rule for lapped cars, and required pit stops. Three events on the Kyoto Ring Oval including the special knock-out formated All-Star Challenge, two oval events on custom courses at the AutoCross Arena, and three road course events highlight the eight event schedule. Colorful skins, exciting drafting battles, and close, hard racing make the XRT Stock Car Cup the definitive stock car racing series in LFS.

The typical race day schedule is this:
  • 7:45 PM UTC (2:45 pm EST) - Drivers are encouraged to join and prepare. Officials set race conditions.
  • 8:00 PM UTC (3:00 pm EST) - Qualifying starts
  • 8:30 PM UTC (3:30 pm EST) - Heats/Feature starts (earliest time)
Good luck to all the XRT Stock Car Cup drivers!

-------------------------

Quote from bigukg :Is there a lack of leagues at the moment? I've been trying to find one I can enter all day but no luck.....

Any beginner leagues going on at the moment or what?

Hollywood
S3 licensed
Quote :
Do you have self written software to run your league website or do you use a downloaded package to create websites with?

We use a hacked up forum but are moving to a custom website with an attached forum (SMF gah).

Quote :
Do you have the knowledge to create any news submission automation?

Of course.

Quote from Michael Radmer :
A: Fill-out-format and .csv (excel) uploads. Maybe an option to bring up race-announcers in jpg. or different fileformats.

.CSV format?! With text data? Mmms.... better not use any commas.

Quote from Michael Radmer :
A: The RSS-Option is quite the best option, but we would like to edit it sometimes to bring it more visible. But for that fact it is ok, so we can easily share our news with your site.

With RSS you could do put whatever you wanted in it. Now you might have to make changes to your software package to accomplish it or setup specific forum, news area, etc. but I would tend to think the less work on Victor to setup the better for automation.
Hollywood
S3 licensed
Seriously, C++ isn't a great place to learn to program (especially just for fun or hobby). Check out the programmers forum.. there is quite a bit of discussion threads on how to learn to program.

Try C#, Java, Python, etc. Plenty of info on those, they are easier to chew than C++, have available IDEs, etc, etc.

Quote from swisscosmo :hey guys just searched the forums to see if there is anything and i didn't see anything. So i'm just wondeirng what Code is LFS programmed on? Is it programmed on C++? I'm thinks its programed on C++ but i just want to make sure cause i want to learn how to program a bit just for fun.

Hollywood
S3 licensed
All hail DirectX.

Quote from MonkOnHotTinRoof :Probably C and some ugly COM interfaces.

Hollywood
S3 licensed
Cool... I like it!

Too bad it brings back bad memories of Delphi and COM.
Comments on Psyinsim Tutorial...
Hollywood
S3 licensed
I didn't want to pollute an otherwise excellent threads with some comments, so I put them out separately.

That's the point of APIs. Just like Pyinsim, it is to gloss over the minute details and allow you to do things without need to know those things.

The beauty of folks like sdether is that they donated such APIs in open source format. So you can go and study their code, see how it works, learn not only InSim but in a lot of cases some new tricks and even how things differ between C#, Java, Python, etc. when attempting to do the same things.

Take for example (I use sdether's because I use it). I original built one of the first C# APIs when Scawen first rolled out InSim (see those discussions concerning new packets way back when). I did it one way (i.e. avoiding events) and sdether did it another way (using events), but he did have a nice trick of marshalling the structures for the InSim packets. I hadn't originally thought of that and was a nice trick to have learned by reviewing the codebase.

No sense doing the exact same thing over again and again for each app. And there is a fine line. Do you have the time to invest? Do you need to learn or want to learn? Or do you just want to write your app?

But on the flip side, if you want to truly learn, yes you need to do it yourself from scratch. With InSim that means learning something about programming network connections (dealing with sockets, ports, packets, etc.) and translating the InSim packets from/to the raw bytes of the structures.

Quote :
Of course, there are the big API's, such as LFS_External, and while these are great, they tend to gloss over a lot of the details, and try to shield you from the way that InSim actually works. Although you can make cool apps with those tools, you can't really learn InSim from them. For someone like me, who likes to get into the meat of something and really figure it all out, this isn't much use.

Thats always a valuable idea. I do this constantly... PHP apps, ASP.NET MVC based apps, Linq based apps, various Java based stuff. If new (or aspiring programmers) take one thing to heart in the well written tutorial, it is to strike out on your own and experiment. Even if you don't complete an full InSim API (or whatever else you research, i.e graphics engines, networking libraries, etc.) you at least learn something whether it be new techniques, APIs, etc.

Quote :
So a little while ago I created a small InSim module for Python. The idea behind this was, first of all, to explore Python as a language, for my own interest

Point blank, no. There are several misleading comments in this block that really set my teeth on edge.

The only thing closer to the underlying architecture of InSim would be a C or C++ library.

Python is NOT far better suited to writing InSim apps. It is only one of a multitude different ways of doing things. Is it better than C# or Java (which are based on the C paradigm)? Not in general no. Is it for someone who is proficient with Python? Sure. Can Python be easier to learn? Maybe, but in a lot of ways its no different than .NET or Java programming either (same imports, same try/catch/fetch, same define functionality [i.e. methods, functions, procedures]).

The fact that you sullied an otherwise good article with opinions/comments such as these is really quite unfortunate.

Quote :
But also to create an InSim API that was much closer to the underlying architecture. I wanted something that would be easy to use, but that wouldn't be an excuse for not understanding how it all really worked. Pyinsim was intended to be a vehicle to help you learn how InSim really operates. Now, whether I was successful or not, I have no idea, but I still think Pyinsim is a great little tool, and that Python is far better suited to writing InSim apps than C# or Java. You may disagree, but I stand firm.

Hollywood
S3 licensed
Very nicely put together article; I reserve comments elsewhere though.
Hollywood
S3 licensed
Being able to either upload news via a REST url or have you read an RSS feed sounds like the best ideas to me.

I would also agree with Brilwing, that really a centralized site should concentrate on overall items (top level news) rather than more in-depth stuff.

If we take a look at LOTA (and CTRA I suppose is similiar in a way too) we have a variety of different series going on within the context of the LOTA web presense (i.e. Formula GP/GT Challenge, not to mention our mini-series, the series formerly known as StormCup, Monday Night Random Combo Cup, etc.). Trying to get present detailed information on everything going on in LOTA in a centralized site could be problematic.

As it stands we generally spit out the most important information into a main news channel which is RSS'd, but things could be modified to send news clips to LFS too.

Actually on this topic what I know us at LOTA would love is for LFS to spit out the race results in some type of XML format. Yes, we know about the stat InSim programs and have our own, but this would really be nice touch to LFS.

Quote from Victor :Thanks for sharing the experience. This is stuff I like to hear.

I'm thinking about just having the results editable manually, but if you provide an MPR, it will parse that to fill in the results automatically. If then afterwards you want to change something, you just edit the results. Should be very doable.

That's too much; especially with regard to points system.

We at LOTA just want verbose stats on the race (i.e. what the spit and lap times and speeds were for each racer, positions at each lap and split, overall time and speed, final position, start position, when people made pit stops and what they did, etc.). As mentioned before we do have this with some InSim apps, but there are some hiccups (like tracking speeds at lap/splits) so not hugely important, but would be a nice touch.

Once people have the stats output from the race (or maybe they are embedded in the replay... but that seems like a more bulky option) they can do whatever they want, generate whatever point scheme they want to use, etc.

There is a fine line between something like this not doing enough (i.e. only reporting start/finish positions or so forth) and too much (i.e. having a point system, scripting, etc).

Quote :
However its long been my hope that the LFS Server would have simple automatic output options, a points system, a script system (Like LFSBuddy or Lapper) and a server admin control panel that would help the server and league admins (Without using insim), after all its us that give users a place to race.

Last edited by Hollywood, .
Hollywood
S3 licensed
Not this B.S. again... be inclusive, not exclusive. Sim racing is about having fun. Not all leagues, series, etc. may require the use of real names. Not all leagues may be drop-dead serious. Give play to all types. Worried about unpronounceable names? Um, yeah, there are tons of real names that are tongue twisters too.

Quote from Mp3 Astra :About Leagues:
Only submit league information where the drivers use their real names.

Hollywood
S3 licensed
Yes,

Do not build as InSim library from scratch, especially if you have no network expertise, rather if you are using C# see the libraries and use sdether's excellent .NET InSim library.

Also you could look at Gai-Lauran(sp?)'s take over of the LFS stats InSim app and see what is going on in there for generating the stats.

But yes, it essentially means tracking the race start packet, saving off the starting positions, and then waiting til you get the race end packets. You can then compute your points or whatever you want to do, and then with LFS buttons write that out to the screen or whatever.

Quote from MadMac :Right now I'm looking for the best way to grab the following information for each driver at race end... Whether he started the race, finished the race, and finishing position. At the moment I think I'm just confusing myself looking between the insim documentation and the various insim libraries I was considering using.Combined with my lack of network coding experience it has me scratching my head a bit.

Any info you (or anyone...) could share on best practices to collect the above mentioned info would be greatly appreciated.

Hollywood
S3 licensed
Not really. I've been around this "game" (not LFS, but the racing sim world, plus others) for way too long. Some people are very generous (i.e. sdsether, etc. Scawen goes into this boat too) and let their hard work be used by others to create cool things with. Others aren't always a generous, and yes sometimes they prefer to work "undisturbed" (I don't disagree... I've got several InSim apps that will see the light of day at some point). However that being said, one too many utilities end up having the original developer fade away (boredom, lack of interest, other things, life, death, etc.) and that application becoming unusable to the community.

Quote from MaKaKaZo :That is debatable. What many people do is release the code to the public after dropping the project in order to let anyone pick it up, but they keep it private while they are developing it actively. I don't see any problem with that. If I were to release any cool mod for LFS I would probably do it this way.

Thats not the point. The point is that if you are making something available to the community for the community's enjoyment, then you should be generous enough to be able to drop it out there. Sure there are a lot of people who just take and use (how many phpnuke were forked off the same codebase?!). But the utilities that are a) done in a more complete and robust fashion and b) provide more features/options are the ones that are generally going to be used by the community.

Personally I am of the opinion that if you are going to be generous then you should force others to be just as generous if they are using your generously open code (i.e. the GPL). Yes, there are lots of ramifications of this, but nonetheless, it helps keeps down the #s of just rip-offs because then the code is visible and people can tell. It also allows people to contribute back and make the original application (once its been released in a stable fashion) more robust, more options, etc.

Thats all concerning APIs and utilities. "Applications" such as say the CTRA server application/utilities or the "Cruise" server applications can be a completely different matter. You are essentially providing a service and you don't really need to release that, but if you end up deciding to stop, making it available to the community to pick up where you left off, etc. would always be a positive. In this case I'd want to personally make sure that someone couldn't "close the door" on worthwhile modifications which means leanings towards GPL license as opposed to MIT, Apache, etc.

Then there are utilities or applications that use exploits. Things like that have surfaced for a long time now (aim-bots in FPS game, the old 'color the track' in NROS, etc). Those things should be just kept closed. Make people spend the time themselves to exploit, etc.

Quote from MaKaKaZo :
As someone said earlier in this thread libraries are a different matter, and I would release any SDK library with a MIT or similar license, but an entire application is something that you get attached to easily and possibly you don't do it for people to reuse it, but to enjoy it as you originally created it.

Sure thats fine, until the next patch of LFS breaks it and you aren't anywhere around to "fix" it, or just don't want to "fix" it. Then effectively the time you spent developing something for other people's enjoyment has been wasted because its no longer a viable application.

Quote :possibly you don't do it for people to reuse it, but to enjoy it as you originally created it

More replay suggestions...
Hollywood
S3 licensed
When clicking on the 'view' icon, you would get a list of the available views and be able to select a view you want rather than toggling through them. Potentially more useful if there end up being more views, and/or custom views, in the future.

When clicking on the 'car' icon, you would get a list of the drivers currently in the race and select the driver you are intested in viewing, rather than having to toggle through them. This would be a nice boon to league/series officials when dealing with 30 drivers or so in a replay.
Hollywood
S3 licensed
Ok, but what about the FXR and FZR?! Those cars look out of place now in comparison to the XRR!!!

Quote :updated interiors in FOX / FO8 / XF and XR (GTR and road) cars

Hollywood
S3 licensed
YUP! The Summer Formula GP Challenge series starts next Thurs. for both the GP (i.e. F08s) and GP2 (F08s with 20% IR). We're holding another practice session tomorrow night.

Quote from chanoman315 :www.lfs-lota.net
League of The Americas

Last edited by Hollywood, .
Hollywood
S3 licensed
With most utilities for games, such as LFS, its usually better that the utilities remain OPEN and the source available so if the original author goes away someone else can pick up the reigns.

Quote from the_angry_angel :Below I've listed the libraries that I can think of as released, who wrote them and under what licence they're distributed as.

I suspect you would be best served by getting a licensing agreement with Scawen, etc.

It'd have to be a heck of a InSim app to want to pay money for it anyways.

Quote :
Would it be possible to write commercial applications based on insim? I mean, even if I write all the code myself, after all I'm using insim, which is a part of LFS, which is licensed by Scavier. Could I make a commercial insim application and make money selling it to server admins without any permisson from LFS developers

Hollywood
S3 licensed
That is not quite true. Lots of people still use C/C++. Yes, most of the "professional" grade engines and APIs (network, physics, sound, graphics, etc.) still done in C/C++. There are plenty of indie level stuff going on with C/C++ and the open source world. In fact, most of the open source APIs (OGRE being one, Torque Network Library another, OpenAL, ODE, etc.) are all done in C/C++. There are some Java and C# (and other languages) wrappers. That is not likely to change any time soon as its its about as close as you are going to get to machine code with a high-level language.

That being said, its really dependent on your game. There are plenty of other choices (C#, Java) that can be used quite comfortably depending on your game choice. I know GarageGames is working on a game engine similar to their high-end Torque product using the XNA framework (it's called TorqueX), and for Java there are several graphics engines (jMonkey) comes to mind. Outside of graphical games, you could use Java (via JEE or even just JSP), PHP, ASP.NET (or hopefully soon the MVC for ASP.NET instead of the brain dead WebForms), to do web style games. Or there is Silverlight or Flash for more interactive "fun" (whatever that may be... I just generally call them "annoying") games.

And speaking of "hacks", heck building mods in some of the high-end FPS games (Unreal, HalfLife, Cyrsis, etc) can be a "fun" way of learning to program in maybe a more "exciting" venue... depends on your perspective of course.

Quote from Dygear :The Pros use C++, some still use C, but thats due to the core of the game starting out in that, in around 1995. Only people just starting to learn how to program, and in fact also, how to hack games (Like Wall Hacks) use C# and I've even seem people learn how to program, from making wall hacks. It's insane how easy it is to do. (I've never done it myself tho . . . No really.)

Hollywood
S3 licensed
Sure, I'm in... however 90 degree look is configurable as an option.
Hollywood
S3 licensed
Ah, yes, had missed that... been a bit too buried in other work that I haven't paid as much attention to XNA as I'd like. I'm sure now on the GarageGames forums there is a huge clammer on when their TorqueX will support the XNA networking.

Quote from GeForz :looks like xna 2.0 has some better networking code

Hollywood
S3 licensed
XNA is the latest MANAGED wrapper to DirectX plus some for the .NET platform.

C++.NET is managed code, so it runs in the same sandbox as any other .NET language once its compiled. The main benefit to managed C++ is port C++ code for easier integration (instead of dealing with interops, etc.) with other managed code. Or you are a hard-core C++ developer who needs to write managed code apps.

Quote from shadow2kx :You can do c++ and c++ .net. One use the framwork, the other don't.

Another good idea is using XNA. It's another microsoft langage oriented toward the game development.

Hollywood
S3 licensed
Again, that is incorrect Gai. C# has actually been used in a few published box games. It is also highly dependent, as I mentioned before, on the *type* of game. High-end, triple-AAA, twitch games, its probably not as good of fit. Indie twitch, role-playing, puzzle, etc. games its just as good if not better and probably more productive. Same goes for Java.

Quote from Gai-Luron :Hello,

I don't say C# it's not good, i say only it's not adequate for graphic game and mcgas001 want to dev game. Garbage collection, it's not the best way to manage memory. I say that maybe because i dev application in code machine and with C i retreive this kind of thinking.

Not about that, its about distributing misunderstanding.

Quote :
I don't want make a war about language and i use or have used more Languages: machine code, C, C++,C#, Java, Pascal,VB,PHP,Perl,Ada, Basic, Informix 4gl. Each language is good if you know the limit of each and you know what do you want to do with.

Hollywood
S3 licensed
You could potentially explore the possibility of writing a log4net appender. Not sure how well it'd work because the appender wouldn't know which textbox, etc. I have an appender for MessageBox.

Probably the best way would be something akin to what LFSLib's author post http://www.claassen.net/geek/b ... net-scrollingtextbox.html

Or potentially this http://www.mail-archive.com/lo ... .apache.org/msg00461.html

Quote from haelje :i did some research, but i was not understanding the kind of configuration of log4net, especially how to redirect the output to a TextBox if somebody can give me a hint, the project i'm writting now is available through public svn : http://svn.raygina.de/haelje
the sources of lfslib are included and i use the project output. any help is very welcome

FGED GREDG RDFGDR GSFDG