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


A member registered Dec 03, 2015 · View creator page →


Recent community posts

Great work!  The music is very reminiscent of the old Pokemon games.

I love the crafting here.  It's interactive, and surprisingly deep, with different elements coming together like the condition of each ingredient, their unique cooking properties, and discovering recipes for different jams.  I love the minigames for preparing the jam!

There's a bit of a "trial by fire" aspect to gameplay that I like.   I started my first run by throwing away all of my cooking equipment just to see if I could, and then starting over.  The map is way more expansive than I expected.

The combat UI could use a little work, as the timing for messages, attacks, and status bar updating seem to be inconsistent, making it a bit hard to see what happened over a turn.  But the gameplay all works very well.  I'd also like to see more enemy diversity, but this is very solid for the result of a game jam.

Keep it up!

Very cute!  Those villagers are so stingy with their money, haha!

The crafting aspect of this game is great, I love the fact that it amounts to more than just dragging all the items into the pot.  You can organize the way you craft in puzzle-like fashion to make better versions of what you're brewing, which opens up more in the way of gameplay.

The UI is very effective and clean, my only gripe with it is that the arrows that mark collectibles on the ground don't disappear when the collectible is picked up, leaving them pointing at nothing.

The exploring nature of finding ingredients is relaxing and gives the game a nice sense of pace and progression between brewing potions and going out to collect.  Great job!

Fun little game, and very aesthetically pleasing!

Score is only gained from killing zombies, so there doesn't seem to be any incentive to craft things that aren't weapons, but that's okay.  Zombies seem to be able to occasionally dodge forward instead of to the side when shot at, which occasionally leads to unavoidable death since they move at the same speed as you, but other than that fighting them off seems fair.

The crafting elements make sense and the UI is very clear.  Solid work.

Music was excellent!  The idea of growing buddies is cool and interesting, and providing incentive to clear dungeons to get supplies gives the game a bit of a survival element.

Occasional array indexing crashes occurred when combining seeds together.  Window was resizable but I would not recommend doing so, as the GUI does not scale.  Combat decisions are simple but the fun of the game lies more in gaining strength by growing companions.

Oh weird. There's supposed to be a script for that, but there isn't. This project is a mess when it comes to making things clear for people, gee. I'll just show you what the script is SUPPOSED to do.

Sequential events are handled by a ds_list contained within the object Event. Each event is composed of two entries in that list; the name of the script to execute and the arguments to pass to it (if there's more than one argument, they should be stored in an array).

So to add an event right after the NPC finishes their dialogue, you place this chunk of code after creating the text box:

with (Event) {



Once the NPC is finished talking, Event will run the next item in that list, which will be the event you just added.

(Edited 1 time)

Ah yes. Sorry about the rather stark lack of documentation. It was promised, but I have been doing spots of work on other projects.

Text must be passed as a string array instead of a string, with each entry in the array denoting one page. Even if you have only one page, you would still pass a single entry array.

Thusly, text = "String here"; would become text[0] = "String here";

Certainly, go ahead and use it.

Hopefully it'll integrate well with what you already have.

(Edited 1 time)

Did you unpack the zip?

You need to extract the zip file to another location using an archiving tool.When you do, it will no longer be a .zip but a folder containing the project's assets. You can briefly look through the asset folders to make sure they're not empty, if they are you may need to try redownloading.

In that folder will be a file called UndertaleRemake.project, which you can open with Game Maker.

I just tried grabbing the zip and opening it in Game Maker: Studio and it seemed fine. Are you extracting it using an archiving tool, like WinRAR? Once you have, open Game Maker: Studio and select the UndertaleRemake.project file inside the first folder.

Replaced it with a .zip! I'm still in the stages of modifying it to improve readability, so if anything is unclear, please go ahead and ask.

(And trust me, a lot of it is unclear, which is my fault. I started this not expecting others to read the code, so a lot of it doesn't make a heck of a lot of sense unless you specifically know what does what. That should change soon!)

I'm mostly self taught, but that doesn't mean I've never looked up general tutorials on how to do certain things. I'm sure there are tons of great tutorials that can help explain what you need. The tutorials I'd specifically look out for would be turn-based combat, projectiles, text boxes, and maybe some animation. Asking a lot of questions just means you have a mighty thirst for knowledge, don't lose that enthusiasm!

Indeed there is another way! Most of these enemies are broken into several sprites, which either move around, stretch, or rotate.

To make them move, it's usually a sinusoidal pattern (meaning it'll go back and forth in a wave pattern) like x = sin(timer) * amplitude.

To make them stretch, you can use the image_xscale and image_yscale attributes.

To make them rotate, you can use image_angle, which also usually moves sinusoidally.

(Edited 1 time)

A timeline is an in-built utility in Game Maker, basically it will just execute commands over a series of time. The basic premise to most enemy attacks is that it starts the timeline, which then over time will go: At moment 0 (the start) spawn an attack, at moment 30 (one second in) spawn another attack, at moment 60 (two seconds in) end the attack. This gives me control of what happens for the duration of the attack.

When it comes to storing actions in scripts, I used the script_execute function. Each button has a variable that stores a script, and so when I use script_execute on that variable, it will run that script. Items work the same way. For example, the FaceSteak item has a script associated with it, but basically all that's in it is hp += 15;

There's lots of ways to make a cursor move around a menu, the method I used was to have a 2-dimensional array that acts like a grid. When you move with the arrow keys, you change to a new position on that grid. Each grid value has a position associated with it, which the heart then moves to.

(Edited 1 time)

Sorry about late replies, I totally blanked on this comment section being here. The code for the enemies is mostly centralized around a single "Enemy" object that all other enemies draw from. Each attack is stored in a timeline and each action is stored in a script, which is then executed at the Enemy's discretion. I didn't really write the code in a way that's obvious what's doing what, but I plan on making it a bit more streamlined so that people who know Game Maker will be able to easily edit it!

It's made in Game Maker: Studio, the same tool that Undertale was created with.