Page 1 of 1

[PROGRAM] OpenYS - Open Source YSFlight Server!

Posted: Thu Jan 15, 2015 2:04 am
by Flake

Screenshots
Console
Horizon
Sunset
Formation
Replay Playback
Auto Crash Reporting
Chat Spam Filter
Developing OYS...
About
Finally, after all the years and time spent since I first started experimenting in 2009, I am very proud to introduce the first ever Open Source, completely stand alone YSFlight Server.

This server does NOT rely on ANY of the YSFlight Executable files. It involves absolutely no reverse engineering of any of the YSFlight Executables, and since ALL the work has been completed by myself, there is absolutely no copyright breaches.
How To Use
Ensure YSFlight is Installed in C:/Program Files/YSFLIGHT.COM/YSFlight (default) and then just launch OpenYS-ServerMode.exe from any location.

Alternatively, edit Settings.dat to your preferences and than run OpenYS-ServerMode.exe

Minimum System Requirements:
Windows XP SP3 or newer
Microsoft .Net 4.0 Framework or newer
Legal
This server source code is realeased under Attribution-NonCommercial-ShareAlike 3.0 Australia (CC BY-NC-SA 3.0 AU).

In a nutshell:
Bugs
Known Bugs:
-A few non-crucial packets are being ignored at the moment (score and query airstates...) - this is intended.
-Ground objects don't move - this is intended.
-No AI Aircraft - this is intended.

Bug Reports:
-Best done via post below or PM to xX_SuperSic58_Xx here at YSFHQ or via email to: [email protected]


NOTE: Normally the program would send bug reports but since doing a massive server upgrade this is temporarily not implemented - if you see something and can reliably reproduce, please tell me!

A bug report is especially useful if you can repeat the problem reliably, but I do need a minimum amount of information. I make it my effort to fix all bugs as prioty 1. Extending the program is priority 2.

If I forget to fix your bug in a release, please remind me!

Bug Report Form:
BUG REPORTS MUCH APPRECIATED AND ALWAYS WORKED ON! CLICK HERE!
Key Project Contributors
Diamond Contributors
Patrick31337

Diamond Contributors have devoted enormous amounts time and resources to the development of OYS. Their frequent development testing and bug reports have allowed crucial bug fixes and development mile stones to be met.


Gold Contributors
Eric
VFA-49 Squadron
NightRaven

Gold Contributors have devoted considerable amounts of time and resources to the development of OYS. Their development testing and bug reports have allowed for some crucial bug fixes and key development progress to be made.


Silver Contributors
Stingx
DD Destroyer
ThatMisfit
Gunny
Kujo
Vic Viper
C P

Silver Contributors have devoted some time and resources to the development of OYS. Their recurrent development testing and bug reports have allowed for some bug fixes and development progress to be made.


Bronze Contributors
Scarecrow
Venom
VNAF ONE
Raptor
NightHawk
Nodoka Hanamura
Bombcat

Bronze Contributors have given some time to the development of OYS. Their assisted testing and feedback has allowed for some bug fixes and development progress to be made.

Download
Download the latest version from Google Drive

[PROGRAM] OpenYS - Open Source YSFlight Server!

Posted: Thu Jan 15, 2015 2:24 am
by Stingx
Any plans of porting a version for Linux? :)

[PROGRAM] OpenYS - Open Source YSFlight Server!

Posted: Thu Jan 15, 2015 3:03 am
by Flake
Nope but it doesn't use any Windows DLL Libraries, It should be pretty easy to compile for Linux with a .Net 4.5 Compiler or above. Same for Mac I guess. Modifications would need to be made to support the linux/mac file structure though.

The program is now windows only. Sorry, not sorry.

Just fixed a few socket crash problems on connections and disconnections. Tested the release and all appears to be working right now. Strange, it didn't whinge in debug mode... :lol:

[PROGRAM] OpenYS - Open Source YSFlight Server!

Posted: Thu Jan 15, 2015 3:26 am
by Neocon
OfficerFlake wrote:How To Use
Ensure YSFlight is Installed in C:/Program Files/YSFLIGHT.COM/YSFlight (default) and then just run OpenYS.Exe from any location.
Is there any chance that we will be able to select an alternate installation site?

