The online racing simulator
Searching in All forums
(838 results)
mcgas001
S3 licensed
OK, Firstly i'll explain the bugs.
  1. The first bug is a little issue with the InSim packet SMALL_SSG. Basically, As InSim.txt says: You have to give a uVal to SMALL_SSG. In this case, Its the port. If you set the uVal to 0. OutGauge will say its closed. If you set this to anything higher then 0, LFS will say "OutGauge : UDPPort was not specified".
  2. The second bug is a issue with running InSim and OutGauge together. Basically, Setup OutGauge in cfg.txt as required. Then once in LFS, OutGauge data will be sent. If you try to inatilize InSim("/insim PORTNUM"). OutGauge will close instantly, And upon closing LFS. It will also adjust cfg.txt and set OutGauge mode = 0.
The way to reproduce this is as follows...
  1. Get an InSim app. Load LFS. Type "/insim PORTNUM" to match the InSim app. Make the InSim app send a SMALL packet with a SubT = SMALL_SSG. Set the uVal = OutGauge_PORTNUM. Then start the InSim app. If you specified 0 as uVal, LFS will say OutGauge is closed. If its higher LFS will give an error saying you didnt specify a port.
  2. Get an OutGauge app. adjust cfg.txt to the correct settings for your OutGauge app. Start LFS and then goto single player. Join the race. OutGauge data is being received fine. Type into LFS, "/InSim PORTNUM". The instant you do that. OutGauge will stop sending data. = Bug reproduced(Patch Y through to Y16).
I hope that helps. Ive tested the reproduction methods a few times each to the same results.

E: Sorry for not explaining better in the other thread.
Last edited by mcgas001, .
mcgas001
S3 licensed
That isnt a bug with you, Or your LFS. A button has been deleted, I think that looks like CTRA. Did you press SHIFT+I at any point?
Last edited by mcgas001, .
mcgas001
S3 licensed
Great work Scawen, but is there any chance of getting the InSim/OutGauge bug fixed? Pretty please?


BUG(Read edit 3): http://www.lfsforum.net/showthread.php?t=41298
Last edited by mcgas001, .
mcgas001
S3 licensed
Hello, I have made a .Net SDK for this aswell. At the moment this is version 1.0.0(starting version). Ive tested this a little bit and it seems to be ok. The way it works, You must first make an instance of the client.

LTCPubstat.Client Stats = new LTCPubstat.Client();

You must then fill in your ident key. This will be issued by krammeh atm.

Stats.IDKey = "SomeKey"

Once that is done, You must hook up the events the library can fire. Once you have done that, You can start getting some data from LTC system. To do that, You call a method. for example.

GetUserStats("mcgas001");

Then some code will be returned to the event handler. What you do with it from there on is upto you. As Ive said, This is a very basic version. I will update a lot more and add features. Any bugs please let me know. I'll sort them out. Thanks
Last edited by mcgas001, .
mcgas001
S3 licensed
Quote from IcePheonix95 :maybe y?

Could you post them then please, They will help us. Help you.
mcgas001
S3 licensed
Quote from IcePheonix95 :thanks, can u think of any reason that i wouldn't be able to connect with my friend on a non dedicated server?

Do you have any error messages? Like - Messages saying they timed out?
mcgas001
S3 licensed
Quote from tristancliffe :Schools don't need the internet anyway. You are meant to be learning, not 'surfing'.

mcgas001
S3 licensed
Ah, Thank you t_a_a.

Quote from the_angry_angel :What you're probably doing is incrementing the iterator after removing an item. Which if you think about it, won't work if you're at the last entry in the list and you've already removed it.

Turns out, You know me too well . I was not breaking from my loop after I had removed the connection.

Quote from the_angry_angel :Does that make sense?

Does now, Thank you!
C++ Lists
mcgas001
S3 licensed
Hello, I have a little problem with C++. Im trying to make a connections list, I have used the list in namespace std, or "<list>" if you like. Currently, I can add the connection fine. When it comes to removing the connection I have an issue. The issue being, If I use an iterator to go though the connections list(To find the one to remove) C++ will throw a type of exception.

It says "list iterator not incrementable", This is obivous, As my List is a list of structs.


