• Content Count

  • Joined

  • Last visited

1 Follower

About Jerorx

  • Rank
    Advanced Member

Contact Methods

  • Website URL
  • Twitter

Profile Information

  • Location

Recent Profile Visitors

3016 profile views
  1. (Disclaimer: I have posted a similar post on the new Phaser 3 forum, but as I crucially need feedback I'm spreading it around) I'm presenting Westward, a collaborative MMORPG where the players have organize themselves to settle a continent, continuously expanding westward in order to grow and conquering an hostile civilization in the process. The game can be played here and you can check this page for more information. I’m also writing regular dev log. There are one or two screenshots at the end of this post to give you an idea of the style. The first basic version of the game is finished and working, but this is still very much work in progress as the gameplay and the visuals are still basic and a far cry from what I have in mind, and surely there are some bugs left. However, it is advanced enough to be shown around and at this stage I crucially need feedback to steer the development in the right direction. Therefore, I invite you to as much as possible point out bugs, indicate what is not fun or annoying, what you think could be improved, but also what you like, if anything. Below the game canvas are a few social links (Slack & Discord) if you want to follow the development, support me and/or give feedback. These channels are still a bit empty, feel free to make that change. Development has been going on in my free time for more than 2 years and started with Phaser 2 but moved to Phaser 3 as soon as it was released and has grown with it.
  2. Jerorx

    Tutorial requests

    Sure, go ahead! I've also started looking into shaders with the goal of making a few tutorials, hopefully the first one should come before 2019.
  3. Jerorx

    Tutorial requests

    I have updated the first post with the latest requests as well as with the links @jamespierce has provided! Sorry for delay in doing so, I hadn't noticed that the topic had been moved and pinned and had thus gained a bit in popularity! I'll check more diligently from now on. I have also added a link to a small demo and tutorial I made addressing @B3L7's request about localStorage. @kudefe, I have summarized your request as "text-based adventures", let me know if you think it's not accurate!
  4. I'm working on a relatively complex project using Phaser 3, and recently I have started to experience bursts of intense lag. I suspect this is a WebGL issue (not specific to Phaser). However, I'm very unfamiliar with WebGL itself, and I'm not sure that I'm approaching the problem the right way. I have performed profiling with Chrome's devtools but the stack traces are not extremely informative to me and I didn't get out much of it. Therefore, I'd like to know if anyone could recommend specific ways to approach performance issues in WebGL, to help pinpointing the cause. Maybe to identify specific textures that cause problem, if this makes any sense at all, or any other useful pieces of information. To be clear, I'm not asking for you to solve my problem, that's why I'm providing so little info. For now I'm interested in you guys just letting me know about your best practice and experience in general for that kind of issues, so I can improve at this and solve it myself.
  5. Jerorx

    Tutorial requests

    @makisI see. I agree with you that the examples may not always be 100% crystal clear. However, as far as I am concerned, being already relatively experienced with Phaser 3 makes it a bit difficult for me to figure out which ones are the less helpful for beginners. Could you maybe post here a list of the Phaser 3 examples for which you'd like to see more detailed comments and documentation (à la w3schools)? Posting such a list here could have two benefits: - Some people could make pull requests adding comments to the problematic examples; - Some people/me could decide to focus on some of them and elaborate them into tutorials/demos I think you make valid points, but I need more specific targets to help motivate me to get started on new tutorials.
  6. Jerorx

    Tutorial requests

    Do you mean for example something like this tutorial from Rich? Or something different? In any case this is a good idea and I'll think about small projects that could lend themselves to that. Hopefully, others will as well. I'll update the first post.
  7. Jerorx

    Tutorial requests

    I think it would indeed be welcome, I've seen many people asking for that on Slack. I myself am not as proficient with scenes as I'd like to be. I have added your suggestion to the list in the first post. I'll also start looking into it a bit more seriously and may then write something on it! (If others know about good resources about this, feel free to share them here).
  8. I have written a few tutorials in the past, and would be interested in doing so again. But I'm only one among many other people who regularly make tutorials. With that in mind, I thought a "tutorial requests" topic could be a good idea, allowing people to come by and mention what they would be interested in seeing a (Phaser 3) tutorial or small open-source demo about. Similarly, tutorial makers could also drop by and test the waters by proposing tutorials ideas that they have, but aren't sure if there would be significant interest or not. For example, someone could come and ask for a minimap tutorial (it's an example, I'm aware there is already an official example for that), which could be picked upon by me or some other tutorial maker. I want to stress that this list is destined to anyone who is looking for tutorial ideas, not just me! To make it more usable, I will update this initial post regularly to display a summary of the requests posted in the topic. I'll also add links to tutorials addressing the demands, marking them as "done", but additional tutorials on a given topic are always welcome and will be added! In particular, if an existing tutorial doesn't fully meet your expectations, feel free to request another one by pointing out what is missing. I hope this will be valuable for as many people as possible Pending requests: A Phaser 3 version of the cloud platform tutorial, in particular the physics An introductory tutorial on shaders, for example applied to light effects or visual distortions Best practices regarding the proper use and combination of scenes (for menus, game over, ...) Creating save files using localStorage: done, available here. How to make a text-based adventure (like 80 days, Sorcery, the Banner Saga) How to make a grid-based movement system (using keyboard, not click-to-move) Making a game with Phaser and Cordova: done, check out this tutorial. Making levels for Phaser with Tiled: done, check this out as well as the full series it belongs to. Tutorials on the basics and how to get started with simple projects
  9. Well actually, this I haven't found out yet. Images land in the texture manager, so that's where events could come from that we could listen to, but I haven't succeeded yet to track down which event emitter would be relevant. Maybe @rich can chime in at some point.
  10. Pathfinding in itself, using a library, is relatively easy. But I had requests about how to actually set up the whole pipeline: starting from a tileset, specifying obstacles and costs, computing a path, and then actually moving the character along the path. This tutorial aims to explain all of that. Let me know if something is not clear or should be discussed in a bit more depth. Click here for the tutorial Click here for the demo Click here for the code
  11. I have written a tutorial on how to load tilemaps on the fly in Phaser 3. The tutorial focuses on a specific application of this, which is loading "chunks" of a big tilemap depending on the player position, in order to avoid loading the entire map. This is useful if you have a big open world in your game. Click here for the tutorial Click here for the code Click here for the demo
  12. I'm sorry but I don't get it! You mean I should use a different root container than what I am using now (or do you denote something else by "root")? Could you elaborate? I really don't see what I could do regarding the root container. At the moment I'm already changing the scale parameters of the root container (e.g. stage.scale.x = 0.1, stage.scale.y = 0.1), and visually it works, but is not reflected in the extraction. Thanks for your great help so far!
  13. Wonderful, now it works! Thanks! While I am at it, I now have a question. The image extraction ignores the scale parameter of the stage (or the resolution parameter of the renderer). Even if I display the chunks at 0.01 scale, the generated pictures will be full size (e.g. the width for a batch of 15 chunks will be 14400 instead of the intended 144). Is there a way to make the extraction take the scale into account?
  14. I'm trying to capture the map of my game as a png image. The map is composed of 32x32 tiles, has a width of 1500 tiles and a height of 1140 tiles (48000x36480 pixels in total). I don't actually display it in full, but by "chunks". Each chunk has a dimension of 30x20 tiles, and consists in a PIXI.Container object storing one sprite for each tile of the chunk (in multiple layers). There are 2850 chunks in total. The map is quite big, and displaying all chunks simultaneously makes the browser crash. In any case, capturing the whole map at once wouldn't be possible I think because its dimensions would exceed WebGl MAX_TEXTURE_SIZE parameter. So my goal instead is to display batches of a few hundred chunks, one batch at a time, and capture them in pictures. I don't mind having my world map split in multiple pictures, on the contrary. So the process consists in the following steps (slightly simplified): for(var i = 0; i < last_batch; i++){ removeAll(); // removes currently displayed chunks, if any displayBatch(i); // displays 200 chunks of interest captureScene(); // captures the scene as an image } Here is my captureScene() method: captureScene(){ Engine.renderer.extract.canvas(Engine.stage).toBlob(function(b){ var a = document.createElement('a'); document.body.append(a); = 'map.png'; a.href = URL.createObjectURL(b);; a.remove(); }, 'image/png'); }; It works, except that (in both the latest Chrome and Firefox quantum), after a few batches it eventually crashes ("WebGl has lost context") so that I never manage to capture everything. Even with batches of 25 chunks instead of 200, it eventually crashes. I was wondering if any of you might have ideas to improve this process, or an altogether different solution, based on your experience and knowledge of Pixi. Maybe there is a more efficient way to capture the scene? Alternatively, any tips that could help me diagnose better why it is crashing are also welcome. In case you are wondering, here are the steps I perform when removing a chunk: chunk.destroy({ children: true, texture: false, baseTexture: false }); Engine.stage.removeChild(chunk); I destroy the objects but preserve the textures son they can be reused for subsequent batches. Again, let me know if you see any improvements on this front (in terms of memory management for example). I'm interested in any comments!