aboutsummaryrefslogtreecommitdiff
path: root/webAO/master.js
diff options
context:
space:
mode:
Diffstat (limited to 'webAO/master.js')
-rw-r--r--webAO/master.js65
1 files changed, 38 insertions, 27 deletions
diff --git a/webAO/master.js b/webAO/master.js
index 5d51d24..0e2e037 100644
--- a/webAO/master.js
+++ b/webAO/master.js
@@ -1,35 +1,44 @@
-import Fingerprint from "./fingerprint.js";
-
const MASTERSERVER_IP = "master.aceattorneyonline.com:27014";
+const version = 2.4;
-const fp = new Fingerprint({
- canvas: true,
- ie_activex: true,
- screen_resolution: true
-});
-
-/** An emulated, semi-unique HDID that is generally safe for HDID bans. */
-const cookieid = getCookie("fingerprint");
-let hdid;
-
-
+import Fingerprint2 from 'fingerprintjs2';
- hdid = fp.get();
- setCookie("fingerprint",hdid);
+let masterserver;
-console.log(`Your emulated HDID is ${hdid}`);
+let hdid;
+const options = {fonts: {extendedJsFonts: true, userDefinedFonts: ["Ace Attorney", "8bitoperator", "DINEngschrift"]}, excludes: {userAgent: true}};
let oldLoading = false;
-export function onLoad(){
- if (/webOS|iPod|BlackBerry|BB|PlayBook|IEMobile|Windows Phone|Kindle|Silk|PlayStation|Opera Mini/i.test(navigator.userAgent)) {
- oldLoading = true;
- }
-}
-window.onLoad = onLoad;
-const masterserver = new WebSocket("ws://" + MASTERSERVER_IP);
-masterserver.onopen = (evt) => onOpen(evt);
-masterserver.onmessage = (evt) => onMessage(evt);
+if (window.requestIdleCallback) {
+ requestIdleCallback(function () {
+ Fingerprint2.get(options, function (components) {
+ hdid = Fingerprint2.x64hash128(components.join(''), 31);
+
+ masterserver = new WebSocket("ws://" + MASTERSERVER_IP);
+ masterserver.onopen = (evt) => onOpen(evt);
+ masterserver.onmessage = (evt) => onMessage(evt);
+
+ if (/webOS|iPod|BlackBerry|BB|PlayBook|IEMobile|Windows Phone|Kindle|Silk|PlayStation|Opera Mini/i.test(navigator.userAgent)) {
+ oldLoading = true;
+ }
+ });
+ });
+} else {
+ setTimeout(function () {
+ Fingerprint2.get(options, function (components) {
+ hdid = Fingerprint2.x64hash128(components.join(''), 31);
+
+ masterserver = new WebSocket("ws://" + MASTERSERVER_IP);
+ masterserver.onopen = (evt) => onOpen(evt);
+ masterserver.onmessage = (evt) => onMessage(evt);
+
+ if (/webOS|iPod|BlackBerry|BB|PlayBook|IEMobile|Windows Phone|Kindle|Silk|PlayStation|Opera Mini/i.test(navigator.userAgent)) {
+ oldLoading = true;
+ }
+ });
+ }, 500);
+}
const server_description = [];
server_description[-1] = "This is your computer on port 50001";
@@ -79,7 +88,9 @@ export function setServ(ID) {
window.setServ = setServ;
function onOpen(_e) {
- masterserver.send("ID#webAO#webAO#%");
+ console.log(`Your emulated HDID is ${hdid}`);
+ masterserver.send(`ID#webAO#webAO#%`);
+
if (oldLoading === true) {
masterserver.send("askforservers#%");
}
@@ -97,7 +108,7 @@ function checkOnline(serverID, coIP) {
function onCOOpen(_e) {
document.getElementById(`server${serverID}`).className = "available";
oserv.send(`HI#${hdid}#%`);
- oserv.send("ID#webAO#webAO#%");
+ oserv.send(`ID#webAO#webAO#%`);
}
function onCOMessage(e) {