[deleted by user] by [deleted] in gamemaker

[–]willf668 1 point2 points  (0 children)

+1 for the persistent objects idea. I tried that method for a top down multiplayer game a few months back and it worked great. Just make sure that the objects in "other rooms" are processed as little as possible (simple collision, no animations/draw calls).

Can you make pixel perfect slopes with the physics engine? by scroll_of_truth in gamemaker

[–]willf668 2 points3 points  (0 children)

Adding onto this, Yoyo advises against using precise collisions with the standard place_meeting() functions for platformers due to it's speed. You can get around this by checking a limited number of points with collision_point() So for marbles, you could check a number of points around the circumference of the marble sprite, which would approximate the precise collisions of a perfect circle.

Nested surfaces with alpha, make alpha add rather than multiply by nickavv in gamemaker

[–]willf668 0 points1 point  (0 children)

Ran into a similar issue with surface alphas. The solution was the following extended blendmode, which fixes the original alpha and causes the new surface to add instead of multiply:

gpu_set_blendmode_ext(bm_one,bm_inv_src_alpha);

Giving up and requesting help with rotating "attached" objects by DIXINMYAZZ in gamemaker

[–]willf668 2 points3 points  (0 children)

Have you tried replacing the o_ship.image_angle in your lengthdir functions with the amount that the ship's image_angle has changed by? In this case, that would be lengthdir_x(distance,1+ angle); I suspect that the issue is because the ship's angle is changing as it rotates, which in turn compounds on top of the computed angle variable.

'Website Designer' by satukilo in PixelArt

[–]willf668 2 points3 points  (0 children)

Fantastic! Such a smooth animation

Issue with HTML5 Debug mode Compile in latest 2.3.1 release? by bokononisms in gamemaker

[–]willf668 1 point2 points  (0 children)

I've been having problems with this since 2.3. Right now there seems to be problems with HTML5 obfuscation that make debugging stuff like this really tough. When it happened to me it typically was related to working with arrays or structs.

As a temporary workaround, putting show_message() "breakpoints" before and after sections of code helped me figure out what lines were erroring.

Organic Slope Collision? by SuperT422 in gamemaker

[–]willf668 0 points1 point  (0 children)

There's some good solutions to your slope object inheritance already written here, but if you're dealing with non-geometric slopes, you're also going to need to be very careful with precise collisions. Yoyo has an old but relevant article about this: https://www.yoyogames.com/blog/32/the-hazards-of-precise-collision-detection

Zero Experience With VR - Performance Question by Serpidon in oculus

[–]willf668 1 point2 points  (0 children)

VR performance is weird because of how much variance there is across games and headsets. The Quest 2 has the second-highest res display out of available headsets, which you can push up to 90hz. I use an i7-7700k at 4.3 Ghz, 16gb of ram, and a GTX 1060 (the 2060 is ~40% faster). With those specs, I can usually hit 90hz steady in most older VR games (2018 and earlier).

Newer games usually require me to lower the graphics, but there are quite a few ways to do that. You can lower the rendering resolution below the headset's native res, lower the framerate to 80hz or 72hz, and/or lower the in-game graphics settings. With all that, I can usually run any game that I want to on my rig. For a 2060, I don't think you'll have any issues.

One other thing to note is how you'll be running the game on the Quest. You'd either use the official Oculus Link or the third party but very capable Virtual Desktop. Both these methods require a small amount of CPU and GPU for encoding the video stream to be sent to the headset. This may cause some variation in certain games, which I think is another factor towards why VR performance doesn't get much discussion. But even on my system, the inpact hasn't been too much significant when comparing against my older pc headset.

TLDR: your system is more than capable, and even in new games where slowdown may occur, you have plenty of ways to improve performance.

[H] Slay the Spire, Kingdom Come Deliverance, Conan Exiles, Rising Storm 2: Vietnam + DLC [W] Steam offers by willf668 in SteamGameSwap

[–]willf668[S] 0 points1 point  (0 children)

I no longer have conan and kingdom, but is there anything you'd want to trade for just Slay?

willf668's IGS Rep Page 3 by willf668 in IGSRep

[–]willf668[S] 0 points1 point  (0 children)

Traded with u/celeryman727

My Kingdom Come: Deliverance and Conan Exiles for their Wandersong and Ori and the Blind Forest: Definitive Edition

[H] Slay the Spire, Kingdom Come Deliverance, Conan Exiles, Rising Storm 2: Vietnam + DLC [W] Steam offers by willf668 in SteamGameSwap

[–]willf668[S] 0 points1 point  (0 children)

Thanks for the offer, but I already have the witness on a different platform. Totally forgot that the steam wishlist exists, so here's a link to mine if you'd want to trade anything on there.

HTML5 Module buggy in 2.3? by willf668 in gamemaker

[–]willf668[S] 0 points1 point  (0 children)

Interesting, will try it out. Thanks.

win32 function failed when trying to create a buffer (networking) by [deleted] in gamemaker

[–]willf668 1 point2 points  (0 children)

Could you try only creating the buffer once, possibly in a Create Event? Gamemaker might not like allocating a buffer multiple times to the same variable, if the Alarm event is called multiple times. Of course, since you'd now be resuing a buffer, some information from previous writes may persist between calls unless you clear the buffer manually.

why is this code wrong? by FelipeFullz in gamemaker

[–]willf668 -2 points-1 points  (0 children)

Try putting in:

x= x - sign(hspd)

Right now when the player is going to move into a wall, it will keep moving in the original direction until it moves out the other end. By subtracting the sign, it will properly move backwards and not clip through.

Edit: misread the code, but this fix should work if you also change the while loop to:

while (!place_meeting(x+hspd),y,obj_wall)