The online racing simulator
Searching in All forums
(981 results)
Dygear
S3 licensed
No one is interested in this, huh? Oh well.
SWIFT RCON (A Swift Implementation of the InSim Protocol)
Dygear
S3 licensed
So, I've decided to learn how to program in SWIFT, Apple's new programming language. I think that the best way to learn about this new language and all of it's features is to program an InSim Application that will allow me to remotely administer LFS servers with a Remote Console. Effectively, it would give you the same view of the server that LFS' Dedicated Server window would give you. It would parse color codes, and correctly display them to the terminal and everything else that you would expect. I think that it should support connections through the LFS relay as well. Just wondering if anyone would want to learn SWIFT along with me. I'm going to setup a GitHub repo soon and start hacking away.

Pre-Recs:
  • Must have an Mac OSX Developer Account
    • Must have access to Yosemite on your Mac.
    • Must Install XCode6
  • Must have a GitHub Account
Last edited by Dygear, .
Dygear
S3 licensed
The physics loop, if I remember correctly, runs at 2000 Hz.

[EDIT]

Quick search of the forums, says my memory is correct.

Quote from Scawen :One example in LFS is the spring above the wheel which is supported by a tyre below. The wheel is light compared with those two large spring effects and can easily cause instability. That is the reason for LFS's high update rate of 2000 Hz in the sub-updates, which avoids the cars jumping up and down all on their own due to jumping wheels! You saw in the google video, at one point, in a crash when some vertices went a bit wrong.

What happens is you have some very stiff springs for the chassis members, supporting a node which let's say is 10 kg. The physics engine finds out in one update that the springs are stretched by 5 cm. Now the super string spring applies a force of [A LOT] to that 10 kg mass. So in the next update you find that 10 kg mass has gone maybe 10 metres away or whatever, when really it should only have moved a mm or so.

The update time steps must be small enough so that large force acting on the small mass at the node, doesn't push the node too far away.

Last edited by Dygear, .
Dygear
S3 licensed
This whole thing is a terrible idea. You already have a user name, and you should never send passwords in clear text. You're going too have to do that because there is no way to obfuscate a password in the InSim protocol, outside of gaming through a VPN connection to your server and having all of your other clients as well.

Basically, this is only useful in one situation. When you have clients that are account hoping because they are getting banned for hacking / on cracked server and need a fresh account to get into the game.
Dygear
S3 licensed
That's kinda cool, keep it, even if it's a bug.
Dygear
S3 licensed
Quote from blackbird04217 :Dygear; The files are far from complete, however, here I will share them in their current state. I added a little documentation where things were not yet implemented, but it should be enough to get you started.

Nice! Thank you, when I get some time in the next few years I'll translate that into PHP.
Dygear
S3 licensed
Quote from blackbird04217 :Dygear - Not sure if you are familiar with C++ much or not, but once I finish my basic "Curve" object I will upload the class header and source and from there you, and others, can use it how they wish.

The class currently:

Makes a curve from a set of points along the curve.
Allows you to make a container of points from the given curve.
Estimates the total distance. (Estimation only because it is a curve and the more steps the more accurate the estimate but it will never be exact).

If you give me the source code, I'm sure I can translate it to PHP. Thank you for the assistance.
Dygear
S3 licensed
I want all of that! I've always hated the blocky nature of the PTH files and the CMX files. It would be nice to apply this to the pth parser, so that I can generate some higher quality images.
Dygear
S3 licensed
Since we have a little wait until the next patch should be ready, can we get a frame time tool built into LFS? "/fps 1" - Show's FPS, and "/fps_graph 1" shows a frame graph for when the rendered is presenting to the frame buffer. "/fps_save <filename>" allows you to store the time in milliseconds each frame takes to render.

I'd like to be able to do some benchmarks, like "Inside the Second".
Dygear
S3 licensed
Quote from Flame CZE :It seems to throw some errors when I try to use it. But as I said, maybe it's just me.

Thread hi-jack, what's the errors you are getting, what version of PHP are you running, and what version of PRISM are you running?
Dygear
S3 licensed
Quote from the_angry_angel :I'd like to say I'll be getting back into LFS soon but honestly I don't know if I will.

Story of my life. Barring a major patch, I don't see it happening any time soon.
Dygear
S3 licensed
As Coding Horror has moved over to Ghost as it's blogging platform, and Ghost uses NodeJS for it's interpreter I've looked more into NodeJS. I like the API, and I like that you can handle multiple connections at once because if you ever get into a blocking state with one query, you put it on the back burner and and handle another request while you wait.

