Friday, September 29, 2017

RPG: Intro

I wanted to make a follow on to my Pebble watch RPG, but since the company is now gone that would not be the best use of my time. I still however have a desire to make the kind of RPG I want to play. And during a nice hike with the family one day, I decided on the type of RPG to make!

Two RPGs that I spent by far the most time on and enjoyed the most are Diablo 1 and a MUD called Dreamshadow. I played through Diablo 2 and 3, but I think the first one is best. (Please note, my opinions on Diablo 3 are before Loot 2.0 so I understand they fixed many of the issues with the PC version of the game.)

In Diablo 1, you pick from one of three classes which bounds your stats, but you really have complete freedom beyond that. Your rogue can cast spells and your mage can wield swords. Straying from your initial class definitely puts you at a handicap, but it's still an option.
In Diablo 2, you have to pick a development path for your character and that's it. To even experiment with other abilities of the same class you have to create a new character.
In Diablo 3, well, there is no customization. You have what everyone else will have at your level.

In Diablo 1, you have actual tense moments because of the consequences of death. (You really don't want the butcher to kill you, because then you have to go back down there to fight him naked to get your stuff back - at least in multiplayer mode.)
In Diabo 2, it's very similar but I remember you being able to re-equip yourself in a single click rather than Diablo 1's managing items one by one.
In Diablo 3, well, you come back to life a trivial distance away that you can usually walk back to in about 10 seconds. A minor inconvenience.

In Diablo 1, getting a magical item was a big deal. That was excitement. And not only that, you absolutely had to identify that item before using it because it could be cursed and make you worse.
In Diablo 3, well, freaking everything drops a mountain of magical items. And it's so bad excessive are multiple level of magical items such as rare and legendary. After killing some monsters it's a chore sifting through which magical items are even worth messing with. And were there even any cursed magical items?

Levels & Skills
The Dreamshadow MUD did not use levels. Instead, it had this fantastic hierarchy based skill system that was both very realistic and very rewarding. I'll go into those details when I code it, but it is a must have.

So with my game, I want your character to have no arbitrary limits. You can be as well rounded or specialized as you want. With death, I don't want people to rage quit, but I also want them to really NOT want to die. And finally a magical item is something especially rare and special. I have many other design ideas for the game, but I'll go into those details as I address them in the code.

I like an isometric view over a first-person view in RPGs, but being on the hike game me an interesting idea. Rather than going with retro 8-bit graphics or fancy 3-D generated worlds, my RPG could consist of hundreds of actual photos of real-world places. Basically the adventurer will be fighting in real world areas - along actual state and national park trails. Most hiking trails don't have too many branches that go off of them, but I think my Pebble game was still successful where you had no ability to veer off the single path anyways. So perhaps it could work.

I went along a nearby state park to take many pictures in various directions. For a proof of concept, I just took pictures with my phone camera, that has a scratch over the lens, in one hand, while carrying my toddler in my other arm, while said toddler was trying to reach for said camera. It's a prototype...

A few things were evident right away... need to take pictures at high noon, might need to take pictures when it's overcast, and the locations & orientations of each photo need to be recorded immediately upon taking them. All things that can be addressed on a second outing to the park if the prototype game looks worth pursuing.

One important piece is I want to make the still pictures feel as alive as possible. I'm experimenting with graphical effects to accomplish that.

I've got the torch effect when it gets dark looking pretty good... (intensity flickers)

And I just implemented some rain... (looks better animated)

I'm using SFML (Simple Fast Media Library) as my only third party library right now. It should cover everything I need. I don't have any code that I want to post now, but I'm writing my own presentation library to handle the drawing and user controls. It's coming along nicely and will likely be valuable to others when it's ready to share.

Whereas the Orbital Aero is a very long term multi-year project, I'd like to have a playable version of this "Trail RPG" within a few months. (Honestly it's not that development takes that much time, it's just my limited time to do it.) So Orbital Aero is still in active development! But I'll be bouncing back and forth between it and this game.