GeoffB's Recent Forum Activity

  • Save/load is only really suitable for quick tests, in my opinion. It’s kind of like save states in emulators. Much better to use local storage and store a dictionary with whatever variables you need, and then load it on startup, and go to and populate whatever layout you need from there. This is more in line with how most games save their data.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • I've been messing around with this quite a bit lately, using a CSS-override Chrome extension called Stylebot. It started with me wanting to use a monospaced font in the expressions field, and then I got carried away :D I've done quite a bit to improve event sheet readability and even found a couple of neat tricks along the way.

    Here's what my editor currently looks like:

  • The best way to answer performance questions is to test and optimise. In this case, I mocked up a quick test and managed to run about 7000 3d shapes with a couple of Sine behaviours before any noticeable performance dip. I have a decent mid-range PC.

    So around 2000 should be no problem (on PC - mobile will be a different situation). Just be sure you test as you work to isolate any performance considerations that might arise.

  • Here's what you want: runtime.goToLayout("layoutName")

    Reference: construct.net/en/make-games/manuals/construct-3/scripting/scripting-reference/iruntime

  • Is this the sort of solution you're looking for? construct.net/en/forum/construct-3/how-do-i-8/assign-specific-sprite-3d-173729

    In a nutshell: use containers for the 3D objects and their sprites, then you can pick the corresponding sprites without any effort.

  • Hmm, I recreated your example and don't have this issue.

    Assuming there's nothing else in your code setting size or anything, I suspect it's a rendering issue, not Construct itself. Try running it on multiple devices to see if the issue persists, and/or update your drivers and web browser.

  • You can use WebXR to interface with most VR devices. Integrating it into Construct will complex but doable if you know your way around js. Rendering to the device will be the real challenge though, and might not even be possible without using external libraries.

  • Set your animation names to "0" (right), "45", "90" (down), "135", "180" (left), "-135", "-90" (up), and "-45".

    Then use the following event to determine the animation to play:

    + LOSObject: Has LineOfSight to Target image point 0

    -> LOSObject: Set animation to str(round(angle(LOSObject.X,LOSObject.Y,Target.X,Target.Y)÷45)×45) (play from beginning)

    Here's a small c3p to illustrate: 1drv.ms/u/s!AhWRm9FAXcyGlbN5aRgM0vDfW9wzpg

  • I'm not sure what your intentions are with BBox, but if you want to check if a Sprite is overlapping any object, just use Sprite: Is Overlapping -> Object.

    Many object types don't have On Collision or Is Overlapping, but the Sprite object does and can always detect if it's overlapping with other objects.

    There's no direct way of checking if Text is overlapping something (although it's more-or-less the same thing), but if you really want to, you can create a new Sprite object and add it to a container for the Text Object. Set them to be the same size, and then use that Sprite object to detect collisions.

  • Yes, you can use TextObject.TextHeight/TextWidth to get the size of the actual text and set the size of the object from there.

  • Define an external deadline and work towards that. Knowing the work required to build a feature only really comes from experience, and right now gaining experience should be your priority.

    So find a game jam or anything with a hard deadline, decide "I'm going to make X", and work towards building that. Chances are you'll only be able to build half of X, or a quarter of it, and that's totally fine. Just make sure that you finish something by the deadline, even if it isn't what you envisioned. And when I say "finish", I just mean have a complete gameplay loop: start > play > succeed/fail > repeat.

    You'll quickly discover stumbling blocks and will have to choose how to deal with them. Bash your head against the wall for a bit and then move on. Reduce scope until you have the simplest game you can possibly make. Just make sure that it works.

    This way you are focusing on learning the tools, not mastering them. Build a few games with wildly different mechanics and before you know it, you'll find that the common elements like audio, UI, level management, player stats - whatever - become easier to handle and don't hold you back from doing the "fun stuff". Or maybe you'll find that you actually love doing UI and handling stats, and before you know it you've built a management game!

    I also recommend that you create micro-projects to test a single thing you have in mind. Ask yourself "how do I implement a text popup that shows damage dealt?" and make only that.

GeoffB's avatar

GeoffB

Member since 15 Jan, 2019

Twitter
GeoffB has 1 followers

Trophy Case

  • 5-Year Club
  • Forum Contributor Made 100 posts in the forums
  • Regular Visitor Visited Construct.net 7 days in a row
  • Steady Visitor Visited Construct.net 30 days in a row
  • RTFM Read the fabulous manual
  • x2
    Quick Draw First 5 people to up-vote a new Construct 3 release
  • x2
    Great Comment One of your comments gets 3 upvotes
  • Email Verified

Progress

12/44
How to earn trophies