A downloadable asset pack for Windows

Buy Now$14.99 USD or more

Yal's Monster Collector Engine is a GameMaker:Studio 2 project with all the tools you need to make a monster-collector RPG in the style of Pokémon / Digimon / Temtem / Telefang. The turn-based engine is supplemented with a solid database and GUI system that lets you easily script menus and manage data.

Try out the free demo if you want a first-hand taste of all the cool stuff this engine can do! It's got close to an hour of gameplay if you take your time and explore everything! :D

Features

  • Define a monster, item, move, or other database item with a single line of code! It's super easy to add content! Items and moves are based on extensible effect structures, and the engine comes with plenty of example items, monsters and moves to play around with!
    • Databases are set up using GML scripts - easy to change, and you get tons of color coding by default!
    • Each database entry is a single line in the script! All data is in one place, and it's super easy to add new monsters, moves, types and items!
    • Non-standard functionality is handled by script references, letting you offload as many complex special cases as you need to elsewhere in the codebase, keeping the database structured and clean!
    • Cutscenes uses a similar system where you enqueue script to be executed, each one with as many arguments as is needed! Just enqueueing messages is good enough to get information across, but you can get as advanced as you want!
  • Engine back-end code is only using the most basic GML functionality (arrays, loops etc) ensuring maximal compatibility between exports, and making the code  easy to read and understand! The code is also fully commented, with special tags to point out clever hacks and other parts that needs handling with care or are sensitive to changes.
  • The battle system supports an arbitrary amount of monsters on each side in battle! Do you think 1-on-1 battles is boring? How about making 2-vs-5 battles the new standard! You can have more monsters than fits on the screen if you want!
  • Moves, capturing monsters, battles etc  handles an arbitrary amount of monsters on each side just fine! You can even set the number of monsters on each side on a battle-per-battle basis, surprising the player with a 6-vs-1 horde battle in the middle of a dungeon for some extra challenge!
  • Newly caught monsters that don't fit in your party automatically gets sent to the storage system! Easily move monsters around between the active party and a number of storage boxes! (The number of storage boxes also can be set to any number you want - default 10 boxes of 40 monsters)
  • Supports as many savefiles as you want! (Default 99)
  • Easily set up monster trainers and other NPCs right in the room editor using the new GMS2 "variables" system! You don't even need to open a code editor, you just provide some monster data and dialogue data and then it's all set!
  • The engine automatically keeps track of both items and trainers! All you need to do is place them in a room, and the game will register them as defeated / collected automatically!
  • Simple system to connect different rooms with doors - doors just use two variables: a "label", and a room to transport the player to. The player is automatically placed next to the door with the matching label! Give your doors clear names like "shrine" or "freddy's house" instead of having to worry about their coordinates with pixel perfect precision!

It's Super Effective!

  • Traditional mechanics like move types being effective against certain monster types, held items having special effects, and monster trainers fighting you with a series of extra-strong monsters all are in place, and will work out of the box!
    • The held-item system has hooks set up at several points in the combat-turn flow, allowing you to run a script there to do whatever you want! Power up a monster's attack, heal it at the end of a turn, react to an enemy's attack, and more!
    • The type system allows an arbitrary number of types with extra damage, weakened damage, or downright immunity to other types! Add in that type you always wanted in the ultimate clash of elements, or settle down for a simple system that literally uses rock, paper and scissors!
  • Catch feral monsters, level them up, and watch them learn moves and even transform into new stronger species!
    • Monsters can automatically transform into a stronger species when their level is high enough! You just need to define the bond in the monster database, the engine handles the rest!
    • Monsters learn new attacks automatically, you just need to define it in the monster database!
    • Give your monsters nicknames to make them more relatable! Won't change anything gameplaywise, but it sure is fun!
  • The GoodGUI System from Yal's SoulsVania engine makes a return, making it easier than ever before to script your own menus! Plot out frames and fill them with content, and the menu contents will stay in position even if you resize the frames later! No need to manually tweak every coordinate to pixel precision!
  • Want to make a traditional RPG but feel RPG Maker is too limited? Just dummy out the monster-catching part and you've got a powerful turn-based battle engine to play around with!
  • Comes with graphics, music, sound effects, and monster data that can be used commercially! Use the engine for whatever you want, as long as you don't resell it (or parts / derivative works of it) as an asset pack!

(Note that this project is not compatible with GameMaker Studio 1.x)


Try it out!

There's a free demo of the project showing off all the features! Explore the first area, pick a starting monster, catch and train a party of local fauna, take in the tranquility of Driftwood City, and rise to the challenge of Fielder, the first League Master!

Demo controls:

Arrows - Move around / select stuff in menus

X - Select stuff / interact

Z - Cancel

StatusReleased
CategoryAssets
Rating
(3)
AuthorYal

Purchase

Buy Now$14.99 USD or more

In order to download this asset pack you must purchase it at or above the minimum price of $14.99 USD. You will get access to the following files:

