Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics

Springroll Games

A member registered Mar 07, 2018 · View creator page →

Creator of

Recent community posts

Which version number do you want specifically? The first beta version or the first full release version?

If you look in the character init scripts, the "sprite_scale" variable is set to 2 by default. This is because all the characters in base PFE are scaled up 2x. If you change it to 1, then the sprites won't be upscaled and you'll have more pixels to work with. Also, make sure the camera is zoomed out enough.

In "game_settings", change the macro "player_hud_type" to "HUD_TYPE.legacy"

I've removed older intermediate versions from the page to reduce clutter. If you need to download an older version for whatever reason, send a message and I'll add it back to the page 👍

This is the minimum code required to add an option to the menu. You'll still need to add code that checks the setting, as well as modifying "match_settings_save", "match_settings_load", and "match_settings_default" so replays work as intended.

You'll want to

1. Add a new variable to the _settings struct in game_settings for the new option.

2. Add the name of the new option to match_settings_choices in obj_css_ui: Room Start.

3. Change the Step and Draw End events of obj_css_ui to handle the new option.

Once you've added all the rules to the menu, you can decide where to put the code that checks the match settings and applies the rule. That'll probably be in game_object_setup.

What part in particular are you stuck on?

Add these lines after Line 5 of obj_fspec_shadow_flare_ball: User Event 0

if (!instance_exists(_target) || _target == noone)

Depending on the version you're using, you may not have (or need to set) that macro.

Take a look at how the existing EX specials work. For example, the script "fspec_afterburner_kick".

The projectile itself needs to either have an overlay sprite and use the default draw event, or have a custom draw event.
Also - do you have a Discord account? The Platform Fighter Engine Discord server is a lot more active than the forums.

You would need to change the "css_ui_create_player" script.

The area the cursor is restricted to is set in obj_css_ui: Step: Line 142

Put this code at the start of custom_limit_gauge:

if (!variable_struct_exists(custom_script_struct, "limit_gauge"))
    custom_script_struct.limit_gauge = 0;

And this code at line 8 of hud_limit_gauge:

if (!variable_struct_exists(_player.custom_script_struct, "limit_gauge"))
    _player.custom_script_struct.limit_gauge = 0;

You only need to purchase it once, and then you can share it with other people in your company.

Ah, if the sprites are VERY large, it could be a texture page related issue (the game has to downsize them to fit them on the page). Either way, glad you found a solution!

1. Add this code to the "custom scripts" section of the character init script you want to give a limit gauge:

callback_add(callback_passive, limit_gauge_passive, CALLBACK_TYPE.permanent);
callback_add(callback_hud, limit_gauge_hud, CALLBACK_TYPE.permanent);
2. Change the player_hud_type macro to HUD_TYPE.legacy (so you can see the gauge on the HUD)
3. Change the character_static_attacks macro to false
4. Make sure the script "limit_gauge_passive" is spelled correctly (looks like I a made a typo in 1.3.2 that wasn't in 1.3.1, so double check that)

I'm not sure exactly what you did, I tried adding a grid sprite to a stage and it shows up pixel-perfect

When you're adding the sprite to the room, are you leaving it at 1x scale, or scaling it down?

Do you have camera zoom enabled? If the camera zooms out, sprites will look more pixelated.
On the default settings (without camera zoom), sprites should look exactly the same in the editor as they do in-game.

For saving and loading, you could add a "coins" value and "locked_characters" value to the "stats_load" scripts, which will allow you to use the "stats_*" functions. You can also just use default methods for saving and loading data (look up GMS2 tutorials).
In order to handle locking/unlocking characters, you'd probably want "obj_css_zone" to check the "locked_characters" value to see if its character is locked or not.

That's the correct way of doing it.
The automatic cursor adding is in obj_mis_system > Begin Step, it's not really set up for mouse so you'd have to do some work. You can detect when the mouse moves by seeing if the mouse_x or mouse_y coordinates change, but it might be better to check for mouse clicks so it won't add a cursor if your mouse moves just a small amount.

I'm not sure what you mean by "falling through the wall". Do you want the player to slide down the wall slowly or something? You could add code to the Aerial state or maybe modify the Wall Cling state (and enable wall clinging for every character).

There are 2 types of wall jumping - "jump_press" and "stick_flick". You can set which one is used for the whole game in "game_settings". The code in the character init scripts does not need to be changed unless you want to adjust the variables.

Right now the AI is fairly standard, it uses a lot of random numbers and targets the nearest opponent. Doesn't have any limiters on it so it can do frame perfect reactions that humans can't.
You can see all of the code in the CPU_Input script, as well as the character-specific AI in the cpu_script* scripts.

It's possible to add more inputs, but a little complicated. You need to make sure it gets added for controller & keyboard, and have it on the custom controls UI.

I looked up a few videos of Jump Ultimate Stars and I think it would be possible to make in PFE. You can try out the free 0.7.1 version of the engine first, it doesn't have netcode but you can make sure that the game feels right before purchasing the full engine.

You can use GMS2's "local asset package" functionality to move a bunch of assets from one project to another.

It's definitely possible if you know how to make those mechanics in GMS2 already.
The built-in collisions probably aren't the best for that kind of gameplay (they're not very physics-based).
You can try out ideas in the free 0.7.1 version first to see if things work out the way you want.

Most of the code should work on the HTML export, the main issue would be the shaders.

Glad to hear that it worked!

Hmm yeah, I would give that a try.

What platform are you trying to run it on? Windows?

1. Did you make any changes to the engine?
2. If you scroll up in the console when compiling, are there any other shader errors listed? (syntax errors maybe?)

No, the demo is just an executable file that cannot be modified. Only the .yyz files can be opened in GMS2.

Everything in the menus is tied to a player slot. Since there are no in-game mouse controls (yet), there are no menu mouse controls because the game wouldn't know which player is using the mouse and which controller/keyboard they were planning to use in-game.

Right now there's only the "How to create an attack" youtube video and short bullet point tutorials on the discord. The full documentation will be coming later, along with more written tutorials.

You can play with up to 8 players locally provided you have enough controllers. Only 1 player can be on the keyboard.

Hey! Thanks for checking out our engine.

All of the things you mentioned are technically possible to add if you have GameMaker Studio 2. The project file (.yyz) is available for download for free on the page. 

However, it might not be the best idea to use the engine if you are looking to make a traditional fighting game. You'd have to get rid of a lot of the "smash bros specific" code for it to work, and it might be more difficult than just coding a traditional fighting game from scratch.