imhotep22's Forum Posts

  • The condition is always true and it goes into a never ending loop, make it as a function and call the function every 1 sec or something like that.

  • There are system expressions called ImageWidth and ImageHeight you can use those to get the original size of the image, not the total sized of the tile, changing those will change the original image size.

    I am not sure if this will improve the quality of the image, but it will change its size. Tiled backgrounds are very simple and they don't offer many options as sprites do, for performance reasons.

  • I used on start of layout -> Mouse -> set cursor from sprite on my games and it works fine, you probably done something wrong.

    But yeah you can also use set cursor style if it suits your need's.

  • Yes you can its easy to do so.

    on start of layout -> Mouse -> set cursor from sprite.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • The custom movement can maybe be the problem then, you can do a quick test disable the behavior and all the events and run the game and compare the results.

  • When the random word is generated keep it in an array, then when the next generated word is created compare the string with the array values if they are equal recall the random generation function.

  • The collision checks are okay, the image size is also fine.

    But you are engine and draws calls are really high in CPU using, and that's just CPU alone if we take the GPU into account it will be probably even worse. I did a comparison with the games worked on and made, and all of them take around 1% for draw calls and between 0.5-1% engine.

    Your problem can be caused by those two, high draw calls means the engine is trying to render a lot of spires at once, and if those images are also animation that can cause even further problems. You can improve this by reducing the resolution size of the game so less objects can be viewed at once, also if you spawn new objects on the layout while the game is running or using particle effects try to minimize that, instead of creating the objects on layout create them while its loading and then teleport them where they need to be.

    On the second picture you showed where the player is moving they are two event groups that take 14% of CPU power, which ones are those, I was unable to identify them from the picture? You can also try to tweak those because 2x14 is around 28% usage which is high.

    And now for the engine usage, the engine usage in the debugger is only for the behavior and some other c2 stuff, which means if you have high usage is probably caused by same behavior, I don't know which one, but some of the is using a lot of CPU, you will have to figure that out, make a back up copy of the game and start deleting the behaviors and see which one improves the performance.

  • How many animated objects you have? and how many times per tick they animate? Also if you have images larger then 300x300 px try to reduce their size, in the debugger how much % goes on draw calls?

    You know just make some screenshots (the system, cpu and ram usage) in debug and post them here, so we can have a look, like this I can only guess.

  • You are doing something wrong and that's a fact. I've recently published a game( which you can check on the arcade) and its only using 15mb ram and 5-10% CPU usage.

    Its not the engine fault or rending fault. Slow FPS can be tracked in the logic or the graphics of the game. If the images/spires ware to big then the ram usage would be huge, 2000x2000x single image spire takes 16mb of ram. If your cpu usage Is high and ram usage is low it means that your logic is flawed, it can be caused by lot of collision check, to many physics calculations, to many enemies/players with light of sight or patch finding behavior, or to many loops in the events etc.

    What's the best solution? Learn how to use the debug more and check where the cpu usage is going, the debug shows every event and how much CPU they are using, I've seen lots of big games made with construct like whole RPG's with lots of elements and stuff and they did not lag at all, and besides if you don't learn how to optimize your games no one will do it for you, the machines are not perfect you can make a game with 2 sprites and have it lag on the best computers out there if the optimization is bad.

  • You can have a function called shoot, and on it copy paste the spawn bullet action like 3-5 times, this will make the gun to shot 3-5 bullet at once, you can also set them at different image points so it will look like shotgun.

    Then you just need to restrict the function to be used only on power up pickup with a variable, lets say when you pick up the variable you set variable called power_up to 1, and then in the function add another condition power_up == 1.

  • You do not have permission to view this post

  • Is there an easy way, the answer is No.

    But you can copy paste events if you have the same objects with same names in both files, otherwise it wont work.

  • Have you tried using OriginalWindowWidth and OriginalWindowHeight?

    It would look something like this sprite -> set position -> x= OriginalWindowWidth y= OriginalWindowHeight.

  • Oh yeah I forgot about that, well you can limit it with a variable then. Add global variable lets say its called temp set it to 0 on start, and add extra condition on the event temp == 0, then as soon as the trigger fires in the first action set temp to 1, so its only triggered once.

  • If only the effect is a problem you can add another condition to the event trigger once when true and it will only spawn once.

    But this can get complicated for example if you have 3 buttons and 3 doors in a level, you will need to keep instance variable for each button with different value so you will know what button is pressed.