Unaligned
Unaligned
Posts

7

Following

9

Followers

16

This user leads a boring life.

Joined on January 4, 2008, 1:47 AM Visited on April 24, 2019, 9:11 PM
Badges

Unaligned posted on April 21, 2019 at 3:08 PM

Procrastinating off devving by... devving

Hello people, I'm back with more tales of gamedev woes, skip to the end if you'd rather not read my contextual rant. Though I've thought and sketched out my plans for Nuclear Moss, I decided to give it a month off so I could metaphorically clear my head and come back to it with more energy. I looked into options that'd force me into a short project so I settled on joining one of those popular hip things all the kids are doing: a game jam over at itch.io.

To make matters more interesting, I went for one where one of the requirements was to develop a project with someone else over the course of a month. I joined the discord, posted an ad and someone else contacted me soon enough. We discussed the jam's theme and settled on a plan. Needless to say things didn't go according to it.

Having been more active on chat apps lately, I've discovered how frivolously people treat other contacts online. Little to no effort in replying, seemingly dropping off the face of the Earth, wild variations in how enthusiastic they seem about talking to you, etc. Most of you probably have gone through similar situations, but not myself, being an antisocial creep.

Over the course of the month (the duration of the jam), said partner didn't produce anything usable for the final project, and responded every what seemed few days, even though they were always online (but of course on do-not-disturb mode). I didn't think much of it since they seemed to be working on their side of things. I myself had the basics down, player movement, an enemy type, and neat light switching mechanics and light stealth elements. As the deadline drew closer I said we'd have to re-focus from a short platformer into something more arcade-y with a single screen. The timeline rolled around and nothing happened of course, no "Sorry! I was busy!" or anything resembling an apology or resentment. Ah well, that's the Internet for you right?

So, a month of time essentially wasted (though I discovered how to do positional 2D audio in GMS in the process) and I decide to join a different jam, but go into it solo. This time I settle on one with a single week of time. I had to wait a few days for it to start and in that time window I purchased a humblebundle with a bunch of assets for me to use as I pleased. I'm pretty sure it's the only time I've shelled out for the highest tier. I rubbed my hands in anticipation as the announcement of the theme rolled in...

Fucking.
Detective.
Text.
Adventure.

When I stopped screaming internally and questioning what sick joke the universe was pulling on me, I just went ahead and started work on something by slapping together assets from said bundle and opengameart. The initial project's name was SoloJam.project.gmx. I even forced myself a deadline: today, the end of my Easter break. I might update it with more stuff in the future but we're at one-point-oh baby!

So without further ado: I present Spess Gaem. A typical shooter, pretty low on content, but I want to think with a nice level of polish and a bit of nuance. Who doesn't like nuance?

...Yeah! If you want to check it out, I implore you to head over to either its itch or gamejolt pages and let me know what you think!

Unaligned posted on January 19, 2019 at 6:47 PM

Nuclear Moss

