The online racing simulator
Searching in All forums
(983 results)
Dygear
S3 licensed
Quote from MadCatX :I might be wrong but judging by the 1.1.1.7's source it looks like DarkTimes used some reverse engineering tool to extract the source from the binary. If this is the case, it's likely that either the decompiler got it wrong somewhere or DarkTimes overlooked something in the chaotic code of some methods.

I was thinking about updating LFS_External for proper 0.6E support, but the occasional unholy mess made me change my mind. It might be a good idea to get in touch with T-RonX and ask him for the source if he still has it.

Decompilers don't get it wrong really, they just take the machine code and turn it back into asm. From there you can decide how you want to make it into C code or something like that, but that you'd really have to do by hand, because the asm that the decompilers turns it into could be any kinda of C construct, it just depends how it's used. There are for example, no for loops in asm, it's just a trick that the compiler abstracts for the programmer.
Dygear
S3 licensed
You should make a packet buffer that all of your packets go into, from there, you should only send a few packets at a time. Look at what Victor did in PRISM's code for examples on how to do that.
Dygear
S3 licensed
Limit the amount of packets your sending in a single go.
Dygear
S3 licensed
I think they will drop it in 5.6 / 6.0 compleatly, from the threads I've been reading in the PHP mailing list, they hate maintaining support for it, it's a headache to keep it going ... kinda like putting a band aid on a zombie, the underlying problem is still that it's a zombie. That's kinda how they feel about it. So at this point forward, it's PDO or MySQLi for MySQL support within PHP.
Dygear
S3 licensed
Looks like the PHP Devs are getting rid of ext/mysql in the next versions of PHP. PHP 5.5.0 Alpha 2 deprecates it, with full on removal expected in PHP 5.6.x and PHP 6.0.

https://wiki.php.net/rfc/mysql_deprecation

They will keep PDO support and MySQLi support as PDO is "the PHP Way" and MySQLi supports async queries.

Still only MySQLi supports async queries tho.

http://blog.ulf-wendel.de/2008 ... s-help-you-with-sharding/
http://planet.mysql.com/entry/?id=32136
Last edited by Dygear, .
Dygear
S3 licensed
Quote from Victor :And at least here on freebsd that is confirmed. The php 5.4 core does not contain sqlite. If I want pdo sqlite support I have to compile the modules php_pdo and php_pdo_sqlite. And if I'm not mistaken, that is sqlite3, not sqlite2 which was bundled with php prior to 5.4.

sqlite3 is bundled with the core prior to 5.4, at least it was for me, when I compiled php with the default `config` and `make` settings. Ya know I did not notice that they changed that with 5.4, man the PHP's devs a freaking killing me here! Now we don't have a single 'core' db engine that we can count on being there ... ****!

Quote from Victor :EDIT - i agree with you though about sticking with sqlite. It's prefectly fine for prism. And imo it's no biggy if people need to add some modules for that to work.

Yeah, I think it's the best fit for PRISM. The fact of the matter is right now, you need to have the sockets module installed for PRISM to function at all, so I feel that having this also is a no-brainier, just like having the sockets module.
Dygear
S3 licensed
I see your point. I think at this point we would need some hard data to prove that it would work better, like some bench mark results. But I really don't have any desire to add MySQL support to PRISM. I'm only happy with SQLite because it comes in the engine's core, so we can be sure that everyone will have it.
Dygear
S3 licensed
It's not that I disagree with you, I just think of it from an end programmers point of view and an end user point of view. From the programmers point of view there are some thing that I would like to know, but don't need to know right away. For example, a clients database information to update their UI state. I can wait for this information to become available. From a users point of view, If I can avoid a blocking IO function in an SQL query that provides me with a responsive user interface. That is massive! If we can pull that off with the tools given that would help the programmer and the user.

I see this happening in two ways. I've already discussed the first case above, where I don't need to know the details of the SQL query right, I can wait for these resources to be yielded to me. However this does not work if I am trying to authenticate a user. For that, I may need some purposefully blocking IO here to make sure that the next part of the function is only called in the case where my client is authenticated and authorized. I see the query prototype for this method looking something like this.

SQLResult SQL::query ( string $query [, bool $yield = TRUE]);

