What's new
  • Visit Rebornbuddy
  • Visit Resources
  • Visit API Documentation
  • Visit Downloads
  • Visit Portal
  • Visit Panda Profiles
  • Visit LLamamMagic

[Plugin] NotPanda's Grinding Recorder

NotPanda

New Member
Joined
Jun 12, 2015
Messages
33
Reaction score
0
Heres something that some people might like.

It records: mobs killed, items picked up, items removed, and gold acquired

Sample output.

New Session at 12/09/2015 12:49 AM | Diamond Shores
------------------------------------------------------------
Creature killed : Diamond Shores Turtle Session kill count: 1
[12:49:55] Recieved Item: Prince's Coinpurse 1
[12:49:55] Recieved Item: Malevolent Obsidian 1
------------------------------------------------------------
Creature killed : Diamond Shores Turtle Session kill count: 2
[12:50:00] Recieved Item: Prince's Coinpurse 1
[12:50:00] Recieved Item: Malevolent Obsidian 2
------------------------------------------------------------
Creature killed : Diamond Shores Turtle Session kill count: 3
[12:50:05] Recieved Item: Prince's Coinpurse 1
[12:50:05] Recieved Item: Malevolent Obsidian 1
[12:50:05] Recieved Item: Haunted Obsidian 1
------------------------------------------------------------
Creature killed : Diamond Shores Turtle Session kill count: 4
[12:50:11] Recieved Item: Prince's Coinpurse 1
------------------------------------------------------------
Creature killed : Diamond Shores Crab Session kill count: 1
------------------------------------------------------------
Creature killed : Diamond Shores Crab Session kill count: 2
[12:50:19] Recieved Item: Prince's Coinpurse 1
[12:50:21] Recieved Item: Prince's Coinpurse 1
[12:50:21] Recieved Item: Malevolent Obsidian 1
------------------------------------------------------------
Creature killed : Diamond Shores Turtle Session kill count: 5
[12:50:28] Recieved Item: Prince's Coinpurse 1
------------------------------------------------------------
Creature killed : Diamond Shores Draugorc Session kill count: 1
[12:50:36] Recieved Item: Prince's Coinpurse 1
[12:50:36] Recieved Item: Mystic Memory Shard 1
------------------------------------------------------------
Creature killed : Diamond Shores Turtle Session kill count: 6
[12:50:42] Recieved Item: Prince's Coinpurse 1
[12:50:42] Recieved Item: Ferocious Memory Shard 1
------------------------------------------------------------
Creature killed : Diamond Shores Turtle Session kill count: 7
[12:50:47] Recieved Item: Prince's Coinpurse 1
[12:50:47] Recieved Item: Malevolent Obsidian 2
------------------------------------------------------------
Creature killed : Diamond Shores Turtle Session kill count: 8
[12:50:51] Recieved Item: Prince's Coinpurse 1
------------------------------------------------------------
Creature killed : Diamond Shores Crab Session kill count: 3
[12:50:59] Recieved Item: Prince's Coinpurse 1
------------------------------------------------------------
Creature killed : Diamond Shores Turtle Session kill count: 9
[12:51:05] Recieved Item: Prince's Coinpurse 1
------------------------------------------------------------
Creature killed : Diamond Shores Turtle Session kill count: 10
[12:51:10] Recieved Item: Prince's Coinpurse 1
------------------------------------------------------------
Creature killed : Diamond Shores Turtle Session kill count: 11
[12:51:16] Recieved Item: Prince's Coinpurse 1
[12:51:16] Recieved Item: Malevolent Obsidian 1
------------------------------------------------------------
Creature killed : Diamond Shores Turtle Session kill count: 12
[12:51:22] Recieved Item: Prince's Coinpurse 1
[12:51:22] Recieved Item: Malevolent Obsidian 1
[12:51:22] Recieved Item: Ferocious Memory Shard 1
------------------------------------------------------------
Creature killed : Diamond Shores Turtle Session kill count: 13
[12:51:33] Recieved Item: Prince's Coinpurse 1
------------------------------------------------------------
Creature killed : Diamond Shores Turtle Session kill count: 14
[12:51:48] Recieved Item: Prince's Coinpurse 1
[12:51:48] Recieved Item: Malevolent Obsidian 2
------------------------------------------------------------
Creature killed : Diamond Shores Turtle Session kill count: 15
[12:51:54] Recieved Item: Prince's Coinpurse 1
------------------------------------------------------------
Creature killed : Diamond Shores Crab Session kill count: 4
[12:51:58] Recieved Item: Prince's Coinpurse 1
------------------------------------------------------------
Creature killed : Diamond Shores Turtle Session kill count: 16
[12:52:08] Recieved Item: Prince's Coinpurse 1
[12:52:08] Recieved Item: Malevolent Obsidian 1
------------------------------------------------------------
Creature killed : Diamond Shores Crab Session kill count: 5
[12:52:13] Recieved Item: Scratched Prince's Safe 1
------------------------------------------------------------
Creature killed : Diamond Shores Crab Session kill count: 6
[12:52:17] Recieved Item: Prince's Coinpurse 1
[12:52:17] Recieved Item: Malevolent Obsidian 1
------------------------------------------------------------
Creature killed : Diamond Shores Crab Session kill count: 7
[12:52:23] Recieved Item: Prince's Coinpurse 1
[12:52:23] Recieved Item: Malevolent Obsidian 2
------------------------------------------------------------
Creature killed : Diamond Shores Turtle Session kill count: 17
[12:52:29] Recieved Item: Prince's Coinpurse 1
[12:52:29] Recieved Item: Malevolent Obsidian 1
------------------------------------------------------------
Creature killed : Diamond Shores Crab Session kill count: 8
[12:52:40] Recieved Item: Prince's Coinpurse 1
[12:52:40] Recieved Item: Malevolent Obsidian 1
------------------------------------------------------------
Creature killed : Diamond Shores Turtle Session kill count: 18
[12:52:44] Recieved Item: Prince's Coinpurse 1
------------------------------------------------------------
Creature killed : Diamond Shores Crab Session kill count: 9
[12:52:54] Recieved Item: Prince's Coinpurse 1
------------------------------------------------------------
Creature killed : Diamond Shores Turtle Session kill count: 19
[12:52:58] Recieved Item: Prince's Coinpurse 1
------------------------------------------------------------
Creature killed : Diamond Shores Turtle Session kill count: 20
[12:53:02] Recieved Item: Prince's Coinpurse 1
[12:53:02] Recieved Item: Haunted Obsidian 1
------------------------------------------------------------
Creature killed : Diamond Shores Turtle Session kill count: 21
[12:53:07] Recieved Item: Prince's Coinpurse 1
------------------------------------------------
Session end time: [12:53:09]
Total time in minutes: 3.34085775333333
------------------------------------------------
Items Recieved this session
Item: Prince's Coinpurse Count: 30
Item: Malevolent Obsidian Count: 13
Item: Haunted Obsidian Count: 2
Item: Mystic Memory Shard Count: 1
Item: Ferocious Memory Shard Count: 2
Item: Scratched Prince's Safe Count: 1
------------------------------------------------
Mobs killed this session
Mob: Diamond Shores Turtle Count: 21
Mob: Diamond Shores Crab Count: 9
Mob: Diamond Shores Draugorc Count: 1
------------------------------------------------
Session Gold: 0

