Giter Club home page Giter Club logo

octotrog's People

Contributors

aawilson avatar jmbjr avatar neckro avatar rawlins avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

octotrog's Issues

256 is !watched so games where the score or number of turns has 256 are announced

OCTOTROG: platinum the Charmwright (L4 HESk), slain by Terence (a +0,+0 trident) on D:2, with 145 points after 2560 turns and 0:07:02.

2560 turns

Not sure how to gracefully check for this

Could do a !gamesby or !lg or !lm or something isnumeric(!watched_nick) = True.

But this won't be robust enough to catch if the !watched_nick hasn't completed a single game

Also could screw up if the score/turns is 256 but for a legitimate !watched_nick

So there may not be a simple solution

!lm not working (thurs 10/10/2013)

[20:13] !hs
[20:13] 119. johnstein the Axe Maniac (L27 MiBe), worshipper of Trog, escaped with the Orb and 4 runes on 2012-11-19 02:14:14, with 1656080 points after 160412 turns and 1d+10:24:55.
[20:13] !lm
[20:13] !lg
[20:14] 119. johnstein the Acrobat (L26 MfGl), worshipper of Jiyva, slain by a stone giant on Vaults:5 (vaults_vault) on 2013-10-09 07:23:44, with 551553 points after 135845 turns and 22:39:38.

also:

[19:54] !lm greynaab margery -tv
[19:55] !lm greynaab -tv
[19:55] !lm
[19:55] neckro why isn't OCTOTROG responding?
[

OCTOTROG needs to add username after some commands

If Zureal does:

!hs

It should really be passed to the appropriate crawl bot as

!hs zureal

This is because normally when in #crawl, the bot sees the correct nick typing !hs, but in this case, OCTOTROG is the bot telling them !hs

It's definitely a convenience feature, but one that you'll really want after typing these types of commands a hundred times: whereis, hs, etc.

random combo generator

Does this already exist?
If not:

  1. generate purely random
  2. generate random viable
  3. generate random unviable

Any command can be given a species or background to generate the other half

!randcombo
!randcombo -viable
!randcombo -unviable
!randcombo Ce
!randcombo Ce -viable
!randcombo Ce -unviable

This is probably too much work

track weekly challenges

This is more of a brainstorm

Need a way to tell octotrog what the current weekly challenge combo is

Then need a way to track challengers' scores

Could be a periodic ping of each challenger's list of games.

Basically, for each challenger, get the number of games they've played the challenge combo, then find the first of those games during the current challenge window

Like many other suggestions, this one seems pretty complex and maybe too much effort for the result since its probably easy to track manually.

It would just be nice to be able to
!addchallenger johnstein -> adds johnstein if not added.

!remchallenger

!newchallenge CeBe -> makes new challenge

!challenge -> returns current challenge and player stats

!challenge -2 -> returns previous challenge stats

[crash] When Henzell is gone from ##crawl, ?? queries crash OCTOTROG. (secondary issue, sometimes Henzell doesn't reply promptly and OCTOTROG seems to hang)

folks in #ocotolog were crashing the bots on ??cleave

[11:08] ??cleave
[11:08] |<-- OCTOTROG has left irc.jmbjr.com:13400 (Client exited)
[11:08] * odiv cleaved octotrog.
[11:11] looks like it's busted in ##crawl too.

[11:21] -->| TROGSTEIN ([email protected]) has joined #octolog
[11:21] TROG SAY DON'T DIE!
[11:22] !won
[11:22] ??cleave
[11:22] johnstein has won twice in 139 games (1.44%): 1xDsBe 1xMiBe
[11:22] |<-- TROGSTEIN has left irc.jmbjr.com:13400 (Client exited)

[11:22] weird
[11:22] ??cleave is killing the bot
[11:22] odiv: don't think so, but maybe
[11:22] johnstein: the ##crawl bots are fucked.
[11:23] So probably anything is killing the bot.
[11:23] yea
[11:23] henzell looks gone
[11:23] not !won, though
[11:23] Well I don't know about fucked.
[11:23] which is probably what you were saying above
[11:23] Yeah, sorry, the learnDB ones are.
[11:23] but maybe any henzell query
[11:23] I think henzell is the one that does ??
[11:23] chei is working
[11:23] for %?? requests
[11:23] but that's for trunk stuff
[11:24] oh it's sequell
[11:24] Sequell> cleave[1/2]: In 0.12+, axes awesomely cleave seven spaces around on attack, at the expense of nerfed damage (one less base damage for broad axes and two less for battleaxes and executioner's axes). The cleave attacks do 75% damage to secondary targets, and cleaving in a certain direction is blocked by solid features (but cleaving is done in both directions).

so in ##crawl, Sequell was picking up the slack for Henzell

So I did a quick fix on my copy in plugin.crawl.js

line 194 to 200
old:
// Henzell
"??": {
no_space: true,
description: "Look up an entry in LearnDB.",
response: function(opt) {
this.relay('Henzell', opt);
}

new

// Henzell
"??": {
  no_space: true,
  description: "Look up an entry in LearnDB.",
  response: function(opt) {
    this.relay('Sequell', opt);
  }

I forgot to copy the error message

I tried to reproduce it, but Henzell had returned to ##crawl and although it was there, it wasn't replying to OCTOTROG (banned? ignored? dunno)

So this issue should address when Henzell is gone, use Sequell. Or if Henzell is there, but not responding promptly, send the query to Sequell or something. maybe a timeout error?

merge death announcement and morgue link into single announcement

Observed Behavior:
death announcement and morgue link do not appear simultaneously. Additionally, morgue link is not color-coded the same as the death announcement (black bkg and red font).

Desired Behavior:
single death announcement + morgue link color-coded black bkg and red font.

Other factors:
need to address potential issue for node promises to not report anything if the morgue link fails (which occasionally happens if Sequell is down or there's a new version that isn't loaded in sequell yet (experimental versions, etc).

add "backup bot" ability

!backup TROGSTEIN OCTOTROG
would tell TROGSTEIN to only start talking if OCTOTROG isn't there

That way I could leave him in chat to get all the !watch and !dbadd commands/updates

add sequell DB (and maybe more)

I spent over and hour compiling DEWz data:
http://mefightclub.com/comments.php?DiscussionID=3564&Focus=248831#Comment_248831

then went into ##crawl-dev to ask how to do it more efficiently:
22:59] if I wanted to do some crawl data mining, is there an efficient way to do that? or do I need to just spam the bots to compile the data I need?
[23:00] for example, I had a long discussion with Sequell the other night compiling data on which floors DEWz died on. !lg * DEWz place=D:1, 2, 3, etc.
[23:00] then typed that into a spreadsheet.
[23:00] ??sequell
[23:00] sequell[1/3]: The ##crawl bot, handling game statistics, the {learndb}, and more. Operated by greensnark. See http://github.com/greensnark/dcss_henzell/raw/master/docs/listgame.txt If you want the source for this bot, go here: http://github.com/greensnark/dcss_henzell (not a typo).
[23:00] johnstein: grab that repository and build your own database?
[23:01] !lg * dewz s=absdepth -graph
[23:01] 51214 games for * (dewz): http://shalott.org/graphs/e6deaa778f0a5725cb44b0ba6522d4e431bc557a.html
[23:01] WITCHCRAFT
[23:01] !lg * dewz s=place -graph
[23:01] 51214 games for * (dewz): http://shalott.org/graphs/c3e916b543b51785100d0f94b7e9912b5e1d34c8.html
[23:01] johnstein: or you could read that text file and maybe find some other gems like that
[23:02] http://i.imgur.com/xCyJwGC.png
[23:02] I will
[23:02] thanks
[23:02] -->| SwissStopwatch ([email protected]) has joined ##crawl-dev
[23:02] I didn't know there were graphing commands available. that's really great
[23:03] about building my own DB. wouldn't that require access the the existing stats? or would it just mean that my DB would just start on the day I first fire up my bot?
[23:03] Stable (0.13) branch on crawl.lantea.net updated to: 0.13.1-17-g0f9d4ff
[23:03] johnstein: the repo should have a list of where to download everything from
[23:03] which your Sequell-alike can use to build its DB
[23:03] ah ok. I didn't know that was publicly available
[23:03] yeah, all the data that sequell used/uses is publically available
[23:03] that's fantastic
[23:04] unless we've lost servers unexpectedly or something, anyway
[23:05] ironically, I already cloned the henzell bot code several months ago
[23:05] when I was dabbling some dcss coding. ran my own server and managed to get the bot to post milestone updates to our IRC channel. I didn't know about the sequell stuff.
[23:05] thanks again.
[23:06] no problem

so, we need to MAKE THIS HAPPEN.

comb the publicly available data to scrape out the MFC dudes
then use a custom henzell bot or OCTOTROG to do graphing based on OUR stats

Don't bother with game IDs

They apparently indicate search result numbers, NOT game numbers. Probably add a unique db constraint on turns/score/etc. instead.

When a player pulls a death result with !lg, the bot should repeat the query with -log appended to get the morgue URL.

Unexpected response for unknown classes

Sequell doesn't know about new player classes/races, resulting in spam when the bot tries to retrieve extra info. Need to parse this as a failure event.

Also check why failure is being reported twice.

23:59 < OCTOTROG> johnstein the Skirmisher (L3 PlCK), worshipper of Xom, slain by a gnoll (a +0,+0 whip) on D:2, with 62 points after 1552 turns and 0:08:00. [cbro+]
23:59 < OCTOTROG> No keyword 'PlCK'
23:59 < OCTOTROG> No keyword 'PlCK'
00:00 < OCTOTROG> No keyword 'PlCK'
00:00 < OCTOTROG> No keyword 'PlCK'
00:01 < OCTOTROG> No keyword 'PlCK'
00:01 < OCTOTROG> No keyword 'PlCK'
00:03 < OCTOTROG> No keyword 'PlCK'
00:03 < OCTOTROG> No keyword 'PlCK'
00:04 < OCTOTROG> No keyword 'PlCK'
00:04 < OCTOTROG> No keyword 'PlCK'
00:05 < OCTOTROG> No keyword 'PlCK'
00:05 < OCTOTROG> No keyword 'PlCK'
00:06 < OCTOTROG> No keyword 'PlCK'
00:06 < OCTOTROG> No keyword 'PlCK'
00:07 < OCTOTROG> CANNOT RETRIEVE ADDITIONAL INFO FOR PLAYER: JOHNSTEIN
00:07 < OCTOTROG> CANNOT RETRIEVE ADDITIONAL INFO FOR PLAYER: JOHNSTEIN

!playing command

Show who's playing by spamming all the bots with the entire watchlist, then filtering results.

More complicated than it sounds, gonna need some kind of message dispatch system.

merge unique-kill announcement and !killratio stats into single announcement

Observed behavior:
when a watched player kills a unique, the announcement is immediately relayed to the channel, quickly followed by the !killratio stats. The first announcement is color-coded black bkg + white font. the second announcement is not.

Desired behavior:
when a watched player kills a unique, announce both the kill announcement AND the killratio stats in the same message. color code the message black bkg with white font.

other factors:
kill ratio takes some time to update. ideally the command to run the killratio would be delayed several seconds to give sequell some time to update. This won't be 100% robust, but there should exist a delay-time, DT, where the majority of cases will have had killratio updated. In the other cases, it's just too bad.

Discussion: should custom commands have a different character? (not ! or % or @...)

For example, I think it would be interesting to have a general 'whereis' and 'dump' command that searches across all available servers.

&whereis johnstein
[CZSO] johnstein the Warrior (L13 GrBe), a worshipper of Trog, dead in D (Sprint) on 2013-10-10 after 3839 turns.
[CAO] johnstein the Grasshopper (L1 OpWr) saved on D:1 on 2012-10-22 after 0 turns.

or maybe redirect all [!,@,%]whereis and [!,@,%]dump to always check all available.

does this make sense?

map ??? to !readall

!readall will list all entries for a learndb request

!readall sheep
Flammable! Try sticky flame on a pack of them... / The sheep is almost dead. It is moving slowly, bewildered and confused, poisoned and covered in liquid flames. / Sheep are often found with a cyclops nearby in later dungeons, if you can't take down a cyclops, get the flock outta there.

( the / are the delimiters)

we can access !readall from #octolog by doubling up the !!

so
!!readall sheep

shmup had a good idea on just mapping ??? to !readall automatically

???sheep

add chei bot

Chei bot in ##crawl-dev handles the learndb for trunk, %?? Instead of @??

Also announces git commits and other dev stuff

Might be interesting to have that in #octolog.

Maybe add an in-room command to toggle on or off

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.