Using this method above, PRISM would create an array of query strings and callback functions. It would keep track of what query string should go to what function once it's result yields. It then iterates over this array at the end of the main loop. This should allow for blocking and non-blocking querys. The non-blocking queries should not block the main loop of PRISM, in theory at least, meaning it should allow for the continued processing of packets even while there are outstanding SQL queries.

Maybe I've read the spec wrong, maybe python's implamentation of coroutines is different then that of PHP's. maybe I can't yield a SQL query. But if I can, I think that it would be a huge win for the programmers and end users of PRISM. I would love to start working on a proof of concept for this, but it seems that I'm going to be stuck working for the rest of my life. But this would be very cool to see. Maybe if I get a night I make a build of PRISM with coroutines, maybe it will be awesome, maybe it won't.
Last edited by Dygear, .
Dygear
S3 licensed
That's awesome mate, nice job!
Dygear
S3 licensed
Yeah, never heard of Luvit, but hey, ASync IO for Lua that's always a good thing! Well then repeat83, apparently you should port LuaLFS to use Luvit and then you won't be bored.

Quote from repeat83 :In the PRISM not like this?

PRISM's network IO is non-blocking unlike LuaLFS ... We are working on making SQL IO nonblocking in the next major version of PRISM as well.
Dygear
S3 licensed
Yeah, they are primarily talking about SQL query, they are the devs for BBQSQL, that basically allows you to quickly find out the information about the SQL server from various attack vectors available to it. Having a non-blocking SQL part to RRISM would be immensely helpful as well.
Dygear
S3 licensed
Scawen, something you might find interesting ... It's a Defcon 2012 (20) talk about fuzzing online games.

DEFCON 20: Fuzzing Online Games, might give you some ideas as to what Anakin Skywalker is doing. The idea of using packet information and correlate that memory offsets so you know what packet affects what memory offsets. It's very useful to combine both of them from the outside ... and then there is DEFCON 19: Hacking MMORPGs for Fun and Mostly Profit that goes over some techniques that he might be using. I would of PM'ed or emailed you with this, but your account does not allow PMs from low life members like myself.
Last edited by Dygear, .
Dygear
S3 licensed
Victor, take a look at the video that I linked to below for the network portion of PRISM 0.5.0 using PHP 5.5.0.

The video it's self is of the networking portion of BBQSQL, written in Python. They are using Coroutines (Now available in PHP 5.5.x) to get a lot of proformance in their networking IO because it switches from the first IO request to the next when it get's to an blocking IO call. Could be interesting for the next version of PRISM's networking stack.

https://www.youtube.com/watch?v=I4XRnuAA-aA#t=32m30s
Dygear
S3 licensed
Learn PHP and use PRISM, then you won't be bored!
Dygear
S3 licensed
@Dustin I like Nano when I'm SSH'ing into something and I need to change a text file, like a config file really quickly, but other then that, I would use this ... simply awesome that I can SSH into my computer using my text editor and edit a file on my platform without much of a headache. Plus I like it's syntax highlighting, it reminds me of github's color scheme.

@TAA, I never really got the hang of VIM, I've always perfered nano. *Hides*

@MadCatX, you don't _have_ to pay for it, you can try it out for as long as you want. I've downloaded it and I've not bought it yet because I don't have the money yet. And it very gently nags you every now and again that you should pay for it if you use it that much. I really like that it does that too, let's you use it for free, but reminds you that it's not really free software. I'm quite happy to pay for it once I have the funds, respect for doing that.

@thisnameistaken, that's funny that the guy next to you was using it as well and you had no idea! Ask him if he uses any plugins that he finds useful.

@EVERYONE