Code:
using System;
using System.Drawing;
using System.Windows.Forms;
using System.Threading;
using System.Collections.Generic;
using System.Linq;
using ArcheBuddy.Bot.Classes;

namespace CoinPurseRecording
{
    public class CoinPurseRecorder : Core
    {
        public static string GetPluginAuthor()
        {
            return "NotPanda";
        }

        public static string GetPluginVersion()
        {
            return "1.0.0.1";
        }

        public static string GetPluginDescription()
        {
            return "Records coinpurses and drops";
        }
        /////////////////////////////////////////////////
        public List<String> mobsKilled = new List<String>();
        public List<int> mobsKilledCount = new List<int>();
        public List<String> itemsList = new List<String>();
        public List<int> itemsListCount = new List<int>();
        public DateTime timeStart;
        int sessionGold = 0;
        public void PluginRun()
        {
            ClearLogs();
            onInvItemRemoved += ItemRemoved;
            onNewInvItem += RecieveItem;
            onGoldCountChanged += RecieveGold;
            onCreatureDied += CoinPurseRecorder_onCreatureDied;
            timeStart = DateTime.Now;
            EnterRecord("New Session at " + DateTime.Now.ToString("MM\\/dd\\/yyyy h\\:mm tt") + " | " + getCurrentTerritory().displayName);
            while (gameState == GameState.Ingame)
            {
                Thread.Sleep(50);
            }
        }

        void CoinPurseRecorder_onCreatureDied(Creature obj)
        {
            if (obj.firstHitter == me)
            {
                if (mobsKilled.Contains(obj.name))
                {
                    mobsKilledCount[mobsKilled.IndexOf(obj.name)]++;
                }
                else
                {
                    mobsKilled.Add(obj.name);
                    mobsKilledCount.Add(1);
                }
                EnterRecord("------------------------------------------------------------");
                EnterRecord("Creature killed : " + obj.name + " Session kill count: " + mobsKilledCount[mobsKilled.IndexOf(obj.name)]);
            }
        }
        public void ItemRemoved(Item item, int count)
        {
            EnterRecord("-----------------------");
            EnterRecord("Item Removed: " + item.name);
        }
        public void RecieveGold(int count, ItemPlace place)
        {
            sessionGold = sessionGold + count;
            EnterRecord(Time() + "Recieved Gold: " + count + " | Current Session Gold Count: " + sessionGold);
        }
        public void RecieveItem(Item item, int count)
        {
            if (itemsList.Contains(item.name))
            {
                itemsListCount[itemsList.IndexOf(item.name)]++;
            }
            else
            {
                itemsList.Add(item.name);
                itemsListCount.Add(1);
            }
            EnterRecord(Time() + "Recieved Item: " + item.name + " " + count);
        }
        public string Time()
        {
            string A = DateTime.Now.ToString("[hh:mm:ss] ");
            return A;
        }
        public void EnterRecord(String x)
        {
            using (System.IO.StreamWriter file = new System.IO.StreamWriter(me.name + ".txt", true))
            {
                Log(x);
                file.WriteLine(x);
            }
        }
        ////////////////////////////////////////////////
        //Call on plugin stop
        public void PluginStop()
        {
            EnterRecord("------------------------------------------------");
            EnterRecord("Session end time: " + Time());
            EnterRecord("Total time in minutes: " + DateTime.Now.Subtract(timeStart).TotalMinutes);
            EnterRecord("------------------------------------------------");
            EnterRecord("Items Recieved this session");
            foreach(var x in itemsList){
                EnterRecord("Item: " + x + " Count: " + itemsListCount[itemsList.IndexOf(x)]);
            }
            EnterRecord("------------------------------------------------");
            EnterRecord("Mobs killed this session");
            foreach (var x in mobsKilled)
            {
                EnterRecord("Mob: " + x + " Count: " + mobsKilledCount[mobsKilled.IndexOf(x)]);
            }
            EnterRecord("------------------------------------------------");
            EnterRecord("Session Gold: " + sessionGold);
        }
    }
}
 
Back
Top