# Multilevel game

**URL:** <https://phaser.discourse.group/t/multilevel-game/8896>\
**Category:** Phaser 3\
**Created:** [February 15, 2021, 9:19am UTC](https://phaser.discourse.group/t/multilevel-game/8896 "2021-02-15T09:19:25Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Parakul](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/parakul/32/4691_2.png) [@Parakul](https://phaser.discourse.group/u/Parakul)\
**Post date:** [February 15, 2021, 9:19am UTC](https://phaser.discourse.group/t/multilevel-game/8896/1 "2021-02-15T09:19:25Z")

</div>

> **[Bouncy Woods](https://poki.com/en/g/bouncy-woods)**
>
> Want to play Bouncy Woods? Play this game online for free on Poki. Lots of fun to play when bored at home or at school. Bouncy Woods is one of our favorite skill games.

I was observing this game made with phaser3, that seems to me very well done.

I don’t understand precisely how the developer created all the levels. There Is an ourcade brick-breaker example that explains how to use JSON files to create multiple levels using only one scene.

But this game Is more complicated. If a game has 40 levels, then 40 scenes are required? Each scene for every single level?

---

<div class="post-metadata">

**Author:** ![Milton](https://avatars.discourse-cdn.com/v4/letter/m/87869e/32.png) [@Milton](https://phaser.discourse.group/u/Milton)\
**Post date:** [February 15, 2021, 9:47am UTC](https://phaser.discourse.group/t/multilevel-game/8896/2 "2021-02-15T09:47:43Z")

</div>

No, you want something generic.  
This is a nice example:

> **[yandeu/phaser3-typescript-platformer-example](https://github.com/yandeu/phaser3-typescript-platformer-example)**
>
> Phaser 3 TypeScript Platformer Example. Contribute to yandeu/phaser3-typescript-platformer-example development by creating an account on GitHub.

---

<div class="post-metadata">

**Author:** ![theNeedle](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/theneedle/32/745_2.png) [@theNeedle](https://phaser.discourse.group/u/theNeedle)\
**Post date:** [February 15, 2021, 12:10pm UTC](https://phaser.discourse.group/t/multilevel-game/8896/3 "2021-02-15T12:10:02Z")

</div>

It really depends on your game and how you structure it. If there are lot of features/code is common in all of your levels you can put that in separate class and inherit that in you scene. Also you can use preload and init functions in scene to load sceneData and initialize scene using that.
