I created a xna-game like the iOS Platformer game "Banana Kong". The level-layers are currently saved as XML files.


        <tile type="0" x="50" y="70"></tile>
        .. And so on
    .. And so on

Its a temporary solution, yes, but when I sell/release it, static levels are not very good.

So How I could create levels randomly?

The engine would have to pay attantion, to not create tiles, the player can't reach, or create tiles an other tiles.

My current concept is, that the engine could create random tiles as long a tile fits every condition - but there is a unlikely chance that this will never happen and I think there are better methods to do this.

So, I hope anybody could give me some resources, theories or anything, what can help me.

  • \$\begingroup\$ Microsoft won't support XNA in the future, just saying. \$\endgroup\$ Commented Feb 23, 2013 at 21:09
  • \$\begingroup\$ I know this, Jean-Philippe, but thank you anyways. \$\endgroup\$
    – namespace
    Commented Feb 23, 2013 at 21:13
  • \$\begingroup\$ You've got MonoGame which is actively developed. \$\endgroup\$
    – animaonline
    Commented Feb 24, 2013 at 8:59
  • \$\begingroup\$ What has the question "create random platformer levels" have to do with XML files or XNA or C#? I retaged it. Even though you seem to think the way your levels are represented in files is relevant, I think it has nothing to do with the question. \$\endgroup\$
    – Liosan
    Commented Mar 29, 2013 at 9:57
  • 1
    \$\begingroup\$ nothing really... \$\endgroup\$
    – API-Beast
    Commented Mar 29, 2013 at 9:59

1 Answer 1


You may want to give this paper a read. It is about constructing platformer level based on jumping rythm.

The simplest approach would be to define rules for each layer and match the tiles agains it. You may define a range the character can jump with single (and maybe double ) jump. Then evaluate possible next tiles in this range and pick one at random.


You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .