Jase00's Forum Posts

  • If there was 1 thing I could change, I think it would be some new idea to sorta have Scirra interact with the community in terms of suggestions.

    Like perhaps every month or so, Scirra could run a poll for subscribers, where there's maybe 2,3,or 4 features within the poll, and we can vote on what we wish to see next. How these are chosen, I'm not sure, maybe highly voted ideas from suggestions platform that are rather lengthy to develop.

    This would both give Scirra the choice to pick whatever they are happy with developing, and also gives the community a sense of influence over what will come next.

    Could stick the poll directly into the start page of C3!

    I am a fan of all the unexpected new features that appear, but would definitely feel cool if we can sorta influence C3 regularly, especially since we pay regularly.

  • I suppose look at local storage as something to use very rarely, like you don't wanna be reading or writing to it as actual game data that you're dealing with, and instead use it strictly to store stuff for future/load on startup.

    Save array AsJson to local storage when saving is needed, then when loading is needed, load into array from your local storage, then do all your data stuff with the array.

  • Try removing the "trigger once" from everywhere, I have feeling that might cause the issue, although it is unusual that this system works in Firefox but not elsewhere.

    When you call the function, it will trigger once anyway. Make sure not to call the functions too often otherwise yeah, it'll struggle.

    The "sort scores" might end up running every tick, but then could put this under some other event, maybe even a global variable boolean called "IsSorted" that you set to true once the sort has been called, then you can check "IsSorted = false, then call sort function".

    More or less, the "trigger once" works by checking other conditions above this within the same event block (which in your case, there are no extra conditions with the trigger once, meaning, it will trigger, then NEVER trigger again no matter what).

    You should try to be careful, your posts are kinda spammy. Try posting more meaningful topics and replies. There's lots of people here that are really passionate and will talk and assist and such!

  • That's a simple example but anything becomes bit more trickier when scale is involved. Would there be 10s,100s, or 1000s of characters? Are these AI bots or online players and 1 local player? If just 10 players or so and not much other intense collision stuff going on elsewhere in the game, then tbh it's really not gonna impact too much with basic collision system in events, but assuming scaling up means 100s of characters, then splitting up collisions and picking and such would be beneficial, although this could impact a local player so could always check for their collisions very often, but if its online players or bots, then shouldn't really be that impactful.

    I find I use "for each" and pick by UID very often with hundreds of instances, and performance is great overall, I guess it's mainly about trying to minimise what the "for each" is cycling through, and trying to, uh, "functionise" everything, so the game is more reactive rather than always checking things every tick (which, in the case of checking for multiple field overlaps, becomes tricky). I'd be curious to see performance on a basic collision system for this field example, I have feeling it'd be pretty stable unless talking thousands of characters. Also there's collision cells which I think are on by default, so if fields overlap but are spread across the map, then collisions get managed pretty well.

    In comparison to gamemaker/unity, how hard is this example to do, like what would be the quick rundown of what you'd do in those applications?

    EDIT: with the bit about families and containers - 2 points I'd bring up: you can have a var for the family that stores UID of the array. Yeah, more picking, but as long as not picking every tick and thousands of instance, then this should work well. And, perhaps worth considering having the characters as a family of skins for a regular square sprite called Player or something, where the player object handles the movement and such, and the chars are children to the player.

  • Scenario 1 - dictionaries everywhere, put dictionaries into containers with objects, then you can definite as many bits of data as required. Or just use instance variables. Then lots of comparisons for whatever is needed.

    Scenario 2 - have a dictionary for each player called "attribute overrides" that always contains an up-to-date list of equipment buffs and such (if changing equipment, refresh this dictionary) so could contain keys like "Jumpstrength = 2" for a 200% increase. Then, have vars in the player such as accelspeed, jumpstrength, hpmax, attack speed. Then have a custom action, or function, that does a sort of "refresh attributes" system, where it starts off by setting the attributes back to the overall "default" value (E.g. Jumpstrength gets set to 300), then throughout the custom action, multiply the attribute by whatever keys it can see, depending on the key name (so the players variable "Jumpstrength" which is currently at 300,gets multiplied by the Jumpstrength key in the players own "attribute override", meaning it gets increased 200% and ends up at 600).

    EDIT: Your video where it would judge speed of work flow and such, I don't know much about making videos or comparisons, but if say you asked me to demonstrate these 2 solutions, then for each I'd whip it up in less than 10 mins from scratch, adding more time for each extra attribute or gem type and such, using built in behaviours and plugins (and assuming I use rectangles for artwork since I'm bad at art).

    Since these are new solutions for you to think about, you might take longer with speed of workflow unless you have done these systems previously (I'm not assuming you know less or judging your competence with C3). But, if you told me to whip up an RTS with moving units and pathfinding, then I'd definitely be much more slower and unsure, whereas others would be lighting fast at this. I don't quite know what my point is but, I see event sheets as powerful and doesn't work against me, and you have titled this post as C3 being a nightmare and such, which is just baffling to me as someone very familiar with event sheets and don't often have issues with it and feels like I can get any result needed.

  • Ashley has explicitly argued against rising complexity in the form of features that would aid power users and enhance scalability, on the grounds that beginners would be turned off.

    I haven't seen this happen, do you have some examples?

  • WhackyToaster I started on game maker too.

    In regards to Godot, one very big strength with construct 3 is it is javascript HTML5 only. Javascript is the assembler of our age, and it was a good gamble to bet on it. Picking your target and doing it well is better than kind of doing 4 or 5 languages and 3d and 2d and an invented GD script like Godot. You can find anything in javascript and it is also very optimized on every platform.

    yours

    winkr7

    Very true. Whilst there can indeed be some quirks with html5 (then again, every engine has quirks), it seems much better to specialise in one area rather than going haywire with all different languages.

  • Oooh interesting, I utilise F keys in my project, but haven't tested it yet. Does it get overridden if you have an "on f5 pressed" event present? I'm guessing not, but wanted to check.

  • Yep, the order of your function actions matters, and will reliably call them in order.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • +1 for theme dark. Commented on there 2 years ago, and still using it to this day. Admittedly I modified it to make it slightly more darker, and sorta borked some colours along the way lol, but it's great as it is.

  • Scalability issues and failure to add features for fear beginners would find it complicated... these are major barriers in my mind to any serious look at construct.

    It's only the marketing - there's lots of advanced features, be it javascript integration, multiplayer, encryption, translation, file system. Plenty of random hidden things, like the touch plugin has pressure sensitivity, worked on my old Note phone!

    Construct is great, so long as you are either making something simple or a prototype. But if you want to practice SOLID, you canʻt. If you code, you know, if you donʻt, you probably wonʻt.

    This would be same for any product, even GDevelop. You get so far until you need to understand loops, arrays, functions, etc. You can still achieve a lot without this, even if it means a beginner ends up copy pasting duplicate event blocks or something.

    Every dev cycle I come back to construct, It has a nice IDE, and making games in it is fun... but each time I leave to finish in unity, frustrated with lack of event reusability, better abstract coding, efficient functions, etc...

    I don't get this, event reusability can be achieved with functions/custom actions/event sheet includes. Functions seem efficient although there's that debate on the whole calling functions by name which is seen as finicky.

    The moment you find yourself creating a tool to edit project files so you can more efficiently delete or copy variables... well...

    This can be done just fine in the editor. It does react badly in one circumstance though, can't recall how but something to do with having multiple same-named local vars in a group or sub events.

    EDIT: Wait I misunderstood, yeah project file editing is basic, can't cut and paste rows in arrays and such so it's not the most powerful.

    Also, and most importantly, if you are visual, but want to write good events, you need to use families... families all have the same icon in the event sheet, so now, that whole visual nature of events goes out the window..

    100% agree and it drives me crazy, especially when you name families like "HUD_Camera", "HUD_Bars" and all you can see in event sheet is "HUD_..." unless you expand the view and such.

  • I mean, everyone would rather not pay moneys, but with many hobbies (whether intending to go professional or remain as a hobby), they do often have a lot of costs to execute that hobby, be it materials or tools.

    Being software, from a buyers point-of-view, we have different expectations because "it's just code, can copy/paste software, why charge?" and "but software is always pay once, I wanna own it", and as devs, we have many choices that are absolutely free from costs, so we can draw comparisons between software. But from a companies point-of-view, unless the company is producing many different bits of software, then one sale doesn't seem like it will go far, would constantly need new people rather than commited people. Believe me I'd rather not pay monthly/yearly too, but it seems like a sustainable way for a company with few products to generate an income, thus giving them ability to make more updates and provide more services to us (e.g. Build server, support).

    I vaguely remember I once emailed Scirra asking if they would accept random donations of money, since I felt bad for paying £70 once then using the software for years - I got more hours out of C2 than video games! I wasn't well funded so wouldn't have been a huge donation, but yeah. Now regular payments for sub is like "ehh" BUT, it feels like the money is funding the software, which we do want to see grow and flourish - However, it does boost my expectations when there's issues though, like if editor goes down (as it rarely does, and offline mode often works for me), it instills rage in me like "I PAY YEARLY FOR THIS, IT HAS TO WORK", or a crash bug would be more annoying due to knowing I'm paying a sub. Even chrome being buggy made me internally blame C3 at first, like with the recent "status breakpoint" bug, but then realised I was wrong to assume.

  • Price aside, the free version feels like it could benefit from easing up, just a bit, not enough where someone can make a fully-featured game, but enough that you could get somewhat far and then need to subscribe.

    Events are tricky, I think a limit is a good idea, but maybe a bit higher for logged in users. Sure, you could say "ah then they should learn to utilise loops and such to keep event count down", but maybe people won't think that and just abandon when they hit limits.

    There's an effect limit of 2. Just 2, for the entire project! Gives you a quick taste but doesn't let you make a small effect system, could add blur horiz and blur vert and you've reached the limit. Maybe a change to this, maybe 2 per object, maybe a global limit of 6 - sometimes combining effects is quite important.

    Remote preview is restricted, perhaps this could be unrestricted for logged-in users, as its quite exciting to preview on mobile and such. Could say that people could open on their phone and test, but seeing popup is just another "uhhg" moment if testing on a desktop.

    I guess my thought process is trying to find a way to get people using C3 a lot and getting quite familiar, without hitting restriction popup and such as easily. Then it's like "I've spent few hours and just hit a restriction, I really dig this, let's sub" rather than "ahh man I've hit a restriction multiple times and it's been 20 mins".

    Scirra would have more useful data on all this so I imagine they know whether popups on free version causes the person to quit suddenly or something. But just some thoughts.

    The example page is definitely amazing, even on free version, you can still open anything to see what sorts of things you could make with C3. Maybe a good "tech demo" kinda like kiwi story but does some crazy showcase of everything (physics, effects, etc) kinda like how half life 2 had that map they showed at E3 showing off essentially EVERYTHING that can be done in one small sweet package. The examples definitely do this, maybe even a highlight of the very impressive ones for free users to be easier, but a self-contained project with everything could be great!

    EDIT: Infact, when I open C3, I see first person shooter, cave bridge, and challenge room, none have touch controls and don't say to flip to landscape. Why not have these update to have this? The cave bridge is an excellent demonstration of how beautiful C3 stuff can look! But all in all, if free version always presented a wonderful tech demo example that works on touch, then even people casually browsing on their phones could go into the editor and immediately preview a beautiful professional-looking project.

  • You're welcome! Personal sounds right for you. If you make a bunch of money from your games (something like $50,000), or if you make games as part of a company/business, then you'll have to upgrade to the business licence, but for now, it sounds like personal is the right choice for you.