[PROGRAM] OpenYS - Open Source YSFlight Server!

Posted: Thu Jan 15, 2015 3:30 am
by Stingx
Just simlink.
OfficerFlake wrote:[post]83075[/post] Nope but it doesn't use any Windows DLL Libraries, It should be pretty easy to compile for Linux with a .Net 4.5 Compiler or above. Same for Mac I guess. Modifications would need to be made to support the linux/mac file structure though.
Hmm. I just tested it thru wine. Opened for two seconds, showed some text for a split second and closed. I'll see what I can do about recompiling it.

[PROGRAM] OpenYS - Open Source YSFlight Server!

Posted: Thu Jan 15, 2015 3:44 am
by Neocon
Maybe I'm just missing something. How do you select the map?

[PROGRAM] OpenYS - Open Source YSFlight Server!

Posted: Thu Jan 15, 2015 5:06 am
by Flake
Patrick31337 wrote:Is there any chance that we will be able to select an alternate installation site?
I have it coded in already actually.

Add the path to the YS install as the first program argument.

Next version I will add the ability to change port from 7915 as argument 2, and field name as argument 3.
Patrick31337 wrote:Maybe I'm just missing something. How do you select the map?
Speaking of which, it only runs SMALL_MAP at the moment. Oops. I'll sort that out tonight! hahaha.

[PROGRAM] OpenYS - Open Source YSFlight Server!

Posted: Thu Jan 15, 2015 5:07 am
by Flake
Stingx wrote:Hmm. I just tested it thru wine. Opened for two seconds, showed some text for a split second and closed. I'll see what I can do about recompiling it.
Run it through a command prompt first so It falls back to command line and show me what the error is.

Re: [PROGRAM] OpenYS - Open Source YSFlight Server!

Posted: Thu Jan 15, 2015 2:04 pm
by Flake
Now Updated to Version 20150116(00)

Changes:
+Fix to STP loading - now loading correctly and doesn't crash when a bad STP is chosen.
+Fix to Aircraft Left messages
+Reformtted the loading info a little bit
+Command line argument for field name now available. See RUN.BAT for info.
+Command line argument for port number now available. See RUN.BAT for info.
+More clear licence information, YSFHQ link and Run.Bat packaged with the program.

Download: https://www.mediafire.com/?3p6w3tj11z500st



Re: [PROGRAM] OpenYS - Open Source YSFlight Server!

Posted: Fri Jan 16, 2015 10:23 am
by Flake
Now Updated to Version 20150116(01)

Changes:
+Airspeed set correctly when joining flight.
+Gear now set correctly when joining flight
+Strength (health) now set correctly when joining flight.
+Server now denies join requests from aircraft it doesn't have.
+Smoke Color changes now supported
+Aircraft weight and fuel is now always set to 100% on joining, not able to select any less until aircraft loading packets are handled. (next release?)
+If a client disconnects while flying, their ghost aircraft is now removed appropriately.


Download: https://www.mediafire.com/?o5g1hquw926d694



[PROGRAM] OpenYS - Open Source YSFlight Server!

Posted: Fri Jan 16, 2015 10:35 am
by Flake
Can anyone (cough, vnaf, venom, crow, dt, etc. cough) please test the program for flight lag purposes? Is the distance lag worse/better/negligable?

[PROGRAM] OpenYS - Open Source YSFlight Server!

Posted: Fri Jan 16, 2015 3:09 pm
by Neocon
Another bug I have noticed that I didn't see above is that it doesn't seem to load all of the installed aircraft in a .lst. I looked at them but didn't see a pattern. Example: The NCA cessnas do not show up, the classics and bush fleets other than one aircraft from each do not show up, but most of the main fleet does show up.

[PROGRAM] OpenYS - Open Source YSFlight Server!

Posted: Fri Jan 16, 2015 6:34 pm
by Neil
I noticed the same issue Patrick has. I also noticed when launching from a ground STP the aircraft spawn at an angle.

Image

Onto formation flight I was testing it with someone and noticed their aircraft was shaking backwards and forwards when I got close, although there were no abrupt lag spikes which often strike in the standard server protocol.

