fodev.net
Other => FOnline:2238 Forum => Archives => Tools and Modifications => Topic started by: kyborekcz on March 06, 2010, 05:50:56 pm
-
FO Server AutoChecker 3 (final)
This program is obsolete, for better comfort use Tiny status tool. (or Even tinier tool)
Hello, we all know that server is down very frequently, if you dont like repetitive tries to connect, you can use this tool.
This tool allows you to check server status automatically at a desired interval. There are also some options that determines what should happen when the server becomes online.
They are (they happen at this order):
1)Flash in taskbar (applies until tool get the focus)
2)End autochecking
3)Alert with message
4)Focus on game (if its running)
5)Run the game (If its at other place than default, you have to choose the location)
6)Close the tool
7)Apply to "Check once" (makes all above except 1) and 2) work for "check once" button)
The tool will continue trying until you stop it or close it or server becomes online and 2) is checked.
You can also check server status instantly and once with "check once" button.
Version 3 (final)
http://www.datafilehost.com/download-eb1c2f96.html
There is packed example shortcut that shows you possible arguments(for example when you use tla and rus mod, rus have to be before tla)
Added number of online players and for 2238 uptime of server. Now server status should be 100% accurate and so this is final version, maybe i will be able to make widget-like version.
New version supports checking of server "the life after" and you can even switch to russian language! (when checking both TLA or 2238)
Thanks to Chuvachello for great translation to russian, also thank to kind people in #russf IRC channel.
If you want to switch it for TLA or russian version or czech version add commandline arguments tla, rus or cz (or combined), notice tla and rus is not same as -tla and -rus.
Easiest way for adding arguments is to make shortcut and write arguments into property "target" just at end (path must be ""ed)
Fell free to pass link to this tool to your friends because it is now all-round tool for both FOnline games
possible arguments: cz, rus, tla
Feel free to post some feedback, or suggestions. (or tell me if it happens to be just another copy of some program)
-
nice :)
-
I will try to update it a bit and make it lag-free, wont be so easy though because its hard from program to check status when server is off...
-
I will try to update it a bit and make it lag-free, wont be so easy though because its hard from program to check status when server is off...
Just try open a socket connection to IP:Port of server, with a timeout of let's say 10 seconds, if server not respond, it's offline. No need to do anything else. It's not hard in any language actually. Tip: don't do it in the GUI thread, spawn seperate thread.
-
Oh yes you are right, threading is simple solution so now it uses another thread to check connectivity.
Also i added timeout which is 5 seconds. I noticed that when server is online, my app find it out much much faster than original client. thats why timeout can be "only" 5 secs.
Added some new features, tell me what you think now (f.e. is the opacity is worth the spot?)
And i am happy you enjoy it
-
good work
work property
-
Finally solved problem with hosting site (used another :D) Now i added new version which propably cant be improved further and so i want to ask you one thing. If anyone can speak russian and plays TLA, please post this on russian forum too, thanks
-
For correct ping send 4 bytes to server - 0xFFFFFFFF, than receive 16 bytes, where 4 is current online, 4 bytes is uptime in seconds, others 8 is reserved. After server drop connection.
-
thank you very much, i will try to implement it.Could this even work correctly when server hangs? I mean that it show online but players are not able to log in (very rare ocassion, but could it be fixed with this?).
-
For correct ping send 4 bytes to server - 0xFFFFFFFF, than receive 16 bytes, where 4 is current online, 4 bytes is uptime in seconds, others 8 is reserved. After server drop connection.
Works like a charm. Thanks a lot!
-
Good job, thanks! But, could you make such thing in shape of widget (or gadget) for Vista/Windows 7 OS? That would be really-really helpful, and will make a lot of people much happier ;)
-
Currently i am working on implementing server communication, i am almost done and i only need to find time for that. It will be propably finished in this week .
Making it as widget (gadget) for windows 7 or vista could be problem as I use windows XP myself so i dont think it will be technically possible. I will try to find out what you mean, but if you are talking only about design, then you can send me some image of what do you imagine and i will think about it.
One more thing is that i am going to add CZECH TRANSLATION for this tool with next version.
-
It seems like you can develop that gadget, without having Windows 7/Vista installed on your PC. Here (http://msdn.microsoft.com/en-us/library/dd370867(VS.85).aspx#development) and here (http://www.microsoft.com/windows/windows-vista/features/sidebar-gadgets.aspx) you can find quite a useful information about it. I hope it will help you.
And on that image beyond, is that, what that gadget for Fonline could look like (For example, in that case, I just copied standard server checker from that forum). If you need to make a bigger image of that thing, or you would prefer another design - just PM me.
(http://www.imagepost.ru/thumbs/71/example.jpg) (http://www.imagepost.ru/?v=71/example.jpg)
-
Could this even work correctly when server hangs?
Works correctly, just tested. When using old method (just opening connection on IP and port), server still acts like online (however it wasn't possible to connect). When using "Cvet's" method, this hang status can be recognized by observing that server isn't sending any data (about number of connected players or uptime) back. In java, it gives me java.net.SocketException: Connection reset.
When "regulary" down, it throws SocketTimeoutException
-
Something similar i in C# too, dont worry, this means that you connected. And after it you wanted to send or receive data but server became off meanwhile...
Try a bit of googling :) http://www.jguru.com/faq/view.jsp?EID=237557
-
Something similar i in C# too, dont worry, this means that you connected.
When talking about network communication - yes. But both statuses (exceptions) mean that user is unable to login, i.e. server status should be treated as offline.
I just wanted to answer your question.
-
Oh i am dumb... did not reckognize difference between answer and question =)
Uploaded final version, previous version“s download count was:
version 2 37 downloads (http://www.datafilehost.com/download-4f7bd6f2.html)
version 1 13 downloads
I will add some screenshots later
-
From today i officially started to work on tiny version of this, it will not be official gadget/widget, but i think it could be usefull
EDIT: I found out that server TLA changed IP and so my tool doesnt work for that server now. In new version i will make program load IPs and ports from external file that user can easily rewrite in case of another change and so people wont have to download new version. Also it will have some new features and some will be removed. For example changing language and adding translations will be very easy (Now, translations can be added without any change inside the program).
For now here is little taste of how small can new version be (dont think about colors, thats just because i modified my windows settings) :
(http://img91.imageshack.us/img91/1434/tinystatus.png)