Ranked #86
930 Points
it needs a graphic update, aside from that, :
-the crystals that you collect needs movement, at least some rotation, you are using game maker studio right?
you can do this by putting image_angle+=0.05 in the step event of the object you want to rotate
-instead of showing a text "score:" + numer of collected , show the icon of the crystal and the numbers collected, to do this ,in the draw event you need to put draw_self() to actually show a sprite.
-the same with the "lives:" text
-I HOPE that there IS NOT a flashing background level in your game like in the first game,
even for non-epylepsy persons it gives a headche after playing it :(.
you should add a invicivility time after being hit by the enemy, otherwise the first boss battle is very unfair and hard, because the boss is spaming atacks and the atacks keep hiting you every frame
-there is a bug that happens when you lost all lives, the game crashes instead of showing the usual game over screen
i could help you a little with your game if you want for free.
I saw that you implemented all the changes that i told you, thank you :D.
but I noticed that the crystals are rotating too slow, that at first look i though they were not rotating xD.
so instead of using image_angle+=0.05
USE : image_angle+=0.45
everything else is fine
also, about the arrow that is in the beggining of every level ---->: , it needs a graphical improvement and animation,
open the arrow sprite in the game maker studio editor // edit sprite // images /// erase a color
and done, deleted the gray background from the arrow.
now make and animation for the arrow, to do this, in the same window, go to animation // dissapear// 14 frames
and done, now the arrow has an animation
but remember to put image_speed=0.3
in the create event of the arrow object
also try putting the arrow a little bit more higher, so is not covering the player.
good, you did the crouch mechanic , thanks.
now a list of future improvements for your game:
-have a health bar forthe bosses in the middle bottom of the screen instead of a number.
-more variety on the bosses atacks, like creating a line of glitches in the top of the screen and then trowing it to the floor like meteors. and when they touch the floor destroy them.
[00 ] [ 00] [00 ] [ 00]
-in the level with the helicopters, nice mechanic by the way, there is a part that you can't proguess further beacuse the next plataform after the helicopter is too far away and higher
-make a menu for new game, loading, etc after pressing enter. because when the player get the game over is easy to press the enter key forgeting that you need to load the game by pressing X
-implementing slopes maybe
- i see on the trailer, that you will implement snow levels, game maker studio has already build in particle effects which you can use as the snow fallin from the sky, instead of the one that you used in the trailer . particles are really usefull :)
effect_create_above(ef_snow, 0, 0, 1, c_gray);
but remember to destroy de particles when you go to another level that don't use it
https://docs.yoyogames.com/source/dadiospice/002_reference/particles/simple%20effects/ef_snow.html
https://docs.yoyogames.com/index.html?page=source%2Fdadiospice%2F002_reference%2Fparticles%2Findex.html
you can search tutorials about it, or ask for help, or just looking in the manual.
future improvements:
better save system, save after each room complete, instead of saving after each of what you considere "level".
a better load screen, like, after pressing load game, show something like this
https://i.ytimg.com/vi/bqOBwZvuT_o/maxresdefault.jpg
you show the level where you last saved, by putting in the creation code of every room a variable indicating the name of the level like
first level room creation code
global.level="1-1"
second level room creation code
global.level="1-2"
third level room creation code
global.level="1-3"
and so and so.
and when you call the save object you save the variable global.level so then you can load the name of the last saved level.
draw_text(x,y, "level:" +string( global.level))
instead of a level consisting of two o three rooms make every room being his own level
in the first game each "level" like 1-1, 1-2, 1-3 was a diferent world, which was wrong
"1-1" means first world first level
"1-2" means first world second level, NOT " second world first level".
-a more organic level design, your levels should look natural, specially in the first levels,
fill the tiles below the floor so it doesn't look like the floor is floating,
sure, you can have little floating islands of floor, but not the entire level floating xD.
- start thinking about the plot, your game lacks a plot, sure, the main plot is the doctor revenge, but that's too little. you need to expand the plot to make more sense and make the player care about your game, like why does smash start in the first level fighting with the glitches? what's his motivation?,
in the first game it makes, sense, because starts with smash girlfriend being kidnapped and smash going after her after being trown with a cannon.
but in this second game smash starts in the first level without any motivation, beating the glitches, until the boss level, where he founds that the doctor has build a new boss glitch thing.
where is smash girlfriend?
where does smash live? in a digital or game world? in a real world?
who live in this world?, humans?, antropomorphic animals?
future tip: you can do i typewriter effect in the intro or cinematics by
putting in a new dialog object
create event
text_spd=0
ended=0
count=0
text[0]="blablabla"
text[1]="blablablablakassasak"
text[2]=" blablabljashjsahja"
maxi=2 // this is the numer of the last message, in this case [2]
step event
text_spd +=0.25
Z pressed event
if count
-more variated enemys,
-since your game is health based, create objects to recover some health, make enemys drop them at random, or can be collected the same way like lives in some hard to reach areas,
-like i said before, in the cutscenes it always looks like they are standing in a floating floor
fill the floor Below with black tiles at least xD
-the underwater collisions mask need a fix, make sure that the smash sprites for diving left and right are the same with, have the same origin point(centered ideally), and the same collision mask
-implement room transitions, like fade to black
-make the falling in a pit or the player dying more important, instead of just respawning the player right away, make a fade transition like all video games like super mario or shovelknight do when you die
not just simply respawn the player right away after dying
-delete the invisible collisions in the top of the screen in some levels that don't use the bird, in some levels the player needs to jump from plataforms that are too high and when you are going to jump the player collides with the invisible collision in the top of the screen, resulting in a reduced jumping capacity.
The water levels, decrease the player's gravity, it falls to fast,
and make the player drop bubbles that go up , so we know that the player is underwater and breathing.
like in the player create event set an alarm
alarm[0]=60
and in the alarm 0 event put
instance_create(x,y,bubble)
alarm[0]=110
and in the bubble object create event put
vspeed=-3 /// or the value that you think looks more natural,
and of course you will need to draw the sprite for the bubble first in the sprite editor.
are you drawing the sprites using the mouse? buy a wacom intuos draw tablet , they are good and cheap.
-when a enemy falls into a pit, don't teletransport it to the spawn point!, instead kill them
the bird makes the player go up too fast, decrease the speed a little bit, since a tiny bird like that one can go that fast xD
-make the bird while in the cage make bird sounds, like every few seconds, an alarm event would do the trick
fix the loading feature, since it will give crash errors about variables not declared
-test your game well before uploading updates, features like UI Improvements (Name of the level will be on the bottom of the health score and lives counters) don't work
-make an sprite for jumping
-make and sprite for idle, like tails
https://images-wixmp-ed30a86b8c4ca887773594c2.wixmp.com/i/a4da8ce4-d342-48d5-bcb6-e946a65c1716/dak2i19-0749a6c7-c076-4ab2-8359-5b155802b0b5.gif
make an sprite for wall jumping like mario
https://www.mariowiki.com/images/9/9f/Mario_Wall_Jumps_SMS.png
https://vignette.wikia.nocookie.net/sonic/images/d/d8/The_wall_jump.png/revision/latest?cb=20130712191425
-remake, the glass seastar logo, but this is a long term goal , since you first will need to learn how to draw better and buy a graphic tablet
once your game start looking good enough you could start a kickstarter or indiegogo campaign, to fundraise your game, but don't ask too much, $500 or less would be good enough, since you are still a newbie in game developement and your project is small,
you could use the money to buy a graphic tablet, or pay for ads for your game, or to publish to others plataforms like android or steam, imagine people plying your game on their phones!
https://www.wired.com/2012/10/least-ambitious-kickstarters/
but you still have a long way to go before doing the campaign, since your game doensn't look good enough for that.
looking forwards for the features that you listed.! :D
-the health drops that enemy drops should not recover all the health of the player!
only some part
-the loading feature is totally broken, since the global variable level, is not set
you can only load after loosing all the lives, but in a fresh start not
and the game crashes often, so test your game deeply to catch the bug
now there is a bug that crash the game in the level urban blues prologue, when you get hit by the mini boss
FATAL ERROR in
action number 1
of Create Event
for object SmashFall:
global variable name 'checkpointR' index (100002) not set before reading it.
at gml_Object_SmashFall_Create_0
it seems like switching objects bug will haunt you forever if you don't learn how to code better
switching objects is a bad practice, you should have all the smash code in the same object
it gives you better control of the variables,
having a separate object for smashfall, smashbounceback, smashatack, etc is wrong
in the next update try to put all the smash code in the same object, to stop being depending of switching objects.
creating and invisible collision for the punch is aceptable though so keep that,
the underwater physics still needs some improments, reduce the vspeed when you go up,
it goes up too fast, and is easy to die by the mines
and instead of using gravity in the underwater levels,
do something like
vspeed =0.5 or more when the go up key is not being pressed
gravity should not used in underwater levels because it decrease the vspeed more and more the more time that is used
the "animation end " event will help you with the punch animation
https://docs.yoyogames.com/source/dadiospice/000_using%20gamemaker/events/other%20event.html
animation end event remember to put the brackets
if sprite_index= sprite_smash_punch or whatever name
sprite_index=sprite_smash_idle or whatever name
smash z pressed event
mage_index=sprite_punch
instance_create(invisible punch colission)
audio_play_sound(punchsoud,1,0)
see how easy it's to put the obj_smash_punch code in the normal smash object?
with this you will not need the smash punch object anymore :D
you are still learning and it's good dude, don't hurry and take your time, one step at a time :D
i would say your game is far from finished, you need to:
-make a smash cat icon image to the cutscene textbox instead of using a white circle, the same for dr glitcher and binary.
the icon should be separated from the textbox and not be a background image.
-fix the bug where if you start the game and select load game withouth having a save file, pressing start in "new game " will do nothing.
-also, don't change the exe name everytime you update your game , instead of "Smash Ringtail Cat 2 Dr Glitcher's Revenge NEW v11" it should be "Smash Ringtail Cat 2 Dr Glitcher's Revenge". cuz saves files are associated with the game name, and every time you change it, the the saves files from the previus version become unusable because its in a diferrent folder and you have to start the game from the start.
if you want to display the version number on the game use GM_version;
https://docs.yoyogames.com/source/dadiospice/002_reference/miscellaneous/gm_version.html
-your game lacks enemy variation, it only has the baddie and the gun guy, you need new enemys.
-needs more bosses, instead of fighting dr glitcher and binary over and over again is too repetitive, every boss should be unique and different, take sonic, for example, in sonic you every fight is with dr eggman, but every fight it plays different, instead of being repetitive.
-instead of using sprites for the tutorial text, use real text, for this you can create a new font file and assign it a bigger size letter number.
-the cutscenes text is too slow is tedious to read, it should be a little more faster.
-instead of using backgrounds and different rooms just for the cutscene, you should use separated objects for each thing
like the floor, dr glitcher, the texbox, smash ,etc, so it can look like how you wanted it to look: https://www.youtube.com/watch?time_continue=2&v=xB1GdOLI4Ug
so you will don't need multiples rooms just for one cutscene, that's a bad practice too you know xD.
- you could have the bird in the cage, fly with you when you are not using it.
image for reference https://s2-ssl.dmcdn.net/v/9zrv41SrsRxjkQ25c/x1080
for that when you break the cage, create an instance of the bird,
and in the bird step event
put something like
x=smash.x - 40
y= smash.y - 30
so the bird will always be flying beside you.
then when you press up you need to code the bird to move to smash head so it can catch him and fly.
-upgrade the pause menu, games often show options when paused, like quit game, continue etc,
and also still show you the rest of the game https://i.ytimg.com/vi/c6MJFWaFv6c/maxresdefault.jpg
http://i.stack.imgur.com/IEsdF.jpg
- the wall jumping still needs to be fixed
-you upgraded the background graphics, but you didn't updrade the enemys graphics, they need a upgrade too.
i hope that if you ever make smash 3 or another game, you do it from the ground up and do not do bad practices. so it will be more easy to make :D
haven't you thought on upgrading to gms2 ? or switch to unity? unity is free, and you can get gms2 free from some webpages.
gms 1.4 is too outdated, and you will have problems with shaders, since it use directx9, which is very old. and nowdays no one haven't installed in theirs computers.
some advice: when you publish things, remember to remove the standar game maker studio tittle and splash screen.
also don't use gms default healthbar, its too generic. you should make a custom one.
also you should really learn about aesthetics, that font in the "smash around the world" logo doesn't look good. too blocky, the shadow doesn't look good.
never put use black letters without a white outline.
look at this bad example of not using outlined text http://designwebkit.com/wp-content/uploads/2013/06/bad-web-design-colors-combination-thumb.jpg
https://www.google.cl/url?sa=i&source=images&cd=&ved=2ahUKEwiJzfycqOPkAhXTLLkGHdgcDcoQjRx6BAgBEAQ&url=https%3A%2F%2Fblog.adobespark.com%2F2017%2F01%2F30%2F13-rules-to-help-you-stop-making-bad-font-choices%2F&psig=AOvVaw38KNkVvFuN5Eh5kbq9FZex&ust=1569203080917115
in photoshop you can do something better if you try .
and if you really want to release a good tech demo, it should be a fully functional room, the baddie dissapears , and this tech demo doesn't offer nothing new compared to the previous games.
i was expecting new better sprite graphics for smash or more polished mechanics. or better UI.
look at how a decent tech demo should look https://www.youtube.com/watch?v=iXY2eJFHUhk
don't rush, take your time.
for make a good game you first need to;
-learn how to make good sprites
-learn how to design good logos.
-learn about font aesthetics.
-learn how to draw better.
-learn about good game design
game maker studio tip that will help you .
when making dialogs, when the text is too long you split it into two different messages. and that's bad cuz is like you cut the continuity of the message.
instead of doing
message[1]=im here to take back what's
message [2]=right for our friends
Do:
message[1]= im just here to take back what's # right for our friends
another example:
instead of
message[1]=what's up doctor what's all this glitchy
message[2]=fuss you're up to.
do:
message[1]= what's up doctor, what's all this glitchy # fuss you're up to.
the hashtag symbol # its useful to split lines when text is too large and don't fit in just one line
__-________
don't use black outlines inside the sprites for separate colours
this is noticeable in your red panda player, notice how it has those white square dots with a black outline,
when i first played your game i thought, what is that thing? it is sick? why it has those white squares?.then i noticed it was supposed to be a red panda.
look at this sprite example of a red panda that i found on internet https://i.pinimg.com/originals/ee/a0/e5/eea0e503bd858c4d3636b03cddf59ef5.png
notice how the white spots shading should be.
black outlines should be used only to contourn the sprite, never to shade or separate colors.
is noticeable too in smash sprites, it look like it has a hole in his tummy.
ringtails cats are more like gray with white tummy rather than white with a perforated tummy xD.
and is noticeable too in the urban blues helicopters(in smash 2), they have that ugly black line separating the white and dark shading.colors.
there is some inconsistent art , like in some cutcenes you used Ava old design (the one with white fur instead of red)
also happends in smash 2.
seeing from the trailer, you still have the problem that your enemys are always facing to the left even when walking to the right. to fix this go to the enemys 'begin step event' or 'end step event'
(where you have your code for flipping the sprite)and replace what is there to this:
'
if hspeed > 0
{
image_xscale=-1;
}
else
{
image_xscale=1;
}
'
this would fix that the baddies doesn't animate when walking too, this fix applies to every smash ringtail game
new feedback
-Don't use game maker studio's defaults particles SHAPES, they are too generic, not customizable, and don't look good with your art style, Instead use your own sprites particles.
here is a tutorial on how to set up your own particles
https://www.youtube.com/watch?v=DOKrIAn2z_Y&ab_channel=1upIndie
(if you follow this tutorial, don't use part_type_shape, instead use part_type_sprite)
or you could look up the manual.
it may be hard to understand at first look, but in the end it's worth it. and looks way better
-when you pick the invinsibility power up, smash looks bugged in a static sprite. this is because you choose the wrong way of handling this power up. Don't change the sprite for a static one.
instead there is two correct ways of handling it that i know:
1)If you wanted to have smash half visible, you could have changed the alpha with
image_alpha=0.5 //
2) OR you can use a colorful shader like the one showed here
https://developer.amazon.com/blogs/appstore/post/acefafad-29ba-4f31-8dae-00805fda3f58/intro-to-shaders-and-surfaces-with-gamemaker-studio-2
- the punch bag is bugged, for some reason you can get the object inside without breaking the punch bag.
-healths bars in others games normally decrease from right to left, but in your game they decrease from left to right.
-smash having a silhouette/shadow all the time looks weird, in other games like sonic or megaman, silhouettes are only used to represent high speed movement and only used in those moments,
Smash Ringtail Cat 2: Dr. Glitcher's Revenge