client_id={optional=false,nmin=12,nmax=30,explanation="The ID of your Reddit app of SCRIPT type",example="fFAGRNJru1FTz70BzhT3Zg",regex="^[-a-zA-Z0-9._~+/]+=*$",input_error="The client ID can only contain printable characters.",oob_error="The ID should be over 12 and under 30 characters, double check your input."}
client_secret={optional=false,nmin=20,nmax=40,explanation="The SECRET of your Reddit app of SCRIPT type",example="fFAGRNJru1FTz70BzhT3Zg",regex="^[-a-zA-Z0-9._~+/]+=*$",input_error="The client ID can only contain printable characters.",oob_error="The secret should be over 20 and under 40 characters, double check your input."}
username={optional=false,nmin=3,nmax=20,explanation="The username of your reddit account",example="JasonLovesDoggo",regex="^[-_0-9a-zA-Z]+$",oob_error="A username HAS to be between 3 and 20 characters"}
password={optional=false,nmin=8,explanation="The password of your reddit account",example="fFAGRNJru1FTz70BzhT3Zg",oob_error="Password too short"}
2fa={optional=true,type="bool",options=[true,false,],default=false,explanation="Whether you have Reddit 2FA enabled, Valid options are True and False",example=true}
random={optional=true,options=[true,false,],default=false,type="bool",explanation="If set to no, it will ask you a thread link to extract the thread, if yes it will randomize it. Default: 'False'",example="True"}
subreddit={optional=false,regex="[_0-9a-zA-Z]+$",nmin=3,explanation="What subreddit to pull posts from, the name of the sub, not the URL. You can have multiple subreddits, add an + with no spaces.",example="AskReddit+Redditdev",oob_error="A subreddit name HAS to be between 3 and 20 characters"}
max_comment_length={default=500,optional=false,nmin=10,nmax=10000,type="int",explanation="max number of characters a comment can have. default is 500",example=500,oob_error="the max comment length should be between 10 and 10000"}
min_comments={default=20,optional=false,nmin=15,type="int",explanation="The minimum number of comments a post should have to be included. default is 20",example=29,oob_error="the minimum number of comments should be between 15 and 999999"}
times_to_run={optional=false,default=1,example=2,explanation="Used if you want to run multiple times. Set to an int e.g. 4 or 29 or 1",type="int",nmin=1,oob_error="It's very hard to run something less than once."}
opacity={optional=false,default=0.9,example=0.8,explanation="Sets the opacity of the comments when overlayed over the background",type="float",nmin=0,nmax=1,oob_error="The opacity HAS to be between 0 and 1",input_error="The opacity HAS to be a decimal number between 0 and 1"}
transition={optional=true,default=0.2,example=0.2,explanation="Sets the transition time (in seconds) between the comments. Set to 0 if you want to disable it.",type="float",nmin=0,nmax=2,oob_error="The transition HAS to be between 0 and 2",input_error="The opacity HAS to be a decimal number between 0 and 2"}
storymode={optional=true,type="bool",default=false,example=false,options=[true,false,],explanation="Only read out title and post content, not yet implemented"}
background_choice={optional=true,default="minecraft",example="rocket-league",options=["minecraft","gta","rocket-league","motor-gta","csgo-surf","cluster-truck",""],explanation="Sets the background for the video based on game name"}
#background_audio = { optional = true, type = "bool", default = false, example = false, options = [true, false,], explanation = "Sets a audio to play in the background (put a background.mp3 file in the assets/backgrounds directory for it to be used.)" }
#background_audio_volume = { optional = true, type = "float", default = 0.3, example = 0.1, explanation="Sets the volume of the background audio. only used if the background_audio is also set to true" }
voice_choice={optional=false,default="",options=["streamlabspolly","tiktok","googletranslate","awspolly","pyttsx",],example="tiktok",explanation="The voice platform used for TTS generation. This can be left blank and you will be prompted to choose at runtime."}
python_voice={optional=false,default="1",example="1",explanation="The index of the system tts voices (can be downloaded externally, run ptt.py to find value, start from zero)"}
py_voice_num={optional=false,default="2",example="2",explanation="the number of system voices(2 are pre-installed in windows)"}
silence_duration={optional=true,example="0.1",explanation="time in seconds between TTS comments",default=0.3,type="float"}