The online racing simulator
Searching in All forums
(98 results)
FreeScirocco
No longer welcome
As the table column on the OP already suggests, no, they where never made. It's because EQ Worry needed to combine different PTH's together (from LFS) to get to a new one and some corners couldn't be made because they where too unique.
FreeScirocco
No longer welcome
2013 called
FreeScirocco
No longer welcome
No.

Quote :struct IS_MTC // Msg To Connection - hosts only - send to a connection / a player / all

Quote :byte UCID; // connection's unique id (0 = host / 255 = all)

FreeScirocco
No longer welcome
It's dead again?
FreeScirocco
No longer welcome
No no... It's a stress test for upcoming massive media attention... It's a sign, it's near.. The release must be near.

*walks nervously in circles around the computer*
FreeScirocco
No longer welcome
Eeeh the question didn't contain 'single driver' as far as I can see. Endurance races where being done by teams mostly. Teams of four or five drivers.
FreeScirocco
No longer welcome
16 hours +

everything below that is for amateurs
FreeScirocco
No longer welcome
Who is Alice? That red car?
FreeScirocco
No longer welcome
OK.. going to take some risk. This is part of Airio code. Does it help?

{
using System;
using System.Collections;
using System.Text;

public static class Strings
{
private static Hashtable encs = new Hashtable();
private static string pages = "LEBGCTJSKH";

public static string CharsLFSToStandard(string lts)
{
if (string.IsNullOrEmpty(lts))
{
return "";
}
StringBuilder builder = new StringBuilder(lts);
return builder.Replace("^l", "<").Replace("^r", ">").Replace("^v", "|").Replace("^s", "/").Replace("^d", @"\").Replace("^a", "*").Replace("^q", "?").Replace("^c", ":").Replace("^t", "\"").Replace("^h", "#").Replace("^^", "^").ToString();
}

public static string CharsStandardToLFS(string stl)
{
if (string.IsNullOrEmpty(stl))
{
return "";
}
StringBuilder builder = new StringBuilder(stl);
return builder.Replace("^", "^^").Replace("<", "^l").Replace(">", "^r").Replace("|", "^v").Replace("/", "^s").Replace(@"\", "^d").Replace("*", "^a").Replace("?", "^q").Replace(":", "^c").Replace("\"", "^t").Replace("#", "^h").ToString();
}

public static byte[] GetBytes(string str)
{
if (encs.Count == 0)
{
InitEncodings();
}
byte[] destinationArray = new byte[str.Length * 4];
byte[] sourceArray = new byte[0];
char ch = 'L';
Encoding encoding = (Encoding) encs[ch];
int destinationIndex = 0;
bool flag = false;
int num2 = -1;
char[] chars = str.ToCharArray();
for (int i = 0; i < chars.Length; i++)
{
if (((chars[i] == '^') && (i < (chars.Length - 1))) && (chars[i + 1] == '8'))
{
destinationArray[destinationIndex++] = (byte) chars[i++];
destinationArray[destinationIndex++] = (byte) chars[i];
ch = 'L';
encoding = (Encoding) encs[ch];
}
else
{
try
{
sourceArray = encoding.GetBytes(chars, i, 1);
}
catch (EncoderFallbackException exception)
{
if (++num2 < pages.Length)
{
ch = pages[num2];
encoding = (Encoding) encs[ch];
flag = true;
i--;
goto Label_0169;
}
Helpers.OnStaticMessage("WARNING : Unknown character to encode - " + exception.CharUnknown);
destinationArray[destinationIndex++] = (byte) chars[i];
}
if (flag)
{
destinationArray[destinationIndex++] = 0x5e;
destinationArray[destinationIndex++] = (byte) ch;
flag = false;
}
Array.Copy(sourceArray, 0, destinationArray, destinationIndex, sourceArray.Length);
destinationIndex += sourceArray.Length;
num2 = -1;
Label_0169:;
}
}
Array.Resize<byte>(ref destinationArray, destinationIndex);
return destinationArray;
}

public static byte[] GetRawBytes(string str)
{
if (encs.Count == 0)
{
InitEncodings();
}
byte[] array = new byte[str.Length * 4];
int newSize = 0;
for (int i = 0; i < str.Length; i++)
{
array[newSize++] = (byte) str[i];
}
Array.Resize<byte>(ref array, newSize);
return array;
}

public static string GetRawString(byte[] pack)
{
if (encs.Count == 0)
{
InitEncodings();
}
StringBuilder builder = new StringBuilder("");
for (int i = 0; i < pack.Length; i++)
{
if (pack[i] == 0)
{
break;
}
builder.Append((char) pack[i]);
}
return builder.ToString();
}

public static string GetString(byte[] pack)
{
if (encs.Count == 0)
{
InitEncodings();
}
StringBuilder builder = new StringBuilder("");
Encoding encoding = (Encoding) encs['E'];
Encoding encoding2 = (Encoding) encs['L'];
int index = 0;
bool flag = false;
for (int i = 0; i < pack.Length; i++)
{
if ((encoding != encoding2) || flag)
{
index = i;
encoding = encoding2;
flag = false;
}
if ((pack[i] == 0x5e) && (i < (pack.Length - 1)))
{
if (encs.ContainsKey((char) pack[i + 1]))
{
encoding2 = (Encoding) encs[(char) pack[i + 1]];
flag = true;
}
if (pack[i + 1] == 0x38)
{
encoding2 = (Encoding) encs['L'];
}
if (pack[i + 1] == 0x5e)
{
i++;
}
}
if (((encoding != encoding2) || (pack[i] == 0)) || ((i == (pack.Length - 1)) || flag))
{
try
{
if ((encoding != encoding2) || flag)
{
builder.Append(encoding.GetChars(pack, index, i++ - index));
}
else
{
if (pack[i] == 0)
{
builder.Append(encoding2.GetChars(pack, index, i - index));
break;
}
builder.Append(encoding2.GetChars(pack, index, pack.Length - index));
}
}
catch (DecoderFallbackException exception)
{
Helpers.OnStaticMessage(string.Concat(new object[] { "WARNING : Unknown bytes to decode - ", exception.BytesUnknown[0], (exception.BytesUnknown.Length > 1) ? (" " + exception.BytesUnknown[1]) : "", (exception.BytesUnknown.Length > 2) ? (" " + exception.BytesUnknown[2]) : "", (exception.BytesUnknown.Length > 3) ? (" " + exception.BytesUnknown[3]) : "" }));
builder.Append('?');
index = (index + exception.Index) + exception.BytesUnknown.Length;
i = index - 1;
}
}
}
return builder.ToString();
}

private static void InitEncodings()
{
encs.Add('L', Encoding.GetEncoding(0x4e4, new EncoderExceptionFallback(), new DecoderExceptionFallback()));
encs.Add('E', Encoding.GetEncoding(0x4e2, new EncoderExceptionFallback(), new DecoderExceptionFallback()));
try
{
encs.Add('B', Encoding.GetEncoding(0x6fbb, new EncoderExceptionFallback(), new DecoderExceptionFallback()));
}
catch
{
encs.Add('B', Encoding.GetEncoding(0x4e9, new EncoderExceptionFallback(), new DecoderExceptionFallback()));
Helpers.OnStaticMessage("INFO : Using CP01257 instead of CP28603");
}
encs.Add('G', Encoding.GetEncoding(0x6fb5, new EncoderExceptionFallback(), new DecoderExceptionFallback()));
encs.Add('C', Encoding.GetEncoding(0x4e3, new EncoderExceptionFallback(), new DecoderExceptionFallback()));
encs.Add('T', Encoding.GetEncoding(0x6fb7, new EncoderExceptionFallback(), new DecoderExceptionFallback()));
encs.Add('J', Encoding.GetEncoding(0x3a4, new EncoderExceptionFallback(), new DecoderExceptionFallback()));
encs.Add('S', Encoding.GetEncoding(0x3a8, new EncoderExceptionFallback(), new DecoderExceptionFallback()));
encs.Add('K', Encoding.GetEncoding(0x3b5, new EncoderExceptionFallback(), new DecoderExceptionFallback()));
encs.Add('H', Encoding.GetEncoding(950, new EncoderExceptionFallback(), new DecoderExceptionFallback()));
}

public static string RawToEncoded(string url)
{
StringBuilder builder = new StringBuilder("");
for (int i = 0; i < url.Length; i++)
{
if (((byte) url[i]) > 0x7f)
{
builder.Append('%' + ((byte) url[i]).ToString("X"));
}
else
{
char ch = url[i];
builder.Append(Uri.EscapeDataString(ch.ToString()));
}
}
return builder.ToString();
}

public static string RawToUTF(string raw)
{
return GetString(GetRawBytes(raw)).Trim();
}

public static string RemoveColor(string ncl)
{
if (string.IsNullOrEmpty(ncl))
{
return "";
}
StringBuilder builder = new StringBuilder(ncl);
return builder.Replace("^0", "").Replace("^1", "").Replace("^2", "").Replace("^3", "").Replace("^4", "").Replace("^5", "").Replace("^6", "").Replace("^7", "").Replace("^8", "").Replace("^9", "").ToString();
}

public static string UTFToRaw(string utf)
{
return GetRawString(GetBytes(utf.Trim()));
}
}
}

