Jase00's Forum Posts

  • I use 2 monitors with Construct! You can right-click pretty much any window and click "pop out" or something, then you can drag it to a different window.

    I usually put my "Find" results, on a 2nd monitor, but you can put your bookmarks, another event sheet, and well pretty much anything over to a 2nd monitor.

    I haven't tried a ultra wide monitor but I'd LOVE to try that, and I have a feeling that C3 will adapt very well.

    Pro tip if you ever make online multiplayer game: Hold ALT whilst clicking "Preview", and it will give you a 2nd preview window, which you can drag onto your 2nd monitor and observe 2 players connecting online (can keep doing ALT+Preview to make even more previews windows if needed).

  • You can achieve this by using a "pixellate" effect (a default effect in C2/C3), and setting pixel size to 1, and having linear sampling for project settings.

    Only downside is, at least in C3, the sprite must be perfectly square, otherwise the effect doesn't seem to apply. If this is different in C2, then you could simply add this effect to an entire layer and get nice crisp pixel art whilst having linear sampled game.

  • Yeah we all want to see this software go far, Scirra's team and subscribers alike. Hope we get to a good middle ground. Maybe the solution is beyond what's been suggested here and needs a whole new approach. Anything that bridges the gap between freedom and safety.

  • I empathise with these points about protecting people from corrupting their projects with wacky plugins.

    However, I've seen plugins (iirc Skymens experimental text plugin, experimental 9patch, even dynamic layers before this was officially added).

    If one used these addons, and then a major change occurs with text/9patch/layers, wouldn't we be in the same position as if someone modified an official plugin? Raging bug reports but it all stems from a third party addon.

    At the end of the day, Scirra don't offer support with 3rd party addons or modifications (and sometimes even do offer support in these cases but only if common/quick to solve). Whether it's a 3rd party addon or a "experimental fix" addon, or even if it were to be an official addon that's added a 2nd time as a modified addon, it would all fall under 3rd party addons, which Scirra won't support, which seems very understandable.

    Whilst I do sincerely agree with protecting people, I guess I feel there's a point where people must be warned about what they're about to do (i.e. Labelling these plugins as experimental), but beyond that they're on their own.

    Official plugins could be marked as protected, as to not allow modification (if someone did tweak platformer behaviour, then they'd need to install it as a 3rd party addon then "move their events over" to use this modified behaviour, rather than updating the official plugin - this would be time consuming for some, but prevents "hacky" workarounds and keeps things consistent.

    I for one use events mostly, so this doesn't deeply affect me, but sometimes wondered if the community could enhance plugins such as the physics addon.

    On another note, I think it's really interesting with Physics - I guess if there was much bigger demand, we could get a physics 2 addon or something? I have hit issues with current physics for many different reasons that could all be fixed by having better collision filtering, and always wondered "well it's within Box2D, I wonder why this can't be exposed in event sheets?", but now this makes sense.

  • Hmmm.

    Is "canshoot" a global variable? If it's a local variable, it might need to have tick box ticked so it doesn't reset back to 0 every tick.

    Are you saying you can see in the debugger that the bullet objects are spawning? If so, click on this in the debugger, do you see the X and Y position? Maybe it's appearing in a weird place.

    Could disable the "destroy if not onscreen" just to rule that out from destroying it instantly.

  • Do you use layers? Is layer 0 correct?

    Might be the case that layer 0 is your background layer and therefore hiding the bullet.

  • Yeah it's totally possible, but I would recommend starting with a smaller project to get the hang of online multiplayer.

    An MMO would need a dedicated server, wouldn't want to store data locally, otherwise people could easily cheat. So would be wise to learn about SQL databases and such (or if that's too beyond your realm, could hire someone).

    Also it depends on how much interactivity this game will have - would players mostly just "see" each other and chat, or would there be PvP or other interactions? Even if you just "see" players, can players interact with the world and the world needs to keep track of changes? Lots of stuff to manage, would be a big task with lots of moving parts.

    Overall, best to start smalllll, then you may start to hatch ideas on how to handle an MMO.

  • 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.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • 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.