oosyrag's Forum Posts

  • I'd say yes. Even Mode7... I vaguely recall R0J0 having a working example somewhere.

    But I mean, even the oldest published games on those systems were not exactly "indie" efforts... so just because it CAN probably remake any game from the 8 bit era it doesn't mean it would be easy to.

  • Sorry I don't know the answer to the question, but maybe I can phrase it more clearly.

    In the event of a delayed IAP approval or denial for a consumable product that the store does not keep track of, what happens if the game is closed before triggering on purchase success/failed?

    I assume the purchase would simply be lost. Although I was under the impression that credit card processing happens entirely in the store overlay, with success or failure determined before even returning to your game. I imagine play store would have it's own timeout protections, but I don't have any experience with that.

    But that's what those tests are for, so you can try it and see what happens to decide how you want to handle it.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Hmm I'm not sure about the memory loading.

    I do know all sprite objects used to be required to be on a layout previously, and that was no longer the case with c3 at some point.

    Putting the sprites on an unused layout was a way to get around it, without deleting everything at start of layout. They didn't need to be global.

    Someone more familiar with this than I can probably give a more definitive answer.

  • Put them on an unused layout, set your default parameters there. Same effect as destroying them on start of layout.

    As far as performance goes, I believe all sprites used in a given layout are loaded into memory before the layout starts, regardless if there is actually an instance of it there to begin with.

  • > If the object's origin is in the top right, set it's position to x=ViewportRight("0"), y=ViewportTop("0")

    That's the theory. But in my case the ViewportRight(0) is 1080 in a viewport of 1000 width. This can not be...

    Also th layer has parallax x = 0% and y = 0%. So, what I'm doing wrong?

    ~edit:

    Sorry, that's my fault. Now I'm using ViewportRight(0), not ViewportRight("Layer") and it seems it works. I will make a few more tests. ;)

    It is correct, because your viewport can change at runtime because of your fullscreen mode. Due to different aspect ratios, the viewable area on each device can be different.

  • ViewportBottom(layer)

    ViewportLeft(layer)

    ViewportRight(layer)

    ViewportTop(layer)

    Return the viewport boundaries in layout co-ordinates of a given layer. Not all layers have the same viewport if they are parallaxed, scaled or rotated separately.

    If the object's origin is in the top right, set it's position to x=ViewportRight("0"), y=ViewportTop("0")

  • If you've tried with different hosts and none of them work, it might not be a networking issue after all (unless you're all on a campus network or something similar?).

    Correct, the game is being downloaded into the browser's cache on each user's computer to run. For more details, see the "How Projects Load" section in this tutorial - construct.net/en/tutorials/loader-layouts-custom-loading-9

    An ICE server is basically the name for either a STUN or TURN server (confusing, I know). STUN is generally publicly available as a free service. TURN servers are usually not, because they have real time bandwidth usage. So when you "Add ICE server", you can add either a STUN or TURN server. See Ashley's post here for a more detailed explanation - construct.net/en/forum/construct-2/general-discussion-17/multi-player-plugin-quotadd-75795

  • I do not think recompile means what you think it means.

    If you mean you have an exported game but not the project file and want to edit in Construct 3, then no, you cannot.

  • Most likely, the host client (first to join) has some network nat or routing issues that is causing issues for the following peers to communicate.

    Are you using the Scirra signalling server or your own?

    Have you tried having a different client join first to be the host?

    Note that generally speaking, where you host/upload the game itself has no impact on anything. The app is downloaded to each client's computer, and each client communicates directly with the host after getting matched together from the signalling server.

    If it works with some hosts and not others, a TURN server would likely solve your issues in most cases.

  • You can use an instance variable "Correct" on each word object, and set it as true or false.

    1. Draw a random word to display, set variable "Correct" to true.

    2. Draw 4 more words to display, set variable "Correct" to false.

    3. On clicked word object, compare instance variable "Correct" is true or false, and increment the relevant counter.

    You probably want an array to represent your deck, but you might be able to do it with the advanced random plugin and a dictionary instead.

    Don't be afraid of learning arrays as a concept. An array is basically just a spreadsheet, where each cell is a variable. In other words, its a group of variables you can identify by coordinate position rather than names.

  • Use an invisible camera sprite where the size is about the same size of your visible screen area, and enable the scroll to and bound to layout behaviors on it. Have it pinned or otherwise following your player character. When it reaches a layout edge it will no longer scroll.

  • The section you're looking for is here at info.sonicretro.org/SPG:Solid_Tiles

    You basically need to keep track of vertical, horizontal, and ground speed and apply modifiers to those depending on the terrain.

    Unfortunately you'll probably need to apply everything above that section too as a prerequisite. Sonic's movement has quite a lot of details involved as you can see, which also results in it being a core part of the series identity. It's a bit too much for me to simply put together a quick example for, sorry.

  • Working out and finalizing your game mechanics first before making levels is definitely a viable workflow. Once you have your core game down, you'll be able to focus on creating levels and it will go quickly.

    But making games does indeed take time...

  • If your dead angle is a sprite, you can cut out the part that overlaps the player and make it transparent.

  • I had just been thinking about some procedural generation ideas, no actual project in progress at the moment, so higher level conceptual explanations or resources rather than specific code would be appreciated.

    With the noise plugin, I can generate values say with the Voronoi noise algorithm and end up with something similar as depicted at construct.net/en/tutorials/getting-started-advanced-30.

    More specifically:

    1. How do I define or identify edges and nodes to apply additional noise? So that they are not straight edges, while keeping the intersection points in place.

    2. How do I apply specific noise profiles to cells (biomes) while taking into account neighbors for smooth transitions so that there are not jarring "elevation" (value) changes between neighboring cells along edges?