I'm fairly new to the world of programming, with a background in libraries, and I'm experimenting with building my own website and applications. I've got this idea for a daily puzzle game (inspired by games like Wordle, Bandle, and Pedantle), but I'm curious about how these games source the data to create their puzzles.
For simpler puzzles, like Wordle, it seems that a static database of words could suffice, allowing creators to add more words as needed. Other games, like Flagle, which is based on flag images leading to country names, might also rely on a finite dataset. However, for more complex games that draw from extensive information, like Bandle or Heardle—which involve guessing songs from clips—I'm wondering whether they use curated playlists as their data source, or if there's another method in play.
Could there be any games that utilize linked data to extract a broader range of information for puzzle generation? I'm interested in how others tackle this issue and whether there are more effective methods I might not have considered. Any insights would be greatly appreciated!
3 Answers
If you want to dig deeper, the minimized source code of the original Wordle can be viewed on the Wayback Machine. It shows that the daily word list had around 2315 words initially. The creator, Josh Wardle, curated the list based on personal preference and popular usage—it’s one of the reasons it caught on!
As for using larger datasets, there are lots of public APIs out there you can leverage. For instance, Wizards of the Coast has APIs for Magic: The Gathering cards, which some games have utilized, like enchantworldle.com. For music, platforms like SoundCloud also offer APIs where you can filter songs by various criteria. Structuring your game to pull a specific genre or year could give you a solid data set to work with!
Most games probably rely on databases for their word lists to ensure they can quickly index and manage the data. You could even create a Wordle-style game entirely with SQL!
For games like Wordle, they originally embedded their word list in the code and just indexed it based on the date to determine the daily answer. It was super easy to set up, which is why hosting it was so cheap. I actually made a Wordle clone myself, this time using a database for more flexibility, allowing people to create custom leagues with different rules, track results over time, and share results with specific groups. This meant I had to set up a backend and a database, which could get pricey with a lot of traffic, but it offered a lot more features!
That’s a really interesting take! I didn't realize that Wordle’s original setup was so simple. Sounds like an awesome project you took on!