Welcome to the Oort Cloud

Oort Cloud does consultancy, production, publishing and maintenance of computer applications.

We specialize in complex networked scalable client-server systems like response time sensitive web applications, networked games and distributed database systems.

Examples of Oort Cloud productions include god, a distributed scaleable object database and Droidippy, a multiplayer psychology/strategy game for the Android smartphone platform.

Aug 5, 2011

Droidippy Gameplay FAQ

What is this here FAQ?

This is the gameplay FAQ for the Diplomacy like game Droidippy. It is supposed to cover the gameplay questions that are the same for the different interfaces to the game.

For Android specific questions, go to Droidippy Android FAQ.

For Web specific questions go to Droidippy Web FAQ.

Where can I communicate with other players or the developers of the game?

There is a Google Group where discussions about specific games, the game as a whole and other related things happen.

There is also an IRC channel. Sadly the channel is mostly empty, though :/

How do I play the stupid game?

First of all you must be aware of the fact that this is more like a board game than a computer game. We just converted it to an Android environment because it is so well suited for that. But it is still for all intents and purposes a board game.

Then, go to Wikibooks and read the standard rules for Diplomacy. They apply here. Then you start talking to your fellow players using the chat function.

But I don't want to chat! I want to dominate and destroy!!!111

In this game the only way to dominate and destroy is to manipulate, cajole, dupe and betray your fellow players into helping you, and then backstab them when they need you the most.

What is the difference between 'Join random game', 'Create game' and 'Join invitational game'?

The system always keeps one game waiting for random players. Whenever someone chooses 'Join random game' this game will be joined. Whenever it has seven players it will automatically start and a new empty game will be created.

If you select 'Create game' you will instead create your own personal game, controlled by you, where you can choose deadline, invite members, kick members or post the 'Invitation code' on a forum to mass invite members.

If you select 'Join invitational game' the app instead expects you to enter such an invitation code, and will then add you to the game having that code.

How is reliability calculated?

Each phase in public games (not user created) where get put on probation gives you a missed deadline, and each phase where you do not get put on probation gives you a held deadline.

Reliability is (HELD DEADLINES + 1) / (MISSED DEADLINES + 1).

How does reliability affect me?

To let players play with others of similar reliability there are 3 'random' queues in the game. One for everyone with reliability below 10, the '0 reliability queue'. One for players with reliability over 10 and one for players with reliability over 50.

Since everyone has zero reliability when they start out, everyones first game is reliability 0. If you keep your act together during that game you will be fine for a reliability 10 game after 10 phases in said game.

What are the "public-email 1908" games?

