![]() |
|
Suggestions Post ideas and suggestions here. |
![]() |
|
Thread Tools | Display Modes |
#1
|
|||
|
|||
![]()
The JSON log's are great (why did I only notice this today?), I started writing a parser so that the Big Brother Bot could support and use altitude. The JSON on the logs means this should be a fairly easy task, but I got a bit stuck with the logs not showing what weapon kills people.
For those who don't know Big Brother Bot (Henceforth B3) is an admin tool granting multiple levels of ingame admin controls, temp and permanent bans (across multiple databases), alias and client tracking, chat logging, searching the above logs etc. It has full plugin support allowing people to write their own plugins in python, as well as some common tools like, Echelon (a web interface to control the bot/database, manage bans, etc) and XLRstats(stats tracking and calculation). All of B3's core admin functions will work perfectly fine without this, it can ban people across multiple servers, log all conversations, track aliases and player names. But one of the most popular features of B3 is the XLRstats package that provides automated realtime statistics (skill rating and all that), and this plugin along with others is an absolute no go without the ability to tell what weapon got the kill. (Other plugins also depend on knowing what was the cause of death) I think B3 would be a great little thing for Altitude (the Echelon web admin front end makes it very nice). But without this I don't see a lot of reason to proceed in writing the plugin. It's so close! I just need to see the JSON for what caused the kill (ie, which red perk/primary or secondary function). Again, this only needs to show up in the already existing log.txt, and would be most appreciated! |
#2
|
|||
|
|||
![]()
Before you get any further with your parser - I wanted to refer you to http://www.json.org/ If you scroll down there is already a lot of code done in a variety of languages to parse this JSON. Furthermore, there are also a lot of community programs that have been written to do this parsing and interact with the game. Have you seen the altitude ladder?
You might also look at PALP to see if that could help you at all. In regards to the what killed you - you should be able to figure that out from the logs already. About the only thing you won't know is if a powerup killed a player (this could also be there and I'm missing it). When players first spawn it reports their plane information. It's pretty easy to handle that and store it somewhere for future use. Simply make a map between a UUID and a String that contains the name of the perk they're using (so you'd make 3 - one for a red perk, one for a blue perk, and one for a green perk). When a kill is reported it links to a playerId. You should also have a map to find playerId by UUID and UUID by playerId. By knowing the playerId you can find out what plane they were playing and what plane killed them. ![]() I could be mis-interpreting you so if so I'm sorry. I do hope that helps, though. Feel free to ask if you have any other questions.
__________________
We can has sigs? Last edited by mikesol; 04-22-2011 at 03:56 PM. |
#3
|
|||
|
|||
![]()
Oh yeah, I'm using one of the JSON parser's already. The JSON parser gives you the objects in an easily accessible form, but you still need to do something with them, which is what I am writing.
I actually have seen the altitude ladder and PALP, they both provides a subset of the functions B3 does, but unless I missed something neither of them provides a set of admin functions for the server, as well as everything else. Although if there's really no intrest I don't have to write it, I'm just a bit bored and thought it might be a nice addition. I had realized that you can figure out which red perk someone had, by tracking the activeperk as you suggested, but that is still rather a difference between primary and alternate fire, and it's impossible to tell if it was a power up that got the kill or the player. Indeed a player's suicide with the bomb looks identical to a crash. So yes I can track by active red perk, and by power up pickup, but that still leaves it confusing as to what specifically got the kill. |
#4
|
|||
|
|||
![]()
I think it's almost negligible as to which weapon ultimately got the kill as most kills involve a mix of primary/secondary.
|
#5
|
|||
|
|||
![]() Quote:
I don't know I still think it'd be nice to track kills like that but you do have an excellent point there, and without being to track more finally kill count is sorta useless. Shutting up now ![]() |
#6
|
|||
|
|||
![]()
No need to feel discouraged at all. I understand your point completely. I'm actually working on a program that will do a lot of what you described (and a bit more). I hopefully should have it finished up for an alpha release in the upcoming weeks. It'll be open source so you're welcome to use whatever
![]() At the same time, though, it is a lot of fun to try and write a program like this so I wouldn't necessarily be swayed just because other people have written or are writing programs. Good luck and thanks for the suggestion ![]()
__________________
We can has sigs? |
![]() |
|
|