How are the tiles in WORDAMENT organized?

I’m trying to create a word game, just like WORDAMENT, in my spare time. In order to present a new round, I need to create a board with 16 letters organized in a 4*4 grid. Currently, I’m generating the grid randomly. But it has some obvious problems. So my main purpose is to organize those 16 letters in such a way that maximum number of words can be formed out of connected tiles. How shall the letters be organized ? I think this comes down to the probability of occurrence of letters in the English language. How can I use the letter frequency table, to organize my tiles? Any relevant pointers/suggestions/articles are appreciated. Thanks.

4

Sometimes, it is simpler to “cheat” a little bit and start from the answer. In this case, I am more likely to take a set of words and continue to arrange them on board in the remaining spots until some criteria is met, and then fill the rest randomly.

For example, I’ll pick a dictionary with the relatively “simple” words and create my word DB so that I can efficiently look up a random word based on two criteria: 1) How many letters do I want in a word, and 2) Which letter should the word begin with.

This is how I would build the game:

1) Pick a word from dictionary that’s either 6 or 7 chars long. Put it on the board in a random order. Let’s say the word was BORDER:

First word arranged on board

2) Find 2-3 consecutive empty spaces. Pick an adjoining letter and find a word from the dictionary that can meet the length (i.e. based on empty spaces) and begins with that letter. Arrange the letters on board. For example, after DINE is added:

Second word added

3) Again, this time around BET:

Third word added

4) Iterate until you can no longer find 2 consecutive empty spaces. Fill any single spaces with random characters. So after adding NUN and ZOO, the last space is filled with P:

All the rest words added with a "filler" letter(P)

Done. Now if you look at the final board, since the algorithm had especially added a few words, they are bound to be there. Since they were English words, they are likely to make a lot of combinations with other words since they are arranged together on the board. So you can easily see a few words already that were never initially added: ODE, BOO, RIDE, BODE, PEN, RUN, PRIDE, etc. I am sure if you play more with this board, you’ll find many more 🙂

I would play with the variables (e.g. is 6-7 letter the best way to start, or larger or smaller), and how to decrease the length (i.e. if 5 consecutive blocks are available, should add a word for 5 letters, or two smaller ones, etc.).

There are two things you need to do: (1) start with plausible heuristics (2) test the generated grid.

Some plausible heuristics would include (for example):

  1. Match frequency of letters in English: ETAOIN SHRDLU etc etc. See here.
  2. Maintain vowel balance (about 40%).
  3. No more than 1 or 2 rare letters (ZJQX) and no Q without U.
  4. Other heuristics related to the specific rules of the game, such as centre/edge or adjacencies.

Then test solve the grid. Write a program to count the words using a suitable dictionary (it’s not that hard) and rate the grid according to the score you get: Novice, Regular, Expert, Impossible.

This kind of strategy applies to lots of games, not just this one.


Test solving also:
1. Lets you discard grids that are just too hard, or easy, or have too many or too few short or long words.
1. Lets players choose according to the level of difficulty they prefer.
1. Could allow you to tweak a grid by moving or swapping letters to achieve a result.

None of these things can be achieved by heuristics.

2

Trang chủ Giới thiệu Sinh nhật bé trai Sinh nhật bé gái Tổ chức sự kiện Biểu diễn giải trí Dịch vụ khác Trang trí tiệc cưới Tổ chức khai trương Tư vấn dịch vụ Thư viện ảnh Tin tức - sự kiện Liên hệ Chú hề sinh nhật Trang trí YEAR END PARTY công ty Trang trí tất niên cuối năm Trang trí tất niên xu hướng mới nhất Trang trí sinh nhật bé trai Hải Đăng Trang trí sinh nhật bé Khánh Vân Trang trí sinh nhật Bích Ngân Trang trí sinh nhật bé Thanh Trang Thuê ông già Noel phát quà Biểu diễn xiếc khỉ Xiếc quay đĩa Dịch vụ tổ chức sự kiện 5 sao Thông tin về chúng tôi Dịch vụ sinh nhật bé trai Dịch vụ sinh nhật bé gái Sự kiện trọn gói Các tiết mục giải trí Dịch vụ bổ trợ Tiệc cưới sang trọng Dịch vụ khai trương Tư vấn tổ chức sự kiện Hình ảnh sự kiện Cập nhật tin tức Liên hệ ngay Thuê chú hề chuyên nghiệp Tiệc tất niên cho công ty Trang trí tiệc cuối năm Tiệc tất niên độc đáo Sinh nhật bé Hải Đăng Sinh nhật đáng yêu bé Khánh Vân Sinh nhật sang trọng Bích Ngân Tiệc sinh nhật bé Thanh Trang Dịch vụ ông già Noel Xiếc thú vui nhộn Biểu diễn xiếc quay đĩa Dịch vụ tổ chức tiệc uy tín Khám phá dịch vụ của chúng tôi Tiệc sinh nhật cho bé trai Trang trí tiệc cho bé gái Gói sự kiện chuyên nghiệp Chương trình giải trí hấp dẫn Dịch vụ hỗ trợ sự kiện Trang trí tiệc cưới đẹp Khởi đầu thành công với khai trương Chuyên gia tư vấn sự kiện Xem ảnh các sự kiện đẹp Tin mới về sự kiện Kết nối với đội ngũ chuyên gia Chú hề vui nhộn cho tiệc sinh nhật Ý tưởng tiệc cuối năm Tất niên độc đáo Trang trí tiệc hiện đại Tổ chức sinh nhật cho Hải Đăng Sinh nhật độc quyền Khánh Vân Phong cách tiệc Bích Ngân Trang trí tiệc bé Thanh Trang Thuê dịch vụ ông già Noel chuyên nghiệp Xem xiếc khỉ đặc sắc Xiếc quay đĩa thú vị
Trang chủ Giới thiệu Sinh nhật bé trai Sinh nhật bé gái Tổ chức sự kiện Biểu diễn giải trí Dịch vụ khác Trang trí tiệc cưới Tổ chức khai trương Tư vấn dịch vụ Thư viện ảnh Tin tức - sự kiện Liên hệ Chú hề sinh nhật Trang trí YEAR END PARTY công ty Trang trí tất niên cuối năm Trang trí tất niên xu hướng mới nhất Trang trí sinh nhật bé trai Hải Đăng Trang trí sinh nhật bé Khánh Vân Trang trí sinh nhật Bích Ngân Trang trí sinh nhật bé Thanh Trang Thuê ông già Noel phát quà Biểu diễn xiếc khỉ Xiếc quay đĩa
Thiết kế website Thiết kế website Thiết kế website Cách kháng tài khoản quảng cáo Mua bán Fanpage Facebook Dịch vụ SEO Tổ chức sinh nhật