As whole websites are being built on top of NodeJS, and with XI4N being available. You could have one instance of NodeJS that works as both an InSim Client, and WebServer. Making for communication between your website and your game servers VERY efficient. With being able to replace most of your stack with NodeJS I think everyone would be CRAZY not to look into it. (Yes, I'm a late bloomer) With NodeJS being able to act as a HTTP server, and also the code parser / interpreter, you shorten your LAMP [Linux Apache MySQL PHP] into LNS [Linux NodeJS SQL (MongoDB / SQLite / MySQL)].
Dygear
S3 licensed
No, it's Eric, and considering that he did this job many, many years ago now, I think they have done a pretty good job standing up to the test of time.
Dygear
S3 licensed
Quote from Scawen :Thanks for the detailed debug info about that crash. I guess with that I should be able to sort it out. If needed, I'll come back to ask for more info. I wonder if anyone can enable DX9 debugging and get an error log with the Fraps crash?

What do we need to do in order to enable DX9 debugging? Aka, where do we download the debug version of DX9?

I found some instructions here ... Using Debug Version of DirectX 9
Dygear
S3 licensed
AMD supports potential DirectX ... ne Mantle's future at GDC

So AMD sees the movement in the industry around graphics APIs as validation of its own approach with Mantle. I'd say that's warranted.
Dygear
S3 licensed
Mantle no more? GDC sessions point to the next DirectX. Well, take a look at that.

OpenGL and DirectX to setup to Mantle's performance. Pretty sure you might as well just move to OpenGL now. They are not going anywhere.
Dygear
S3 licensed
I remember the opening sequence of top gear back in 2002, with Jeremy Clarkson saying, "This is a car show", and it had a used car price segment with a presenter before James May that no one knows about. I think it changed around the time James was bought on for the second season, and then it changed again when they had their first challenge and it was received so well. Can you blame them for giving the audience what they want?
Dygear
S3 licensed
I'm pretty sure that the hosts command will give you all clients connected to all servers (that are not hidden servers).
Dygear
S3 licensed
Its the Star Trek Odd / Even rule applied to Windows Releases.
Dygear
S3 licensed
Quote from blackbird04217 :I do completely understand that I am dealing with something very technical, and making my best attempts at explaining it so it is understandable by a not-so-technical mind.

I love the technical details. I like the insight to a world that I'm not interacting with yet. Exposing myself to the nitty-gritty is massively useful from an intellectual point of view as should you see it again, then you now have a frame of refrence to go back too.

Don't forget that quite a lot of us are programmers ourselves, so we have the technical experience to understand the scope of what you are dealing with. Don't be afraid of losing us.
Dygear
S3 licensed
I have some quiet optimism, emphasis on quiet.
[DEV Chat] PRISM Modules & Drivers
Dygear
S3 licensed
So, I'm doing some restructing of PRISM's modules. That goal of this restructuring is that we make LFS's modules act as a 'Driver' that allows for communications between LFS's InSim interface and PRISM. Then I'd like to make HTTP, WebSockets, Telnet and SSH a driver as well. This takes the colors of the rainbow, and focuses them into a single white beam (a packet stream) that all "userland developers" can use. I'm just trying to come up with a simple interface for that, and a folder structure that makes sense.

Currently, I'm thinking that each driver should be it's own subdirectory within the modules directory. Or should it be that there is a driver top level directory within PRISM's directory and we use that for all of the different drivers we intend on supporting. Then more general modules go into the modules directory, in this case admins would be a general module, as well as the INI handler. Then we can expand on that so that plugins that use LFS' driver can simply add use a trait to get access to their packet information.

Then we have to think about a common interface for PRISM into it's drivers. The most common way that Victor handled that was to use initialise(), getSelectableSockets() & checkTraffic(). We would make a module for the drivers, and make these required functions to implement.

I hope this will make for clearer code, while allowing the programming with this dev team, and programmers within the "userland" to be able to use PRISM in a more concise manner. As such, I'm shooting for PHP 5.6.0 to be a REQUIREMENT for PRISM 0.5.0. All devs should start testing PRISM with PHP 5.6.0-Alpha1 as soon as possible. There are many great things to be seen in 5.5.0, and now 5.6.0.
Dygear
S3 licensed
Can anyone report if they are still having issues with the client / player state information?
FGED GREDG RDFGDR GSFDG