nimos100's Recent Forum Activity

  • nimos100 I added it in the orginal post.

    Initially its seems fine, however there is a lot of waits in it which could be the problem. Also in dialog1 when you set it to dialog = 2 and enable dialog2 group, in that group you have a "If dialog = 2" then it should do a lot of things. But where do you change dialog to not be = 2? because otherwise it will keep being true and that seems like it could cause problems.

    But can you upload a capx, might be easier to test?

  • Might be a good idea to show dialog2 as well. If that's the one not working.

  • i have one question now

    local storage saves variables in devices or PC

    but

    Is save & load, save data on devices too??

    Yes

    actually i have made a levels game

    and now i have no idea how to save

    i should just use save & load or should use local variable

    You have to decide when its worth saving. You are getting a bit confused about how to use it correctly it seems from your screenshot.

    Here is an example of how to set it up, this is what the program looks like:

    And this is the code:

    The way the program works is that if you click the button "Check if key "Test" exists it will check if a key named "Test" is currently stored in the local storage. This is code (2) in the screenshot.

    If a key named "Test" doesn't exists it will create a key called "Test" and set its value to "Test now have a value" also it will write in the list "Key missing", this is code (3) in the example and will look like this:

    If you click the button "Check if key "Test" exists" once more. The key now exists, so its no longer missing. So it will now instead use code (4) and write to the list "Key Test exists" and it will now look like this:

    Clicking the button "Load content of key "Test"" will get the value from the local storage, which I put to "Test now have a value". This is code (5). When the data have been loaded code (6) will be executed as well. And will look like this:

    The reason for code (1) and to clear the storage on start of layout. This is simply for testing purposes as the key "Test" will still be in the storage even if you restart the application. So if you want to keep the value of "Test" in the storage, you have to remove code (1).

    Using local storage for saving a few variables or part of you games progress is good. However as I mentioned it not very good if you want to save the complete state of your game. Because you will have to store a lot of variables.

    So before you start creating a save/load system you need to decide where it make sense to save and where it doesn't. For instant in your example it seems like you want to save every time the player picks up a coin. But wouldn't it be better to just save between maps and just use the Save/Load function instead?

  • but still there are a lot of things that i have still did't get

    .

    now i in saving game progress

    no tutorials is helping me to understand it

    .

    there is save & load, local storage, web storage

    but i am not getting it

    .

    i don't know how much time it will take

    .

    .

    Thanks to all members who answered my questions

    Language will always be a barrier when learning.

    Saving stuff in C2 can be a little confusing if you are a non-programmer. Here is a quick explanation of each:

    Save & Load - Will save the current state of the game, meaning everything in the game is saved. This is very good if you want to make a normal save/load game functionality in a game. Because you don't have to specify what stuff should be saved or not. Because everything is saved. You can use the "No save" behaviour on individual objects if there is something that you don't want to be saved.

    https://www.scirra.com/tutorials/526/how-to-make-savegames Here is a very simple example of how to set up a Save & load functionality.

    Local storage - As far as I remember this and the webstorage was the only way to locally save your game, before the Save & load functionality was added. But local storage can be useful if you just want to store a few pieces of data locally on your computer, such as a high score etc. So you save a part of the game progress. It is not good for making a full save/load functionality, as you would have to save each individually thing in your game. The reason its called local storage is that its stored locally on your computer/phone etc and is not shared between the browsers. Also there is a limit to how much you can store, the manual state that this is at least 50 mb depending on the browser used.

    Web storage - This is according to the manual deprecated in favour of the local storage plugin above. So best thing you can do is to ignore this one and just use local storage if you need to save a few number of data. The chances that you really need this is fairly low and will most likely be obvious if you run into a situation where this is the only way to do something. But as again its very unlikely to happen.

    This explanation is of course simplified on purpose. But hopefully it gives you an idea when to use one over the other and what you can expect from each of them.

    The best thing you can do, is just try to set up something very simple for each of them and see how they works in my opinion.

  • nimos100 For what I understood both of these methods would only apply if I wanted to spawn the item on top of the rainbow only once, isn't it?

    I don't know how I could store the UID for each rainbow on a regular interval of 10 rainbows created or 10 seconds passed.

    And I also couldn't figure out how I could set "Rainbow.last_created = false" to all other rainbows...

    I sense that it's pretty simple and its me that just can't understand much you meant... And I'm sorry for that. But I guess I'll figure it out soon. Everyday I'm learning more. Specially with you guys.

    Thank you again!

    The method will allow you to work with the last created rainbow until another is created. So in the case that you for instant wanted to spawn something on that rainbow as you said. But also if you wanted to for instant make a rainbow slowly rotate etc. So basically it will just allow you to apply whatever settings to a rainbow as long as its the last created one.

    Its sounds to me like you are a bit uncertain about how picking works?

    When you create an object (Rainbow):

    Create Rainbow
    [/code:2h16dx1w]
    
    All actions beneath this in the same scope or any sub level will apply to the created Rainbow. So here is an quick overview of how actions work depending on where they are placed in relation to the "Create object":
    
    [code:2h16dx1w]
    <All actions here will apply to all rainbows, because you haven't picked any specific rainbow yet>
    Create Rainbow 
    <All actions here will apply to the last created rainbow>
    ---> (Sub level)
    ---> <All actions here will also apply to the last created rainbow>
    [/code:2h16dx1w] 
    
    So to set all "Rainbow.last_created = false" first you of course would have to create the variable in the rainbow object. Then add the "Set Rainbow.last_created = false" before the create Rainbow, because you want it to apply to all Rainbows and not only the last one created.
    
    But anyway if Asmodean solution does what you need, then its of course good. But in general picking objects can be quite confusing at first and not uncommon that it causes a lot of problems for people starting to learn C2. Despite it seems simple, its crucial that the rules for picking are done correctly, otherwise it can results in a lot of weird problems.
  • I would be really glad if you or anyone could point me to the right direction here. Maybe picking the last created platform just isnt the right method. And thanks for already try to help me Asmodean

    The easiest way to do this is to use the UID or a Boolean "Last_created" variable I think. Since you always know that when you create a rainbow it must logically also be the last one created, which means that you already know which rainbow this is. So when you create a rainbow:

    Create Rainbow[/code:3nfu36u6]
    
    You just have to store the UID of it in a variable or you can use a Boolean that keep track of it:
    
    [code:3nfu36u6]
    Create Rainbow
    Set Rainbow.Last_created = true
    [/code:3nfu36u6]
    
    However to make sure that only the last created rainbow is marked as being the last you need to make sure that all other rainbows "last_created" variable is set to false:
    
    [code:3nfu36u6]
    Set Rainbow.last_created = false
    Create Rainbow
    Set Rainbow.Last_created = true
    [/code:3nfu36u6]
    
    That should solve the problem, however you might have to put the "Rainbow.last_created = false" in its own event or function before creating the new one. But im pretty sure that it will work fine without it, and that the "Create" action will automatically pick the correct one for you. 
    
    When you need to work with the last created rainbow you simply use:
    
    [code:3nfu36u6]
    Pick Rainbow.Last_created = true
    [/code:3nfu36u6]
    
    That should only pick the last one that was created. If you want to use the UID instead you simply make a Global variable called "Last_created_Rainbow_UID" and here you store the UID of the Rainbow:
    
    [code:3nfu36u6]
    Create Rainbow
    Set Last_created_Rainbow_UID = Rainbow.UID
    [/code:3nfu36u6]
    
    To select it:
    [code:3nfu36u6]
    Pick Rainbow.UID = Last_created_Rainbow_UID
    [/code:3nfu36u6]
    
    You only need one of the method not both. Personally I would prefer the UID way, since its unique and no matter what you can only pick one rainbow, so chance of making error is very low.
  • Form objects

    On focus - When a form control gets focus this will trigger true.

    On focus lost - When a form control looses focus this will trigger true.

    Has focus - When a form control has focus this will trigger true.

    This is inspired by a 3rd party plugin capable of doing this, so thought it would be good to add so its part of the standard form controls, since its possible.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • If I understand you correct, you can just do as you have done in the last example:

    Mouse on Left click ballon -> Ballon.destroy

    If you need to make it choose between several things:

    Mouse on Left click ballon -> Choose(function.Destroyballon (Ballon.uid), function.ChangeColor(Ballon.uid)....etc)

  • DragDrop behaviour

    Axes angle constrain

    The option to choose to constrain the axes to the angle of the object using the dragdrop behaviour. At the moment if you have a sprite and you apply the dragdrop behaviour and want it to only allow dragging along the length of the sprite you can change it to horizontal. But the moment you change the angle of the sprite the constrain doesn't follow along. So being able to change the axes constrain so it always follow the angle of the parent would be very useful.

  • Cool, thanks, my main concern is hitting a wall with something I cannot implement because of lack of understanding.

    If anything at least I would be able to make a good demo to use as example.

    If anyone else has more to add, please do!

    You will most likely hit a wall, think everyone does at some point, but people on the forum is pretty good at helping out with stuff like that, so probably someone will be able to explain it to you or show you how to do it, so wouldn't worry to much about that.

  • Hi everyone, I am a digital artist, been working on AAA games for almost 10 years now, but now I want to start doing my own things, and what better way than to make a super polished pixel art platformer inspired by the game that made me want to join a career in video games.

    The dilemma being that I have a very artistic brain and no matter how much you explain coding and scripting to me, I will never get it, so I decided to use a simple ready editor. I gave a shot at first with fusion 2.5, but I could not get very far, so a colleague suggested construct 2 and I am finding it a lot easier but I have reached the limit on what the free version can offer in terms of events and later numbers.

    Before I commit to a purchase i want to check your honest opinions on a few things.

    1. I noticed most of the stuff runs in web browser, likewise can only export to web, which worries me because it limits my future publishing options. Can project be easily exported as PC executables or compatible for hand held or consoles?

    2. If the engine code is written in Java, a language even I know as a non-coder to be horribly sluggish and full of issues, doesn't that mean any game I make will have serious performance issues? Especially because I love to do massive levels and lots of parallax, like 10+ layers or so.

    3. I am trying to create a metroidvania, so think of all the stuff a game like that needs, like save States, huge maps, rpg features and the likes, so can all this be achieved with c2?

    4. If you could suggest another engine for someone like me with my game needs, what should it be?

    Thanks a lot!

    Think Refeuh answered your questions quite good. Just want to add, that since you say you are an artist and have problems understanding programming and you have already reached the limits in the free edition. You should by now have an ok understanding on how C2 works and how to make it do different things. So if you find that to be easy enough to understand, my guess is that C2 is probably a good program for you to use. Because even though its as Refeuh say you still have to understand the logic of programming, the way of coding is a lot more visual than one where you have to type everything in as text.

  • Problem Description

    Not really sure this is a bug or not, but its definitely inconvenient and think it might be a good idea to fix it in C2 to avoid problems for people using C2 programs.

    When using NW.js to create folders will in some cases make it impossible to delete them again using standard windows operations. Which means that any normal user of window risk having serious problems getting rid of these folders again. Not even with a 3rd party deleting tools can you remove them.

    The problem occurs as you create the folder and leave a blank space at the end of the folder name. "Test folder ", which will make the folder be created so it looks correct. However for some reason this cause serious problems for windows, which will make it not able to delete or rename it.

    The only way to delete the folder, that I have find out, is to do it through the command prompt. Which is not something normal users of windows will be able to just figure out.

    To delete the folder you have to write the following in the command prompt:

    rd /s "\\?\C:\Users\Nimos\Test folder " <- (And remember the empty space after Test folder)

    So would strongly suggest that NW.js automatically fix or give an error if an empty space is the last character in the folder name when creating one in C2.

    Attach a Capx

    https://dl.dropboxusercontent.com/u/109921357/Folder%20deleting%20bug/Folder%20deleting%20bug.capx

    Description of Capx

    Just a button that create a folder in Users called Test folder

    Steps to Reproduce Bug

    1. Click the button to create the folder.

    2. Browse to your users folder and try to delete it.

    Observed Result

    When trying to delete it. You will get an error saying that the folder doesn't exist in the current path anymore and therefore it cant be deleted.

    Expected Result

    That the folder was deleted.

    Affected Browsers

    Affects Windows

    Operating System and Service Pack

    Windows 7

    Construct 2 Version ID

    212.2, but is related to NW.js and how folders are created.

nimos100's avatar

nimos100

Member since 23 Sep, 2012

None one is following nimos100 yet!

Trophy Case

  • 12-Year Club
  • Coach One of your tutorials has over 1,000 readers
  • Educator One of your tutorials has over 10,000 readers
  • RTFM Read the fabulous manual
  • Email Verified

Progress

16/44
How to earn trophies