Bots Home
|
Create an App
Ray King Bot
Author:
edy1989
Description
Source Code
Launch Bot
Current Users
Created by:
Edy1989
var y=function(){function w(a){a=/^\d+$/.exec(a.replace(/^\s+|\s+$/g,""));null!==a&&(a=Number(a[0]));return a}function T(a,b,e){return e.indexOf(a)===b}function U(a){var b;a=a||0;return a.toString()+" "+(1===a?"boken":b||"bokens")}function d(a){if(a&&"string"===typeof a){d.hasOwnProperty("log")||(d.log=[]);var b=/(..)(:..)(:..)/.exec(new Date),e=b[1]%12||12;d.log.push((10>e?"0"+e:e)+b[2]+b[3]+" "+(12>b[1]?"A":"P")+"M : "+a);25<d.log.length&&d.log.shift();a=z+": "+a;a=a.replace(/\+/g,"\uff0b").replace(/&/g, encodeURIComponent("&"))}cb.log(a.replace(/(\r\n|\n|\r|\\n)/gm," ").trim())}function F(a){var b=Array.prototype.slice.call(arguments),e,d=0,c;a&&"string"===typeof a&&("Enable"===cb.settings.multi_line_safe&&(e=a.split(/ *\n */),d=e.length,a=e[0]),b[0]=(z+": "+a.replace(/\+/g,"\uff0b")).replace(/&/g,encodeURIComponent("&")));cb.chatNotice.apply(cb,b);for(c=1;c<d;c++)b[0]=e[c].replace(/\+/g,"\uff0b").replace(/&/g,encodeURIComponent("&")),cb.chatNotice.apply(cb,b)}function k(a,b){var e=Array.prototype.slice.call(arguments); b&&"string"===typeof b&&b.length?(e[0]=""+a,F.apply(V,e)):d("userNotice: missing user: "+a)}function x(a){var b=/\\u([0-9a-f]{4})/gi,e,d=[];for(a=a||"";null!==(e=b.exec(a));)d.push(e[1]);if(d.length)for(d=d.filter(T),b=0,e=d.length;b<e;b++)a=a.replace(new RegExp("\\\\u"+d[b],"gi"),String.fromCharCode(parseInt(d[b],16)));return a=a.replace(/(^|\s|\\n);-*\)/gm,"$1:wink ").replace(/(^|\s|\\n):-*\)/gm,"$1:smile ").replace(/(^|\s|\\n):D/gm,"$1:woot ")}function P(){var a=[];"rubzombie"===cb.room_slug&& a.push("version: 1.21.12","Keep track of your high tip king by adding a crown to the start of their messages ;)");a.push("Settings:\n\u00a0\u00a0king: "+(l.length?l:"(un-set)")+"\n\u00a0\u00a0king tip: "+p+"\n\u00a0\u00a0crown: "+m.b);return a}function f(a){function b(a){a=a||"";var e=(new Date).valueOf()-(c.hasOwnProperty("last")?c.last:0);d("onPromote: elapsed: "+e);a.length||1E3>6E4-e?c.rate&&(F("/tip "+(p+1)+", or more to "+(l.length?"replace '"+l+"' as":"become")+" the new "+m.title+", and wear the "+ m.name,a,"#d5ebf8"),a.length||(c.count=1,c.promoting=!1,c.last=(new Date).valueOf())):(a=6E4-e,cb.setTimeout(b,1E3>a?1E3:a))}function e(){c.promoting||(c.promoting=!0,b())}function k(){c.last=0;e()}var c=f;a=a||"";c.hasOwnProperty("mode")||(c.mode="chat");c.hasOwnProperty("rate")||(c.rate=q.o);c.hasOwnProperty("last")||(c.last=0);c.hasOwnProperty("promoting")||(c.promoting=!1);c.hasOwnProperty("reset")||(c.reset=k);!c.hasOwnProperty("count")||a.length?b(a):(c.count++,c.count>c.rate&&e());d("update_promo: "+ f.mode+": "+c.count+"/"+c.rate)}function G(){"time"===f.mode&&f();var a=(new Date).valueOf(),b=6E4-(a-(f.hasOwnProperty("last")?f.last:0))%6E4,b=1E3>b?6E4:b;cb.setTimeout(G,1E3>b?1E3:b);d("onTimer: "+((new Date).valueOf()-a)+"ms")}function u(a,b,e){function f(a){for(var c=/(?:^|\s):([\w\-][\w\-]+)(?=\s|$)/g,b,d=[];null!==(b=c.exec(a));)d.push(b[1]);return d.join(" ")}function c(a){return a.replace(/(:ktb_crown|:ttlb_(?:bronze|gold|silver))/g,"(\\\\:ktb_crown|\\\\:ttlb_(?:bronze|gold|silver))").replace(/\?\?/g, "([0-9a-z_]{3,})").replace(/\$\$/g,"([0-9OlI,\\\\.]+)").replace(/\:\:/g,"\\\\:\\\\:+").replace(/\s/g,"\\\\s*")}this.b=x(a||"HTKing");c(this.b);this.tag=this.b+" :: $$ :: ";this.h=new RegExp(c(this.tag),"g");this.p=f(this.b);this.f=x(b||"Hail high tip :: $$ :: king ?? "+this.b);this.g=new RegExp(c(this.f),"g");this.q=f(this.f);this.title=x(e||"King of High Tips");this.name=/^\s*[^a-zA-Z0-9]/.test(this.b)?"high tip "+this.b:this.b+" crown!";d(JSON.stringify(this))}function s(){d("version: 1.21.12"); if("rubzombie"!==cb.room_slug)k("Under Development. Thank you for your interest. Please look out for the release version, which should be available soon, hopefully ;)",cb.room_slug,"#f2f9fd");else{cb.settings.hasOwnProperty("slot")&&(D="#"+cb.settings.slot);E="#0"===D;var a=(new Date).valueOf();A[q.a.e]=new u;A[q.a.n]=new u("\u265a");A[q.a.l]=new u(":ktb_crown");A[q.a.k]=new u(cb.settings.usr_crown,cb.settings.usr_hail,cb.settings.usr_title);l=(cb.settings.king||"").toLowerCase().trim();p=cb.settings.king_tip|| 0;m=A[cb.settings.crown||q.a.e];cb.settings.crown===q.a.k&&(z=cb.room_slug+"'s KTBot");k(P().join(K),cb.room_slug,"#f2f9fd");f();G();s.chat_count=0;s.start_time=(new Date).valueOf();d("init: "+((new Date).valueOf()-a)+"ms")}}function Q(a){if("rubzombie"===cb.room_slug){var b=(new Date).valueOf(),e=a.from_user.toLowerCase();a=a.amount;p<a&&(p=a,l!==e&&(l=e,F(e+" has been crowned the new high tip king.\u00a0\u00a0Long Live the King!","","#f2f9fd")));"tips"===f.mode&&f();d("onTip: "+((new Date).valueOf()- b)+"ms")}}var z="King Tipper Bot",K="\n"+z+": ",q={v:32,w:100,B:2,A:5E3,a:{e:"Text",n:"Glyph",l:"Graphic",k:"Custom"},o:25,j:60,u:0,i:function(a,b,d,f){var c,g=arguments.length-4;if(1<g&&-1<Array.prototype.slice.call(arguments).indexOf(f,4))for(c=0;c<g;c++)this["choice"+(c+1)]=arguments[c+4];else for(g++,c=0;c<g;c++)this["choice"+(c+1)]=arguments[c+3];this.defaultValue=f;this.label=a;this.name=b;null===d||d||(this.required=!!d);this.type="choice"}},L=[/[^\u0000-\u0080\u00ad\u2605\u2606\u2654\u2655\u265a\u265b]/], M=[],H="dlnws chnskv cht4fr wgwgwg bst4cms lv4prty lvtrffn nd4strp prfllsn bnjknntt nsxyjngs pssy4shw vcmsssns wlchstdt 100kstnls chnnmnwhr cmsssnscm grls4prty rgclsngsn sndtdrtch tmrqrllh1 tpgmscrck glsmtrprtl mnhndynmmr schnmnprfl schtglbntr snddrtchlv knntjmlgckn lslsnndmldn stdchlngwlg strmngnkdcm wtchmcmgrls chbnnjngsgls dtschmtrprtl fndfrtknshck hrgldtschkrl pyplrwstrnnn schfdsmwgdch wsnddglnpmml wstrnnnrpypl jckjxshrngnds kstnlsndhnrsk llrdngsnchthr mncmstjtztchn wndmrmnfrrlds dknnmnglbwchsn mprdndstrngtrk n1gnhmpgstfrtg stdnglchnnmnwhr wnnjrktwthmfrfr dsthtdstwchmmrsnd hbknfnnzllnntrssn nrnchbzckmtdntpps schfcktrffnndcmsx fdrstdnglchnnmnwhr llnfssthnmprflvnmr nynwnnjrktwthmfrfr vrllmsndfstnrdtsch glbdgbtsgrnchtmhrdr snddwskstnlsndglrst wsnddnnnndglndtschn chtrbtknnmndchvrgssn ftzstmgglndbrchtshrt mchvrdrcmllswshrwllt nynhrdrmstfckldrmlfs mchnchtlngwrtnndkmmzmr wrbckhtknnmchdjmlbschn kstnlsdtngprtlndtschlnd ntrssntbrmchfndstdnmnmprfl wnnjschtnmnprflndkntktrtmchdrt hbthrgntlchdhlfschlgschffthrvlldtn thsmnstrlysnfbtchsllngthmtfhsgrlfrnd dspmmrsndnfchzdmmvnjdmmdwrdnsgbnntndnsnstnflltdchknrfsnbldsnngwrbngrn".split(" "), N="anarchy dance69 exbf fuckass1 gay gay6 gaybj gayfuck2 gayfuck5 gross kena kisshug55 kisshug56 kisshug57 shithead takeit vbutt wag".split(" "),V=this,D=null,R=null,E,A={},l=null,p=0,m=null,B=!0;return{r:s,s:function(a){function b(){if(v||u){var a=P();a.push("In-chat commands:\n\u00a0\u00a0/crown\n\u00a0\u00a0/hail - hail the current high tip king\n\u00a0\u00a0/?\n\u00a0\u00a0/help - show this message\nTo adjust settings, deactivate & re-launch "+(E?"app":"bot")+".");k(a.join(K),h,"#f2f9fd")}else f(h)} function e(c){c.length&&(a.hasOwnProperty("ngg_whitelisted")?"string"===typeof a.ngg_whitelisted?a.ngg_whitelisted+=" "+c:(d("onMessage:replacing un-recognised ngg_whitelisted property: "+a.ngg_whitelisted),a.ngg_whitelisted=c):a.ngg_whitelisted=c)}function z(){var a=g.replace(/[\W_]/g,"").toLowerCase(),c=a.replace(/[aeiou]/g,""),b,e,f=!1;b=0;for(e=H.length;!f&&b<e&&!(c.length<H[b].length);b++)!0===(f=-1!==c.indexOf(H[b]))&&d("SpamBlockerAd: simple match ("+b+"): "+H[b]);b=0;for(e=L.length;!f&&b< e;b++)!0===(f=L[b].test(g))&&d("SpamBlockerAd: text match ("+b+"): "+L[b].source);b=0;for(e=M.length;!f&&b<e;b++)!0===(f=M[b].test(a))&&d("SpamBlockerAd: plain match ("+b+"): "+M[b].source);b=0;for(e=N.length;!f&&b<e;b++)!0===(f=(new RegExp("(?:^|\\s):"+N[b]+"(?=\\s|$)","")).test(g))&&d("SpamBlockerAd: blacklist emoticons match ("+b+"): "+N[b]);f&&(k(["Message from the author:\n\u00a0\u00a0Thanks for using my "+(E?"app":"bot")+" :)\n\u00a0\u00a0By the way, visitor "+h+" has just spammed your chat!\n\u00a0\u00a0To stop them doing it again, launch my spam blocker, No\u00a0Grey\u00a0Spammers.\n\u00a0\u00a0See this "+ (E?"app":"bot")+"'s Description for a link ;)","End of Message"].join(K),cb.room_slug,"#f37e7e"),B=!1)}if("rubzombie"!==cb.room_slug)return a;if(a.hasOwnProperty("ktb_slot"))return d("onMessage:duplicate ktb in slot: "+a.ktb_slot),null===R&&(k("Sorry, a copy of this "+(E?"app":"bot")+" is already running in slot: "+a.ktb_slot,cb.room_slug,"#f37e7e","#f5f5f5"),R=a.ktb_slot),a;var c=(new Date).valueOf(),g=a.m,n,h=a.user,u="rubzombie"===h,v=h===cb.room_slug,r=a.is_mod,I=a.hasOwnProperty("is_pm")&&a.is_pm, x=s.hasOwnProperty("chat_count")&&15>s.chat_count&&s.hasOwnProperty("start_time")&&2E3>c-s.start_time,G=/\/(kingtipperbot|ktb|#[0-3])?(bip|chat|crown|hail|help|log|time|tips|\?)\s*(\d+)?/ig,S=!1,t,C,O=!1,J=0;a["X-Spam"]&&d("processing x-spam msg");x&&d("onMessage:processing residual message: "+g);if(B)if(v||r){if(/\/(sh|sphammer|#[0-3])?(english|enonly|sphammered)/i.test(g)||/\/(sh|sphammer)(help|spam)/i.test(g))B=!1,d("SpamBlockerAd: SpHammer detected");/\/(ngs|nogreyspammers)(help|spam|\?)/i.test(g)&& (B=!1,d("SpamBlockerAd: No Grey Spammers detected"))}else/<<<( has been SPAM HAMMERED| spHammer hit#)/.test(g)&&"#595959"===a.background&&"#999999"===a.c&&(B=!1,d("SpamBlockerAd: SpHammer detected"));if(!a["X-Spam"]&&"/"===g.trim()[0])for(;null!==(r=G.exec(g));)if(S=!0,t=(r[1]||"ktb").toLowerCase(),"ktb"===t||"kingtipperbot"===t||t===D)switch(a["X-Spam"]=!0,C=r[3]||"",t=r[2].toLowerCase(),t){case "log":(v||u)&&d.hasOwnProperty("log")&&k("Log:\n\u00a0\u00a0"+d.log.join("\n\u00a0\u00a0"),h,"#f37ef3"); break;case "bip":v&&u?(C=C||1,Q({from_user:h,amount:C}),F(h+" bipped "+U(C),"","#ffff33","#000033","bold")):k("Sorry, /"+(r[1]||"")+r[2]+" is a broadcaster-only, author-only, pre-release-only command.",h,"#f37e7e","#f5f5f5");break;case "chat":case "time":case "tips":v&&(f.mode!==t&&(f.mode=t,k(t+" based promo repeats set.",h,"#f2f9fd")),null!==(r=w(C))&&(f.rate=r>q.j?q.j:r,f.reset()),0===f.rate?k("promos temporarily suspended.",h,"#f2f9fd"):k("promo repeat rate set to one promo every "+f.rate+("chat"=== f.mode?" message":"time"===f.mode?" minute":" tip")+(1===f.rate?"":"s")+".",h,"#f2f9fd"));break;case "crown":case "hail":v&&(O=!0);break;case "?":case "help":b()}O&&null!==l&&l.length&&(a.m=m.f.replace("$$",p).replace("??",l),e(m.q),a.ktb_slot=D,a["X-Spam"]=!1,I||f.reset());a["X-Spam"]||S||I||s.hasOwnProperty("chat_count")&&s.chat_count++;v||a["X-Spam"]||!I&&B&&z();a["X-Spam"]||O||(v&&null!==(n=m.g.exec(g))&&3===n.length&&x&&(J=parseInt(n[1],10))>p&&(p=J,l=n[2].toLowerCase(),k('"'+l+'" has just been auto-crowned based on chat history.', cb.room_slug,"#f2f9fd"),d('"'+l+'" has just been auto-crowned based on chat history.')),null!==(n=m.h.exec(g))&&2===n.length&&x?(J=parseInt(n[1],10))>p&&(p=J,l=h.toLowerCase(),k('"'+l+'" has just been auto-crowned based on chat history.',cb.room_slug,"#f2f9fd"),d('"'+l+'" has just been auto-crowned based on chat history.')):null!==(n=g.match(m.h))?(k('Sorry, "'+n.join('", and "')+'" '+(1===n.length?"has":"have")+' been removed from your message "'+g+'".',h,"#d5ebf8"),k((l!==h.toLowerCase()?"Non-": "")+'High Tip King "'+h+'" looks like they might have tried to spoof the "'+A[q.a.e]+'" label in a message. Type /help or /? if you have any doubt about who the real high tip king is or what the real high tip value is ;)',cb.room_slug,"#f37e7e")):null!==(n=g.match(m.g))&&(k('Sorry, "'+n.join('", and "')+'" '+(1===n.length?"has":"have")+' been removed from your message "'+g+'".',h,"#d5ebf8"),k('"'+h+'" looks like they might have tried to spoof the /hail message. Type /help or /? if you have any doubt about who the real high tip king is or what the real high tip value is ;)', cb.room_slug,"#f37e7e")),a.m=g.replace(m.g,"").replace(m.h,""),h.toLowerCase()!==l||/^(\/|!)/.test(g.trim())||(a.m=m.tag.replace("$$",p)+a.m,e(m.p),a.ktb_slot=D,I||f.reset()),"chat"===f.mode&&f());d(JSON.stringify(a));d("onMessage: "+((new Date).valueOf()-c)+"ms");return a},t:Q,d:q}}(); cb.settings_choices=[{label:"Reigning High Tip King (user name)",maxLength:30,minLength:3,name:"king",required:!1,type:"str"},{label:"Reigning High Tip (tokens)",minValue:1,name:"king_tip",required:!1,type:"int"},{label:"Custom Crown (see bot Description for details)",minLength:1,name:"usr_crown",required:!1,type:"str"},{label:"Custom Hail (see bot Description for details)",minLength:1,name:"usr_hail",required:!1,type:"str"},{label:"Custom Title (see bot Description for details)",minLength:1,name:"usr_title", required:!1,type:"str"}];cb.settings_choices.unshift(new (Function.prototype.bind.apply(y.d.i,[null,'What type of "Crown" do you want for King High Tipper?',"crown",null].concat(Object.keys(y.d.a).map(function(w){return y.d.a[w]})))));cb.settings_choices.push(new y.d.i("Multi-line Safe Mode (see bot Description for details)","multi_line_safe",!1,"Disabled","Enabled"));cb.onMessage(function(w){return y.s(w)});cb.onTip(function(w){y.t(w)});y.r();
© Copyright Chaturbate 2011- 2026. All Rights Reserved.