Source code (GMS2) 26 MB

Download demo

Download
Demo 15 MB
Download
EULA 22 kB

Comments

Log in with itch.io to leave a comment.

(1 edit)

Hey! I just have a few questions to ask before buying. Hope it's ok:

How easy is it to change the resolution of the engine? Is their much tied to the resolution already or will there only be a few things I'd need to edit after changing it (I'm just thinking in my limited experience with GM that things like character speed would need to change, as well as any measuring etc) ?


How easy is it to change the animations for attacks, and the battle transitions etc?


Also, is there a grid movement system, and if not, do you think it'd be hard to add in?


thank you so much this looks amazing!

Changing resolution should be fairly trivial, the battle controller sets things up based on the room size and most menus are defined in terms of two constants VIEW_W / VIEW_H. You'll need to manually change room sizes / viewports of every room in the game, but there's just a handful of rooms so it's hopefully not too much work.

Overworld character speed is defined in pixels per step, but it's just one variable you need to change in the player's create event. You might potentially also want to change the TILESIZE constant if you change the tileset size (this will have some ripple effects like grid sizes in existing rooms also having a different size, but I've never really tried changing a tileset size so I'm not 100% sure how much of that is automated)

Attack animations uses any object you want (typically a child of the effect parent), the battle flow waits until all effects are gone before proceeding. There's a convenience script fx_deferred_projectile which lets you spawn a standard projectile which runs another script on-hit (which works for a wide range of attacks) but you can add as intricate effects as you want if you feel like it.

The movement system isn't grid-based, but it shouldn't be too hard to add in. You'd basically turn the overworld player into a state machine with two states (idle and walking): in idle state, if any movement key is pressed, if whatever's one tile in that direction is OK to stand on: switch to walking state, start a countdown of TILESIZE, and start moving in that direction. In walking state, reduce the countdown, and when it hits zero, stop moving and switch back to idle state.

thanks for all this, will probably pick it up in the morning :) cheers

(+1)

While googling for some ideas to make a pokemon database, I came across this. And while I mostly understand arrays and such, I can't fully grasp them yet. Thank you for this code, I plan to build off it, or start from scratch after learning from yours to be used commercially. Your work looks fantastic. Thanks Yal.

(+1)

Thank you for the patronage and kind words! I'll be looking forward to hearing about great things from you once you get your game out there :)

(+1)

Every time I look you up there's a top-of-the-line asset to be found. I would have bought this day one had I known.

You can't keep getting away with this!

(+2)

Thanks for the kind words! ^__^

I'm slowly but surely running out of things I haven't done already, but I'll keep making new asset packs until GM is perfect :P

Deleted 135 days ago

Considering the sale ended 12 days ago, I feel like it would be unfair to everyone that has bought it in the meantime if I made a temporary discount just for you, even if you happen to be one of my most loyal customers. The monster collector engine release sale also lasted 1 week, instead of just 3 days which I usually use for release sales. There will be more Itchio sales, and I always join in when there is one, so just check back regularly and chances are you'll catch the next sale. (Itchio sends out e-mail notifications if you've got those turned on - I think it's possible to turn it up to max to get notifications whenever anyone you follow posts a new project, sale or a devlog on top of just the big site-wide announcements, too... if you do that, you'll never miss a sale again!)

You should also probably take some time to actually make a game with all those engines you bought too... Making 5 games at once tends to get pretty exhausting. :P

(+1)

Bought it right away, this asset is absolutely insane and safes so much time with the backbone for this kind of RPGs.

Is there a storage system (can't take a look at the code before tomorrow) included?

Keep up the good work, you are really one of my favourite GM devs.

(+2)

Thanks, glad you like it! ^__^

Monster storage system basically uses the gen3 system where you pick up monsters and move them around between boxes and the party. (Monsters caught when your party is full automatically is sent to storage). There's no item storage system, but you have infinite inventory space so that shouldn't matter (it's just more convenient now when you instantly have access to every item you own anyway).

(+1)

Thank you, missed that shrine as I played the demo. Its even more impressive now, the storage system works like a charm.

(you should mention that in the description, as this is a killer feature)

Good luck with your sales, its totally worth the price.

I'm pretty sure it's already in the description, but I guess I could give it more emphasis... the storage system wasn't all that much work to add in (most of the effort went into coding the menu for operating it), since the database is so optimized... but I guess that doesn't mean I can't tout it as a feature :P

(+2)

Ah! Another submission from you. Well done Yal!

(+1)

Thanks! ^__^ The "Dexit" debacle (and overall decline in quality in recent Pokémon games) made me think "meh, I could do this better"... so I figured I might as well actually do it :P

I probably didn't actually do it better, but this is just a small example project showing how it's done... most of the bulk of the work was setting up an easy-to-use database system, from my experiences that's the hardest part for an inexperienced user to get right, and if you get it wrong it can make it a real pain to work on the project later on. (Got some first-hand experience with that...)