The online racing simulator
Searching in All forums
(184 results)
nikka
S2 licensed
Z22 crashed when i shift-f4'ed in fullscreen (vista). Could not reproduce it, only happened once.

Dunno how usefull this is, but here it goes:

Problem signature:
Problem Event Name: APPCRASH
Application Name: LFS.exe
Application Version: 0.0.0.0
Application Timestamp: 4ae1ff46
Fault Module Name: d3d8.dll
Fault Module Version: 6.0.6001.18000
Fault Module Timestamp: 4791a65b
Exception Code: c0000005
Exception Offset: 0004c952
OS Version: 6.0.6002.2.2.0.768.3
Locale ID: 1044
Additional Information 1: 64ea
Additional Information 2: cce9f653dd0f8eec446de52154d2f82d
Additional Information 3: 1c6e
Additional Information 4: cae2d90c7aa840636173874dcd421e37
nikka
S2 licensed
You can have your insim app do a http request to lfsworld to get the list of hosts. You'll find the information there.
nikka
S2 licensed
Quote from Psysim :This may sound like an odd request. I have been driving on BL3 (CarPark) in a contact game. The object of the game was from restart, trying to crash into each other until there is one moving car remaining. The idea of "last man standing" was put into practice on the carpark. We had a rule that no pitting we aloud and that full contact was. I would like to know if there is any way an insim could be designed for this type of event. I am sure it would be hard or impossible to monitor when only one car remains moving. I am also sure its impossible to monitor who hits who and the result of it, im sure I read about it in another post. The current rules are:

1) Full contact permited from restart.
2) No pitting.
3) No restart until only one car remains in motion.
4) Game/Round over when only one car remains in motion.
5) Four wheels touching the ground (rolling excepted) or your out.

It wouldnt be much work to modify the sumo insim app to do exactly what you want.. maybe a couple of nights work.
I'll look into it, but I'm a bit busy these days, so don't hold your breath.
nikka
S2 licensed
Quote from Dygear :InSim.txt Patch Z
struct IS_MCI // Multi Car Info - if more than 8 in race then more than one of these is sent
{
byte Size; // [B]4 + [U]NumP[/U] * 28[/B]
byte Type; // ISP_MCI
byte ReqI; // 0 unless this is a reply to an TINY_MCI request
byte NumC; // number of valid CompCar structs in this packet

CompCar Info[8]; // car info for each player, 1 to 8 of these (NumC)
};

I am guessing that's an error, meant to say NumC. But, with the MCI packets by them selves there is no way to find the amount of players in the race just by using the MCI packet. The only information it will give is the number of CompCar structs in the packet. So you will not know if you still have more coming. (Unless the number is less then eight of course, then that's the last packet, for the sequence.)

You use the CCI_FIRST and CCI_LAST-flags to determine the amount of MCI-packets/CompCar-structs.

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;
int X; // X map (65536 = 1 metre)
int Y; // Y map (65536 = 1 metre)
int Z; // Z alt (65536 = 1 metre)
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)
};

// NOTE 1) Info byte - the bits in this byte have the following meanings :

#define CCI_BLUE 1 // this car is in the way of a driver who is a lap ahead
#define CCI_YELLOW 2 // this car is slow or stopped and in a dangerous place

#define CCI_LAG 32 // this car is lagging (missing or delayed position packets)

[B] #define CCI_FIRST 64 // this is the first compcar in this set of MCI packets
#define CCI_LAST 128 // this is the last compcar in this set of MCI packets[/B]

nikka
S2 licensed
I've seen this problem too in my sumo app. The chart consists of 70-80-90-something buttons, and I used to get disconnected when sending the command to display it. The chart started to show, and after displaying half of the buttons it stopped. Then the buttons was displayed one by one with a long delay between before I ususally got disconnected... I never heard anyone else had the problem, it only seemed to happen to me

But after I switched server from Windows Server 2003 to Linux Debian the problem seems to be gone (both were dedi servers running on rented VPS'). Never got the chance to investigate the problem. I don't have any delay what so ever in my app, just pushing button packets out on the wire.

Dunno if this info was usefull, just wanted to let you know
nikka
S2 licensed
Fixed now. Dunno what happened. Will investigate. But don't hold your breath.

Nice picture of you speedway. Good to see you have lost some weight.
nikka
S2 licensed
use 255 to be on the safe side. At least previous versions could have ucid greater than 47, maybe that is fixed now, but I always use 255 just to be sure.
nikka
S2 licensed
Quote from Kristjan.J :Server is not stable, lags alot and insim makes some weird things...

Weird things like what?

We're working on the lag... it's terrible at the moment..
nikka
S2 licensed
Quote from Kristjan.J :Yea yea, it's open, but insim not working, someone needs to fix this quick...

Should be fixed now, thanks for the heads up!
nikka
S2 licensed
It was set to private by mistake... should be public now.
nikka
S2 licensed
Sorry about the downtime, but my monkey who ran the bike that generated electricity for my server died of a heart attack. Trained monkeys are hard to get here in Africa, so it took a while to find a replacement. And my server don't have a hard disk (it's a Amiga 500), so when the monkey died all the stats were gone too.

