this post was submitted on 27 Oct 2024
3 points (100.0% liked)

Perchance - Create a Random Text Generator

463 readers
13 users here now

⚄︎ Perchance

This is a Lemmy Community for perchance.org, a platform for sharing and creating random text generators.

Feel free to ask for help, share your generators, and start friendly discussions at your leisure :)

This community is mainly for discussions between those who are building generators. For discussions about using generators, especially the popular AI ones, the community-led Casual Perchance forum is likely a more appropriate venue.

See this post for the Complete Guide to Posting Here on the Community!

Rules

1. Please follow the Lemmy.World instance rules.

2. Be kind and friendly.

  • Please be kind to others on this community (and also in general), and remember that for many people Perchance is their first experience with coding. We have members for whom English is not their first language, so please be take that into account too :)

3. Be thankful to those who try to help you.

  • If you ask a question and someone has made a effort to help you out, please remember to be thankful! Even if they don't manage to help you solve your problem - remember that they're spending time out of their day to try to help a stranger :)

4. Only post about stuff related to perchance.

  • Please only post about perchance related stuff like generators on it, bugs, and the site.

5. Refrain from requesting Prompts for the AI Tools.

  • We would like to ask to refrain from posting here needing help specifically with prompting/achieving certain results with the AI plugins (text-to-image-plugin and ai-text-plugin) e.g. "What is the good prompt for X?", "How to achieve X with Y generator?"
  • See Perchance AI FAQ for FAQ about the AI tools.
  • You can ask for help with prompting at the 'sister' community Casual Perchance, which is for more casual discussions.
  • We will still be helping/answering questions about the plugins as long as it is related to building generators with them.

6. Search through the Community Before Posting.

  • Please Search through the Community Posts here (and on Reddit) before posting to see if what you will post has similar post/already been posted.

founded 1 year ago
MODERATORS
 

Hello,

I am struggling with the output on this prompt generator, and I've tried to look up a solution and been unsuccessful so far. I honestly know nothing about coding other than what I've been learning in order to build perchance generators - so I know it may be something super simple I'm missing. Or I may have made it more complicated than it needs to be - or maybe what I want is something really complicated. I honestly don't know. And I apologize if my lingo is awful!

The URL I've shared is an ultra-simplified version of the generator I am struggling with, and most of the list items have been eliminated so that what is left is guaranteed to duplicate the problem I'm having.

What I'm trying to accomplish with the current coding:

  1. That the generator defaults to 2 specific character names - Ed and Stede.
  2. That if a user inputs characters in the input box to customize their output that these two default characters do not show up. So not the user's list + this default list being drawn from. Only the user's list is drawn from if they input characters.
  3. That for certain output possibilities (line 1 for this simplified generator), whichever list is used is consumable so that a character's name is not duplicated. For example, I would want "Ed can't stop thinking about Stede," not "Ed can't stop thinking about Ed." (I've attempted using [one] and [two] here.)

What is happening:

  1. The first time the page is loaded, or if it is refreshed, in the 1st line, where I've tried to use [one] and [two], it shows up as "undefined." Once the generate button is clicked (and all subsequent clicks as long as the page is not refreshed), the output generates correctly.
  2. If I add custom characters in the user input box (let's say "Jim" & "Olu"), on the first click of the generator button, only the 3rd line updates with these characters' names. On the second click (and all subsequent clicks if the characters are left the same), all three lines show up with the correct characters.

So I would like it if I could figure out how to make it so that: a) the output loads correctly when the generator is first opened or immediately after the page is refreshed (no "undefined") b) for the user input to show on all three lines once they've inputted their characters and clicked the generate button

Any help would be so greatly appreciated! Thank you for your time <3

you are viewing a single comment's thread
view the rest of the comments
[–] wthit56 1 points 1 month ago (1 children)

Well done! If you let me know where to look, I'll check it out :D

[–] QuaintlyFig 1 points 1 month ago* (last edited 1 month ago) (1 children)

I made another copy of my test generator to experiment with, so here's the one where I've figured out the fixes:

https://perchance.org/kzttwn1wna#edit

  1. I used your code to make the user input box in place of the other code I had originally used, and I just changed some of the names of things within it to match categories already in my generator (so I'd have to change fewer total things). Now every generated prompt shows the user inputted character names on the first click of the generate button (instead of only updating the 3rd line on the first click).

  2. I moved the line of code that defined [one] and [two] to above the line those categories are associated with in the body's "text" output -- that fixed the issue of those spots pulling up as "undefined" on the initial page load/refresh. (I felt like a dummy - but what a relief!)

  3. I changed this -- [b] & [b] -- to this -- [one] & [two] -- on the specific prompt possibilities where one or both characters are mentioned in the same line again. And I've left other prompt possibilities as [b] or [c] or [q] so that if a user inputs more than two characters, other characters can still show up on other lines of the prompt.


I do have one last question I can't seem to find a fix for. I've been unable to duplicate one part of how your example generator works. For my current generator, when the user inputs character names, the output updates on each "return" after entering each character name. I can't figure out how to get it to remain static until the user has inputted all of the names they want and then only change when they press the generate button. I think it might be related to whatever I'm running into here:

On my generator I left the button information as: onclick="update()"


In your generator, it says: onclick="update(output)"

But when I put the word output inside the parentheses, my button stops working entirely. I haven't been able to puzzle out what I'm doing or what I'm missing. Do you have any insight?

Thank you again!

[–] wthit56 1 points 4 weeks ago

The onclick takes JS code. The JS function called "update" updates the perchance stuff across the whole page. If you pass an element to the update function, it will only update that element.

So in my test, I have an element with the id "output." So just passing output to the update() function means I'm passing a reference to that element with the id "output." And then only that element is updated.