FreeScirocco
No longer welcome
Nah.. LFS uses 0.5 Gb system memory when Blackwood is loaded AND 0.5 Gb video memory (thanks GPU-Z). Together it's 1 Gb, only to run LFS. Nowhere near the "minimum requirement" of 256 Mb. With only 2 Gb of RAM on a W10 system it easily runs out of memory / starts swapping.
FreeScirocco
No longer welcome
I don't know where you exactly read this but here are different requirements / recommendations.

Quote :Minimum computer requirements
2 GHz CPU, 256 MB memory, DirectX 9 capable 3D graphics card.

Also debatable in my opinion. 256 Mb memory, this gives a false impression to people in situations like this one (shared video memory systems).
FreeScirocco
No longer welcome
No need to feel offended. I think he didn't realized low end GPU chips do not have their own video memory. So yes 1 Gb of free memory sounds like OK but he missed out on the 3D graphics card with 0.5 Gb of memory. He doesn't have this. Windows 10 eats away a big portion of the system memory itself, I do not know how much because it starts to use more memory when there is more memory available (it uses more memory for system caching if there is more memory available) and it also depends on other applications running at the same time of course.

If you really want to use this system to the max, you have to switch to Linux which has much better memory management. It doesnt have that immensely big footprint like Windows [random number] has.
Quote from MicroSpecV :But isn't running it putting your HDD at risk? A laptop should never run at it's TjMax or max capacity just to run an application. Turn it off.

