Search the Community

Showing results for tags 'tilemaps'.

More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


  • HTML5 Game Coding
    • News
    • Game Showcase
    • Coding and Game Design
  • Frameworks
    • Phaser 3
    • Phaser 2
    • Pixi.js
    • Babylon.js
    • Panda 2
    • melonJS
    • Haxe JS
    • Kiwi.js
  • General
    • General Talk
  • Business
    • Collaborations (un-paid)
    • Jobs (Hiring and Freelance)
    • Services Offered

Found 37 results

  1. Hi guys, I'm new to the framework but I googled around abit and couldn't find an answer to this: I’m making a tile mapped game where the player needs to make their way through a tiled level by moving upwards. To achieve this the camera follows the player around a rectangular world My question is about creating 2 background TileSprites that scroll with the camera BUT not at the same speed as the camera to achieve the effect of having a background with TileSprite 1 in the distance and TileSprite 2 in the far distance Maybe something like an event handler that works like this: onCameraPositionChange(yDistance){ backgroundTileSprite1.scrollY -= yDistance/2 backgroundTileSprite2.scrollY -= yDistance/4 } Right now my setup is like this: TileSprite 1 -> moves with the camera TileSprite 2 -> stays still in background using TileSprite.fixedToCamera It looks okay right now, but I think this would convey a more convincing sense of distance. Cheers and thank you!
  2. Hi There, I am having this issue with phaser(2.9.4) where collision with a tilemap only work with the base layer. In my example I have the collide-able world and then I wanted to add a background underneath that was part of the tilemap. Here is my code(excluding boot and preload) Game.preload = function () { game.stage.backgroundColor = "000000"; }; Game.create = function () { Game.scale = 5; game.physics.startSystem(Phaser.Physics.ARCADE); game.physics.arcade.gravity.y = 850; Game.cursors = game.input.keyboard.createCursorKeys(); = game.add.tilemap('map');'tiles_1', 'tiles'); Game.back ='Background'); Game.back.setScale(Game.scale); Game.back.renderSettings.enableScrollDelta = false; Game.spawn ='Spawn'); Game.spawn.setScale(Game.scale); Game.spawn.renderSettings.enableScrollDelta = false; Game.decor ='Decor'); Game.decor.setScale(Game.scale); Game.decor.renderSettings.enableScrollDelta = false; Game.layer ='Collideable'); Game.layer.setScale(Game.scale); Game.layer.renderSettings.enableScrollDelta = false; Game.layer.resizeWorld();[]); Game.player = game.add.sprite(,, 'player'); Game.player.scale.setTo(Game.scale); //Game.player.anchor.setTo(0.5); game.physics.enable(Game.player, Phaser.Physics.ARCADE); Game.player.body.collideWorldBounds = true;; var enemyPos = Game.findTiles(952, true); Game.enemies =; for (var enemies in enemyPos) { var enemy = game.add.sprite(enemyPos[enemies][0] * Game.scale * 16, enemyPos[enemies][1] * Game.scale * 16, 'enemy'); Game.enemies.add(enemy); enemy.scale.setTo(randomInt(1, 5)); game.physics.enable(enemy, Phaser.Physics.ARCADE); enemy.body.collideWorldBounds = true; enemy.speed = randomInt(150, 250); enemy.interval = 0; enemy.update = function () { this.interval++; if (this.interval >= 20) { this.interval = 0; if (this.x > Game.player.x) { this.body.velocity.x = -this.speed; } else if (this.x < Game.player.x) { this.body.velocity.x = this.speed; } if (this.y > Game.player.y && this.body.blocked.down) { this.body.velocity.y = -600; } } } } }; Game.update = function () { game.physics.arcade.collide(Game.player, Game.layer); //game.physics.arcade.collide(Game.player, Game.enemies); game.physics.arcade.collide(Game.enemies, Game.layer); //game.physics.arcade.collide(Game.enemies, Game.enemies); Game.player.body.velocity.setMagnitude(Math.min(1000, Game.player.body.velocity.getMagnitude())); if (Game.cursors.left.isDown) { Game.player.body.velocity.x = -500; } else if (Game.cursors.right.isDown) { Game.player.body.velocity.x = 500; } else { Game.player.body.velocity.x = 0; } if (Game.cursors.up.isDown && Game.player.body.blocked.down) { Game.player.body.velocity.y = -600; } else if (Game.cursors.up.isDown && Game.player.body.touching.down) { Game.player.body.velocity.y = -600; } }; Game.findTiles = function (id, destroy) { var mapArray = Game.spawn.getTiles(0, 0,,; var found = []; var needToFindID = id; for (var blocks in mapArray) { if (needToFindID == mapArray[blocks].index) { found.push([mapArray[blocks].x, mapArray[blocks].y]); if (destroy) {[blocks].x, mapArray[blocks].y, Game.spawn).destroy(); } } } return found; }; function randomInt(min, max) { return Math.floor(Math.random() * (max - min + 1) + min); } Any help would be greatly appreciated.
  3. HI , i am trying to make a simple rpg stye game. i have created a map in tiled editor and exporting it to json. i can load and display the map in game but the colisons between my sprite and collision layer is not working. i have followed example from here . i also do not see any error in console. it just dosent work. here is my code. i am alsso attaching my level fileslevel2 <!doctype html> <html lang="en"> <head> <style> canvas {cursor: url('/assets/sprites/cursors/Black.png'), default;} </style> <meta charset="UTF-8" /> <title>Phaser - Making your first game, part 1</title> <script type="text/javascript" src="js/phaser.js"></script> <style type="text/css"> body { margin: 0; } </style> </head> <body> <script type="text/javascript"> function getRandomInt(min, max) { return Math.floor(Math.random() * (max - min + 1)) + min; } var __Player; var map; var xx; var mainState = { preload: function(){ game.load.tilemap('level', 'auxassets/level2', null, Phaser.Tilemap.TILED_JSON); game.load.image('forest_tiles_image', 'forest_tiles.png'); game.load.image('tiles', 'terrain_atlas.png'); game.load.image('player', '/auxassets/cahracter.png'); game.load.spritesheet('character', 'rpg_sprite_walk.png', 24, 32, 32); }, create: function(){ game.physics.startSystem(Phaser.Physics.P2JS); map = game.add.tilemap('level'); map.addTilesetImage('grass', 'tiles'); layer = map.createLayer('grass'); xx = map.createLayer('obstacles'); map.setCollision(373); game.physics.p2.convertTilemap(map, xx); __Player = game.add.sprite(100,1700,'character'); __Player.animations.add('walk_right',[24,25,26,27,28,29,30,31]); __Player.animations.add('walk_left',[16,17,18,19,20,21,22,23]); __Player.animations.add('walk_up',[8,9,10,11,12,13,14,15]); __Player.animations.add('walk_down',[0,1,2,3,4,5,6,7]); game.physics.p2.enable(__Player); cursors = this.input.keyboard.createCursorKeys();; layer.resizeWorld(); }, update: function(){ if(cursors.up.isDown){ __Player.body.y -= 5;'walk_up', 20); } if (cursors.down.isDown){ __Player.body.y += 5;'walk_down', 20); } if (cursors.left.isDown){'walk_left', 20); __Player.body.x -= 5; } if (cursors.right.isDown){'walk_right', 20); __Player.body.x += 5; } }, render: function() { // game.debug.cameraInfo(, 32, 32); }, }; var game = new Phaser.Game(800,600); game.state.add('main', mainState); game.state.start('main'); </script> </body> </html>
  4. help me pls, tilemaps collision

    Hello everyone, I am beginner with phaser, i am French and my english is not very nice. I need your help, i am blocked on a collide function. I want my character to collide with my second layer (tree, montain, statue..). (i use tiled map editor and export in json). my code : function preload: game.load.tilemap('map', 'assets/tilemaps/maps/map.json', null, Phaser.Tilemap.TILED_JSON); game.load.image('tiles', 'assets/tiles/tiles.png'); game.load.spritesheet('perso', 'assets/sprite/spritetest.png', 32, 47); function create : game.physics.startSystem(Phaser.Physics.ARCADE); map = game.add.tilemap('map'); map.addTilesetImage('tiles'); layer = map.createLayer('layer1'); layer2 = map.createLayer('layer2'); layer2.resizeWorld(); map.setCollisionBetween(0,2000); //PLAYER // ajout player et parametre player = game.add.sprite(250, 50, 'perso'); // We need to enable physics on the player game.physics.arcade.enable(player, Phaser.Physics.ARCADE); function update : game.physics.arcade.collide(player, layer2); i show an image for understand my problem. Thx to read my message
  5. /** * Takes the collision data defined in the collision editor of Tiled and applies it to * and exisiting tilemap for use with P2 physics bodies. * * Tilemap json data MUST be loaded in the Preload state/function using game.load.json() before this function is called * map must only have ONE tileset * each tile can only have ONE polyline set for it's collision * the polyline MUST be a complete shape (the last point is indentical to the first) * * @param {Phaser.Tilemap} map - this is the map which you want polylines added to * @param {string} key - this is the key for the raw json tilemap data loaded in the preload state * @param {bool} [roundValues=true] - Will round the x,y coordinates for the polylines to nearest integer */ addPolylineCollision: function (map, key, roundValues) { if (roundValues === undefined) { roundValues = true; } // json with the collision data that was omitted by phaser let data =; //console.log(data); let collisionData = data.tilesets[0].tiles; // array of the collision polygons that will get added to the tilemap var polygons = []; // tiles in the Collision Layer that will help define the polygons let mapData = map.layers[map.getLayer('Collision Layer')].data; for (let row in mapData) { for (let col in mapData[row]) { var wall = collisionData[mapData[row][col].index - 1]; if (wall !== undefined) { for (let i in wall.objectgroup.objects) { let poly = { height: 0, name: "", polyline: [], properties: undefined, type: "", visible: true, width: 0, x: mapData[row][col].x * map.tileWidth, y: mapData[row][col].y * map.tileHeight }; for (let j in wall.objectgroup.objects[i].polyline) { var coords = [wall.objectgroup.objects[i].polyline[j].x, wall.objectgroup.objects[i].polyline[j].y]; if (roundValues) { coords[0] = Math.round(coords[0]); coords[1] = Math.round(coords[1]); } poly.polyline.push(coords); } polygons.push(poly); } } } } console.log(polygons); map.collision['Collision Layer'] = polygons; } I'm writing a function to support Tiled's Collision editor and P2 physics. Everything seems fine but the values for all the polygons I defined get mangled to the same values. I thought it was a scope issue but nothing seems to work: pic: (Links to an external site.)Links to an external site. paste: (Links to an external site.)Links to an external site. By the time execution reaches line 57, the console.log call, all the values in the polyline arrays are totally messed up, they're set to values between -1 and 1, and are always set to the same values every time. At every other previous point in this functions lifetime everything works exactly as expected.
  6. Hi I'm playing a bit with this example. In this example there is a function which is responsible for displaying properties for the given tile: function getTileProperties() { var x = layer.getTileX(game.input.activePointer.worldX); var y = layer.getTileY(game.input.activePointer.worldY); var tile = map.getTile(x, y, layer); // Note: JSON.stringify will convert the object tile properties to a string currentDataString = JSON.stringify( ); = true; } Here is a file used as a map Part of the file which contains the properties information goes like "tileproperties": { "135": { "bonus":"100" }, "29": { "start":"true" }, "72": { "speed":"200" }, "99": { "goal":"true" } Question is: how to interprete those values "135", "29" (...) values, because they don't corresponds to the ids listed in the beginning of the map file ("data":[34, 34, 34, (...)). Below is a screenshot of game - I've selected the tile and the corresponding property - why "99"
  7. I m building a little platformer-type game and am having this problem: When the player is moving really fast, (basically when he falls a large distance) he no longer collides with stuff, and falls right through the floor. This problem comes up when I switch from making regular sprites in a group for floors and platforms, to loading in a tilemap from Tiled. I also notice a change, which is my only hint that something is working differently with the physics - the sprite's body.touching property no longer reads, and instead body.blocked now reads. So for example, if I let the player jump only if player.touching.down is true, I have to switch this condition when using the Tiled tilemap to player.blocked.down, because touching becomes always false. I don't really know phaser well enough to know why this is, but I just know its weird. here is how my code was before, when just making a group of sprites for platforms: this.platforms =; this.platforms.enableBody = true; var element; platformData.forEach(function( platform ){ element = this.platforms.create(platform.x, platform.y, 'green'); element.scale.setTo(platform.scaleX, platform.scaleY); }, this); this.platforms.setAll('body.immovable', true); // so they don't fall this.platforms.setAll('body.allowGravity', false); // so they can't be moved by other bodies and here is how it is when I load the map from Tiled: //create a tilemap object = this.add.tilemap('level1'); //join the tile images to the json data'tilesheet', 'gameTiles'); //create tile layers this.tileLayer ='tileLayer'); //collision layer should be collisionLayer, 1, true, 'tileLayer'); //resize the world to fit the layer this.tileLayer.resizeWorld(); And in update():, this.tileLayer); So it's weird, it collides just fine in every case, except when loading stuff from Tiled and moving really fast, and I don't really know why in one case bodies touch and in the other case bodies block, or what the difference really is supposed to mean.
  8. Hi, I'm trying to build a top-down 2d game. You can find the code for it here: Here is a screenshot of the game using "this.scale.scaleMode = Phaser.ScaleManager.NO_SCALE ;" The game works, but there are a few issues I'm having: 1) The "viewport" always shows an area of 10 x 10 tiles. As the player moves the camera follows him and he appears to be moving around the map. However, the viewport is always 10 x x10. Is there a way to change this, for example, to where the viewport always showed an area of 20x20 tiles? 2) When I use "NO_SCALE" mode everything looks super tiny, but when I use any scale mode (such as SHOW_ALL) the text looks blurry and is completely unreadable... How can I have graphics that are large enough to see while still keeping nice, crisp fonts? thanks.
  9. Tilemaps caching

    Hi! A couple of days ago I started with PhaserJS. Wonderful engine! And easily enough, specially when you come from a just-canvas environment. After reading a little about the platform, I started to code my homepage, made originally in EaselJS, in PhaserJS ( I created a Tilemap with multiple layers, I exported it and I loaded it into PhaserJS. And I have some problems: everything's cool if I don't move the background, but when I move it, FPS drops to 20 or even 15. I'm pretty sure this is because the rendering of the tilemap. If I use a background PNG image with the same size of the map and I only use the collisions layer, it works perfectly! But if I use all the layers then the movement becomes a pain. Now, the questions: a ) Is there any way I can make a "memory screenshot" of the tilemap first time is rendered? Maybe I can render the tilemap, then make a copy, then make all layers invisible b ) Is there a better solution? I'm all ears BTW, if you want to check the code, please be free: Right now it's working with the background image, but it has the collisions activated. Thanks!
  10. Beginner problem with Tilemaps

    Hey guys i've got a weird problem with tilemaps. In the create function i've got this: this.collisionLayer ='CollisionLayer'); this.ladderLayer ='LadderLayer'); this.collisionLayer.resizeWorld();[0 ]); and in the update function:, this.collisionLayer); this works just fine, and the player collides with the collisionLayer and so on. However if i do this:, this.ladderLayer); Nothing happens. I can collide perfectly fine with the ground in my small level. But the exact same code doesnt work for the ladderLayer. I've attached the file beneath if anyone would be so kind as to take a gander. Thanks for your time. firstMap.js
  11. Position tilemap layer

    I'm trying to stitch together random tilemaps to randomly generate a level. I'm attempting to do this by changing the [x, y] position of a tilemap layer, however changing those values don't result in anything. I found this post and am wondering if it has been address in 2.6.2:
  12. Trouble with Tilemap collisions in P2

    I'm having a bit of trouble with tilemap collisions. I'm using P2 and a json tiled tilemap. Strangely, it seems to work with small, simple tilemaps but as soon as I boost the complexity it seems to stop working. I've got a simple car being driven by physics that turns one way when you touch and the other when you don't. Help? Here's the create code: create: function(){ game.physics.startSystem(Phaser.Physics.P2JS); //!THIS STUFF WORKS WITH TEST MAP = this.add.tilemap('city');'roguecity'); this.decorationLayer ='decoration'); this.collisionLayer ='collision'); this.collisionLayer.resizeWorld();, 12); this.physics.p2.convertTilemap(, this.collisionLayer); this.stage.backgroundColor = "#d3d3ff"; this.cursors = game.input.keyboard.createCursorKeys(); game.input.keyboard.addKeyCapture([ Phaser.Keyboard.SPACEBAR ]); //map stuff //create the layer //this.backgroundLayer ="background"); //car stuff = game.add.sprite(60,35,"car"); game.physics.p2.enable(;,0.5); = true; }, Thanks!
  13. How Camera works ?

    Hello ! I'm currently making a custom engine in JavaScript (canvas). I already did sprites, particles, events (touch, keyboard, mouse) and a basic script to render tilemaps (no scrolling yet) I want to code the scrolling, camera and world system. If I create a game with a world of 30,000 pixels width and 15,000 pixels height, and my camera is in 800x and 800y for exemple; should I: -Call render and update functions for every element in the world (even if they are outside the canvas) -Get elements who are in the camera to update and render them. - Should I do something else ? What is the best thing to do ? Thanks
  14. top-down Tilemap terrain borders

    What is the smart way to do top-down tile terrain borders in Phaser? You can't see hard-line tile edges if you look at basically any top-down game with tiles (Sid Meier's Colonization, Rimworld, Civilization 2, Heroes of Might & Magic); there are a few pixels between the tiles that get merged which makes the image as a whole look more or less seamless. Using Phaser, it looks to me like manipulating and rendering a large tile-based game map/board should probably make use of Tilemaps. However, the examples all look like the tilemap tiles do not overlap at all. I can see how you could make a complete set of intermediate/edge/border tiles if your tileset only had a couple types of terrain on a single tilemap. Assuming that you rotate tiles when needed then such a tileset requires you needing something like a straight edge, an inner corner, an outer corner, and a pocket (bordered on 1, 2, 3, or 4 sides) for every terrain combination. For 2 terrains, that is only 4 border tiles. For 3 terrains, that is 12 border tiles. For 4 terrains, that is 24 border tiles. ... For 16 terrains, that is 480 border tiles! This is clearly unsustainable. So what is the solution? Is it possible to use a negative margin and positive spacing in the Tileset? Do you use a second TilemapLayer with partially transparent border tiles (so you only need some border tiles per terrain instead of per terrain combination)? Do you manually load images instead of using the Tilemap objects/functionality?
  15. I started playing around with Phaser but I consistently have problems with collisions. I have a tilemap here A sprite here and the gamestate here As far as I know everything is in order but still no collisions. Aside from the answer to my query (which would be great) I'd also like to ask how to go about debugging these things in the future. I checked the `collision` layer in the tilemap and it has a body but that was as far as I got. What other things should I check for to see why this wouldn't be working? Thanks!
  16. I mean tilemaps! Dang OS X autocorrector is not helpful. I can't for the life of me find any description of the JSON files used with tilemaps. I can guess what a lot of it is but not, for example, what the "data" attribute is for. Since I'm making my own tilemaps I'm at a standstill. Can someone point me to where they're described?
  17. Tilemap get object position

    Hi everyone, Is there a way to get object like getTile method for tiles? I am making grid based game and i need to check if there are any objects on specific tile position. Thanks in advance.
  18. Investigating neighbouring tiles

    I'm currently working with tiles to create levels - so far so good - I've managed to make a demo car game with a maze, collisions with walls and mines all working as expected. I'd like to extend the functionality with a new tileLayer with one tile on it - let's say its a tile indicating fire - and on a timer I'm firing a function which looks at the neighbouring tiles around it, and if they're empty (hasTile()?) then fill them with a fire tile - this means the fire layer will expand over time but only into neighbouring tiles. I'm currently using forEach to cycle through the tiles and only consider the ones with the correct tile index. I've tried using the function map.getTileAbove as a proof of concept but so far I can't work out why the response I'm getting is error (undefined) . Has anyone tried anything like this? And if so any advice would be appreciated. What's the best and most optimal way to check through the tiles to see if they're empty and then replace the tile texture? Cheers
  19. createFromTiles

    Does anyone have any working examples of using the createFromTiles() function of tilemaps that they would be willing to share?
  20. Hi there, I have a basic prototype, it´s a basic plattformer and I have the hero and the platforms working (with tilemaps) At the beginning of the game, I drop the hero on top of a platform and everything works fine I can walk in the platform and drop into a platform below. Also I can jump, but the problem is that I can jump everytime instead of just when I´m touching the floor (basically I can fly!). I´m using the sprite.body.touching.down property but it seems it´s not working at all, even when I´m walking on top of a platform the value of body.touching.down is false (and the physics and working fine) Am I missing something? Should I do "something else"? If it helps, here´s my code create: function () { = 1000; this.cursors =; = this.add.tilemap("level1")"tiles_spritesheet", "gameTiles") this.fondo ="fondo") this.bloques ="bloques"),160, true, "bloques") this.bloques.resizeWorld(); this.hero =*0.3,*0.25, "prota") this.hero.scale.setTo(0.5); this.hero.anchor.setTo(0.5) this.physics.enable(this.hero) }, jump:function(){ console.log(this.hero.body.touching) this.hero.body.velocity.y = -400; }, update:function(){ this.hero.body.velocity.x = 0;, this.bloques) if(this.cursors.right.isDown){ this.hero.body.velocity.x = 300; }else if(this.cursors.left.isDown){ this.hero.body.velocity.x = -300; } if(this.cursors.up.isDown){ this.jump(); } }
  21. I want to calculate a distance between object of the platformer and a place it can possibly achieve without moving up or down (face the obstacle or fall down), just left or right. So I use test bodies called this.shadowSide (to watch wall facing) and this.shadowDown (to watch falling). Prefer to call them "shadow bodies". I use to determine if the shadow body overlaps the floor. I move shadow bodies (left or right, depending of the direction I need), check overlaps and either continue searching or return a distance. It works well for sprite floors. The trouble is that doesn't seem to work with tilemaps. So I am looking for a way to indicate body vs. tilemap overlap. Or to calculate the distance in another way. Did anyone do that? The method with used with tilemap (left) and sprite floor (right): (use left and right cursor arrows to move bumpers and watch the distance change)The issue with body vs tilemap overlap: (I don't know whether or not it is an actual error)
  22. Tilemaps and code organization

    Yet more tilemap questions! I'm considering making a Metroidvania so I'm mightily concerned with tilemaps. Sorry in advance for the long post. 1. The relationship between tilemaps and states: at first I thought I'd have one state per level with all the customized behavior for that level. For example, the state would know which enemies were which, who collided with who, what order to add the layers in, etc. It seemed like I would be duplicating a lot of code between states like which tiles are collidable, how to instantiate the player, etc. Or maybe I would define a State class that took care of that stuff for me and was specialized in its subclasses? Anyhoo, then I thought I could write a generic tilemap loader that "knew" about certain conventions within my game, e.g. the enemies were all in the object layer named "enemies", the player is an object named "player", or something like that. Then I could go back to having a central "play" state and not have to change it too much per level. Now I'm swinging back the other way. ( = I figure there's not one right way to do things, but have any of you encountered difficulties in doing either of these? Are there other approaches I'm missing? Any recommendations? 2. Is there a way to do tilemap collisions where the tile doesn't take up the entire tile? As in, maybe the tile is only half-full? I know there's Ninja physics, but it seems kinda like the red-headed stepchild of the physics systems. Right now, Ninja only collides with the tiles, correct? I can't have multiple sprites colliding with each other? The docs seem to indicate that AABB-to-AABB and -to-circle collisions aren't there yet. Since it sounds like I'm going to be using Arcade physics... does that mean that for any tilemap shape that isn't the exact size of the tile I'm going to be making custom physics bodies and colliding them in the update method of my state? That offers tons of flexibility and I'm actually kinda excited about it, just not sure that's a sane approach or if I'm missing something. Looking at the documentation, is that what I'd use "setTileIndexCallback" for? 3. Looks like "scrollFactorX" and "scrollFactorY" are how to do parallax, correct? 4. When setting a range of tiles to collide, when would I set recalculate to false? Thanks for any help you can provide!
  23. Tilesheet, Tilemap Errors

    Hi everybody! I am a new phaser user, I have experience in other frameworks and with other programming lenguages and I discovered recently Phaser. I am really in love with it I've been working through the examples and documentation, some tutorials and more... and everything was going fine, but since yesterday, after finish the "Topdown tutorial" from "" I am experiencing an issue with tilemaps in my own project... I've been looking for other topics from other users with the same problem, but their "solutions" doesn't work for me and I am desperated, because I can't figure out what I am doing wrong... This is my code: Preload.js : this.load.tilemap('level1', 'assets/tilemaps/level_1_ok.json', null, Phaser.Tilemap.TILED_JSON);this.load.image('gameTiles', 'assets/images/tilesheet_platformer_1.png'); Game.js : ='level1');'tiles', 'gameTiles'); The output error message I am receiving is attached to this post. Please anybody could lend me a hand on this? I am very frustrated not being able to solve this issue. If you need me to upload the project or anything more to be able to help me, please ask. I'll be waiting for any answer, thank you!
  24. Safari Issues with Phaser 2.2.1

    I'm developing a game on Phaser that works on every single browser except for Safari. Scrolling tilemaps don't seem to work on Safari. Here's the game: As soon as you start to move the character, the tilemap disappears? (only on Safari) it worked like a charm in 2.1.4dev. Does anyone have a solution?
  25. [Newbie] Tile maps and JSON files ?

    Hey all ! I am new to the concept of tile maps in 2D level design, i just read the Wikipedia page and saw it in the phaser example "Starstruck" and i understand what it is. Could someone please explain to me how they are designed / how do they work and what tools are used to generate it in the JSON format ? Thanks everyone !