Home Creators Posts Import Register Favorites Logout

Downloads

Content

This Excel file contains 500+ prompts that I've collected, organized, edited, and adjusted to work better with the tag-based prompting style used by TensorArt.

The workbook also includes a Random Prompt Picker, so you can randomly select prompts instead of manually searching through hundreds of them.

Of course, you can still choose a specific prompt yourself whenever you want.

I'll explain how everything works below, including the random picker, the row history system, the character-specific prompt system, and finally the Base Prompt that I personally use.This is the file of excel:

Prompts Pickers (Fan).xlsm

⚠️ Important: Enable Macros

This Excel file requires VBA Macros for the Random Prompt Picker to work.

When you open the file, Excel may show a security notification asking whether you want to enable macros or content.

πŸ‘‰ Please allow / enable the macros if you want to use the Random Picker.

Without macros, the prompt list itself will still be readable, but the automated random functions will not work.

πŸ“š Sheet 1 β€” Prompts List

Let's start with the main sheet:(Need censor if admin can contact about this)

Prompts List

The main prompt database runs from Column A to Column D.

The list can continue indefinitely, so you can keep adding more prompts whenever you want.

πŸ–ΌοΈ Column A β€” Image

Column A is intended to contain a sample image showing what the prompt can produce.

However...

I'm lazy and usually don't add example images myself. πŸ˜‚

So you'll probably see Column A empty in many places.

You can still add your own reference images there if you want.

πŸ”ž Column B β€” NSFW / SFW

Column B contains the category of the prompt.

There are three possible options:

SFW

NSFW

All

This tells the Random Prompt Picker what type of content the prompt is intended for.

For example:

SFW β†’ only appears when filtering for SFW.

NSFW β†’ only appears when filtering for NSFW.

All β†’ can appear in either category.

🏷️ Column C β€” Tag Option

Column C contains a short description of what the prompt contains.

Think of this as a quick label so you can understand the prompt without reading the entire thing.

For example:

(Landscape)(All)(New)nope

These are not necessarily part of the actual AI prompt.

They are mainly labels used to help organize and filter the database.

πŸ“ Column D β€” Prompt Use

Column D contains the actual prompt.

I assume most people using this Excel already understand what an AI prompt is, so I won't spend too much time explaining the basic concept here.

However, there is one important thing you need to pay attention to:

,,,

You'll see this symbol used in some prompts.

This is important because I use it to separate the parts of the prompt that should also be copied into ADetailer.

For example, the structure may look like:

(solo), [face-related tags] ,,, "remaining prompt"

or:

[face-related tags],,, "remaining prompt"

The section associated with the character's face is the part I usually want to reuse for ADetailer.

Typical examples include things like:

looking at viewer

blush

open mouth

smile

facial expression

eye-related tags

hair-related tags

So the easiest rule is:

πŸ‘‰ If you see ,,,, pay attention to the section around it.

If there is no and (All) ,,,, you can simply copy the entire prompt into ADetailer when needed.

I'll explain exactly why I use this system in the Base Prompt section later.

πŸ“Œ Special Terms Used in Column C & D

There are several labels you'll see repeatedly.

(Landscape)

This means the prompt is intended for a landscape / horizontal composition.

So before generating the image, change your generation canvas from the usual portrait / vertical format to a landscape / horizontal format.

(All)

This means you can use the entire prompt in both your main generation prompt and ADetailer instead of only copying part of it.

I'll explain the difference in the ADetailer section later.

(New)

I use (New) when I've personally edited or modified the prompt.

This is simply a label I add myself.

You can use it or ignore it depending on how you want to organize your own prompt library.

I'll explain why I keep track of (New) later in the Copy Code Row section.

nope

nope is basically my way of saying:

Don't use this prompt for random selection.

You can put nope in Column C or Column D when a prompt is empty, unfinished, removed, or simply not something you want the Random Picker to select.

For example, if you delete a prompt but don't have another idea to put there yet, you can simply write:

nope

That lets the Random Picker recognize it as something that should normally be ignored.

🎲 Random Generation Picker

Now let's move to the other section of the sheet:

Random Generation Picker

The main controls are around H3 / H4.

Here you choose between:

SFW

NSFW

All

