Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs

Caliber Mengsk

20
Posts
5
Topics
8
Followers
A member registered Oct 06, 2015 · View creator page →

Creator of

Recent community posts

If you are looking for a team, or a team looking for people, I made a crowd forge page for the jam. It should make things easier and more organized than just a bunch of posts in here or in the discord (and if you aren't in the discord, you should be ;D)

Anyway, crowd forge is an easy to use system for finding/joining teams, whether for jams or sports events or what not. I made the page specifically for the jam, but I am in no way associated with the yogscast, so there's that also. Anyway, here's the link:

https://crowdforge.io/jams/yogscast-game-jam

I agree that there should be something in the game to state the objective. I messed around in the first level for a while before reading to find out about the green pixel thing. Was fun beside that. :D

Day 7, 8, 9, 10

I did some work last weekend and never really talked about it. I don't remember specifically where I left off, and it's kinda late (1:30-2am), so I will inevitably forget something I added.


Dungeon Tiles

I made some basic dungeon tiles. Not a ton to talk about here. Just some arts that I did. I decided purpleish seems pretty dark and evil feeling, so it's filled with purples and darker pinks. Don't know how much I'll have time to do the dungeons since after sleeping I'll be down to like 8 hours left.


Transitions, timing, and doors

I added in a basic door system. When you walk into the trigger for the door, it sets a value in the Game static object that doesn't ever get destroyed. What it sets is the target door's id. Each door has an ID and a spawn offset. When the level has been loaded it sets the player's position to the door's position plus the offset. I also display where the offset will spawn the player so it's not so much a guessing game. This allows any door to be at any angle/position.

I also made a basic fade transition. When adding this, I had to add in a way to pause the action of the game. The reason was when the player hit the door and it faded out, you could get hit by slimes. I decided to make it pause everything so that you can't be hit while it faded in and out. There is a problem with just changing the timescale though. Invoke (which I like to use for timing things, such as the fade out speed) is effected by time scale. So I had to write my own timing system using Time.unscaledDelta. Not a major problem, but a thing to note.


Coins

Not sure how much I'll be able to implement the coins. I'd like to build a shop for you to be able to buy max health, healing, max stamina, the ability to dodge, ability to shoot fireball (replacing with a basic punch or sword attack or something). Wasn't too hard to add, just a trigger with some animation. If I had time, I'd make them spawn over time so they didn't all animate at the same time, but meh.


Health and Stamina

I also added in Health and Stamina bars. These display a percentage of what it's displaying. If/when I add a shop for the stamina, it'll just be changing the max value of the stamina on the player. That simple. You can only dodge or attack if you have the stamina built up.


Menus, Title Screen, and Saving

There is now an in game menu that has a whopping 3 options. Resume, Save, and Exit. Resume just exits the menu, save.... saves, and exit takes you back to the main menu. The saving will be pretty simple, just saving a text string with the important information, last door the player went through, the map name you saved on, player health/max health, max stamina, and coins. At the moment that's all that's important. "Theoretically" even the slime being killed will be saved. Right now all slimes have an autosave when they are killed. I'll probably remove it from some so that you can leave the room and get a little extra money by killing things if you want.

Past that, my brain started to turn to mush due to the time of day it is. So instead of code, I made the start screen and started on the main menu. I did the art and placed the menu text on the screen. I would "like" to animate it, but as I'll only really have 8-10 hours depending on when I get up, I probably won't have time since I don't have a fluid set of levels or a boss atm.

To Do List

I made a to do list of bare minimum, and I did tick off a few tonight. Not sure how much this will really be a complete game, but I'd like to add in at least some hazards to the dungeon, a boss, and letting you walk through the different levels. (Dungeon, willow's crest itself, willow's crest lake, the path between willow's crest and the lake, and the boss room) Anyway, here's the list, and I'm taking off for the night. Hopefully I'm not too tired when I wake up.

Needs:
Boss
Make sure save/load is implemented
Main menu
continue (only visible/option if save data exists)
new
exit

Wants:
Story
sword attack instead of fireball
Shop art
buy stamina
buy health
buy dodge
buy fireball
dungeon hazards
extra enemy
Health pickups from enemies (5% chance?)
Animate start screen with an intro panning up and parallaxing

Update for Day 6

Did quite a bit today. Added in a lot of the basic sound effects, fixed a few bugs, made the slimes be random colors.


**Note: Smaller image due to file size restrictions on itch image posts.

Try the current build: http://randyphillips.cf/lrj-2019/

Sound Effects

There are now sound effects for the player attacking, taking damage, and dodging. The slimes also have a jump and take damage sound. No death sound yet. It's amazing how much just adding in sound effects and music can add to the feel of a game.

Bugs

There were a few small bugs I had to fix. First was being able to attack while dodging. Not a hard fix, Second was that when you attacked, the move direction you were going stopped taking input, but you kept moving the way you were attacking. Now you just freeze in place when you attack.

For slimes, taking damage was stopping the jump animation if you hit them mid flight. This gave a similar issue to the slimes as the player had when attacking. They'd stop animating the jump and just keep sliding. While stopping the animation is not normally a problem, the jump animation called an event through the animation itself, so stopping the animation early broke things. The fix was to do the damage "animation" (which is just changing the color back and forth) on a new layer in the animator controller. I think a LOT of people don't really understand the animator very well. It's a good thing to pick up, so watch some tutorials if you haven't messed with it much.

Random Colors

The problem is that the animator can do some weird things also though. For instance, I just autokeyed changing the frames of the animation like any normal person would. Problem is, since I didn't specify the sprite specifically, it seems unity takes an instance of the sprite renderer and applies the entire value of the sprite renderer. What's that mean? That means even though I was changing the color of the sprite renderer on start in code, it was over writing the new color. I got around this by applying the color in the late update every frame. Didn't seem to do anything performance wise really, but is hacky. This also broke the animation for taking damage that I just got working. Luckily in code I already have a flag checking to see if the slime is taking damage, so it's just adding an if statement.... still annoying though that I had to do the work around in the first place.

What's next?

After adding in all the animations, art and sound effects to what I have so far, I'm really starting to feel a world coming out of it. One with people walking around that you can talk to, quests to do, etc. Again, starting to feel much more like a game. I think I may add an npc soon, maybe even just taking a day to make a bunch of art for a bunch of npc's and try to come up with unique people. Anyway, that's it for today. Enjoy!

Update for Day 5

Didn't do much today, but I wanted to get "something" done, so I added in some bushes, grass, and water.


Every Little Bit Helps

So, I kinda slacked today, yeah. BUT I did do SOMETHING, which is important. Even if it's something small, it's important to get just a little done. Keeps you in the correct mind space while not stressing you too much.

Update for day's 3 and 4

On day 3 I added in the basic slime enemy and added a bit of dirt into the tileset. Works pretty decently. Day 4 though, I have added in dealing damage to both player and slimes. Slimes can die, player can not.


Slimes

The slimes are just be basic non-fancy slimes from almost any fantasy type setting. I like the motion I got with them. Rather than being constant, they jump. They have a random delay for how long they take to jump and they also have a random strength to how far that jump takes them. I like this more than the normal rolly/sliding slimes. They have a great feel and makes it hard to predict them. 

Damage Dealer

So when dealing with projectiles (weapons that don't instantly hit), I generally make a script like what I've done here. The same script that's on the fireball (deals damage to enemies, not the player) is the same script attached to the slimes (deals damage to the player, not other enemies). This script sends a custom class object that stores how much damage to send, and the position that damage is done. Sending the position is super useful for making the player get pushed away when taking damage. I'm just doing a broadcast message to whatever object the damage dealer collides with. 

Fireball

The art for this will probably change. At the moment I tried to do a grayscale image hoping it would look decent. I don't actually like the fireball in any color I've put it, so the art will probably change, or it could become daggers or arrows, or something else. Just wanted something to show damage being sent out.

Layer Indexing. Things go in front of and behind other things.

So the fireball, slimes, and player are all on the same layer, layer 1. Because they all move around, I have a very simple script that takes the y position divided by 10,000 and set that to the z position. Why? Well, the way unity does things in 2d is it puts things in order by it's order in layer. Anything lower than something else is rendered behind it, kinda like it's own z-axis, but it doesn't matter where in z that object is, it will ALWAYS use the order in layer first. THEN you can set the z position. Things with a positive value are rendered as "further away" or behind other objects in the same layer. This might sound odd, to have two z-index's for rendering, but it's actually VERY useful. Why? Well, I'll explain the way I have things set up. Right now everything that can be walked on is on order in layer 0, meaning behind everything. Then everything that moves around (player, slimes, fireball) are on layer 1, and everything that is always going to be on top is on layer 2. The tileset painter I use (my own tilemaster extension) paints into the order in layer that is it's layer number. This makes painting tilesets with multiple layers much easier.


In Closing and What's Next?

Anyway, my brain is kinda fuzzy and numb at the moment, since it's a bit past midnight. It's getting there, and in most weekend jams, this is probably about as far as I would have gotten with this being a solo project for me (well, except music). So, I may start trying to think of story. Since I have message boxes, it would make sense to have things to do and talk to/read in the world. You know.... the whole "game" thing. If I can't come up with story, it will probably be more art or enemies probably. No specific plans. :D It's nice to be at the stage of "minimum viable game" with almost 2 weeks left in the jam :D

(1 edit)

Update for day two!

Added in the roll/dodge mechanic with a bit of dust poofing while you do it. Also made a bitmap font system and a message box system (using the bitmap font system). I wouldn't doubt unity has one built in or something, but meh. :D This one types out and has a waiting arrow like the good old rpg's always have. Here's the game's state currently in gif format.


Now for more technical bits.


Text and message box

This is the first time I created/used a bitmap font like system. The script itself has what I called a Character map, which is just a string of all the valid characters. After that is an array of sprites. The index of the sprites corresponds to the character map. This means I can do a simple "indexOf" on the character map and that gives me the index of the image to be used from the array of sprites. Kinda simple right?

For the message box, I can have a maximum of 12 characters per line. If I type more than that on a line, it goes to stupid mode and just types characters, so will continue on the next line automatically. This "shouldn't" be done if I set up the scripting right. It also automatically fills extra spaces on the end if there is a new line. This is to keep the count accurate when generating the next line.

The message boxes are also typing out through a coroutine. I did this so that I could set the timescale to 0 when a message is being displayed, and set it back to 1 when it's done. This will allow conversations to happen while in battle or if you pick something up while in battle that shows text. I don't know that this will be required for the jam really, but it's in place now, so :P

Lastly, the message box can be called as a static function from any script. There are a few things you can change also. You can change the typing speed as well as the font and background colors. The idea is to allow for changing the color/speed for different people.


Dodging/Rolling

I added a simple 3 frame animation of the character rolling. I decided the up direction didn't need different art, so all rolling directions are the same animation. While it's playing the rolling animation, every .1 seconds, I create a dust cloud object that deletes itself after a second. Rolling also forces you to keep your direction and multiplies it by the speed you were going. There's a very short acceleration when you start to walk, and if you hit the roll button while in that acceleration, you will only multiply by the current speed. This means if you don't time your movement to already be walking at full speed in any direction, you won't get as far. I can change this, but I don't want to. I want to be able to get partial directions, instead of just the cardinal directions and diagonals. Feels more real this way. 

You also stop if you roll into something, but if you are already hitting something and roll, you'll keep rolling until the timer runs out for the roll or you hit something else. This is so you stop if you hit a wall, but keep moving if you are already against one. The idea behind this is to have obstacles like rocks, sticks/stumps, puddles, etc while fighting things. Making you be a bit more careful to not get stopped by what you hit.


Time

I only spent around an hour to do the dodging/rolling, and spent around 3 hours to do the bitmap font and message box system. So, that means the total time spent so far is about 6 hours so far. I probably spent way to much time on the message box system, but I wanted to be able to add story if I needed. I should also note that I am not counting time writing the dev log posts (which is taking a decent amount of time) or time to take gifs/screenshots.


What's next?

I'll probably work on a basic enemy (slime or something), basic player attacks, and both enemy/player health next time I work on it. (Tomorrow?) Let me know what you think of the game so far! Also, any suggestions for the name of the game?

(1 edit)

So, I was just made aware the low res jam was happening again. I've decided to use the whole time this time instead of just one weekend like I've done in the past XD, though I may have to devote a lot of time to a subcontract that I've agreed to do. That's a different thing though, so I'll start off with what I've done this first night. I guess I should say a few things about what I'm using and such first.

Art: Photoshop (any pixel editor would do, I just happen to use photoshop for work and such, so I already have it.)

Engine: Unity 2019.1.10f

Capture Software: Screen to Gif for gifs, Xsplit for video (have a license, so no watermarks, and it's so much more performant than OBS.)

Extra Assets: 2d pixel perfect camera from unity, Tilemaster tileset placer from the asset store (old tool of mine)


Tonight I did some arts and some extremely basic player code. After running around for a bit, I decided I want to make a dash and attack, boss only type thing. This should simplify what art is needed while limiting code for powerups and ai. Right now for placing the tiles in the tileset I made, I'm just using my good old Tilemaster script I wrote a few years ago. A few small updates for it were required, like adding a button for disabling the painter (before you could just close it and it would stop, but it keeps running in newer versions of unity), but there's also some limitations to it. For instance, you can't paint a prefab, meaning you can't paint things with animations or scripts or non-square colliders. I may update Tilemaster's code to help with that if I feel like it, but probably won't due to time limitations.


Anyway, Today's art was the basic "village" type of tileset and a basic walk in left/right/up animations. Past that, I made an animator and a basic player script to move around and get a feel for what I want. All of the art is 8x8 tiles. This means that the tile grid that you see on the screen will also be 8x8 tiles. I MIGHT change things later to where things are 16x16, but that'd really only be 4 tiles on the screen and may limit how large things can be but still fit on the screen. Anyway, for now it's just 8x8. Again, first night, only about 2 hours of effort, made art and code, so..... Not a ton to show, but I did make a gif for people to see progress. Oh, also made a little poof cloud. Will be for dashing, and maybe if things get thrown around and such.


Game is uploaded. Find it here: https://itch.io/jam/lowrezjam-2018/rate/293610


Boss battle.... works.... so does death...... so does beating the boss..... sleep now.... 5am.................. work............. tomorrow....................... zzzZZZzzzZZZzzz

Added in a doorway that opens when you collect all the coins. The doorway also tells the camera to switch to the boss room instead of following the player when they walk in the room.


I had a lot of problems getting the spawner and coins to work right. I'm using my own maker tool, and the spawner destroys all other spawners when it's loaded so that there's only one. Unfortunately my maker loads the object into memory so that it can clone it. Normally this is useful for things like the tiles, enemies, coins, etc, but in this case the invisible one was deleting all other spawners when I went into play mode instead of edit mode.


Next I intend to make Astrea (the witch girl) shoot out little fireballs for a few tiles, and the boss to move around. After that it's pretty much polish and extras. So almost to the minimum acceptable game.

Just a quick update that I have been super super worn out from work, so I haven't really done ANYTHING since the last update. T_T I don't have plans for the weekend, so I should be able to hopefully finish everything up.

I'm going to suggest speeding up the transitions from screen to screen quite a bit. Still have them, sure, but faster transition means less waiting which means the player isn't as bored playing the game that's all about clicking/tapping fast.

Changed some saturation levels to make the background less attention drawing and the ground a bit more. I also decided to take a video this time to get the music and sound effects out there for the world to see. 

Some of the way through the day Sunday now. I've added in a lot of smaller things that needed to be done. Largely getting pixel perfect movement working with everything properly, parallaxing, the art for the boss, fading in/out, creating a character spawner object to work with the level editor, etc. Some of it's been fixing small bits that my level editor needed fixing, and a bit of optimization in general also.

Here's where it currently stands with all the parallaxing in effect.


Dare I say it? It's starting to look like a game now. :D

I do need to make the player be able to attack the boss some how, haven't really figured out what I want to do with him. What boss you ask? The cutest rock golem you've ever seen. :D Well, that's it for the time being. I'll probably be back to working on it before the end of the night, but I'm gonna take a break for now.


(1 edit)

Ok, so I didn't get ANYTHING done yesterday. I was sooooo tired. BUT! Today IS a new day, and it's a weekend day. So, I set up a trello board to make sure I have the basics of what I need to have this game be a thing. I think as far as a basic game, I will be pretty much done by the end of the day. My goal is to finish the coin, add a title/end screen, at least 1 enemy and one boss. Then I would say phase one is complete. After that, add in an extra enemy, then start on a second level set (tileset, enemies, second boss, maybe powerup) and then add pretties and more enemies.

Edit: OH! Forgot the Trello board link. https://trello.com/b/guORrPwT

I was personally going to use a hidden hud like that as well. Not quite the same, but like if you are at full health, it would be off the screen and would only show health left, lives would only show up when you died or paused, etc. It's a good idea to save space. You can also potentially use sound to indicated low health, or change out some of the art like Mario does.


It's looking great though. Can't wait to see some enemies in place.


(I also want to say, your profile pic is pretty much my games character XD)

Didn't really get much chance to work on the game after work today, but I did get a smidgen done during lunch. I made a coin that can be picked up, though the graphic is currently just Astrea in her crouched ready to jump frame just floating in space. So next lunch period I guess, I'll be trying to make a coin graphic :D

Just finished up some movement for the game. Have some running and jumping and landing. Right now I'm using a capsule collider for her, but I think I'm probably going to end up using a box collider. The capsule feels bad when trying to jump near edges, so a box that's slightly larger than her footprint will probably make it feel better. Anyway, here's a gif with some of the movement in action.


Oh, also, some variable height jumping is in play too. It's already starting to look like a game and it's barely been 24 hours while doing the day job as well. (maybe 5-6 hours)

I think my next thing to tackle is parallaxing the background. From there probably basic collectible (like coins), then basic enemy. I think that will be my goal to get done before the weekend starts.

(6 edits)

==========================================================
Quick Links (Updated as new stuff is added)
==========================================================

Trello board: https://trello.com/b/guORrPwT

Game Page: Coming Soon

Current Status:
Door in place and camera pans to boss room.



Next Goals: Code boss, reset level on death, way to kill things.







==========================================================
Original Post (Not updated)
==========================================================

So this is now my third low rez jam if I remember right. Last time was low rez knight which was kinda a zelda-like that didn't have any story what so ever. This jam is interesting since it will be 2+ weeks long. Unfortunately that probably means I'll slack a lot. Anyway, onto the actual devlog.


First day, I made a basic environment to get started with. I'm using my own package I call maker. It's a tileset painter that runs in the actual game. Eventually I will probably sell it, but for now it's my tool and no one else can have it >:D. Anyway, it's more or less a tool to turn your game into a maker akin to mario maker and the like. Why not add a level editor to your game right? Well, it's not finished, and also t keep in theme with the jam, I'm only really using it to make the levels for the final product rather than have an actual editor in the game. Anyway, here's an example of the terrain.

It works pretty good, but as expected, limited space for gameplay in a 64x64 pixel screen.

I also made 2 frames for showing the main character Astrea walking. Here's a single frame of her:


There was a lot of talk in the discord last night about help getting unity setup to be pixel perfect and show the right resolution and all of that, so I made a zip file containing an entire get started project for the low rez jam with unity. You can check it out in the resources subform here for the jam. It contains a camera that automatically snaps pixel perfect and a script so that you can add it to other objects. There's also a canvas that adds borders to the screen in case it's in a widescreen format when you play the game. Yay for black borders am I right?

(1 edit)

Hey guys, in the discord last night, there seemed to be a lot of people having problems with unity2d and getting pixel perfect stuff set up. So, during lunch I started making a basic project to do pixel perfect 64x64 in unity for those that don't know the kind of stuff you need to do. Here's the package (about 8mb) http://calibermengsk.com/uploads/LowRes2DSetup.zip

Hope this helps someone!

No render textures or any of that stuff either, so maybe not as confusing? It assumes 8 pixels per unit and has an orthographic view size of 4 (meaning 8 tiles tall by 8 pixels, so 64 total)

Also includes a canvas that will add a border, so even if it's viewed in fullscreen on a widescreen monitor, it will add black borders.


**NOTE: This is an entire project, not just a package, so if you want to use the scripts and stuff you can still just copy the stuff from the assets folder.

Just thought some people may not know about it. The meetup is to help people learn how to work on a team, potentially not in the same room, as well as to help with team forming for those not on a team. Here's a link to more details and a better explanation that what I just gave.


https://www.meetup.com/St-Louis-Game-Developers/events/243510584/


Hope to see everyone there!

I would like to find a team. I have been programming in unity and know almost all aspects of it. 2d, 3d, multiplayer, vr (haven't done it in a while), etc. 


I can also do art stuffs, but I'm not fast and am not at a professional level.

:P Don't worry, the pull themselves back together after they feel the threat of the evil human leaves the dungeon :P

:D Thanks for playing it. :D