What's new

SourceForge.net Logo

The latest version of Crosswords, 4.4 (currently in beta and for Windows Mobile only), adds three new features:

  • Support for localization
  • Support for play between networked devices (e.g. smartphones)
  • Support for dictionaries built from Unicode wordlists
This page gives status and describes those new features. For information on installing the WinMo versions of Crosswords see the Smartphone page.

(Download the latest 4.4 beta for Smartphone or PocketPC) Then pick the language translations you want.


Jan. 17, Beta-10 (rev. 2952) adds improvements to localized languages and removes the requirement that you manually select a new language after installing it. Also fixes a potential crasher.

Dec. 27, Beta-9 (rev. 2871) will finally bring up a cellular data connection if none exists, and enforces (while providing status and error messages) a new rule that the host connect before the guest[s] when playing via relay.

Nov.25, Beta-7 (rev. 2818) fixes a couple of annoying bugs: backspace now works again, and dragging empty regions of dialogs scrolls them again.

Nov.22, Beta-6 adds store-and-forward support to the relay and better sizing of fonts to fit the screen. Now once you and the other device[s] in your game have connected, you don't have to all be connected at the same time to continue the game. Also adds a preference to stop requiring you to confirm every move you make.

Oct. 25, Beta-5 fixes a crash, makes some simple UI changes like adding the name of the player whose turn it is to the scoreboard, makes changes for localized dialogs, and finally has a single .cab file to install on both platforms. Download release notes.

Sept 29, Beta-4 fixes a problem just introduced drawing on 320x320 displays.

On Sept 26 I'm posting Beta-3 (rev. 2716). It fixes a number of connection issues and a crasher when switching games. Older versions of Crosswords will not be able to open games saved from this version and later.

As of Sept 21, Beta-2 is posted, and this site now has URLs to allow downloading. Have at it.

Known problems

  • Sometimes a new game won't connect to the relay. Try quitting and restarting.
  • The tops are getting cut off of numbers on the screen. It's a cosmetic issue but ugly!


Localization support means that it's now possible to have the menus, dialogs, and alerts you see while playing Crosswords appear in languages other than English. (Yes, the PalmOS version has had this feature for years.)

Of course language experts still need to translate the files. So far Crosswords has been localized into Polish, and is currently being localized into French and Catalan. If you're interested in helping with another language, please email me. It will probably take about 12 hours of your time.


The Crosswords .exe file always contains everything it needs to run in English. To change the language it uses you must install a localized .dll into the same directory as the .exe. (Installing from a .cab file is the easiest way to do this.) Once there is an installed .dll Crosswords will use it. If you want to revert to English, or if you want to switch between several installed .dlls, use the Preferences dialog to launch the language picker to change the language -- and then exit and restart Crosswords.)

(Prior to beta 10, Crosswords required to you explicitly select a language after installing it.)

If you later remove the .dll Crosswords will revert to English.

Download .cab files to install .dlls providing translations here:
Language.cab for PocketPC or Smartphone
Catalan xwords4_catalan.cab
Czech xwords4_czech.cab
French xwords4_french.cab
Polish xwords4_polish.cab
Your language? email to volunteer

Note that localization has nothing to do with what language you are using to form words while playing the game. Switching languages in that way is done by switching dictionaries.

Multi-device play

With 4.4 on Windows Mobile it's now possible to play one game between two or more internet-enabled devices (e.g. WinMo Smartphones with data plans.) Getting connected is a bit more complicated than with beaming. Here's how it works.

Because cellphones are usually protected by carriers' firewalls, you can't just tell one to connect directly to another. Instead, they all connect to a server that relays messages between them. Since every Crosswords player in the world is using the same server the participants in a particular game have to agree on how to identify each other. That agreement is expressed as a Room which all devices transmit as part of beginning a game. (Think: "Let's meet in room Eric vs. Kati".) Once the relay server has received connection requests from enough devices using the same Room they can begin to exchange moves.

Host configuration
Guest configuration

The New game dialog for Crosswords 4.4 has a new dropdown at the top called Role. The choices are Standalone, Host and Guest. Standalone means no network play: when it's chosen the "Configure role" button disappears. Pick Host or Guest to play across the network.

The host is reponsible for determining how many players will be in the game and of them how many are remote. So when Host is chosen a new column called "Remote" appears in the player listing. This box must be checked for at least one player. Guests have no such responsibilities; they list only the players on that one device.

Please make sure that that number of players marked Remote on the host is equal to the number of players on all guest devices in the game. In the example above, the host device is saying there will be one remote player; and the one guest device is providing that one player. For a three-device game, there would be one host listing two remote players, and two guests providing one player each.

Tap the "Configure role" button to launch the "Connection" dialog (above middle). You can put anything in the "Room" field, but it is absolutely critical that all devices trying to connect use the same word or phrase.

In list form, for emphasis :-)

  • There must be one host per game, and the host must connect first
  • There must be between one and three guest devices per game
  • The number of players marked Remote on the host must equal the sum of all players listed on guests
  • All devices must have the same word or phrase in the Room field
  • There can be no more than four players total

Progress in connecting is indictated by a two-directional arrow icon at the right end of the scoreboard (or the bottom end if your scoreboard is vertical) whose background goes from red to green as the connection gets made. The shape will vary slightly depending on the resolution of your screen, but below are three images very close to what you'll see. And their meanings.
You have a working internet connection, but are not yet connected to the relay server.
Your device is connected to the relay server, but at least one other device is not.
You are connected and all the other devices in your game are too. It's playtime!

If you open the New Game/Game Info dialog after the devices have connected you will see that player information has been exchanged. All devices will now have the same list of all the players in the game.

While you can use this feature to play against somebody anywhere in the world, that's not really what I designed it for. Multi-device support started out using beaming on PalmOS devices, and I imagine that's how this will be used too: between people who are within talking distance of each other. You're welcome to use it however you like, of course. Please let me know how it works for you.

Unicode dictionaries

Unicode is the easiest way to represent letters of non-Western-European languages as well as special characters like the · on Catalan's L·L tile. Building dictionaries for Catalan and Polish recently I found Crosswords needed Unicode support.

Existing non-Unicode dictionaries still work. Dictionaries built from now on will be encoded the old way if possible. If they include Unicode (UTF-8) characters then the new dictionary format will be used, and older versions of Crosswords will not recognize them as dictionaries.

Soon, but not yet, B.Y.O.D. will handle UTF-8 properly as well.