To cater to the more serious players I created a game queue that you can only join once you have a reliability over 50 (see http://droidippy.oort.se/web#you).

These games have the following settings:

  • Private chat: ON
  • Conference chat: ON
  • Public email addresses: yes
  • Draws include all survivors: yes
  • Invalid orders allowed: yes
  • End year: 1908
  • Scoring system: c-diplo
  • Positions: random
  • Deadline: 48h
Are there any rules about what I can or can't do? Any policy about acceptable behaviour?

There didn't use to be, but for certain reasons the need for this has become evident.

Here are some infractions that may get you warned and/or banned:

  1. Being an asshole. Includes but is not limited to:
    • Willfully ruining the game for other players.
    • Keeping on spamming insults, taunts or other abuse after the target, while referring to this rule, has asked you to stop.
    • Discrimination based on rase, gender, ethnicity, sexuality or anything else irrelevant to the game.
    • Persecuting individual players outside regular dippy behaviour (orders, diplomacy).
    • Illegal activities of any kind.
    • Spamming nonsense just to annoy.
    • Spamming religious, commercial or political propaganda.
  2. Technical cheating. Includes but is not limited to:
    • Playing more than one power in a single game.

And here are some good conduct codes that are hard to enforce, but will help ensure a fun game for all players:

  1. Play primarily to win the game, the game dynamics usually get more fun if you do.
  2. Don't consider any alliance unbreakable. If an alliance can break under the right circumstances the stabbing gets more fun and unexpected.
  3. If you happen to know a player in the game outside of Droidippy, let everyone in the game know beforehand so that you minimize the unfair advantage you both get out of it.

These rules may be hard to prove and/or strictly define, but I will retain the privilege to be judge, jury and executioner. If you are uncertain about what is acceptable you are free to ask me.

More rules may be added if the need arises.

Why don't provinces without supply center get colors for the occupying power?

Because of the difficulty in determining what it would mean.

The supply center provinces don't get color from the last army or fleet to stay there, they get color from the last army or fleet to stay there during a winter. Would the same apply to the non-SC provinces?

If so, you would get lots of holes in your pretty colored map due to people not bothering to stay in a non-SC province during winter without getting an extra unit from it, and the colors would no longer mean as much.

Or would it be the last army or fleet that stayed there at all? If so you would still get a weird map, since some areas would change color temporarily and without any real meaning in the game, while others would keep the colors of the power that owned them through rule mechanics.

And lastly, why would you need it? The colors are really only there to show who has power over what supply center. Non supply centers are only interesting as staging areas for strategic movements.

What's this deal with pay to play? Why do you want my money?!

Why do you want my time for free?

And if you don't think the game is worth paying $2/month for (or $12/year), then you are probably happy with playing one game at a time, am I right?

Do I have to pay to play at all?

No, one game at a time is free (and games where you are eliminated or stranded without home supply centers or units do not count towards this maximum). This way you can try the game out (for many years if you want ;) before paying for it. And the other players will have more strangers to get stabbed by!

So, will I get thrown out of games if I don't pay?

No! Of course not. Why would I be hatin' like that? Only joining, creating and being invited to games is checked. All games you are already in are still free.

But why not charge a single fee on download, like all the other apps? Why this monthly charge?

Unfortunately Diplomacy like games are not big business. Right now I have too few new users to even hope for a single time fee to cover my hosting costs. Even with much higher fees than $2.

Also I think it is fair that if you want to play it just one game at a time you play for free, since you are a resource to the experienced players in your role as new competition. If you want to play a lot during a month or two then you just pay a small charge for that time, and don't pay for more than you play.

The ones using the app the most are the ones causing the most support work and the most load on the server. It stands to reason that they pay the most as well.

One reason that many apps have a one time fee is that they do not use a server. This game does, and it wouldn't manage without one. This server has a cost that is directly proportional to the number of people playing.

How many games that you buy will you play actively for more than a month? And if you don't do that, why pay more than $2 for it? Conversely, if you play it actively for more than a month don't you think it is actually worth more than $2? In essence, I think this system lets people pay what they think the game is worth.

How are the countries distributed?

I use an algorithm that simply goes through all possible combinations of players and countries, and selects the one that gives the most players a country as high as possible on their list of preferred powers.

I used two, or even three, units to go into a province, and there was only a single army defending it! Why couldn't I invade?

Your own units will bounce just the same as units from two different players. What you need to do is tell your units which one is moving, and which one is helping.

The one that moves you give the 'Move' order, the one that helps you give a 'Support' order, so that it supports the move from A to B.

Why did my units not do as I ordered?

Use '← phase' button (in Android hidden inside the menu), and then use the side arrows to navigate to the map view which will show you what all other players ordered their units to do, or to the result view which will show you the individual results of each given order.

If this does not make sense to you, go to Wikibooks and read the standard rules for Diplomacy.

What does the 'Commit' button do?

It tells the server that you are satisfied with your orders and are ok with resolving this phase. You will still be able to change your orders, but as soon as everyone else has committed their orders the phase will resolve.

Note that even if you do not press commit, your orders will be executed. The game will just wait and wait for you to be completely happy with your orders, and then give up and execute any orders it has. I figure it is better to only punish a lack of committing with a bump in the statistics instead of punishing it with that and a phase completely without orders.

What does the 'Intent' button do?

It lets you tell the server how you want to end the game.

If you want victory above all else (the default setting) you select "Victory".

If you want a shared victory between some players (does not have to include you) you select "Draw" and check what powers you want to share the victory. This will only end the game if every alive and active player agrees on the exact powers sharing the victory (including those not part of the victory) or choose surrender.

If you actually give up and willingly give victory to any other power you choose "Surrender", which will end the game if everyone except one power selects it or a shared draw where everyone is agreed.

The intent of the players is only checked when phases resolve, so you can play around with the intent button as much as you like until you commit, but remember to commit (or at least give an order) or your intent will be disregarded as you will be considered inactive!

How is the length of the phases selected? Why do they sometimes end before the '..h left' runs out?

All movement phases have a maximum length of 24 hours by default.

Whenever all active members of a game have committed their orders the phase will resolve. If some players have not committed when there is one hour left of the phase, a warning will be sent out. If some players have not committed when the time runs out, the phase will resolve and the players who never committed or entered orders will be put on probation (and no longer considered active).

What does being put on probation mean?

Being put on probation basically means that the game will no longer wait for you before resolving phases, and your 'Intent' will not be taken into account (you will not win if everyone else choose 'Surrender' and you will not be required to 'Surrender' or 'Draw' for the game to end that way).

You can get out of the probation by committing your orders before a phase resolves, but beware of retreat or build phases where only you have orders to give - the game will disband your units or void your builds since it will not wait for your orders at all.

How do I leave a game I joined?

This is only possible if it has not yet started. This is because it's serious business to join a game, and you don't leave it once it started.

But if it hasn't, you can long click (in Android) or click in the 'Forming', 'Created' or 'Inviting' tabs (in Web) in the game list, and get the option to leave it (or destroy it, if you created it).

How can I play this game? Nobody commits, answers my messages or even gives orders!

Keep at it! As long as you prove reliable in one game, you will be set up with other reliable players in future games.

As a matter of fact you only have to play 10 phases on time without missing a deadline to be in the top league regarding reliability, and any new games you start after that will be with other reliable players. Just don't start ignoring your first game with deadbeats because you are in a new high quality game - missed deadlines still hurt your reliability stats.

When can I build new units?

At the end of each 'Fall' phase the game will compare the number of supply centers and the number of units you control. Each supply center can supply one unit, and if you have more units than supply centers you will have to decide what units to disband. If you have more supply centers than units you will instead be able to build new units.

For technical reasons (you shall not be able to magically teleport units from abroad to your home provinces) you are not able to disband and build at the same time - either you have a surplus of supply centers and can build, or you have a lack of supply centers and must disband.

If you have to disband, and do not choose what to disband, the game will select for you. If you may build but do not choose what to build, nothing will be built.

If you give too many build orders the game will choose which ones to carry out for you.

Why is the 'Commit' button disabled? I haven't commited?

Basically the game will assume that you have committed if you committed last phase and you have no orders to give this phase, which happens if you have no units (movement phase), have no imbalance of supply centers (adjustment phase) or have no dislodged units (retreat phase).

Why does the game want access to my email account?

The game does not care about your email, or the account in itself - but it uses your google account to authenticate to the server so that you don't have to register another account or enter another password. You can of course, if you like, register a throw away google account and use that.

Why don't you have a list of open games, and let me choose one to join?

Because the list would only contain one game. There is only ever one game to join (for you - people with different reliability stats may have another game to join), and the moment it gets filled it starts. The reason the option is called "Join random game" is because your fellow players are more or less random, unless you synchronize your join with a friend (and even then you will sometimes be the last player in the game, and your friend the first one in the next game).

The only exception is if you select "Create game" in the same menu. Then you create an invitational game where only people that you invite directly or provide the invitation code to are able to join. But they are, of course, impossible to join using the "Join random game" option.

Why are the names on your map different from the names on the standard Diplomacy maps?

The reason for this is that since this is not Diplomacy (copyright etc Hasbro) but merely a compatible game, and I don't have the license to copy the maps of Hasbro, I have made my own map.

I am not sure if using identical names would make me more sensitive to lawsuits, but until a lawyer tells me it is safe I will likely use the map as it is..

I think you have a bug in your game engine, I wanted to do [insert move] and failed even when I should have succeeded.

Most of these complaints are actually not bugs, just that the rules become more complex than people realize. However, there have been cases where there was an actual bug, so you never know.

Since the adjudication engine I use is actually a slightly (some bugfixes, mainly) modified version of jDip which is tested against a whole set of test suites to make sure it follows all the Diplomacy rules, I will need some really good reasons to think that there is a bug in the rule system.

If you download jDip and try out the exact moves that you have issues with and find that they work the same in jDip, send an email to droidippy-mod@oort.se and explain why you think the adjudication is wrong.

If you download jDip and find that the results are not the same, then send me an email and tell me that I have a bug in my jDip integration ;).

Is there a way to play around with the game map and test different moves before committing?

You can use the aforementioned jDip and load the files you get when clicking the 'jDip file'-link in the web interface when looking at your game.

I've been eliminated from a game, how do I keep from being bugged with future turns?

The games where you are eliminated or stranded without either home supply centers or units should say "unsilenced" in the game list (in Android) or "Silence" (in the web interface). If you long click these games (in Android) or click the "Silence" button (in the web interface) you will be able to silence them.

Droidippy Web FAQ

What the hell is this?

This is the FAQ for the web interface to a Diplomacy like game called Droidippy.

The gameplay is supposed to be similar between the different interfaces, so for gameplay questions go to Droidippy Gameplay FAQ.

Where do I find this web interface?

At http://droidippy.oort.se

The chat input sends my messages as soon as I press enter. How can I send multi line messages?

Use shift+enter to add newlines without sending the message.

What browsers do you support?

The main audience of the web interface are the iOS users, who are unable to use the Android interface.

That would indicate that Safari is the browser i focus on.

That said, I don't use mac that much myself, and do my development with a Chrome browser (which at least uses webkit as well). I try to check the page in Safari on a mac, or preferably on an iPhone or iPad as often as I get the chance, though.

I try to check it out in Firefox as well. It's not very hard to get it working in Firefox, so please just let me know if it stops working because I was sloppy or forgot to test it :)

