Hidden WordScanner
Private scans · No account required

DuckieDai Word Scramble

A word scramble game: unscramble 10 mixed-up words from five categories, with optional hints, three levels of tries, and a streak bonus.

games · MIT License

Overview

A word scramble game: unscramble 10 mixed-up words from five categories, with optional hints, three levels of tries, and a streak bonus.

  • Owner-tested on a TI calculator
  • Version 1.0.0
  • 3466 bytes
  • Uses random

Before you run it

  • TI-84 Plus CE Python · No calculator OS or Python App version has been verified.
  • TI Connect CE .py transfer to the Python App; the owner's transfer details were not recorded
  • The game has 25 words in five categories: Animals, Tech, Space, Fantasy, and Science, five words each.
  • Words are picked and shuffled at random by the calculator; a word does not come back in a game until every word in the chosen category has been used.
  • Type a single number at the Category and Level prompts.

Play it here first

Play a full round right here before you download. The screen below runs the same steps as the calculator game: type your answer in the box under it and press Enter, just as you would on the calculator. Each round picks a new secret, and nothing you type is saved.

JavaScript is required for the optional browser simulation. Source viewing and downloading remain available without it.

Simulation boundary: This preview uses a reviewed browser adapter. It does not execute the downloaded Python and does not prove TI-Python or calculator compatibility.

How to play

How to play Word Scramble

About the game

The calculator mixes up the letters of a word and you work out what it was. Each game is 10 words, and correct answers in a row earn a streak bonus.

There are 25 words in five categories: Animals, Tech, Space, Fantasy, and Science. Pick one category, or Mixed to draw from all five. The screen always shows which category the word comes from.

Controls

1 to 6
choose a category; 6 is Mixed
7
quit from the category menu
1, 2, or 3
choose Easy (4 tries a word), Medium (3), or Hard (2)
1 or 2
during a word: 1 to guess, 2 to show a hint
letters
type your answer; capitals do not matter
Y
play another game; any other answer ends the game

How to play

Tips

Good to know

Exact reviewed bytes

Source code

Download .py

View source below, copy it when JavaScript is available, or download the exact .py bytes.

  1. # DuckieDai(TM) Word Scramble
  2. # TI-84 Plus CE Python
  3. from random import randint
  4. # ADD WORDS HERE: ("WORD","HINT")
  5. # Keep words A-Z, 3 to 12 letters.
  6. banks=[
  7. [("TIGER","STRIPED CAT"),("RABBIT","LONG EARS"),("DOLPHIN","OCEAN MAMMAL"),("PANDA","EATS BAMBOO"),("MONKEY","CLIMBS TREES")],
  8. [("PYTHON","CODING LANGUAGE"),("SERVER","HOSTS DATA"),("LAPTOP","PORTABLE PC"),("ROUTER","NETWORK DEVICE"),("KEYBOARD","TYPING KEYS")],
  9. [("PLANET","ORBITS A STAR"),("GALAXY","MANY STARS"),("COMET","ICY SPACE ROCK"),("ROCKET","SPACE VEHICLE"),("SATURN","RINGED PLANET")],
  10. [("DRAGON","FIRE BREATHER"),("WIZARD","USES MAGIC"),("GOBLIN","FANTASY CREATURE"),("POTION","MAGIC DRINK"),("CASTLE","STONE FORTRESS")],
  11. [("ATOM","MATTER UNIT"),("ENERGY","DOES WORK"),("GRAVITY","PULLS OBJECTS"),("OXYGEN","GAS WE BREATHE"),("MAGNET","ATTRACTS IRON")]
  12. ]
  13. names=['ANIMALS','TECH','SPACE','FANTASY','SCIENCE']
  14. def clear():print('\n'*7)
  15. def scramble(w):
  16. a=list(w)
  17. for t in range(12):
  18. b=a[:]
  19. for i in range(len(b)-1,0,-1):
  20. j=randint(0,i)
  21. b[i],b[j]=b[j],b[i]
  22. s=''.join(b)
  23. if s!=w:return s
  24. return s
  25. def intro():
  26. print('DUCKIEDAI(TM)')
  27. print('WORD SCRAMBLE')
  28. print(' __')
  29. print(' ___(o )> quack!')
  30. print(' \\ <_. )')
  31. print(" `---'")
  32. print('by DuckieDai')
  33. print('hiddenwordscanner.com')
  34. input('Press Enter ')
  35. clear()
  36. def game():
  37. wins=0;played=0;best=0
  38. while 1:
  39. print('WORD SCRAMBLE')
  40. print('1 Animals 2 Tech')
  41. print('3 Space 4 Fantasy')
  42. print('5 Science 6 Mixed')
  43. print('7 Quit')
  44. c=input('Category? ')
  45. if c=='7':break
  46. if c not in ('1','2','3','4','5','6'):continue
  47. print('1 Easy 2 Medium')
  48. print('3 Hard')
  49. d=input('Level? ')
  50. if d not in ('1','2','3'):continue
  51. tries=(4,3,2)[int(d)-1]
  52. rounds=10;score=0;streak=0
  53. used=[];clear()
  54. for r in range(rounds):
  55. # Avoid reusing a word until possible words are exhausted.
  56. choices=[]
  57. for k in range(5):
  58. if c=='6' or k==int(c)-1:
  59. for word,hint in banks[k]:
  60. if word not in used:choices.append((word,hint,k))
  61. if not choices:
  62. used=[]
  63. for k in range(5):
  64. if c=='6' or k==int(c)-1:
  65. for word,hint in banks[k]:choices.append((word,hint,k))
  66. w,h,k=choices[randint(0,len(choices)-1)]
  67. used.append(w)
  68. mixed=scramble(w)
  69. left=tries;hinted=False;won=False
  70. while left:
  71. clear()
  72. print('ROUND',r+1,'OF',rounds)
  73. print('SCORE',score,'STREAK',streak)
  74. print(names[k])
  75. print('WORD:',mixed)
  76. print('TRIES:',left)
  77. if hinted:print('HINT:',h)
  78. print('1 Guess 2 Hint')
  79. choice=input('Choice? ')
  80. if choice=='2':
  81. if not hinted:
  82. hinted=True
  83. print('Hint unlocked!')
  84. else:print('Hint already shown')
  85. continue
  86. if choice!='1':continue
  87. a=input('Your word? ').strip().upper()
  88. if a==w:
  89. won=True
  90. streak+=1
  91. gain=10+min(streak-1,5)*2
  92. if hinted:gain=max(1,gain-5)
  93. score+=gain
  94. clear()
  95. print('CORRECT! +',gain)
  96. if streak>=3:print('ON FIRE!')
  97. break
  98. left-=1
  99. streak=0
  100. print('NOPE!')
  101. if left:input('Press Enter ')
  102. if not won:
  103. clear()
  104. print('OUT OF TRIES!')
  105. print('WORD WAS:',w)
  106. input('Press Enter ')
  107. played+=1
  108. if score>best:best=score
  109. if score>=100:wins+=1
  110. clear()
  111. print('GAME OVER!')
  112. print('Score:',score)
  113. print('Best:',best)
  114. print('Games:',played)
  115. print('100+ games:',wins)
  116. if input('Again? Y/N ').upper()!='Y':break
  117. clear()
  118. print('QUACK QUACK!')
  119. print('hiddenwordscanner.com')
  120. intro()
  121. game()
