瀏覽代碼

Improved karma, cheaper XP.

tBKwtWS 7 年之前
父節點
當前提交
5fb22cae5a
共有 1 個文件被更改,包括 12 次插入16 次删除
  1. 12 16
      commands/common.py

+ 12 - 16
commands/common.py

@@ -156,7 +156,7 @@ class GameHelpers():
             notices_words += int(record[7])
             notices_characters += int(record[8])
         userrecord = self.db.one("SELECT xp_spent, level FROM users WHERE LOWER(name)=%s AND network='" + self.network + "'", (user, ))
-        total_xp = (joins + (given * received) + messages + (messages_words / 4) + (messages_characters / 10) + ((actions + (actions_words / 4) + (actions_characters / 10)) * 2) + ((notices + (notices_words / 4) + (notices_characters / 10)) / 2)) / 199
+        total_xp = (joins + (given * received) + messages + (messages_words / 4) + (messages_characters / 10) + ((actions + (actions_words / 4) + (actions_characters / 10)) * 2) + ((notices + (notices_words / 4) + (notices_characters / 10)) / 2)) / 151
         xp_spent = userrecord[0]
         xp = total_xp - xp_spent
         level = userrecord[1]
@@ -165,26 +165,22 @@ class GameHelpers():
         total_characters = messages_characters + actions_characters + notices_characters
         if total_xp < 1:
             total_xp = 1
-        if given == 0:
-            given = 1
-        if received == 0:
-            received = 1
-        msgs_per_join = (messages / 20) - joins
-        print("Msgs per join: (" + str(messages) + " / 20) - " + str(joins) + " = " + str(msgs_per_join))
+        joinkarma = ((messages / 19) - joins) / total_xp
+        print("Joinkarma: (" + str(messages) + " / 20) - " + str(joins) + " = " + str(joinkarma))
         words_per_message = (total_words / 6) - total_messages
         print("Words per message: = " + str(words_per_message))
         characters_per_message = (total_characters / 20) - total_messages
         print("Characters per message: = " + str(characters_per_message))
-        characters_per_word = (total_characters / 6) - total_words
+        characters_per_word = ((total_characters / total_words) / 6) - total_words
         print("Characters per word: = " + str(characters_per_word))
-        chatkarma = ((msgs_per_join + words_per_message + characters_per_message + characters_per_message + characters_per_word) / total_xp) / 100
-        print("Chat karma: ((" + str(msgs_per_join) + " + " + str(words_per_message) + " + " + str(characters_per_message) + " + " + str(characters_per_word) + ") / " + str(total_xp) + ") / 100 = " + str(chatkarma))
-        kickkarma = (total_xp / 1337) / (given * received)
-        print("Kick karma: (" + str(total_xp / 1337) + ") / "  + str(given) + " * " + str(received) + " = " + str(kickkarma))
-        xpkarma = xp / 40
-        print("XP Karma: " + str(xp) + " /  40 = " + str(xpkarma))
-        karma = chatkarma - kickkarma + xpkarma
-        print("karma: " + str(chatkarma) + " - " + str(kickkarma) + " + " + str(xpkarma) + " = " + str(karma))
+        chatkarma = ((words_per_message + characters_per_message + characters_per_message + characters_per_word) / total_xp) / 100
+        print("Chat karma: ((" + str(words_per_message) + " + " + str(characters_per_message) + " + " + str(characters_per_word) + ") / " + str(total_xp) + ") / 100 = " + str(chatkarma))
+        kickkarma = (given * received) / total_xp
+        print("Kick karma: (" + str(given) + " * " + str(received) + ") / "+ str(total_xp) + " = " + str(kickkarma))
+        xpkarma = xp / 25
+        print("XP Karma: " + str(xp) + " /  25 = " + str(xpkarma))
+        karma = joinkarma + chatkarma - kickkarma + xpkarma
+        print("karma: " + str(joinkarma) + " + "+ str(chatkarma) + " - " + str(kickkarma) + " + " + str(xpkarma) + " = " + str(karma))
         #karma = ((((messages / 20) - joins) / 20) + ((((total_words / 6) - total_messages) + ((total_characters / 6) - total_words)) / 1337) - (given * received) / level) + (xp / 40)
         
         return level, xp, userrecord[0], karma