Post by Bakchuda on Feb 7, 2007 23:37:24 GMT
Ok folks, after some tinkering I have a Ruby script that can parse through a neverwinter nights log file and extract a good amount of useful information. Certain limitations are unavoidable, like mobs with the same name that are actually different creatures (Guardians in the Maze as a perfect example). If somebody names their character "attacks attacks attacks", or "Fortitude Saves Saves Fortitude", the script will likely croak. But anyway, for a little sample of the kind of analysis you can get out of it, here it is:
To run the program, first download the script here: www.keleous.com/downloads/chatAnalyzer.zip
You will also need to install Ruby for your operating system: www.ruby-lang.org/en/downloads/
The file name that is analyzed is set at the very top of the script file, you can open it with any text editor. Then get the script and the log file into the same directory (you can put the script right into the logs dir if you want) and run the program from a console by typing ruby chatAnalyzer.rb
Right now it prints everything to the console, so if you run this in windows, you will have to start a command prompt first. I can add in functionality to write to a file, and perhaps even a nice CSS enhanced HTML file, but I wanted to get a feel for the interest first.
Try it out yourself, and any comments or suggestions would be very welcome.
Star Dust:
Max AB: 66
Kills:
Guardian: 1
Damage averages:
Dealt:
Guardian
Physical: 0
Magical: 8
Electrical: 15
Sonic: 9
Positive Energy: 10
Total: 45
Identified spells:
Ethereal Visage
Energy Buffer
Mage Armor
Ghostly Visage
Improved Invisibility
Protection from Evil
Red the Defender:
Max AB: 71
lowest recorded hit: 90
highest recorded miss: 97
Kills:
Guardian: 3
Damage averages:
Dealt:
Guardian
Physical: 9
Magical: 7
Fire: 11
Acid: 11
Sonic: 9
Negative Energy: 0
Total: 54
Received:
Guardian
Physical: 0
Magical: 10
Total: 10
Guardian:
Max AB: 85
lowest recorded hit: 57
highest recorded miss: 58
Saves:
Fortitude:
base: 41, 39
Kills:
Circle Staffmaster: 1
Bakchuda the Bug Shaman: 1
Deaths:
Star Dust: 1
Red the Defender: 3
Setekhi Arneseth: 1
Gian Dalender: 1
Damage averages:
Dealt:
Red the Defender
Physical: 0
Magical: 10
Total: 10
Circle Staffmaster
Magical: 118
Total: 118
Bakchuda the Bug Shaman
Physical: 64
Magical: 82
Total: 126
Setekhi Arneseth
Physical: 47
Magical: 85
Total: 89
Gian Dalender
Physical: 55
Magical: 43
Total: 80
Received:
Star Dust
Physical: 0
Magical: 8
Electrical: 15
Sonic: 9
Positive Energy: 10
Total: 45
Red the Defender
Physical: 9
Magical: 7
Fire: 11
Acid: 11
Sonic: 9
Negative Energy: 0
Total: 54
Bakchuda the Bug Shaman
Positive Energy: 65
Total: 65
Setekhi Arneseth
Physical: 7
Magical: 6
Cold: 9
Acid: 12
Sonic: 13
Negative Energy: 0
Total: 55
Gian Dalender
Physical: 0
Magical: 4
Cold: 7
Fire: 8
Divine: 6
Total: 40
Circle Staffmaster:
Deaths:
Guardian: 1
Damage averages:
Received:
Guardian
Magical: 118
Total: 118
Identified spells:
Protection from Elements
Blackstaff
Greater Magic Weapon
Flame Weapon
Ethereal Visage
Premonition
Protection from Spells
Greater Stoneskin
Energy Buffer
Shadow Shield
Tenser's Transformation
Keen Edge
Protection from Evil
Mage Armor
Shield
Shadra Da'Mistic:
Identified spells:
Wail of the Banshee
Mage Armor
Shield
Death Armor
Magic Circle against Evil
Improved Invisibility
Energy Buffer
Mestil's Acid Sheath
Greater Stoneskin
Bakchuda the Bug Shaman:
lowest recorded hit: 100
highest recorded miss: 86
Saves:
Reflex:
Divine: 40
Save Modifying Feats: Evasion
Deaths:
Guardian: 1
Damage averages:
Dealt:
Someone
Positive Energy: 60
Total: 60
Guardian
Positive Energy: 65
Total: 65
Received:
Guardian
Physical: 64
Magical: 82
Total: 126
Identified spells:
Sunbeam
Barkskin
Monstrous Regeneration
Regenerate
Mass Camouflage
Earthquake
Setekhi Arneseth:
Max AB: 68
lowest recorded hit: 90
highest recorded miss: 98
Kills:
Guardian: 1
Damage averages:
Dealt:
Guardian
Physical: 7
Magical: 6
Cold: 9
Acid: 12
Sonic: 13
Negative Energy: 0
Total: 55
Received:
Guardian
Physical: 47
Magical: 85
Total: 89
Arch-Lich Morag Harvester of Flesh:
Identified spells:
Ice Storm
Epic Spell Hellball
Gian Dalender:
Max AB: 62
lowest recorded hit: 100
highest recorded miss: 92
conceal: 66
Kills:
Guardian: 1
Damage averages:
Dealt:
Guardian
Physical: 0
Magical: 4
Cold: 7
Fire: 8
Divine: 6
Total: 40
Received:
Guardian
Physical: 55
Magical: 43
Total: 80
To run the program, first download the script here: www.keleous.com/downloads/chatAnalyzer.zip
You will also need to install Ruby for your operating system: www.ruby-lang.org/en/downloads/
The file name that is analyzed is set at the very top of the script file, you can open it with any text editor. Then get the script and the log file into the same directory (you can put the script right into the logs dir if you want) and run the program from a console by typing ruby chatAnalyzer.rb
Right now it prints everything to the console, so if you run this in windows, you will have to start a command prompt first. I can add in functionality to write to a file, and perhaps even a nice CSS enhanced HTML file, but I wanted to get a feel for the interest first.
Try it out yourself, and any comments or suggestions would be very welcome.