Login [Register]
Don't have an account? Register now to chat, post, use our tools, and much more.
Unless you have been living under a TI community rock for the past week or two, you should have seen The Nikky Simulator, a TI-89 program written by the talented Travis Evans of ticalc.org staff fame. It has been well-deservedly featured on ticalc., ported to a webapp called Nikky-Ipsum by Nikky himself, and now turned into an IRC bot by me. The Nikky Simulator simulates the unique personality of Nikky Southerland, one of the smartest and kindest members of the community, though often misjudged by newbies as a troll. Each of the three current forms of the Nikky Simulator generates Nikky-style sentences, based on a corpus of phrases from Nikky collected from years of IRC logs. If you want to interact with the IRC NikkySim bot, which has nickname nikky_ on the EfNet IRC network, just join #cemetech, #tcpa, #tifreakware, or #flood, and mention nikky. Check out a few examples of how hard it is to tell the bot from the user below:

Quote:
[02:13:34] <@KermM> I should have not bothered writing nikky_ Sad
[02:13:43] <nikky_> I ban myself. That's so AWESOME.
[02:14:01] <nikky> haha

[02:15:23] <KermM> Oh, I should totally make nikky_ join #omnimaga
[02:15:28] <@nikky> hahaha
[02:15:29] <KermM> I wonder what would happen.
[02:15:31] <nikky_> A tard convention is underpowered.

[02:14:22] <KermM> BrandonW is the most sacred. Far above nikky.
[02:14:27] <nikky_> Guys. Emacs, win.
[02:14:47] <BrandonW> 0x5
[02:14:50] <@nikky> Neutral

[01:47:03] <@nikky> does it only trigger
[01:47:05] <nikky_> SHUT IT. JUST DON'T PIRATE.
[01:47:07] <@nikky> some of the time?
[01:47:11] <KermM> Yes.
[01:47:14] <@nikky> F***
[01:47:19] <@nikky> THAT'S HOW I WAS GONNA DO IT
This is an action that I can support 100%. It will continue the nikky flame long after he has left the community.

I, for one, welcome our new nikkybot overlords.
It has not made an appearance in #tifreakware, sadly :p
tifreak8x wrote:
It has not made an appearance in #tifreakware, sadly :p
That is unfortunate. Sad If you don't object to its presence, I will fix it later.
Oh, by all means! I need to fix my irc chat for the site. It seems someone joined last night after I went to bed, but no one was there to reply, since no one really hangs out on my channel :p

I'm going to make it join #cemetech and #ti as well.
This is truly soul-shattering.
Thanks, Daniel. Smile It should be there now. Nikky: I'm glad that you feel that way. Sorry to have stolen the opportunity to make this from you.
haha, I love this nikkysim bot. It come up with some of the most hilarious things sometimes.


Quote:

<nikky_> Do rages respect lamesauces' lamesauces accidentally?
<nikky_> Evil.
KermM, why isn't this a news post? This seems like a huge community gain and it isn't featured...
AHelper wrote:
KermM, why isn't this a news post? This seems like a huge community gain and it isn't featured...
Because I don't want it to seem like I'm hijacking tev's excellent work. Although I tried porting it to Python, Travis did enough C pointer tricks that I decided to just make the IRC bot call the nikky binary to get quotes, and I don't consider that sufficiently impressive to warrant news. Smile
hehe, the OP clearly demonstrates the "impressive" part.
Yeah, tev did some fun stuff yo, we're all just writin' wrappers around his binary.
Couldn't have happened without you.
KermMartian wrote:
AHelper wrote:
KermM, why isn't this a news post? This seems like a huge community gain and it isn't featured...
Because I don't want it to seem like I'm hijacking tev's excellent work. Although I tried porting it to Python, Travis did enough C pointer tricks that I decided to just make the IRC bot call the nikky binary to get quotes, and I don't consider that sufficiently impressive to warrant news. Smile


It's mostly just sets of tables with entries that point to other tables (with possible recursion). I think it'd translate particularly well to Python (would have made it much less of a headache for me, for sure). The rest of the mess is mostly due to C's relatively poor native string handling and attempting to preserve backward compatibility for some rand() retardedness I did in the first release. Ensuring sentences start with capitals is also a fairly ugly cludge that I just hacked with until it worked, without caring why. Razz Of course, though, there's probably some stuff I'm forgetting about.

Incidentally, one thing that's always bothered me (and which my working but very slow prototype TI-BASIC version in the ‘extra’ directory of the zip avoided) are repeated terms (e.g., “advocacies' advocacies”, “confusing, clueless, and confusing”). The BASIC version just used variables and raw logic code for everything so this was easy (if not terribly maintainable, code-wise); the C version doesn't keep track of what words it choses once they're chosen (and even if it did, it has no way to know the role each word plays in the sentence), so I couldn't think of a simple way to implement that sanity-checking. That's probably another thing classes/custom types like Python has would have helped a lot with—store the sentence as a higher-level object structure that could be parsed and fixed up more easily. Well, technically that'd be doable with C, but I already had too much of a migraine by the time I managed to get the AMS UI code working. Laughing
C++ might have helped since you used C for the binary.
I'm currently experimenting with a chat bot in #flood, but since I still have no idea what direction I want to take it in, it's kind of a haphazard mix of all kinds of randomly-selected algorithms. Razz It's a lot of fun, though, if you want to talk to it.
This may or may not interest people, but I translated the C code to Lua. If anyone is interested in porting it to the Prizm, my code will soon be on ticalc.org (Packaged for the Nspire, but you can easily use it for another platform).

Edit: http://www.ticalc.org/archives/files/fileinfo/450/45079.html
Jim Bauwens wrote:
This may or may not interest people, but I translated the C code to Lua. If anyone is interested in porting it to the Prizm, my code will soon be on ticalc.org (Packaged for the Nspire, but you can easily use it for another platform).


But will nikky approve of his likeness being used on a Casio product?
Sort of unrelated but kind of related. I went on Nikky Ipsum and my favorite sentence was this:
"Which abuser of power does corruption boss around?"
Sounds pretty wise to me.
Where did this lovely bot go to? I haven't seen it on #cemetech lately. Sad
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 11
» All times are GMT - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement