Jase00's Forum Posts

  • Lol seeing all your edits reminded me of what I went through. It's such a headache to test isn't it?

    You're right about the debugger - this whole issue relates to popup windows, but sometimes I've used C3 in NWJS for long periods of time, and I preview in popup windows, and I always use popup windows to drag onto a dual-monitor, so all is well and stable for hours... Until I use the debugger and it just nukes C3 and you have to delete appdata yet again, login, install plugins, set your c3 settings again, change your theme (which requires restarting C3), etc. And then you find that when setting everything up, it might corrupt your appdata AGAIN, so you end up running in circles, deleting appdata again, login, avoid something like installing plugins, set your c3 settings, preview a blank project, then it may/may not corrupt your appdata folder again...

    My suggestion to you: I hated the risk of losing unsaved work, so I've now moved to using C3 in Chrome, but using the Remote Preview Tool to preview in NWJS. All you do is use remote preview in C3, copy the URL, open the Remote Preview Tool, paste the URL into this tool, and voila, you're testing in NWJS as simple as that. Each time I preview my project, I click "remote preview" and then I click "reload all" on the little remote preview popup in C3. Quite good!

    However, one issue that I haven't found an answer to: I don't think you can use the debugger for remote previews, which is such a major loss, so currently I workaround this by having to use a spritefont that appends whatever info I want to debug. It's good enough, takes a bit more time though, but you can't use all the other useful features from the debugger, such as viewing the event sheet CPU usage.

    Regarding C3 in NWJS, I've tested this on a fresh new VM with Windows 10, and the issue persists, so right now, I'd strongly urge everyone to avoid using C3 in NWJS, even from the official source or the third party launcher (which I always used and really adore!) but for now, you will run the risk of C3 suddenly closing with no error, possibly lose unsaved work, and then you need the computer knowledge to find your appdata folder and delete the right folder and waste time setting up C3 again, with the chance that you might need to repeat this process multiple times to get it working again.

  • Yeah I wonder about whether to post very minor quality of life ideas to the suggestion website, like the other thread that's ongoing:

    construct.net/en/forum/construct-3/general-discussion-7/please-return-debug-button-16480

    Understandably, some minor suggestions might be way more complicated, like maybe it's a massive pain to make alignment work correctly for function parameters, maybe it has a knock-on effect to other UI code, but yeah I do appreciate these kinds of updates too!

  • I do agree with this, same with the "remote preview" button, which, I use 100% of the time, as I use C3 in Chrome, but need to always test with NWJS.

    But then furthermore with remote preview, if you use this, then you know you need to click "reload" on the remote preview window each time you preview. Would be cool if there was a tick-box setting that you could tick to "auto-reload all remote devices when clicking preview", because then I'd literally be able to minimise the remote preview window and never need to interact with it. It'd make the chrome + NWJS combination work almost perfectly (the only missing thing would be, how do you get debug on a remote preview?)

    I'm a fan of saving those repetitive few clicks, especially when it's something you commonly need to do!

  • Ayy,

    I'm also working a NWJS-heavy project - I have lost bits of work thanks to the NWJS version randomly crashing when new Windows popup (especially the debugger).

    I've found the best setup is to use Chrome, then use the "remote preview tool" found in the link below this paragraph, and then you simply use C3 in Chrome, but whenever you want to preview, you can do a Remote Preview, paste the remote URL into the remote preview tool, and then away you go - full NWJS functionality when previewing you project, and the editor remains in Chrome which is extremely stable compared to having the editor in NWJS.

    construct.net/en/forum/construct-3/general-discussion-7/construct-nw-js-desktop-app-131317

    The only downside I've been meaning to ask about is - how do I use the debugger in "remote preview" , so that I debug my NWJS project.

  • I'd say one helpful thing is to understand a few fundamentals in Construct 3, and I'm not talking about the typical "add the platform behaviour and you're done" kind of basics.

    My suggestion, is to get VERY familiar with some common objects, such as:

    Arrays

    Dictionarys

    9-patch (useful for HUD elements, things like square windows, or when a highlight box appears if you wanted to click and drag to highlight units on an RTS game)

    And familiarise yourself with concepts in the event sheet view, such as:

    For loops

    For Each loops

    Expression

    Sub-Events

    Object Picking

    Without writing about literally everything in Construct, I'll go on about Arrays and Dictionaries for an inventory system.

    Before reading the below, if you don't know what arrays and dictionarys are, I'd suggest reading the documentation on Construct 3's website about these two objects first.

    So, Arrays are an amazing way to setup some data that you can read or write to - it would be good for storing the information for an inventory system, as you can have your array grown and shrink depending on what items are picked up ingame, or if an item is used. Arrays can be setup to store information about each inventory slot such as "quantity" and "damage", and you can then design your events so that when you "use" an item, it doesn't just delete the item from the array, but it would first check the quantity, subtract from it, and if the quantity was only "1", THEN it can delete the entry from the array.

    The above is a random thought idea for designing an inventory system - you could design an inventory system with a Dictionary object instead, but you may find there are pros and cons to whatever choice you make. Dictionary objects are kinda similar to arrays, but they are maybe "easier" to use, but come at a possible performance cost if you add thousands of items, or there may be a "management" cost if you wanted to be able to store lots of details about each item slot (an array you could simply "delete" the item slot in 1 event - but with a dictionary, you would need to loop through every key and find anything related to the item slot, e.g. If you named all your item slot dictionary keys like "slot0_Name", "slot0_Quantity").

    As you're new, I'd say try and familiarise yourself first with the concepts I listed at the start of this post, don't worry so much about performance right away, but worry about getting things to WORK correctly. Once you're more aware and feeling more confident, then you can start thinking more about performance, which is another entire thought process, this comes from lots of reading and experimenting, for example, you'll come to find that "collisions" are quite expensive for the CPU, so you will want to design your events to not check for collisions every moment, but instead try and hide the collision checks away in sub-events and make sure other easier checks are done first, or maybe disabling collisions for objects that don't need checking at the time, etc.

    And honestly, in general, keep reading the documentation often, Scirra have done a great job at writing everything down about literally everything within construct 3, like last year I was casually reading about the "Touch" object, and I found out randomly by reading on the documentation that there is support for "pen sensitivity" - how cool is that!? It works with my Note 9 S-Pen. Nobody ever really talks about that on the forums, but it's really useful to know what capabilities Construct 3 has. Scirra have also written some tips and useful info on pretty much every page on the documentation, sometimes they write warnings like "try not to use this object for blah blah, instead, use blah blah" it's super useful stuff!

    ALSO I'd suggest googling small questions you have, followed by "Construct 3". Such as "is it better to use array or dictionary construct 3". By doing a search like this, you might find older posts with people discussing these concepts indepth, and you might find a useful piece of info or two! Be aware of the date of the forum post though, as it might be a really old post and may be irrelevant these days.

    You could find tutorials that provide the c3p file on the specific questions that you asked, such as "how do I make a inventory system?", then you could open these up and try to read the events (hopefully there are comments in the events too!), and if unsure about an event, you could poke around the event, change a variable or disable an event or action, to see what it changes - once something breaks, you'll realise "ohh that one event was to prevent blah blah from happening" or "oh this event completely breaks the inventory, so it must be important". If you get completely stuck on what something is, you can always post on these forums and see what the community thinks!

    Hope this is useful in some way!

  • I think the effort and love put into the 3D stuff is amazing and I think it's turning out to be a really great feature - the tutorials and math explanations and everything is extremely interesting and I can't wait to set aside some time to experiment with it all - I did originally think similar to Ribis with the whole "seeing updates and it's more 3D" but now that it's clarified that Construct 3 will still primarily be a 2D engine, I'm glad!

    Oh yeah, like the mesh stuff, layout editor stuff, 3D, none of that is high priority to me personally, sure - but it doesn't matter that I think that way, or if anyone else thinks "3D is top priority" or whatever - it indeed is what the suggestions platform is for. I should get voting!

  • Where Ribis says they would like more focus on the layout editor, that's something that many people would agree or disagree. I'd disagree myself, I'd focus on more additions to event sheet view. But yes, loud and clear, you cannot please everyone, totally fair enough really.

    It's nice that 3D won't be the focus imo, but it's also sort of confusing. What if people subscribe for the 3D features and find that they remain primitive and will not be expanded on? I mean I guess they can unsubscribe , but I guess I'm missing the point.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • I do empathise with both Scirra and Ribis. On one hand, 3D is cool and always been a repeated request!

    But a few things I've been thinking lately :

    Scirra always said they're aiming to make the best 2D game creator, is their goal also to do 3D now, or just "simple" 3D is the limit?

    I thought this would be simple 3D at the start, for like background effects and such, but then the 3D camera object appeared, seems like its been focused on quite a bit!

    If this 3D stuff attracts new customers, what happens if their voices are louder than the people that use C3 for 2D? Will we just see updates mainly for 3D and occasional side things for 2D just because that's what people are loud about?

    If being loud and having many people ask for something is a way to get something implemented, then why isn't "native" ever considered, or console exports similar to chowdren being developed in house by Scirra? If its because Scirra is a small team, then why did Scirra take on 3D suddenly? (Note: I don't mind about native or game consoles currently, but it's a very common request from everyone else).

    Also, it's hard to retroactively use 3D stuff in current projects, I could use it for backgrounds or effects, but I see people making FPS demos and stuff, it's like a whole new genre that Scirra kinda has to support.

    Usually something so big would be left for third party plugins, and there are a few 3D third party plugins for C2 and C3 (granted that Scirra supporting 3D gives third party devs more functionality to implement their 3D third party plugin). On top of this, I hope we don't get told "you must use 3rd party plugins to be able to import 3D objects" or something, because if the dev moves on from their plugin, Scirra won't be able to help out with any game-breaking issues that might appear in future C3 updates.

  • Do you access Construct 3 in Chrome? What is the website you see in the address bar when you have Construct 3 open?

  • Yeah, that's what Remote Preview for NW.js is for.

    Ah amazing, thank you! I should have read that entire thread, I assumed it was all about using C3 in NWJS rather than having only the preview in NWJS.

    I'll try it out later!

  • Ayy,

    I have a Nwjs-heavy project, and I have been using the NWJS C3 to work on my project, which has been working very well for me, but I'm getting very unpredictable crashes as of recent months.

    The crashes cause C3 to never open again in NWJS (c3 silently closes on startup) until I delete construct3 in the appdata folder to repair it, causing me to need to install plugins again, login again, only to have the crash happen again randomly (sometimes the crash happens immediately again after clearing my appdata and logging back in, even without third party plugins installed).

    The crashes occur when a popup window is created, whether it is within the project (e.g. Popup the "Find" bar) or when clicking preview. The crash is a silent crash that just closes all of NWJS without giving me a chance to save. I don't have enough info for a bug report, and I also don't know if Scirra would be able to do much about nwjs specific issues. As you can imagine, it's really frustrating to use NWJS in this manner.

    Sooo, as Scirra intends C3 to be used in Chrome, and I do not get this crash in chrome, I was thinking, is there a way to load remote preview URL in NWJS? So then I can use C3 in Chrome, but test the project in NWJS.

    I understand that I'd need to update the package.nw with the newly generated remote URL each time I use Construct 3, but that's absolutely fine by me. I just want stability and no silent crashes.

    I tried installing nwjs, taking a package.nw from an exported project, editing the package.nw to point to the remote preview URL, and the ran nwjs, and it loads up the "loading remote preview" window and Construct 3 seems to detect this, but once it fully loads the remote URL, nwjs goes to a black screen.

    Any hints or tips on what to do would be greatly appreciated!!

  • Lol 6+ years ago I joined a college (in Epsom, UK) for game design, and it had Construct 2 as its main software to use. It was great, I was already an avid user of c2 and had projects to show off already 😎

    Then I dropped out of college opps

  • Sure!

    I choose Construct 3 because:

    The event sheet editor

    Lol there's other reasons too but it could be argued that Gdevelop have similar aspects.

    I like how close Scirra interacts with the community and I do think they are very passionate and knowledgeable.

    I like the multiplayer plugin, which for some reason gets a lot of hate, but it works extremely well and easy to use.

    I like the way construct 3 feels UI-wise and the structure.

    Performance comparisons would be interesting, but I wouldn't have expected too much difference between construct 3 and gdevelop, maybe in certain areas but there'd be a more dramatic different when comparing one of these engines to something else. Scirra have had an opportunity to reinvent their runtime engine after making construct 2, so I assume they have designed construct 3 with performance and efficiency as top priority.

  • On a slightly related topic - Howcome it's rare to see Construct mentioned on reddit in /r/gamedev?

    I always see godot mentioned, gamemaker occasionally, but construct is rarely mentioned. When it is mentioned, its usually someone asking "what engine should I use? Unity, gamemaker, godot, construct?" and noone ever offers an opinion about Construct.

    I don't often see clickteam fusion mentioned nor gdevelop either.

    I wonder about this, especially considering the recent blog post about performance between gamemaker vs construct 3, which made gamemaker look a lot more antiquated compared to the modern construct 3.

  • To be honest, I check out Gdevelop every now and then, and the same opinion pops up in my mind each time I give it a try:

    Clunky/Busy UI - too many options displayed when you're creating events and such, just feels a bit too all over the place. Maybe it's a learning curve thing.

    The other thing - I always try to add a text object to set it to the current FPS. In construct, you'd simply add a text object, and then the action "set text to: fps", done.

    In gdevelop, I never figured out how to find the equivalent of "fps" in expressions - maybe I'm an idiot but it seemed so intuitive to find within construct (construct had all math/system/time related things in the "System" object).