Jump to content


  • Content count

  • Joined

  • Last visited

About CoffeeKills

  • Rank
    Bronze Member

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Updated the code to be more user friendly. No bad data this time, just data.
  2. Hey, So I've been messing with some basic ANN's lately and they're pretty cool. Did you know the Kinect uses a highly trained "frozen" Artificial Neural Network for human/what ever NSA wants recognition. Here's a demo of one being trained to recognize things in images, you can click "load pre trained network": https://cs.stanford.edu/people/karpathy/convnetjs/demo/cifar10.html (scroll to the bottom of the page to see results) Here's the data if you want to have a go: https://www.cs.toronto.edu/~kriz/cifar.html They're pretty easy to get started with assuming a library exists for your language. I think we're in a stage of machine learning "pregnancy" (third trimester) (edit: I didn't know memristor's were real at the time. It's more like (human brain power*thousands)*how much money you have ) and it's an exciting time to get involved. Be really interesting to see an ANN tough to play runescape, pro bots. Oh and yes same kinda stuff facebook uses to describe images to blind people.
  3. I don't know, just did.. Also only ES6 thing I know is () => {} for callbacks.
  4. I agree with both of you :S Perhaps only update threads that get clicked on?
  5. Hi, I'm aware you recently upgrade your forum software and it does not use the old forum code. I imagine there isn't much you can do about it without going down some tedious paths. But I thought I'd complain about it anyways :-P
  6. Heyo! I updated my grand exchange scraper because I figured Runescape wouldn't fix their broken HTML. This one should give you all items and their id's. Criticism welcome output data = http://pastebin.com/2hYQ1tWt (11/05/2016) var request = require("request"); var cheerio = require("cheerio"); function getItemIdsFromHTML(html, done) { var junk = "http://services.runescape.com/m=itemdb_rs/5186_obj_sprite.gif?id="; var cheers = cheerio.load(html); var data = []; var pages = 0; var test = cheers(".indexFeedback"); if (test[0]) done("page is null", null, null); cheers(".pageNumbers li").each(function() { pages++; }); cheers(".content tbody tr a img").each(function() { var link = cheers(this); var tmp_string = ""; for (var i in link[0].attribs) { if (i == "src") tmp_string += link[0].attribs[i].replace(junk, ""); else if (i == "alt") tmp_string += "=" + link[0].attribs[i]; else if (i == "s") tmp_string += "\'s"; else tmp_string += " " + i.replace("\'", ""); } data.push(tmp_string) }); done(null, data, pages); }; function grabAllItemIDs(done, errorThresh) { errorThresh = errorThresh || 5; var url = "http://services.runescape.com/m=itemdb_rs/catalogue?cat="; var page = "&page="; var data = []; var errors = 0; var re_tries = 0; var cats = 0; loop1(0, 1); function loop1(ind, pind) { if (errors >= errorThresh) { console.log("I think I'm done! ERROR THRESH:" + errorThresh); done(data, cats); return; } else { var str_url = url + ind + page + pind; request({ uri: str_url, }, function(error, response, body) { console.log("catagory: " + ind,"page: " + pind) if (error || response.statusCode !== 200) { console.log("error connecting to " + str_url); re_tries++; if (re_tries < 4) { console.log("retry " + re_tries); setTimeout(loop1(ind, pind), 1000); } } else getItemIdsFromHTML(body, (err, res, p) => { if (err) { errors++; console.log(err); if (ind == 16 && pind == 2) console.log("Known error in runescape's html") return; } re_tries = 0; if (p == 1) cats++; if (res) { for (var i in res) { data.push(res[i]); } }; if (p > pind) loop1(ind, pind + 1); else loop1(ind + 1, 1); }); }); } } }; /*getItemIdsFromHTML(html_, (res, p) => { console.log(res); console.log("total pages for this catagory" + p) }); request({ uri: "http://services.runescape.com/m=itemdb_rs/catalogue?cat=17", }, function(error, response, body) { if (!error) getItemIdsFromHTML(body, (err, res, p) => { console.log(res); console.log("total pages for this catagory " + p) }); }); */ grabAllItemIDs((res, cats) => { var json_friendly = {}; for (var i in res) { var arr = res[i].split("="); json_friendly[arr[1]] = arr[0]; } console.log(json_friendly); //var fs = require("fs"); //fs.writeFileSync("./output2.json", JSON.stringify(json_friendly)); });
  7. I think it's a great server. Low power, easy to set-up and a one off payment. How ever you might be bottlenecked by the SD-card's speed or reach 1GB of memory to fast.
  8. Nice. Hard to watch the gun on the left tho.. lol
  9. CoffeeKills


    Thank you. Yes I am aware.
  10. CoffeeKills


    You need some stronger coffee
  11. Look into NodeJS for serverside operations. Perhaps the module socketCluster. It can provide you a complete platform to build you app on. There is an example on the homepage of using sockets http://socketcluster.io/ Tho you might want to stick with socket.io P.S. OpenShift free (limited but enough) NodeJS hosting by Redhat
  12. CoffeeKills


    Hi, nice looking forum you have here. I am learning server-side Javascript mostly. I joined because I like RSPS's and hope to contribute/be part of something with people who have a shared interest.