Filename
WORDSCR.py
Size
3466 bytes
SHA-256
16569306db96075abfdb21deaf6f423d390a4b5eab38c6201d4aa6bdb52edea1

Usage

Inputs

  • A category from 1 to 6 (6 mixes all five), or 7 to quit
  • A level: 1 Easy (4 tries), 2 Medium (3 tries), or 3 Hard (2 tries)
  • 1 to guess or 2 for a hint, then the unscrambled word
  • Y to play again, anything else to stop

Outputs

  • The scrambled word with its category, round, score, streak, and tries left
  • A hint on request, CORRECT with the points earned, or NOPE
  • Final score, best score, games played, and 100-point games

Units: Points; no units.

Assumptions and limitations

Assumptions

  • The game has 25 words in five categories: Animals, Tech, Space, Fantasy, and Science, five words each.
  • Words are picked and shuffled at random by the calculator; a word does not come back in a game until every word in the chosen category has been used.

Constraints

  • Type a single number at the Category and Level prompts.
  • Answers are compared in capital letters, so tiger and TIGER both count.

Known failures

  • A category or level outside the menu simply shows the menu again.
  • The best score and game totals reset when the program is started again.

Compatibility and review

Review status
Owner-tested on a TI calculator
Tested on
Owner reports personally playing this game on a TI-84 Plus CE Python calculator; the test date, OS version, and Python App version were not recorded
What happened
Owner reported pass on the calculator before the Category and Level menu checks were corrected so that an empty or two digit answer shows the menu again instead of stopping the program. The rest of the game is unchanged; this exact file has not yet been rerun on a calculator.
Dependencies
random
Suggested calculator name
WORDSCR — you can give it another valid, unique name when you transfer it
Desktop test cases
Not available for this interactive-only source

This exact source auto-launches an interactive calculator session, so compatibility evidence comes from the recorded physical-device review rather than an importable desktop fixture.

Transfer and launch

Download the .py file, send it to your calculator with TI Connect CE as WORDSCR or another name, then open the Python App and start a game. Press [on] to stop at any time. This release has no verified calculator OS or Python App version; treat transfer and execution as unverified until independently tested.

Full installation and troubleshooting guide. Check your teacher's or exam's rules before using any program.

Version history

Enjoying a DuckieDai game? Every game and program here is free. If you would like to say thanks, you can leave a tip on Cash App ($duckiedai214) or read what tips pay for.

Independent compatibility resource: Hidden Word Scanner is independent and is not affiliated with or endorsed by Texas Instruments. TI product names describe compatibility only.

Action-count privacy: Successful downloads, preview starts, and preview completions increment same-origin aggregate counters, and so does a Yes or No answer about whether the program worked. Your browser notes that you answered; that note is never sent to the site. No entered values, source text, IP address, account, cookie, device identifier, or fingerprint is stored with these counts.