Page 4 of 5

Re: [Indev_0.2.1]Orb: YSFlight Proxy Server Script

Posted: Mon Apr 16, 2012 12:31 pm
by Flake
Midnight Rambler wrote:1) I still can't understand the permission system, could you write it out?
I'll start work on a basic tutorial that will cover commands and permissions tomorrow morning. It'll be released as a PDF for readability.
Midnight Rambler wrote:2) I used get an error that rejected all incoming users after a while of running... I'll download the new version and see if it happens... After I learn how the permission work :lol:
This is fixed as of release 0.2.1 :) :
Orb Devlog wrote:Bug fix: sockets not closing correctly if username is banned or rejected due to overlap, caused server breakage if a new client connected after.

Re: [Indev_0.2.1]Orb: YSFlight Proxy Server Script

Posted: Tue Apr 17, 2012 6:40 am
by Flake
Here's the instruction manual, as promised. It's not perfect but it will get you up and running at least.

Re: [Indev_0.2.1]Orb: YSFlight Proxy Server Script

Posted: Wed Apr 18, 2012 1:37 am
by Midnight Rambler
I think I found a bug with the PHP bot.

I'm getting billions of "Dropped a bug Packet" errors with the PHP bot.

Code: Select all

(PHP bot -> (Console Server)) Dropped A Bugged Packet.
I think it has to do with the space in the name (same problem with me).

Re: [Indev_0.2.1]Orb: YSFlight Proxy Server Script

Posted: Wed Apr 18, 2012 2:54 am
by Flake
I'll look into it. :| (looks like the server isn't closing properly)

Cheers. :)

Re: [Indev_0.2.1]Orb: YSFlight Proxy Server Script

Posted: Wed Apr 18, 2012 6:30 am
by Flake
Found a bug in the YSFHQ PHP Bot script, where all messages of type 32 break the script.

Re-worked orb to allow 'PHP Bot' to read the server, even in YSFHQ mode. PHP Bot, like any user, can be banned and prevented access to the server, this makes your server appear offline to the server list.

Also: Because PHP Bot bypasses the YSFHQ log in system, PHP Bot can not read packets of type32 apart from what Orb specifically sends to it. futhermore, PHP Bot is force booted after sending the aircraft list. This means users can not impersonate phpbot to listen to the server, see who's online, talk or join flight. PHP Bot is essentially a banned client, who can read the server info. That's it.

Re: [Indev_0.2.2]Orb: YSFlight Proxy Server Script

Posted: Wed Apr 18, 2012 7:04 am
by Flake
PHP Bot should be fully able to read orb servers as soon as EricT fixes the chat error.


PHP Bot has been tested, and can not see any information typed or sent, apart from what is explicitly sent to it. It doesn't not show up in the online user list, either. this means PHP Bot will not see bans, etc.

Support for long usernames has been added. Support for usernames with spaces in them is not yet supported. (use an underscore for now please! D:)
Accurate Listing of server options, including weather
Flight data is being read. Not complete.
Broken Packet fix. No spam of 'bugged packet' when a client DC's.
Deaths not counted towards K:D unless a user commits suicide by causing damage to themselves (not crashes) or when a user is killed by another user.

Re: [Indev_0.2.2]Orb: YSFlight Proxy Server Script

Posted: Wed Apr 18, 2012 2:22 pm
by vincent
I will fix the serverlist bot.
If you have more information about the YS packets, I will complete the YS protocol documentation.

Re: [Indev_0.2.3]Orb: YSFlight Proxy Server Script

Posted: Thu Apr 19, 2012 11:27 am
by Flake
Hey vincent, I've recoded the serverlist bot to not just assume it gets all the data by counting to 13. I'll forward you a PM of the source code. (it's in python, though, so web-cgi will be needed.)

If you read in the server source, you should be able to get a good picture of what is going on with the new packet types. :)

You're information is a lifesaver my friend, this project would have never got off the ground without you. :D

I did That ^^ Coded a new server list today.
as I learnt a bit more about packet type 37 in the process there of, I have modified Orb so that hidden users remain hidden from the phpbot.
Orb updated to 0.2.3

Re: [Indev_0.2.3]Orb: YSFlight Proxy Server Script

Posted: Thu Apr 19, 2012 7:26 pm
by vincent
You are awesome, good work!

Re: [Indev_0.2.3]Orb: YSFlight Proxy Server Script

Posted: Wed May 30, 2012 8:04 am
by Flake
Cheers :)

I've been working on the installer, and I've also found that the console can be hidden using a .pyw extension instead, so I'll now do what I always wanted: Have a graphical front end for Orb (probably Gamemaker), with the console hidden. (There will be an option to load with/without the console in the background) (screw that. using c#)

I plan on having game maker and orb talk to each other through the ports, and have the console data sent to the gui across ports. (NO.)

This will allow for some fancy shit:

An actual command console, where you flick a switch, and wind is turned on, for example (rather then typing '/wind blah blah blah') (orb 2.0)

Re: [Indev_0.2.3]Orb: YSFlight Proxy Server Script

