I'm not sure if this is the right topic but...here it goes. I made a little app to keep track of servers and then decided to make it into something useful. So what it does is monitoring servers, looking for not empty servers and keeps you informed. So whenever there is specific ammount of players, you will get notification (never have to miss a battle).
Note that this is early version and may contain bugs. However, sometimes servers send incorrect player list and all invalid or missing fields are interpreted as "???"
.
Screenshots, the app and source code in attachment.
TODO:
- Custom resolution
- Map catalog and manager
- Custom framerate
- Sound customization and notification
NOTE:
Setting files generated by versions lower than 1.9 are no longer supported. It is recommended to remove those settings and regenerate.
Master server IP has changed. If you can't see any servers running open Master server options and reset settings to default by pressing "Default" button
UPDATE:
Version 1.21_
- Extractor utility is now library (and radically reduces the archive size)
Version 1.20:
- Added new master server
- Added map downloader (to be used with great caution)
Older:
[spoiler]
Version 1.13:
- Added maps.txt: Optional file to override map names, and/or add custom maps
Version 1.12:
- Fixed naboo battle names
Version 1.11:
- Fixed master server IP
- Added ICW5 maps
Version 1.10:
- Fixed server resolver ( ~ )
Version 1.9:
- Added master server settings
- Added correct FPS settings
- Increased name limit to 17 characters (Experimental - longer nicks rewrite controls)
Version 1.8:
- Added game settings window
- Added server ping
- Added sounds (+ default sounds)
- Added nick changer (profile cloner)
Version 1.7:
- Option to join server with own profile
Version 1.6.1:
- NPO fix (~)
Version 1.6:
- Server menu
- Filtering empty servers
Version 1.5:
- Automatic startup (Windows only)
- Manual update button
- Start minimized option
Version 1.4:
- Fixed game server resolver (~^)
- Added some colors
- Custom limits for each servers
- Forgot the rest
Version 1.3:
- pure java (no more libraries)
- dat compatibility
Version 1.1:
- fixed 1-player bug
- added debug
[/spoiler]
Nice one.
I'm actually coding the same thing in C++ :XD: :cheers:
But now I have more time to get the SWBFadmin done.
Nice work Encorn--and welcome to the site. :cheers:
Good job !
Really nice
Nice work, should be especially useful now we can't see who's playing with X fire.
I have finally made it work without the libraries. :cheer:
Quote from: Encorn5 on June 26, 2015, 06:41:53 AM
I have finally made it work without the libraries. :cheer:
Very nice :cheers:
This tool will be very useful. Thanks for sharing this with the community. :cheers:
If you're looking to create an upgraded version, a manual refresh button would be useful. :)
This is fantastic sir! Works quite well for me right out of the box. That says a lot coming from me right now, as I'm having a ton of networking issues to fix on this machine. So if it works on this thing, you know it's doing it's job.
Just a suggestion for a feature though, maybe besides the simple ignore option maybe have a secondary option enabled to inform you of change on a specific server. Like have the initial message of servers with X players, but then maybe have the option of running silent till the server gains any more players. I guess just additional options to be able to watch for but since I know this is an early version it's all good.
I've gotta agree with {PLA}gdh92 though, this has gotta be one of the best things I've seen since the whole thing with Xfire shutting down.
Oh cool, I just got done with my Java programming classes for school (I guess it counts as a second language?).
I was having a bit of issues with networking, but it was fun after getting a handle on the stuff.
Welcome to the website by the way!
Thanks for replies. I have added some requested features, feel free to suggest more :moo: (wtq is this cow...).
:cheers:
This is great. Now if I could get this to automatically run on startup and minimize to tray we're set!
Most the other game trackers/overlays don't support the first SWBF, so this is perfect.
nice work, could you add features later to disable the automatic update except when manually clicked, and maybe a way to show the server TPS? this tool is quite impressive :cheers:
Server TPS is not contained in query, so there is no way to get it this way.
Added automatic startup (windows only), minimized startup and manual update button.
When ever I try and run the program, it doesn't show a server list. Everything else "seems" to be functioning. So I ran the debugger that you included (good idea), the result of it is attached. Does anyone have an idea what the issues is? Is it a firewall or network issue?
Note: The last section of the error in the screenshot repeats every time it tries to refresh.
Quote from: Norwood on June 27, 2015, 10:37:20 AM
When ever I try and run the program, it doesn't show a server list. Everything else "seems" to be functioning. So I ran the debugger that you included (good idea), the result of it is attached. Does anyone have an idea what the issues is? Is it a firewall or network issue?
Note: The last section of the error in the screenshot repeats every time it tries to refresh.
Try runnig the latest version (1.6.1). I have added aditional debug information but firewall should not be the problem.
Okay, I got the newest version, screenshot attached. Every time it refreshes is adds another line.
It means that response from master server was received but was incorrect. Since it's timed tcp based connection it could be caused by slow connection, or platform-dependent malfunction. Try running the version in attachment, and pm me the output file debug_data.bin
You can now use my app to join servers as well. This is what I call successful day O.o :cheer:
Quote from: Encorn5 on June 27, 2015, 03:44:59 PM
You can now use my app to join servers as well. This is what I call successful day O.o :cheer:
Nice addition :tu: The new server join feature is awesome, though it launches battlefront.exe directly which skips belk's custom launcher and locks the FPS to 30. Can you add another Join button for launching the "SWBF1 launcher.exe" to play with unlocked framerate?
Would it also be possible to add a custom sound notification feature? You can select a wav/mp3 file it would then play for alerting, with loop or no loop.
The problem with the launcher is, that it has the commandline parameter in its .ini file.
Encorn5's tool uses the commandline parameter /connect to connect to a server.
It would add the parameter to belks swbflauncher, not to ini file.
But maybe there's the key. Temporarily edit the .ini file and add /connect to it's end.
:cheers:
I think it should have a "ping" column as well.... but it's just a suggestion lol
Hey Encorn,
Would it be possible to build this for linux so that we can create our own leaderboard (like the old days) ?
Quote from: Led on June 28, 2015, 06:05:07 AM
Hey Encorn,
Would it be possible to build this for linux so that we can create our own leaderboard (like the old days) ?
If you want web frontend app, there is php version. There is no reason this wouldn't work on any machine running java.
Quote from: Encorn5 on June 28, 2015, 06:51:52 AM
If you want web frontend app, there is php version. There is no reason this wouldn't work on any machine running java.
I guess what I am getting at is that is would need a tie in to a database for statistics.
Quote from: Led on June 28, 2015, 08:33:48 AM
I guess what I am getting at is that is would need a tie in to a database for statistics.
Well, storing the data in DB is very easy at this point. However there are some data limitations, such as player list can't be stored as it's unverified and often malformed.
Quote from: Phobos on June 27, 2015, 10:58:39 PM
Nice addition :tu: The new server join feature is awesome, though it launches battlefront.exe directly which skips belk's custom launcher and locks the FPS to 30. Can you add another Join button for launching the "SWBF1 launcher.exe" to play with unlocked framerate?
I have tried to manually adjust the TPS value (in profile file) and it made me harmless ingame (no shooting, no jumping, no healing)
Edit: There are controls exactly 20 bytes after your name. I have tried the limits and it resulted into removing some of the controls
Added sound notifications, custom nicks (profile cloner) and custom TPS (experimental).
Quote from: Encorn5 on June 28, 2015, 03:05:40 PM
Added sound notifications, custom nicks (profile cloner) and custom TPS (experimental).
TPS is a server setting but FPS can be uncapped on the client by /noframelock
Corrected FPS parameters, added Master server settings (it is recommended not to change any of it).
Server resolving is now working again. From now on, I'm not working on this project anymore. All sources are included for those who might want to see how it works.
Big thanks to Encorn5 for helping me get mine working! :cheers: After a little back and forth by PM, he helped me get it working. 8)
Adde ICW5 maps. There is one conflict with map kam2 from older ICWs
Great stuff! I tried to change profile name, but it says failed to save profile. I run as admin, maybe it was a privilege thing, I thought, but same thing. Weird thing is, while there's not new profile in the savagames folder, your app is showing a new profile name as another available profile.
Quote from: codergames on July 17, 2015, 02:33:14 AM
Great stuff! I tried to change profile name, but it says failed to save profile. I run as admin, maybe it was a privilege thing, I thought, but same thing. Weird thing is, while there's not new profile in the savagames folder, your app is showing a new profile name as another available profile.
As long as you have correct paths set, the profile file should be created. If there is no other profile available, default settings are used (~ my defaults).
thanks for adding the icw5 maps :tu:
there is a slight bug with the stock map localization. it shows nab1 as Theed.
nab1 should be Plains, nab2 = Theed.
Quote from: Phobos on August 08, 2015, 03:09:51 AM
there is a slight bug with the stock map localization. it shows nab1 as Theed.
nab1 should be Plains, nab2 = Theed.
Fixed as of 1.12.
Thanks for reporting that.
As of 1.13, you can override and/or add custom maps in optional file named maps.txt
If anyone cares enough, and can provide website hosting (with php support), we can make global battle list (and automatic listing and instant download/install of the missing items, to make more amazing maps available to public.
Quote from: Encorn5 on August 16, 2015, 11:19:40 AM
If anyone cares enough, and can provide website hosting (with php support), we can make global battle list (and automatic listing and instant download/install of the missing items, to make more amazing maps available to public.
Would you implement it on a linux or windows environment?
I may be able to get you a linux box to test things out.
Quote from: Led on August 16, 2015, 01:03:53 PM
Would you implement it on a linux or windows environment?
Thats the thing about php and java, it works on all platforms. The app itself does too, but some features are not implemented for linux (like start at boot time). I'm not sure how swbf1 works on linux platforms, but using wine or other emulating software to provide windows-like environment.
The hard thing is to collect all available maps and make a list. I can make some interface for map storage manipulation, but i guess the maps take some space.
Quote from: Encorn5 on August 16, 2015, 01:21:28 PM
The hard thing is to collect all available maps and make a list. I can make some interface for map storage manipulation, but i guess the maps take some space.
Even if we only had certain maps--such as one for mod map night or the next ICW, etc. then it would be very helpful for players.
I run SWBF in WINE but I don't think we would need to run SWBF on the same machine as the auto-downloader.
Maybe we could ask phobos to make a custom shell to link to the download site.
Quote from: Led on August 16, 2015, 02:39:38 PM
Even if we only had certain maps--such as one for mod map night or the next ICW, etc. then it would be very helpful for players.
I run SWBF in WINE but I don't think we would need to run SWBF on the same machine as the auto-downloader.
Maybe we could ask phobos to make a custom shell to link to the download site.
Well, if you can run java, then you can find battlefront folder (battlefront.exe file) and use the app to download maps to the desired folder. Other features, like joining servers are unavailable on linux at the moment (unless you run the app under wine). All it takes is a word and it can be ready to go by tomorrow night.
I will send you a PM with log in information.
As of 1.20, there is new Master server to handle custom server maps. Using this server, the maps are downloaded and installed automatically using the "Join" button. The supported servers are denoted with the blue font color. As the tests are still pending, there might be few bugs in the system.