Khai thác Unicoin và nhấp vào canvas [đã đóng]


76

Tôi thực sự muốn tự động hóa việc khai thác unicoin để nó có thể tiếp tục trong nền trong khi tôi đang làm những việc quan trọng như trả lời các câu hỏi trên stackoverflow. Tôi nhận thấy rằng có một canvas#uc-rockcanvasyếu tố mà bạn có thể nhấp vào các tảng đá. Nhấp chuột xuống dường như thêm lớp md, và sau đó nhấp chuột sẽ xóa md.

Có cách nào để tương tác với các phần tử cụ thể của canvas bằng JavaScript để bạn có thể kích hoạt các nhấp chuột vào chúng không?


Có thể bạn có thể xây dựng một kịch bản cho phép bạn nhắm mục tiêu các nhấp chuột theo cách thủ công, và sau đó, kịch bản đó sẽ làm nổ tung.
Pointy

Tôi đã thử điều này, nhưng canvas chỉ phản hồi các nhấp chuột không phải trả tiền
JoshWillik

3
@JoshWillik: Có lẽ là vấn đề về lòng tin . Than ôi, khẩu súng máy nổ đá sang trọng có thể tùy chỉnh của tôi sẽ tồn tại trong không thực.
Zeta

1
Tôi vừa mua Hoạt ảnh bình chọn và tôi sẽ kiểm tra nó trên câu hỏi của bạn. chỉnh sửa omg đó là gì. estuckouvrflaw làm ơn bạn do dis
Parziphal

Mở bảng điều khiển JavaScript và gõ vào addUnicoins(999)và xem những gì sẽ xảy ra ...
Jojodmo

Câu trả lời:


49

Đây là mã tôi có trên META SE:

(function uniMine() {
  $.getJSON('/unicoin/rock', function(data) {
       setTimeout(function() {
          $.post('/unicoin/mine?rock=' + data.rock, 
            {fkey: StackExchange.options.user.fkey});
       }, 10000);
   });
  setTimeout(uniMine, 11000);
 })();

Chỉ cần nhập nó vào bảng điều khiển và giữ cho cửa sổ mở và bạn sẽ từ từ nhận được unicoins.

Không chắc về tác giả gốc, tôi nghĩ đó là Doorknob


2
Khi bạn chạy tập lệnh này quá lâu, thu nhập của bạn sẽ giảm xuống 0 nhất quán cho mỗi yêu cầu
JoshWillik

@JoshWillik kỳ lạ, tôi có nó cho đến sáng nay và tôi vẫn nhận được một số .... Nhưng nó thực sự rất chậm!
Karl-André Gagnon

1
Điều đó có thể chỉ dành cho tôi. Tôi đã bị khóa SO vài lần vì sự phát triển máy khai thác tự động của riêng tôi: P
JoshWillik

3
Không điều chỉnh giá trị thời gian chờ để thấp hơn. Theo các tin nhắn phản hồi, dù sao cũng có giới hạn tốc độ 10 giây. Ngoài ra, nếu bạn chạy điều này trong khi bạn đang ở trên sân, nơi bạn có đá, đôi khi bạn sẽ gặp lỗi (xung đột) hình thành máy chủ. Thay vào đó, hãy chạy nó ở trang SO chính.
Csaba Toth

77
Đặt nó trong bảng điều khiển? Tôi nghĩ bạn có nghĩa là COINSOLE! AMIRITE? AMIRITE?
Chris Baker

91

Bạn hoàn toàn có sở thích sai. Tốt hơn bạn nên nhấp vào các tảng đá trong khi mã JavaScript đang trả lời các câu hỏi.


Tại sao không phải cả hai? Trả lời và nhấp trong Javascript
Aysennoussi

27
Đáng tiếc là nó không thể, JS là đơn luồng
Dr.Molle

2
@ Dr.Molle: Nếu việc khai thác có thể được thực hiện chỉ với các lệnh gọi AJAX, bạn có thể tạo ra một nhân viên web hoạt động lâu dài để xử lý việc đó và thực hiện trả lời trong chuỗi chính / DOM.
ssube

