18

No Quoting Steam's description of the Greenlight process: Who should submit their games to Steam Greenlight? Is there another way to submit my game to Steam? Steam Greenlight has replaced our previous submission process. Any developer or publisher who is new to Steam and interested in submitting their game to the platform should submit their ...


13

Found a solution from some resource. Go to Global Game Settings, then go to any platform spoiler(for example "Windows" or "Android"), there choose the spoiler titled "Graphics" and toggle "Interpolate colors between pixels" off. Have fun :)


9

The next step would be to secure a budget of several million dollar to hire a team of a few hundred experienced people, because that's what it would take to create the greatest game ever. Do you have several million dollar laying around? Or do you know any publishers who would trust you with a million dollar budget because you have a solid track record of ...


7

This fully depends on the developer at hand and how well the person knows the coding language. Assuming you can definitely do the art side of things, I'll go ahead and list some pros and cons of both engines. Game Maker Studio: Pros: Very, very fast prototyping. Very beginner-friendly coding language called GML. Extremely welcoming community. Cons: The ...


6

I would store the keys and times as two ds_lists. Create an object and call it keyLogger (or whatever). In the create event, create two lists: keyCodes = ds_list_create(); keyTimes = ds_list_create(); frame = 0; Then, in the step event, you can log the keys and advance time. if(keyboard_check_pressed(vk_anykey)) { ds_list_add(keyCodes, keyboard_key);...


6

Variables declared with the var keyword are local variables, whereas variables declared without var are instance variables. More information on scope: https://yoyogames.com/tech_blog/41


6

What you're describing is effectively running gameplay mechanics in a virtual machine, which can simplify the process of authoring them and insulate against bad behaviour. As it happens, a lot of games already do their gameplay like this under the hood! If you've ever heard developers talk about incorporating scripting languages like Lua, or node graph ...


6

This is intended: NOTE: This function will return the same value every time the game is run afresh due to the fact that GameMaker: Studio generates the same initial random seed every time to make debugging code a far easier task. To avoid this behaviour use randomize at the start of your game. Check the reference here. If you want to have it ...


6

If my GML is not too rusty, the following should work: var allSwitchesOn = true; with(switch) { if(!switched) { other.allSwitchesOn = false; break; } } // allSwitchesOn now has the correct value


5

The entire loop will process every time the script that contains it is called. This happens inside a single frame.


5

Nobody wants to deal with having to manually scale up every sprite; not only is it a sloppy workspace but it yields to be very unprofessional. I found a solution when turning off interpolation in global game settings didn't work. texture_set_interpolation(false); :) I hope this helps you in your future endeavors.


5

Short answer: no. Long answer: Game Maker's performance are really bad. If you are a good programmer, you will find yourself hitting the performance wall more than once or pay for the YYC (Yoyo COmpiler) which unlocks decent performances at a price. Libraries like libGDX, slick2D, LWJGL or any other will beat GameMaker by a lot. Object oriented patterns in ...


5

You can do this with a timer like this: In your Create event (or where you want to start your counting): alarm[0] = 1; Then in your Alarm 0 event: global.score +=1; alarm[0] = 10; // how many gamemaker steps until this alarm get's called again A step in gamemaker is the same as fps, default is 30 so 1รท30 = 0.033334 seconds.


5

Borrowing the diagram from disc_code22's answer, let's overlay it with some numbers. For each square, we're going to count how many squares it is left or right from the knight, and square it; then do the same for up/down; then add the two numbers together: You might recognize this as Pythagorean theorem, just without the square root (we don't need it if we ...


4

You can export to Windows PC and Mac OS with the free edition of Game Maker (other export types, like web or mobile, require paid versions). To create an executable, just open your project, select File->Create executable The latest version of Game Maker Studio (1.2), the option you want is "Create Application": From there, you can save it as an installer, ...


4

The function you want is instance_number(obj) (documentation found here). This functions returns the number of instances of a object that exist in the current room.


4

You'll have to set the score position relative to the view position every update event. Some basic pseudo code from what I remember of GML. score.x = view[0].x + 15; score.y = view[0].y + 15; You can do something similar with the drag and drop interface, but I haven't touched GameMaker for years so I can't help you with that.


4

No, this is just a coding convention on the part of the people who wrote the code. You can name your objects however you want (within reason... I'm sure $@#$ would not be a legal name). The idea behind this convention is that you know what type an object is just by looking at its name, which is supposed to aid understanding while reading code. I don't ...


4

Assuming the camera follows the character, you should be able to use an image to black out all of the screen except around the character. If your game window is 800x600 for example, create a fully-black sprite that's also 800x600, find the center point of the sprite, then clear out a transparent circle around that point. Been a while since I've used ...


4

I don't know the expected limits of your coordinates so I made them constant-like (i.e. screenLeftX). My snippet chooses a random edge of the screen and then a random value between the appropriate coordinate limits of that edge. var positionAlongEdge = 0; var which = irandom_range(1,4); if (which == 1) //top edge { positionAlongEdge = irandom_range(...


4

I'm trying to run the code through in my head, so my apologies here. Could it possibly be that roughly 2/3 of the way down the screen, that the move_speed happens such that you can't get to a step_counter that's a multiple of 50 anymore? Your loop starts by decrementing step_counter by move_speed. For example, if step_counter starts at 100 and move_speed ...


4

To dynamically scroll through a very large background made up of smaller frames, there are many different solution; the main idea though is quite the same. The main idea Think of your fifteen background frames as sort of "panels", which you draw one along the other so that they fit the current view width: if your view is 1280 pixels wide, and each ...


4

I would recommend trying to clean up and reduce the number of variables you are keeping track of, as more bugs are likely to develop. But on to your question: The problem you are seeing is that jumping out of a dash appears to be acting like a second dash rather than a jump. This would tell me that there is a problem around how you are setting speed and ...


4

You can check what browser the game is currently being run in with the os_browser constant. If the game is not being run in a browser the constant will be browser_not_a_browser. So to check if it is being run in a browser simply do: if os_browser != browser_not_a_browser { // Being run in a browser }


4

If your ground scrolls at groundSpeed = 240 // pixels per second And you want your jump to cover jumpDistance = 180 // pixels Then your jump needs to last jumpDuration = jumpDistance / groundSpeed = 180 / 240 = 0.75 // seconds Let's say arbitrarily that you want the jump to take a parabolic arc. If we track the time since the jump started, and the ...


4

There are some icons at the right bottom area of the room editor. Check the first one of them:


3

This question concerns the order of events (when they are relatively called to one another). My answer takes advantage of the fact that mouse click events occur between Begin Step and End Step events. That means one solution would be the following: Have an obj_controller (bad name and design practice, but fairly commonly done with GM) that has a clicked ...


3

I'll assume that all the buildings occupy space in rectangular shape. Instead of checking if the mouse is hovering over other buildings, you can check if the building supposed to be built collapses with any other existing buildings at the position of the mouse cursor. So this... if (mouse_check_button_pressed(mb_left)) { if (!collision_rectangle(...


3

I haven't released any games, but why not make it so your backers have to put in an email with a special code you send them? Your game will be attached to their accounts somehow and you will be able to achieve everything you just mentioned.


Only top voted, non community-wiki answers of a minimum length are eligible