If you find plugins that you find useful, please do post them here, I would love to take a look at them.
SublimeText - Finally a Text Editor I like!
Dygear
S3 licensed
Well, after the recommendation of Cyril Kowaliski of Tech Report fame, I've finally stopped using Notepad2 for all of my text editing and programming. I've completely fallen for [url=]SublimeText[/url] I love that it works on Windows, Linux and Mac (In that order). But what I love even more then that is that it has a Linux style [url=http://wbond.net/sublime_packages/package_control]package control manager[/url] to install plugins on the fly!

I've downloaded a few already that I find indispensable!
  • [url=http://wbond.net/sublime_packages/package_control/usage]Sublime Package Control[/url]
  • [url=http://wbond.net/sublime_packages/sftp]Sublime SFTP[/url]
  • [url=http://wbond.net/sublime_packages/terminal]Sublime Terminal[/url]
  • [url=https://github.com/kemayo/sublime-text-2-git]Sublime Text 2 Git[/url]
  • [url=https://github.com/jisaacks/GitGutter]GitGutter[/url]
  • [url=https://github.com/Warin/SublimeTidyHTML]SublimeTidyHTML[/url]
Dygear
S3 licensed
Quote from dawesdust_12 :I need to get around to doing all that stuff.. not that I restart my server very often. I am the laziest person in the world for it.. my web server doesn't even start up if my server reboots.. gotta do it manually :P

That's insane, all you have to do is add something to the cron tab like
@reboot start program

But we are pretty far off topic here.

Any luck with the color problem Scawen? Also if you want some inspiration, take a look at what Victor did with the telnet module in PRISM. That stuff is pure gold.
Dygear
S3 licensed
Quote from dawesdust_12 :You could always have colours in console. The Windows CMD does allow you to do this. PRISM implements it AFAIK too.

We kinda do yes, but it's only on the Linux side I'm afraid.

Quote from dawesdust_12 :my intent is to get a proper server running, that will start with init.d and everything as part of boot.

That would be the holy grail.

Quote from Scawen :From a quick look, I can't see how to do colour. How to do it seems to depend on where the output is going. I can only see how to do colour on Linux consoles, not Windows.

Welcome to the club Scawen, we have jackets. If you want to see an application that is Open Source that does use colored text inside of the command application on Windows take a look at git. Myself and Victor (Yes, that Victor, your fellow developer-at-arms.) use Git on the PRISM project that we share programming duties on. It impalements color within the windows command prompt some how without resorting to some crazy trickery. I recomend you take a dive into their source code and see how they did that.

If you can make heads or tails of their C code, your best best is ... color.h and color.c. I'm sure you can deraive your own color mechanism from there.
Last edited by Dygear, .
Dygear
S3 licensed
He avoids CarGame's servers because it TCP logs ... So why don't we setup a bear trap? A random server with a random name, that logs TCP traffic with WireShark. Get a bunch of the devs on to seed the server, get it popular and just wait ... at some point he will pop on and then you'll see how it did it or equally as important, how he didn't do it.

Also, are all of these servers that is is getting onto running AIRIO, or LFSStats, or PRISM, or anything? If your using PRISM you could make a plugin and make like a warning system for him. Once a client connects where UName == '', send out the alarm to Scawen, and save the reply file on the host after 30 seconds, or at the end of the session.
Dygear
S3 licensed
It seems to be a split packet problem, as mentioned by Scawen. The problem lays with the InSim application, as it does not properly handle split InSim packets.
Dygear
S3 licensed
I'm perfectly fine with having small updates over small periods of time, but I think it's pretty clear to see that waiting a long time and having no updates is simply not working. Yes, these patches are nice, but content is king, and if you are not willing to add content, then at least allow us to do it. Allow us to make cars, and track, and don't chastise us for it. The community here is great, with very many talented people that could do great things if we were given the tools. Some of us have made our own tools, but can't release them because we'll be banned. All we want is new content, and you don't even have to supply it if you let us do it. Allowing us to tweak the engine, add and remove HP, add or remove Co-efficiency, ect ... would make for many interesting options within the game environment.
Dygear
S3 licensed
F1 has never had a car numbered 13.
Dygear
S3 licensed
And you are correct sir! After upgrading back to the latest version of the driver, the system freezes right away once I got into a server. So it is indeed a problem with the drivers.
Dygear
S3 licensed
With the version from the ASUS website, my system does not hang, but I also downloaded the E patch for the client, so I'll upgrade back to the newest version and see if it's that or the drivers.
Dygear
S3 licensed
I'm downgrading to Intel HD Graphics Drivers 8.15.10.2712, Found in the VGA section of my motherboar's drivers section. These are the drivers where LFS was stable, so if we still have the problems with LFS, then it must not be a driver issue, but an LFS issue. I'll report back and we'll see how it goes!
FGED GREDG RDFGDR GSFDG