[PROGRAM] OpenYS - Open Source YSFlight Server!

Posted: Fri Jan 16, 2015 11:06 pm
by Scarecrow
I'd be happy to test from a distance lag perspective, however I have no clue how to use it. I start it and the program crashes after implementing metadata.

Image

[PROGRAM] OpenYS - Open Source YSFlight Server!

Posted: Fri Jan 16, 2015 11:50 pm
by Flake
Patrick31337 wrote:Another bug I have noticed that I didn't see above is that it doesn't seem to load all of the installed aircraft in a .lst. I looked at them but didn't see a pattern. Example: The NCA cessnas do not show up, the classics and bush fleets other than one aircraft from each do not show up, but most of the main fleet does show up.
I tried this myself too and noticed I was missing a few. I think it's because I did not capitalise the identify name. For example, I was loading RPFW_F15D but not RPFW_a380ST. I think that's sorted out now.

[PROGRAM] OpenYS - Open Source YSFlight Server!

Posted: Fri Jan 16, 2015 11:57 pm
by Flake
Neil wrote:I noticed the same issue Patrick has. I also noticed when launching from a ground STP the aircraft spawn at an angle.

Image
How qoi. May I ask what map/start position you were using and which heading the aircraft is now facing? It's either a failure to convert the heading value from the start position (only supporting degrees right now, could be why) or it's a failure to convert the start position to a spawn position/orientation on joining flight.

EDIT: Solved - I was doing Angle / 180 * PI for the flight data, which brings it to (0.00-6.28) instead of Angle /360 * 65535 which brings it to (0-65535). So the heading WAS changing but only by like, 0.0009 degrees from north. Lol.
Neil wrote:Onto formation flight I was testing it with someone and noticed their aircraft was shaking backwards and forwards when I got close, although there were no abrupt lag spikes which often strike in the standard server protocol.
They'll still shake a bit like they used to - I haven't made any changes to things like that - any better or worse? I think the difference with my server compared to Soji's is that my program is threaded where his is sequential. Thus is one aircraft lags on Soji's server, ALL aircraft lag because there server doesn't handle their data until the first aircraft catches up.

[PROGRAM] OpenYS - Open Source YSFlight Server!

Posted: Fri Jan 16, 2015 11:59 pm
by Flake
Scarecrow wrote:I'd be happy to test from a distance lag perspective, however I have no clue how to use it. I start it and the program crashes after implementing metadata.
Had a look at the code and the only reason can think of is that it's trying to convert the identify variable to uppercase when there is no data there, null.

I added a condition check to stop this happening but without further details I can't be sure.

In Source, you'll see OpenYS/bin/debug/openys.exe - run that version because the stack tracing will be a bit more accurate in the reporting (will tell me the exact line number in the code) where it all goes wrong. Thanks for your help.

Re: [PROGRAM] OpenYS - Open Source YSFlight Server!

Posted: Sat Jan 17, 2015 12:26 am
by Flake
Now Updated to Version 20150117(00)

Changes:
+Added chat anti-spam - only one message can be sent per second.
+Fix to aircraft spawn headings.
+Fix to loading aircraft with lowercase identify names.
+Crash protection when loading aircraft meta data(?)


Download: https://www.mediafire.com/?o5q3bzv3e4fs8lf

---

Coming soon:
-Spawn velocity is always absolute to North. Fixing this now...



Re: [PROGRAM] OpenYS - Open Source YSFlight Server!

Posted: Sat Jan 17, 2015 12:41 am
by Flake
Now Updated to Version 20150117(01)

Changes:
+Spawn velocity now follows aircraft heading.

Download: https://www.mediafire.com/?3p1ma69vn0jkb7q

---

Coming soon:
+Fixed a bug while loading ground objects from YFS files.
+Now spawning ground objects from YFS files.
-FLD files do not support loading of child sceneries - objects position incorrectly. working on a solution to this.



[PROGRAM] OpenYS - Open Source YSFlight Server!

Posted: Sat Jan 17, 2015 1:07 am
by decaff_42
OfficerFlake wrote:
Changes:
+Spawn velocity now follows aircraft heading.
That made me laugh thinking about someone starting a flight and realizing they are flying sideways at 200 knots :lol: