kone
소미소프트
소미소프트

코네콘 움짤 업로드용 임시 유저스크립트

06/07/2026, 16:22:21
일반
17398 views · 3 likes
ViolentMonkey 유저스크립트

// ==UserScript==
// @name kone.gg GIF 업로드 수정 (ffmpeg module worker fix)
// @namespace kone.gg.gif.fix
// @match https://kone.gg/*
// @run-at document-start
// @grant none
// @version 0.1
// @description module 워커 → classic 우회 + importScripts/fetch/import 경로 절대화
// ==/UserScript==
(function () {
'use strict';
const NativeWorker = window.Worker;
const ORIGIN = location.origin;

function PatchedWorker(url, opts) {
let abs;
try { abs = new URL(url, location.href).href; } catch (e) { abs = String(url); }
const isModule = !!(opts && opts.type === 'module');

try {
if (isModule && abs.includes('/immutable/workers/worker-')) {
const xhr = new XMLHttpRequest();
xhr.open('GET', abs, false);
xhr.send(null);

if (xhr.status === 200 && xhr.responseText.includes('createFFmpegCore')) {
const src = xhr.responseText;

const preamble =
'(function(){' +
'var ORIGIN=' + JSON.stringify(ORIGIN) + ';' +
'function abs(u){' +
'try{' +
'if(typeof u==="string"&&u[0]==="/"&&u[1]!=="/")return ORIGIN+u;' + // 루트경로만 절대화
'return new URL(u,ORIGIN).href;' +
'}catch(e){return u}' +
'}' +
// importScripts 절대화
'if(typeof importScripts==="function"){' +
'var _is=importScripts;' +
'importScripts=function(){return _is.apply(this,Array.prototype.map.call(arguments,abs))};' +
'}' +
// fetch 절대화 (wasm 로딩이 여기로 나감)
'if(typeof fetch==="function"){' +
'var _ft=fetch;' +
'self.fetch=function(input,init){' +
'try{' +
'if(typeof input==="string"){input=abs(input);}' +
'else if(input&&input.url){input=new Request(abs(input.url),input);}' +
'}catch(e){}' +
'return _ft.call(this,input,init);' +
'};' +
'}' +
// 동적 import 절대화
'self.__dynImport=function(u){return import(abs(u))};' +
'})();\n';

const patchedSrc = src.replace(/\bimport\(/g, 'self.__dynImport(');
const blobURL = URL.createObjectURL(
new Blob([preamble + patchedSrc], { type: 'text/javascript' })
);

return new NativeWorker(blobURL);
}
}
} catch (e) {
// 후킹 실패 시 원본 워커로 폴백
}
return new NativeWorker(url, opts);
}

PatchedWorker.prototype = NativeWorker.prototype;
Object.setPrototypeOf(PatchedWorker, NativeWorker);
window.Worker = PatchedWorker;
})();

ViolentMonkey 유저스크립트 base64인코딩

Ly8gPT1Vc2VyU2NyaXB0PT0KLy8gQG5hbWUgICAgICAgICBrb25lLmdnIEdJRiDsl4XroZzrk5wg7IiY7KCVIChmZm1wZWcgbW9kdWxlIHdvcmtlciBmaXgpCi8vIEBuYW1lc3BhY2UgICAga29uZS5nZy5naWYuZml4Ci8vIEBtYXRjaCAgICAgICAgaHR0cHM6Ly9rb25lLmdnLyoKLy8gQHJ1bi1hdCAgICAgICBkb2N1bWVudC1zdGFydAovLyBAZ3JhbnQgICAgICAgIG5vbmUKLy8gQHZlcnNpb24gICAgICAwLjEKLy8gQGRlc2NyaXB0aW9uICBtb2R1bGUg7JuM7LukIOKGkiBjbGFzc2ljIOyasO2ajCArIGltcG9ydFNjcmlwdHMvZmV0Y2gvaW1wb3J0IOqyveuhnCDsoIjrjIDtmZQKLy8gPT0vVXNlclNjcmlwdD09CihmdW5jdGlvbiAoKSB7CiAgJ3VzZSBzdHJpY3QnOwogIGNvbnN0IE5hdGl2ZVdvcmtlciA9IHdpbmRvdy5Xb3JrZXI7CiAgY29uc3QgT1JJR0lOID0gbG9jYXRpb24ub3JpZ2luOwoKICBmdW5jdGlvbiBQYXRjaGVkV29ya2VyKHVybCwgb3B0cykgewogICAgbGV0IGFiczsKICAgIHRyeSB7IGFicyA9IG5ldyBVUkwodXJsLCBsb2NhdGlvbi5ocmVmKS5ocmVmOyB9IGNhdGNoIChlKSB7IGFicyA9IFN0cmluZyh1cmwpOyB9CiAgICBjb25zdCBpc01vZHVsZSA9ICEhKG9wdHMgJiYgb3B0cy50eXBlID09PSAnbW9kdWxlJyk7CgogICAgdHJ5IHsKICAgICAgaWYgKGlzTW9kdWxlICYmIGFicy5pbmNsdWRlcygnL2ltbXV0YWJsZS93b3JrZXJzL3dvcmtlci0nKSkgewogICAgICAgIGNvbnN0IHhociA9IG5ldyBYTUxIdHRwUmVxdWVzdCgpOwogICAgICAgIHhoci5vcGVuKCdHRVQnLCBhYnMsIGZhbHNlKTsKICAgICAgICB4aHIuc2VuZChudWxsKTsKCiAgICAgICAgaWYgKHhoci5zdGF0dXMgPT09IDIwMCAmJiB4aHIucmVzcG9uc2VUZXh0LmluY2x1ZGVzKCdjcmVhdGVGRm1wZWdDb3JlJykpIHsKICAgICAgICAgIGNvbnN0IHNyYyA9IHhoci5yZXNwb25zZVRleHQ7CgogICAgICAgICAgY29uc3QgcHJlYW1ibGUgPQogICAgICAgICAgICAnKGZ1bmN0aW9uKCl7JyArCiAgICAgICAgICAgICAgJ3ZhciBPUklHSU49JyArIEpTT04uc3RyaW5naWZ5KE9SSUdJTikgKyAnOycgKwogICAgICAgICAgICAgICdmdW5jdGlvbiBhYnModSl7JyArCiAgICAgICAgICAgICAgICAndHJ5eycgKwogICAgICAgICAgICAgICAgICAnaWYodHlwZW9mIHU9PT0ic3RyaW5nIiYmdVswXT09PSIvIiYmdVsxXSE9PSIvIilyZXR1cm4gT1JJR0lOK3U7JyArICAvLyDro6jtirjqsr3roZzrp4wg7KCI64yA7ZmUCiAgICAgICAgICAgICAgICAgICdyZXR1cm4gbmV3IFVSTCh1LE9SSUdJTikuaHJlZjsnICsKICAgICAgICAgICAgICAgICd9Y2F0Y2goZSl7cmV0dXJuIHV9JyArCiAgICAgICAgICAgICAgJ30nICsKICAgICAgICAgICAgICAvLyBpbXBvcnRTY3JpcHRzIOygiOuMgO2ZlAogICAgICAgICAgICAgICdpZih0eXBlb2YgaW1wb3J0U2NyaXB0cz09PSJmdW5jdGlvbiIpeycgKwogICAgICAgICAgICAgICAgJ3ZhciBfaXM9aW1wb3J0U2NyaXB0czsnICsKICAgICAgICAgICAgICAgICdpbXBvcnRTY3JpcHRzPWZ1bmN0aW9uKCl7cmV0dXJuIF9pcy5hcHBseSh0aGlzLEFycmF5LnByb3RvdHlwZS5tYXAuY2FsbChhcmd1bWVudHMsYWJzKSl9OycgKwogICAgICAgICAgICAgICd9JyArCiAgICAgICAgICAgICAgLy8gZmV0Y2gg7KCI64yA7ZmUICh3YXNtIOuhnOuUqeydtCDsl6zquLDroZwg64KY6rCQKQogICAgICAgICAgICAgICdpZih0eXBlb2YgZmV0Y2g9PT0iZnVuY3Rpb24iKXsnICsKICAgICAgICAgICAgICAgICd2YXIgX2Z0PWZldGNoOycgKwogICAgICAgICAgICAgICAgJ3NlbGYuZmV0Y2g9ZnVuY3Rpb24oaW5wdXQsaW5pdCl7JyArCiAgICAgICAgICAgICAgICAgICd0cnl7JyArCiAgICAgICAgICAgICAgICAgICAgJ2lmKHR5cGVvZiBpbnB1dD09PSJzdHJpbmciKXtpbnB1dD1hYnMoaW5wdXQpO30nICsKICAgICAgICAgICAgICAgICAgICAnZWxzZSBpZihpbnB1dCYmaW5wdXQudXJsKXtpbnB1dD1uZXcgUmVxdWVzdChhYnMoaW5wdXQudXJsKSxpbnB1dCk7fScgKwogICAgICAgICAgICAgICAgICAnfWNhdGNoKGUpe30nICsKICAgICAgICAgICAgICAgICAgJ3JldHVybiBfZnQuY2FsbCh0aGlzLGlucHV0LGluaXQpOycgKwogICAgICAgICAgICAgICAgJ307JyArCiAgICAgICAgICAgICAgJ30nICsKICAgICAgICAgICAgICAvLyDrj5nsoIEgaW1wb3J0IOygiOuMgO2ZlAogICAgICAgICAgICAgICdzZWxmLl9fZHluSW1wb3J0PWZ1bmN0aW9uKHUpe3JldHVybiBpbXBvcnQoYWJzKHUpKX07JyArCiAgICAgICAgICAgICd9KSgpO1xuJzsKCiAgICAgICAgICBjb25zdCBwYXRjaGVkU3JjID0gc3JjLnJlcGxhY2UoL1xiaW1wb3J0XCgvZywgJ3NlbGYuX19keW5JbXBvcnQoJyk7CiAgICAgICAgICBjb25zdCBibG9iVVJMID0gVVJMLmNyZWF0ZU9iamVjdFVSTCgKICAgICAgICAgICAgbmV3IEJsb2IoW3ByZWFtYmxlICsgcGF0Y2hlZFNyY10sIHsgdHlwZTogJ3RleHQvamF2YXNjcmlwdCcgfSkKICAgICAgICAgICk7CgogICAgICAgICAgcmV0dXJuIG5ldyBOYXRpdmVXb3JrZXIoYmxvYlVSTCk7CiAgICAgICAgfQogICAgICB9CiAgICB9IGNhdGNoIChlKSB7CiAgICAgIC8vIO2bhO2CuSDsi6TtjKgg7IucIOybkOuzuCDsm4zsu6TroZwg7Y+067CxCiAgICB9CiAgICByZXR1cm4gbmV3IE5hdGl2ZVdvcmtlcih1cmwsIG9wdHMpOwogIH0KCiAgUGF0Y2hlZFdvcmtlci5wcm90b3R5cGUgPSBOYXRpdmVXb3JrZXIucHJvdG90eXBlOwogIE9iamVjdC5zZXRQcm90b3R5cGVPZihQYXRjaGVkV29ya2VyLCBOYXRpdmVXb3JrZXIpOwogIHdpbmRvdy5Xb3JrZXIgPSBQYXRjaGVkV29ya2VyOwp9KSgpOw==


몇 일 전부터 webp나 gif 같은 움짤이 코네콘에 안 올라가지길래 claude로 바이브 코딩해서 해결했습니다.
사이트 업데이트되면 작동을 안하거나 또는 문제를 일으킬 수 있으니, 움짤 업로드할때만 잠시 적용시키는 것을 권장드립니다.

(수정) 해당 문제는 6월 11일자 패치로 해결되었습니다.

1

3
5 comments
06/07
06/07
[복구요청] 군청의 오르파네지 1.05 노모 RJ01006462
요청
dl2061
08/24 7551 0
[rk-2][구매보급/미번]친구엄마가 내 거근으로 마구 가버렸던 여름축제편
동인
프로베스트캣
08/24 121046 31
지피티 사용량 끝나서 플러스로 결제했는데
일반
piriparafuru
08/24 7568 5
(스포, H씬 스압주의) SAO Invisible Trap_verβ8.5 리뷰
후기 및 공략
drogba
08/24 27988 13
AI, 명조) 스토리에서는 보여줄 수 없는 명조의 애프터스토리
야짤
카제가토오루
08/24 19688 9
노모) 요정창관 3호실 레이시 ~갈색 피부의 엘프를 지명한 동정 오크~ 2
동인
ㅇㅇ
08/24 127223 115
극도무뢰 EX여경 의지 어떻게 채움?
질문
sinbokchi
08/24 8283 0
바이러스 토탈 이 정도는 괜찮은건가요?
질문
symbung0008
08/24 9129 0
AI)블아)스노하라자매 행복보테배3p
야짤
koreno1
08/24 21101 5
루나 번역기에서 ezTrans를 사용하려면 에러가 뜨는데 이유 아시는분?
질문
chiruki
08/24 6899 0
[복구요청] 무한유급
요청
애플파이pie
08/24 8731 0
훌륭한 썰기로구나
일반
vivy
08/24 6896 2
The wife next door후기
후기 및 공략
rtiuy
08/24 15039 3
젠가쿠 2 (ぜんがく!!(2)) 복구 요청합니다
요청
wesdxc23
08/24 6443 0
플레시 게임
질문
tktky2
08/24 6239 -6
미번/노모패치) SAO Invisible Trap vβ8.5
미번
hellowolrd
08/24 61325 75
Amatani Haruka-IF: 이웃사람들에게 씨뿌리기 할 수 있는 세계관의 이야기~소꿉친구 동급생의 경우~
동인
k8625
08/24 167567 290
여행물 노예의 그 맛이 있음
일반
dkak332
08/24 7819 0
동음은 왕자님계<< 이게 존나 많아서 좋음
일반
sweetroll
08/24 8329 6
[요청] 에투알 마리아주 1.1.1 RJ01586101
요청
manmenmii
08/24 8516 0
작품 추천좀 해주라
질문
dkak332
08/24 6694 -2
서큐버스 계승자 엔딩보면 갤러리 열림?
질문
기러기가리거리
08/24 6285 0
AI)버튜버) 오니와 꼬맹
야짤
dkeie
08/24 18566 6
그냥 궁금한건데 소리?
일반
mugumugu
08/24 6898 -14
[복구요청] (한글자막) POKO 작가꺼 NTR영상 모음집
요청
karatro
08/24 9228 4
꼴림 치트키
일반
kamasot
08/24 21509 47
SAO NTR vβ8.5 업데이트 (8월 업데이트)
정보
drogba
08/24 28819 11
아니 백합 음성은 와 이라노
일반
skkanz
08/24 5868 -2
리즈벨의 아틀리에 후기
후기 및 공략
에로탐구가
08/24 13375 3
상태이상 3편 발매일 앞당겨짐
정보
kkkkkk0909
08/24 22603 8