Tuesday, October 30, 2018

Board Game: Slay the Oly Dragon Prototype

Progress on the RPG computer game is continuing steadily, but I want to finish up a couple things before my next posting. In the mean time, I'd like to introduce another project I have going on (that's actually in a playable state!).


Most RPG board games are very complex. Some have in depth stories that must be followed, others require dungeon masters that would otherwise be a player of the game, and if you haven't played recently then relearning the rules can take an hour. (One exception I'd like to point out is the Dungeons & Dragons "Dungeon!" game. Simple rules, easy to play, and even supports single player. Still too difficult for very young, but it's a solid game.)

I played many of these board games with my young son using VERY simplified rules, but even then those rules were quickly thrown out the window and the game lost all its structure. I wanted a game we could really play together. Giving up buying one, I developed my own with very young RPGers in mind but still interesting enough for those older playing with them.

The game was originally tested with my 3 year old, and to my wife and I's astonishment we all actually followed the rules and he loved playing it! And it had an educational aspect to it as well - attacks involve rolling 2 dice so my son had to add up his dice rolls. Sometimes that involved him counting the little black dots but occasionally he could answer by memory right away (learning by sheer repetition).

Some key aspects to making the game accessible by a younger audience:

  • Rules so simple they could be written on the game board itself - no separate instruction manual.
  • Just a few components: the board game, two standard 6-sided dice, two types of cards, and a handful of tokens to represent character positions.
  • I like the idea of branching paths, but from much playtesting we learned it does not work well with very young players - so there is a single path to follow.


We still play the prototype to make tweaks (it has quite a few more marks now than these photos below show), but we're in the process of making it a bit more "professional". There are board game manufacturers where you upload your drawings and they deliver you a high quality printed game. Our next step is beefing up the art-work and then getting it printed!


Prototype Game Board



Encounter Cards



Loot Cards



Saturday, September 29, 2018

RPG: Starting Island

This past month has been building up the content of the starting area. In addition to your small farm, there are several other farms and houses, a town, a dangerous forest area, and a cave.

The initial tutorial part to teach the player how to use tactics, pickup weapons, and attack is still in place. But now I have a populated island where you really start playing the game.

Time for screenshots...

What it looks like first leaving your house... (I'll cut down the player's visibility, but this vision is useful for debugging now.)


And the whole starting island...


There's actually a good amount of planning in this island layout. You start at the southwestern portion, and there is a path leading you into town. If you follow the path great, it's safe and you can explore & talk to villagers. If you don't follow the path and instead go north you'll come across a farmer that has red slimes invading his crops...


This is the first "quest"; he'll ask you to clear off the nasty slimes. The slimes can't move, so it's easy to flee / heal up to take them on one at a time. I don't have the farmer in yet, but I'll have him pay you for clearing his fields. I purposely have all fields that are fenced clear of slimes whereas the unprotected fields have the invaders.

Going east, the island pinches down to force you into the town. Town will have a shop (buy/sell items), inn (more quests), church (heal for free & learn a prayer based spell), and a port (to leave the island).

Beyond the town is the more dangerous portion - a forest full of rodents of unusual size. I suppose I could have fire spurting out of the ground, but that may be a bit too blatant ripoff.


At the far southeast of the island is a witch's hut to learn a new spell.

Finally there is a cave in the northeast portion of the island that has the most dangerous creatures.


Descending to the bottom of the cave will have a chest of coins; enough to afford a ship off the island.


Alternatively, you'll be able to sell the rodent hides for money to also eventually buy a ship; safer but it will take much longer. I like giving the player options on how they leave the island.

As I've said before, all graphics are temporary. There will also be much more to do on the starting island. It needs to be interesting enough to hook players to want to get a ship to explore the rest of the world.

Friday, August 31, 2018

RPG: Events & Tutorial

I fixed up many small quirks but also got a few major items done...

2 New Tactics:



- I never want a player to get completely stuck (no way to die, no energy to move, trapped on a deserted island), so I made a "Return to Roots" spell. If cast, it will take you back home but with great consequences. It's only a hair above death in terms of what it does to the player.

- I've also added a "Search" tactic that will reveal hidden objects. Now I can put in traps / hidden treasure that a player can find if he or she searches nearby. I am worried about the side effect of players feeling they have to perform a "Search" in every square of the world, so I'll avoid adding goodies in the middle of nowhere. If you search and find something, it shouldn't be a surprise. I tied this "Search" tactic in with the tutorial system to train the player the user interface.

Event System:


There is now an event system that can cause actions to occur based on a variety of triggers. Triggers may be a player leaves a location, player enters a location, a character is killed, or an item is picked up. Available actions include showing a message over the user interface and enabling a tactic. Basically the bare minimum I needed for a tutorial. The types of triggers and actions will expand greatly as development continues.

Tutorial:


