I Wanna Community

Fangames => User-Made Creations => Engines => Topic started by: YoYoYoDude1 on August 23, 2015, 12:39:54 PM

Title: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on August 23, 2015, 12:39:54 PM
Hey everyone!
So while GameMaker 8.1 is no longer officially available and GM Studio is a nice newer, free option for making fangames, I felt like I should make an engine with most of the features contained within current GM 8.1 engines and share it with people that want to give GM Studio a shot.

If you're new to fangame development, check out this awesome tutorial made by Klazen! https://klazen.com/IWBTG/tutorial/dev_tutorial.html

About

Features

Important notes

Download
I Wanna Be The Studio Engine YoYoYo Edition v1.51 (https://www.mediafire.com/download/2ppuenak6f15v4p)

GitHub repository (Main engine) (httpss://github.com/YoYoYoDude/YoYoYo_Engine)
GitHub repository (Alternate lite version with only core features) (httpss://github.com/YoYoYoDude/YoYoYo_Engine_Lite)

Changelog:
Code: [Select]
v1.51 (05/21/17):
-Changed ds_map_write/read back to json_encode/decode
-Changed lite version to be the same as the base engine except with less extra resources

v1.50 (01/04/17):
-Added global.playerAnimationFix option which fixes the weird player animation inconsistencies when moving around (disabled by default)
-Added debug mode indicator to the title screen when debug mode is active
-Changed default death music mode to no music
-Tweaked main menu cursor so that it stays in the same place after switching between different menus
-Added support for DirectInput gamepads
-Added separate debug variables for global.noDeath and global.infJump called global.debugNoDeath and global.debugInfJump
-Tweaked platform and slip block logic to fix some minor issues

v1.42 (11/29/16):
-Changed global.saveRoom to use room names instead of room indexes
-Reverted json_encode/decode back to ds_map_write/read (json_encode/decode causes some issues when saving booleans)
-Removed button text from the start screen
-Disabled precise collision checking for sprites that don't need it

v1.41 (10/13/16):
-Updated project to GM Studio v1.4.1763
-Added an option to fix the behavior when tapping left/right for less than 1 frame so that the player moves for 1 frame (by default he doesn't move when this happens)
-Changed save files to use json_encode/json_decode instead of ds_map_write/ds_map_read to prevent memory leaks
-Added a check to objWorld to make sure more than one never exists

v1.40 (09/07/16):
-Now includes a lighter version of the engine which simplifies the engine and cuts out extra resources/features
-Changed some menu arrays/variables to be more consistent
-Fixed more minor issues

v1.32 (08/23/16):
-Added an option to change the number of secret/boss items for the game to use (set to 8 by default)
-Added an option to autosave secret items when they're grabbed instead of having to save afterward (disabled by default)
-Changed some view_wview/view_hview to view_wport/view_hport to improve death text/pause screen behavior when changing the camera zoom
-Changed secret/boss item arrays to start at 0 instead of 1 (by default they go 0-7 instead of 1-8)
-Fixed a few minor issues

v1.31 (04/30/16):
-Added global option for whether to use ds_map_secure functions to save (disabled by default)

v1.30 (04/23/16):
-Added native controller support with automatic switching between keyboard/controller (Thanks chalenged for the help!)
-Added slopes (supports any shape)
-Added a warning prompt before overwriting a save on the difficulty select menu
-Added objOutsideRoomChanger which allows for smooth warp room transitions
-Added slight title screen text animation
-More minor tweaks/fixes

v1.22 (02/08/15):
-Rewrote save system to use maps instead of lists (they are now stored using ds_map_secure functions to improve save security and prevent transferring between PCs)
-Added moving platforms that don't bounce off of walls
-Added scrDrawTextOutline for outlined text on the debug info overlay (Thanks Archee for the suggestion!)
-Tweaked main menu layout
-Changed a bunch of 0/1 to false/true to improve code readability
-Removed/tweaked global.player_xscale, global.player_djump, global.savePlayerXScale, and global.debugOverlayColor to simplify code logic
-Other minor tweaks/fixes

v1.21 (11/20/15):
-Added vsync option
-Added stopping death sound when pressing "R"
-Some minor tweaks

v1.20 (11/9/15):
-Rewrote save system to use lists for saving instead of bytes
-Rewrote config system to use ini files
-Changed in-game timer to use delta_time for better accuracy
-Added scrStopMusic() to more easily stop current music
-Tweaked save system to not always load data from the file when pressing "R" to improve performance
-A bunch of minor tweaks/fixes

v1.15 (10/21/15):
-Fixed some buggy platform behavior when gravity is flipped

v1.14 (10/18/15):
-Tweaked vines to fix weird behavior when directly above/below a block with a vine on it
-Tweaked vines to fix getting stuck while on the ground
-Added saving the player's xscale to the save file
-Changed default jump refresher refresh time to 100
-Changed objKillerBlock to be visible
-Changed the way blood snaps to walls to look better (Thanks to patrickgh3!)
-Added "scrSetPlayerMask" which sets the player's mask_index according to the current gravity
-Tweaked scripts for better readability
-Other minor tweaks/fixes

v1.13 (10/4/15):
-Enabled being able to stretch the game window (Window size can be reset to the default by pressing F5)
-Changed screen smoothing from always changing when toggling fullscreen into an option to turn it off/on whenever (using the options menu or F3 to toggle)
-Tweaked the player draw to not round the player's position
-Renamed "scrInitializeVariables" to "scrInitializeGlobals"
-Renamed "scrConfigVariables" to "scrSetGlobalOptions"
-Organized scripts into folders
-Tweaked "scrPlayerJump" to give the player a djump if touching objWater3
-Added "refreshTime" variable to jump refreshers to customize how long until you can use them again
-Removed idle swaying movement for jump refreshers
-Changed save points to have a depth of 1
-Some other minor changes

v1.12 (9/29/15):
-Fixed a small saving exploit
-Added global.autosave variable for easily doing autosaves when the player is created
-Added objWarpAutosaveNext which goes to the next room and autosaves
-Added being able to use -2 in scrGetMusic in case you don't want it to affect a room's music at all (useful for bosses where you want other objects to control music)
-Changed player draw code to include image_xscale and image_yscale in case they're changed

v1.11 (9/22/15):
-Moved some pieces of code to scripts (scrFlipGrav, scrRestartGame, scrSetFullscreen, scrToggleMusic)
-Renamed scrGetControl to scrGetKeybind
-Disabled showing the splash screen by default
-Changed the bow so that it doesn't lag behind the player by a frame (there's a setting in scrConfigVariables to make it delay if you want it to)

v1.10 (9/20/15):
-Updated collision code to work better with the new version of GM Studio (v1.4.1657)
-Added showing current binds in controls menu
-Fixed another possible case of saving in a wall
-Changed key rebinding so that if you bind to a shift key, it still works for both shift keys
-Changed platform objects to have a depth of 1
-Added more comments to scripts

v1.03 (9/12/15):
-Fixed part of the difficulty select not using global.menuSound
-Fixed another rare bug involving music variables not getting initialized properly

v1.02 (9/8/15):
-Enlarged the save point hitbox so touch saves work on edges of blocks
-Fixed a very rare bug involving music variables not getting initialized properly

v1.01 (9/6/15):
-Fixed warp room mode for file difficulty select not working properly
-Tweaked game muting/unmuting using Ctrl+M to work properly when using objPlayMusic

v1.0 (9/4/15):
-Added debug overlay (toggle with backspace)
-Updated objSign to display text instead of using show_message
-Added configurable variable for which sound to use for navigating the menu
-Added volume control to the options menu
-Added randomize() when the game is started to start with a random seed for RNG (Studio starts with the same initial seed every time you run the game)
-Added scrPlayMusic script to make it easier to change songs
-Added objPlayMusic for people who don't want to use the scrGetMusic method of playing music
-Added example Miku avoidance (Thanks to Stinkycheeseone890 for designing it!)
-Some other minor changes/fixes

v0.9 (9/1/15):
-Added main menu system based off the KS engine that has options and rebindable controls
-Added saving fullscreen mode in the config file

v0.8 (8/31/15):
-Fixed the player sometimes getting stuck on the sides of objSlideBlocks
-Fixed game not restarting properly when pressing R and F2 on the same frame
-Fixed texture interpolation setting bugging out when pressing F2+F4 on the same frame
-Changed it so that you can't switch between fullscreen on/off when the game is paused (this caused the pause surface to be lost)
-Added a variable to customize the speed of objSmoothCamera
-Changed default case for scrGetMusic to play nothing instead of musGuyRock
-Changed font naming
-Fixed the player occasionally drawing abnormally
-Set debug mode off by default
-Added a variable for whether or not to show the debug player visual changes when inf jump/god mode are toggled
-Some other minor changes/fixes

v0.7 (8/29/15):
-Implemented save verification system with MD5 hash checks to make saves harder to hack

v0.65 (8/27/15):
-Fixed a bug where right vines wouldn't always work properly

v0.6 (8/26/15):
-Implemented pause screen that shows deaths/time
-Implemented volume control in the pause menu (Updated config file to save the volume level)
-Made objGameClear autosave when touched
-Optimized objMovingPlatform performance
-Merged objMusicFade into objWorld
-Fixed the player moving when standing still for a long time on objSlipBlock
-Fixed a case where the player could save inside of a wall

v0.5 (8/23/15):
-Initial release
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: lawatson on August 23, 2015, 01:24:44 PM
based codegod appears with yet another treat

Thanks for taking time to make this engine, I'll totally use it when I end up finally defecting to studio.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: BaronBlade on August 23, 2015, 11:16:56 PM
Of course this happens the day after I start using the KS engine :BibleThump:
I'm definitely going to use this for most of my games, though!
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Wolsk on August 24, 2015, 12:16:53 AM
(https://i.imgur.com/c1EIljX.png)
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Archee on August 24, 2015, 02:15:39 PM
Hey, you've made a massive work. That's really awesome.
Do you need any help, by the way, to create the engine faster? I've made a simple pause (https://i.imgur.com/gUbfqV4.png), it works pretty well, I think. If you like it, I can post a diff with version 0.5 here. :)

Edit: found a bug, when you can't complete the game on impossible mode, because objGameEnd doesn't save you and there's no savepoints in the end room.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on August 25, 2015, 03:31:15 PM
Hey, you've made a massive work. That's really awesome.
Do you need any help, by the way, to create the engine faster? I've made a simple pause (https://i.imgur.com/gUbfqV4.png), it works pretty well, I think. If you like it, I can post a diff with version 0.5 here. :)

Edit: found a bug, when you can't complete the game on impossible mode, because objGameEnd doesn't save you and there's no savepoints in the end room.
Oh yeah sure, I'd like to see how you implemented the pausing. I tried a couple different methods but nothing worked as well as I wanted it to.
And thanks for letting me know about the objGameEnd thing. I'll just make it so that it autosaves you when you touch it.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Archee on August 25, 2015, 06:22:30 PM
Well, there's too many shitty changes I've made, so I'm just going to explain how I've made it insteat of posting it here.

Changed code is this:
Code: [Select]
if (keyboard_check_pressed(global.pausebutton) && !global.noPause) {
    global.pause = !global.pause;
    if( global.pause ) {
        instance_deactivate_all(true);
        surface_copy(global.pause_surf,0,0,application_surface);
    } else {
        instance_activate_all();
    }
}

So, I'm making a pause surface at the start of the game in variable initialization script and added a clear memory script to delete it if you press F2, but it'd be much better to not restart the game and ust move to the title again, because it does the same work all over again if you restart game. It'd be harder to make, I think, I didn't look into the whole code. Also, you need to add a check for a pause to not to increment time while paused. Oh, and I almost forgot to post draw GUI code of objWorld:
Code: [Select]
var str, off, th, tm, ts;

if(global.pause) {
    draw_clear(c_black);
    draw_surface_ext(global.pause_surf,0,0,1,1,0,c_white,0.5);
    draw_set_color(c_white); //Font color
    th = floor(global.time/(60*60));
    tm = floor((global.time/60) mod 60);
    ts = floor(global.time mod 60);
    str = "Time: "+string(th)+":"+string(tm)+":"+string(ts);
    off = view_hview - string_height(str)-8;
    draw_text(8+string_width(str)/2,off,str);
    str = "Deaths: " + string(global.death);
    off = off - string_height(str)-8;
    draw_text(8+string_width(str)/2,off,str);
   
    str = "PAUSE";
    draw_text(view_wview/2,view_hview/2,str);
}

Offsets maybe broken a bit, I've expected it to be drawn from a top-left corner and not from a center.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on August 27, 2015, 12:10:19 AM
Well, there's too many shitty changes I've made, so I'm just going to explain how I've made it insteat of posting it here.

Changed code is this:
Code: [Select]
if (keyboard_check_pressed(global.pausebutton) && !global.noPause) {
    global.pause = !global.pause;
    if( global.pause ) {
        instance_deactivate_all(true);
        surface_copy(global.pause_surf,0,0,application_surface);
    } else {
        instance_activate_all();
    }
}
Oh awesome, thanks! I didn't realize you could copy the application surface like that. That's a pretty good way of doing the pausing.
Anyway, I just updated the original post with version 0.6 of the engine that has the pause screen implemented and a very other misc fixes/changes.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Archee on August 27, 2015, 04:33:23 AM
Sometimes vines are not working (the right one), I wasn't able to reproduce it again. I guess if this is a mistake that causes the bug:
Code: [Select]
if (distance_to_object(objWalljumpL) < 2 && place_free(x,y+(global.grav)))
...
if (distance_to_object(objWalljumpR) == 1 && place_free(x,y+(global.grav)))

Edit: I got it, it's because of slip blocks which make player coordinates being changed to something like N + 0.5 exactly, works with everything else. Changing == 1 to < 2 seems fixing it.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on August 27, 2015, 07:51:36 PM
Sometimes vines are not working (the right one), I wasn't able to reproduce it again. I guess if this is a mistake that causes the bug:
Code: [Select]
if (distance_to_object(objWalljumpL) < 2 && place_free(x,y+(global.grav)))
...
if (distance_to_object(objWalljumpR) == 1 && place_free(x,y+(global.grav)))

Edit: I got it, it's because of slip blocks which make player coordinates being changed to something like N + 0.5 exactly, works with everything else. Changing == 1 to < 2 seems fixing it.
Based sub-pixels causing another bug. Thanks for letting me know, just uploaded a fix.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Anon70000 on August 28, 2015, 06:21:45 AM
  • Muting sound effects on reset
if (keyboard_check_pressed(vk_f2))
{   
    audio_stop_all();
    game_restart();
}

?
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: pieceofcheese87 on August 28, 2015, 07:19:19 AM
Pretty sure he means when you press R, not F2.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on August 28, 2015, 03:01:29 PM
Yeah I meant restarting when pressing R.
The issue is that there's no simple way to stop all of the sound effects without also stopping the music and having it restart. There's a feature in Studio that could probably help with this (audio groups), but this feature is only available in the Professional Version so I don't want to use it in this engine.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on August 29, 2015, 08:08:24 PM
Okay, I just uploaded v0.7 of the engine with a new feature I've been wanting to implement.
There's now a built-in save verification system that uses MD5 hashes to make sure the save being loaded hasn't been tampered or modified outside of the game. This should make save hacking in games made with this engine reasonably more difficult.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: lawatson on August 30, 2015, 03:27:50 AM
damn that's sick.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Archee on August 30, 2015, 05:59:53 AM
You can add environment_get_variable("COMPUTERNAME") to the checksum as an option to prevent sharing save files. :Kappa:
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on September 01, 2015, 01:08:57 AM
Alright, I just uploaded v0.8 of the engine with a lot of minor changes/fixes. Getting closer to the engine being fully complete!
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: lawatson on September 01, 2015, 01:24:06 AM
Awesome shit. Can't wait for the full product.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Denferok on September 01, 2015, 03:13:40 AM
Looking forward to it!
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on September 02, 2015, 02:40:55 AM
Ok, another engine update! (I'm making progress on this faster than I thought I would. :Kappa:)
I did a title screen overhaul with a completely new menu based off of the KS engine that has options and rebindable controls.

One thing I'm not sure for the menu design is whether or not to use the player's set controls or the default controls (Shift,Z,Up,Down,Left,Right,etc.) for controlling the menus. Right now I have it coded to always use the default controls for the menus, even if the player changed them for the game itself. This is so that you can always navigate the menus even if you screw up your controls binds somehow. Let me know if you guys think this is the best way to handle it or if the menus should use the player's set controls.
I also plan to hopefully add mouse support to the menus for people who prefer that.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Katz on September 04, 2015, 01:22:40 AM
There seems to be a bug whereas whenever you exit the fullscreen mode, the view(s) become smaller than the standard 800x608 view(s). Just felt I should address this.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on September 04, 2015, 04:57:45 AM
Just posted another engine update up to v1.0 with the last few main features and fixes I wanted to put in such as having a debug overlay and a sample avoidance (made by Stinkycheeseone890!).
At this point I can say the engine is pretty much complete. There will probably be some minor updates and bug fixes in the future, but I'm probably gonna be done working on this for a little while unless there are problems people find that I need to fix.

There seems to be a bug whereas whenever you exit the fullscreen mode, the view(s) become smaller than the standard 800x608 view(s). Just felt I should address this.
Can you get a screenshot of this? I've never seen this happen before.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: lawatson on September 04, 2015, 06:54:41 AM
Goddamn, v1.0 is here. I'll just confirm the differences between studio and then maybe I'll install it and take your engine for a test drive. Awesome work, you really are a good programmer.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Denferok on September 04, 2015, 12:58:00 PM
That was fast!
Thanks for the great engine yoyo, will definitely recommend
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Katz on September 04, 2015, 01:59:23 PM
Can you get a screenshot of this? I've never seen this happen before.

(httpss://i.gyazo.com/3c38cb592a99f2f390447287b993b0de.png)

(Mind you, this may have only happened because I have installed a windows partition into a Macbook, henceforth seeing these bugs on regular pc's isn't common to begin with. Just to keep in mind + not to get overworked for).
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on September 04, 2015, 06:41:33 PM
Can you get a screenshot of this? I've never seen this happen before.
(Mind you, this may have only happened because I have installed a windows partition into a Macbook, henceforth seeing these bugs on regular pc's isn't common to begin with. Just to keep in mind + not to get overworked for).
I'm not really sure what the issue is, the game view looks fine to me.
Is the game window itself getting smaller or  something? If so it's probably a Windows or GameMaker Studio issue involved with window scaling that I can't really do anything about.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Junior Nintendista on September 06, 2015, 09:02:33 PM
You're quick with the updates, it's still a great engine, I recommend.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: trollathon on September 08, 2015, 09:12:34 PM
Awesome work, but is there a way to transfer levels from older version of the engine into the newer one?
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Kyir on September 09, 2015, 09:54:21 AM
You could either export the rooms/objects via GMS and then import them to the next version or just copy the relevant changes in the code to the older world. The first way requires that you delete a bunch of duplicates, while the latter is just time consuming.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on September 09, 2015, 05:32:07 PM
Awesome work, but is there a way to transfer levels from older version of the engine into the newer one?
Yeah you can puts things you made in the older version into the newer version by dragging and dropping the resource files you made from your original project into the newer engine or right clicking in the resources folders in the newer engine and using "Add Existing".
This can be pretty tedious but there's not an easier way as far as I'm aware.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Derf on September 16, 2015, 11:23:44 AM
You format so neatly Yo, it's nice to see (it really is the little things that impress me). It's a solid engine. It'll take a while for me to become acquainted with the new way things are done/initilised but I'm looking forward to using it in the future.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on September 18, 2015, 12:57:19 AM
Ok, just a heads up for anyone using this engine on the newest version of GM Studio (1.4.1657).
I've tried downloading the newest version to ensure that the engine is still working correctly but I can't use it quite yet as YoYo Games are apparently having server issues at the moment. As soon as I can use Studio again I'll be checking everything in the engine myself to make sure it's in good shape. Let me know if there are any major issues in the meantime.

Also another heads up for anyone looking to switch to Studio: they're currently having a Humble Weekly Bundle at httpss://www.humblebundle.com/weekly where you can get GM Studio Pro for only $6.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: bananaguy12 on September 18, 2015, 03:32:25 AM
Ok, just a heads up for anyone using this engine on the newest version of GM Studio (1.4.1657).
I've tried downloading the newest version to ensure that the engine is still working correctly but I can't use it quite yet as YoYo Games are apparently having server issues at the moment. As soon as I can use Studio again I'll be checking everything in the engine myself to make sure it's in good shape. Let me know if there are any major issues in the meantime.

Also another heads up for anyone looking to switch to Studio: they're currently having a Humble Weekly Bundle at httpss://www.humblebundle.com/weekly where you can get GM Studio Pro for only $6.

I bought this bundle but it keeps telling me I have a bad license so I'm assuming this is because of  the issues atm? I can't actually license studio pro or log in even if I use the license from the bundle.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on September 18, 2015, 03:46:13 AM
I bought this bundle but it keeps telling me I have a bad license so I'm assuming this is because of  the issues atm? I can't actually license studio pro or log in even if I use the license from the bundle.
Yeah their servers are still not up as far as I can tell. I'd just wait a bit and try it again later.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on September 20, 2015, 07:43:41 AM
Just put up another small update. Luckily, everything seems to be working fine in the new version of Studio. They changed collision checking slightly so this engine update gets rid of some workarounds I had to use for the older version of Studio.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on October 04, 2015, 06:34:16 AM
Alright, so I've put up a few more small updates to the engine since my last post.
These have been mainly for polishing stuff and adding a few minor features (such as providing an easy way to autosave) while making the engine generally easier to use.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on October 18, 2015, 05:25:58 AM
Ok, just put up another update to the engine. One of the main changes is that I tweaked the vines to not have glitchy behavior when you're standing on the floor or when you're directly above/below a block with a vine on it. This should work completely correctly, but let me know if there are any issues! There are a lot of other more minor fixes/tweaks to improve the engine overall.

Also, I'll probably be adding a DotKid mode to the engine soon since it was added to Jtool.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Habluka on October 19, 2015, 04:04:02 AM
One of the main changes is that I tweaked the vines to not have glitchy behavior when you're standing on the floor or when you're directly above/below a block with a vine on it.

Does this mean they won't work like they do in normal engines?
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on October 19, 2015, 05:34:08 AM
One of the main changes is that I tweaked the vines to not have glitchy behavior when you're standing on the floor or when you're directly above/below a block with a vine on it.

Does this mean they won't work like they do in normal engines?
No, in normal circumstances they work the same. This tweak just makes it so they don't affect the player when you touch them from above or below a block like they do in other engines. This fixes getting stuck when standing on top of a block over a vine and falling really quickly when touching a vine from the bottom of a block.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on November 09, 2015, 12:17:44 AM
Just threw up another engine update with a bunch of tweaks/fixes.
There's a redone save system, changes to how the in-game timer works, and a lot of other improvements to make the engine better and easier to use.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Archee on January 04, 2016, 04:09:34 AM
Text is absolutely unreadeable sometimes, so I've made a simple draw_text_overlay script to make it better:
Code: [Select]
///draw_text_outline(x,y,text,textcolor,outlinecolor)

var _x;
var _y;
var text;
var color;
var outlinecolor;
_x = argument0;
_y = argument1;
text = argument2;
color = argument3;
outlinecolor = argument4;

draw_set_color(outlinecolor);
draw_text(_x-1,_y+1,text);
draw_text(_x-1,_y,text);
draw_text(_x-1,_y-1,text);
draw_text(_x+1,_y+1,text);
draw_text(_x+1,_y,text);
draw_text(_x+1,_y-1,text);
draw_text(_x,_y+1,text);
draw_text(_x,_y-1,text);
draw_set_color(color);
draw_text(_x,_y,text);
This is how it looks in game in debug overlay:
(https://i.imgur.com/3qkt8Vw.png)

Would be pretty nice to see it in engine if you're going to update it.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: zaphod77 on January 11, 2016, 03:55:55 PM
I just realized something.

GS Studio Pro can export to CONSOLES. (playstation 3/4/Vita, Xbox One,)

So all those people who were whining about IWBTG for consoles...

You still have to copyright clear the assets, (i know this removes all the fun) but with this engine, and some effort with controls, it should actually be possible to make I Wanna Be the Console Game. :)
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Kyir on January 11, 2016, 08:14:25 PM
I didn't realize anyone was whining about that.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: zaphod77 on January 12, 2016, 01:58:56 AM
Well, enough people asked to piss off kayin, so...

https://kayin.moe/iwbtg/forums/index.php?topic=1604.0

Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: just_another_Guy on January 12, 2016, 03:43:55 AM
Quote
Well, enough people asked to piss off kayin, so...

https://kayin.moe/iwbtg/forums/index.php?topic=1604.0


That was funny to read.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Kyir on January 12, 2016, 10:19:34 AM
That was about 8 years ago though. You can already play fangames with controllers so there's not a huge point to getting them on consoles.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: zaphod77 on January 14, 2016, 05:17:51 AM
I never have trusted key profilers, and have always experienced lag when i've used one.

It's hard enough dealing worth lcd lag when trying to thread the needle.  add controller conversion lag to that...

I'm fine with playing games on pc.  but thought someone else might wanna try it.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on February 09, 2016, 01:36:07 AM
Text is absolutely unreadeable sometimes, so I've made a simple draw_text_overlay script to make it better:

Would be pretty nice to see it in engine if you're going to update it.

Sorry for the late reply, I took a little bit of a break from working on the engine but I'm updating it again now.
Thanks for the suggestion! I just put up an update to the engine with this in it and a bunch of other small improvements.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: copy on February 16, 2016, 10:59:45 PM
I found the code very useful to understand the jump physics of IWBTG, since I'm not using an engine. Thanks!
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on April 23, 2016, 07:18:20 PM
Hey guys, so I just put up a pretty sizeable update to the engine with a few new features such as native controller support and slopes.
As always, let me know if there's any bugs involving the new features. I thoroughly tested everything so I'm almost 100% sure they work correctly, but they're a bit complicated so it's always possible that I missed something.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: pieceofcheese87 on April 24, 2016, 12:12:12 AM
yay slopes
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Habluka on April 24, 2016, 12:25:30 AM
So, where are the ladders?
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Enoymas on June 03, 2016, 11:30:04 AM
Noticed something. When riding on a rising platform, you will continue to go through the block above until you get stuck. As far as i know, the kid must fall from the platform instead of going through blocks isn't it?
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on June 03, 2016, 01:12:34 PM
Noticed something. When riding on a rising platform, you will continue to go through the block above until you get stuck. As far as i know, the kid must fall from the platform instead of going through blocks isn't it?

Standard fangame engine behavior is for the player to get stuck in blocks if a platform pushes him into one.
This can be easily tweaked if you change the object order to have the platform objects above the block objects like this (https://puu.sh/pfs9H/ccac2ac3a0.png). However, this might come with other possible bugs as I haven't tested it thoroughly.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Templarfreak on June 11, 2016, 06:29:37 PM
I'm having an issue that's probably related to not knowing how GMS works and not to the engine itself, but I've been trying for like 2 days now to figure this out with no luck. When I try to compile the game, I get a window pop up wanting me to open a file. I have no idea what file it wants me to open, and no tutorials or the manual for setting up GMS say anything about this, so I click cancel. I then get an error box saying "Compile Failed - Please check the Compile window for any additional information" but this is all that's in Compile window:

(click to show/hide)

I've tried Google Searching the issue the best I could but everything is either 3+ years old or completely unrelated to my issue and this is the only place I can think of to ask for help. :<
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: L4Vo5 on June 11, 2016, 07:16:36 PM
What does the message asking you to open a file say?
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Templarfreak on June 11, 2016, 07:47:56 PM
This is all that is shown in the "Open" dialog: https://i.imgur.com/mL6eibP.png

EDIT:

I think it has something to do with GMS's Asset Compiler because if I do select a file, doesn't matter what file, I get this error box: https://i.imgur.com/4VdTrEY.png
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: L4Vo5 on June 12, 2016, 01:40:31 AM
I think it has something to do with GMS's Asset Compiler because if I do select a file, doesn't matter what file, I get this error box: https://i.imgur.com/4VdTrEY.png
Weird. I also get that message sometimes (i don't know if it says exactly the same or not), but i'm never asked to open a file, and resetting GM solves it perfectly.
Do you get the same error if you try to compile the game (for distribution)?
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Templarfreak on June 12, 2016, 04:52:36 AM
Do you get the same error if you try to compile the game (for distribution)?

Yep, it still wants me to open a file and gives the same error.

EDIT: I even reinstalled GameMaker, once just uninstalling and the second time a completely fresh install.

EDIT2: If I select my project file, I get some progress. This is the log from that:

(click to show/hide)

The crash dialog for AssetCompiler says Illegal characters in path, but I'm not sure which characters would be that. I've tried making a new folders with no special characters at all and I still get that.
(C:\GameMaker\Projects\IWBTEngine.gmx\ and C:\GameMaker\Projects\IWBTEngine\)

(click to show/hide)

Sorry I have to pollute this thread with this, but the GameMaker forums are down right now and I have no idea where else I could get help debugging this.

EDIT3: I figured out what the issue was. "/o="C:\\gm_ttt_11167\gm_ttt_77535"" there are two slashes, C:\\. This is because in preferences the Temp Directory was set to C:\. I'm not sure if C:\ is default or not, but I'd have to imagine not since it causes this error, so I must have set it to that.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Klaty on June 19, 2016, 07:15:47 AM
To set what music you want a room to play, change the "scrGetMusic" script. You can also place an objPlayMusic object in the room and set the variable "BGM" in its creation code. If you want something to stop music, use "scrStopMusic()".

I assume I could also use a sound engine like FMod instead, correct? (I'm sorry, I'm still new to this ^-^)
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Starz0r on June 20, 2016, 06:47:37 PM
To set what music you want a room to play, change the "scrGetMusic" script. You can also place an objPlayMusic object in the room and set the variable "BGM" in its creation code. If you want something to stop music, use "scrStopMusic()".

I assume I could also use a sound engine like FMod instead, correct? (I'm sorry, I'm still new to this ^-^)

There is nothing wrong with the built-in audio engine that comes with GameMaker: Studio. In the past with GameMaker 8.1, people had to use FMOD to decrease loading times, and get more functionally like Pausing and Playing music, now it's all built-in to the default engine.

You can still choose to use FMOD but at this point you'd have to be doing something really interesting with the music to make use of it at this point.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Klaty on June 21, 2016, 12:04:59 PM
There is nothing wrong with the built-in audio engine that comes with GameMaker: Studio. In the past with GameMaker 8.1, people had to use FMOD to decrease loading times, and get more functionally like Pausing and Playing music, now it's all built-in to the default engine.

You can still choose to use FMOD but at this point you'd have to be doing something really interesting with the music to make use of it at this point.

While that may be true, I can never be too sure. I'm not certain if you're trying to say that in a hostile way (proving that there's something bad about FMod) or just not wanting to answer my question on whether it's compatible or not.
I'm having a really hard time believing that the built-in audio engine can manage MIDI, pitch shift, reverse, pass, what more.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: WetWookie on June 21, 2016, 02:40:49 PM
Quote from: Klaty
I'm not certain if you're trying to say that in a hostile way (proving that there's something bad about FMod) or just not wanting to answer my question on whether it's compatible or not.
Quote from: Starz0r
You can still choose to use FMOD



Quote from: Klaty
I'm having a really hard time believing that the built-in audio engine can manage MIDI, pitch shift, reverse, pass, what more.
The build in sound engine can pitch shift. Everything would classify as
Quote from: Starz0r
something really interesting

Hopefully Starz0r won't be 'hostile' anymore by trying to answer your questions.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Starz0r on June 21, 2016, 03:41:45 PM
Hopefully Starz0r won't be 'hostile' anymore by trying to answer your questions.

Wasn't hostile in the first place. I was simply stating that you really have no reason to use FMOD in a Studio game unless you are doing something interesting with the music and how it interacts with the game. And Quite honestly, he never stated what he was doing with the music in the first place, leaving me to assume he isn't using the core features of a Audio Engine.

:ZreknarF:
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: WetWookie on June 21, 2016, 03:51:09 PM
So hostile  :DapperKapper:

Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Klaty on June 22, 2016, 11:50:55 AM
Maybe "hostile" isn't the right word, I'm just butthurt that you won't let me use FMod. :p Well I mean there's nothing physically stopping me, I guess, but there's no point in trying to convince me to stay. What counts as interesting is an opinion.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: WetWookie on June 22, 2016, 12:12:13 PM
No worries. I used to use FMOD in 8.1 because my tracks would always stutter when looping. In studio everything plays perfectly with the built in engine. The vast majority of fangames just play the music and maybe pitch shift on death. I think most people would consider any other manipulation of the music unusual an therefore interesting. I look forward to seeing what you come up with.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Klaty on June 22, 2016, 12:14:05 PM
No worries. I used to use FMOD in 8.1 because my tracks would always stutter when looping. In studio everything plays perfectly with the built in engine. The vast majority of fangames just play the music and maybe pitch shift on death. I think most people would consider any other manipulation of the music unusual an therefore interesting. I look forward to seeing what you come up with.

But... I said I wasn't promising anything. I don't even know a string of GM.  :atkCry:
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: WetWookie on June 22, 2016, 12:18:54 PM
Too late. I already put a reoccurring appointment on my calendar to check up on your project.  :DapperKapper:
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Klaty on June 22, 2016, 12:21:50 PM
Too late.

Indeed, I'll outbeat all of the popular and polished ones like Boshy and Co-op in a week. :DapperKapper:
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: infern0man1 on June 22, 2016, 02:14:33 PM
ok let's get back on topic
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: HAEGOE on July 22, 2016, 06:59:15 AM
OK, I'm on it.(I mean the topic)

I'm using this engine, and this is quite satisfactory and convenient, especially with MD5 save encryption that is available only on studio. However, it could be better if these are improved:
- I wish I could easily change the number of bosses and hidden items in game.
Current version they're both set to 1 to 8, and changing them from 0 to 10 was harder than I expected; I could find the variables and set it myself, but not without errors because of undefined variables.
- The creators would want to choose if their game keeps the secret items when they die without saving.
Sometimes it can be an unnecessary and unintended skip that creators want to fix.
- It's maybe because GMS update issue, but I experienced this glitch : when I use MD5 encryption, the game said the file's corrupted when I didn't even touch the save, and when I reset the 'corrupted' file, it didn't reset correctly. It sent me to the start of my fangame, but it kept my time, deaths, and secret items, etc.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: B0shyl0rd on August 07, 2016, 03:23:58 PM
Before I screw something up could someone tell me how to make custom objects?
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: pieceofcheese87 on August 07, 2016, 03:25:22 PM
Before I screw something up could someone tell me how to make custom objects?

Read this before you start making a fangame. https://klazen.com/IWBTG/tutorial/dev_tutorial.html
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: B0shyl0rd on August 07, 2016, 04:25:00 PM
Before I screw something up could someone tell me how to make custom objects?

Read this before you start making a fangame. https://klazen.com/IWBTG/tutorial/dev_tutorial.html
Oh wow its that simple (facepalm)
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Kyir on August 07, 2016, 07:01:50 PM
Making fangames is an arduous mountain to climb, but I'm sure you will be able to muster the will to read a few pages of text about basic coding. I have faith.

Really though, it's not that complicated. Klazen does a good job explaining stuff.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: B0shyl0rd on August 07, 2016, 07:17:44 PM
I can see that so far (I just finished the first screen and working on the second)
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Klaty on August 08, 2016, 06:08:33 AM
I can see that so far (I just finished the first screen and working on the second)

Good luck!  :atkHappy:
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: StuffandThings on August 10, 2016, 12:01:54 PM
Just got directed here by another member. Really curious to try this engine. Going to have to re-do a ton of things, but hopefully this will help.

Edit: Ok so I tried it out a little, and I'm having a problem with my room. I made a new room "rm_start" and put some triggers and stuff in it to test things out and all was going good, until I tried to use the "applesplosion" script. Now, every time I load into rm_start, the menu screen doesn't go away, and everything on screen remains and becomes a huge blur. I removed the script but I'm still getting this error.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on August 23, 2016, 09:13:35 AM
OK, I'm on it.(I mean the topic)

I'm using this engine, and this is quite satisfactory and convenient, especially with MD5 save encryption that is available only on studio. However, it could be better if these are improved:
- I wish I could easily change the number of bosses and hidden items in game.
Current version they're both set to 1 to 8, and changing them from 0 to 10 was harder than I expected; I could find the variables and set it myself, but not without errors because of undefined variables.
- The creators would want to choose if their game keeps the secret items when they die without saving.
Sometimes it can be an unnecessary and unintended skip that creators want to fix.
- It's maybe because GMS update issue, but I experienced this glitch : when I use MD5 encryption, the game said the file's corrupted when I didn't even touch the save, and when I reset the 'corrupted' file, it didn't reset correctly. It sent me to the start of my fangame, but it kept my time, deaths, and secret items, etc.

Sorry for the late reply, but thanks for the suggestions! I just updated the engine to v1.32 with both of these options implemented and a few other minor changes/fixes.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: geogeo222 on August 23, 2016, 06:14:36 PM
(Edit: I've been told this issue I'm posting about is due to the old version of Studio that I'm using, so you can probably disregard this.)

Hey Yoyo, I've noticed a really strange quirk in your engine which is that when you jump on the same frame you land to do a bhop, much of the time you will get a rejump instead of a regular, full jump. I am positive this is happening because even if I use my 2nd jump in the air, if I then jump on the same frame I land I will get yet another rejump, and the rejump sound will play. I've also noticed that 4.5s are much harder in this engine, which I'm guessing is attributable to this.

Do you know about this, and can shed some light on it? If not, well... what the heck. I thought such a thing would be caught in short order. But that's ok, I just hope you can get it solved because I consider this a glaring issue
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: bananaguy12mhc on August 25, 2016, 06:48:41 PM
I'm not sure this will understand, but the physics in this engine feel strange compared to 8.0 and 8.1 engines. So I am wondering if anybody knows why...
(click to show/hide)

edit: I hope this is not a stupid question...
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: StuffandThings on August 26, 2016, 10:01:53 AM
I'm not sure this will understand, but the physics in this engine feel strange compared to 8.0 and 8.1 engines. So I am wondering if anybody knows why...
(click to show/hide)

edit: I hope this is not a stupid question...

I noticed that the jumping seemed a little slow (at least compared to IWBTG), so I tweaked the jumpspeed and gravity  a bit.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: patrickgh3 on August 26, 2016, 03:34:52 PM
I noticed that the jumping seemed a little slow (at least compared to IWBTG), so I tweaked the jumpspeed and gravity  a bit.

The standard fangame physics are much different than the original IWBTG, and for the better. People in the community are used to these physics, and 99% of the time when they're changed people dislike the game (notable exceptions: Take the Time Machine 2 and Justice Guy). Fangames are the new physics standard, not IWBTG anymore. So, you're strongly advised not to change the physics unless you really know what you're doing and know that fangame players skill and taste will transfer over to the new physics.

I'm not sure this will understand, but the physics in this engine feel strange compared to 8.0 and 8.1 engines. So I am wondering if anybody knows why...
(click to show/hide)

edit: I hope this is not a stupid question...

It's not a stupid question, many people have reported that studio just feels a little "different" than 8.X, and it's hard to pinpoint. I vaguely remember that studio games could have a different Vsync setting then you're used to, so try changing the Vsync in the options of studio games. It'd be great if people found an answer and a fix for this, but a few people have searched with no luck. Someone like Klazen, please elaborate/correct me on this! :)
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: StuffandThings on September 06, 2016, 01:32:19 PM
I noticed that the jumping seemed a little slow (at least compared to IWBTG), so I tweaked the jumpspeed and gravity  a bit.

The standard fangame physics are much different than the original IWBTG, and for the better. People in the community are used to these physics, and 99% of the time when they're changed people dislike the game (notable exceptions: Take the Time Machine 2 and Justice Guy). Fangames are the new physics standard, not IWBTG anymore. So, you're strongly advised not to change the physics unless you really know what you're doing and know that fangame players skill and taste will transfer over to the new physics.

I only tweaked it a small amount, but it does seem consistent with the fangames I have played. I will be releasing a demo for it, so the community can check it out and see how it feels.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on September 07, 2016, 05:14:20 AM
Alright, I just put up another update (v1.40) which fixes a few very minor issues and now includes in addition a lighter version of the engine which simplifies the engine and cuts out extra resources/features for people who want to work with a more bare-bones base without a bunch of settings and example objects.

Also, if you haven't heard, Humble Bundle currently has a bundle that includes GM Studio Pro and a few modules with a bunch games + source code for really cheap! httpss://www.humblebundle.com/gamemaker-bundle
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Zapmunk on October 11, 2016, 01:06:58 PM
Just a heads up, there's a small memory leak every time you die. Turns out that ds_map_write leaks a couple kb of ram every time you call it. json_encode and json_decode don't leak though.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: StuffandThings on October 11, 2016, 02:46:02 PM
Another thing I noticed is that when "game over" shows up on screen, it isn't centered. It appeared much lower on the screen and got cut off at the edge screen so I had to adjust that. Not sure if anyone else had that problem.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: WetWookie on October 11, 2016, 03:06:48 PM
Another thing I noticed is that when "game over" shows up on screen, it isn't centered. It appeared much lower on the screen and got cut off at the edge screen so I had to adjust that. Not sure if anyone else had that problem.

This happens if you create a new room instead of duplicating the template room. The template room has some view settings already set correctly that will be wrong if you make a new room instead.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on October 14, 2016, 12:26:54 AM
Just a heads up, there's a small memory leak every time you die. Turns out that ds_map_write leaks a couple kb of ram every time you call it. json_encode and json_decode don't leak though.
Thanks for the heads up! I just posted an updated version (v1.41) with this and a couple of other fixes.

Also, for anyone who has already released a game with this engine on an older version of GM Studio (v1.4.1757 or older), be careful if you release an update of your game on the newly released Studio version (v1.4.1763) because they changed the way ds_map_write works a bit so that older saves will no longer work correctly with the newer versions. This makes it so that newly compiled versions of your game won't be backwards compatible with saves from previous versions.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on November 03, 2016, 09:24:27 PM
Hey guys, so I made a test version of a new engine for GMS 2 if anyone got into the beta and wants to mess around.

Keep in mind there are several missing features and minor issues. There also might be some bugs as I'm getting used to the new interface/functions and made this really quickly and a bit messily. This is just meant to be a test version for people who want to try out fangame development in GMS 2. I'll be working on a full version from scratch when GMS 2 is out of beta.

Download (https://www.mediafire.com/file/06idf0l9089gnap)
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: PiranhaTooth on November 06, 2016, 07:27:51 AM
Messed around for around 30 minutes using it, all seems well on win10 (i don't know if you use win10 or not). I didn't notice any lag, but then again it's not like i was doing anything resource intensive... You got the thumbs up from me, though. Nice job.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on November 29, 2016, 08:36:27 PM
Alright so I just uploaded a minor update to the engine (v1.42) with a few small changes. This is likely going to be the last update to the engine unless some bugs pop up as I'm going to move over to making a GMS 2 version very soon.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on January 04, 2017, 04:02:00 PM
Actually, I decided to put up another update to the engine (v1.50) which contains a bunch of fixes and tweaks that are carried over from things I added/changed when working on the GMS2 engine.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: Dacelo on April 30, 2017, 03:43:35 PM
There are some code errors in both versions

Normal:
In script scrSaveGame line 83 pos 6: Unknown function or script: ds_map_secure_save
In script scrLoadGame line 15 pos 20: Unknown function or script: ds_map_secure_load
In object objWorld, even User Defined 0, action 1 at  line 3: Unknown function or script: audio_sound_get_gain
In object objDifficultyMenu, event Create, action 1 at line 30: Unknown function or script: ds_map_secure_load

Lite:
In object objWorld, event User Defined 0, action 1 at line 3: Unknown function or script: audio_sound_get_gain
In object objDifficultyMenu, even create, action 1 at line 38: Unknown function or script: is_undefined
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: patrickgh3 on May 01, 2017, 01:12:07 PM
Have you tried updating to the most recent version of GM Studio? What version do you have? These errors are strange. Updating is the only thing I can think of
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on May 21, 2017, 06:33:09 AM
Just put up another minor update that refixes the save memory leak issues and changes the lite version to be the same thing as the regular engine but with less resources (the old lite version with only core features is still downloadable from the GitHub link in the op).
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: StuffandThings on June 04, 2017, 02:47:59 PM
EDIT: Moving this to the GMS2 Engine thread
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on June 04, 2017, 07:09:08 PM
One small thing I noticed:
(click to show/hide)

This results in a crash when starting the game. "death" should be "deaths" for global.deaths
I'm not sure I understand the issue, can you post the error message when it crashes? The global death count variable is called "global.death" and that specific object stores the loaded death values as a "death[]" array.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: StuffandThings on June 04, 2017, 08:47:29 PM
Sorry, I should have been more clear. This is with the GMS2 engine v0.9

The error comes from objDifficultyMenu, in the Draw event (approx. line 11). This is the original line of code:

Code: [Select]
############################################################################################
FATAL ERROR in
action number 1
of Draw Event
for object objDifficultyMenu:

trying to index a variable which is not an array
 at gml_Object_objDifficultyMenu_Draw_0 (line 11) -     draw_text(x+i*xSeperation+10,y+70,string_hash_to_newline("Deaths: "+string(death[i])));
############################################################################################

It was fixed when adding "s". In scrInitGlobals, it's initialized as "global.deaths = 0;" Unless I'm looking at the wrong thing, I don't see an array.

EDIT: Oh wait I think I found it. In the Create event it also says deaths:
Code: [Select]
// Save map didn't load correctly, set variables to the defaults
            deaths[i] = 0;
            time[i] = 0;
            difficulty[i] = 0;
            boss[i] = array_create(BOSS_ITEM_TOTAL,false);
            clear[i] = false;

The problem might be that I was initially using the IWBTSE for GMS1.4, and I was transferring stuff from the new engine into my project. I might have not copied something correctly.
Title: Re: I Wanna Be The Studio Engine YoYoYo Edition
Post by: YoYoYoDude1 on June 06, 2017, 07:20:41 PM
Ah yeah sorry, I renamed a few minor things in the GMS2 engine. I should have probably mentioned that somewhere in the GMS2 engine info.