PageRenderTime 23ms CodeModel.GetById 18ms app.highlight 2ms RepoModel.GetById 1ms app.codeStats 0ms

Unknown | 38 lines | 38 code | 0 blank | 0 comment | 0 complexity | 3c595ebf5556a3f084de010c153f3591 MD5 | raw file
 1-	get a better dictionary
 2	-	reimport data to eliminate duplicates
 3	-	always add all the words from all the games you play
 4	-	search online for other wordlists
 5	-	if they are huge then check them against the website, then add them to a legit list somewhere for later importing
 6-	interface and AI
 7	\	create a page where you paste the url for your game
 8	\	create a post function to take the url, parse it, and redirect you to your board
 9	+	model board
10	-	render board as a from
11	-	post function to update the board from the form
12	-	database
13		-	save the board to the db
14		-	load the board from the database
15	\	import board information
16		\	populate the board
17		\	poulate your rack
18	-	loop through each row and column on the board
19		-	do a query for each word and combination of words for that row or column
20			+	words
21			-	combination of words 
22		-	use the first letter of the first word to place up each result word on the board in each position that lines up that letter
23		-	allow you to click on a link for each match and see how it would be added to the board, were it to be added
24		-	check the following rules
25			-	does the word fit onto the board
26			-	do any of the new tiles collide with any existing tiles
27			-	do any of the new tiles border other tiles, not from the words being chcked
28				-	if yes then check each word formed by the bordering tiles for validity
29					-	log all failed words and check them later against the website
30		-	if the word passes all tests, score it, and add it to a list with it's score
31	-	do one more search with just the pieces from our rack
32		-	check each open spot on the board that each of those words can fit into
33			-	check all of the rules
34		-	if the word passes all tests, score it, and add it to the list with it's score
35	-	list the words in order of highest to lowest score
36	-	add in hints for rack management
37	-	do something about blank tiles
38	-	add support for coming up with a good opening move with no tiles on the board