This determines which prompts the Random Picker is allowed to select.

For example:

SFW β†’ only prompts marked SFW or compatible promptsNSFW β†’ only prompts marked NSFW or compatible promptsAll β†’ only prompts marked All or compatible prompts

After selecting your category:

πŸ‘‰ Press the Random button.

The system will randomly select a prompt from the database.

The generated result will show you:

the Row number

the Tag

the Prompt Use

You can then simply click on the prompt cell (the Prompt Use) and:

Ctrl + C β†’ Copy β†’ Paste wherever you need it.

⚠️ Important: Don't Edit the Buttons or VBA

Please don't double-click or modify the cells, buttons, or VBA code unless you already know what you're doing.

The workbook contains custom VBA logic.

If you accidentally change something:

πŸ‘‰ Ctrl + Z can often undo the change.

If you don't know what a particular cell or button does, it's better to leave it alone.

πŸ”’ Column N β€” Row

Column N shows the row number of the prompt that was selected.

For example:

Row 57

means the selected prompt came from row 57 of the Prompt List.

This is useful because the workbook can keep track of exactly which prompt you generated.

πŸ“œ Column O β€” Random Row History

Column O stores the history of the rows you've already selected.

For example:

57, 18, 103, 42, 88...

This is important because I designed the Random Picker so it does not repeatedly select the same row.

The system reads the numbers stored in Column O and blocks those rows from being selected again.

So instead of constantly getting the same prompt:

Random β†’ prompt ARandom β†’ prompt ARandom β†’ prompt A...

the system remembers what you've already received.

You can also manually edit this row history if you want to customize it.

πŸ”„ Reset

The Reset button clears the stored row history in Column O.

That means the Random Picker can start selecting prompts from the full list again.

So:

πŸ‘‰ Use Reset when you want to start a completely new random cycle.

πŸ”Ž Go To Row

The GoToRow button uses the row number currently shown in Column N.

For example:

If Column N says:

57

pressing GoToRow will take you directly to row 57 in the Prompt List.

This is useful when you want to inspect the original prompt, its tag, or its notes.

🚫 Column Q β€” Exclude

Column Q allows you to control which labels should be excluded from random selection.

This can be useful for things such as:

nope

(New)

nope + (New)

or other labels you decide to use

There is also a custom option that I call:

Nothing Special

If you choose that option, the system will simply allow prompts containing nope or (New) as well.

So this section is basically a filter for deciding:

"What should the Random Picker ignore?"

πŸ“‹ Sheet 2 β€” Copy Code Row

The second sheet is:

Copy Code Row

This sheet is useful when you want to keep a separate record of prompts already used for a specific character.

For example, imagine you're working on:

Character A

You randomly generate several prompts.

You can copy the row numbers stored in Column O and paste them into:

String Number Rows

Then you can keep them stored for that character.

πŸ‘€ Name Character

Use this field to write the character you're working on.

For example:

Character A

or:

Dan Heng

The name is mainly for your own organization.

🧹 Removing Rows from the Stored List

There is also an additional system in this sheet for removing certain rows from the stored number list.

This is based on whether the corresponding prompt contains:

nope

(New)

There are two choices:

All

This removes the relevant rows from the stored list for all characters.

Custom

This lets you remove them only for a specific character.

If you choose Custom, you must enter the character name exactly as it appears in the Name Character field.

For example:

Name Character: Dan Heng

Then Custom Name must also use:

Dan Heng

Spelling and spacing should match.

If the names don't match exactly, the filtering won't work correctly.

Also keep your character names clearly separated from each other.

🧠 Why Keep Row History?

You might wonder:

"Why not just randomly pick something every time?"

Because I wanted the system to function more like a real randomized pool.

The row history prevents the same prompt from appearing again until you reset the cycle.

This gives you a much larger variety of prompts before the list starts repeating.

🎨 Now Let's Talk About My Base Prompt

Now we get to the part many people are probably more interested in. πŸ‘€

The Base Prompt is the general structure I personally use when generating artwork.

Because TensorArt and TensorArtHub can be used differently for SFW and NSFW workflows, the exact setup can vary.

Some of my LoRA previews also include the prompts I normally use, but the actual setup may differ depending on the content.

So here's the general formula I use.

