Doing Perchance.org things…

Links

  • 1 Post
  • 55 Comments
Joined 2 years ago
cake
Cake day: June 21st, 2023

help-circle

  • You are using https://perchance.org/ai-character-chat correct? not other link? On the Developer Tools, you can navigate to the Application or Storage directly and check the IndexedDB -> chatbot-ui-v1 to see if there are still any data there.

    Can you also try going to the top near the filter on the console, then go to the ai-character-chat frame, on hover it should show the page highlighted.

    Then on the input on the bottom of the console: run exportRawDb("chatbot-ui-v1")

    and it would download a .cbor.gz file. You can try to import it on an incognito tab and check if the data is there.


  • The ‘show all characters’ should only be shown when there are at least 100 characters to show.
    Have you also tried searching for the character, it should return most of the characters and it would override the at least 100 characters?
    Are you view, edit, or delete the characters? Can you try clicking the ‘folder’ and leaving the prompt blank and click okay to set the character to the default folder?
    Can you export all of your data? Then on an Incognito/InPrivate tab, import it and see if all of the data is there and no errors.
    Triple make sure that all of your data is exported. Before proceeding on the following.
    Then you can try and delete the data on the non-incognito browser, then import the old data back.




  • updateInputVisibilities() is used to ‘show’ the inputs that have the visible() function which checks a condition in which should the element be visible. It is run every time on any inputs.

    For example, you could have the ‘select’ only be visible if another select has a certain value e.g.:

    genre
      type = select
      options
        fantasy = fantasy | fiction
        sci fi = sci fi | fiction
        biography = biography | non-fiction
    
    fictionalSetting
      type = select
      visible() =>
        return input.genre.split('|')[1].trim() == "fiction"
      options
        dystopian = dystopian
        paradise = paradise
    
    nonFictionalSetting
      type = select
      visible() =>
        return input.genre.split('|')[1].trim() == "non-fiction"
      options
        New York = new york
        Berlin = berlin
    

    Where depending on the genre selected, you can have different inputs showing.

    I would recommend not using the @inputs option of remember-plugin, since it will essentially mirror the remember = true of the t2i-framework, as you have said on your comment.

    On page load, it would parse the document for any input, select, and textarea elements, and add the specific handlers to store their variables on input / on change, just like the t2i-framework, then dispatch the event for each individual input so if the page has any changes based on the inputs it would be applied, which triggers the updateInputVisibilities().

    Using both would essentially double the items stored in the local storage, increasing page load times. So, if you want to use remember-plugin for inputs other than those made by the t2i-framework, I recommend using the variable method instead of the @inputs. Here’s an example: https://perchance.org/1hozdxpbxc










  • On your picture it seems that you only have one character. Are you expecting more or no? It also seems that you have two DBs:

    You may be able to probably fix it by deleting the other one (empty one). But if you have data on that, you might lose it.
    When I tried, you could create the ‘third’ character, and it would add those messages from the thread to that character. Like so:

    1. Open ai-character-chat in incognito
    2. Import the Raw
    3. Keep data
    4. Confirm with ‘yes’
    5. If it asks you to delete those threads, click cancel.
    6. Create a new character since the current character ID is #2, so the next one would be #3.
    7. The imported thread would now then show up.





  • You can’t access the ‘heart button’ since it is on an Iframe/embedded page. You can manually set seeds for the images like so:

    // https://perchance.org/text-to-image-plugin-example-4
    character
      a {mech|demon|cyberpunk} {warrior|minion}
      a cyberpunk {cat|crab}
    
    place
      soviet russia
      a small village
      a mountainous region
      an underwater cavern
    
    season
      winter
      summer
    
    digit = {0-9}
    seed = [digit.selectMany(8).join("")]
    
    prompt
      prompt = a portrait of a [character] in [place], [season]
      seed = [s]
      
    output
      [s = seed.selectOne]<br>[image(prompt)] <br><br> [lastTextToImagePrompt] <br><br>
    

    Then on your HTML:

    <div>[output.selectMany(3).join("")]</div>