dop2000's Forum Posts

  • Are you using effects? Effects can be very slow on mobile.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • I recovered two maps, do they look familiar to you? :)

    Here is the C3 project with both tilemaps:

    dropbox.com/s/z1xtzogizjjgdzy/LoadedTileMaps.c3p

    .

    You didn't provide tileset image files, so you need to double-click each tilemap object and load the correct image file.

    For SchoolGreyTM I see you used imgonline-com-ua-ReplaceColor-j76VKh6CUi.jpg

    For SchoolObjectsTM you used Schoolobjects.png

    .

    There is also a third tileset ("basketball court"), but you didn't send me its tsx file.

  • I really don't know. I would suggest making a blank project with 3840 x 2160 DrawingCanvas, trying to paste some sample sprite on it, save and download. If the result image size is smaller, log it as a bug.

    Also, try changing project scaling mode and see if it affects exported image size.

  • I don't know why the resolution is wrong. Try to check drawing canvas size in Debug Mode.

    Like I said in previous comment, you should probably paste objects one by one, from lowest on Z-axis to highest. If any object is on invisible layer, skip it.

    .

    If you are using effects or blend modes, this method may produce a wrong image. In this case you don't have any other choice but to make screen snapshots.

  • I don't understand your question.

    You can have 100 levels = 100 layouts.

    All 100 layouts can use the same 1 event sheet.

    If you want to use the same HUD layer on all 100 layouts, set it as Global=Yes.

  • I don't see any "DrawingCanvas paste object" actions in your code. If you are not pasting anything, the saved image will be blank.

  • Actually, you don't need a family. Arrays can also have multiple instance. So you can create 5 instances of Array object and store different data in them. Pick any instance of Array with an instance variable.

  • Set Global=yes for HUD layer.

  • Fade behavior must be better. With lots of frames in animation your images are using more memory.

  • Now with my example on how to transfer screen snapshots through a sprite into Drawing Canvas, you can try again :)

    .

    Actually, you can probably make an image of the entire layout much easier. Simply set DrawingCanvas size to layout size and paste all objects on it (Created_Objects family or whatever). Then save and download. You don't need to make screen snapshots.

    You probably would want to paste objects one by one ordered by their zIndex.

  • If you need to load screen snapshot to DrawingCanvas, and then save DrawingCanvas image to disk, I think you need something like this:

    Note, that you need another empty sprite (ExportSprite) to load CanvasSnapshot, which you then paste onto the DrawingCanvas. ExportSprite and CanvasSnapshot should be the same size (big enough to fit the screenshot) and placed at the same position.

    .

    Also note, that DrawingCanvas actions "Save snapshot", "Load snapshot" etc. have nothing to do with the System "Take snapshot" action. They just happen to use the same word "snapshot".

    .

    If you need to save the entire layout, which is larger than the screen size, you will need to repeat steps in event #2 multiple times. Each time scrolling to a new position, taking new snapshot, loading into ExportSprite and pasting onto the DrawingCanvas. Refer to that demo from R0J0hound I posted earlier.

  • One layout = one level. This is a common approach.

    You can set layers as global to re-use them on many levels.

  • Try this:

  • I never used Tiled software myself. Does it have an option to save or export the map in one of these formats - TMX, XML, JSON?

    In Construct 3 first you need to import tileset image into the TileMap object, adjust tile size. If you were able to get TMX file from Tiled, you can try to load it in the Tilemap toolbar. If successful, this should load your entire map.

    .

    If you don't have TMX file, it still may be possible to import the map. Please share whatever files you got from Tiled and I'll see what can be done.

  • First, I suggest making just one loop and check all buttons inside of it.

    .

    You need to link players with their gamepads. You can add an instance variable GamepadNo to the player sprite. When a button is pressed on gamepad #1, pick a player with GamepadNo=1 and control it.

    .

    Or you can do this with an array, for example X-index of the array is the player number, and the value is gamepad number. So for 4 players your array may look like this:

    x=0: 3
    x=1: 0
    x=2: 2
    x=3: 1
    

    You fill this array at the start of the game, when you ask each player to press a button on their gamepads. Then in the game when a button is pressed on gamepad with index 1, you know that it belongs to player #3.