Long Term Stats [Mod Development Journal]

Volt Cruelerz

Legions Developer
NWjrd.gif


Long Term Statistics is a modification to Legions: Overdrive by us here at Fallen Development. Further information regarding the mod may be found in the future by visiting here.

Below is an image of the current version of the GUI when viewing your stats outside the game.

LTSTeaser.png


The stats data is stored in a specialized .kbe encryption format Shisk and I designed. Screwing with it will make the mod not like you and will disable it. Even if you try messing with things now, when we eventually move to server-based stats, you will no longer be able to do so and will lose out on various improvements. In other words, it's just a bad idea. If you're still not convinced it's a waste of your time, take a look at mine.

If you still feel the burning desire to make yourself seem better than you are, you can modify the Achievements.txt file all you want because the type of data input into it is not compatible with the .kbe format and is thus unencrypted and will be such at the final release.

Progress and Plans:
The most recent version of our internal beta build is V1.830. V1.790 was alpha and V2.00 will be the public release of the mod. The only remaining parts (aside from any bug fixes we make along the way) are a few more art elements we'll be adding.

The Team:
Lead Programmer: Volt Cruelerz
Programmer: 3lionz
GUI Programmer: The Disaster
Code Editor: Shisk
Artist: Enryu
Assistant Artist: Dabbleh

Special Thanks:
  • RockeyRex
  • Labrat
Alpha Testers:
  • PWA
  • Armageddon
  • Poponfu
Beta Testers:
  • Voltage
  • Fireblasto
  • Loc
  • Piggeh
  • Poiuyt580
Here's just a little sample of some art we've got. It's for the achievement Human Rights Violation (5000 total kills).

HumanRightsViolation.png
 

Immanent

Member
For the stat tracking mod, we intend to allow players to see which weapon they are best with. To do so, we need to look at which weapon gives them the most kills, which obviously requires knowing when in fact the player performs a kill. Hence the request for this script.

All that is needed of whosoever attempts this is to make something that will fire something (say, an echo() command) when the player uses the RL (or whatever weapon the modder may happen to choose instead) kills an enemy player.

The basic code would likely consist of the following:

addMessageCallback(x,y);
function z(){
//code
echo("RL killed the target");
//code
}

I'm not personally familiar with this sort of thing which is a good chunk of the reason I'm attempting to outsource this script. Also, obviously whoever does this will be mentioned in the credits of the mod upon it's completion. The reason I'm only asking for a single weapon is that once we have the code for the first one, the others should be significantly easier to make, though obviously I wouldn't object to someone doing all of them ;)

Oh, and since there haven't been any spoilers given yet for the mod... Here's one...

LegionsCareerTrackerV1.png

Staying up late to work on this eh?
Nice.

Are you going to post the meanings and the equivalents for the ranking system if this script is released?

Looking forward to it braah!
 

Volt Cruelerz

Legions Developer
Wow, good job. That's really impressive stuff you guys have been doing. :)

Thanks :)

Staying up late to work on this eh?
Nice.
Are you going to post the meanings and the equivalents for the ranking system if this script is released?
Looking forward to it braah!

It will be eventually, and yes, the ranking system will be explained in the thread in which it will be released among other things such as proper installation (it's a lot more complicated than most other mods), how to resolve conflicts, updates, and whatnot. In addition, there will be a readme in the mod itself to help.

In the event that this was ever incorporated to the game, it could result in leaderboards and the like. As a result, we're thinking about encrypting the data file and only releasing the DSO files to people. Still though, it's coming along nicely. Once again, when this thing is released, it will be published in another thread along with full information about it. The little picture is just to wet some appetites and drum up some support and hopefully encourage one of the other scripters in the community to get involved and write this for us.
 

TriX

Member
This is totally sick! In my opinion this is what legions is lacking, I like being able to see how well or how bad I am doing throughout the time of playing a game. Also getting a rank gives people a sort of satisfaction in playing a game.

Looks like great work is coming a long with this, keep it up! I can see this being one of the most used mods, I look forward to the release of this. :)
 

Royalty

The Aussie
Oh, and since there haven't been any spoilers given yet for the mod... Here's one...

LegionsCareerTrackerV1.png
Looking forward too it. However respawns better not count as deaths, and i think instead of "Kills per Game" you mean "Average kills per game".
Nice work.
 

Volt Cruelerz

Legions Developer
I've finished the code for it. The release will come shortly if we decide not to encrypt the file your stats are stored in. Longer if we do. Either way, it works. It tracks:

Kills, Deaths, Captures, Grabs, Returns, Points, Game Count, Mid Airs, Deaths (not counting suicides), Points, K/D Ratio, P/D Ratio, [Average] Kills per Game, [Average] Points per Game, Your Best Weapon, Number of Kills with Each Weapon, and Percentage of Kills Made by Best Weapon.

In other words, it is a Career Stat Tracking Mod.
 

Immanent

Member
I've finished the code for it. The release will come shortly if we decide not to encrypt the file your stats are stored in. Longer if we do. Either way, it works. It tracks:

