oosyrag's Forum Posts

  • Can't verify without seeing.

    If it's reproducible, file a bug according to the guidelines.

  • Check for typos, and that your layouts are linked to the correct event sheets.

  • What have you tried, and what are you stuck on or having problems with?

  • I'm no expert by here are my 2 cents...

    General advice - Always create assets larger than you need for any platform, and reduce their size to whatever is suitable upon exporting in your graphics editor program.

    1. Normally I would target a screen size/resolution of 1080p or so, given that many phones are already capable of such resolutions. Downscaling is acceptable in most cases (additional considerations need to be taken for pixel art), upscaling causes more visual quality degradation. Regarding memory, it depends on the game. I normally want native resolution (1080p) assets, as long as I control the amount of total assets on any given layout. If I were to do an especially asset heavy game, I may have to use lower quality/resolution assets. This is a compromise that depends on your game. Note that none of this actually has nothing to do with the target aspect ratio, which should always be designed to be flexible regardless. Assets don't stretch on a single axis depending on aspect ratio anyway.

    2. You probably don't want to do this. Again, sprite resolution/quality has nothing to do with aspect ratio, so best not to get that confused. You CAN have a high quality/low quality mode, and load in different resolution sprites/textures in your objects. I wouldn't recommend this, as it's a ton of work and generally unnecessary. For example, Flash had an option for low quality mode and high quality mode, that I personally never actually touched and I suspect most other people didn't either.

    3. Yes. The browser object has a condition that detects portrait landscape. You would need to design for two different orientations and use the appropriate one. Otherwise, if you want it to be user selectable (not recommended), you would simply design for each orientation and make your game fixed in that position and have the user rotate the phone to view your game properly (one version vertical, and another one literally sideways).

    Anyways, the main point I think you should avoid getting confused is that resolution and aspect ratio are totally different (albeit related) things. There is no choosing or changing assets resolution based on aspect ratio, you only design for position and what is/isn't visible at different ratios. Assets made for high or low resolution (4k vs 640x480) screens on the other hand, could would matter, even if the aspect ratio was identical. A high resolution sprite made for 4k would be downscaled on a 640x480 screen, but use just as much memory, so memory is wasted, whereas a low resolution sprite made for 640x480 would be upscaled and be visually compromised on a 4k screen. Again, this is something most people don't need to design for. Unless you expect to lack enough memory on your target system (very hard to judge for mobile), use as high resolution assets as you can that is reasonable without overshooting your target.

    Also note that a modern mobile device has significantly more VRAM available than the most excellent supporting multiple screen sizes tutorial, which was written 10 years ago, suggests. Many devices now also allow regular memory to be utilized as video memory, which in effect makes your effective VRAM available not as big a consideration, unless you're doing something really absurd. It's not something I've had to worry about for a long time by just aiming to be efficient in general (large amounts of graphical assets still can take a long time to load into memory at the start of layout, causing a freeze, even if there is enough memory available to hold it all).

    Edit: Upscaling is actually generally quite acceptable as well. Even while some mobile devices have super high resolution now, the physical screen size is still a small space, so a normal eyeball wouldn't be able to visually discern a degradation of quality. Even then, quality is relative to all the other apps out there. For example, if a user was using a cheap, large, tablet, with a low resolution, yes your game might look like ***** but so would every other app the user runs on that device, so they're probably used to it.

    TLDR: Aside from designing for multiple ratios, which has nothing to do with asset quality, it is probably better to focus on making your game more fun than worrying about things like multiple quality settings.

  • Recommend using a function to spawn enemies. The parameters would be type and number of entities.

    You could use a project file if you want to make a long list of what to spawn at each level. This could be xml or json. You can use the array editor to save an array as json, and load it at start of layout.

  • You do not have permission to view this post

  • You do not have permission to view this post

  • You do not have permission to view this post

  • You do not have permission to view this post

  • Never mind, on changed only triggers when you release the slider, it's not continuous.

    Looks like very tick is the way to go to get continuous updates if "is focused" doesn't have mobile support. Maybe file a bug report.

    If you need better control you might want to build your own slider bar with sprites and events. Form controls are generally not the greatest.

  • Mow a few lawns, shovel some snow, get construct for a year.

    Can't bake cookies to sell without buying the ingredients first. So do like everyone else does. Get the money to start from your parents, or use your body.

    If you're 15 and don't understand why the world is like this, I highly recommend you spend some time thinking about it. If you can't figure it, parents and teachers are a better place to ask than internet forums.

  • For each player, push the name and score into an array. The array object has a sort action.

  • I use the on changed condition when utilizing slider bars.

  • Host updates and records score in an instance variable. This instance variable can be located in each peer's player object, as those will already be synced and associated to each player. Use the sync instance variable multiplayer action, so whenever the host updates the instance variable, all the peers get updated as well.

    All players can display the current score on their own based on the values in the instance variables.

  • Hi,

    It should be possibel to set up multiple variations of 1 game in multiplayer. Let's say the game is called 'hello world'. Multiple 'rooms' of this game can be hosted and then be joined by peers I asume? The host makes a new game/room by giving it a name and peers can join randomly or by giving in the exact game or code to enter. Am I correct that this is possible?

    This is correct.

    If this is the case my question is this: How can I receive the info of a single game/room and see how many peers have joined a room/game? Is this possible and how is this done? How to check how many games/rooms are active etc?

    Any ideas? I hope you can help me out a bit.

    You can get information regarding rooms via the multiplayer actions and expressions described on the multiplayer manual page.

    construct.net/en/make-games/manuals/construct-3/plugin-reference/multiplayer

    Here are the ones in particular you would be interested in -

    Request game instance list

    Request a list of active game instances within the given game. When the response is received On game instance list triggers and the name and total number of peers in the returned instances can be listed using the List... expressions.

    Request room list

    Request a list of active rooms within a given game instance. The returned list can include all rooms, only rooms which are unlocked, or only rooms which are available to join (unlocked and not full). When the requested list is received, On room list triggers.

    Multiplayer expressions

    ListInstanceCount

    After On game instance list triggers, the number of game instances in the received list.

    ListInstanceName(index)

    ListInstancePeerCount(index)

    Get the name and peer count of a given game instance in the returned instance list.

    ListRoomCount

    After On room list, the number of rooms in the received list.

    ListRoomName(index)

    ListRoomPeerCount(index)

    ListRoomMaxPeerCount(index)

    ListRoomState(index)

    After On room list, retrieve information for a room at an index in the received list. The state can be one of "available", "locked" or "full".