enemies = Paraya AiwendilYou enemy'd yourself? =o
1) How about making use of qt or gtk, for a nicer appearance?Oh, I would love to use Qt. Tk/Tkinter is something completely new for me, never used it before. It is...a bit limited. Ok, not really limited but doesn't offer everything I'm used to from Qt. But the problem with Qt is that you will need the libraries and the python bindings installed. Tkinter comes with python, so the python interpreter is all windows users have to install. I guess I can ask linux users to go to the package manager and install Qt and PyQt, but I have no clue how much work that would be on windows. (and the same for gtk and PyGtk)
2) What I always wanted to have for the ingame buddylist is an option to add custom info to anyone buddied. So how about this? The window could be split horizontally, to display custom info for friends/enemies?Yes, one of the planned features I want to add. No idea yet how I do it, but last name, race, gender, guild and comments for names a planned...if I find the patience to do it. ;)
Quoteenemies = Paraya AiwendilYou enemy'd yourself? =o
xD
I guess I can ask linux users to go to the package manager and install Qt and PyQtHm.. maybe there could be some check for qt and gtk, and in case of one of each this could be set in a conf file. The script would always start with checking for a definition in the conf first. If it is empty, it could check for qt/gtk on the system, if it is one of each it could make use of the according one. In addition there could be a third value, like "none", which would cause the script to start using tkinter (for Win and Mac)?
But the problem with Qt is that you will need the libraries and the python bindings installedOn the other hand, or for a start:
Yes, one of the planned features I want to add.Awesome o/
It would be neat if it had a feature for adding user defined fields of several types .. like int, text, boolean
- The text window with the player names messes up sometimes. It's usually correct again after the next update of the player list. I guess some multi-threading problem.
--- /tmp/PS-PlayerS.py 2009-10-19 16:23:24.000000000 +0200
+++ ./PS-PlayerS.py 2009-10-21 05:55:59.000000000 +0200
@@ -637,17 +637,17 @@
self.text.delete("1.0", Tkinter.END)
# only write the sections that contain any names
if len(friendslist) > 0:
- self.text.insert(Tkinter.CURRENT, 'Friends:\n', "FriendsTopic")
- self.text.insert(Tkinter.CURRENT, friendstext, "Friends")
+ self.text.insert(Tkinter.END, 'Friends:\n', "FriendsTopic")
+ self.text.insert(Tkinter.END, friendstext, "Friends")
if len(enemieslist) > 0:
- self.text.insert(Tkinter.CURRENT, 'Enemies:\n', "EnemiesTopic")
- self.text.insert(Tkinter.CURRENT, enemiestext, "Enemies")
+ self.text.insert(Tkinter.END, 'Enemies:\n', "EnemiesTopic")
+ self.text.insert(Tkinter.END, enemiestext, "Enemies")
if len(GMslist) > 0:
- self.text.insert(Tkinter.CURRENT, 'GMs:\n', "GMsTopic")
- self.text.insert(Tkinter.CURRENT, GMstext, "GMs")
+ self.text.insert(Tkinter.END, 'GMs:\n', "GMsTopic")
+ self.text.insert(Tkinter.END, GMstext, "GMs")
if len(playerlist) > 0:
- self.text.insert(Tkinter.CURRENT, 'Players:\n', "PlayersTopic")
- self.text.insert(Tkinter.CURRENT, playertext, "Players")
+ self.text.insert(Tkinter.END, 'Players:\n', "PlayersTopic")
+ self.text.insert(Tkinter.END, playertext, "Players")
self.text.config(state=Tkinter.DISABLED)
# and restore the position of the scrollbar again
self.text.yview(Tkinter.MOVETO, pos[0])
| A screenshot for Linux: (http://img697.imageshack.us/img697/7355/shot1.png) | And a screenshot for Windows: (http://img689.imageshack.us/img689/2153/shot2b.png) |
| The complete archive with everything included. (23MB) | (.tar.gz) (http://gruenprint.de/nakem-repos/PS-PlayerS-qt/full.tar.gz) (.zip) (http://gruenprint.de/nakem-repos/PS-PlayerS-qt/full.zip) |
| The windows binary and the Instructions. (9MB) | (.tar.gz) (http://gruenprint.de/nakem-repos/PS-PlayerS-qt/win.tar.gz) (.zip) (http://gruenprint.de/nakem-repos/PS-PlayerS-qt/win.zip) |
| The linux binary and the Instructions. (14MB) | (.tar.gz) (http://gruenprint.de/nakem-repos/PS-PlayerS-qt/lin.tar.gz) (.zip) (http://gruenprint.de/nakem-repos/PS-PlayerS-qt/lin.zip) |
what about a guild entry too? :)(http://img340.imageshack.us/img340/5103/infowindow.png)
The good old XML report had its advantage that it contained the guild information about the players currently being online. The player stats HTML page doesn't.I guess that's one of the reasons why it's not available anymore...back then the xml report also showed the secret guilds of players. And I prefer to have the script an IC tool, meaning the user chooses what infos get in there. This way you can add only the infos your have and keep it as a reminder for the infos you know ICly about other characters.
statuspage = http://laanx.fragnetics.com/index.php?page=char_stats
tostatuspage = http://planeshift.ezpcusa.com/index.php?page=char_stats
Then it should use the ezpcusa status page (http://planeshift.ezpcusa.com/index.php?page=char_stats) for the player list.Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib/python2.6/threading.py", line 522, in __bootstrap_inner
self.run()
File "PS-PlayerS.py", line 359, in run
self.parse()
File "PS-PlayerS.py", line 395, in parse
self.guicallback(self.players)
File "PS-PlayerS.py", line 1167, in updateText
self.playerCount['text'] = 'Players Online: ' + str(len(players))
File "/usr/lib/python2.6/lib-tk/Tkinter.py", line 1209, in __setitem__
self.configure({key: value})
File "/usr/lib/python2.6/lib-tk/Tkinter.py", line 1202, in configure
return self._configure('configure', cnf, kw)
File "/usr/lib/python2.6/lib-tk/Tkinter.py", line 1193, in _configure
self.tk.call(_flatten((self._w, cmd)) + self._options(cnf))
TclError: out of stack space (infinite loop?)
| Linux | Windows |
| (http://img222.imageshack.us/img222/1600/shot3.png) | (http://img230.imageshack.us/img230/7607/shot1m.png) |
| The binaries for Linux and Windows together with the source code and the documentation. | 24MB | (.tar.gz) (http://www.gruenprint.de/nakem-repos/PS-PlayerS-qt-0.03/full.tar.gz) (.zip) (http://www.gruenprint.de/nakem-repos/PS-PlayerS-qt-0.03/full.zip) |
| The binary for Linux and the documentation. | 15MB | (.tar.gz) (http://www.gruenprint.de/nakem-repos/PS-PlayerS-qt-0.03/lin.tar.gz) (.zip) (http://www.gruenprint.de/nakem-repos/PS-PlayerS-qt-0.03/lin.zip) |
| The binary for Windows and the documentation. | 9,1MB | (.tar.gz) (http://www.gruenprint.de/nakem-repos/PS-PlayerS-qt-0.03/win.tar.gz) (.zip) (http://www.gruenprint.de/nakem-repos/PS-PlayerS-qt-0.03/win.zip) |
# hardcoded config
CONFIGDIR = '~/.PStools'
CONFIGFILE = CONFIGDIR + '/PS-PlayerS.py.ini'
XMLINFOFILE = CONFIGDIR + '/playerinfo.xml'
PLAYERTAGCOUNT = 192
REPORTTIMECOUNT = 98
REPORTTIMEOUTMSG = 'Timeout!'
RACES = ("unknown", "Ylian", "Xacha", "Dermorian", "Nolthrir", "Stonebreaker", "Hammerwielder", "Lemur", "Kran", "Diaboli", "Enkidukai", "Klyros", "Ynnwn")
| Linux | Windows |
| (http://img229.imageshack.us/img229/9418/shot1g.png) | (http://img704.imageshack.us/img704/9711/shot2.png) |
sudo port selfupdate
sudo port install py26-pyqt4
| The binaries for Linux and Windows together with the source code and the documentation. | 24MB | (.tar.gz) (http://sourceforge.net/projects/psbuddylist/files/0.03-qt3/full.tar.gz/download) (.zip) (http://sourceforge.net/projects/psbuddylist/files/0.03-qt3/full.zip/download) |
| The binary for Linux and the documentation. | 15MB | (.tar.gz) (http://sourceforge.net/projects/psbuddylist/files/0.03-qt3/linux.tar.gz/download) (.zip) (http://sourceforge.net/projects/psbuddylist/files/0.03-qt3/linux.zip/download) |
| The binary for Windows and the documentation. | 9,1MB | (.tar.gz) (http://sourceforge.net/projects/psbuddylist/files/0.03-qt3/windows.tar.gz/download) (.zip) (http://sourceforge.net/projects/psbuddylist/files/0.03-qt3/windows.zip/download) |
[qt]
style=<the theme you want>
- If you have KDE installed, you can set the kde theme to the theme you want.
The source code and the documentation. ~136KB (.tar.gz) (http://sourceforge.net/projects/psbuddylist/files/0.04-qt/source.tar.gz/download) (.zip) (http://sourceforge.net/projects/psbuddylist/files/0.04-qt/source.zip/download)Otherwise, feel free to browse the code and build your own executables: http://psbuddylist.svn.sourceforge.net/viewvc/psbuddylist/
| The source code | ~136KB | (.tar.gz) (https://sourceforge.net/projects/psbuddylist/files/0.04-qt/source.tar.gz/download) (.zip) (https://sourceforge.net/projects/psbuddylist/files/0.04-qt/source.zip/download) |
| The Windows binaries | 10.3MB | (.tar.gz) (https://sourceforge.net/projects/psbuddylist/files/0.04-qt/windows.tar.gz/download) (.zip) (https://sourceforge.net/projects/psbuddylist/files/0.04-qt/windows.zip/download) |
| The Linux binaries | 15.2MB | (.tar.gz) (https://sourceforge.net/projects/psbuddylist/files/0.04-qt/linux.tar.gz/download) (.zip) (https://sourceforge.net/projects/psbuddylist/files/0.04-qt/linux.zip/download) |
<?xml version="1.0" ?>
<CharacterInfo><Character [...]/><Character [...]/><Character [...]/><Character [...]/><Character [...]/><Character Gender="(If anyone is up to host this for easier downloading do so...I'm not going to ask the person who ...)
And stop whining.