# Considering Leaving Phaser Development

**URL:** <https://phaser.discourse.group/t/considering-leaving-phaser-development/5835>\
**Category:** Phaser 3\
**Created:** [April 8, 2020, 11:38pm UTC](https://phaser.discourse.group/t/considering-leaving-phaser-development/5835 "2020-04-08T23:38:35Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![JimLynchCodes](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/jimlynchcodes/32/3090_2.png) [@JimLynchCodes](https://phaser.discourse.group/u/JimLynchCodes)\
**Post date:** [April 8, 2020, 11:38pm UTC](https://phaser.discourse.group/t/considering-leaving-phaser-development/5835/1 "2020-04-08T23:38:35Z")

</div>

Hi, I experimented with phaser a few years ago and left because it just didn’t work for me.

I was excited to come back to it thinking that it would be better, but I have just encountered bugs in the framework nonstop since starting to use it.

In particular is [this issue](https://phaser.discourse.group/t/how-to-restart-a-scene/5819/11) where starting a scene completely screws up the mouse listeners…

Am I pushing it too hard? Am I doing crazy things here because it just seems super buggy to me…

Looking for everyone to tell me I’m an idiot and that it’s just me coding it wrong, not the framework.

thanks!

---

<div class="post-metadata">

**Author:** ![UltimateProGrammer](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/ultimateprogrammer/32/3069_2.png) [@UltimateProGrammer](https://phaser.discourse.group/u/UltimateProGrammer)\
**Post date:** [April 8, 2020, 11:39pm UTC](https://phaser.discourse.group/t/considering-leaving-phaser-development/5835/2 "2020-04-08T23:39:46Z")

</div>

That issue isn’t with phaser. I’ll keep working with you, I am just in the middle of something now.

Phaser is the best (imo) JS game engine.

---

<div class="post-metadata">

**Author:** ![JimLynchCodes](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/jimlynchcodes/32/3090_2.png) [@JimLynchCodes](https://phaser.discourse.group/u/JimLynchCodes)\
**Post date:** [April 8, 2020, 11:43pm UTC](https://phaser.discourse.group/t/considering-leaving-phaser-development/5835/3 "2020-04-08T23:43:35Z")

</div>

Thanks @UltimateProGrammer!

I do like the APIs in phaser, but it’s super frustrating that they don’t seem to actually work properly. 😕

I also really dislike the way the examples are organized and that the docs is just regurgitating the source code of the library rather than actually showing how a game dev would use it.

---

<div class="post-metadata">

**Author:** ![UltimateProGrammer](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/ultimateprogrammer/32/3069_2.png) [@UltimateProGrammer](https://phaser.discourse.group/u/UltimateProGrammer)\
**Post date:** [April 8, 2020, 11:47pm UTC](https://phaser.discourse.group/t/considering-leaving-phaser-development/5835/4 "2020-04-08T23:47:37Z")

</div>

I’ve never encountered issues like you have. I’m sure this community can solve all of them

---

<div class="post-metadata">

**Author:** ![JimLynchCodes](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/jimlynchcodes/32/3090_2.png) [@JimLynchCodes](https://phaser.discourse.group/u/JimLynchCodes)\
**Post date:** [April 9, 2020, 12:17am UTC](https://phaser.discourse.group/t/considering-leaving-phaser-development/5835/5 "2020-04-09T00:17:27Z")

</div>

Thanks. The community is really great, but I am seriously losing my confidence in the framework itself.

---

<div class="post-metadata">

**Author:** ![JimLynchCodes](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/jimlynchcodes/32/3090_2.png) [@JimLynchCodes](https://phaser.discourse.group/u/JimLynchCodes)\
**Post date:** [April 9, 2020, 12:31am UTC](https://phaser.discourse.group/t/considering-leaving-phaser-development/5835/6 "2020-04-09T00:31:36Z")

</div>

The fact that starting a scene a second time doesn’t work properly is a huge issue for me. My sprites aren’t being added to the screen the second time either.

I randomly get this weird error from the framework as well:

```
Uncaught TypeError: Cannot read property 'cut' of null
at Frame.setSize (Frame.js:377)
at Text.updateText (Text.js:1169)
at Text.setText (Text.js:609)
at HudScene.ts:29
at Object.dispatch (redux.js:222)
at Object.e [as dispatch] (<anonymous>:1:40553)
at PlayScene.<anonymous> (PlayScene.ts:140)
at World.collideSpriteVsSprite (World.js:1893)
at World.collideHandler (World.js:1822)
at World.collideObjects (World.js:1767)
```

---

<div class="post-metadata">

**Author:** ![UltimateProGrammer](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/ultimateprogrammer/32/3069_2.png) [@UltimateProGrammer](https://phaser.discourse.group/u/UltimateProGrammer)\
**Post date:** [April 9, 2020, 12:33am UTC](https://phaser.discourse.group/t/considering-leaving-phaser-development/5835/7 "2020-04-09T00:33:20Z")

</div>

Weird errors normally mean that something is wrong and we just don’t know it. You might have to rewrite some of the underlying code, although it won’t be difficult, and you shouldn’t leave Phaser just because you need to change a few lines.

---

<div class="post-metadata">

**Author:** ![JimLynchCodes](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/jimlynchcodes/32/3090_2.png) [@JimLynchCodes](https://phaser.discourse.group/u/JimLynchCodes)\
**Post date:** [April 9, 2020, 12:34am UTC](https://phaser.discourse.group/t/considering-leaving-phaser-development/5835/8 "2020-04-09T00:34:56Z")

</div>

If I only had to change a few lines it would be fine, but when there is nothing you can change it to to make it work as it should… then what? 😢

---

<div class="post-metadata">

**Author:** ![UltimateProGrammer](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/ultimateprogrammer/32/3069_2.png) [@UltimateProGrammer](https://phaser.discourse.group/u/UltimateProGrammer)\
**Post date:** [April 9, 2020, 12:40am UTC](https://phaser.discourse.group/t/considering-leaving-phaser-development/5835/9 "2020-04-09T00:40:31Z")

</div>

There is something that will make it work as it should.

---

<div class="post-metadata">

**Author:** ![JimLynchCodes](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/jimlynchcodes/32/3090_2.png) [@JimLynchCodes](https://phaser.discourse.group/u/JimLynchCodes)\
**Post date:** [April 9, 2020, 12:50am UTC](https://phaser.discourse.group/t/considering-leaving-phaser-development/5835/10 "2020-04-09T00:50:38Z")

</div>

But creating and destroying scenes is such a critical thing. How can you ever come back from a “game over” if you can’t go back to the play scene a second time?

---

<div class="post-metadata">

**Author:** ![UltimateProGrammer](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/ultimateprogrammer/32/3069_2.png) [@UltimateProGrammer](https://phaser.discourse.group/u/UltimateProGrammer)\
**Post date:** [April 9, 2020, 1:00am UTC](https://phaser.discourse.group/t/considering-leaving-phaser-development/5835/11 "2020-04-09T01:00:27Z")

</div>

You can both create and destroy scenes.

---

<div class="post-metadata">

**Author:** ![JimLynchCodes](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/jimlynchcodes/32/3090_2.png) [@JimLynchCodes](https://phaser.discourse.group/u/JimLynchCodes)\
**Post date:** [April 9, 2020, 1:02am UTC](https://phaser.discourse.group/t/considering-leaving-phaser-development/5835/12 "2020-04-09T01:02:54Z")

</div>

Hmm when I create a scene the first time it works as expected, but when creating it a second time there are lots of bugs and errors.

I tried using “scene.remove” and “scene.stop” but neither of them seem to fix the issues. What’s the correct way tor really destroy the scene? 🤔

---

<div class="post-metadata">

**Author:** ![UltimateProGrammer](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/ultimateprogrammer/32/3069_2.png) [@UltimateProGrammer](https://phaser.discourse.group/u/UltimateProGrammer)\
**Post date:** [April 9, 2020, 1:05am UTC](https://phaser.discourse.group/t/considering-leaving-phaser-development/5835/13 "2020-04-09T01:05:32Z")

</div>

How are you creating and removing scenes? [Here](https://rexrainbow.github.io/phaser3-rex-notes/docs/site/scenemanager/) are my preferred docs for scenes:

---

<div class="post-metadata">

**Author:** ![JimLynchCodes](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/jimlynchcodes/32/3090_2.png) [@JimLynchCodes](https://phaser.discourse.group/u/JimLynchCodes)\
**Post date:** [April 9, 2020, 1:30am UTC](https://phaser.discourse.group/t/considering-leaving-phaser-development/5835/14 "2020-04-09T01:30:01Z")

</div>

I am creating the scene using “scene.start”

The docs say calling “scene.remove” should delete it which is very incorrect. I think “scene.remove” is like the opposite of “scene.add”, and when it does remove it then it doesn’t seem to be fully deleted since, if it was, then starting the scene again would be the same as starting it the first time. 😕

---

<div class="post-metadata">

**Author:** ![JimLynchCodes](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/jimlynchcodes/32/3090_2.png) [@JimLynchCodes](https://phaser.discourse.group/u/JimLynchCodes)\
**Post date:** [April 9, 2020, 2:08am UTC](https://phaser.discourse.group/t/considering-leaving-phaser-development/5835/15 "2020-04-09T02:08:12Z")

</div>

Looks like

```
this.cameras.resetAll()

```

is working for me.

I will keep fighting this to see if I can get it to restart a seen without errors. I do think phaser is super fragile, but maybe it is actually possible!

Thanks @UltimateProGrammer 👍

---

<div class="post-metadata">

**Author:** ![JimmleWomp](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/jimmlewomp/32/3098_2.png) [@JimmleWomp](https://phaser.discourse.group/u/JimmleWomp)\
**Post date:** [April 9, 2020, 3:05am UTC](https://phaser.discourse.group/t/considering-leaving-phaser-development/5835/16 "2020-04-09T03:05:33Z")

</div>

Hey Jim,

I too had to learn the hard way that you need to clean up changes to the main camera. 😁

I would recommend keep trying things as there probably is a way- very rare that you found something that is truly non-workaroundable. 😉

Try not to get so frustrated as game development can be often hard, possibly the most hard development there is! (And definitely harder than making a boring dashboard in React. hehe) 😆

Take more breaks and don’t be afraid to think about things a different way. The first times using different APIs is that hardest, and once you figure these things it’ll be much easier for every time after that.

Like you said, starting the game scene after getting game over is a very common thing to do, and there are many other games that do it without problems so I think you just need to pinpoint what exactly is screwing up your scene when it restarts.

---

<div class="post-metadata">

**Author:** ![JimLynchCodes](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/jimlynchcodes/32/3090_2.png) [@JimLynchCodes](https://phaser.discourse.group/u/JimLynchCodes)\
**Post date:** [April 9, 2020, 4:46pm UTC](https://phaser.discourse.group/t/considering-leaving-phaser-development/5835/17 "2020-04-09T16:46:48Z")

</div>

Thanks everyone, I think you are right. I don’t know why I expect everything to be super easy, maybe I just have high expectations from so much development on super heavily worked on frameworks liek React and Angular. 😅

Anyway, I was able to fix the issues so I will continue with phaser, and I’ll try to keep in mind that when things aren’t working it’s most likely either typos / coding logic bugs causing crazy things to happen or I’m just not using the right functions from the library. Thanks 👍

---

<div class="post-metadata">

**Author:** ![PBMCube](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/pbmcube/32/93_2.png) [@PBMCube](https://phaser.discourse.group/u/PBMCube)\
**Post date:** [April 9, 2020, 9:49pm UTC](https://phaser.discourse.group/t/considering-leaving-phaser-development/5835/18 "2020-04-09T21:49:02Z")

</div>

You’re not quoting official PHASER DOC … you’re supporting his point

---

<div class="post-metadata">

**Author:** ![UltimateProGrammer](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/ultimateprogrammer/32/3069_2.png) [@UltimateProGrammer](https://phaser.discourse.group/u/UltimateProGrammer)\
**Post date:** [April 9, 2020, 10:41pm UTC](https://phaser.discourse.group/t/considering-leaving-phaser-development/5835/19 "2020-04-09T22:41:54Z")

</div>

He was simply asking whether or not it was possible.

---

<div class="post-metadata">

**Author:** ![JimLynchCodes](https://yyz2.discourse-cdn.com/free1/user_avatar/phaser.discourse.group/jimlynchcodes/32/3090_2.png) [@JimLynchCodes](https://phaser.discourse.group/u/JimLynchCodes)\
**Post date:** [April 11, 2020, 4:33pm UTC](https://phaser.discourse.group/t/considering-leaving-phaser-development/5835/20 "2020-04-11T16:33:36Z")

</div>

I mean [this site](https://photonstorm.github.io/phaser3-docs/) when I say the “official phaser docs” which seem like just a website generated from the jsdoc comments in the code. In theory it’s a good idea but is often very unhelpful to a gamedev using the framework.

This lack of good official documentation leads to all these scattered 3rd party docs which can be hit or miss.

Compare this to, say, the [Angular docs](https://angular.io/docs), where everything is thoroughly explained along with the API.

[Next page](https://phaser.discourse.group/t/considering-leaving-phaser-development/5835.md?page=2)
