Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411476 Posts in 69369 Topics- by 58424 Members - Latest Member: FlyingFreeStudios

April 23, 2024, 03:12:02 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsQuestica -- Another Gosh Darn Pixel Game
Pages: [1] 2 3 ... 7
Print
Author Topic: Questica -- Another Gosh Darn Pixel Game  (Read 20513 times)
purenickery
Level 0
***



View Profile
« on: March 02, 2015, 12:57:01 AM »


Greetings members of TigSource! Our project, "Project Q" is a SandBox Adventure Game that is focusing on a very fun combat system, a large detailed world, and lots of content.

Although still in early development, we are mainly focusing on developing the core overworld first before any major content. Our plan right now is to make this pretty ambitious game strictly on our free time. Planning through our development we did not want to use Kickstarter, Patreon, or any other means of early funding until we actually have a product that is worth funding and, more importantly, is playable.  With nothing holding us two developers back we are going to try and create our dream game!

To avoid 'Development Hell' we have the entire game planned in chapters of major development all the way to a final finished product. That not only we are sure we can make in the first place, but are super excited to play in the end.

We have a lot of exciting concepts yet to share with everyone, But in good time of course. We don't want to go promising a bunch of features that may or may not make it in to the final game. We're just going to show you what we have so far and then update with each build.

We can say that right now we have working more or less a random island generator, custom lighting, multiplayer (that's right!), basic combat, saving/loading, and some other super-secret (for now) features.



Our current build is getting close to finishing up the "Guts" of our game. As of right now we're currently working on landscapes, forests, and foilage and we're moving closer to finishing up on those. Then we'll be moving onto housing and towns.



In between the overworld and housing we'll soon be focusing on combat that is a mixture of traditional hack and slash with some skill based abilities to keep combat as fun as we can manage. But until then we'll be continue to work on the base game and properly put up worthy updates.

If you want to know a tiny bit more about me, you can read my post on the Obligatory Introduce Yourself Thread at http://forums.tigsource.com/index.php?topic=45.msg1116347#msg1116347. My partner in crime, Cody, may or may not exist.

If you want to more closely follow development, just follow me on Twitter with @purenickery (I promise to start using it more)

-Nick Beer!
« Last Edit: May 19, 2016, 03:10:36 PM by purenickery » Logged

Working on Questica!

Devlog: Here!
Twitter: @purenickery
www.questica.net
purenickery
Level 0
***



View Profile
« Reply #1 on: March 06, 2015, 12:32:07 AM »

Update 1!
-------------
I thought I would share a bit about how the world was generated and what part of it I'm working on currently. This will ideally give out some of the game's juicy details and ideas.

The main world in the game is generated in a mostly horizontal slice (think Castle Crashers), this accomplishes two main goals: it gives the player a better sense of direction in the world and makes it WAY easier to generate!

Here's an image showing a slice of something the game might generate, including rivers, different floor types, trees, and patches of flowers. However have no fear! The world it generates is much more detailed than this image shows, I use various types of noise to add variation to the grass heights and density (as you might be able to see in the screenshot above) as well as many more improvements to come.

Also no real Adventure Game/Sort-of Rogue-Like would be complete without caves and dungeons! Succumbing to this relentless pier-pressure I've been messing around with various algorithms for generating these caves and dungeons.
---
After generating a couple hundred way-too-small images of the caves it generated I was able to go through and pick out a few that looked pretty nice! (It's actually pretty consistent right now Well, hello there!)

Also opened up the possibility for giant boss fight caves in the future.
--
Dungeons! Again, some way-too-small images but they should do the job for those sprightly young eyes of yours. Unbeknownst to you, but knownst to me, the dungeons floors are generating in a way so that stairs can lead sensibly to each successive level, the single red pixels in each of the images represents a staircase.

All I have to do now is berate Cody ceaselessly until he gives me art to fill these dungeons and caves with but for now all I have are code-generated images of the layouts. The caves have to be filled with all kinds of whacky and ridiculous monsters and the dungeon corridors are begging for unseen and dastardly traps!

If anyone has any questions about the game or how it's generated or what my favorite color is feel free to ask and I will do my very best to answer. Next up, I'm considering posting about the super neat lighting system, the incredibly neat online multiplayer, or the unbelievably neat modding support! If anyone has any preferences on what they'd like to hear about I'd love to hear about their preference!

-Nick  Shrug
Logged

Working on Questica!

Devlog: Here!
Twitter: @purenickery
www.questica.net
MereMonkey
Level 2
**


Creator of Music


View Profile WWW
« Reply #2 on: March 06, 2015, 01:20:32 AM »

What is your favorite colour Nick? Tongue Haha but in all seriousness this sounds great can't wait to see more screenshots of the game!
Logged

My Site  -  My Twitter - *GASP* MY SPINACH PUFFS!
purenickery
Level 0
***



View Profile
« Reply #3 on: March 06, 2015, 06:25:26 AM »

Quote
What is your favorite colour Nick? Tongue Haha but in all seriousness this sounds great can't wait to see more screenshots of the game!

Well it's quite a long story actually, my mind tends to share allegiance between two separate colors! They both get really jealous of each other but as long as I keep them mostly separate it works out fine. Orange came to me early in life; it never let me down all those classes in Kindergarten when all the other markers just weren't doing the job. It stood out. It was a bright shining beacon of the hope and promise that a boy of that age needs so desperately. Green came to me later in life, and I'm not sure exactly why. It could be perhaps that I began to just colors based on their individual merit and not based simply on how shiny their markers were, and while orange stood out to me in that context, green in it's many shades and forms stood out to me more when encountered in other natural organic forms. That mistress orange, however, I will never forget. She came to me in a time when I needed her most, and memories of that sweet, beautiful orange marker will never leave me.

As for the screenshots I will certainly be posting more! I tend to be quite a perfectionist when sharing screenshots so the screenshots have to be really good for me to post them. I'm thinking about setting aside a block of time today just to take a whole bunch of screenshots and seeing what sticks. And thanks for your reply MereMonkey!!
Logged

Working on Questica!

Devlog: Here!
Twitter: @purenickery
www.questica.net
MereMonkey
Level 2
**


Creator of Music


View Profile WWW
« Reply #4 on: March 06, 2015, 07:36:15 AM »

I say, wasn't excepting that at all haha mine's orange.  Wink

Awesome looking forward to them!!
Logged

My Site  -  My Twitter - *GASP* MY SPINACH PUFFS!
purenickery
Level 0
***



View Profile
« Reply #5 on: March 08, 2015, 12:59:56 AM »

Us orange bros gotta stick together  Wink       Anyways on to...

¡Actualizar dos!
----------------------


After putting a few of the more unique Project Q features into a hat and randomly pulling one out, today I will be discussing the lighting system! At least I think the lighting system we have set up is pretty unique, I don't know of any other isometric style games with a similar system.

So lets take a look at the end product to see what my end goal was. (It's still not perfect, I'll be doing some more tweeking)


Things to notice about this:
-The objects in the world react to the light as if they were standing up in 3D. The tops of the trees are dark since the light is on the ground, and the tip of a blade of grass will get brighter than the base.
-Yeah that's about it really

This means that for every pixel I draw not only do I have to know it's x and y coordinates but ALSO a mysterious z cooradinate! I knew that normal maps would send a separate texture to the GPU giving information about the angle of each pixel when drawing an image so maybe I could use something similar to serve this purpose. For an object that is just meant to be a vertical plane I can easily generate a pixel image of increasing color value to represent the height of each pixel. The shader can then calculate the pixel's distance from the light using the x and y coordinates from the screen and the z coordinate from the height map image. For the especially curious here's how it would look:



(and don't worry graphics programmers out there! The heightmap it uses in the game itself is 1 pixel wide to save space) This system allows me to draw any image up to 256 pixels tall. All the shader cares about is the R channel of the heightmap (this will come into play later), and the R channel of a pixel can hold 256 different values.

"But wait!!" I can hear you all screaming into your computer screens, "what if an object's base is off the ground, like a creature jumping or a magic flying tree?!?!?" Well never fear! I have a custom mesh sending all the textures in the sprite batch that has an extra attribute sent to the vertex shader containing the base z height of the texture. So all I have to do is add the z height from the height-map and the base z value!

Speedy topic change  Ninja

I started using the cave generator in my last post to start generating cliffs on the main surface of the game, a-la:



But darn it all this ruins everything! EVERYTHING!!! the cliffs aren't flat vertical surfaces, how am I going to get the light working correctly with them? Well, since the shader checks the height-map for each pixel it draws, I could make a custom height-map for each peice of the cliff that contains each z height for each pixel in the cliff! All I have to do is draw a z height on every pixel of the cliff images, that shouldn't take a very long time at all...  Crazy
Nah don't worry I already did it, finished it today FINALLY GAAAAAHHH!!!! Waaagh!



It's so beautiful  Tears of Joy

So remember when I said the shader only cares about the R channel of the heightmap? I made a few various colors with decreasing R values, but pretty random G and B values so I could tell the different bands apart when drawing them on. Drawing on tons of shades of very very dark grey would have been HELL! I'm thinking of things I could use the other channels for but got nothing right now, they're just wasted.

Knowing the z value of each pixel is turning out to be incredibly useful as well. For example, if I have a cloud shadow going across the ground, I can use the z of each pixel to check where it is relative to the floor, so the shadow will slide across tall trees like they would in real life!



Last of all, just for funsies  Shrug, here's what the game looks like just drawing all the height-maps instead of the textures, looks pretty cool.

Logged

Working on Questica!

Devlog: Here!
Twitter: @purenickery
www.questica.net
purenickery
Level 0
***



View Profile
« Reply #6 on: March 12, 2015, 06:45:52 PM »

Since animated GIFs seem to be all the rage these days I've cooked one up for you guys (or rather decided to post one I captured a while ago). Beware as the quality is pretty low, but you can check it out here: http://gfycat.com/JoyousRewardingKillerwhale
I posted it on gyfcat to save on making it load up here, let me know if that's the way to go with these things!
I promise I'll post another full in-depth update within the next couple days on one of the game's cool features, so hold on to your seats!
Logged

Working on Questica!

Devlog: Here!
Twitter: @purenickery
www.questica.net
RujiK
Level 2
**



View Profile
« Reply #7 on: March 13, 2015, 04:34:08 AM »

Wow, this is actually really cool. That lighting is very impressive. Looking forward to progression.
Logged

Octopus Tophat
Level 1
*



View Profile
« Reply #8 on: March 13, 2015, 11:16:47 AM »

Damn.... I have like no knowledge of graphics programming at all. I wish I could do stuff like this  Sad
But good job! This is very impressive to me  Beer!
Logged

Roguelike platformer: RogueWorld
purenickery
Level 0
***



View Profile
« Reply #9 on: March 14, 2015, 10:27:29 AM »

Thanks for your replies!!

Damn.... I have like no knowledge of graphics programming at all. I wish I could do stuff like this  Sad
But good job! This is very impressive to me  Beer!

I actually had *very* little knowledge of graphics programming before this project and hardly knew what a shader was. If you're interested in learning I can lead you to a few websites that really helped me out! Graphics programming really feels like being a modern-day wizard once you get it down  Grin
Logged

Working on Questica!

Devlog: Here!
Twitter: @purenickery
www.questica.net
purenickery
Level 0
***



View Profile
« Reply #10 on: April 20, 2015, 12:58:47 PM »

As have many legends before me, I entered in my first Ludum Dare last weekend! Any of you who want to try it out can do so here: http://ludumdare.com/compo/ludum-dare-32/?action=preview&uid=49927

A lot of people have been saying the animation and art are really good which is hilarious because it was my first time doing either of those  Shocked I've always been a programmer at heart  Shrug anyways hope you enjoy it!! It turned out surprisingly well I think ^_^

Also, since I haven't posted this yet before, if anyone wants to they can follow my game-making progess on twitter with @purenickery, I'm going to try and start using it more, haha  Coffee
Logged

Working on Questica!

Devlog: Here!
Twitter: @purenickery
www.questica.net
purenickery
Level 0
***



View Profile
« Reply #11 on: May 27, 2015, 11:04:40 PM »

Good day ladies and gentlemen Gentleman Who wants to hear about our modding/entity system?! I'll go ahead and assume the thunder outside isn't the weather conditions but rather everyone giving a resounding yes.
Our main goal for this system was to allow players to add their own content to the game as easily as possible. With little programming knowledge any player should be able to add their own items and entities to the world to use in their own games and multiplayer games with their friends! Not only will this open a huge door for players who want to craft their own experiences, but it also means we can get all our players to basically make the game for us! We wont have to make any content ourselves!
As fun as that would be we've decided to make the game it's own full experience while allowing people to add their own things.

How this will work is there will be a folder (either in the User folder or AppData or something) where you can store all the mods in their own folders. Inside the mod folder will be descriptions of items, entities, or even new game code (if I can get that working) that will automatically be loaded in to the game for you to play with!

A subfolder will look a bit like this, images for all the added entities along with text files describing how they will work and generate in the world. In order to make the game run faster and lower the number of draw calls I've made a texture packer that will take all these textures and generate one larger texture containing all the entities images (and a separate one with heightmaps!) This might sound inefficient to do every time the game starts but right now it only takes about half a second, and I could also figure out a way to cashe it all for future runs.

The observant among you might notice this packer isn't entirely optimal but I prefer to stay away from NP-hard problems in my video games and it would certainly take much longer to run had I made much more of an optimal algorithm. The text files allow you to set variables for the objects as well as specify which java class it should use. I will try and make an easy way for people to throw in their own class files for extra-easy modding. If not I might just have to go all Minecraft-style and have people inject the class files into the jar.

Next up I'll have to post about our animation system or possibly the combat, which we're working on getting integrated into online multiplayer right now! Feel free to ask any questions at all and prepare your bodies for more updates from now on. Tryin' to not slack off this summer mates  Shrug


I also thought I'd share this: https://gifsound.com/?gif=giant.gfycat.com/MatureWarmFiddlercrab.gif&v=S2iQDfVsVDM&s=2685
« Last Edit: May 27, 2015, 11:38:15 PM by purenickery » Logged

Working on Questica!

Devlog: Here!
Twitter: @purenickery
www.questica.net
purenickery
Level 0
***



View Profile
« Reply #12 on: June 02, 2015, 11:16:30 AM »

Rock on dudes  Hand Metal Left No No NO Hand Metal Right thought I'd share a bit of multiplayer today! I also thought I would post an update NOT at 2 in the morning to maybe reach some more people  Hand Thumbs Up Left

Right now multiplayer works basically in the same way it works with Terraria if you've ever played it. Essentially, one player starts up a server and also plays in it, and friends can then join in the server and play around together. What we have at the moment can be summed up in these two screenshots:


Logged

Working on Questica!

Devlog: Here!
Twitter: @purenickery
www.questica.net
tinyDino
Level 1
*


Rawr


View Profile
« Reply #13 on: June 02, 2015, 12:46:17 PM »

I hope to one day be able to program lighting like you do. Impressive sir!   Beer!
Logged
purenickery
Level 0
***



View Profile
« Reply #14 on: June 18, 2015, 06:10:00 PM »

At the dawn of my 4th or 5th time reprogramming the animation system I thought I would go ahead and share it with you all. This will surely be my last time reprogramming it right?! Anyways... today we unveil the Questicamatic!

Let's talk a bit about what we want from an animation system. Of course we want character actions to be drawn onto the screen in a smooth and logical way, and since it's a randomly generated adventure game we'll want to give the player the ability to wear different clothes and have different looking body-parts. And, of course, since we're hard-core programmer types, we want this to work as efficiently as possible.

We decided to split the body into three separate parts, the head, arms, and body. Each of these being interchangeable. Now we also have to have the ability to put overlays onto those body parts, for example a helmet would be an overlay of the head, and armor would be an overlay of the body.

Now we can construct animations by piecing together frames from the different body parts, moving/rotating them to fit the animation. This way we can use a select few frames for each body part but get many different movements by simply moving and rotating them!

For example, to add in a brand new sword we only have to make 6 different images of the sword at different angles or with motion blur to have the new sword animate correctly in all the animations!

Examples!!



You can see the body parts in the top right and the animation frames in the bottom left. If you notice, body parts can also be arranged to be in front of or behind other body parts for each individual frame!

Another!



And to all you dedicated fans out there wondering if you can use this editor to add your own weapons, armor, and animations to the game you certainly will be able to! It goes along with our goal of making this game *really* easy to mod.

And lastly, to tingle your senses with another lighting gif, here's a test of flaming arrows in a dense forest!

Logged

Working on Questica!

Devlog: Here!
Twitter: @purenickery
www.questica.net
purenickery
Level 0
***



View Profile
« Reply #15 on: July 07, 2015, 12:13:19 AM »

Just finished transferring most of the game loading to my brand new file format! Before I was using XML but I started migrating over to a simpler one for players to be able to mod the game a bit easier. Here's how an item is represented in text for example:
Code:
0:{
  name:steel armor
  width:2
  height:1
  description:This looks like a steel piece of chest armor. It should hold up against swords being slashed
  description1:This piece of armor can hold up well against slashing attacks, but doesn't hold up as well against magic or arrows
  descriptionDialog:Oh, this looks like a nice piece of metal chest armor. All I know about it is that it can hold up well against slash attacks
  descriptionDialog1:Wow, some metal chest armor! This holds up well against slashes, but not so much against stabs, magic, or arrows.
  weight:40.0
  price:640
  equip:body
}

If a player wanted to add their own items to the game all they have to do is add their own block like this to the data file and an image for the item and it will automatically work in the game!
Logged

Working on Questica!

Devlog: Here!
Twitter: @purenickery
www.questica.net
purenickery
Level 0
***



View Profile
« Reply #16 on: July 08, 2015, 12:10:43 AM »

I am beginning to realize that in order to accrue a more dedicated fanbase I'm going to have to put out more updates! Thus, I have vowed to make updating the devlog a more regular thing for me over the course of summer (and hopefully beyond).
So, for today, I thought I'd share with y'all the cooking system I whipped up. It pretty accurately describes the kind of crafting system we're going for. It is less of an A+B=C system and more of a hands-on approach.



As you can see, you throw some food in a range and it will slowly cook, first transitioning from a raw to cooked image, and then to black. The closer it is to the cooked image when you take it out of the range the better cooked the food will be! This will also allow us to give different stoves and fires different sizes to allow you to fit more or less food on them. We'll also be able to change how fast each stove will cook the food.

Also, new grass! woo!

I'd love to hear any of your comments or questions as well! We are considering releasing some small demos soon so let us know if any of you are interested in try out the game as well. I'll start posting more about combat once I get it polished up.
Logged

Working on Questica!

Devlog: Here!
Twitter: @purenickery
www.questica.net
purenickery
Level 0
***



View Profile
« Reply #17 on: July 09, 2015, 10:57:08 AM »

Particles are turning out to be much more efficient than I was originally suspecting! Working with my lighting system and my unoptimized shader I can still have around 10,000 particles on the screen while they are also reflecting. I don't see us ever needing this number of particles which is great news for us. Here's a test picture showing how many particles can be on the screen while still running at 60 fps!

Logged

Working on Questica!

Devlog: Here!
Twitter: @purenickery
www.questica.net
purenickery
Level 0
***



View Profile
« Reply #18 on: July 12, 2015, 02:08:23 PM »

Finally got an official version of equipping done! (after trying to come up with a good way for about a year) We eventually decided it would be pretty cool to just leave the equipped items in the inventory but marking them as equipped so that you have to balance what you keep in your inventory more. We want inventory balancing to be a pretty important part of the game.

Logged

Working on Questica!

Devlog: Here!
Twitter: @purenickery
www.questica.net
RujiK
Level 2
**



View Profile
« Reply #19 on: July 16, 2015, 11:09:33 AM »

Dang, that grass is really pretty! Does that many moving sprites make it lag in fullscreen?

Also ingame is there always a 2x, (or 4x?) zoom applied? Asking since your gifs are zoomed.
Logged

Pages: [1] 2 3 ... 7
Print
Jump to:  

Theme orange-lt created by panic