diff --git a/public/notes/9.html b/public/notes/9.html index ebe9b4fb9..38c12b930 100644 --- a/public/notes/9.html +++ b/public/notes/9.html @@ -19,7 +19,7 @@

Character Anchor - affects the character played by the AI by motivating him to write longer messages.

Looks like: - [(Bot's name) talks a lot with descriptions] + [Elaborate speaker]

Style Anchor - affects the entire AI model, motivating the AI to write longer messages even when it is not acting as the character.

diff --git a/public/notes/group_reply_strategy.html b/public/notes/group_reply_strategy.html index a4fd8c984..479c0b8e0 100644 --- a/public/notes/group_reply_strategy.html +++ b/public/notes/group_reply_strategy.html @@ -35,10 +35,9 @@

2. Characters are activated by the "Talkativeness" factor.

- Talkativeness defines how often the character speaks if it was not mentioned. Adjust this value on - "Advanced definitions" screen in character editor. - Slider values are on a linear scale from 0% / Shy (character never talks unless mentioned) to - 100% / Chatty (character always replies). + Talkativeness defines how often the character speaks if they were not mentioned. Adjust this value on + "Advanced definitions" screen in character editor. Slider values are on a linear scale from + 0% / Shy (character never talks unless mentioned) to 100% / Chatty (character always replies). Default value for new characters is 50% chance.

3. Random character is selected.

diff --git a/public/script.js b/public/script.js index ac0ee3e40..975a8e4ba 100644 --- a/public/script.js +++ b/public/script.js @@ -215,7 +215,6 @@ const system_messages = { '
  • {{text}} – set the behavioral bias for the AI character
  • ', '
  • {{}} – cancel a previously set bias
  • ', '', - 'Need more help? Visit our wiki – TavernAI Wiki!' ].join('') }, welcome: @@ -231,8 +230,7 @@ const system_messages = { '
  • Create or pick a character from the list
  • ', '', 'Still have questions left?\n', - 'Check out built-in help by typing /? in any chat or visit our ', - 'TavernAI Wiki!' + 'Check out built-in help or type /? in any chat.' ].join('') }, group: { diff --git a/public/scripts/group-chats.js b/public/scripts/group-chats.js index b6fe33602..8337b4ca7 100644 --- a/public/scripts/group-chats.js +++ b/public/scripts/group-chats.js @@ -529,6 +529,44 @@ async function groupChatAutoModeWorker() { await generateGroupWrapper(true); } +async function memberClickHandler(event) { + event.stopPropagation(); + const id = $(this).data("id"); + const isDelete = !!$(this).closest("#rm_group_members").length; + const template = $(this).clone(); + let _thisGroup = groups.find((x) => x.id == selected_group); + template.data("id", id); + template.click(memberClickHandler); + + if (isDelete) { + template.find(".plus").show(); + template.find(".minus").hide(); + $("#rm_group_add_members").prepend(template); + } else { + template.find(".plus").hide(); + template.find(".minus").show(); + $("#rm_group_members").prepend(template); + } + + if (_thisGroup) { + if (isDelete) { + const index = _thisGroup.members.findIndex((x) => x === id); + if (index !== -1) { + _thisGroup.members.splice(index, 1); + } + } else { + _thisGroup.members.push(id); + template.css({ 'order': _thisGroup.members.length }); + } + await editGroup(selected_group); + updateGroupAvatar(_thisGroup); + } + + $(this).remove(); + const groupHasMembers = !!$("#rm_group_members").children().length; + $("#rm_group_submit").prop("disabled", !groupHasMembers); +} + function select_group_chats(chat_id) { const group = chat_id && groups.find((x) => x.id == chat_id); const groupName = group?.name ?? ""; @@ -537,8 +575,9 @@ function select_group_chats(chat_id) { $("#rm_group_chat_name").off(); $("#rm_group_chat_name").on("input", async function () { if (chat_id) { - group.name = $(this).val(); - $("#rm_button_selected_ch").children("h2").text(group.name); + let _thisGroup = groups.find((x) => x.id == chat_id); + _thisGroup.name = $(this).val(); + $("#rm_button_selected_ch").children("h2").text(_thisGroup.name); await editGroup(chat_id); } }); @@ -547,7 +586,8 @@ function select_group_chats(chat_id) { $('input[name="rm_group_activation_strategy"]').off(); $('input[name="rm_group_activation_strategy"]').on("input", async function(e) { if (chat_id) { - group.activation_strategy = Number(e.target.value); + let _thisGroup = groups.find((x) => x.id == chat_id); + _thisGroup.activation_strategy = Number(e.target.value); await editGroup(chat_id); } }); @@ -555,42 +595,6 @@ function select_group_chats(chat_id) { selectRightMenuWithAnimation('rm_group_chats_block'); - async function memberClickHandler(event) { - event.stopPropagation(); - const id = $(this).data("id"); - const isDelete = !!$(this).closest("#rm_group_members").length; - const template = $(this).clone(); - template.data("id", id); - template.click(memberClickHandler); - - if (isDelete) { - template.find(".plus").show(); - template.find(".minus").hide(); - $("#rm_group_add_members").prepend(template); - } else { - template.find(".plus").hide(); - template.find(".minus").show(); - $("#rm_group_members").prepend(template); - } - - if (group) { - if (isDelete) { - const index = group.members.findIndex((x) => x === id); - if (index !== -1) { - group.members.splice(index, 1); - } - } else { - group.members.push(id); - } - await editGroup(chat_id); - updateGroupAvatar(group); - } - - $(this).remove(); - const groupHasMembers = !!$("#rm_group_members").children().length; - $("#rm_group_submit").prop("disabled", !groupHasMembers); - } - // render characters list $("#rm_group_add_members").empty(); $("#rm_group_members").empty();