This update is all about teaching players how to play. I did a playtest of the game to see how intuitive it was to pick up. The controls are very very simple, but even though they're simple I still needed to tell the player "Left mouse button move/interact", "Select tactic in the bottom right", "Right click to use tactic", and "Middle mouse wheel to pan/zoom map". Regardless of how few words I used, everyone immediately skipped over the how to play screen. I even just had a picture of a mouse with arrows pointing to what each button does and still no one took the time to read it.

Can't blame them much, nowadays it's expected that the game's beginning will teach you the controls (and that's not necessarily a bad thing). On the other hand, I hate it when you're stuck in "tutorial" mode of a game for 30 minutes. If the how-to-play takes that long, then it's overly complicated. Knowing how to play, I can get through my tutorial in 10 seconds. I'm hoping most others get through it in a couple minutes.

What you see when first starting...


After moving...


After using the Search tactic...


After picking up the knife...


After walking outside and to the obstruction...


After walking outside the property...


I may go a very long time between play sessions of a game (even a RPG), and it sucks trying to remember what that tutorial taught me months prior. So for my game I have a handy question mark button at the top right - click it and you get a on screen tutorial of the basic controls; all you need.


And of course everything in this post is temporary developer art...

Monday, July 30, 2018

RPG: Ranged Attacks

Character data has now been externalized, but that doesn't make for an exciting update.

However, ranged attacks have been implemented! Both fireball spell attack and bow&arrow style weapons.

First the fireball...




And going after an unsuspecting guy...



The fireball has a blast radius and you can kill yourself by standing next to where it detonates.

Notice the bow and arrow on the ground?



If I equip both of those, I can shoot (currently comically large) arrows!


The basic arrows only affect whoever they directly impact. But I'm making variations of arrows such as exploding to do other types of damage.

Different bows will affect speed, damage, and maximum range. Different arrows will affect the type of impact and the resulting damage.

Friday, June 29, 2018

RPG: Sounds

No images worth posting for this update, but there was progress nevertheless...

Sounds have been added to the game! The sound volume is dynamic - it adjusts as the player gets further or closer from its source. I still need a large library of sound effects, but the plumbing is in to easily trigger one for an event.

Characters can also have "idle sounds" that play randomly. For example, a tree may have a short audio clip of birds chirping that it will randomly play. If you're next to one tree you'll hear it pretty rarely, but if you walk into a large group of trees it sounds like a forest full of life. I was originally going to add background music, but the ambient character sounds are so good I'll probably just use that.

I've also put a lot of effort into externalizing all character data. Once that is done it will be far quicker & easier to expand the character library.

Tuesday, May 29, 2018

RPG: Stats

Typical RPG Approach


I'm taking a very different approach compared to typical role playing games when it comes to stats (strength, intelligence, wisdom, constitution, dexterity, charisma). In most games, you start off with a beginning set of stats - possibly random, possibly with some user decision. Then as you "level up", your stats either increase automatically or you have some ability to pick which ones to increase. In some extreme circumstances, death may reduce your stats but normally they only go up.

In response to the "typical" way of doing things...

  • I hate randomly assigned stats. I shouldn't be crippled in the game for the next 20 hours because a random number generator didn't go my way in the first 20 seconds.
  • Although picking which stats increase when you level up is nice, it's usually fairly meaningless. Unless there was some kind of equipment with a minimal stat I was short on, I would just spread them fairly evenly (maybe a little extra into intelligence if I was a wizard or dexterity if I was a rogue). Still fairly meaningless.
  • I don't like the idea that an intelligence or charisma number could determine how I could make decisions in the game. Although Fallout has some funny scenes with that, again I don't want a poor decision early on to ruin the next 20 hours.
  • I don't like permanent penalties such as death reducing a value. Penalties should always be recoverable in time.


My Approach


I'm going with just 4 stats:
Strength - Primarily for melee weapons.
Dexterity - Primarily for ranged weapons.
Focus - Primarily for spells.
Constitution - Your body's current toughness (separate from health).



The values of each stat will be much more fluid and vary based on your recent actions. When you start the game, you're a very young, relatively weak, and inexperienced adventurer so your strength, dexterity, focus, and constitution will all be low. As you swing your sword around, your strength will go up and thus deal more damage. As you use a bow, your dexterity will go up and thus aim better. As you use magic spells, your focus will go up and thus require less energy for a given spell. And as you survive marching the wilderness, your constitution will go up.

Maybe at first you were a sword user, but decided later on to go for ranged attacks instead. Over time from disuse, your strength will decrease but your dexterity would increase quickly. Same goes if you switch to just casting spells, your focus will increase but your strength and dexterity will go down. It will be possibly to try and exercise all three - regularly cast a spell, shoot an arrow, then do a finishing blow with a sword. But then you get into the jack of all trades, master of none situation. It will be very difficult to max all 3 of them.

After using just my sword...


After casting many spells and disregarding weapons...



But how will a player get permanently better over time?

That will be taken care of by skills! (Which I haven't gotten to yet...) How well your action does will be based on your stat + your skill. And your skills never go down. Think of it this way: You never forget how to ride a bike, but if you haven't been on one in a couple years you're not going to win the Tour De France.

Concerning using just focus instead of separate intelligence and wisdom for spells... Regardless if I'm praying to a god for divine intervention, reaching out to nature for help, or just materializing fireballs out of my hands, all of those requires focus. Is there really a benefit in splitting them up into separate stats?


Constitution & Death


Constitution is a bit different. Constitution will influence how much damage you take for a given blow. Instead of 30% of your health, maybe you only take 20%. Constitution will steadily go up and up and up. But if you get knocked unconscious, it will drop like a rock. Then you'll have to take an extended time to get it back up. Here's the deal though - you go into a boss fight with high constitution and get knocked down. Sure you can heal your hit points instantly, but your constitution has taken a blow and if you jump right back into the fight you'll be weaker than the last time.

Constitution after fighting for awhile...


After getting knocked down / dying...


This approach to constitution is how I want to give consequences to death without totally demoralizing the player and causing them to rage quit.

  • If there are no penalties for death and you start 15 seconds away from your corpse, then you can jump right back into the same battle and possibly win it - who cares if you die, it really didn't matter.
  • If death is permanent or very serious and you get struck down, then screw this game, it just wasted hours of my life building up this character so I'm going to do something else.
  • If death hits your recoverable constitution but has minimal other consequences, then you still REALLY don't want to die, but you also don't hate the game for stealing your time if you do. You just need to take a break from that boss fight - build up your skills while your stats improve - then go back after him.


Other Improvements


In addition to adding stats in the game, I did lots of code cleanup of tactics and made it so you can pickup health and energy potions off the ground.


Monday, April 30, 2018

RPG: Tactics

I now have a solid foundation for the tactics code and many tactics/spells already implemented.

The latest user interface...


One key aspect I want in my game is to have no set "good" or "evil". You have alignments with certain groups of people, but those are dynamic based on your actions. In Diablo / similar games, you left click on an orc for your basic attack, but you can also safely left click on a blacksmith to sell your equipment. I want you to be able to talk to an orc or attack a blacksmith.

To accomplish this, I've dedicated the left mouse button to "Interact" and the right mouse button to your selected "Tactic".

Left clicking on the ground, an item, or a character is your basic "Interact". If you click on the ground, you'll walk there. If you click on a bag of coins, you'll pick them up. If you click on a chest, you'll attempt to open it. If you click on a door, you'll enter it. And eventually if you click on a person, you'll attempt to communicate.

Right clicking on the ground, an item, or a character does your selected "Tactic". At the lower right of the screen, you can select your active tactic (highlighted in red). If you right click on that blacksmith when the weapon tactic is selected, you'll attack him. You could even click to heal someone that would normally be a foe. (There are keyboard shortcuts for the tactics.)


The tactics are grouped by row...

Row #1: General


Attack - Use your wielded weapon - sword or ranged weapon.

Lock Pick - Pick the lock of a chest. (Chests can be unlocked - single left click opens them. Or locked - require hitting many times with a weapon or use of the lock pick skill.)


Row #2: Arcane Spells (Wizard)


Teleport - Instantly jump to somewhere else that you have vision on.


Flame Wall - Create a ring of fire that lasts several seconds somewhere on the map. Characters within the fire take continuous damage.



Row #3: Divine Spells (Cleric)


Heal - Heal yourself or a target character.

Protection - Create a protective ring around yourself or a target character.


Presence - Show the relative alignment of nearby characters.


Holy Bolt - Request a bolt of lightning to come down on a target character.


Resurrect - Bring a target character back to life.


Row #4: Nature Spells (Druid)


Entangle - Vines come up out of the ground slowing down the movement of those nearby.



You can see the game engine now supports effects that not only draw on the screen but also can affect characters (slow them down, deal damage, etc.).

My preferred role has always been Cleric (and hence why I've already filled out all the cleric types skills), but I've never been a fan of having to choose a specific path and being prevented from stepping outside it. Anyone is able to learn & become skillful at all the tactics. I'll go into stats later; but I'll use those to help balance between someone primarily a magic user vs someone primarily a fighter vs someone that is a jack of all trades / master of none.

Also, I hate warm up times / other preventative measures to keep you form taking advantage of all the skills you know. If you have the Energy, then you can use a tactic/spell. (Doubtful I mentioned this before, but my Mana is now considered Energy - doing a tactic will decrease your Energy. And the cost of tactics varies - Heal costs less Energy than Resurrect for example.)

I've jotted down many other ideas for tactics, and I am fully expecting to have all 20 slots filled for the game. Halfway there already!