Started 1 year ago (2016-05-19T09:00:00Z). Goes forever.
Do something, anything, related to the development of your game every day!
"Great things are not done by impulse, but by a series of small things brought together." - Vincent Van Gogh
"Inches make champions." - Vince Lombardi
Added some doors between rooms. Okay, not actual doors that can be opened and closed, but I carved open hallways between rooms.
I haven't covered the case that 2 rooms are neither vertically or horizontally aligned. So for now, they are inaccessible, so that's next.
Been stumped by my overly-complicated combat system lately, so I decided to take a break and start some proc-gen.
This is just a really simple algorithm that randomly places some rectangles with rigidbodies, lets the physics engine separate them, and then rasterizes the result to the tile grid. It's a start!
I am now the unquestioned leader of the gamedev streak!
Kneel before me! /maniacal laughter
Anyhow, it is now possible to take out items of containers :)
So today I spent only some time with cleaning up my code for the inventory UI system. I removed a lot of redundancies, so there is no visual change so there is no gif or screenshot, but: there are changes!
Cleaning up is so satisfactory, I should do it in my flat more often xD
I was already in bed when I remembered that I hadn't done gamedeving today. I thought maybe I could let it slide, but I couldn't. Then I wanted to fake an entry but I couldn't do that either, so I decided to actually do some work! I didn't feel like pixeling so I thought why not spend half an hour on selecting container slots - and it was pretty easy to get the system up and running.
I have an idea for tomorrow to make it even slicker :)
Was on a ski trip with my in-laws from Thursday till tonight. However, I managed to get some gamedev in on the plane ride back.
Nothing worth making a GIF of, but I made it so normal attacks will NOT trigger the defender's damage reaction if they miss. This was working for the projectile a couple updates ago, but I made it more generic for any attack,.
I also added logic so the grappling hook will trigger the OnArrival behavior of the defender when it performs the final 'kick out'. This means, if you grapple an enemy right on top of a trap, it will actually take damage.
Yesterday I came down with the flu - and it came down hard. But still I managed to squeeze in half an hour of gamedeving.
Container Selector now gets properly resized and if you selected one container you cannot scroll through others, yay.
I decided to rework UI and inventory systems before spending any more time with containers (it is just so cumbersome to agonize over so shitty code xD)
At a later point I want to link the infos you are shown to how much of the effect you know. At stage one it will only show "?". At stage two it will show the name of the effect. At concurrent stages there will be more info available up until the last stage where you can see all the info.
I didn't have much room today (pardon the pun) for gamedeving so I only added two poison mushrooms. That helped testing inventory submenu ui and the poisonous effect :)
I pixeled them myself! Not the best work ever but nothing to be ashamed of :)
I need to change some of the properties AND:
note to self: sort effect list after buffs (apply buffs to max properties first, then every other).
if you'd have a "increase maximum health" and an "restore health" effect on an item in inverse order, you'd first restore health and then increase maximum health, which I find stupid.
I begun implementing container.
For that I had to refactor inventory and inventory UI system and I have to say:
I am not displeased. (Also, I'm watching a lot of Silicon Valley, love Peter Gregory :D )
The container UI has an item pool for the item slots, which is very neat (only if a new container has more slots than any previously container, new ones will be generated. If there are less slots, inactive ones will be deactivated)
Not a lot of motivation today. Watched the Spartans hang on to beat a shitty Iowa team by 3. Not very inspiring.
However, I managed to add a little feature. Previously, it was possible to grappling-hook anything; including traps, which I want to limit. Now, there is a flag in the base Entity class, 'moveable', which is considered when trying to grapple. Of course, the Trap wasn't actually inheriting from Entity, I had to change that.
No GIF because I can't show something not working. Also, I'm lazy. Goodnight
My inventory submenu now gets positioned atop the current selected slot :)
I have to get back to speed… so I figured I should do anything to get me started.
I chose to do the most fun stuff, so I started playing with sound. This will be useful for any of my projects, since a game without any sound is always a bit sad.
I finally implemented (or better yet connected) mixing ingredients over UI.
Also I fixed some bugs and annoyances, now I want to refine the mixing process based on a few rules:
-a solid and a powder don't mix
-if one of the items is a solid, the depiction of the other ingredient should be used
Now with actual consuming!
Today I implemented some string conversions for a later stage and then finally some connection between UI and logic. The result is, you can now consume items from within the inventory!
I should really implement mixing xD
also, I want the submenu to be shown on the item slot it is called upon, that shouldn't be too hard.
Updated the grappling hook to calculate the nearest non-blocked tile and 'kick' (that's what I picture in my head at least. No actual animation) the defender to that position.
It's lacking the "OnArrival" behavior when the defender reaches its final destination. This would trigger the traps attack, for example.
I'm not proud of today, I got way less done that I could have but hey, that's shitty architecture xD
Now you can grey stuff out, if it is not compatible with the ingredient you want to mix it with.
I now need to connect the mixing logic with the actual mixing ui. Then I need to abstract it to be able to use the same system with e.g. applying poison to a blade or buffs to an armor.
Today and yesterday I didn't have much time, but I did work on fixing some shadow weirdness.
As you can see below it was very distracting zoomed in really close, but with a few tweaks it looks much better.
Sadly I also found out the way I was doing the walls doesn't work as good as I thought it would. So I may need to draw more tiles.(I was hoping to avoid it if I could, oh well)
As you can see from the gif, I ain't no world and level designer, but this mockup will do its job.
I added some colliders to the scene, so you can't walk over everything, but then I had to switch to rigidbody movement in order to use these collision detections.
There are some major glitches, but I think I will get them in time (I fixed a bug today where you couldn't pick anything up if you walked over a tool - this is a con of a state machine: if you fuck up states, everything is fucked up)
Working in Unity is easy and comfortable, but I hope more features will be added over time. Also, someone should add a designer to my project :D
Changy changy changes:
Started some very basic work on the grappling hook today:
The obvious flaw right now is that it pulls the enemy onto the attackers tile. This technically is allowed in my combat system, but I don't want to encourage it. In fact, I may make it impossible for 2 entities to occupy the same tile, with the exception of traps.
To fix this part of the hook, I'll have to deduce the proper nearest point to the attacker to make the destination point for the victim. That shouldn't be too hard, but I'm honestly not sure what it should look like. If the victim isn't going to get pulled to center of the attacker, where should the grappling hook start? Should it have 3 points (attacker's position, destination tile, victim's position)? Or should I just fudge it somehow?
I didn't really have time today so I just made some visual changes. I tried the unity tilemap and it's gorgeous!
Art comes from opengameart.org
I have to find out how to add colliders so it feels more plastic, right now you can just walk over anything. I hope there comes an update where you can define colliders per tile that get painted together with the tiles.