With IE all bets are off. Just don't use it, is my recommendation.

I have played many more games than show up in the statistics! Why don't you include them in the stats?!

Due to complaints in the forum about skewed statistics due to them including custom games and games where people NMR early on in the game, I have introduced a new requirement for the statistics: Only games within at least reliability bracket 10 (ie only includes players with at least reliability 10) will be counted in the statistics. In these games there are few NMRs, and only standard "random" games get a reliability bracket, so this should solve both problems in a rather straightforward way.

In case you disagree with the excellence of this, please say so in the forum and restart the discussion :D

Also note that since everyone starts out with reliability 0, you will never get your first game into the statistics: http://www.oort.se/2011/08/droidippy-gameplay-faq.html#queues.

How do you calculate the "points" in the statistics?

To avoid a scenario where someone wins the only game they play, and show up at the top of the list with 100% win ratio, I multiply the ratio with log10(n_games + 1) where n_games is the total number of games played.

This makes it hard to mess up the stats with only a few games played, but will still even out nicely in the end due to the flattening attributes of logarithms.

How do you calculate the "wins" in the statistics?

To create a value describing the general winnyness of a player, I just multiply the number of games where the player is a winner by the number of losers in those games divided by 6 and finally divided by the total number of winners in those games.

To clarify: To calculate the win points for a game where you are a winner, I will divide the number of loosers by (6 times the number of winners) in the game. This way you will get 1 point for a single win, 0.42 points for a two way draw, 0.22 points for a three way draw etc. This seemed fair to me.

Apr 27, 2011

Droidippy Wishlist

I hope that you enjoy the Droidippy game, and that there are no serious problems that you want to report.

(If there are, please email droidippy-mod@oort.se!)

But even if that is the case, I am sure there are some improvements that you would like to see. I myself can think of quite a few. But you who play this game are the authoritative source for improvement suggestions.

Below I have enumerated a few improvements that I would like to create for the game, but the list is almost by definition woefully inadequate, so please comment this post and tell me about the improvements you want to see, and why. Or just tell me which of the improvements on the list you would most like to see.

The suggestions that are best motivated, that I like the most, and that seem to have the most players behind them will be built in the immediate future. However, this is not a democracy, and I reserve the right to pick and choose.

  • iPhone client. This is a biggie, I don't even own an iPhone, so it probably won't happen any time soon. But if anyone out there is a competent iPhone dev, send me an email and we can work together?
  • A way to invite replacements for inactive players in games you created.
  • A pretty tutorial with screenshots on this blog.
  • An easier way to send suggestions and responses, for example constructed map images, to simplify negotiations.
  • Some kind of visible achievements or badges (example: a small star in silver or gold on the flag in the chat signifying the "commit on time"-reliability of the player speaking).
  • Some way of limiting the masses of email you may get when playing the web interface.
  • Some way of avoiding and/or punishing misbehaving players.
  • A friend system where you can mark other players as "friends", and more easily select them to invite to created games.

Apr 15, 2011

Droidippy Android FAQ

What kind of an FAQ is this?

This is the FAQ for the Android interface to the Diplomacy like game Droidippy.

For gameplay questions that are the same regardless of interface, go to Droidippy Gameplay FAQ.

How do I join a game?

When you first start the application, press 'Menu' and then 'Play' and 'Join random game'. You will be duly warned about having to know what you are getting into, and then you will get the option to rank the European great powers of 1901 according to how much you want to play them in the game.

How do I chat?

You use the black arrows at the bottom of the map view to switch mode between map, chat and orders. In the chat view you will be able to talk to any other player one on one, or with all of the players at the same time in the 'Conference' channel.

You will also be able to select if you want a draw, or if you give up, using the 'Intent' spinner.

And how do I give orders to my units?

You can pinch to zoom and pan on the map, and when you long click (more than 1/2 second) your own units (those starting in the country mentioned in the title bar of the application) you will get a menu of orders to enter.