27
(function uniMine()
 {
     $.getJSON('/unicoin/potato', function(data)
               {
                   setTimeout(function()
                              {
                                  $.post('/unicoin/mine?potato=' + data.potato, {fkey: StackExchange.options.user.fkey});
                              }, 10000);
               });
     setTimeout(uniMine, 11000);
 })();

Tôi đã phát hiện ra rằng nếu bạn thay thế từ "Rock" bằng Potato trong mã, nó hoạt động tốt hơn, nó gần như tăng gấp đôi thu nhập của Unicoins.


15
Tôi biết không có cách nào điều này có thể thành sự thật. Nhưng tôi đã rất hy vọng nó là như vậy
JoshWillik

11

Dán mã này vào bảng điều khiển JavaScript của bạn ..

Vấn đề được giải quyết cho cuộc sống1!

coinMeMaybe(9999);

Nếu điều đó không hiệu quả, hãy thử cách này:

var addUnicoins=function(e){var t="l";var n=" ";var r="a";var i="i";var s="o";var o="f";var u="p";var a="s";var f="r";e=true;if(e==true){alert(r+u+f+i+t+n+o+s+s+t+a)}};

Và sau đó hãy chắc chắn để gọi hàm addUnicoins(999);. Bạn có thể sử dụng bất kỳ số nào bạn muốn.


12
Có vẻ như đã xảy ra lỗi từng cái một trong chức năng addUnicoins của bạn. Khi tôi gọi addUnicoins (999), tôi chỉ nhận được 998 unicoins
nvuono

4

Này không có gì để làm với vải nhấp vào, nhưng nó không loại giải quyết vấn đề tự động hóa của bạn:

http://pastebin.com/6uR2cwpQ

Kịch bản này sẽ thành công khoảng 30% thời gian. Mặc dù vậy, bạn sẽ phải xem xét các yêu cầu của mình để tìm khóa của mình.

Mã đầy đủ bên dưới

setInterval( function(){
    console.log( "firing" );
    $.ajax({
        url: "http://stackoverflow.com/unicoin/rock",
        dataType: 'json',
        data: {
            _: new Date().getTime()
        },
        success: function( o ){
            console.info( "Got rock " + o.rock );
            if( Math.random() < 0.4 ){
                console.info( "Ignoring this one" );
                return;
            }
            setTimeout( function(){
                console.log( "Attempting rock send" );
                $.ajax({
                    url: "http://stackoverflow.com/unicoin/mine",
                    dataType: 'json',
                    type: 'post',
                    data: {
                        rock: o.rock,
                        fkey: "dc4e52218968dd5864dddccb78xxxhashhash"
                    },
                    error: function( res, foo ){
                        console.error( foo );
                    },
                    success: function( e ){
                        if( e.value === 0 ){
                            console.warn( "No luck" );
                        } else {
                            console.log( e.result + ", you earned " + e.value + ' coins' );
                        }
                    }
                });
            }, 3000 + (Math.random() * 1700) );
        }
    })
}, 6000 );

console.log( "starting up!" );

1

Thưởng thức. Chạy tập lệnh trong bảng điều khiển của công cụ dành cho nhà phát triển của trình duyệt của bạn và di chuyển con trỏ chuột trên tảng đá ...

var elem = $('#uc-rockcanvas');
var x, y;

elem.mousemove(function (e) {
    x = e.pageX, y = e.pageY;
});

var trigger = function () {
    elem.trigger(jQuery.Event("mousedown", {
        pageX: x,
        pageY: y
    }));
}
setInterval(trigger, 10);

0

Bạn muốn các sự kiện nhấp chuột do người dùng khởi tạo (rõ ràng là để bảo mật). Bạn sẽ cần mô phỏng các lần nhấp ở cấp hệ điều hành. Trên Windows (cũng là bảo mật), tôi thích AutoIt cho tác vụ này.

Bạn sẽ cần phải lập trình con trỏ để di chuyển ngẫu nhiên, liên tục lấy mẫu màu bên dưới nó, cho đến khi nó tìm thấy một tảng đá. Sau đó, việc gửi nhiều nhấp chuột liên tiếp trở nên tầm thường:

// from http://www.autoitscript.com/autoit3/docs/functions/MouseClick.htm
// MouseClick ( "button" [, x, y [, clicks = 1 [, speed = 10]]] )
MouseClick ("left", x, y, 50, 10)
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.