Terminal Typing Game A few weeks ago, I developed a terminal game that increases your typing speed. The game is all about typing, providing difficulty levels from easy to hard. I feel like this terminal game won't become as popular as my others, so I need tips on how I could improve this code to make it shorter, easier to run, and more entertaining.
Here is the code developed by me, PYWPM:
import time
import random

logo = '''
  _____    __          _______  __  __ 
 |  __ \   \ \        / /  __ \|  \/  |
 | |__) |   \ \  /\  / /| |__) | \  / |
 |  ___/ | | \ \/  \/ / |  ___/| |\/| |
 | |   | |_| |\  /\  /  | |    | |  | |
 |_|    \__, | \/  \/   |_|    |_|  |_|
         __/ |                         
        |___/                          
'''
print(logo)
print(&quot; &quot;)
difficulty = input(&quot;Enter difficulty level (easy/hard): &quot;)
if difficulty == &quot;easy&quot;:
  openPlz = open('easywordbank.txt','r')
  readPlz = openPlz.read()
  wordBank = readPlz.split()
elif difficulty == &quot;hard&quot;:
  openPlz = open('hardwordbank.txt','r')
  readPlz = openPlz.read()
  wordBank = readPlz.split()

open2 = open('highscore.txt','r+')
open2lst = open2.readlines()

stat = True
strike = 0
score = 0

def gameMain(wordBank):
    #Primary game loop. Returns a lst:
    #lst[0] = added points, lst[1] = added strikes
    lst = [0,0]
    start = time.time()
    wordQuiz = wordBank[random.randint(0,(len(wordBank)-1))]
    wordType = input('Enter the word, '+ wordQuiz + ' : ')
    if wordType == wordQuiz and time.time()-start &lt; 3:
        lst[0] += 1
    elif time.time()-start &gt;= 3:
        print('STRIKE! Too Slow! ')
        lst[1] += 1
    else:
        print('STRIKE! Watch your spelling. Be careful with strikes!')
        lst[1] += 1
    return lst

def highScore(name,score,highScoreLst,zFile):    
    for line in highScoreLst:
        if score &gt;= int(line[-3:-1]): 
            highScoreLst.insert(highScoreLst.index(line),name+'-'+str(score)+'\n')
            highScoreLst.pop()
            zFile.seek(0,0)
            zFile.writelines(highScoreLst)
            break

def rsg():
    print('Ready?')
    time.sleep(1)
    print('Set?')
    time.sleep(1)
    print('Go!')
    time.sleep(1)

name = input('Enter a username for this session: ')
print(&quot;Type the word then press enter in under 3 seconds!&quot;)
time.sleep(2)
rsg()

#MainState

while stat == True:
    lst = gameMain(wordBank)
    score += lst[0]
    strike += lst[1]
    if strike == 3:
        time.sleep(.5)
        print('Game Over! The game has ended..!\n')
        time.sleep(2)
        print('Your Typing &amp; Accuracy Score: ' + str(score))
        highScore(name,score,open2lst,open2)
        time.sleep(2)
        break
print('\nHighscores for PyWPM:')
time.sleep(2)
for line in open2lst:
    print(line, end='')
    time.sleep(1.5)
time.sleep(5)



openPlz.close()
open2.close()


Yes, this game includes a word bank that randomizes words.
The high scores aren't global.

How could I make this better?
I made some changes to your code, here's the description:

Indentation correction;
Removal of possible spaces in user input;
Change of While stat ==. True for While stat. It's the same thing;
PEP8 (and good practices) use 1 blank space after a comma and 2 line breaks before and after the functions;
You can also simplify the import of packages by specifying exactly what you are going to use: I did it in the code below;
Finally, the documentation always provides for an empty line break at the end of the code.

from time import time, sleep
from random import randint

logo = '''
  _____    __          _______  __  __ 
 |  __ \   \ \        / /  __ \|  \/  |
 | |__) |   \ \  /\  / /| |__) | \  / |
 |  ___/ | | \ \/  \/ / |  ___/| |\/| |
 | |   | |_| |\  /\  /  | |    | |  | |
 |_|    \__, | \/  \/   |_|    |_|  |_|
         __/ |                         
        |___/                          
'''
print(logo)
print(&quot; &quot;)
difficulty = input(&quot;Enter difficulty level (easy/hard): &quot;).strip
if difficulty == &quot;easy&quot;:
    openPlz = open('easywordbank.txt', 'r')
    readPlz = openPlz.read()
    wordBank = readPlz.split()
elif difficulty == &quot;hard&quot;:
    openPlz = open('hardwordbank.txt', 'r')
    readPlz = openPlz.read()
    wordBank = readPlz.split()

open2 = open('highscore.txt', 'r+')
open2lst = open2.readlines()

stat = True
strike = 0
score = 0


def gameMain(wordBank):
    &quot;&quot;&quot;
    Primary game loop. Returns a lst:
    #lst[0] = added points, lst[1] = added strikes
    :param wordBank:
    :return:
    &quot;&quot;&quot;
    lst = [0, 0]
    start = time()
    wordQuiz = wordBank[randint(0,(len(wordBank)-1))]
    wordType = input('Enter the word, '+ wordQuiz + ' : ')
    if wordType == wordQuiz and time()-start &lt; 3:
        lst[0] += 1
    elif time()-start &gt;= 3:
        print('STRIKE! Too Slow! ')
        lst[1] += 1
    else:
        print('STRIKE! Watch your spelling. Be careful with strikes!')
        lst[1] += 1
    return lst


def highScore(name, score, highScoreLst, zFile):
    for line in highScoreLst:
        if score &gt;= int(line[-3:-1]):
            highScoreLst.insert(highScoreLst.index(line), name+'-'+str(score)+'\n')
            highScoreLst.pop()
            zFile.seek(0, 0)
            zFile.writelines(highScoreLst)
            break


def rsg():
    print('Ready?')
    sleep(1)
    print('Set?')
    sleep(1)
    print('Go!')
    sleep(1)


name = input('Enter a username for this session: ')
print(&quot;Type the word then press enter in under 3 seconds!&quot;)
sleep(2)
rsg()

# MainState
while stat:
    lst = gameMain(wordBank)
    score += lst[0]
    strike += lst[1]
    if strike == 3:
        sleep(.5)
        print('Game Over! The game has ended..!\n')
        sleep(2)
        print('Your Typing &amp; Accuracy Score: ' + str(score))
        highScore(name, score, open2lst, open2)
        sleep(2)
        break
print('\nHighscores for PyWPM:')
sleep(2)
for line in open2lst:
    print(line, end='')
    sleep(1.5)
sleep(5)

openPlz.close()
open2.close()