Anyways. We're not 100% stable yet (that damn monkey still need some training), but we're getting there.

And if anyone got a hard disk for a Amiga 500 for sale, send me a pm.

Have fun!
nikka
S2 licensed
prft, we're public now. enjoy. lalala.

edit: uhm. no we're not.. i lost my db scheme so i have a little trouble reverse engineer it... brb

editalalamentastico: we're up and down at the moment... a little unstable but we're getting there.
Last edited by nikka, .
nikka
S2 licensed
OMG. Not this discussion again.

If you have to use heat (directly, or, yes, indirectly on the food) in some way to prepare a meal, you're cooking. End of discussion. Nikka has spoken. Now move along. Nothing more to see here.
nikka
S2 licensed
Quote from Stefani24 :Thats only possible if the csr package sends coordiantes with it iirc, so the insim can check teh coordinates, sometinhg like: IF CSR not in X xxx Y xxx then send "A Car reset in a area wich isnt meant for"

Just use the coordinates from MCI packets to check if the PLID is in a aproved area when a CSR is recieved. If he's not, you can just kick, ban or spectate him or whatever you desire.
nikka
S2 licensed
Quote from th84 :It is coming, grasshoppers. I do believe Nikka is online testing it now. If that is the case, expect to see it online on or before christmas of 2011.

Hm no, sorry. I'm busy cooking a bacon sandwich. Ask avel.
nikka
S2 licensed
static int player_number = 0;

for (int i = 0; i < MCI.NumC; i++)
{
Players[player_number].CompCar.AngVel = MCI.Info[i].AngVel;
..
..
..

if ( (MCI.Info[i].Info & CCI_LAST) == CCI_LAST)
player_number = 0;
else
player_number++;
}



(this is C though, don't know how to use static variables in C#)
nikka
S2 licensed
Quote from Lotesdelere :The server seems to be down / offline to me

Yes, we're having some server issues. Hopefully it will be up again later today.

(didn't know anyone still played Sumo btw )
nikka
S2 licensed
Dunno how accurate you want it, but keep in mind that to get it 100% right you need to check if one of the corners of the car is inside the square, and for that you need to calculate yourself where the corners are (but thats just basic geometry actually (as soon as you have found the size of the car in question.. (and thats the tricky part here))).

X and Y in the MCI packet only tells you where the middle of the car is.
nikka
S2 licensed
After some technical problems we should be up and running again. Sorry bout that.
nikka
S2 licensed
Quote from Jakg :What does "PB" mean? I have great Wins (#48), great knockout/matches (#85) and yet i'm stuck at position #98 because my "PB" is at ~327

PB is the best score ("personal best") you ever got in a single match.

Edit: doh!
nikka
S2 licensed
Quote from The General Lee :
I agree with Jakg, the "lag issue" is a pain, but what can you expect when you have cars bashing into each other. Surely your clever script man can set a lower max ping?

Unfortunately thats not possible with todays insim system. We have to rely on admins to kick laggy cars, but we're a bit short of admins..
nikka
S2 licensed
Thanks for the ideas and thoughts, they are very much apprechiated!
We are well aware of the "lack of admins" problem, specially during prime time in usa. We are trying to figure something out.

As for the pre-match-start-action, that is something we are struggeling to solve too, the most difficult thing is to stop people from crashing other people, but the easiest way (as of today) is to have admins on the server..

The sudden death with closest to the 'X'-thingy works fairly well imho. It's no problem to push people away from the X, if youre not out of tires or clutch that is
nikka
S2 licensed
Quote from mcgas001 :I freaking love sumo..

hehe, you're not alone.. after running for 4 days, close to 2500 matches of sumo has been played by over 800 different players.

Glad you folks like it
nikka
S2 licensed
My idea was to have a "report high ping" button for each player. If a player seems to have high pings (you see that very easy when playing sumo ) the other players could click the high-pingers report button. Then the applictation would check and see if he really got a high ping, and then (ultimately, after some warnings and so on) kick him.

Or something like that. I would never implement a 100% automatic system, for reasons you mentioned above, and other.

Edit: My main point was, we already have this information available (using shift+f8) so I really dont see why insim couldn't get this info as well.
nikka
S2 licensed
Bump.

We are already able to see each players ping using the network debug (shift+f8), so I would really love to be able to see those numbers in, say, the MCI packets as well (or whatever, as long as we can get those numbers via insim). My sumo app really needs this... now the admins have to manually monitor each players ping, and kick those with too high numbers (after a warning of course) since they really mess up the game.
FGED GREDG RDFGDR GSFDG