Kills, Deaths, Captures, Grabs, Returns, Points, Game Count, Mid Airs, Deaths (not counting suicides), Points, K/D Ratio, P/D Ratio, [Average] Kills per Game, [Average] Points per Game, Your Best Weapon, Number of Kills with Each Weapon, and Percentage of Kills Made by Best Weapon.

In other words, it is a Career Stat Tracking Mod.

What is the purpose of encrypting our stats? It's nice if other people can have a look at what your kill stats are imo.
 

Volt Cruelerz

Legions Developer
No tinkering from the players side :)

What he said. Also, if there was ever support made by the devs for this, if your rank for instance were to show up in-game, if you could just change it willy-nilly, it'd be pointless.

Oh, and here's the current interface. Note that this is made to be used only in fullscreen mode. Sorry if that doesn't work for you, but you could try adjusting one of the files yourself (which I'll probably explain at a later date) if you really wanted to. The reason the bottom is cut off is because screenshots, fullscreen, and Windows 7 don't mix for some odd reason. Anyways, here it is:

LegionsCareerTrackerV2.png
 

Royalty

The Aussie
P/D Ratio?
"Kills per Game" should be "Average Kills per Game"
"Points per Game" should be "Average Points per Game"

Also think about adding:
Total player time?
Highest score?

Looks epic.
 

Volt Cruelerz

Legions Developer
Average Points to Deaths
I'm really surprised so many people are complaining about the lack of the word "Average", but I guess I can add it if it's really that big of a deal...

Total play time isn't something I know well how to do. 3lionz is involved in the mod and he made a flagtiming script before, so I guess he's the one that would have to make that function.
Record Score, Record Kills and the like are possible I suppose, but it would take a radical redesign of the method that loads the data from the file, and frankly, I'm feeling really lazy now :p (oh, and my girlfriend and homework have been neglected for the past six days as I learned a specialized language and wrote this thing). I'm going to take a wild guess and say this is the longest script anyone's ever made.

EDIT: the next version of the code to go out to the other team members will have "Average" at the front of those lines.
 

Royalty

The Aussie
Average Points to Deaths
I'm really surprised so many people are complaining about the lack of the word "Average", but I guess I can add it if it's really that big of a deal...

Total play time isn't something I know well how to do. 3lionz is involved in the mod and he made a flagtiming script before, so I guess he's the one that would have to make that function.
Record Score, Record Kills and the like are possible I suppose, but it would take a radical redesign of the method that loads the data from the file, and frankly, I'm feeling really lazy now :p (oh, and my girlfriend and homework have been neglected for the past six days as I learned a specialized language and wrote this thing). I'm going to take a wild guess and say this is the longest script anyone's ever made.
Ah okay. Looking forward to it.

Out of curiosity how many ranks are there? How do you level up? Points?
Yeah total playing time, record score and kills would be great. If you don't have time to rework the script, maybe those can be included in the next version?
Also would average ping played in be possible?
 

Volt Cruelerz

Legions Developer
Okay, first off, score and kills are loaded into the script different ways, yet the problems associated with doing that for kills would occur with points as well. I think I've come up with the most efficient way to do that, but like I said, I've been neglecting two other things for far too long (that and my CS homework is due tomorrow and I haven't even started writing the two programs for that yet, though at least they're shorter and in Java which I know way better than TS). So, if there is a next version, I suppose these and play time could be in it.

After looking at the code a bit more, I'm very confidant that record score isn't possible. You see, the game itself doesn't ever actually report score like you'd want it to. As such, when points are displayed, that's actually an estimate. A good estimate, but an estimate nonetheless. As such, kills could potentially have their record stored (in addition to the other basic stats such as caps, returns, etc), but points, being a complex stat, I'm afraid aren't possible.

I'm afraid ping wouldn't be possible. Or at least not in the way you'd think.. I suppose you *might* be able make your own little ping system that sends out a data packet and start a timer awaiting it's response. Do this every time someone dies in the game and you should end up with a pretty good average. Of course, I have no idea if that system would even work... :(

EDIT: Record Kills now displays (it turned out to be easier than I'd thought) and could easily be extended to other stats, but at this point, I'm running out of space on the screen XD
 

Volt Cruelerz

Legions Developer
I've thought of that, but I honestly have no idea how... 3z knows more about that than I do, so I'll leave that up to him. It sounds like he may be taking my original functional code and streamlining it anyways, so I guess he'd probably do this as well.
 

Royalty

The Aussie
I've thought of that, but I honestly have no idea how... 3z knows more about that than I do, so I'll leave that up to him. It sounds like he may be taking my original functional code and streamlining it anyways, so I guess he'd probably do this as well.
Check with Rockey too. He managed to add a button in his script "Practice Mode" and although it was an April Fools joke, the button worked.
 

Volt Cruelerz

Legions Developer
lol... I can't wait for April first now... I can script now Muahahah!!! >:)

At any rate, Shisk just waaaay streamlined my code lol. Way better now :)
 

Royalty

The Aussie
lol... I can't wait for April first now... I can script now Muahahah!!! >:)

At any rate, Shisk just waaaay streamlined my code lol. Way better now :)
Lol. I'll make sure not to download any of your scripts released on April 1st! :) I'll hang around their threads though and laugh at everyone who got pranked!
 
Top