[left]Yet another project with a temporary title. I'm seeing a pattern here.[/left]
[left]Man, site's slow as of late (I mean slower than usual slow). I guess everyone's funposting over at the discord server huh?[/left]
[left]So what's been up with me? Not much. I decided to get off my ass about a year ago and started exercising daily. Health benefits (great btw) aside, it gave me a lot of time to think. I came up with an idea for a world to set a game in. It slowly grew in my mind with each passing day; and although very little (if any of it) made it onto the project, I probably wouldn't have started it had I not started to dedicate 1-2 hours a day to introspection (I now mostly listen to podcasts when I'm out and about).[/left]
[left]So about six months of work later (admittedly, very on-and-off as far as keeping a consistent work schedule goes, motivation is extremely hard to come by it seems) I present to you the temporarily-named project Nuclear Moss.[/left]

[left]
  • I wanted to make something past-paced, where you pummel through a bunch of enemies in a split second. Who doesn't love some good power fantasy?
  • Good players are rewarded through the game's combo meter: the style counter. It both acts as a score and damage multiplier (at different rates though). You'll still have a decent damage output even after taking a hit (or three).
  • There's a handful of playable characters, each with their own stats, main attack, special attack and passive. I'm willing to bet that it's rather unbalanced at the moment, but I can always say that the game has an implicit difficulty selection system by which character you want to play as. Want to beat the extra challenge level that's filled with projectile-spamming enemies? Well then just pick the character that can reflect them!
  • For lack of a better term, I wanted to upload a vertical slice type demo, which is a representative fraction of the full game's experience. This means there are levels to beat, characters and game modes to unlock. And of course a final boss.
  • Speaking of which, I must admit I enjoyed testing of the boss far more than mowing down hordes of enemies. I'm considering shifting focus and giving bosses more attention than standard enemies.
[/left]
[left]Any of this sound fun? I'm literally, figuratively starving for feedback, as I don't really have anyone around me that could provide any insight, (aside from myself) and having spent all this time on the project in a vacuum might've affected my perspective.[/left]


Keep it frosty

Unaligned posted on April 16, 2017 at 4:55 PM

project:embraced 0.03

real name for a future update
how to play and stuff

Oh god collisions So after realizing I couldn't make jump-through blocks and reading this I decided to re-write the collisions in the game by getting rid of solid block-like objects and any use of move_contact_solid.

exhibit A of collision implementation woes

Now instead of the very occasional bug where the player is stuck in a corner because of the collision box doing weird stuff I get an occasional hang that I can't replicate. It seemed to happen when a lot of bullets hit someone at the same time, but then I discovered it could also happen at random, for no apparent reason.

not even late-night eureka moments I leave for the next day for myself can save me

Anyway, if you want to take a crack at this, here's how it currently works:
collision code (Show)

Warning: sub-par code ahead

tl;dr: if the amount of distance covered due to force until the next frame exceeds the distance to the obstacle, negate the application of force and just place the entity next to the obstacle

this goes in the step event
//Horizontal Collision
var hcollide;
hcollide = instance_place(x+hspeed,y,obj_block);
if (hcollide != noone)
    {
        //only with normal blocks
        if ((hcollide).type == 0)
            {
                if (place_meeting(x+hspeed,y,obj_block))
                    {
                        x = round(x-hspeed)
                        while (!place_meeting(x+sign(hspeed),y,obj_block) && hspeed!=0)
                            {
                                x+=sign(hspeed)
                            }
                        hspeed = 0
                    }
            }
    }
//Vertical Collision
var vcollide;
vcollide = instance_place(x,y+vspeed,obj_block);
if (vcollide != noone)
    {
        //normal blocks
        if ((vcollide).type == 0)
            {   
                y = round(y-vspeed)
                while (!place_meeting(x,y+sign(vspeed),obj_block) && vspeed!=0)
                    {
                        y+=sign(vspeed)
                    }
                vspeed=0
            }
        //jump-through blocks
        if ((vcollide).type == 1 && vspeed > 0)
            {
                if (!place_meeting(x,y,obj_block))
                    {
                        while (!place_meeting(x,y+sign(vspeed),obj_block) && vspeed!=0)
                            {
                                y+=1
                            }
                        vspeed=0
                    }   
            }
    }

this one is used for just about any application of force (knockback when shooting, impact from bullet, air double jump/boost, etc.)...and while writing this I realized I haven't extended it to player inputs like walking or jumping...
///add_force(direction, speed)
//essentially motion_add, but prevents lodging entities into blocks
//declare shit
var dir, spd, vspd, hspd, blk
dir = argument0
spd = argument1
//break down into hspeed & vspeed
dir = degtorad(dir)
hspd = spd * cos(dir)
vspd = - spd * sin(dir)
//apply speeds if there's nothing to stop us
blk = instance_place(x+hspeed+hspd,y,obj_block)
if (!place_meeting(x+hspeed+hspd,y,obj_block))
    {
        hspeed = hspeed + hspd
    }
else if (blk!=noone)
    {
        if (blk.type!=0) {hspeed = hspeed + hspd}
        else
            {
                while (!place_meeting(x+sign(hspeed+hspd),y,obj_block) && hspd!=0) {x+=sign(hspeed+hspd)}
            }
    }
    
blk = instance_place(x,y+vspeed+vspd,obj_block)
if (!place_meeting(x,y+vspeed+vspd,obj_block))
    {
        vspeed = vspeed + vspd
    }
else if (blk!=noone)
    {
        if (blk.type!=0 && vspd<0) {vspeed = vspeed + vspd}
        else
            {
                while (!place_meeting(x,y+sign(vspeed+vspd),obj_block) && vspd!=0) {y+=sign(vspeed+vspd)}
            }
    }

What about that draw_line_width_color? How is this function such a resource hog? I couldn't help but play around with weapon variables and essentially flood the map with bullets. My FPS tanked hard until I reduced the length of bullet trails (that use said function).

So what's new? pussycat --The big--
No more aggressive wrist-flicking, player character moves whole arm when aiming up/down.
Gravity wells and... anti-wells I guess, check them out at dm_wells (& dm_test).
Jump-through blocks (cyan, translucent, for now). Jump downwards by aiming down and pressing jump when standing on one.
Completely re-worked the collision system, allowing for different kinds of blocks and introducing all sorts of new bugs!
Made bullets: have way better hitboxes (adjusted to size and angle), do more damage, appear bigger on screen, move faster (more knockback and less player momentum transferral as an indirect consequence, we'll see about that)
New weapon: the totally original, pink-bulleted, enemy-chasing needl-chaser!

--The small--
Explosions now not-to-intensely flash the screen - too much/little?
Weapon pickups now hover because it looks cool
"Blood" effect is now darker, so it's less distracting.
Players now have a small label on top indicating what player number they are, will allow setting custom player names/profiles in the future
Map edges draw an arrow if a player is out of the level
Default armor is 100 again, with more damaging bullets and all
Armor recharges at a higher rate
Bullet lighting is now oval-shaped, and brighter
Made quick edits on gun sprites so they're slightly more identifiable
Improved respawn choice algorithm to reduce chance of overlap, not perfect yet though
Camera only tracks dead players for a short time after dying

Download links pls Take your pick: