The problem is you're using the HTML5 client. You need Game Maker Studio Standard. Standard only exports as .gmz and .gm81 and, even if I were to export the later, it would just import corrupted into your client because it's incompatible.
Still haven't figured out how to import this correctly. I have no idea what you just explained. Why are there so many variations of Game Maker now? Is there no way to export this into a Game Maker 8.1 project? There must be some way to open it.
You cannot use a free version of Game Maker Studio. You need at least the standard version. Here's a chart showing the different versions of Game Maker Studio. You need at least standard. The engine requires features from Game Maker Studio that are not present in 8.1. That's why you must have Game Maker Studio. http://www.yoyogames.com/gamemaker/studio/standard
I'm using the Professional Edition of Studio. It's just not importing properly. Would it be too much to ask to have an .rar of the exported resources that I could backport to 8.1? (Yes, I'm fully aware that it wouldn't work as is... and I know what to do to fix that.)
Quick question(s). I've gotten 8-dir ground rotation to work properly, but I'm having some issues with setting the angle while Sonic's in the air. Normally in this engine, when Sonic runs up a curve and into the air, his angle gradually sets back to 0 using 360 degree movement. But I want it to look like the genesis games, where his angle is changed in increments of 45 degrees (I think that's how it's done). I believe this code is used to change the angle in air in the player_state_fall script: Code (Text): if not spinning and (image_angle!=angle) image_angle = angle_wrap(image_angle+2.8125*sign(angle_distance(image_angle, angle))); As I believe I'm on the right part of the code, so my first question is, what exactly is this code doing? And how would I make it so that the player's angle is set back to 0 in increments of 45 degree movement rather than picking up every angle in the air. I hope I worded this correctly so that someone understands. Also: Last post as a Trial Member so I probably won't be able to respond again until validation, so thanks in advance if the question gets answered.
In psuedo-code: if the player is not spinning and his visual angle does not match his actual angle, increase the visual angle by 2.8125 times the sign of whatever direction the actual angle is from the visual angle, then wrap the result to 360 degrees. to snap this to degrees of 45: Code (Text): if not spinning and (image_angle!=angle) image_angle = angle_wrap(round((image_angle+2.8125*sign(angle_distance(image_angle, angle)))/45)*45); You just divide the result by 45, round it, then re-multiply 45 to get the nearest degree of 45. That line is a bit loaded, so you could also split it to make it easier to read: Code (Text): if not spinning and (image_angle!=angle) { image_angle += 2.8125*sign(angle_distance(image_angle, angle)); image_angle = angle_wrap(round(image_angle/45)*45); } It'd probably be better, however, to apply this same wrapping where the image_angle is used in the draw event: Code (Text): if sprite_index>-1 draw_sprite_ext(sprite_index, image_index, floor(x), floor(y), image_xscale*facing, image_yscale, round(image_angle/45)*45, image_blend, image_alpha); EDIT: Ninja'd.
If you do the above, remember to apply it to all objEffects that use the same angle. (ie. objTailsEffect)
Opening post updated with a new build. To encourage updating, I've killed all the old links. Before anyone asks, yes, all the sound issues are gone AFAIK.
Um... Is the ground all supposed to be invisible, or did something happen like you were using flickering to try and get a transparent effect and YouTube's frame rate screwed you over? From what I could see, it looks really good, and I wish I had Studio so I could play with it.
Me too. Too bad I don't really have $50 to throw around to learn how to use an engine. I guess I could use the free edition, but I won't be able to use this engine. Is there a...reason why this engine needs at least Standard? I'm sure there are more differences, but going by the GameMaker website, the only difference between the free version and the Standard version is "unlimited resources".
I'm pretty sure sprite rotation, among other visual effects, are still limited to paid editions of Game Maker. So the game engine should boot for you if you disable a few things, (Manual 8-way rotation with sprites isn't as RAM hoggy as you'd think.) unless it needs external resources and/or DLLs from startup, then it's going to act picky. That's if Game Maker Studio still behaves much the same way as with previous versions, however; I don't know if a file itself would be restricted to either Lite or Pro users.
Game Maker Studio is terrible. I'm simply backporting to 8.1. If you have a previous version, paid or free, stick with it... Studio just blows.
The free edition has a resource cap that impedes the amount of scripts and objects needed for the engine to run successfully, and some functionality is limited in the free version compared to standard, such as functions for manipulating surfaces.
New version now available! Here's a changelog: (it is also included with the editable) Spoiler GENERAL NOTES New control scheme for global game functionality: Alt + F4: force-quit. F3: Double window size. F4: Fullscreen. F5: Scanlines. "C" key: Free-roaming state. (Debug mode only) Made various adjustments to code complexity too numerous to list. Added inline documentation to almost all scripts. objPath and objExampleQuicksand are now deprecated. (See "Rooms\Zones\Examples" for new examples) Added proper Sonic 2 Title Card and Sonic 1 drown popup. (See "Objects\Scene\Overlays") "Perfect Bonus" now added to objScoreCard. Music queuing and playback is now handled by objMusic. (See "Objects\Game") Direct playback overriding the priority queue is possible. (music_play) Music overlays (eg. 1up music) now have their own playback function. (music_play_overlay) Global sound effect volume can be adjusted. (audio_set_volume_sound) Basic loading and saving functionality is available. (See "Scripts/Game/File") On failure, the input_check* functions now return -1, not 0. Can now "pause" the game from anywhere. (game_set_active) Can travel directly to a specific scene as long as you know its scene index number. (scene_goto) in_view now accepts a second argument for adjusting the offset of the view boundary. The transition_* scripts were merged into transition_to. (See "Scripts/Scene/Overlays/Transitions") Player bounding box size is now determined at character selection. (player_change_character) State and state change scripts were merged together; state changes are now accessed by calling the corresponding state script using a negative number as an argument (usually -1; some special cases use lower numbers, such as jumping) Listener position now updated in objZone instead of objPlayer. DASH-style angle detection implemented for those wanting to construct custom masks. (See "Objects\Scene\Zone Objects\Parents\Collider") objBridge code reworked to be one single platform instead of several smaller ones. objSignPost must be deliberately touched now; simply passing its x-position is no longer enough. objWater is now a customizable object that can be stretched to "fill" specific areas. (See "Rooms\Zones\Examples" for example usage) Water-running can be disabled per-instance of objWater. objConveyorBelt created in response to confusion around objExampleMovingPlatformH. The later no longer works like a conveyor belt. objExampleCorkscrew now available. (See "Objects\Scene\Zone Objects\Specific\Examples") RESOURCE CHANGES SPRITES New: sprTitleCardBorder (in "Scene\Overlays\Title Card") New: sprTitleCardGame (in "Scene\Overlays\Title Card") New: sprDrownPopup (in "Scene\Overlays") New: sprWaterMask (in "Scene\Zone Objects\General\Water") New: sprKnucklesFlipReverse (in "Scene\Zone Objects\Player\Characters\Knuckles") New: sprSonicFlipReverse (in "Scene\Zone Objects\Player\Characters\Sonic") New: sprTailsFlipReverse (in "Scene\Zone Objects\Player\Characters\Tails") New: sprRhinobotDust (in "Scene\Zone Objects\Specific\Enemies\Rhinobot") New: sprExampleConveyorBelt (in "Scene\Zone Objects\Specific\Examples") New: sprExampleCorkscrew (in "Scene\Zone Objects\Specific\Examples") Removed: sprExampleBreakableDebris Removed: sprExampleQuicksand Removed: sprPath Edited: sprExampleEnemy renamed sprRhinobot SOUNDS Edited: bgmClear, bgmDrowning, bgmGameOver changed into .wav files. Edited: bgmTest renamed bgmZoneEH BACKGROUNDS New: backScanlines (in "Game") SCRIPTS New: audio_set_volume_sound (in "Game\Audio") New: music_play (in "Game\Audio") New: music_play_overlay (in "Game\Audio") New: load_controls (in "Game\File") New: load_settings (in "Game\File") New: save_controls (in "Game\File") New: save_settings (in "Game\File") New: scene_goto (in "Game\Program") New: game_set_active (in "Game\Program") New: collision_box_vertical (in "Scene\Genera\Collision") New: transition_to (in "Scene\Overlays\Transitions") New: player_reaction_corkscrew (in "Scene\Player\Physics\Reactions\Specific") New: player_reaction_sign_post (in "Scene\Player\Physics\Reactions") New: player_reaction_water (in "Scene\Player\Physics\Reactions") New: player_get_surface_angle (in "Scene\Player\Physics\Rotation") New: player_get_surface_angle_air (in "Scene\Player\Physics\Rotation") New: player_set_wall (in "Scene\Player\Physics\Update") New: player_is_slipping (in "Scene\Player\State\Functions") New: player_is_debugging (in "Scene\Player\State\Specific") Removed: transition_fade Removed: transition_titlecard Removed: player_landing Removed: player_is_slide_standing Edited: audio_clear_priority renamed music_delete Edited: audio_play_priority renamed music_play_priority Edited: audio_set_priority renamed music_add Edited: level_goto_next renamed scene_goto_next Edited: angle_distance renamed distance_to_angle Edited: player_collision_ceiling renamed player_get_collision_ceiling Edited: player_collision_floor renamed player_get_collision_floor Edited: player_collision_object renamed player_get_collision_soft Edited: player_collision_wall renamed player_get_collision_wall Edited: player_movement_air renamed player_move_air Edited: player_movement_ground renamed player_move_floor Edited: player_update_ramp renamed player_can_launch Edited: player_get_terrain_angle renamed player_get_angle Edited: player_wall_eject renamed player_get_wall_offset Edited: player_get_reaction renamed player_react Edited: player_update_cliff renamed player_set_cliff_facing Edited: player_get_terrain renamed player_set_floor Edited: player_get_terrain_list renamed player_set_local_list Edited: player_floor_transfer renamed player_set_mask_rotation Edited: player_slope_factor renamed player_set_slope_friction Edited: all player_state_* and player_is_* scripts were merged together; see general notes Edited: player_state_standby renamed player_is_waiting TIME LINES New: animKnucklesCorkscrew (in "Zone Objects\Player\Characters\Knuckles") New: animSonicCorkscrew (in "Zone Objects\Player\Characters\Sonic") New: animTailsCorkscrew (in "Zone Objects\Player\Characters\Tails") New: animShieldLightning (in "Zone Objects\Player\Effects") Removed: animShieldLightningFront Removed: animShieldLightningBack OBJECTS New: objMusic (in "Game") New: objSceneObject (in "Scene") New: objDrownPopup (in "Scene\Overlays") New: objCurveConcaveAuto (in "Scene\Zone Objects\General\Terrain Masks\Experimental") New: objExampleConveyorBelt (in "Scene\Zone Objects\Specific\Examples\Moving Platforms") Removed: objInputDummy Removed: objCapsuleSwitch Removed: objPath Removed: objExampleQuicksand Edited: objProgram renamed to objGame Edited: objTitlecard renamed objTitleCard Edited: objScorecard renamed objScoreCard Edited: objLevel renamed objZone Edited: objField renamed objTrigger Edited: objNonSolid renamed objColliderSoft Edited: objSolid renamed objColliderHard Edited: objSceneObject renamed objZoneObject Edited: objExampleEnemy renamed objRhinobot Edited: objExampleBackground1 renamed objExampleBack1 Edited: objExampleBackground2 renamed objExampleBack2 ROOMS New: zoneTest3 Edited: startup renamed roomStart Edited: test_level renamed zoneTest Edited: test_level_2 renamed zoneTest2
The only thing I can think to fix is the bumpy collision on enlarged shapes. Make it calculate a vector for Sonic to travel on or something. Nice stuff.