void nkfsDec( void *data, int size ) { BYTE *k = key; for ( int i = 0; i < size; ++i ) { ((BYTE*)data)[i] -= *k++; if ( *k == 0x00 ) { k = key; } } }
Yes, my tabs are 8 spaces wide. In my opinion making the code look loose makes it easier to read. I overuse horizontal space but I don't like to waste vertical space as much, maybe because I want to see as much code as possible without having to scroll.
Try that. Since ' is used to mark where the text string starts and ends, you'll have to avoid using that character. That is, if you have a string like 'ikkah's head', MySQL will think the string is only 'ikkah' and the rest is syntax error. Check that URL, it's probably explained better there.
Uhm, your parser does that now, right? If there's a parser doing that already, I don't see why I should add that feature to my parser. It's meant to imitate the results table in LFS anyway, and DNF drivers aren't listed there either.
Hehe, whoops! It does find those drivers, but doesn't actually save them anywhere. Steal as much code as you want to, if it does good for the community, it does good for me
It can find drivers that didn't finish, with a few exceptions. It prints an ugly HTML-file that's supposed to look a bit like the results board in LFS. The code is a bit hacky, since I thought I'd never show it to anyone, but if you want to modify it for your own purposes, I'm not stopping you.
I agree with most of the stuff, but I really doubt that 5/10 is a good enough score. Sure, points are always relative, and LFS is the best scoring game on that site (there's one with 4/10), but still I feel that the score isn't enough. Even with those issues, LFS doesn't sounds like a 5/10 game.
Here's the problem: right when you start the replay, it says "poa.agarash left the pits (FXO)". The race hasn't begun yet, but the countdown has. That's why Agarash's block of data is 282 bytes instead of 335. I don't know of a way to detect this, so I just tell my drivers to not pit when the race starts
Well there's no specific reason, it's just something that has troubled me (and Kegetys). There were a few ideas that are impossible to do well without 3d orientation. I was kinda hoping to get an answer from the devs on this one?
why is it that you can get the position of the car in 3d (x, y and z), but you can only get 2d orientation (y-axis angle)? Could we get just a few extra bytes for 3d orientation?
That's my parser, in C++. It's a bit hacky since I didn't think I'd show it to anyone
Look for "const int magic_offset", that's where I move to that block of data. The offset to the username block depends on the number of players, unlike in S1 where it was always in the same place.
My parser can find all the players that were ingame when the replay started, this means you can't find people who started from the pits, joined the game after spectating or connected to the server after the replay started. It's good enough for running a league, though.
Hmm, OK, did a little bit of research, those look like car bits. Allowed cars on that server, that is. S1 cars are listed just above the rules bits, I guess the rest of the cars are in the same order as everywhere else, f.e. LFSWorld.
the_angry_angel, I think he's trying to find LFSWorld usernames.
(deleted lots of text here.. should have read the message properly first)
I haven't found a reliable way to find usernames in the replays, but I've had quite good results by playing with offsets. I can find most drivers this way, and it's more reliable than trying to find patterns. Try combining these two methods.
It's like that mostly because it was the default download folder for Firefox.. and my laziness has helped quite a bit too. Absolutely no excuse for all those icons, I never even open apps using the desktop (mostly because I can't find anything)
Yeah, it must be some kind of a bug. Had this in an LFS Suomi race, and AFAIK everyone on the server saw the messages. Had about five of those messages, apparently the AI was learning