He has a SSD on a chip (NvME), they can withstand some warmth.

Besides, these Celeron processors use 6 Watts as max. Some Christmas light bulbs use more energy.
Quote from lucaf :why you suffer with 2GB? Buy another 2GB

He said that everything is soldered on the board. Which makes me think it's a Netbook or tablet-like device. Something small.
FreeScirocco
No longer welcome
Quote from DemonicVampire58 :
Intel HD (integrated) Graphics 400

Well.. As usual this GPU has no own memory. It is using the system memory. And because you only have 2 Gb of RAM it exhausts pretty fast with high texture resolution like the Blackwood track has. As a result the system needs to use the 2 Gb pageswap file and that exhausts also pretty quick and then the application dies.

Basicly you want to run game(s) on a system which wasn't designed to run games.
FreeScirocco
No longer welcome
Why don't you dump the content of the InSim packet from a working situation (InsimDotNet?) and dump the content of your project with a tcpdump program and compare the difference to see what you are doing wrong?
FreeScirocco
No longer welcome
Quote from BAD_BA :
So what has happened,

The track got updated.
FreeScirocco
No longer welcome
If you are low on diskspace I recommend to do this;

1) https://www.tenforums.com/tutorials/4533-turn-off-system-protection-drives-windows-10-a.html
2) removing all cache of internet browser(s) .. You can do this in the settings menu of the browser
or 2) installing Glary Utilities (it's a free handy utility box) and doing that job for you, it also cleans various other temporarily files.
3) decrease pagefile.sys size ( http://www.thewindowsclub.com/increase-page-file-size-virtual-memory-windows )

And after you have all done this, do the installation. I do not think the unlocking fails because of missing wld files by the way.
FreeScirocco
No longer welcome
The game works properly, if you only install it partly due to space problems then the problem might be space, isn't it? Remove the installation, free up more space and install again.

LFS is portable so it can be on an external drive like a SD card or USB stick. But if you use the installation on another machine you need to unlock the installation again.
FreeScirocco
No longer welcome
I already included main.cs .. Its the only file which contains changes.

Furthermore I do not fancy these upload sites, they mostly die after some years, producing broken links. Would be better if this forum section would support file attachments then it could be a little bit more of an official release.
FreeScirocco
No longer welcome
Right the mistake was somewhere else, throwing that error...

This is a correct version;

http://s000.tinyupload.com/index.php?file_id=76907744393076965267

I included main.cs this time.. Maybe someone else wants to do some alternations, I don't know. Didn't like this track.Length > 3 because it is not future / foolproof... Better is;


if (track == "7100")
retValue = "RO11";

So, It's like that now. I think everything now is OK.
FreeScirocco
No longer welcome
No, the problem is that Victor used 4 chars to specify RO11; 7100 ... RO2 is 710 ... This program reads the output of LFSW like this;

string [] mline = readLine.Split(' ');
string track = mline[1];

Airio isn't designed to handle this extra char and the same for this program.

I tried a dirty easy method;


if (track.Length > 3)
retValue = "RO11";

But it produces an error (Index and length must refer to a location within the string .. Ehh what?). C# is also totally not my language to be honest.
FreeScirocco
No longer welcome
For some reason I cannot attach files to a post.. But..

What do you think about this? http://s000.tinyupload.com/index.php?file_id=12739823892748866168

Usage example: ConvWr -i idk -c 100 -mlc 150 -o outputFile

The only problem I discovered is that RO2 is mentioned twice in the outputfile. The second report about RO2 should be RO11. I checked the timings, it all seems to match with LFSW ..
FGED GREDG RDFGDR GSFDG