🤑 Indie game store🙌 Free games😂 Fun games😨 Horror games
👷 Game development🎨 Assets📚 Comics
🎉 Sales🎁 Bundles


A member registered 3 years ago · View creator page →


Recent community posts

This is a strange question, but are you sure that it's 60fps? I just checked locally and Steam overlay says that it's 60fps, but in-game values still report 50fps, and it doesn't seem to be faster or smoother than SCBT.

Replied to protomutant in QUESTIONS

would it be possible to read the FAQ? (Setting up - On Mac/Linux support)

Have you tried following the official tutorial?  It specifically says which version to use. Also, you don't need to build anything - you can use the pre-built extension in this download.

Are you using the correct version of Steam SDK? GMS needs 1.35a.

Any function involving sending strings to Steam API, potentially including the built-in ones. Adding show_debug_message calls to different places should help to narrow down he location.

I think the only case where you could crash Steam client is by supplying an invalid string. Check that you didn't pass a non-string value as a string argument somewhere?

It is needed for events (e.g. lobby_join) to be dispatched correctly. I'm fairly confident that the example calls it somewhere from step.

Posted in Error in Code ?

That seems correct - this was originally going to be a P2P example (rather than with a server-player), and I guess I overlooked that when migrating the code. I'll fix that for the next update.

Replied to GidoLucion in QUESTIONS

See the announcement post. It even has the exact command to use.

Not necessarily advanced, but you would want a bit of extrapolation and interpolation - have the objects move in last reported direction (with steady velocity) while there's no data, and smooth out that predicted position to the actual one over a few frames when the information about the current position arrives.

For things like fired projectiles, you would only need to transmit initial velocity and impact position - the rest can be played out client-side.

I'd generally suggest to not go with "sending inputs only" - that implies input delay, which is not a thing to impose on players without a good reason. Sending the complete or changed state every frame is also a big task in itself.

You can also check out older blog posts on Monsters & Monocles' developer blog for various notes on networking in games of this.

(Edited 1 time)

Lag compensation shouldn't be affected by offset  of current_time, as time measurements would be entirely relative (to time when previous information arrived).

You would generally use something like Clumsy to artificially add lag on packets. Standard utility "netstat" can be used to figure out how and where Steam sends the packets (so that you know how to set up the filter condition in Clumsy).

It is hard to give advice without knowing what the game's like, but, in general:

  • In cooperative games, clients are usually allowed to check their own collisions, notifying the server when they get hit (and by what), as you want the game to favor the players and for players just generally have fun.
  • In competitive games, all checks and additional logic are usually done on server, as you want the game to be as fair as possible and to leave fewer opportunities for anyone to cheat. Exceptions are sometimes made for instantly-hitting  projectiles (laser beams, etc.), where damage is dealt if the player was certainly aiming right at the enemy on their side.

itch page simply links to the hosted version:


(because it's not possible to have the browser bring up the install dialog when downloading from itch)

As per tweaking, it's just changing the number in "tdf_bind" call on the bottom of the script to match the number of tweetdeck column that you have notifications in. I'm meaning to do some actual UI for this stuff, but hacking in menus on top of tweetdeck's already-unusual layout is not very fun at all.

(Edited 1 time)

I'm using pretty much the same script for this, plus the slightly tweaked makefiles for Lua (included) because of GMS requiring dylibs to be 32-bit. Could be that old thing with dylib->dylib references - I should probably try compiling Lua+Apollo into a single dylib again later.

(Edited 1 time)

Okay, re-reading that, I take it that you mean the GMS2 Mac beta rather than the Mac target for GMS2 on Windows?

Should try on a blank project, but I'm not sure if the debugger is actually implemented in Mac beta yet - I remember reading that it was in the works because the original debugger would not function on Mac due to using too many Windows-specific features.

It should still log some information into the "compile form" though.

I'll try setting up the mac beta on the mac I have to investigate this when the time permits.

It should - I had just recently uploaded a new version when  they reorganized some CSS for no apparent reason.

Check if it's applying to the right column (snippet on the bottom of the script) and stuff?

Hello, I would need to see the debug output (either from GMS or from terminal on Mac side, depending on GMS version and luck) to be able to guess the possible reasons. The right source is told apart by a number of lines mentioning OpenGL, which is followed by information on extensions being loaded and errors when they aren't.

320, 240

Alas, that is not viable - due to specifics of how the particular game was made, it would require substantial changes to the game, which would then have to be re-applied whenever an update is released. That's months of work.

The game seems to be doing alright so I'm sure that the developer will hire someone to do an official multiplayer implementation when they are able.

I helped with a slightly similar (has one player control a hero while the rest take control of enemies and try to kill them) game called Ghost Croquet though, if that's any help. Was made with online multiplayer in mind from start and has a level editor.

Replied to Camlenn in QUESTIONS

Check "scripting" - "getting started" page on wiki (linked on itch page). You don't need GameMaker, only a code editor and a web browser to check general GM (docs.yoyogames.com) and NTT-specific ("scripting" section on wiki) documentation.

You'd need to use local (192.168.*.*) IP shown when doing Win+R, "cmd", Enter, "ipconfig", Enter.

If you are on the same LAN, you can disable Steam connectivity on the coop menu and connect by IP directly. That would solve any possible issues arising from Steam side of things.

Try restarting Steam (and have the other player do the same to be sure). If that has no effect, take a look at the latency graph (hold Tab) - maybe the connection towards the second player is having problems.

You both need to enable mod loading via "/sideloading" in chat before you can load mods in online games.

This is cool, curious to see if\where you'll take it post-jam.

Also, if you haven't figured it out by yourself, to make the web build embed on itch, you would need to set the "kind of project" to "HTML" and move the contents out of the "Web" directory in the archive so that index.html is in the root. Then you'd specify the archive as "this file is to be played in browser", and it'll display the game right on itch page.

See if you have any extensions that block JavaScript (or try a different browser), since those buttons seem to fetch the right link through that.

There is currently an issue where gamepads cannot be used to select mod-made skins in loadout.

This will be fixed in the next release, but till then you can use "/gamepad" command to switch to mouse for a moment ("/gamepad 0") and then back ("/gamepad 1") after selecting the skin.

Replied to cody712 in Mod requests?

You could make a file called shareammo.mod.gml, and have it execute it on game start:

#define game_start
ultra_set(0, 2, 1)

Then you'd `/loadmod shareammo` once per session and that would be it.

The only friendly fire that there is by default is on explosive weapons, but that is not easily gotten rid of. May want to pick Boiling Veins in such case.

Posted in Mod requests?

An easy thing would be to do

/gml ultra_set(0, 2, 1)

which would give you the "shared ammo from pickups" coop ultra mutation. Similarly,

/gml ultra_set(0, 1, 1)

can be used to get "shared health from pickups" ultra mutation.

At one point someone was doing a mod that had all players have shared ammo pool, but apparently it wasn't finished and was generally acting kind of weird at best.

In multiplayer both players will need to /sideload first (which is why files are not auto-executed), and then you can /loadtext startup

Clicking the option another time sets native cursor to work with a size limit, which workarounds an issue on some systems where cursors larger than 64px turn invisible (although the Windows permits cursors up to 256x256 by the format).

If you make a .txt file called "startup" in "mods" directory, any commands from it will be automatically executed as soon as you boot into a local game (same as if you did /loadtext startup).

In online session, only the person loading the mod needs to have it - any required files will be transmitted over the network.

Yes - just click on "[Modded]", and it'll collapse the mod list.  Click again to expand. Only works when it is usually shown (pause/loading/gameover).

Other trivia:

  • Green icons near the mod names can be clicked to unload them or Control+clicked to reload them.
  • Mod list can be scrolled via mouse wheel when mouse is over the green icon area.
Posted in Help

See under "chat commands > session commands" section in the FAQ

Main menu is outside of the game state - no mod-related code runs at that time, replays cannot be recorded, and generally things work... differently. I have briefly evaluated doing this when starting to integrate modding support, but it could have too many side effects to make it a worthwhile development. You can totally replace the character selection with custom menu(s) and set that up to load via startup.txt though.

See "migrating save files" in FAQ.

Posted in Small problems

Some of the recent WIndows updates did some interesting things to compatibility, and you may also have to set the game to run in Windows XP SP2 compatibility mode.

If you have an NVidia graphics card and GeForce Experience installed, watch out for that - the recent updates seem to be plainly butchering compatibility with games/applications. A person that I work with on a few projects had to rollback the driver because the GPU ceased projecting to external monitors after an update and GMS games would similarly just black screen when in full-screen mode.

Posted in Cant connect

If you want to connect by IP, you'll need to open a UDP port (see "port forwarding") or use something like Evolve.

Have you tried restarting Steam or reinstalling the game ("verify game cache") and the mod?