nimos100's Forum Posts

  • You find it for each object. So in your case it would be in your "Place" object under the section Size & Position, its actually a dual function called "Pick nearest/furthest". But the only reason to use it in this example is to avoid picking more than one "Place" in case they are so close to each other that the mouse cursor can overlap more than one "Place" at the time.

  • Audio

    Tag property - Possibility to get the tag of an audio file when its playing, ended etc.

    Any tag ended - Trigger when any audio tag is ended.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • You do not have permission to view this post

  • Hello!

    So the last couple of months I've started programming, mostly in Python. The reason is that I, of course, want to learn programming. But I know that I eventually will start with game developing. I know this is possible to do in Python, via for example Pygame. But what I can read on the internet, using a game engine like construct 2 sounds a little bit more clever. But there are so many engines to choose from like Unity, Unreal Engine, Construct 2, and so on (check for more engines).

    The "problem" is, I want to learn programming and when i read [quote:28ldwe03]You can now make advanced games without writing a line of code. Construct 2 does the hard work so you don't have to.

    at Construct 2's website, I'm not really sure I've come to the right place. But then again I totally understand that Construct 2 does one a favor with these "built-in" functions so you don't have to "hard-code" them, and I dont wanna code "just because". But I still want to learn, so to speak.

    A question about that to, since so many things seems to be already built in, is it hard to combine the game with "functions" outside the game? - let's say I want my potential players to create an account using a website, and that they will have to use the created account to login when they've started the game (.exe). Is this possible?

    What about the graphics in Construct 2? Games come with different styles - from more realistic to more cartoonish, is it possible to get a decent unique style in C2? Or is it like you got 10 styles to choose from?

    Why choose Construct 2 over engines?

    I truly appreciate your answers!

    Stork

    What I understand from what you are saying, is that its not only about making games, but a huge part is also programming. Then I would definitely not go with C2 or Gamemaker etc. because they are highly aimed towards people that are not really interested in programming, but that just want to make games not really caring how the end result is achieved. I have a background in programming (C,C++, C#, Java), but its a long time ago now and my interest in typing code etc have long vanished but the part of creating stuff is still there, so that makes C2 a great tool for me, its fast and easy to use and you get quick results. But C2 have its problems that is annoying and should you want to create you own plugins for it, you might run into problems that you can't solve because its part of C2 and the way that was designed. So even though you can make your own stuff and you would learn from it, I would definitely go with Unity or unreal for several reasons. Its 3D and 2D, its widely used in the industry and should you ever want to work with it, knowing these 2 programs well should make it fairly easy to land a job. Besides that at least for Unity you can learn C# (Think there are other languages as well, but cant remember them) at the same time, and its probably the same for the Unreal engine and also you learn how to work with 3D objects etc. And learning C#, will make it a lot easier to learn other language as well and you get a really good understanding of how a program is built, compared to if you are using C2, I would say. And if you know C# and the concepts of programming then C2 will be very easy to learn and you can always use that later on.

    Best advice I can give you, go with one where you can learn C++, C# at the same time. And then of course get a book or whatever that teaches it, and so you get a good understanding of how to program in these languages, if you understand those, any other language is roughly the same and wont be that hard to learn.

  • Im not really sure you can do a lot in that department to increase performance in C2. There are some project overall settings you can try to change, but would be surprised if it made any huge difference. Do you experience bad performance, since you ask?

  • This is a common picking problem. Whenever you experience something like that, you can in 99.9% cases if not 100% be certain that its due to a picking issue

    In event 9 you are using a "Place" to spawn a plating object, but you haven't picked a "Place". So C2 doesn't know which "Place" you are talking about and therefore it assumes that all "Place" objects are valid and therefore picks all of them.

    If you add the following to event 9 and 10:

    Mouse is over "Place"

    Pick nearest "Place" to Mouse.X and Mouse.Y

    It should solve the problem. However whether that is the best solution im not sure, just an example of how to solve it, with correct picking.

    Also you are using a newly created "Plating" in event 9 to spawn a "Dial Shooter", im pretty sure this is going to cause problems, if it wasn't for the wait. So I I were you I would change it so you are also using the "Place" to spawn the Dialshooter or use the System->Create object instead. The same goes in Event 10 with the "Cancel" that way you can get rid of the "Wait". which is rarely a good idea to use in my opinion if it can be avoided.

  • you can just add an empty space in the url or just write it as normal text

  • try to post your capx

  • Problem Description

    Fade behaviour doesn't respect opacity settings during runtime.

    Attach a Capx

    https://dl.dropboxusercontent.com/u/109921357/Fade%20bug/Fade_and_opacity_bug.capx

    Description of Capx

    Two sprites are placed on top of each other. The one on top have fade behaviour assigned.

    At start of layout opacity for the blue square is set to 50%, but when the fade execute it goes to 100% opacity regardless of this.

    However changing the opacity for the blue square in design mode, will make fade only go to 50% opacity.

    Steps to Reproduce Bug

    Change opacity to either 100% or 50% in design mode run the program.

    Observed Result

    Changing opacity during runtime doesn't work with fade behaviour only if it is done in design mode.

    Expected Result

    That it would be same regardless of where opacity is changed.

    Affected Browsers

    Tested with IE 10 and NW.js and its the same for both.

    Operating System and Service Pack

    Windows 7

    Construct 2 Version ID

    r210

  • of course i can... that was plan "b" if it tuns out that its not my wrongdoing but rather that pathfinding is a bit flawed.

    Pathfinding is unfortunately a bit flawed, try to make sure that your original imagepoint is in the centre. Also try to change the cell size so it matches the size of you object, that might help.

  • Ahh, I am lost.. Will take a break for a bit to rethink again what you are advising.

    So far , I am stuck on 2 things:

    1) Unfortunately, I am not storing X,Y coordinates of TurretBody. At least, I cannot use them since they are in a separate event where another bullet overlaps TilemapBoxEnemy ( i described it earlier)

    It would have been cool to continue this event , since i have all the necessary coordinates of TilemapBoxEnemy and of Turret Body. But I cannot do it cause 2 different bullets cannot overlap an object in the same event. So I started a new event where a new bullet (bullet2Player) overlaps a TilemapBoxEnemy ( A turretBody has been already created so I cannot create it again), and I can store only coordinates of TilemapBoxEnemy. But I understand that without storing of X, Y coordinates of turretBody in this new event , nothing can be done.

    2) For checking if there is a turretBody above TilemapBoxEnemy .etc. should I use Compare two variables?

    If so, the system does not understand this expression.

    For "Else", should I use "System - Else" ?

    1. If you store the TileX,Y coordinates in the objects as variables you can use them wherever you want, its no different than storing something else.

    If I understand you correct regarding two bullets not being able to overlap a TilemapBoxEnemy in the same event, its because you need to add a for each bullet, otherwise C2 wont know that you are talking about individual objects. There should be no issues doing this. But of course you have to make your event able to handle it when designing it.

    2. Yeah if you have stored the TileX, Y its just comparing two variables with each other.

    Here is a simplified version of what I believe you are trying to do:

    The red dot is a bullet, TB is the TurretBody and the cactus is the TilemapBoxEnemy.

    TB are sprite objects just placed on the tilemap. The cactus is on the tilemap it self and the bullet is also just a sprite.

    The text keep track of the bullet Tile X, Y coordinates which I convert from its X,Y coordinates.

    The list is just a log which will give feedback when the bullet hit the Cactus.

    In this example the bullet is just linked to the mouse, but could be a sprite with bullet behaviour if that is what you use. As it moves around the tilemap its X,Y coordinates are converted to TileX, TileY and shown in the text object. So TileX and TileY are just 2 variables that I have added to the bullet sprite.

    The TurretBodies are created at the start of layout and in this case since I know where the cactus is, I just add the predefined numbers to there variables. But would be no different if these where converted based on where the cactus was placed on the tilemap. I just did it this way to keep it simple. But also the TB object have 2 variables added just like the bullet.

    The last part is what checks for collision with the cactus and whether there are any TBs around it. So first I make sure that the bullet is actually overlapping the cactus. If that is the case I check each of the tiles around the bullet since I know at since point that the bullet have hit the cactus. So using the TB TileX and TileY and the bullets TileX and TileY and adding the +-1 to either X or Y I can check if these match any TBs. And then just output the result to the log.

    But if there were more bullets I would just add a "For each Bullet" to the start of the event.

    CapX:

    https://dl.dropboxusercontent.com/u/109921357/Collision%20test%203/Collision_test.capx

  • So, is it possible to identifiy whether TurretBody is present or not around the TilemapBoxEnemy and how do we arrange these conditions?

    If you store the TileX,Y position of TilemapBoxEnemy you can use that to check whether a Turretbody is placed in any of the 4 areas surrounding it if you also store the TileX,Y position for the TurretBody. Then you can just add the position difference to TilemapBoxEnemy TileX,Y position when you need to check it. So:

    Bullet is overlapping TilemapBoxEnemy

    //Check if there is a turretBody above TilemapBoxEnemy

    TurretBody.TileX = TilemapBodyEnemy.TileX

    TurretBody.TileY = TilemapBodyEnemy.TileY - 1

    ELSE

    (There are no TurretBody at that position)

    //Check if there is a turretBody below TilemapBoxEnemy

    TurretBody.TileX = TilemapBodyEnemy.TileX

    TurretBody.TileY = TilemapBodyEnemy.TileY + 1

    ELSE

    (There are no TurretBody at that position)

    ...

    ..

    .

    (And the same with left and right side, just adding +/- 1 to X instead.)

    If any TurretBody have these TileX,Y coordinate then you know there is a TurretBody.

    So when you create TilemapBoxEnemy and TurretBody you store there TileX and TileY position in two variables in the object itself and then you can just use these for checking.

  • Not sure why you'd need it, but wouldn't skipping the frame have the same visual effect?

    Think it would be useful to be able to delete frames. Imagine that you only need an image a few times being able to remove it, so it doesn't use memory would be a addition I think. In general any functionality that allow you to reduce the amount of memory used would be good.

  • hi,

    since scirra don't do anything about a fine export to android ! (crosswalk really slow and in the cocoonjs we can't make are own plugin like i need to make IAP for another market or ...)

    i saw the c2 project files and i can make a compiler which get c2 project file and make a unity package so you can change your game in unity and add other assets and stuf ! (so you can make a unity game but with c2 ! )

    but i want to know how many developer like to buy it ? (i will get money for each compile) i want to sure about that first because it will get so much of my time so if you want it post in this forum and say how many game you export each month (its not free and its online and i get money for each export to avoid cracking ! )

    and i want to know scirra fine with it ?

    Sounds like an interesting idea. But not really sure I understand what you want to do? You want to make it so a C2 project can be exported and use the Unity engine? or do you mean that you can create a project in C2 export it and then the changes are updated in Unity? And do you mean just the 2D part of Unity or also the 3D part?

    Have you made a prototype of something that shows how it would work or maybe a feature list of what the final project will result in and what you believe is possible and not? Because I think you will have a hard time getting any useful feedback from C2 users about how many exports etc they expect each month, if they are not really sure what the exporter is capable of and can be used for. For me the 3D part of Unity is what interest me, rest of Unity im not that fond of, as it seems a bit messy to work with and to much coding for my taste, that's what I like about C2 you can work very fast in it, which is important when you are working alone on something.

  • Yes, I previously did all three parts separately.

    The problem is that I am losing X, Y coordinates in 39 and 40 and I cannot find something to rely upon. A collision of turretBody and a bullet in 40 does not help to define old tilemap coordinates since turretBody is un objet (not tilemap). In 39, I should define again coordinates of the TilemapBoxEnemy after the objet TurretBody is created in the event #37.

    Moreover, in 39 I got a problem with priority of events. I need to make it trigger only if TurretBody (Important: TurretBody from event #37 only) is not destroyed. If TurretBody (from event #37) is destroyed, 39 event is deactivated for TilemapBoxEnemy (in X,Y coordinates of event #37).

    Im not sure what you mean, I don't see any turretBody in #37 that checks whether its destroyed or not, you mean turretUp? But you create a turretBody in #38.

    Its not easy for me to even understand what the code is suppose to do, so this might be wrong. But it seems to me that you rely on or try to use data that you can't really be sure is correct or not. Meaning that you set GetTileX and GetTileY in 37. So if you need to use these coordinates in another event, you shouldn't rely on the data from this one, unless you are 100% sure that they are correct. So if turretBody is created in #38 based on the condition in #37 that "Bullet is overlapping TilemapTurretUp" and then in #40 "TurretBody on collision with bullet2Player" is using the GetTileX and GetTileY in #37 how can you be sure that these are correct? or are there only 1 bullet, turretBody and TilemapTurretUp on the screen at a given time?

    If you need something like GetTileX and GetTileY in an event like #40 you should store them in the object it self. In your case turretBody when it is created and only use this when you need to get the tile X and tile y position for that object. Otherwise I think you will end up loosing track of what GetTileX and GetTileY is when you need them.

    But as I said im not even sure what exactly you are trying to do. Maybe show some screenshots of what is suppose to happen. But at least to me it seems like you are mixing a lot of objects together without really knowing whether its the correct objects or not or the correct data you are using. How is C2 going to know which turretBody you are referring to in #40 with the GetTileX and GetTileY position you have stored in #37 that rely on a bullet is overlapping a TilemapTurretUp?. If there are only 1 bullet in your game its probably ok, but if there are several bullets GetTileX and GetTileY will constantly be overwritten causing you to not know what is stored in them when you need them.

    Also in #40 you are destroying a Turret object that you haven't picked in the event, if that event is ever true all Turret objects in the game will be destroyed.

    Whenever you work with an object in an event, unless there are only 1 of them. You always have to pick them or things wont work.

    The way I make my events if they are confusing, is to write down each step that I want to happen in them and make each part, that way its very easy to maintain an overview, for instant.

    ///

    A turret consist of 2 parts and if both parts are destroyed the whole turret should be removed. If only 1 part is damage, that part should be replaced with a damaged part until repaired or the other part is destroyed as well.

    1. Bullet hit Bottom part of turret

    Deal damage to turret

    2. Check if Bottom part is destroyed

    3. Check if Top part is destroyed

    3a. If top part is also destroyed, destroy whole turret.

    3b. top part is not destroyed, replace bottom part with a damaged part.

    So based on this example I know there are 3 objects involved (Bullet, Top part of turret and Bottom part of turret) so i have to pick all 3 parts to complete the event. And normally I do all picking as early as possible, because then you know you have the stuff you need to complete the event.