Posted: Wed Jun 13, 2012 7:46 pm
by acf492

I don't know if this will run on linux, but I can test it on my server if this is possible. (I am a linux user, not a linux developer) (Linux will NOT be supported unless I can build it for it (c# uses .net))

I am facing a number of bugs with the linux versions of ysflight, the worst (with relation to orb) being that F12 is not recognized by the console server, so it looks like I wont be able to test out commands for your proxy server...


Re: [Indev_0.2.3]Orb: YSFlight Proxy Server Script

Posted: Thu Jun 14, 2012 7:02 am
by Flake
It works of chat messages. If you can send a txt message in ysflight, that's how it's done.

-- Sat Jun 30, 2012 2:04 pm --

Bumpity Bump.

Orb is now using a executable code (.exe) instead of interpreted code (.py) (Will always be EXE from c# release forwards.)

This should speed things up.
I've finished what I needed to do to edit and read flight data packets so far, so I've added /freeze and /unfreeze It works reasonably well, but the frozen user can still move and stuff, just nothing they do gets acknowledged.
I've done lots of code cleanup and removed the ugly 'print' messages that I used to debug with for the most part.
Source code is now closed to developers only due to permissions and security issues with YSFHQ. PM ME to join the project! (you don't need to do anything, just need to be trusted) (Will unlock after .dll for YSFHQ is made.)
Added lots of Try/Excepts to the data recv/send code. this should stop crashes entirely I hope, apart from data errors in sent code.
With the changes so far, I'm releasing first Beta. Hopefully bugs will be at a minimum. :)

Re: [Beta_0.3.0]Orb: YSFlight Proxy Server Script

Posted: Sun Aug 12, 2012 3:11 pm
by vincent
Orb is now using a executable code (.exe) instead of interpreted code (.py)
[old]For further Python projects which require performances, try pypy. It's a Just In Time Python compiler.[/old]

Re: [0.3.1]Orb: YSFlight Proxy Server Script

Posted: Mon Jan 14, 2013 8:00 am
by Flake
I re-worked my local copy of Orb to connect to an external server over the internet instead. The effect was all the other users connecting as if they joined the server direct and bypassed orb.

The reason was to get a realistic internet data delay going on to test the packets, trying to find the problems...

It worked.

I have re-written the Socket structure (The archiles heel of the program until this point) and now it is faster, more accurate, and it no longer has data crashes.

After 5 hours of constant heavy use, Orb stayed up strong. Therefore, I am willing to announce that:



"And we're out of Beta, We're releasing on time! ^_^"

So is it done? No. I still need to learn the protocal and add lots of cool features, but Orb shouldn't crash clients anymore, meaning it's safe for use for all servers. :)

Download link is on the title page.

Re: [0.3.1]Orb: YSFlight Proxy Server Script

Posted: Mon Jan 14, 2013 10:55 am
by Midnight Rambler
I broke something.


Re: [0.3.1]Orb: YSFlight Proxy Server Script

Posted: Mon Jan 14, 2013 11:32 am
by Flake
1) Ensure your server IP address and appropriate ports are set correctly.

Your getting "Connection Refused" because the proxy is trying to connect the client to a server that does not exist.
2) Ensure your database is setup correctly.

"Midnight Ramle" probably hasn't logged in before, which is why the server doesn't recognise his time... He hasn't got one! (No INFO saved for Rambler yet.)

Re: [0.3.1]Orb: YSFlight Proxy Server Script

Posted: Mon Jan 14, 2013 11:50 am
by Midnight Rambler
I... I forgot to change the port to 7914... :?

Re: [0.3.1]Orb: YSFlight Proxy Server Script

Posted: Mon Jan 14, 2013 11:53 am
by Flake
All good now? I'm doing just a few more extra little fixes to make the service run better, like socket shutdowns rather then just brutal closes (I don't even know that was possible until just now...). (YES, Python has this, BUT the sockets don't have a "connected" flag for easy checking. just too messy imo.)

Also just a few small bug fixes, namely how the text messages are displayed, and user lists.

Re: [0.3.2]Orb: YSFlight Proxy Server Script

Posted: Mon Jan 14, 2013 12:42 pm
by Flake
Orb has been updated to 0.3.2, Just a few small fixes: Text messages are formatted correctly again, Sockets are closing gracefully, So messes and errors in the feed for no reason should disappear. PHP Bot should be able to see the userlist correctly again.

Re: [0.3.2]Orb: YSFlight Proxy Server Script

Posted: Mon Jan 14, 2013 12:59 pm
by Midnight Rambler
I'm having another issue.

I can connect to orb through 7915 from the VPS client perfectly well. When I try my normal YSF client on my computer, all I get is "Cannot connect to host". I can join the server on 7914 and I can join other servers on 7915, just not 42S running Orb on 7915. (I don't understand this. From C# release fowards, will be accurate data logging of errors and crashes, this will allow me to solve these problems better.)

This happens on both Direct X and OpenGL, with different usernames and when trying different ports. Windows 7 64 bit.

Edit: I'm pretty sure that the PHPBOT didn't ping the server, hence the reason it doesn't look like its online.