igortyhon's Forum Posts

  • Check where the pivot point "0" is on each frame, that's where the frame is centered.

  • Hi.

    Exactly which sprite is not removed on collision sprite or enemy?

    If you have small objects and high speeds, I recommend doing a step by step check. Here is an example editor.construct.net

    If only the laser is not deleted and the enemy is deleted then maybe you have several laser sprites flying around and they overlapped each other, it is easy to check this by adding an action to stop time after the sprites are destroyed. After the event time will stop and you can in debug mode to see what sprites are left more accurately.

  • Hi.

    Checked versions r379 and r388-2 in auto mode the file "workermain.js" is created.

    Have you tried putting "Yes" in the worker settings.

  • Hi. I don't know the optimal method, but I'll tell you how I did it.

    For an object, I created the object by name.

    System: Create object "Sprite"

    For the family, I used a trigger event to check if the family object was created.

    + Family1: On created

  • Try logging in from a different browser or incognito page. This happens when the cache is not empty.

    I also recommend that when uploading to the server always delete the old ones and then upload new ones. If you just do a replacement can also be a problem.

  • Right click the example - copy direct link

    Thank you. I know this method but it doesn't work on my latest version of Chrome for some reason. I checked the clipboard permission for the site is set. Why this is so I do not understand, I will try to look deeper.

    UPD

    I found the reason in the engine settings, that checkbox.

  • You can use the pathfinding behavior for that. Like this

    https://editor.construct.net/#open=pathfinding-groups

    Hi. Can you tell me how you get direct links to the example in the editor?

    (/#open=pathfinding-groups)

    I often give an answer to a question and I lack this skill.

    Thanks for your attention.

  • Hi.

    -You need to check the environment around the hero and if there are no enemies in the desired radius, you can disable the group where the enemy behavior is is CPU optimization.

    -It is desirable to break the world into biomes and when approaching the player to this biome we load the necessary graphics, after leaving the player from this biome we can unload unnecessary graphics from memory.

    In general, this is a very time-consuming process of planning and implementation, which does not pay off the game experience of the player, it does not give a big boost of player retention.

    It is much more rational to use caves and teleports to jump between layouts.

  • Hi. You don't need to scale the canvas, you need to get the whole UI down under the banner. The banner may not always load, the user experience should not suffer.

  • Ideally use a clean chrome browser and the editor.construct.net link

    But you can in chrome top right click "install as app" button.

  • Hi. There are some examples out there.

    and

    howtoconstructdemos.com/category/isometric

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Hi, show a screenshot of how you are using it.

    It is recommended to use the query together with a trigger (like when you start a layout or click a button) and then wait for it to respond.

    But if you just add this action to the sheet, the query will be executed about 60 times per second and it will be just spam.

    The icon shows that it takes time to execute.

  • You can open the examples that are in Construct3, it's all there.

  • anyone? 4 days have passed and I´m still trying without any luck

    You can get the page address via browser or js tools. But the rest of the question is not clear, if it is a web game, the game page will always have the same address.

  • Here is my script to save and load the game for each player. It works, but I created it a long time ago, maybe there are newer methods.

    <?php

    //

    $mysql_host = "xxxxx";

    $mysql_database = "xxxxx";

    $mysql_user = "xxxxx";

    $mysql_password = "xxxxx";

    //

    $link = mysql_connect($mysql_host, $mysql_user, $mysql_password) or die("Err MySQL" );

    mysql_select_db($mysql_database, $link) or die ('err db');

    //

    Header('Access-Control-Allow-Origin: *');

    Header("Last-Modified: ".gmdate("D, d M Y H:i:s")." GMT");

    Header("Content-Type: text/html; charset=UTF-8");

    $to = $_POST['to'];

    //

    if($to == 'savegame'){

    $id_user = $_POST['id_user']; //

    $gamedata = $_POST['gamedata']; //

    //

    $q1 = mysql_query("SELECT * FROM savegames WHERE id_user='".$id_user."' ORDER BY id_user DESC LIMIT 1");

    if(mysql_num_rows($q1)==0){

    //

    mysql_query("INSERT INTO savegames VALUES (NULL,'".$id_user."','".$gamedata."')");

    } else {

    //

    mysql_query("UPDATE savegames SET gamedata='".$gamedata."' WHERE id_user='".$id_user."'");

    }

    echo 'ok';

    }

    //

    if($to == 'loadgame'){

    $id_user = $_POST['id_user']; //

    //

    $q1 = mysql_query("SELECT * FROM savegames WHERE id_user='".$id_user."' ORDER BY id_user DESC LIMIT 1");

    if(mysql_num_rows($q1)==0){

    //

    echo 'error';

    } else {

    //

    $q2 = mysql_fetch_array($q1);

    echo $q2['gamedata'];

    }

    }