[SIZE=2][COLOR=#0000ff]struct[/COLOR][/SIZE][SIZE=2] Conn[/SIZE]
[SIZE=2]{ [/SIZE]
[SIZE=2][COLOR=#0000ff] char[/COLOR][/SIZE][SIZE=2] username[24];[/SIZE]
[SIZE=2][COLOR=#0000ff] char[/COLOR][/SIZE][SIZE=2] playername[24];[/SIZE]
[SIZE=2] byte UCID;[/SIZE]
[SIZE=2]};[/SIZE]


[SIZE=2]std::list<Conn> Connections;[/SIZE]

That code may be utter crap, but I have to start somewhere. If you know of a way around this, or a fix. Help me please!

Edit: I shall also add, All the tutorials i found on lists. They used int. Basically that CAN be iterated. So they didnt help.
Last edited by mcgas001, .
mcgas001
S3 licensed
Quote from Dygear :Yeah, it's pretty cool that people are learning from it.
I just wish there was a better way of doing it.
How knowns one of you could start the first revolution with InSim around this program.

I'd love to see a killer app come out of this.

Someone should make a sourceforge project out of it. Then it can be constantly updated. Or like DarkTimes said somewhere else, Someone start and lead a new project.
mcgas001
S3 licensed
heh, That reminds me. I need to start learning php. Probley will once I have the basic's of C++ out of the way. And well done vane. Little effort always pays off
mcgas001
S3 licensed
Edit: Sorry if loads of posts came up then, My PC went mad and somehow made about 4 posts. Sorry!
mcgas001
S3 licensed
Quote from JohnPenn :The way the cars feel was and has always been " the business" for me.

I don't want more cars, tracks or DX10 Bling , I want packed servers occupied with drivers who actually give a damn if they hit another driver.

How do you code for that?

AI
mcgas001
S3 licensed
Quote from Dygear :Dude, freaking awesome!

Kinda makes your insim worthless now? Or do you have something planned


Good work btw, Nice app.
mcgas001
S3 licensed
Quote from ATC Quicksilver :I personally think S3 will be the one with all the new content and features, and that S2 is just about building a stable bug free platform for it.

Yea, I have to agree to this, I wouldnt mind a little stuff like this though. Hehe, Dunno how i found that thread.
mcgas001
S3 licensed
Easier then delete, Type in LFS "/clear"
mcgas001
S3 licensed
hmmm... I acutally think im gonna leave this idea. I have far too much other stuff planned atm, Thats pretty complex stuff too. I'll see once i get them done.
mcgas001
S3 licensed
Quote from seinfeld :LFS needs more ppl helping the 3 devs, nothing is getting done in my opinion, just little fixes here and there, but the gfx desperatly needs to become at least DX9 with lighting and shadows (battlefield 2 type scenery(example of the gfx), and so do the sounds, it feels to old now
and plus with GT5 seriously giving all sims a run for their money (i really mean that) they need to keep their fanbase b4 they defeact to other sims

Scawen has kids, Give him a break man..
mcgas001
S3 licensed
Hmm..this sounds like an intresting idea acutally. Although there would be InSim apps client side and server side. Another thing, You would need Async sockets on a system like this, So the server and client can always comunicate. Sounds like a Very intresting project TBH.

E: Tracking the set in memory is another story....
mcgas001
S3 licensed
I acutally was planning on getting the width of the pitlane and then the width of the line against the opisit side of the pit line.

Wall........Pit wall....Track.....Far wall
|_________|______________|


Get the width of the distance from the wall and the pitwall and then check they dont get further. LFS InSim is very limited tbh...
Last edited by mcgas001, . Reason : Forum doesnt allow spaces :\
mcgas001
S3 licensed
Position on the track is all you need, Unless you dont know much about programming.

struct CompCar // Car info in 28 bytes - there is an array of these in the MCI (below)
{
word Node; // current path node
word Lap; // current lap
byte PLID; // player's unique id
byte Position; // current race position : 0 = unknown, 1 = leader, etc...
byte Info; // flags and other info - see below
byte Sp3;
[SIZE=3][B]int X; // X map (65536 = 1 metre)[/B][/SIZE]
[B][SIZE=3]int Y; // Y map (65536 = 1 metre)[/SIZE][/B]
[B][SIZE=3]int Z; // Z alt (65536 = 1 metre)[/SIZE][/B]
word Speed; // speed (32768 = 100 m/s)
word Direction; // direction of car's motion : 0 = world y direction, 32768 = 180 deg
word Heading; // direction of forward axis : 0 = world y direction, 32768 = 180 deg
short AngVel; // signed, rate of change of heading : (16384 = 360 deg/s)
};

If you use the X,Y,Z, You can get there position anywhere on the track

E: I have just thought of a very easy and effective way to do this, And i shall.
Last edited by mcgas001, .
mcgas001
S3 licensed
A computer database is a structured collection of records or data that is stored in a computer system. A database relies upon software to organize the storage of data. In other words, the software models the database structure in what are known as database models (or data models). The model in most common use today is the relational model. Other models such as the hierarchical model and the network model use a more explicit representation of relationships (see below for explanation of the various database models).
Database management systems are usually categorized according to the database model that they support. The data model tends to determine the query languages that are available to access the database. A great deal of the internal engineering of a DBMS, however, is independent of the data model, and is concerned with managing factors such as performance, concurrency, integrity, and recovery from hardware failures. In these areas there are large differences between products


Understand now?
mcgas001
S3 licensed
Someone might, but not in the main section of this forum.


What chat logs do you mean anyway?
mcgas001
S3 licensed
Nope, not packet. Nor is there anything in any packet, but it can be done with the MCI packet and a little maths.
mcgas001
S3 licensed
The webpage in effect doesnt, The example DarkTimes posted. All that does is sends a request to a webpage with a value "status=online". When writing a PHP page you can(on page load or whatever) grab that value "status" and then either save it in a database, or basically what the hell you want with it. Cant be THAT hard to understand surly?
FGED GREDG RDFGDR GSFDG