But the map moves when I try to long click the units, and nothing happens!

Press the menu button, select 'Preferences' and try different values for 'Long click sensitivity' until you find one that suits your taste.

I am unable to pinch to zoom, how can I select my units?

In the preferences you can select 'Show zoom buttons', which will give you a '+' and a '-' button in the map view that enables you to zoom in or out without using pinch.

Why do I keep getting the "This game client is too old..." message? I have upgraded!

For some reason Android sometimes doesn't clean up the old installation properly when you upgrade. Try uninstalling and then reinstalling the application.

I am told I need to upgrade my client, but there is no updated version on the Android Market?

Sometimes Android Market is really bad at disseminating new versions. I have no idea why. In these cases you may have more luck if you download the installation file directly from http://droidippy.oort.se/web/static/Droidippy.apk.

I am getting really annoying errors about the server experiencing errors, or that the server did not respond as expected. Fix it!

Chances are that I have already fixed it. Try to upgrade to the latest Market version, and if that doesnt help use http://droidippy.oort.se/web/static/Droidippy.apk.

If that doesn't help either send me an email to droidippy-mod@oort.se.

For some reason I am unable to leave the preferences dialog. Maybe 'back' does nothing, and maybe if I restart the app it will bring me back to the preferences... what to do?

To alleviate this problem (which is really a bug in your phone, scouts honor!) I have made the preferences dialog close if you click the version tag at the bottom.

Incidentally, it will also copy the version string to your clipboard so as you can send me the proper version of the app when you report bugs and ask for help :D

I no longer get notifications in my phone. Instead I get emails. Please send me notifications like before!

To send notifications I use a Google service named C2DM. The phone registers to C2DM and then sends the subscription ID to the server which uses the subscription to send you notifications.

The reason you get emails is that the server either has no subscription ID for you, or that C2DM claims the subscription ID is invalid. If your phone is turned off for too long, for example, the subscription ID may get marked as invalid.

If the notifications only fail for you and not everyone else chances are that it is either your subscription or C2DM that is at fault.

In both cases it may help to resubscribe to the C2DM service. This will happen if you reboot the phone or if you uninstall and reinstall the game.

If none of these solutions work for you, please contact me at droidippy-mod@oort.se so that I can try and see what the problem is.

How can I install this game on an Android device that doesn't have Android Market?

The latest Droidippy client for Android is always published at http://droidippy.oort.se/web/static/Droidippy.apk, both because Android Market is sometimes slow to update when I need to push a new version and to enable devices without Market to install it.

Note however that the authentication system is still Google, so you still need a Google account on the device.

If you have more questions just add comments to this entry and I will add the question and the reply to the Q&A above.

Apr 13, 2011


Droidippy is a Diplomacy like game running on devices compatible with Android 2.2 and having at least one Google account as well as most modern web browsers (if you have a google account yourself).

Go to http://droidippy.oort.se to play right now, or go to the Android Market page to fetch it for your Android 2.2 compatible device.

If you have never played Diplomacy it could perhaps be explained as being a mix of Risk, Poker, Chess and Rock-Paper-Scissors. It was supposedly the favorite game of John Kennedy and Henry Kissinger.

If you have any problems, questions, comments, praise or complaints don't hesitate to send an email to droidippy-mod@oort.se!

If you have ideas for improvements, or other suggestions, you can also post them on the Droidippy Wishlist.

For discussion with other players, go to the Google Group Droidippy or join #droidippy@freenode.net.


  • Several simultaneous games (for premium users) with anonymous players or your friends from all over the world.
  • Keeps track of your deadline reliability, and sets you up with players of similar reliability.
  • Vector based map with zooming, panning and (in Android long-) click to enter orders.
  • Instant messaging, one on one and in a conference channel, in each game.
  • Game global help and talk chat channel.
  • Configurable (in Android) notifications when messages are sent, phases resolved and games end.
  • Browse history of games to check the performance of friend and foe alike.
  • Clearly stated orders and results in text, if the point and click interface confuses.


  • The web interface does not work in some Android devices, depending on whether their web browsers can render SVG images or not.
  • The web interface is in a beta phase and may not always work as expected or advertised.
  • Droidippy contains no explanations about the rules of the game. See http://en.wikibooks.org/wiki/Diplomacy/Rules for a full description of the rules.
  • Joining a game is serious business. A player that abandons a game will ruin the game for his or her fellow players. Please only join a game if you are actually interested in following it through to the end.

Here are some screenshots from the Android interface:

And here is a screenshot from the web interface: