Monday, March 4, 2019

Rouge Type One dev log Step 2.0

This are going to be boring for a while, keep your shirt on.

I believe I found a work around to simulate a Z axis; on the artistic side of development one of the tricks of making a jump animation is keeping the origin(the point in digital space the player character controls are oriented to) in a single spot and simply have the image moving farther from that point in each frame, run of the mill how to animate a jump stuff, so far. What I should be able to do to make the game react and properly layer the air born player character though is key some step events to the specific frames. Far as I know this is a bit of a backwards way of doing it, I imagine the physics are suppose to be coded first with the different animation frames keyed specifically to the physics of the game as they happen, rather then hiding the physics in keyed frames of the animation, but far as my knowledge of the program and GML goes there's no reason for this not to work. "It's not stupid if it works." Is one of my favorite sayings, so here's to hoping in this instance it -or it leads to something that- pans out for me.

My development philosophy is something between tackling the biggest crucial elements -which without the project would fail- and tackling the monotonous tedious tweaking and refining of the core game-play mechanics -which without polish the project wouldn't "play"-. These tend to be on somewhat opposite sides of the To-Do list, but they are both necessary to establish a foundation for the first proof-of-concept playable build. Because I can never make things easy for myself I have a notepad or two full of scribbled ideas for features or how I might be able to tweak enemy types, and weapons, and possibly how I might want to order object states for the AI; but first things first.

1. Movement
2. Shooting
3. Generating Map
4. Moving and Shooting through Generated Map

As strange as it sounds, considering jumping in this design is in actuality an interaction of animation frames with instances of contact with environment that I'll have to designate as on a different level of the Z axis, testing out that jump design is moved down to step 4. First I'll need a map and environment to be jumping on and moving around.

In other news I've updated the software I'm using, rather then 1.8 I'm onto studio 2, I guess it doesn't work putting new code for the new program into the old version.

Right now I'm on step 2.
I've put in Shaun Spalding's ds map weapon system, so not only does the moving square shoot, but it will be able to shoot and cycle through both hitscan and object projectile type attacks with ammo count, recoil, cool down, and other similar type weapon features. With this ds map system I should be able to cycle through all of the weapons I might want to add later. It's not an inventory system, but it's a foundation.

Before I start onto the Generating Map I'd like first make a charge up feature for the WeaponBow and to integrate a ricochet into the projectiles, Tweak the speed and cool down and such so it feels more like shooting an arrow.

Friday, March 1, 2019

Rouge Type One

My understanding of GameMaker, is rudimentary at best, so I am happily resigned to simply following tutorials to make my little projects and the games I imagine. If the reader has found this blog hoping for tutelage, abandon all hope. I will at most relay the reader to the tutorial I have used, and give example of what I have used it for via my own work. This blog is my project journal for what I hope to be a portfolio piece, using only code from tutorials, to exhibit my own musings on design, game feel, and level design.

I have Obj_Player in a step event coded movement,

MySpeed = 300/room_speed

    if keyboard_check(ord("W")) {
        y = y - MySpeed
    if keyboard_check(ord("S")) {
        y = y + MySpeed
    if keyboard_check(ord("A")) {
        x = x - MySpeed
    if keyboard_check(ord("D")) {
        x = x + MySpeed

As learned from Tom Francis's Make a Game With No Experience youtube tutorial series, I'm linking movement to room speed so the movement can be easily edited from a single point in the code rather than changing the number of pixels moved for each W, A, S, D. Also linking movement to the MySpeed variable I should be able to link in later additions like power-ups or if I find it not toooo difficult things like mounts. What I'm trying to figure out now is something similar to a jump, however I might be able to simulate a Z axis while keeping the WASD movement.

More often the Z axis is simulated by a trick of layering, where and when the player character is drawn on-top or underneath other sprites in the environment, imagine if you will a glowing sphere. If the sphere is shown in a top down level moving ontop of high grass, it would be imagined to be at some height above the ground, floating, similar to maybe a fairy or firefly. But if the grass is drawn ontop, suddenly the same movement appears to be low to the ground, like some sort of glowing rat in the underbrush. Similar, if we had trouble making rodents or spiders or some ground enemy appearing as if they were not floating around midsection when they come to attack the player character, having them drawn behind the trees and underbrush, as well as having them trigger a rustle of the brush when they move past it would give them a very "grounded" feel, and would also give the world a very present feeling.

My issue is making a sense of gravity in a game view that typically has the player character locked to the ground unless there is a ladder, or a chest high wall to jump over, or whatever might trigger a climb animation. 

updates and that pesky rouge type project.

Working nights is just as awful as I remember -go figure right- but on the side of tooling up for my blacksmiths and having the tech to fix the computer and possibly saving up for licensing or whatever has been good. Taking some time off school seems to have been exactly what I needed.

The game I have been working on, is a Frankenstein's Monster of tutorials, and it's hogpog construction has bounced through different computers and multiple iterations that started on the foundations of the buggy code. For anyone following along, the previous gamemaker project was based off Tom Francis's Make Your First Game, tutorial series.

That project was.... iffy at best. The player could shoot, the bullets would push enemies back and make them shrink until they died. The player upon taking too much damage would explode in a splatter of bits, that the player then needed to pick up before being able to shoot again. This last bit hadn't quiet, every worked... perfectly. 

My next goal was to design a project that would combine two or more tutorials to make a more dynamic game. This is more so an experiment in design than it is in coding, because I am not a programmer, this is to see if it is possible to design an engaging polished product that can deliver an hour or so of game play. Along with give me some rudimentary foundation to test out things I'm excited to explore testing. Like, how to simulate the arch and fall of an arrow on a top down and not profile controlled game, as in.. how do you make a Z axis on a 2d top down game such as Zelda: The Minish Cap. How the heck do day/night cycles work? Could those be expanded to seasonal cycles? How do inventories work? Better yet, how does equip-able gear function? There's alot of stuff in games that's actually quiet impressive when it comes to the development side. But we're going to follow along some tutorials and figure it out bit by bit ^^