Solace Crafting

Solace Crafting
Redefining the Crafting RPG

Sunday, October 23, 2016

Vacation with work?

I am in Hawaii right now! My first vacation other than visiting my family in the states since as long as I can remember! Maybe seven or eight years since I went to Mexico. There are wild chickens, lots of different flora, and half naked humans everywhere!

It's vacation, but only from my day job. I love working on Solace Crafting and hope to get plenty time to code in the sun. I got a lot done last week, but here I am, up before sunrise while everyone else is still asleep. Coffee in hand I'm ready to code, but I'll post a little update as Saturday flew past me.

This week I implemented a universal equipment/buff/attack stat system, so that I can add more types of damage and stats over time; a few skills that can be learned, equipped, and used; basic pathfinding with A*, though it needs work; monster drops; improved inventory/item stats display; added character creation/loading to the start screen; as well as adding player buildings into the save/load equations, which took a little thinking; I also added monster scaling over distance, though it's just levels and hp/damage at this time.

I wasn't sure how I was going to go about the player building saving, but it turned out to work just fine. I had to move rotation into the storage script and was able to optimize the class a bit while I was in there. Being able to save progress is one of the biggest requirement of an RPG type game, but also a pretty complex deal when you start having thousands of items slots in the form of chests, and rewards scattered throughout dungeons or houses you've built over time.

Currently I'm working on implementing the first tier of all four early skill trees, called the Archetype trees. These are Squire, Scout, Apprentice, and Disciple. Each tree has six skills in the first tier and are action/attack heavy as this is where you want to pick your main attacks for the first few levels. I've got some ranged magic skills in, some power attacks, and am working on buffs/debuffs, as well as ranged projectile attacks at the moment.

After that I'll be working on some crafting improvements to make sure the set enchants work, as well as building placement checks to stop floating walls, and that kind of stuff.

Sunday, October 16, 2016

The importance of good planning

This week, once again, I got a lot done: rare resources are spawning; crafting professions are leveling up; the reworked enchanting system works well; harvesting tool strength; reworked stat system with equip/unequip controls; stone and metal building materials; combat armor and damage calculation; dimension crystal crafting, placement, resource storage, and teleportation; encounter monster and loot spawning; as well as combat experience and levels.

That's not to say that all of those features are finished, but that they are all in and working.

Currently I'm finishing up the reworked skill system which is already working fine, I just have to finish the skill point management and "purchasing" of skills.

The past few weeks I've been talking about my minimalist approach to development, I thought I'd explain that quickly.
Imagine you have:

50 sections or feature genres in your game, and each one has
100 stages of completion. If each stage of each section takes
1 day to finish (that's 5,000 days)

you can spend 30 or 60 days on just one subject no problem, but then all the other 49 sections of your game, all important to it's playability and overall fun, go completely neglected. That was more or less how I was handling development before making a clear todo list and sticking to it. Now I'm making sure everything is level one before moving on to level two. A couple items might get an extra level or two here and there, but overall everything is evolving in an even fashion.

Sometimes it's hard to to settle for less than what you know you're capable of, but sometimes that's a smart decision when time and resources are extremely limited.

Next Saturday I will go on vacation (from my day job) for a week, and hope to get a decent amount of development time in. I will be out of the country for the entire 9 days, so there will definitely be lot's to do, but I'm counting on a fair share of downtime as well as two ridiculously long flights.

Saturday, October 8, 2016

Tiny but lots of steps

Ever since taking on my minimalist stance of just getting everything working no matter how bad it works, I've been making great progress! This has probably turned out to be my most important lesson over the years. I could fuss on making the sunset perfect for months if I wanted to, but that's no way to go about developing a fun game.

This week I got basic saving and loading in, a simple starter screen, monster spawning, resource generation (requires some tricks for terrain based trees), weapon damage, some crafting features, encounter spawning(towers), and a simple recall spell in. I did spend a little too much time messing with biomes and terrain generation, but I learned some lessons.

This isn't the best screenshot... but I don't like posting without at least one picture. Pretty much everything you can see in this shot in unfinished, but the basic programming is all in and working. I have a speedtree license, and hope to use all original trees, but for now have some basic Unity Trees spawning in.

Dimension crystals, like the one in the screenshot, are the basis of long range travel, respawn points, and several other features. That's mostly what I hope to be working on next week. I have a 2d minimap I was using to show crystal locations throughout a world, but I might change that to an easier to use list.

The towers in the screenshot are far away, but you can absolutely run straight to them and climb up them. They don't spawn their own monsters and loot yet, but that's their main purpose and we'll get there soon enough. Eventually I plan to have different towers for each biome such as pyramids for desert, and endless mineshafts in the mountains (which might be hard to see from far away).

The biggest problems looming on the horizon at this point are monster movement/combat AI and pathfinding. I'm pretty confident in the rest of what I'm doing, I might be looking into some third party tools to cover those that area up rather than take up a bunch of my time at this point in development.

Lots of tiny steps, but all necessary, and adding up towards the big picture!