Kill Records

From LSWiki

Revision as of 12:13, 24 January 2026; Reden (Talk | contribs)
(diff) ←Older revision | Current revision | Newer revision→ (diff)
Jump to: navigation, search

As of change #8479, kill logs are back. They have been "reworked" in the following way: "reimplemented the old kill log behavior such that killing the same enemies repeatedly now lowers your experience gains again (although to a minimum of 25% rather than the previous minimum of 1%), substantially expanded the kill log (so you can't just clear it at will anymore) and dramaticaly increased experience gains from enemies *not* in your kill log (up to 200%). Will be reverted if it causes problems."

This game mechanic has been retired as of change #7859. Experience awarded for kills should no longe be subject to diminishing returns via kill Log shennanigans. Overall this should mean more xp for all, and one less mechanic that new players need to learn.

Contents

Previously

Most beings in Lost Souls have a hidden kill log. This primarily affects Incarnoi, their Familiars, and Companions.

If murder is your principal form of acquiring Experience, and you have an interest in acquiring large quantities of experience, it is important to understand this:

  • Kill Logs keep track of things you kill.
  • Subsequent kills of the same type of being will result in diminishing experience rewards to the point where they will award only 1% of their normal experience reward.
  • Killing beings not already present on your kill log will help clear existing entries.

This makes it impossible to guarantee that you will receive 100% of the experience award for any particular kill. But on average you will receive much more if you seek a broad variety of prey.

Currently, the only known way to view a Kill Record is via the Discern Secrets (which was removed).

Some Details

  • The kill log is a hash of string:integers with a length that can't exceed 31.
  • Keys in the hash are the defined "name" of beings killed, and values are integers representing the number of times beings with that name have been killed.
  • The name of the being in this instance refers to the filename from which the being was generated. Beings with randomly generated names/races/features are often generated from the same template and will count as one entry for the kill log.
  • Whenever an enemy is dispatched, the kill logs of all victors are checked before experience is awarded.
  • If the kill log is longer than the lower of the victor's current level, or 30; then roughly 25% of it will be removed randomly (with a hard minimum of one entry purged).
  • Then one of two things will occurr.
    • If victim is already present on the kill log then its value will be incremented by 1 and experience will be subjected to diminishing returns using that new value.
    • If victim is not already present, then it will be added to the kill log and experience will not be subjected to diminishing returns.
  • Companions without kill logs of their own will check their owners kill log.


More Detail

  • Code dump from Nov 21 2021
[OOC Starhound] "varargs float query_experience_factor(object att, status kill) {"
[OOC Starhound] "    while(sizeof(enemies) > min(query_level(), 30)) {"
[OOC Starhound] "        foreach(string item : enemies) {"
[OOC Starhound] "            if(!random(3)) {"
[OOC Starhound] "                map_delete(enemies, item);"
[OOC Starhound] "                break;"
[OOC Starhound] "            }"
[OOC Starhound] "        }"
[OOC Starhound] "    }"
[OOC Starhound] "    string obj_name = object_name(att);"
[OOC Starhound] "    int hash_ix = member(obj_name, '#');"
[OOC Starhound] "    string code = (hash_ix == Null) ? obj_name : obj_name[..hash_ix - 1];"
[OOC Starhound] "    int count = kill ? enemies[code]++ : enemies[code];"
[OOC Starhound] "    if(hash_ix == Null)"
[OOC Starhound] "        count *= 3;"
[OOC Starhound] "    return max(1.0 - diminishing_returns(count, 1.0) / 10.0, 0.01);"
[OOC Starhound] "}"
[OOC Starhound] "the if random 3 is what i love"
[OOC Starhound] "everything else is pretty tame"


Not clear what member is, or why count gets multiplied by 3 if member(obj_name, '#') is Null. Does query_experience_factor get called in contexts other than murder? Under what circumstances is kill falsey?

Dealing with the New Kill Log

[2026 Jan 24 09:48] [OOC Zygefgh] hmm, discharge attack rating for wands seems kinda tough to increase
[2026 Jan 24 09:48] [OOC Zygefgh] looks like mostly just ego + wyrding
[2026 Jan 24 11:16] [OOC Zygefgh] ugh damn hero levelling
[2026 Jan 24 11:16] [OOC Flix] leveling is what they want you to do, fight the man!
[2026 Jan 24 11:16] [OOC Zygefgh] either the kill log needs to be shorter,
or we need more hero level combat areas. I haven't been killing in Og all week
and I still don't get xp from fighters
[2026 Jan 24 11:17] [OOC Zygefgh] I wish darkhold guards were tougher
[2026 Jan 24 11:17] [OOC Zygefgh] that seems like a good place to grind, but
the regular guards are worthless, even sub-hero
[2026 Jan 24 11:18] [OOC Flix] true, whats your path? I've been doing mines,
tere rest, vasbarghad, og
[2026 Jan 24 11:20] [OOC Zygefgh] vargan (all the way down to 2nd last level),
tenereth (first two levels), vasbarg (outside only), Og fighters, Spiderwood
(rachnei, gigantic spiders, atterkop, and sparkbugs), gurbo (first 3 levels),
caves of sionell
[2026 Jan 24 11:21] [OOC Flix] damn, surprising it hasnt reset after that
[2026 Jan 24 11:21] [OOC Zygefgh] yeah, same
[2026 Jan 24 11:21] [OOC Flix] if you wipe a bunch of low level stuff it
should work as well
[2026 Jan 24 11:22] [OOC Zygefgh] it's because the log is a fixed number of
kills and not based on variety
[2026 Jan 24 11:22] [OOC Zygefgh] some of these areas don't have large numbers
[2026 Jan 24 11:22] [OOC Gnanglunthuggog] yea i just sit in teryx or shantaari
and let them swarm me
[2026 Jan 24 11:22] [OOC Zygefgh] can't do that as a level 54 human
[2026 Jan 24 11:23] [OOC Zygefgh] it's like, once you get over the power-hill
where you can take swarms, you're usually in a better spot, but until then the
kill log makes it a slog
[2026 Jan 24 11:24] [OOC Gnanglunthuggog] shrieking siren has lots of beings
waiting to become bodies
[2026 Jan 24 11:24] [OOC Zygefgh] yeah that's true
[2026 Jan 24 11:24] [OOC Gnanglunthuggog] lh sewer skavens and rats should be
quick too
[2026 Jan 24 11:25] [OOC Zygefgh] I just wish I knew how long I had to go
farming 0xp mobs
[2026 Jan 24 11:26] [OOC Zygefgh] I have to say though, for a starter guild,
warbreakers has a very rapid progression, it feels great
[OOC Aeriella] we should totally reduce the size of the kill log
Personal tools