diff --git a/core/historiographer.js b/core/historiographer.js index 5d28ff7..9d301bd 100644 --- a/core/historiographer.js +++ b/core/historiographer.js @@ -1 +1 @@ -const _0x1b223=_0x33d1;(function(_0x5ae857,_0x53c7b3){const _0x549198=_0x33d1,_0x30ad6c=_0x5ae857();while(!![]){try{const _0x137551=-parseInt(_0x549198(0x93))/0x1+parseInt(_0x549198(0x74))/0x2*(-parseInt(_0x549198(0x9a))/0x3)+parseInt(_0x549198(0xb1))/0x4+-parseInt(_0x549198(0x9d))/0x5*(parseInt(_0x549198(0x6e))/0x6)+-parseInt(_0x549198(0x69))/0x7*(parseInt(_0x549198(0x81))/0x8)+parseInt(_0x549198(0x6d))/0x9*(-parseInt(_0x549198(0x7e))/0xa)+parseInt(_0x549198(0xef))/0xb*(parseInt(_0x549198(0xa3))/0xc);if(_0x137551===_0x53c7b3)break;else _0x30ad6c['push'](_0x30ad6c['shift']());}catch(_0x1d555f){_0x30ad6c['push'](_0x30ad6c['shift']());}}}(_0x5b12,0x81610));import{getContext,extension_settings}from'/scripts/extensions.js';import{characters}from'/script.js';import{world_names,loadWorldInfo,createNewWorldInfo,createWorldInfoEntry,saveWorldInfo}from'/scripts/world-info.js';function _0x33d1(_0x394ac5,_0x185de0){const _0x5b12b8=_0x5b12();return _0x33d1=function(_0x33d1d5,_0x2c3d73){_0x33d1d5=_0x33d1d5-0x64;let _0x2dc757=_0x5b12b8[_0x33d1d5];return _0x2dc757;},_0x33d1(_0x394ac5,_0x185de0);}import{extensionName}from'../utils/settings.js';import{getChatIdentifier}from'./lore.js';import{isGoogleEndpoint,convertToGoogleRequest,parseGoogleResponse,buildGoogleApiUrl}from'../core/utils/googleAdapter.js';import{intelligentPoll,createGooglePollingTask}from'../core/utils/pollingManager.js';let isExpeditionRunning=![],manualStopRequested=![];async function callAmily2Model(_0x35396f){const _0x4b1e30=_0x33d1,_0x5cd49c=extension_settings[extensionName],{apiUrl:_0x4ebb72,apiKey:_0x24ccf1,model:_0x221b75,temperature:_0x35ac0c,maxTokens:_0x1032a8}=_0x5cd49c;if(!_0x4ebb72||!_0x221b75)return toastr[_0x4b1e30(0x8a)](_0x4b1e30(0xc6),_0x4b1e30(0x7b)),null;const _0x2b35f3=isGoogleEndpoint(_0x4ebb72);try{let _0x1711ea;if(_0x2b35f3)_0x1711ea=buildGoogleApiUrl(_0x4ebb72,_0x221b75),console['log']('[大史官-Google外交部]\x20修正后的API地址:\x20'+_0x1711ea);else{const _0x7a8d7f=new URL(_0x4ebb72),_0x4b0602=_0x7a8d7f[_0x4b1e30(0xb0)][_0x4b1e30(0xa4)](_0x4b1e30(0xb4))||_0x7a8d7f[_0x4b1e30(0xb0)][_0x4b1e30(0xa4)]('/v1beta/openai');if(_0x4b0602)_0x1711ea=_0x4ebb72;else{let _0x446b78=_0x7a8d7f[_0x4b1e30(0xb0)];if(_0x446b78[_0x4b1e30(0xa4)](_0x4b1e30(0xd6)))_0x446b78=_0x446b78[_0x4b1e30(0xcd)](0x0,-0x1);else{if(_0x446b78[_0x4b1e30(0xa4)](_0x4b1e30(0xbf)))_0x446b78=_0x446b78[_0x4b1e30(0xcd)](0x0,-0x2);}_0x7a8d7f['pathname']=_0x446b78['replace'](/\/$/,'')+_0x4b1e30(0xb4),_0x1711ea=_0x7a8d7f[_0x4b1e30(0x7a)];}}console['groupCollapsed'](_0x4b1e30(0x75)+new Date()[_0x4b1e30(0xe8)]()),console[_0x4b1e30(0x96)](_0x4b1e30(0xe5)+_0x1711ea),console['log'](_0x4b1e30(0x9f),{'model':_0x221b75,'temperature':_0x35ac0c,'maxTokens':_0x1032a8}),console[_0x4b1e30(0x96)](_0x4b1e30(0xc2)),console[_0x4b1e30(0x91)](_0x35396f),console[_0x4b1e30(0xda)]();let _0x512bdb={'Content-Type':_0x4b1e30(0xa0)};_0x2b35f3?_0x4ebb72[_0x4b1e30(0x8b)](_0x4b1e30(0xaf))||_0x4ebb72[_0x4b1e30(0x8b)](_0x4b1e30(0x6c))?_0x512bdb[_0x4b1e30(0x8c)]=_0x4b1e30(0xe3)+_0x24ccf1:_0x512bdb['X-goog-api-key']=_0x24ccf1:_0x512bdb[_0x4b1e30(0x8c)]=_0x4b1e30(0xe3)+_0x24ccf1;let _0x48d187;_0x2b35f3?_0x48d187=JSON['stringify'](convertToGoogleRequest({'model':_0x221b75,'messages':_0x35396f,'temperature':_0x35ac0c,'max_tokens':_0x1032a8})):_0x48d187=JSON[_0x4b1e30(0xa8)]({'model':_0x221b75,'messages':_0x35396f,'temperature':_0x35ac0c,'max_tokens':_0x1032a8,'stream':![]});const _0x535fb5=await fetch(_0x1711ea,{'method':_0x4b1e30(0xaa),'headers':_0x512bdb,'body':_0x48d187});if(!_0x535fb5['ok']){const _0xaada5b=await _0x535fb5[_0x4b1e30(0xa5)]();console[_0x4b1e30(0x8a)](_0x4b1e30(0xb5),_0x535fb5['status'],_0xaada5b);throw new Error('模型B召唤失败:\x20'+_0x535fb5[_0x4b1e30(0x9e)]+_0x4b1e30(0xdf)+_0xaada5b);}let _0x2f6f43=await _0x535fb5['json']();if(_0x2b35f3&&_0x2f6f43[_0x4b1e30(0xd5)]&&_0x2f6f43[_0x4b1e30(0x66)]){console[_0x4b1e30(0x96)]('[大史官-Google外交部]\x20收到异步操作ID,启用轮询机制...');let _0x24dc49;try{const _0x228c3b=new URL(_0x4ebb72);_0x24dc49=_0x228c3b['protocol']+'//'+_0x228c3b[_0x4b1e30(0x80)];}catch{_0x24dc49=_0x4ebb72;}const _0x4f0108=createGooglePollingTask(_0x2f6f43['name'],_0x24dc49,_0x512bdb),_0x4cd3c2={'maxAttempts':0x5,'baseDelay':0xbb8,'shouldStop':_0x4af811=>_0x4af811[_0x4b1e30(0xb9)],'onError':_0x213489=>console[_0x4b1e30(0x8a)](_0x4b1e30(0xd4),_0x213489)},_0xd1abce=await intelligentPoll(_0x4f0108,_0x4cd3c2);if(!_0xd1abce['response'])throw new Error('轮询完成但未获得有效响应');_0x2f6f43=_0xd1abce['response'];}const _0x1211bf=_0x2b35f3?parseGoogleResponse(_0x2f6f43)?.[_0x4b1e30(0x7c)]?.[0x0]?.[_0x4b1e30(0xf4)]?.[_0x4b1e30(0xba)]:_0x2f6f43?.['choices']?.[0x0]?.['message']?.[_0x4b1e30(0xba)];return _0x1211bf;}catch(_0x3ea0a9){return console[_0x4b1e30(0x8a)]('[大史官-通讯异常]',_0x3ea0a9),toastr[_0x4b1e30(0x8a)](_0x4b1e30(0x79)+_0x3ea0a9[_0x4b1e30(0xf4)],_0x4b1e30(0xd8)),null;}}const RUNNING_LOG_COMMENT=_0x1b223(0xa6),PROGRESS_SEAL_REGEX=/本条勿动【前(\d+)楼总结已完成】否则后续总结无法进行。$/;async function readGoldenLedgerProgress(_0x80252c){const _0x4de2f6=_0x1b223;if(!_0x80252c)return 0x0;try{const _0x2c05c5=await loadWorldInfo(_0x80252c);if(!_0x2c05c5||!_0x2c05c5['entries'])return 0x0;const _0x2fa05d=Object[_0x4de2f6(0xca)](_0x2c05c5[_0x4de2f6(0xf5)])[_0x4de2f6(0xec)](_0x28ebf7=>_0x28ebf7[_0x4de2f6(0xd3)]===RUNNING_LOG_COMMENT&&!_0x28ebf7[_0x4de2f6(0x99)]);if(!_0x2fa05d)return 0x0;const _0x2e0a84=_0x2fa05d[_0x4de2f6(0xba)][_0x4de2f6(0xab)](PROGRESS_SEAL_REGEX);return _0x2e0a84?parseInt(_0x2e0a84[0x1],0xa):0x0;}catch(_0x594109){return console[_0x4de2f6(0x8a)]('[大史官]\x20阅览《'+_0x80252c+'》天机时出错:',_0x594109),0x0;}}export async function checkAndTriggerAutoSummary(){const _0x7f2617=_0x1b223,_0x239f3b=extension_settings[extensionName];if(!_0x239f3b['historiographySmallAutoEnable'])return;const _0x48963e=getContext();let _0x4ea88c=null;switch(_0x239f3b['lorebookTarget']){case _0x7f2617(0xc5):_0x4ea88c=characters[_0x48963e[_0x7f2617(0x95)]]?.[_0x7f2617(0x72)]?.[_0x7f2617(0x9c)]?.[_0x7f2617(0x76)];break;case _0x7f2617(0xc8):const _0x509dd0=await getChatIdentifier();_0x4ea88c=_0x7f2617(0x8d)+_0x509dd0;break;default:return;}if(!_0x4ea88c)return;const _0x74deaf=await readGoldenLedgerProgress(_0x4ea88c),_0x2decd8=_0x48963e['chat'][_0x7f2617(0x90)],_0x35b295=_0x2decd8-_0x74deaf;if(_0x35b295>=_0x239f3b[_0x7f2617(0xf3)]){const _0x235374=_0x74deaf+0x1,_0x5652f1=_0x2decd8;await executeManualSummary(_0x235374,_0x5652f1,!![]);}}export async function getAvailableWorldbooks(){return[...world_names];}export async function getLoresForWorldbook(_0x550acc){const _0x134eef=_0x1b223;if(!_0x550acc)return[];try{const _0x1c9534=await loadWorldInfo(_0x550acc);if(!_0x1c9534||!_0x1c9534['entries'])return[];return Object[_0x134eef(0xf5)](_0x1c9534[_0x134eef(0xf5)])[_0x134eef(0x92)](([,_0x4c44c6])=>!_0x4c44c6['disable'])[_0x134eef(0x68)](([_0x74230e,_0x497957])=>({'key':_0x74230e,'comment':_0x497957[_0x134eef(0xd3)]||_0x134eef(0xeb)}));}catch(_0x3e9021){return console['error'](_0x134eef(0x88)+_0x550acc+'》时出错:',_0x3e9021),[];}}function _0x5b12(){const _0xd1d25c=['split','凯旋!远征大捷!所有未载之史均已化为帝国永恒的记忆!','loreInsertionPosition','Bearer\x20','未知的史册写入目标,远征军无法开拔!','【目标地址】:\x20','遵旨!正在为您重铸《','warning','toLocaleTimeString','loreDepth','success','无标题条目','find','史册条目中无可供重铸的内容。','停战敕令已下达!远征军将在完成当前批次的任务后休整。','11rmYVdA','宏史卷重铸完毕','ceil','国库空虚','historiographySmallTriggerThreshold','message','entries','找不到指定的史册条目,重铸任务中止。','远征军已在途中,无需重复下令。','metadata','国史馆','map','14wORVKr','loreActivationMode','国史已是最新,远征军无需出动。','us-central1','3934422fpVdlE','5485938MrnoPW','远征已遵从您的敕令暂停!随时可以【继续远征】。','微言录\x20(手动)','historiographySmallJailbreakPrompt','data','historiographySmallSummaryPrompt','243562tbODhy','[Amily2-大史官]\x20准备向模型B发送机密信函...\x20@\x20','world','dispatchEvent','鸣金收兵','与模型B通讯时发生异常:\x20','href','通讯中断','choices','is_user','10poYBam','远征失败','host','1607248TjJDEM','史册已成功重铸,并保存于《','远征开始','join','以下内容是【1楼-','chat','楼总结已完成】否则后续总结无法进行。','[大史官]\x20检阅《','loreKeywords','error','includes','Authorization','Amily2-Lore-','重铸史册时发生错误。','lorebookTarget','length','table','filter','1009730CacNtP','请严格根据以下“对话记录”中的内容进行总结,不要添加任何额外信息。\x0a\x0a<对话记录>\x0a','characterId','log','user','》中的【微言录合集】...','disable','6TZWYKv','name1','extensions','5yApkOj','status','【信函参数】','application/json','historiographyLargeRefinePrompt','圣谕不明','30915744KqWPYY','endsWith','text','【敕史局】对话流水总帐','远征已在准备阶段遵令暂停!','stringify','宏史卷重铸','POST','match','mes','远征军已在营中,无需下达停战敕令。','楼详细总结记录】\x0a','aiplatform.googleapis.com','pathname','3840836JtLNMt','遵旨!正在为您熔铸\x20','assign','/v1/chat/completions','[大史官-通讯失败]','当前角色未绑定主世界书,无法写入总结。','system','圣谕悉知','done','content','圣谕有误','\x20批次战役准备中...\x20(','远征军已开拔!目标:','选定的楼层范围内无有效对话。','/v1','未知的史册写入指令','amily2-expedition-state-change','【信函正文\x20(messages)】:','当前角色未绑定主世界书,远征军无法开拔!','\x20层历史,分\x20','character_main','API\x20URL或模型未配置,大史官无法召唤模型B。','info','dedicated','min','values','编年史已成功更新!','trim','slice','楼】已发生的剧情回顾。\x0a\x0a---\x0a\x0a','\x20至\x20','\x20(宏史卷重铸)','远征途中遭遇重大挫折,任务中止!您可以随时【继续远征】。','name2','comment','[轮询错误]','name','/v1/','远征完毕','通讯异常','[大史官-远征失败]','groupEnd','replace','\x0a','always','请将以下多个零散的“详细总结记录”提炼并融合成一段连贯的章节历史。原文如下:\x0a\x0a','\x20-\x20'];_0x5b12=function(){return _0xd1d25c;};return _0x5b12();}export async function executeManualSummary(_0x28e250,_0x23ae7c,_0x5e36e4=![]){const _0x1c9345=_0x1b223,_0x3db757=_0x5e36e4?'微言录\x20(自动)':_0x1c9345(0x70);toastr[_0x1c9345(0xc7)](_0x1c9345(0xb2)+_0x28e250+_0x1c9345(0xcf)+_0x23ae7c+'\x20层的对话历史...',_0x3db757);const _0x194b9f=getContext(),_0x208b28=_0x194b9f[_0x1c9345(0x86)],_0x1ffab7=extension_settings[extensionName],_0x4bdac9=_0x208b28['slice'](_0x28e250,_0x23ae7c+0x1);if(_0x4bdac9[_0x1c9345(0x90)]===0x0){toastr[_0x1c9345(0xe7)](_0x1c9345(0xbe),_0x1c9345(0xbb));return;}const _0x283662=_0x194b9f[_0x1c9345(0x9b)]||'用户',_0x4889b5=_0x194b9f[_0x1c9345(0xd2)]||'角色',_0x5bf0d4=_0x4bdac9[_0x1c9345(0x68)](_0x5b4452=>{const _0x1c2c75=_0x1c9345,_0x5daef2=_0x5b4452[_0x1c2c75(0x7d)]?_0x283662:_0x4889b5;return _0x5daef2+':\x20'+_0x5b4452[_0x1c2c75(0xac)]['trim']();})[_0x1c9345(0x84)]('\x0a'),_0x20325f=[{'role':_0x1c9345(0xb7),'content':_0x1ffab7[_0x1c9345(0x71)]},{'role':'system','content':_0x1ffab7[_0x1c9345(0x73)]},{'role':_0x1c9345(0x97),'content':_0x1c9345(0x94)+_0x5bf0d4+_0x1c9345(0xdc)}],_0x1b059c=await callAmily2Model(_0x20325f);if(!_0x1b059c)return;try{let _0x13c3a1=null;switch(_0x1ffab7[_0x1c9345(0x8f)]){case _0x1c9345(0xc5):_0x13c3a1=characters[_0x194b9f[_0x1c9345(0x95)]]?.['data']?.[_0x1c9345(0x9c)]?.[_0x1c9345(0x76)];if(!_0x13c3a1){toastr[_0x1c9345(0x8a)](_0x1c9345(0xb6),_0x1c9345(0x67));return;}break;case'dedicated':const _0x1a4585=await getChatIdentifier();_0x13c3a1=_0x1c9345(0x8d)+_0x1a4585;!world_names[_0x1c9345(0x8b)](_0x13c3a1)&&await createNewWorldInfo(_0x13c3a1);break;default:toastr[_0x1c9345(0x8a)](_0x1c9345(0xc0),'圣谕不明');return;}const _0x408da9=await loadWorldInfo(_0x13c3a1),_0x46abc0=Object[_0x1c9345(0xca)](_0x408da9[_0x1c9345(0xf5)])['find'](_0x577970=>_0x577970[_0x1c9345(0xd3)]===RUNNING_LOG_COMMENT&&!_0x577970['disable']),_0x1e18a6='\x0a\x0a本条勿动【前'+_0x23ae7c+_0x1c9345(0x87),_0x203112='\x0a\x0a---\x0a\x0a【'+_0x28e250+'楼至'+_0x23ae7c+_0x1c9345(0xae)+_0x1b059c;if(_0x46abc0){const _0x2b0a45=_0x46abc0[_0x1c9345(0xba)]['replace'](PROGRESS_SEAL_REGEX,'')['trim']();_0x46abc0[_0x1c9345(0xba)]=_0x2b0a45+_0x203112+_0x1e18a6;}else{const _0x3c3700='以下是依照顺序已发生剧情'+_0x203112,_0x847f4a=createWorldInfoEntry(_0x13c3a1,_0x408da9),_0x38d49b=_0x1ffab7[_0x1c9345(0x89)][_0x1c9345(0xe0)](',')[_0x1c9345(0x68)](_0xa5fe5d=>_0xa5fe5d[_0x1c9345(0xcc)]())['filter'](Boolean),_0x2b86d8=_0x1ffab7[_0x1c9345(0x6a)]===_0x1c9345(0xdd),_0x467286={'before_char':0x0,'after_char':0x1,'before_an':0x2,'after_an':0x3,'at_depth':0x4};Object[_0x1c9345(0xb3)](_0x847f4a,{'comment':RUNNING_LOG_COMMENT,'content':_0x3c3700+_0x1e18a6,'key':_0x38d49b,'constant':_0x2b86d8,'position':_0x467286[_0x1ffab7[_0x1c9345(0xe2)]]??0x4,'depth':_0x1ffab7[_0x1c9345(0xe9)],'disable':![]});}await saveWorldInfo(_0x13c3a1,_0x408da9,!![]),toastr['success'](_0x1c9345(0xcb),_0x3db757+'完毕');}catch(_0x530b8f){console[_0x1c9345(0x8a)]('[大史官]\x20'+_0x3db757+'写入失败:',_0x530b8f),toastr[_0x1c9345(0x8a)]('写入'+_0x3db757+'时发生错误。','国史馆');}}export async function executeRefinement(_0x58918f,_0x1499f6){const _0x66408f=_0x1b223;toastr['info'](_0x66408f(0xe6)+_0x58918f+_0x66408f(0x98),_0x66408f(0xa9));try{const _0x2bcd90=await loadWorldInfo(_0x58918f),_0x4d5b8c=_0x2bcd90?.[_0x66408f(0xf5)][_0x1499f6];if(!_0x4d5b8c){toastr[_0x66408f(0x8a)](_0x66408f(0x64),'圣谕有误');return;}const _0x8348fd=_0x4d5b8c[_0x66408f(0xba)],_0xd03294=extension_settings[extensionName];let _0x5ae79c=_0x8348fd,_0x4d00d0='',_0x2e5972=0x0;const _0x2e3991=_0x8348fd[_0x66408f(0xab)](PROGRESS_SEAL_REGEX);_0x2e3991&&(_0x4d00d0=_0x2e3991[0x0],_0x2e5972=parseInt(_0x2e3991[0x1],0xa),_0x5ae79c=_0x8348fd[_0x66408f(0xdb)](PROGRESS_SEAL_REGEX,'')[_0x66408f(0xcc)]());if(!_0x5ae79c[_0x66408f(0xcc)]()){toastr['warning'](_0x66408f(0xed),_0x66408f(0xf2));return;}const _0x184763=[{'role':_0x66408f(0xb7),'content':_0xd03294['historiographyLargeJailbreakPrompt']},{'role':_0x66408f(0xb7),'content':_0xd03294[_0x66408f(0xa1)]},{'role':_0x66408f(0x97),'content':_0x66408f(0xde)+_0x5ae79c}],_0x40d287=await callAmily2Model(_0x184763);if(!_0x40d287)return;const _0x1a2897=_0x66408f(0x85)+_0x2e5972+_0x66408f(0xce),_0x47df96=_0x1a2897+_0x40d287;_0x4d5b8c[_0x66408f(0xba)]=_0x47df96+('\x0a\x0a'+_0x4d00d0),_0x4d5b8c['comment']=_0x4d5b8c['comment'][_0x66408f(0xdb)](/\s*\(已精炼\)|\s*\(宏史卷重铸\)/g,''),_0x4d5b8c[_0x66408f(0xd3)]+=_0x66408f(0xd0),await saveWorldInfo(_0x58918f,_0x2bcd90,!![]),toastr[_0x66408f(0xea)](_0x66408f(0x82)+_0x58918f+'》!',_0x66408f(0xf0));}catch(_0x5367bf){console[_0x66408f(0x8a)]('[大史官]\x20重铸任务失败:',_0x5367bf),toastr['error'](_0x66408f(0x8e),_0x66408f(0x67));}}export async function executeExpedition(){const _0x5eaeab=_0x1b223;if(isExpeditionRunning){toastr[_0x5eaeab(0xc7)](_0x5eaeab(0x65),'圣谕悉知');return;}isExpeditionRunning=!![],manualStopRequested=![],document[_0x5eaeab(0x77)](new CustomEvent('amily2-expedition-state-change',{'detail':{'isRunning':!![]}}));try{const _0x6bd9c8=extension_settings[extensionName],_0x38a61d=getContext();let _0xc17733=null;switch(_0x6bd9c8[_0x5eaeab(0x8f)]){case _0x5eaeab(0xc5):_0xc17733=characters[_0x38a61d['characterId']]?.[_0x5eaeab(0x72)]?.[_0x5eaeab(0x9c)]?.['world'];if(!_0xc17733){toastr[_0x5eaeab(0x8a)](_0x5eaeab(0xc3),_0x5eaeab(0xa2)),isExpeditionRunning=![],document[_0x5eaeab(0x77)](new CustomEvent(_0x5eaeab(0xc1),{'detail':{'isRunning':![],'manualStop':![]}}));return;}break;case'dedicated':const _0x277d09=await getChatIdentifier();_0xc17733=_0x5eaeab(0x8d)+_0x277d09;break;default:toastr[_0x5eaeab(0x8a)](_0x5eaeab(0xe4),_0x5eaeab(0xa2)),isExpeditionRunning=![],document['dispatchEvent'](new CustomEvent('amily2-expedition-state-change',{'detail':{'isRunning':![],'manualStop':![]}}));return;}const _0x1d0237=await readGoldenLedgerProgress(_0xc17733),_0x23edd8=_0x38a61d[_0x5eaeab(0x86)][_0x5eaeab(0x90)],_0x2a3830=_0x23edd8-_0x1d0237;if(_0x2a3830<=0x0){toastr[_0x5eaeab(0xc7)](_0x5eaeab(0x6b),'凯旋'),isExpeditionRunning=![],document[_0x5eaeab(0x77)](new CustomEvent('amily2-expedition-state-change',{'detail':{'isRunning':![],'manualStop':![]}}));return;}const _0x330cd0=_0x6bd9c8[_0x5eaeab(0xf3)],_0x483dc1=Math[_0x5eaeab(0xf1)](_0x2a3830/_0x330cd0);toastr[_0x5eaeab(0xc7)](_0x5eaeab(0xbd)+_0x2a3830+_0x5eaeab(0xc4)+_0x483dc1+'\x20批次征服!',_0x5eaeab(0x83));let _0x23d349=_0x1d0237;for(let _0x146248=0x0;_0x146248<_0x483dc1;_0x146248++){if(manualStopRequested){toastr[_0x5eaeab(0xe7)](_0x5eaeab(0x6f),_0x5eaeab(0x78));break;}const _0x3ad2d0=_0x23d349+0x1,_0x2c8b9c=Math[_0x5eaeab(0xc9)](_0x23d349+_0x330cd0,_0x23edd8),_0x3f17a6='远征战役\x20('+(_0x146248+0x1)+'/'+_0x483dc1+')',_0x11084a=0x7d0;_0x146248>0x0&&(toastr['info']('第\x20'+(_0x146248+0x1)+_0x5eaeab(0xbc)+_0x11084a/0x3e8+'秒后接敌)',_0x3f17a6),await new Promise(_0x5a590e=>setTimeout(_0x5a590e,_0x11084a)));if(manualStopRequested){toastr[_0x5eaeab(0xe7)](_0x5eaeab(0xa7),_0x5eaeab(0x78));break;}await executeManualSummary(_0x3ad2d0,_0x2c8b9c,!![]),_0x23d349=_0x2c8b9c;}!manualStopRequested&&toastr['success'](_0x5eaeab(0xe1),_0x5eaeab(0xd7));}catch(_0x5166a5){console[_0x5eaeab(0x8a)](_0x5eaeab(0xd9),_0x5166a5),toastr[_0x5eaeab(0x8a)](_0x5eaeab(0xd1),_0x5eaeab(0x7f));}finally{isExpeditionRunning=![],document[_0x5eaeab(0x77)](new CustomEvent(_0x5eaeab(0xc1),{'detail':{'isRunning':![],'manualStop':manualStopRequested}}));}}export function stopExpedition(){const _0x45692d=_0x1b223;isExpeditionRunning?(manualStopRequested=!![],toastr[_0x45692d(0xc7)](_0x45692d(0xee),'圣谕传达')):toastr[_0x45692d(0xe7)](_0x45692d(0xad),_0x45692d(0xb8));} +const _0x59ddf4=_0x5552;(function(_0x50058c,_0x204f8c){const _0x2b3ffb=_0x5552,_0x439270=_0x50058c();while(!![]){try{const _0x16743f=-parseInt(_0x2b3ffb(0x156))/0x1*(-parseInt(_0x2b3ffb(0x19a))/0x2)+-parseInt(_0x2b3ffb(0x1af))/0x3+-parseInt(_0x2b3ffb(0x15d))/0x4+-parseInt(_0x2b3ffb(0x162))/0x5*(parseInt(_0x2b3ffb(0x1d7))/0x6)+-parseInt(_0x2b3ffb(0x1b3))/0x7*(-parseInt(_0x2b3ffb(0x1c7))/0x8)+-parseInt(_0x2b3ffb(0x16a))/0x9+parseInt(_0x2b3ffb(0x183))/0xa;if(_0x16743f===_0x204f8c)break;else _0x439270['push'](_0x439270['shift']());}catch(_0x4aa542){_0x439270['push'](_0x439270['shift']());}}}(_0x202a,0xc9360));import{getContext,extension_settings}from'/scripts/extensions.js';import{characters}from'/script.js';import{world_names,loadWorldInfo,createNewWorldInfo,createWorldInfoEntry,saveWorldInfo}from'/scripts/world-info.js';import{extensionName}from'../utils/settings.js';import{getChatIdentifier}from'./lore.js';import{isGoogleEndpoint,convertToGoogleRequest,parseGoogleResponse,buildGoogleApiUrl}from'../core/utils/googleAdapter.js';import{intelligentPoll,createGooglePollingTask}from'../core/utils/pollingManager.js';let ChatCompletionService=undefined;function _0x5552(_0x4094ed,_0x4365f7){const _0x202aa0=_0x202a();return _0x5552=function(_0x5552ac,_0x44d856){_0x5552ac=_0x5552ac-0x147;let _0x2a2fb2=_0x202aa0[_0x5552ac];return _0x2a2fb2;},_0x5552(_0x4094ed,_0x4365f7);}try{const module=await import(_0x59ddf4(0x188));ChatCompletionService=module[_0x59ddf4(0x1d3)],console[_0x59ddf4(0x15e)](_0x59ddf4(0x153));}catch(_0x4e0eca){console[_0x59ddf4(0x1cb)]('[大史官]\x20未能领取“皇家信使”的兵符,部分高级功能将受限。',_0x4e0eca);}let isExpeditionRunning=![],manualStopRequested=![];async function callAmily2Model(_0x453765){const _0x4cfceb=_0x59ddf4,_0x1332f6=extension_settings[extensionName],{apiUrl:_0x4c71cf,apiKey:_0x3c36dc,model:_0xbe0cee,temperature:_0x224e45,maxTokens:_0x47f3a4,forceProxyForCustomApi:_0x1a7324}=_0x1332f6;if(!_0x4c71cf||!_0xbe0cee)return toastr[_0x4cfceb(0x17b)](_0x4cfceb(0x1d2),_0x4cfceb(0x189)),null;console[_0x4cfceb(0x1c1)](_0x4cfceb(0x14e)+new Date()[_0x4cfceb(0x1d9)]()),console['log'](_0x4cfceb(0x168)),console[_0x4cfceb(0x1a7)](_0x453765),console['groupEnd']();try{let _0x298e6d;if(_0x1a7324){console[_0x4cfceb(0x15e)](_0x4cfceb(0x16c));if(typeof ChatCompletionService==='undefined'||!ChatCompletionService?.['processRequest'])throw new Error(_0x4cfceb(0x16e));const _0x407d45=isGoogleEndpoint(_0x4c71cf);let _0x1feb9d=_0x4c71cf;_0x407d45&&(_0x1feb9d=buildGoogleApiUrl(_0x4c71cf,_0xbe0cee),console[_0x4cfceb(0x15e)](_0x4cfceb(0x191)+_0x1feb9d));const _0x3ca628={'stream':![],'messages':_0x453765,'max_tokens':_0x47f3a4,'temperature':_0x224e45,'model':_0xbe0cee,'chat_completion_source':_0x4cfceb(0x16d),'custom_url':_0x1feb9d,'reverse_proxy':_0x4cfceb(0x164)},_0x109d4c=await ChatCompletionService[_0x4cfceb(0x1a8)](_0x3ca628,{},!![]);if(!_0x109d4c||!_0x109d4c[_0x4cfceb(0x16b)])throw new Error(_0x4cfceb(0x15f));_0x298e6d=_0x109d4c[_0x4cfceb(0x16b)];}else{console[_0x4cfceb(0x15e)](_0x4cfceb(0x196));const _0x19a889=isGoogleEndpoint(_0x4c71cf);let _0x18e56e;if(_0x19a889)_0x18e56e=buildGoogleApiUrl(_0x4c71cf,_0xbe0cee);else{let _0x44a846=_0x4c71cf['trim']();_0x44a846[_0x4cfceb(0x1bf)](_0x4cfceb(0x18f))||_0x44a846[_0x4cfceb(0x1bf)]('/v1beta/openai')?_0x18e56e=_0x44a846:(_0x44a846[_0x4cfceb(0x1bf)]('/')&&(_0x44a846=_0x44a846['slice'](0x0,-0x1)),_0x44a846['endsWith'](_0x4cfceb(0x1cf))&&(_0x44a846=_0x44a846[_0x4cfceb(0x181)](0x0,-0x3)),_0x18e56e=_0x44a846+_0x4cfceb(0x18f));}let _0x1ca0ef={'Content-Type':_0x4cfceb(0x1c2)};_0x19a889?_0x4c71cf[_0x4cfceb(0x152)](_0x4cfceb(0x171))||_0x4c71cf['includes'](_0x4cfceb(0x1c9))?_0x1ca0ef[_0x4cfceb(0x182)]='Bearer\x20'+_0x3c36dc:_0x1ca0ef['X-goog-api-key']=_0x3c36dc:_0x1ca0ef[_0x4cfceb(0x182)]=_0x4cfceb(0x1ce)+_0x3c36dc;let _0x40f18c;_0x19a889?_0x40f18c=JSON[_0x4cfceb(0x169)](convertToGoogleRequest({'model':_0xbe0cee,'messages':_0x453765,'temperature':_0x224e45,'max_tokens':_0x47f3a4})):_0x40f18c=JSON[_0x4cfceb(0x169)]({'model':_0xbe0cee,'messages':_0x453765,'temperature':_0x224e45,'max_tokens':_0x47f3a4,'stream':![]});const _0x1a4523=await fetch(_0x18e56e,{'method':_0x4cfceb(0x1c0),'headers':_0x1ca0ef,'body':_0x40f18c});if(!_0x1a4523['ok']){const _0x3ab64f=await _0x1a4523['text']();throw new Error(_0x4cfceb(0x1a6)+_0x1a4523[_0x4cfceb(0x1dd)]+_0x4cfceb(0x19e)+_0x3ab64f);}let _0x243f09=await _0x1a4523[_0x4cfceb(0x147)]();if(_0x19a889&&_0x243f09['name']&&_0x243f09['metadata']){let _0xf09f39;try{const _0x527255=new URL(_0x4c71cf);_0xf09f39=_0x527255[_0x4cfceb(0x1a3)]+'//'+_0x527255[_0x4cfceb(0x1a5)];}catch{_0xf09f39=_0x4c71cf;}const _0x6f2f03=createGooglePollingTask(_0x243f09[_0x4cfceb(0x1b6)],_0xf09f39,_0x1ca0ef),_0x489ec6={'maxAttempts':0x5,'baseDelay':0xbb8,'shouldStop':_0x5873ad=>_0x5873ad[_0x4cfceb(0x17c)],'onError':_0x363910=>console[_0x4cfceb(0x17b)](_0x4cfceb(0x14b),_0x363910)},_0x27758a=await intelligentPoll(_0x6f2f03,_0x489ec6);if(!_0x27758a['response'])throw new Error(_0x4cfceb(0x161));_0x243f09=_0x27758a['response'];}_0x298e6d=_0x19a889?parseGoogleResponse(_0x243f09)?.['choices']?.[0x0]?.[_0x4cfceb(0x18d)]?.[_0x4cfceb(0x16b)]:_0x243f09?.[_0x4cfceb(0x15a)]?.[0x0]?.[_0x4cfceb(0x18d)]?.[_0x4cfceb(0x16b)];}return _0x298e6d;}catch(_0x5866d7){return console[_0x4cfceb(0x17b)](_0x4cfceb(0x1ca),_0x5866d7),toastr[_0x4cfceb(0x17b)](_0x4cfceb(0x1ab)+_0x5866d7[_0x4cfceb(0x18d)],_0x4cfceb(0x1ac)),null;}}function _0x202a(){const _0x16c9e0=['7qUoRPD','split','圣谕不明','name','\x0a','远征已在准备阶段遵令暂停!','amily2-expedition-state-change','》中的【微言录合集】...','》时出错:','chat','微言录\x20(自动)','data','endsWith','POST','groupCollapsed','application/json','[大史官-远征失败]','info','[大史官]\x20检阅《','disable','1697272vhSDdH','Amily2-Lore-','us-central1','[大史官-通讯异常]','warn','楼总结已完成】否则后续总结无法进行。','entries','Bearer\x20','/v1','ceil','name1','API\x20URL或模型未配置,大史官无法召唤模型B。','ChatCompletionService','未知的史册写入指令','遵旨!正在为您熔铸\x20','loreKeywords','1305762OWeFtP','国史馆','toLocaleTimeString','[大史官]\x20','圣谕传达','historiographyLargeRefinePrompt','status','system','json','当前角色未绑定主世界书,无法写入总结。','宏史卷重铸','match','[轮询错误]','character_main','values','[Amily2-大史官]\x20准备向模型B发送机密信函...\x20@\x20','characterId','选定的楼层范围内无有效对话。','圣谕悉知','includes','[大史官]\x20已成功获颁“皇家信使”的召唤兵符。','鸣金收兵','秒后接敌)','270653mhZKjL','historiographySmallAutoEnable','trim','map','choices','world','filter','1160428BnfFCf','log','皇家信使未能从模型B带回有效情报。','未知的史册写入目标,远征军无法开拔!','轮询完成但未获得有效响应','15yHKuLu','historiographyLargeJailbreakPrompt','/api/proxy','assign','\x20批次战役准备中...\x20(','停战敕令已下达!远征军将在完成当前批次的任务后休整。','【信函正文\x20(messages)】:','stringify','2677338ZtpUbY','content','[大史官-外交部]\x20接到圣谕,执行“皇家密道”协议...','custom','大史官无法使用“皇家密道”:缺少皇家信使(ChatCompletionService)。','楼】已发生的剧情回顾。\x0a\x0a---\x0a\x0a','\x20层历史,分\x20','aiplatform.googleapis.com','mes','warning','编年史已成功更新!','dedicated','historiographySmallJailbreakPrompt','国史已是最新,远征军无需出动。','圣谕有误','extensions','replace','error','done','重铸史册时发生错误。','以下内容是【1楼-','\x20至\x20','\x20(宏史卷重铸)','slice','Authorization','22025210qFjUDn','dispatchEvent','时发生错误。','name2','请严格根据以下“对话记录”中的内容进行总结,不要添加任何额外信息。\x0a\x0a<对话记录>\x0a','/scripts/custom-request.js','通讯中断','微言录\x20(手动)','请将以下多个零散的“详细总结记录”提炼并融合成一段连贯的章节历史。原文如下:\x0a\x0a','远征失败','message','lorebookTarget','/v1/chat/completions','always','[大史官-皇家密道]\x20已为GoogleAPI构建完整路径:\x20','loreInsertionPosition','comment','historiographySmallTriggerThreshold','\x20批次征服!','[大史官-外交部]\x20执行“帝国直通车”协议(直接通讯)...','is_user','远征已遵从您的敕令暂停!随时可以【继续远征】。','远征军已开拔!目标:','6kDVZEi','\x0a\x0a本条勿动【前','》天机时出错:','success','\x20-\x20','join','loreActivationMode','无标题条目','遵旨!正在为您重铸《','protocol','凯旋!远征大捷!所有未载之史均已化为帝国永恒的记忆!','host','模型B召唤失败:\x20','table','processRequest','find','length','与模型B通讯时发生异常:\x20','通讯异常','史册已成功重铸,并保存于《','user','3486027sBtlci','min','\x0a\x0a---\x0a\x0a【','\x20层的对话历史...'];_0x202a=function(){return _0x16c9e0;};return _0x202a();}const RUNNING_LOG_COMMENT='【敕史局】对话流水总帐',PROGRESS_SEAL_REGEX=/本条勿动【前(\d+)楼总结已完成】否则后续总结无法进行。$/;async function readGoldenLedgerProgress(_0x553d58){const _0x523195=_0x59ddf4;if(!_0x553d58)return 0x0;try{const _0x39f243=await loadWorldInfo(_0x553d58);if(!_0x39f243||!_0x39f243[_0x523195(0x1cd)])return 0x0;const _0x1d5903=Object[_0x523195(0x14d)](_0x39f243[_0x523195(0x1cd)])[_0x523195(0x1a9)](_0x129883=>_0x129883[_0x523195(0x193)]===RUNNING_LOG_COMMENT&&!_0x129883['disable']);if(!_0x1d5903)return 0x0;const _0x285a0c=_0x1d5903['content'][_0x523195(0x14a)](PROGRESS_SEAL_REGEX);return _0x285a0c?parseInt(_0x285a0c[0x1],0xa):0x0;}catch(_0x24430b){return console[_0x523195(0x17b)]('[大史官]\x20阅览《'+_0x553d58+_0x523195(0x19c),_0x24430b),0x0;}}export async function checkAndTriggerAutoSummary(){const _0x44c927=_0x59ddf4,_0x345e8d=extension_settings[extensionName];if(!_0x345e8d[_0x44c927(0x157)])return;const _0x35f4d1=getContext();let _0x11f9cc=null;switch(_0x345e8d['lorebookTarget']){case _0x44c927(0x14c):_0x11f9cc=characters[_0x35f4d1['characterId']]?.[_0x44c927(0x1be)]?.[_0x44c927(0x179)]?.[_0x44c927(0x15b)];break;case'dedicated':const _0x4546f0=await getChatIdentifier();_0x11f9cc=_0x44c927(0x1c8)+_0x4546f0;break;default:return;}if(!_0x11f9cc)return;const _0x159797=await readGoldenLedgerProgress(_0x11f9cc),_0x3ebe47=_0x35f4d1['chat'][_0x44c927(0x1aa)],_0x501627=_0x3ebe47-_0x159797;if(_0x501627>=_0x345e8d[_0x44c927(0x194)]){const _0x5c41ec=_0x159797+0x1,_0x44dcd7=_0x3ebe47;await executeManualSummary(_0x5c41ec,_0x44dcd7,!![]);}}export async function getAvailableWorldbooks(){return[...world_names];}export async function getLoresForWorldbook(_0x14d8e7){const _0x4de13a=_0x59ddf4;if(!_0x14d8e7)return[];try{const _0x3dc480=await loadWorldInfo(_0x14d8e7);if(!_0x3dc480||!_0x3dc480[_0x4de13a(0x1cd)])return[];return Object[_0x4de13a(0x1cd)](_0x3dc480[_0x4de13a(0x1cd)])[_0x4de13a(0x15c)](([,_0x48ac63])=>!_0x48ac63[_0x4de13a(0x1c6)])[_0x4de13a(0x159)](([_0xf0975a,_0x44c51c])=>({'key':_0xf0975a,'comment':_0x44c51c['comment']||_0x4de13a(0x1a1)}));}catch(_0x222a61){return console[_0x4de13a(0x17b)](_0x4de13a(0x1c5)+_0x14d8e7+_0x4de13a(0x1bb),_0x222a61),[];}}export async function executeManualSummary(_0xd72962,_0x210ade,_0x3bdb7f=![]){const _0xb4e356=_0x59ddf4,_0x3f0a7d=_0x3bdb7f?_0xb4e356(0x1bd):_0xb4e356(0x18a);toastr[_0xb4e356(0x1c4)](_0xb4e356(0x1d5)+_0xd72962+_0xb4e356(0x17f)+_0x210ade+_0xb4e356(0x1b2),_0x3f0a7d);const _0x468dc9=getContext(),_0x463e16=_0x468dc9[_0xb4e356(0x1bc)],_0x45c6e8=extension_settings[extensionName],_0x2e2bb0=_0x463e16[_0xb4e356(0x181)](_0xd72962,_0x210ade+0x1);if(_0x2e2bb0[_0xb4e356(0x1aa)]===0x0){toastr[_0xb4e356(0x173)](_0xb4e356(0x150),_0xb4e356(0x178));return;}const _0x1635b9=_0x468dc9[_0xb4e356(0x1d1)]||'用户',_0x568451=_0x468dc9[_0xb4e356(0x186)]||'角色',_0x4898a1=_0x2e2bb0[_0xb4e356(0x159)](_0x61036d=>{const _0x440786=_0xb4e356,_0x3f8a39=_0x61036d[_0x440786(0x197)]?_0x1635b9:_0x568451;return _0x3f8a39+':\x20'+_0x61036d[_0x440786(0x172)][_0x440786(0x158)]();})[_0xb4e356(0x19f)]('\x0a'),_0x434298=[{'role':_0xb4e356(0x1de),'content':_0x45c6e8[_0xb4e356(0x176)]},{'role':_0xb4e356(0x1de),'content':_0x45c6e8['historiographySmallSummaryPrompt']},{'role':_0xb4e356(0x1ae),'content':_0xb4e356(0x187)+_0x4898a1+_0xb4e356(0x1b7)}],_0x1d11de=await callAmily2Model(_0x434298);if(!_0x1d11de)return;try{let _0x409d23=null;switch(_0x45c6e8[_0xb4e356(0x18e)]){case'character_main':_0x409d23=characters[_0x468dc9[_0xb4e356(0x14f)]]?.[_0xb4e356(0x1be)]?.[_0xb4e356(0x179)]?.[_0xb4e356(0x15b)];if(!_0x409d23){toastr[_0xb4e356(0x17b)](_0xb4e356(0x148),_0xb4e356(0x1d8));return;}break;case'dedicated':const _0x5caeab=await getChatIdentifier();_0x409d23=_0xb4e356(0x1c8)+_0x5caeab;!world_names['includes'](_0x409d23)&&await createNewWorldInfo(_0x409d23);break;default:toastr[_0xb4e356(0x17b)](_0xb4e356(0x1d4),_0xb4e356(0x1b5));return;}const _0x2223c3=await loadWorldInfo(_0x409d23),_0x4ddbcf=Object[_0xb4e356(0x14d)](_0x2223c3[_0xb4e356(0x1cd)])[_0xb4e356(0x1a9)](_0x29cc84=>_0x29cc84['comment']===RUNNING_LOG_COMMENT&&!_0x29cc84[_0xb4e356(0x1c6)]),_0x31fd2c=_0xb4e356(0x19b)+_0x210ade+_0xb4e356(0x1cc),_0x15b836=_0xb4e356(0x1b1)+_0xd72962+'楼至'+_0x210ade+'楼详细总结记录】\x0a'+_0x1d11de;if(_0x4ddbcf){const _0x590e43=_0x4ddbcf[_0xb4e356(0x16b)]['replace'](PROGRESS_SEAL_REGEX,'')[_0xb4e356(0x158)]();_0x4ddbcf['content']=_0x590e43+_0x15b836+_0x31fd2c;}else{const _0x2b84de='以下是依照顺序已发生剧情'+_0x15b836,_0x24fd46=createWorldInfoEntry(_0x409d23,_0x2223c3),_0x3d48a6=_0x45c6e8[_0xb4e356(0x1d6)][_0xb4e356(0x1b4)](',')[_0xb4e356(0x159)](_0x38fb38=>_0x38fb38[_0xb4e356(0x158)]())[_0xb4e356(0x15c)](Boolean),_0x25df23=_0x45c6e8[_0xb4e356(0x1a0)]===_0xb4e356(0x190),_0x59fd24={'before_char':0x0,'after_char':0x1,'before_an':0x2,'after_an':0x3,'at_depth':0x4};Object[_0xb4e356(0x165)](_0x24fd46,{'comment':RUNNING_LOG_COMMENT,'content':_0x2b84de+_0x31fd2c,'key':_0x3d48a6,'constant':_0x25df23,'position':_0x59fd24[_0x45c6e8[_0xb4e356(0x192)]]??0x4,'depth':_0x45c6e8['loreDepth'],'disable':![]});}await saveWorldInfo(_0x409d23,_0x2223c3,!![]),toastr['success'](_0xb4e356(0x174),_0x3f0a7d+'完毕');}catch(_0x28d103){console[_0xb4e356(0x17b)](_0xb4e356(0x1da)+_0x3f0a7d+'写入失败:',_0x28d103),toastr[_0xb4e356(0x17b)]('写入'+_0x3f0a7d+_0xb4e356(0x185),_0xb4e356(0x1d8));}}export async function executeRefinement(_0x4e1590,_0x45ddb2){const _0x26ca5e=_0x59ddf4;toastr['info'](_0x26ca5e(0x1a2)+_0x4e1590+_0x26ca5e(0x1ba),_0x26ca5e(0x149));try{const _0x3c80b4=await loadWorldInfo(_0x4e1590),_0x1eba2c=_0x3c80b4?.[_0x26ca5e(0x1cd)][_0x45ddb2];if(!_0x1eba2c){toastr['error']('找不到指定的史册条目,重铸任务中止。',_0x26ca5e(0x178));return;}const _0x2e7bf9=_0x1eba2c[_0x26ca5e(0x16b)],_0x24976f=extension_settings[extensionName];let _0x4a39e2=_0x2e7bf9,_0x2000c7='',_0x3aeaca=0x0;const _0x2c79c3=_0x2e7bf9[_0x26ca5e(0x14a)](PROGRESS_SEAL_REGEX);_0x2c79c3&&(_0x2000c7=_0x2c79c3[0x0],_0x3aeaca=parseInt(_0x2c79c3[0x1],0xa),_0x4a39e2=_0x2e7bf9['replace'](PROGRESS_SEAL_REGEX,'')[_0x26ca5e(0x158)]());if(!_0x4a39e2[_0x26ca5e(0x158)]()){toastr['warning']('史册条目中无可供重铸的内容。','国库空虚');return;}const _0x3ba3cb=[{'role':_0x26ca5e(0x1de),'content':_0x24976f[_0x26ca5e(0x163)]},{'role':_0x26ca5e(0x1de),'content':_0x24976f[_0x26ca5e(0x1dc)]},{'role':_0x26ca5e(0x1ae),'content':_0x26ca5e(0x18b)+_0x4a39e2}],_0x54604d=await callAmily2Model(_0x3ba3cb);if(!_0x54604d)return;const _0x411c83=_0x26ca5e(0x17e)+_0x3aeaca+_0x26ca5e(0x16f),_0x3cc01e=_0x411c83+_0x54604d;_0x1eba2c[_0x26ca5e(0x16b)]=_0x3cc01e+('\x0a\x0a'+_0x2000c7),_0x1eba2c[_0x26ca5e(0x193)]=_0x1eba2c[_0x26ca5e(0x193)][_0x26ca5e(0x17a)](/\s*\(已精炼\)|\s*\(宏史卷重铸\)/g,''),_0x1eba2c[_0x26ca5e(0x193)]+=_0x26ca5e(0x180),await saveWorldInfo(_0x4e1590,_0x3c80b4,!![]),toastr[_0x26ca5e(0x19d)](_0x26ca5e(0x1ad)+_0x4e1590+'》!','宏史卷重铸完毕');}catch(_0x2bdf64){console[_0x26ca5e(0x17b)]('[大史官]\x20重铸任务失败:',_0x2bdf64),toastr[_0x26ca5e(0x17b)](_0x26ca5e(0x17d),_0x26ca5e(0x1d8));}}export async function executeExpedition(){const _0x4d0f9f=_0x59ddf4;if(isExpeditionRunning){toastr[_0x4d0f9f(0x1c4)]('远征军已在途中,无需重复下令。',_0x4d0f9f(0x151));return;}isExpeditionRunning=!![],manualStopRequested=![],document[_0x4d0f9f(0x184)](new CustomEvent(_0x4d0f9f(0x1b9),{'detail':{'isRunning':!![]}}));try{const _0x51ceed=extension_settings[extensionName],_0x520256=getContext();let _0x598717=null;switch(_0x51ceed[_0x4d0f9f(0x18e)]){case _0x4d0f9f(0x14c):_0x598717=characters[_0x520256[_0x4d0f9f(0x14f)]]?.['data']?.['extensions']?.[_0x4d0f9f(0x15b)];if(!_0x598717){toastr['error']('当前角色未绑定主世界书,远征军无法开拔!',_0x4d0f9f(0x1b5)),isExpeditionRunning=![],document[_0x4d0f9f(0x184)](new CustomEvent(_0x4d0f9f(0x1b9),{'detail':{'isRunning':![],'manualStop':![]}}));return;}break;case _0x4d0f9f(0x175):const _0x315df7=await getChatIdentifier();_0x598717=_0x4d0f9f(0x1c8)+_0x315df7;break;default:toastr['error'](_0x4d0f9f(0x160),_0x4d0f9f(0x1b5)),isExpeditionRunning=![],document['dispatchEvent'](new CustomEvent(_0x4d0f9f(0x1b9),{'detail':{'isRunning':![],'manualStop':![]}}));return;}const _0x42ebe0=await readGoldenLedgerProgress(_0x598717),_0x594747=_0x520256[_0x4d0f9f(0x1bc)][_0x4d0f9f(0x1aa)],_0x5d0aed=_0x594747-_0x42ebe0;if(_0x5d0aed<=0x0){toastr[_0x4d0f9f(0x1c4)](_0x4d0f9f(0x177),'凯旋'),isExpeditionRunning=![],document['dispatchEvent'](new CustomEvent('amily2-expedition-state-change',{'detail':{'isRunning':![],'manualStop':![]}}));return;}const _0x1ac2f7=_0x51ceed[_0x4d0f9f(0x194)],_0x2539b6=Math[_0x4d0f9f(0x1d0)](_0x5d0aed/_0x1ac2f7);toastr[_0x4d0f9f(0x1c4)](_0x4d0f9f(0x199)+_0x5d0aed+_0x4d0f9f(0x170)+_0x2539b6+_0x4d0f9f(0x195),'远征开始');let _0x468edf=_0x42ebe0;for(let _0x2e9561=0x0;_0x2e9561<_0x2539b6;_0x2e9561++){if(manualStopRequested){toastr[_0x4d0f9f(0x173)](_0x4d0f9f(0x198),_0x4d0f9f(0x154));break;}const _0x5cbeb1=_0x468edf+0x1,_0x104091=Math[_0x4d0f9f(0x1b0)](_0x468edf+_0x1ac2f7,_0x594747),_0x270f4d='远征战役\x20('+(_0x2e9561+0x1)+'/'+_0x2539b6+')',_0x3a3b34=0x7d0;_0x2e9561>0x0&&(toastr[_0x4d0f9f(0x1c4)]('第\x20'+(_0x2e9561+0x1)+_0x4d0f9f(0x166)+_0x3a3b34/0x3e8+_0x4d0f9f(0x155),_0x270f4d),await new Promise(_0x24302c=>setTimeout(_0x24302c,_0x3a3b34)));if(manualStopRequested){toastr['warning'](_0x4d0f9f(0x1b8),_0x4d0f9f(0x154));break;}await executeManualSummary(_0x5cbeb1,_0x104091,!![]),_0x468edf=_0x104091;}!manualStopRequested&&toastr['success'](_0x4d0f9f(0x1a4),'远征完毕');}catch(_0x27a4f4){console['error'](_0x4d0f9f(0x1c3),_0x27a4f4),toastr['error']('远征途中遭遇重大挫折,任务中止!您可以随时【继续远征】。',_0x4d0f9f(0x18c));}finally{isExpeditionRunning=![],document[_0x4d0f9f(0x184)](new CustomEvent(_0x4d0f9f(0x1b9),{'detail':{'isRunning':![],'manualStop':manualStopRequested}}));}}export function stopExpedition(){const _0xc60e93=_0x59ddf4;isExpeditionRunning?(manualStopRequested=!![],toastr[_0xc60e93(0x1c4)](_0xc60e93(0x167),_0xc60e93(0x1db))):toastr['warning']('远征军已在营中,无需下达停战敕令。','圣谕悉知');}