After a ~30 hours weekend coding marathon, I've just pushed a new version of the original joystick-jargon (r/gaming) and a new r/leagueoflegends puzzle live.
Learnt my lesson. Truly felt (still) bad and sorry after people were saying they spent time and would not click solve easily. I only looked at it from a technical perspective and fully underestimated how serious the cross-wording community is. There was no bad intention and I will absolutely respect that from now on!
//EDIT. I've been working on it for approx. 10 hours today (still going) with the goal to put live a much better quality version. I feel the pressure and want this fixed myself. However it's quite a computational challenge i am giving my very best
Thank you for that feedback. I agree NYT does this a lot better. I'll have to improve on that. Not gonna lie to you I suck at CSS/Styling/UX/UI will need to get some help regarding this. However i feel you and it's important for the fun of the game
Wanted to thank you again. I am currently working on an improved version providing more context. Your sentence "Part of the deep satisfaction in solving ..." made it into the prompt's rule-set. At this very moment I am only using the dataset of r/dota2 to make the testing easier and I look at the very first result with the new prompt:
Generated words and clues:
heroes: Characters with unique abilities in Dota 2, tasked with defeating the enemy's Ancient.
ragers: Players who overly react to in-game frustrations, often ruining the fun for everyone.
rage: A common emotion experienced by players sometimes leading to poor decision-making.
tachyons: Hypothetical particles that travel faster than light, having no place in an Ancient's mechanics.
healing: Essential support function often provided by certain heroes like Treant Protector.
burn: Refers to a mechanism used to deplete an opponent's mana, crucial in trilane strategies.
matters: In Dota 2, every decision, including hero picks, can significantly change the outcome.
fault: What a player will often blame when losing, rather than acknowledging their own mistakes.
support: Role in Dota 2 focused on helping the team, often with abilities to aid and sustain.
team: Group of players working together to win, where synergy and composition are key to victory.
Note that the Words themselves were not picked by OpenAI but rather a per-selection from the BERT Embeddings ML Algorithm but this time with more than just a word as context.
This is definitely going in the right direction. It's only sample size of 1 but i had to share it with you!
Absolutely! Keep me updated - these types of projects are definitely fun to explore. It'll also be interesting to explore alternative LLMs, as well as providing zero shot examples within the system prompt itself (if you haven't already).
I forgot to mention but it might also be worth exploring more classic NLP techniques like named entity recognition to score clues higher and lower in terms of overall specificity.
Have not done zero shot yet. At the moment i am experimenting with this https://arxiv.org/abs/2210.05245. Looks promising hoping to push an updated version soon but i am still fighting with it at the moment
One more thing: Besides the obvious that clues and answers should make sense can you provide some insights in what makes a good crossword to you? I'd love to hear that from someone playing them for 30 years!
For me, a mixed crossword between all games doesn't make sense. You could give me 20 crosswords with Dota stuff in it and I would be able to solve 0, not even with hints it would be doable.
So maybe rather have some for League, some for CS, etc? Maybe you can do a mixed indie one with very popular games, or mixed Shooter. But then the questions have to be less difficult :D
TY for the feedback. I see what you are saying about the crossword getting too niche. For now this is mostly a technical decision since its easier to train on a more specific dataset. However i agree with you that the dataset should be expanded once the quality is there
Thank you! You right, no i18n yet, I can assure you that the URL https://capsloq.de/crosswords/joystick-jargon has the only playable crosswords at this moment. The other links in the Nav are not crossword related. Will definitely do i18n maybe even the crossword themselves in the future.
TYVM for trying it out! Oh no, now I feel bad again. Please remember these are unsupervised generated clues by a Large Language Model (openai). More of a field test, however I now understand how serious you and others take crosswording. I vow to do better for the next crossword puzzles. It's not my intention to make people feel bad, sorry!
Thank you for sharing. I will check it out. And no worries regarding the speed. The website is cheating the 20 puzzles are pre-compiled so to say, the actually work was done in C++, the web server is just indexing an array of perfect puzzles at that point. TY!
After a ~30 hours weekend coding marathon, I've just pushed a new version of the original joystick-jargon (r/gaming) and a new r/leagueoflegends puzzle live.
https://capsloq.de/crosswords/joystick-jargon
https://capsloq.de/crosswords/r/leagueoflegends
What changed?
- 5 new puzzles for r/gaming
- 6 new puzzles for r/leagueoflegends
- Old puzzles deleted
- New extraction algorithm (everything new: tokenizer, transformers, piplines, model, word and document embeddings, scoring, complete overhaul ...)
- New clue prompting
- Grid can now only contain diagonal black boxes (should guarantee intersections)
- Fixed numbering bug on the grid
- Did proof read each puzzle and some slight adjustments to guarantee puzzle integrity.
Warning: When i did proof read the League of Legends Q&A I noticed that I've never played that game so I couldn't verify everything!
Thank you very much to everyone who provided feedback to improve on v1.
I really hope you feel an increase in quality. I am looking forward for even more feedback and improving further.
Planning to use more suitable datasets in the future. It's super hard to get quality crossword list out of r/gaming.
Have fun puzzling! (please)