I am an accountant working full-time (and some). I'm not here as often as I would like to be. Send a message if you need me. There are a few people in the community who can get in contact with me urgently if you need - don't be afraid to ask. I just don't check here as frequently as I used to. Sorry!

Dragon_Mech wrote:are you saying that i could chat with someone who is flying in an OYS server with an IRC client?

Yes, as long as the OYS server is linked to an IRC Server.

I am an accountant working full-time (and some). I'm not here as often as I would like to be. Send a message if you need me. There are a few people in the community who can get in contact with me urgently if you need - don't be afraid to ask. I just don't check here as frequently as I used to. Sorry!

Found a nice lightweight library for reading and writing to xlsx files, so now the settings files can be tabulated and made presentable, and it will be a lot less error prone.

I plan on using the same method for the UserDB when I implement that. Text files are a pain but this just makes it so easy!

---

Aaand done. The first library I used was ExcelPackage and it sucked (Read fine, corrupted saves...) So I moved to EPPlus and it was easy as!

Now I could of used Microsofts own library but that requires you to have Microsoft office installed. Ew. I prefer to give you the freedom of using free software.

I am an accountant working full-time (and some). I'm not here as often as I would like to be. Send a message if you need me. There are a few people in the community who can get in contact with me urgently if you need - don't be afraid to ask. I just don't check here as frequently as I used to. Sorry!

Was a good time putting OYS through its paces today. Lots of flying by lots of people (~7 people at max) just doing rounds and crap on the server, so much so that I had to use wired Internet when the server couldn't handle the limited bandwidth of WiFi.
Either way, there were a lot of logs generated, so I hope these will be of some use to you.

Did anyone happen to get booted from the server? From what I can see all disconnects were failures to get data from the socket (0 bytes returned) which means a dropped connection.

I am an accountant working full-time (and some). I'm not here as often as I would like to be. Send a message if you need me. There are a few people in the community who can get in contact with me urgently if you need - don't be afraid to ask. I just don't check here as frequently as I used to. Sorry!

OfficerFlake wrote:Found a nice lightweight library for reading and writing to xlsx files, so now the settings files can be tabulated and made presentable, and it will be a lot less error prone.

I plan on using the same method for the UserDB when I implement that. Text files are a pain but this just makes it so easy!

---

Aaand done. The first library I used was ExcelPackage and it sucked (Read fine, corrupted saves...) So I moved to EPPlus and it was easy as!

Now I could of used Microsofts own library but that requires you to have Microsoft office installed. Ew. I prefer to give you the freedom of using free software.

Why XLSX? Use LibreOffice/OpenOffice/Gnumeric, PLEASE!
(they all are FREE, CrossPlatform and OpenSource)
Its have *.ODS spreadsheets, that already have many implementations, that can be downloaded on github, sf.net and etc.

I am an accountant working full-time (and some). I'm not here as often as I would like to be. Send a message if you need me. There are a few people in the community who can get in contact with me urgently if you need - don't be afraid to ask. I just don't check here as frequently as I used to. Sorry!

OfficerFlake wrote:Open office allows save and load of xlsx as far as I am aware.

Partly, not fully support. (I have many tests for it and I know)
Thats why I reccomend You use LibreOffice, or maybe it will be better to use Gnumeric, that is small sized and have very cool future as simple adding non-standart functions + it have many advanced diagram settings.
Paper airplane analyze: http://danaleeling.blogspot.com/2014/03 ... lanes.html

The only visible errors logged were socket disconnect errors.
The only real warnings were DC's by failure to send join packets/leave packets and the like.
Lots of "dupe disconnects" so will need to investigate that.

---

The current way OYS sends join instructions is sequentially, one by one through the player list... The problem of course is that the server can lock up waiting for one client to respond and all the other clients are affected.

I will try and re-write the way two-way packet transmissions are done so that it's the responsibility of the receiving clients thread to handle that - this way no bod is slowed down by laggy clients.

Think of it this way - we have 20 users all with pings of 200ms. 20 * 200 = 4000 milliseconds just to get one packet out. in the mean time, more packets are coming in and the system bottlenecks from there - compound repeatedly and it's understandable why some users were seeing data that is 5 minutes old.

I am an accountant working full-time (and some). I'm not here as often as I would like to be. Send a message if you need me. There are a few people in the community who can get in contact with me urgently if you need - don't be afraid to ask. I just don't check here as frequently as I used to. Sorry!

I think I understand what you're saying. One or more clients with high pings will cause everyone to have lag, and it builds over time. I'm guessing that even after those clients disconnect the packets are still be distributed until they all go through, which is why the lag slowly went away but "left the server" messages continued for several more minutes until everything started moving at a better rate?

i noticed while i was monitoring the shakedown through my IRC client, that there were alot of things i was missing in the game server that i was seeing in the IRC chat. i also noticed that players were being listed as being disconnected repeatedly.

OfficerFlake wrote:Did anyone happen to get booted from the server? From what I can see all disconnects were failures to get data from the socket (0 bytes returned) which means a dropped connection.

On that day I don't quite recall whether people were booted, except for LethalDose. There were lots of people, and the only name I recall popping out quite often was his :/
Also, once the console has been running for very long without a reset, it becomes less responsive to join requests ie it takes longer to spawn after a join request has been sent; sometimes spawning becomes impossible. Once the console is reset this problem goes away however.
Player controlled carrier clean up also needs to be more effective. Once the player leaves the carrier, the aircraft data as per normal is removed, but the deck remains. This happens only for the client that spawned in that carrier, so he might crash into an invisible deck that was part of his previous incarnations while others don't. Player controlled carriers are also incapable of flying upside down fully, but I suppose that's YS ¯\_(ツ)_/¯

Changes:
+BIG CHANGE to how data is sent between different clients - ALL Packets input and output are now slaved to the thread of the client responsible for the connection. This should start to solve the problems with bottlenecked packets (I hope!). There are other fixes I can add (such as cleaning out bottle necked packets), but I'll run with this idea first.
+A few locks added to non time critical methods - Connection and Disconnections are now locked and only one client should be able to call at a time for example. This will stop the "Left the server" spam we saw in the fly in.
+Changed the "left the airplane" message to only occur when the vehicle is left, rather than repeatedly.
+Cleaned up a lot of the unused code from Client class, should be easier to follow now.
+Added a "/Test" command to Dev builds only - volatile command, always changing - just to test new code I'm adding in and out of OYS in a more controlled environment.
+DUMP logs are now in xlsx format. much more intense in dumping process, but some elements in the dump removed - will be constantly adding to this over time.
+SETTINGS are now in xlsx format, and settings template is restored if the file is ever deleted. I hope you will find it a little easier to use!
-Removed Nukes

Notes:
Tested briefly on my own PC by myself - can't really do a heavy load test by myself!
I have used more of ReadWriteLockSlim class and I possible may have made a mistake - a simple fix but would crash the program for sure. Let me know if it goes wrong!

As I understand the issue on the weekend was that all clients depended on each other still. This should help solve that issue!

I am an accountant working full-time (and some). I'm not here as often as I would like to be. Send a message if you need me. There are a few people in the community who can get in contact with me urgently if you need - don't be afraid to ask. I just don't check here as frequently as I used to. Sorry!

While I do find your persistence in trying to curb the nuke problem commendable. But let me tell you, we users will ALWAYS find ways to bring it back so that we could abuse it again. It has been done in the past, it will continue to happen in the future.