Truncate started as a pen and paper game between a friend and I, evolved into a handmade board game, and finally arrived at an online puzzle game. Like any good word game, there is of course a daily mode, shareable with the tried and true grid of emojis
We've been playtesting it with friends and family for a few months, which has helped iron out the tutorials and gameplay, and we're finally happy with an MVP worth sharing!
Technical deets: The client and server are written in Rust, with the visuals built using egui (as an experiment in Rust's GUI ecosystem).
We'd love any feedback!
This desperately needs a attack result preview, or if that's too hard at least a "you're starting an attack you'll lose" warning of some kind. The combat resolution rules are unintuitive, and I keep sometimes incorrectly predicting the results, and sometimes even not understanding why I lost despite the information in the battle pane. Losing an attack is so crippling that you might as well resign.
It doesn't help that the only place to find the rules is scattered about in a tedious tutorial. The tutorial itself can't be fixed; it's the nature of tutorials to suck. But it'd be great to have a help page with the rules accessible somewhere. The rules aren't long, so it doesn't seem incompatible with the aesthetics of the game.
> This desperately needs a attack result preview
Not too hard, just waiting for all the feedback to roll in before deciding either way. If we stay sitting on the fence, it might make its way in as a "tutor" mode :)
Eg:
Defender bonus = 2
Shortest word = 2 (*in*, top, sugar)
Attacker word = 5 (*twine*)
Attacker wins (5-4=1)
At least for me I’m always getting ganked and trying to decipher the battle log to see why it didn’t do what I expected.
That being said, thanks it is fun.
One way to fix the tutorial is to make it more interactive than just asking players to place a specific tile in a specific place. Once you explain the most fundamental rules, introduce subsequent ones in the form of mini games where players decide what tiles to put and where, and can lose. Have a look at the Queen's Gambit game about chess. It is free if you have a Netflix subscription.
One feature that I would request is to let me organize my tiles. Just my 2 cents.
But congrats on this, it's awesome!
If I forget a specific point it's frustrating to have to go through the whole tutorial again.
It would help if it had a license file in the repo in order to express what rights you grant to others
Something around this might be a starting point to summarize the battle rules: to win, a player's attacking letter requires two things. (1) All of the attacker's touching words to be valid; (2) At least one attacking word to be 2 letters longer than one of the defender's valid words. (But I don't this is all of it. It probably needs revision.)
Aside: I'm not sure what the _minimum_ level of complexity for the rules _could_ be. I get the impression these rules were chosen to make the game more interesting. Having known some game-creators, it is common for game rules to be play tested. But there is always the question of "play tested for what audience?"
P.S. I like the game so far. A lot. I see a lot of potential in it, but yeah, it is significantly more complex than Scrabble.
Aside: For instance, +1 is the defender's advantage in Risk, and I always loved the mechanics added by the Lord of the Rings version (and maybe other versions) where you could modify that advantage to anything from +0 (with a "leader" in the attacking army), to +3 (with a leader in a defending army on a tile with a "stronghold"). This is a bit different because it isn't dice rolls, but a similar idea.
I also desperately wanted to be able to exchange tiles. Getting a rack full of vowels is frustrating, you just have to waste turns playing them out knowing they will weaken your board and get destroyed.
> it feels like you have to win (or lose) quickly, else the middle board gets cramped and it bogs down to a long slog.
Why is that a bad thing? If games always resulted in a quick win for whoever gets the lucky start/letter draw, where would be the fun? Restricted territory in the middle of the board is what the players have to overcome.
> Sometimes I dropped junk in protected areas of the game just to wait for my opponent to be forced to touch my “front line”.
That sounds like a sound strategy. It forces you to spend a resource (protected space; potentially useful tiles) in order to take advantage of the defensive advantage, with the potential payoff that it can turn the tide of the game. It also helps build up a reservoir of usable swappable tiles... but using swaps well is also tricky, so it's not pure advantage.
Playing these waiting game phases effectively, for me, added to the sense of satisfaction in pulling off a win.
> I also desperately wanted to be able to exchange tiles. Getting a rack full of vowels is frustrating, you just have to waste turns playing them out knowing they will weaken your board and get destroyed.
You're not wasting turns, you're getting rid of vowels in order to get to draw new letters. Finding ways to make the sacrifices without weakening your position requires smart play. Again, getting past these obstacles makes for a fun challenge.
Why did my opponent place qxa to begin with?
I tried to get through the tutorial , but could not. Maybe simplify the rules or simplify the game before I'd play, but others may enjoy.
I do play wordle and other NYTimes word games , and scrabble, so I'm not averse to those types of games.
Maybe I should have had a cup of coffee first. I will try again later.
But still hats off for creating it. Congratulations.
Agreed on the reading-upside-down thing, though I think it's still the right choice. But I suspect it's something anyone playing the game regularly would become adept at very quickly. Maybe just add a quick "rotate board" button / hotkey to use when evaluating the opponent's position.
I think my one minor criticism is the "touching the opponent's town" thing. I find that it's not a particularly fun goal. Many such things go with a "war" analogy to add some interest, like an army destroying the opponent's fortress or whatever. If you'd prefer to avoid that (though the "attacking" and "defending" language is already in the game), it could be like you're building a path for a rabbit to get a carrot, or maybe it's water and you're building a bridge to the other side.
Or the win state could instead be to eliminate all the opponent's letters. As-is, that would eliminate the fun "racing" mechanic, which would be unfortunate. But perhaps (going back to the bridge idea), the "town" squares could be like bridge supports, and reaching one would knock out anything it is "holding up". So you could still race to knock out the critical "root" support, which would usually win in nearly the same way as currently (but maybe with a few more cleanup moves).
Love the game! Hope the ideas are interesting rather than annoying :)
Edit to add: Oh! One thing I actually missed in the tutorial (but figured out in the example game) is that words must be valid top-to-bottom or left-to-right. I was confused by the outcome of some battles in my initial games, due to building "valid" words bottom-to-top only to see them defeated by shorter ones. Relatedly, maybe in the "easy" modes, valid words could be highlighted? Then I would have known that when I built "yria" from top-to-bottom, it was not actually the valid word "airy" read from bottom-to-top.
Yes, we once posited that you were trying to deliver soup to the other town haha. The current language is really in lieu of figuring out what the best lore for the game is, and these are great suggestions we can mull over :)
> Why did my opponent place qxa to begin with?
Much like us, the NPC can be plagued with a simply terrible hand ;)
Again, appreciate the notes!
Hmm, that's apparently sourced from Wiktionary. Wiktionary is great, but has a very broad concept of "word".
The biggest problem for me is the dictionary - it seems very biased towards US English, so for instance I lost one game when my base was defended with "soiree" which apparently isn't in the dictionary, another one when I was defending the middle of the board with "knives" and wanted the s elsewhere, so swapped it for a d to make "knived" and immediately lost the next round because only "knifed" is in your dictionary, even though both are correct in British English. There's a whole load of annoying 2 and 3 character words that the computer uses that I've never heard of, but a couple of the more normal ones weren't accepted. A few other people have suggested colouring the words based on whether they're in the dictionary, which may help some of the cases, but doesn't help when you're trying to build up to a word and then discover it's not in your dictionary.
I personally disliked the "weakest link" rule, because there were just so many rules, I'd forgotten this one, and fell afoul of it a couple of times, before I went back and checked the rules again. I can see that maybe I'd like it in the future as when the board is fullish, it forces you to weaken your position, but for the longest time in one game I had a long word across the centre of the board, completely trapping the computer in less than half the grid, but it escaped when I made a 2-letter word off that and he immediately destroyed my entire defence with a 4-letter word. So, it might make the game more fun, but intuitively the longest word should be used for defence.
In the end stages of the game, the computer often played really stupid choices. Instead of playing a dummy letter somewhere out of the way, it often stuck it on the end of a word next to my tiles, forced a battle and then lost because it wasn't a word. Maybe that's a strategy to clear out bad tiles, but a couple of times it completely destroyed its defences by doing that.
On some of the grids, I think it'd be possible to get to the computer's dock and not their town, which I guess should be a win condition as they would then have no valid move. I certainly got it so the computer lost all its tiles, but then didn't want to try that out for fear of messing everything up when I was only 1 square away from the town (and the dock was past it).
I'd kind of like an undo button. A couple of times, I misclicked somewhere, and once I'd accidentally clicked on one tile when deciding on a swap, and then decided to do a different swap and it completely trashed my board instead. That and the potential for instant loss of a a good board position and letter choices if you play a word that's not in the dictionary, would make this a useful feature.
The letter distribution might be better if it's weighted like the scrabble letters. One game I had multiple Q, Z, J and V, but not a single N the whole game.
Just confirmed that this condition is correctly detected as a win!
Dictionary does still need work — especially around some words like soiree which got culled by our dictionary builder. We'll iterate on building it out (without adding "garbage" words
Interesting re: weakest link rule. Agreed that can be unintuitive when learning the game, but it's one of those rules that balances the game well overall. Possibly we just need to be better at explaining it.
Re: the end game — the current computer is just not-very-good, so a future NPC might play better there.
And good things to mull over re: undo buttons / highlighting tiles / letter distribution.
Thanks again for the detailed feedback, really really appreciated
Needs a dictionary also.
For the online version (which is gorgeous) it really needs a multiplayer discovery mode.
I'm in room code PEEP if anyone fancies a game: https://truncate.town/#PEEP
edit: seems like the board editing in multiplayer mode doesn't work
> edit: seems like the board editing in multiplayer mode doesn't work
oops, will get onto fixing that
Especially when I'm having to read my entire opponent's board upside down, I find parsing which words are valid/invalid to be a time-consuming, mildly frustrating, and not super fun aspect of the game.
Maybe that takes too much of the challenge out, but I don't find it's a part of the game I feel like I should have to be good at.
Other minor feedback:
- There's no cursor or focus indicator on the search box in the dictionary.
- The dictionary should open auto-focused. If I click "open dictionary" with the mouse, and start typing nothing happens. I have to click on the "search" box before I can type. This is especially annoying given the lack of feedback from the above point on the search box.
(Also, will fix the dictionary, thanks!)
Congratulations on getting this far! Games are a huge amount of work (so much more than it looks like on the surface), so shipping something is always an accomplishment.
I definitely had fun for the rounds I played the other day, which is why I bothered with feedback. It's a great little concept, and well-executed. I really appreciated the tutorial (especially the "sample game", that really solidified the concepts for me after the step-by-step tutorial).
Great work so far! Excited to see where it ends up!
(And one more super minor feedback while I'm here: when I'm playing on keyboard and mouse, I'd love the ability to press a keyboard key to select a letter, then click to play on the board with a mouse. So: "press the keyboard key 'i', then click on an empty but legal space to play", and one of my 'i' tiles goes to that space". As far as I can tell this would be manageable, since it doesn't seem to matter which 'i' tile I play from my hand).
> Only words touching another player's words are involved in a battle. This means you can win battles even though your board contains invalid words.
> Try playing playing "TO" against your opponent's "FT".
> Even though your board is mostly valid, the only words involved in the battle were "TO" and "FT", so you won and "FT" was removed from the board.
This doesn't make sense to me. It seems to me that "TO" should only battle the opponent's "F" because the opponent has "TOUR" adjacent to "F".
If my interpretation was right, only "F" should have been removed.
Thanks for pointing it out! It's something we have had come up before, and the sort of thing we keep iterating the tutorial toward explaining better, so we'll take another crack at it!
But (pedantic note) it is a little more specific than that. It includes ALL letters until the edge of the board or space on the board. Right?
Do most people consider an invalid word to be a kind of word? I don't think I do, and I think this was the source of my confusion. But I'm not a word-game person per se nor Scrabble expert... this might be obvious to other people.
EDIT:.... hrm... so the tutorial always shows 'me' at the bottom'. Apparently, I'm at the top, and my 'dock' is at the top. That's a confusing way to start something. Relying on 'color' of tiles alone is just.. this was aggravating.
* Doesn't include useful but rare short words, such as el
* Does include obscure or slang words such as stere and jones
* But doesn't include their conjugations. I lost due to making steres without checking to see if the game knows the plural (it doesn't).
I'd like to add a button to the dictionary to report words that should be included. For now, we erred on the side of a smaller dictionary since it's less jarring to add words than remove them :)
(stere / steres is especially regrettable, sorry!)
Obtaining a good word list is hard, I have one saved which is a merging and editing of several freely available ones, including one used in Scrabble competitions and one from some Linux distro, and a few "basic word lists". There will be endless errors like missing plurals and past tenses, as well as the inclusion of things like acronyms that shouldn't be in there at all. And if you prune obscure words but allow the submission of missing words, I guess you'd better keep the list of pruned words around so you can head people off at the pass by pre-filtering their submissions.
Attacks that lose when they are exactly 1 letter longer- if winning by 1 was too powerful, these could draw/stalemate, letting you fortify your position and potentially attack a turn later (giving your opponent a chance to fortify their position). It feels a bit cheap to not be able to spell out a word because the opponent blocks with a shorter word.
I also find myself trying to plan words but never getting the right letters - maybe you could add a view of the next 3/5 incoming letters to reduce the rng-ness and allow more planning.
Again, great job, I look forward to see how it progresses!
Maybe a mode where you can see a preview of how a move will play out before you commit the move would help.
I do agree with some of the other comments that the letter probabilities seem a little unbalanced, but that could just be the tendency to remember runs of bad luck in the letter draw.
In terms of dictionary feedback: I'd love to see at a glance on the board which words are 'real words' and which are not. Some sort of visual highlighting of the letters that are in a word would be great.
Having the dictionary always available would be great, rather than having to click twice to get into it, then click again to focus the lookup field.
The AI never seems to use swaps. Is that deliberate?
Many good notes, we'll look into a lot of that. And yes currently it's deliberate, but I think we can squeeze some AI swaps in!
There's one thing I find really frustrating, though - the dictionary is incredibly idiosyncratic, including stacks of 'words' that normally I wouldn't expect to be accepted while still excluding some that I'd think are way more usual in this kind of game. (I'd guess this is where some of the confusion on 'why did my attack fail' comes from?) I basically have to look up every word every time.
Could we either have the dictionary visible all the time for easier access, or (better option IMO) add a highlight that shows which adjacent letter groups are in the dictionary? Not sure how this would work on mobile without mouseover, though, it might need a separate 'commit' tap after placing and seeing the results.
Yes dictionary is a tough thing to nail down perfectly — to start with we're going to highlight existing words on the board that are invalid, but have a similar line of thinking around the "commit" tap after placing, at least behind some learning setting. There'll be a changelog screen for when things like that make it in :)
1. Maybe (definitely maybe, not sure about this) highlight valid and invalid words on the board. It depends on the emphasis. The (scrabble?) dictionary is large and capricious.
2. The rules for battles seem counterintuitive: if you have an invalid word and a winning word, the invalid word loses, but if you have a losing word and a winning word, the winning word wins? And if your opponent has a winning word and a losing or invalid word, their losing/invalid word goes away, but their winning word stays (except any letters touching your placed tile) while if you have an invalid word and a winning word, your whole winning word goes away?
3. What happens in a battle between two invalid words?
Again, congrats, and especially on doing this in rust, it must be super-performant :-)
On 1. — this is definitely the most common piece of feedback so far, so we'll certainly look into it.
On 2. — the battles rules are the most complex part of the game, since they have evolved through the play testing and battle analogies. Our intuition has been that an invalid attacker "sabotages" the battle, and makes the whole attack fail (i.e. an ineffective army rushing a position will often lose in its entirety). And a short-but-valid word is a competent soldier who just isn't strong enough to win on their own :) Possibly something for us to explain more in one of the tutorial/lore/explanation areas.
On 3. — defenders aren't even evaluated if the attacker fails, so the attacking invalid word is removed.
Thanks again, great feedback :)
For example, when you draw a new tile, it could slide in, or glow/sparkle, helping draw your attention to it. When it just appears, it’s not immediately clear which tile just changed.
Battles in particular would benefit from animation, highlighting which words are valid/invalid, which particular words are the “strongest” words on each side, and which tiles are truncated in the aftermath.
These animations don’t need to be long or elaborate, and advanced players may even want to toggle them off, but they will be very helpful for newer players.
(Thanks for pointing out the font — I do have an issue for that (https://github.com/TruncateGame/Truncate/issues/111) so it's nice to get validation on its importance)
I also agree with the other comment that said knowing the outcome of your potential move would be helpful. Maybe even a training mode where every time you're about to self-own, the game displays a question mark and gives you a chance to retract the move.
The only other thing is, and I don't know how much it would impact gameplay, but having two-letter words count as valid seems like a cheat somehow because of all the sketchy ones like "oi" and "er." I wish the game could be configured to only accept 3+ letter words.
Overall, gameplay was interesting, but as it stands, not addictive.
The dialog should say either "Really resign? / Resign / No, keep playing" or else "Resign and play again? / Yes / No, keep playing".
I, also, find the game pretty hard: the biggest difficulty is that you can't control the letters that come out, so even if you know a word that you'd like to make, you might have to spend 20 turns playing useless letters on the back field while hoping for an "S" or whatever.
I'm interested in games easily played with common bits and pieces. While waiting around one day my spouse and I came up with a game (that had already been come up with in the 1970s, according to Wikipedia when I went looking for games played with Scrabble tiles) we call Scramble; all tiles facedown, take turns flipping a tile, anyone can call out a word longer than three tiles that can be formed with the visible letters, including stealing others' words by inserting a letter(s) to form a new word, as read in either direction (no anagramming).
Example: EAT could become EATS, TASE, or STARE but not TEAS or STEAK.
If a person says an invalid word they have to be silent for one flip.
When the facedown letters got fewer and it became clear from multiple attempts and subsequent ties (at least two players saying a valud word) that a certain tile is an s, we made a rule that "one does not simply add an s to the end of a word" and that it needs to be added with another letter, thus avoiding what felt like Ko battles from Go.
Additionally, if you want thinkier games, increase the minimum length for new words every time a Q, X, or Z is revealed.
I also created a word-based strategy game (Crossword Island Hopper) with the concepts of capturing territory and battling your opponent. It has these differences: 1) Each turn is one word, and turns are played simultaneously by all players. 2) In a battle the newest word can either be destroyed or letters can be converted to your own. 3) Default mode is to win by points but there are also modes where you need to connect your words from point to point to win, like this game.
You can try it here: http://crosswordislandhopper.com/cih
I enjoy the gameplay, the mechanic of building up big words to eat through the opponents structure is really cool! I'm a big addict of wordle and quina as well. Word games in general still feel unexplored, I always expect them not to be fun and then get sucked in.