PyRCon: Procon Compatible Layer Server Project (ALPHA)
-
- New to forums
- Posts: 9
- https://www.youtube.com/channel/UC40BgXanDqOYoVCYFDSTfHA
- Joined: Wed Jan 18, 2012 11:28 am
PyRCon: Procon Compatible Layer Server Project (ALPHA)
Due to my dissatisfaction with using procon, I've spent the last week or so working on a replacement layer server / evented plugin framework for BF3 that aims to be compatible with existing tools that use procon.
https://github.com/eaceaser/pyrcon
The project is currently in alpha, but I've been using it to admin my server, and it works well enough that I've destroyed my Windows EC2 instance and stopped using procon.
Right now the only administration clients that I've been using are a simple CLI tool called pyrconc that is not 100% feature complete, and the Procon iphone app. Once I finish pyrconc, I'm planning on a project to add a web interface on top of PyRCon.
There is very little documentation right now, which is the big item on my TODO list. Also, there are still a great many bugs But I figure there may be a few intrepid souls out there that hate the idea of using procon and may want to give this a shot and/or lend a hand.
If there is enough interest I'll keep this thread alive with the various milestones I hit along the path to production readiness.
https://github.com/eaceaser/pyrcon
The project is currently in alpha, but I've been using it to admin my server, and it works well enough that I've destroyed my Windows EC2 instance and stopped using procon.
Right now the only administration clients that I've been using are a simple CLI tool called pyrconc that is not 100% feature complete, and the Procon iphone app. Once I finish pyrconc, I'm planning on a project to add a web interface on top of PyRCon.
There is very little documentation right now, which is the big item on my TODO list. Also, there are still a great many bugs But I figure there may be a few intrepid souls out there that hate the idea of using procon and may want to give this a shot and/or lend a hand.
If there is enough interest I'll keep this thread alive with the various milestones I hit along the path to production readiness.
Re: PyRCon: Procon Compatible Layer Server Project (ALPHA)
Neat! Thanks for the tool and for posting here, eaceaser. We have a lot of lurkers on these boards, so even if you don't see too many direct responses, I'm sure you'll have interested parties .
If you haven't already posted there, http://www.fpsadmin.com/forum/forumdisplay.php?f=108 might also be a good place to find interested developers and get feedback. I know that DICE endorsed the "BF3 Remote Admin Tool Support" section and makes some posts there.
If you haven't already posted there, http://www.fpsadmin.com/forum/forumdisplay.php?f=108 might also be a good place to find interested developers and get feedback. I know that DICE endorsed the "BF3 Remote Admin Tool Support" section and makes some posts there.
Re: PyRCon: Procon Compatible Layer Server Project (ALPHA)
I haven't posted anywhere else yet. Thanks for the tip to post it on fpsadmins! I will do that soon.
Re: PyRCon: Procon Compatible Layer Server Project (ALPHA)
Looks interesting!
Nice job
Nice job
@Kraze^NFo> Juski has a very valid point
@Juski> Got my new signature, thanks!
@Kraze^NFo> Out of context!
@Juski> Doesn't matter!
@Juski> You said I had a valid point! You can't take it back now! It's out there!
@Juski> Got my new signature, thanks!
@Kraze^NFo> Out of context!
@Juski> Doesn't matter!
@Juski> You said I had a valid point! You can't take it back now! It's out there!
Re: PyRCon: Procon Compatible Layer Server Project (ALPHA)
I just added some slightly better docs to make it clearer how things work.
Re: PyRCon: Procon Compatible Layer Server Project (ALPHA)
If this turns out to be stable enough for long term use I will let customers know about this.
@Kraze^NFo> Juski has a very valid point
@Juski> Got my new signature, thanks!
@Kraze^NFo> Out of context!
@Juski> Doesn't matter!
@Juski> You said I had a valid point! You can't take it back now! It's out there!
@Juski> Got my new signature, thanks!
@Kraze^NFo> Out of context!
@Juski> Doesn't matter!
@Juski> You said I had a valid point! You can't take it back now! It's out there!
Re: PyRCon: Procon Compatible Layer Server Project (ALPHA)
How will you differentiate yourself from procon? In other words how will it be different or better?
Re: PyRCon: Procon Compatible Layer Server Project (ALPHA)
I have a little 'goals' section in my readme that is supposed to address this, but I'll expand it.woowoo wrote:How will you differentiate yourself from procon? In other words how will it be different or better?
#1: Crossplatform. Procon is .net/C# which severely limits where you can run the layer server. This is the biggest issue I think. I'm sure you can run procon in Mono, but that is a pretty heavyweight requirement, and I bet you'd run into some significant issues with how it deals with plugins. On the other hand PyRCon is written in python and uses libraries that are cross-platform, so it can be run from pretty much any system. (Mac OS X, Linux, BSD, Windows)
#2: Lightweight. Procon is not only a layer server, but also a GUI with tons of features (map overlay stuff, plugin downloader, etc.). I firmly believe that a more modular design where extra features like this are written as separate components that can be mixed and matched is better for server administrators. Its far more likely that a server will be run from a headless or lower powered machine / VPS than from a powerful workstation.
Case in point: To run procon against my BF3 server I had to spin up an EC2 instance running Windows server. My only other alternative was renting a procon server from someone who had a dedicated Windows box (expensive), and thus giving up some control of how I wanted to deploy and run the server. Managing Procon through Remote Dekstop on EC2 was an extremely painful experience, as things slowed down dramatically when it had to redraw the UI, etc.
By design PyRCon is a console server/daemon process that is communicated with via external clients.
#3: Better plugin / module API. Writing a plugin for Procon is currently a terrible experience. Rather than exposing an API and providing a DLL that you can link against, Procon requires plugins to be written as C# code that is compiled at run time. Procon even invented their own C# preprocessor flag (#include) to get around the fact that they do this really weird runtime compilation stage that doesn't support multi-file compilation. Although you CAN build externally in order to debug, you still can't do things like link against another library, have a multi-file build process, or actually know whether or not your plugin will work until its run in procon, which, because of points #1 and #2, can be an annoying, difficult, or impossible process depending on whether you have remote desktop access to the server that is running it.
PyRCon doesn't have to deal with alot of these issues because Python is an interpreted language. But I don't want to restrict plugins from not being able to link against other libraries, etc.
Hopefully this begins to answer your questions. I'll reformat this and add it to the README.
Re: PyRCon: Procon Compatible Layer Server Project (ALPHA)
sounds and looks sick, nice work
-
- This is my homepage
- Posts: 1573
- Joined: Sun Jun 26, 2011 8:03 am
Re: PyRCon: Procon Compatible Layer Server Project (ALPHA)
Took a look but no clue on how to install.
Beyond my skills at the moment.
Beyond my skills at the moment.
Visit gspreviews.com And Rate & Review Your Old & Current GSP's
Find Your GSP Coupons at gspreviews.com/coupons/
Find Your GSP Coupons at gspreviews.com/coupons/
Re: PyRCon: Procon Compatible Layer Server Project (ALPHA)
Yeah due to the rapid pace of development there is no real "install" process yet outside of downloading and running the code. I'll put together a quick start guide soon..=QUACK=.Major.Pain wrote:Took a look but no clue on how to install.
Beyond my skills at the moment.
Re: PyRCon: Procon Compatible Layer Server Project (ALPHA)
cant wait to see the finished product.
Re: PyRCon: Procon Compatible Layer Server Project (ALPHA)
+1 for python
will take a look very very shortly, thanks for your efforts.
will take a look very very shortly, thanks for your efforts.
Re: PyRCon: Procon Compatible Layer Server Project (ALPHA)
Been a little busy with work over the past few week, so I haven't really done much outside of add docs. I'll be able to spend alot of time this weekend working on it so I'll try to have a 'release' by the end of the weekend.
Re: PyRCon: Procon Compatible Layer Server Project (ALPHA)
I just edited the docs a bit to provide a quick start guide, and posted about the project on fpsadmin.com