Fix lorebook import broken
This commit is contained in:
@@ -415,6 +415,43 @@ export async function characterURLImport() {
|
|||||||
function convertOffSpecCards(charaData:OldTavernChar|CharacterCardV2Risu, imgp:string|undefined = undefined):character{
|
function convertOffSpecCards(charaData:OldTavernChar|CharacterCardV2Risu, imgp:string|undefined = undefined):character{
|
||||||
const data = charaData.spec_version === '2.0' ? charaData.data : charaData
|
const data = charaData.spec_version === '2.0' ? charaData.data : charaData
|
||||||
console.log("Off spec detected, converting")
|
console.log("Off spec detected, converting")
|
||||||
|
const charbook = charaData.spec_version === '2.0' ? charaData.data.character_book : null
|
||||||
|
let lorebook:loreBook[] = []
|
||||||
|
let loresettings:undefined|loreSettings = undefined
|
||||||
|
let loreExt:undefined|any = undefined
|
||||||
|
if(charbook){
|
||||||
|
if((!checkNullish(charbook.recursive_scanning)) &&
|
||||||
|
(!checkNullish(charbook.scan_depth)) &&
|
||||||
|
(!checkNullish(charbook.token_budget))){
|
||||||
|
loresettings = {
|
||||||
|
tokenBudget:charbook.token_budget,
|
||||||
|
scanDepth:charbook.scan_depth,
|
||||||
|
recursiveScanning: charbook.recursive_scanning,
|
||||||
|
fullWordMatching: charbook?.extensions?.risu_fullWordMatching ?? false,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
loreExt = charbook.extensions
|
||||||
|
|
||||||
|
for(const book of charbook.entries){
|
||||||
|
lorebook.push({
|
||||||
|
key: book.keys.join(', '),
|
||||||
|
secondkey: book.secondary_keys?.join(', ') ?? '',
|
||||||
|
insertorder: book.insertion_order,
|
||||||
|
comment: book.name ?? book.comment ?? "",
|
||||||
|
content: book.content,
|
||||||
|
mode: "normal",
|
||||||
|
alwaysActive: book.constant ?? false,
|
||||||
|
selective: book.selective ?? false,
|
||||||
|
extentions: {...book.extensions, risu_case_sensitive: book.case_sensitive},
|
||||||
|
activationPercent: book.extensions?.risu_activationPercent,
|
||||||
|
loreCache: book.extensions?.risu_loreCache ?? null,
|
||||||
|
//@ts-ignore
|
||||||
|
useRegex: book.use_regex ?? false
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return {
|
return {
|
||||||
name: data.name ?? 'unknown name',
|
name: data.name ?? 'unknown name',
|
||||||
firstMessage: data.first_mes ?? 'unknown first message',
|
firstMessage: data.first_mes ?? 'unknown first message',
|
||||||
@@ -430,7 +467,7 @@ function convertOffSpecCards(charaData:OldTavernChar|CharacterCardV2Risu, imgp:s
|
|||||||
image: imgp,
|
image: imgp,
|
||||||
emotionImages: [],
|
emotionImages: [],
|
||||||
bias: [],
|
bias: [],
|
||||||
globalLore: [],
|
globalLore: lorebook,
|
||||||
viewScreen: 'none',
|
viewScreen: 'none',
|
||||||
chaId: uuidv4(),
|
chaId: uuidv4(),
|
||||||
sdData: defaultSdDataFunc(),
|
sdData: defaultSdDataFunc(),
|
||||||
@@ -449,7 +486,10 @@ function convertOffSpecCards(charaData:OldTavernChar|CharacterCardV2Risu, imgp:s
|
|||||||
firstMsgIndex: -1,
|
firstMsgIndex: -1,
|
||||||
replaceGlobalNote: "",
|
replaceGlobalNote: "",
|
||||||
triggerscript: [],
|
triggerscript: [],
|
||||||
additionalText: ''
|
additionalText: '',
|
||||||
|
loreExt: loreExt,
|
||||||
|
loreSettings: loresettings,
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user