🧩 My Base Prompt Structure

The structure is generally:

male focus, 1boy, "character-specific details from the LoRA" ,//Prompt, "your chosen prompt or a prompt selected from the Random Picker" ,//Background, depth of field, anime coloring ,//Quality, masterpiece, best quality, amazing quality, shade, countershading, subsurface scattering, detailed face, "style tags"

The idea is simply to divide the prompt into several sections.

Character

This contains:

male focus

1boy

character-specific LoRA tags

Prompt

This is where you put your actual scene / pose / situation.

This can be:

something you manually choose

or something selected from the Random Prompt Picker

Background

This contains environment and depth-related tags.

Quality

This contains my usual quality and rendering tags.

If you become comfortable with prompting, you can modify or expand these sections however you like.

🚫 My Negative Prompt

My general negative prompt is:

low quality, (worst quality, bad quality:1.2), worst detail, poorly drawn, lowres, low resolution, blurry, text box, subtitle, caption, watermark, translated, signature, english text, artist name, twitter username, patreon username, logo, too many watermarks, sketch, jpeg artifacts, old, oldest, censored, simple background, ugly, bad art, duplicate, bilateral symmetry, outline, deformed, disfigured, mutation, bad anatomy, bad proportions, missing parts, extra limbs, extra digits, extra head, conjoined, multiple views, bad hands, bad eyes, mismatched pupils, film grain, scan artifacts, moirΓ© pattern, chromatic aberration, dithering, halftone, screentone, edge artifact, aliasing, outline, blending, speech bubble, negative space, blank page, error, high brightness, sharp colors, hdr, glow halo, bad shadow, realistic, hyperrealistic, 3d, photo, floating object, woman, 1girl, hetero, shota, breast, pussy, vagina, lipstick, hair band, chibi, loli, EasynegativeV2

This is the negative prompt structure I've personally been using.

You don't have to copy every single part exactly.

Once you understand how the structure works, you can build your own version around your own workflow.

πŸ” Models, Settings Prompt, Upscale and ADetailer

I also frequently use Models, Settings Prompts, Upscale and ADetailer.

Models:

Settings Prompt:

Upscale:

ADetailer:

The ADetailer prompt follows a simpler structure.

Generally, I focus mainly on the face and head-related information.

For example:

male focus, 1boy, "character-specific face and hair details" ,//FacePrompt, "face-related prompt" ,//Quality, masterpiece, best quality, amazing quality, shade, countershading, subsurface scattering, detailed face

The negative prompt I normally use for ADetailer is:

low quality, (worst quality, bad quality:1.2), sketch, jpeg artifacts, signature, watermark, old, oldest, worst detail, lowres, low resolution, blurry, ugly, bad art, poorly drawn face, poorly drawn eyes, artistic error, film grain, scan artifacts, very displeasing, chromatic aberration, dithering, halftone, screentone, multiple views, logo, too many watermarks, negative space, blank page, @_@, mismatched pupils, bad anatomy

The reason I recommend keeping ADetailer focused primarily on the face is because that is where small problems often appear after the main generation.

Things like:

eyes

pupils

mouth

expression

facial details

hair details

can benefit from the additional correction pass.

πŸ”— Remember the ,,,

And this is where the ,,, from the Prompt Use column becomes important again.

When you see something like:

(face-related tags),,, "remaining prompt"

the section around ,,, is what I usually use for the ADetailer face prompt.

So the Excel system and my Base Prompt system are designed to work together.

βœ… That's Everything!

That's basically the entire workflow behind my Excel Prompt Picker:

Prompts List↓Random Generation Picker↓Row History↓Copy Code Row↓Base Prompt↓ADetailer / Upscale↓Final Generation

You can either read this guide while using the Excel file, or keep the Patreon post open beside Excel while you experiment.

The main goal is simply to make it easier for you to:

organize hundreds of prompts

randomly generate ideas

avoid repeating prompts

save prompt combinations for specific characters

copy prompts quickly

understand the Base Prompt structure

and experiment with your own workflow

Try it yourself and see what works best for you.

And of course, if you find the Excel useful, please consider supporting me. ❀️

Have fun experimenting! πŸ“Šβœ¨

Files

Comments

No comments found for this post.