Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411425 Posts in 69363 Topics- by 58416 Members - Latest Member: JamesAGreen

April 19, 2024, 09:04:19 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsSpooky Pooky
Pages: 1 ... 6 7 [8] 9 10
Print
Author Topic: Spooky Pooky  (Read 43070 times)
joeyspacerocks
Level 1
*



View Profile WWW
« Reply #140 on: February 16, 2016, 01:20:53 PM »

Thanks Geoff - I appreciate the kind words, and thanks for that info zorg.

I've long been tempted to mess with lighting in this game, but held off mostly due to in-decision. However I've decided that a little glow can go a long way and so implemented a little bloom shader for fake lights.

Sprites can already define a 'mask'; just an offset to another sprite of the same size that masks out an area. I've been using this for the rendering wibbly liquid regions and now I'm also using it to define areas that should glow.

Entities that indicate they contain glow areas are rendered as normal but then render their mask to another frame buffer. When ready this buffer is used as a source texture for the glow shader. Normally Gaussian blurs are achieved by using tricks like repeated rendering on lower-resolution buffers, but given that this game is already using such a low resolution, and because I'm quite lazy, I took the easy way and just apply it to the full-size buffer (twice, once for horizontal and once for vertical blurring). Finally I render the result to the main buffer using additive blending.



The above was also experimenting with glowing liquid - this didn't go quite as well due to the way stuff is rendered. I end up additively blending the mask twice, once for the liquid and once for the light ... so things get a little, um, bright.

On the plus side it meant I can finally ditch some dodgy electrical sprites that contained semi-transparent pixels.
Logged

oahda
Level 10
*****



View Profile
« Reply #141 on: February 17, 2016, 02:23:30 PM »

Neat!
Logged

marcgfx
Level 8
***


if you don't comment, who will?


View Profile WWW
« Reply #142 on: February 17, 2016, 05:31:29 PM »

looks good to me, I don't see it as being too bright. but then of course I don't know what the look was you were going for.
I like that caterpillar on the previous page, I've only just made something similar for the first time myself Smiley it's fun to see how the elements react by just following each other.
Logged

oahda
Level 10
*****



View Profile
« Reply #143 on: February 18, 2016, 02:49:56 AM »

Is 20% still true, BTW? You seem to have gotten so far by now!
Logged

joeyspacerocks
Level 1
*



View Profile WWW
« Reply #144 on: February 19, 2016, 05:46:40 AM »

Thanks marcgfx; I'm using a 16 colour palette that is quite subdued, so it stands out from that. The main problem is that the liquid loses most of it's translucency so it's hard to make out what's inside ...

Is 20% still true, BTW? You seem to have gotten so far by now!

You're probably right ... it's the professional (!) software engineer in me. I don't deal well with percentages, so with my own stuff I'm brutally honest.

Here's a quick to-do list for my own sanity, and completely off the top of my head:

  • Load/save game
  • Dialog/story prompts
  • Complete power-ups (organs)
  • Complete bosses
  • Complete weapons
  • Music (some exists but needs polish)
  • Build truncated world to test power combinations
  • Extend world
  • Game completed sequence
  • Get it on Steam Greenlight
  • Integrate Steam
  • Marketing ya-da ya-da

At the moment I have a semi-sweep of a lot of these things, stubs for others etc.

I also have a (somewhat self-imposed) deadline of September for getting the thing on sale - at my current velocity that's pretty laughable so I have to find a way to start churning through this stuff.

So, what did I do last night? This.

Logged

joeyspacerocks
Level 1
*



View Profile WWW
« Reply #145 on: February 26, 2016, 05:46:26 AM »

I began the week doodling some UI elements, which was surprisingly fun.

I came up with a health / damage indicator bar ..



.. and a minimap ..



Both of these use masks to render their contents with a bit of a glow which gives it a nice pseudo-sci-fi look.

After doodling the minimap I came to the interesting conclusion that I had absolutely no way of actually rendering it. Until now each room in the game is a separate Tiled file and I link them together with some properties in the exit objects that get triggered when you collide with them. This kind of worked ok, but there was no over-arching structure that could be viewed. It also means that getting a feel for the world whilst designing it was tricky.

So, I've implemented a world map that describes how rooms in the game fit together which can then also be used as the player explores to construct the minimap.

To do this I use a single Tiled file with a special tileset for describing rooms and connections:



The squares tiles are cells (roughly a screen-sized area) that join together to form rooms. I use the connector tiles to join the rooms together.

I then use an object layer to define rectangular regions on top so that I can give rooms a name, and potentially other properties.

In the game I load in this world file at startup and parse the Tiled data to construct an in-memory graph structure of rooms.

Each room Tiled file then contains exit entities (just rectangular Tiled objects) that correspond to left/right/up/down connectors from the world map.

So far it's working out quite nicely. As the driving force between the Tiled world map are the objects I can mess around with the structures quite freely. It is a bit odd, using a tile editor to design a graph like structure but it appeals to me.

The only snag I've hit so far is that if I want to display the minimap like I have, where rooms are directly adjacent to each other in a grid-like structure, then I need to be careful how I arrange them with connectors in the world map, as it's possible to create overlapping room cells.

I could actually display the minimap in a similar way to the source map with connectors and all; can't quite decide - as a player I think it might be more useful to have the compact view that the current minimap design portrays.
« Last Edit: February 26, 2016, 05:54:35 AM by joeyspacerocks » Logged

jctwood
Level 10
*****



View Profile WWW
« Reply #146 on: February 26, 2016, 06:55:04 AM »

Very spooky.
Logged

joeyspacerocks
Level 1
*



View Profile WWW
« Reply #147 on: February 28, 2016, 10:12:41 AM »

Finally got the minimap working. Surprisingly it was rather difficult .. or at least, pretty messy.

In the end I keep an array hanging around that I plot the player's progress around the world in, as they move between rooms and room cells.

Written a whole bunch of code that had me swearing after pretty much every line and littering it with "FIXME: tidy this up later" comments.

Thank Venkman that I'm the only dev on this thing .. wouldn't want anyone else to see this particular implementation ..



NB. @jctwood - yeah it's kind of got spooky bits. Really it's more sci-fi spooky, so think The Thing or Reanimator. Or maybe it's not at all .. who knows?
Logged

joeyspacerocks
Level 1
*



View Profile WWW
« Reply #148 on: March 08, 2016, 01:25:22 PM »

Made a robot controlled by a brain in a jar. Plus some bang bangs and explosions.



Toying with the idea of making this a mini-boss where that brain is yours and you need to defeat it in order to claim the 'brain' power-up. This'll give you the ability to 'remember' how you got to be a skeleton in a jar and trigger a playable flashback as human Horatio stumbling across the machine in the lab.

Of course, what I was supposed to be doing this week was the proper UI stuff - y'know menus and stuff.

But yeah, robot + brain + jar. Ho hum.
Logged

joeyspacerocks
Level 1
*



View Profile WWW
« Reply #149 on: March 13, 2016, 02:51:32 AM »

Been whiling away some evenings doodling some new tiles and the like.



Making pixel 'art' is quite relaxing when you're tired.

I then stuck a couple of gun turrets in there. Turns out one of them fires caterpillars. Weird.



It was whilst doing this I realised that I hadn't properly implemented my 'cast a ray for line of sight' function. Gun turrets chuck a ray towards the player to see if they're within range before firing. If there's any solid tiles / entities in-between they are supposed to pretend they can't see you.

So I had the line-of-sight stuff working fine for the main collision layer of the level, but had forgotten to add it in for dynamic tile chunk entities (e.g. those bouncy blocks). No problem I thought. And it wouldn't be if I had two brain cells to rub together / some decent sleep.

Anyway, after several hours longer than it should have taken I finally beat the code into submission. Casting a ray first does a coarse check against entity AABB's and if it intersects it then transforms the ray at the intersection point into the coordinate system of the tile chunk entity and drops into the existing tile chunk / ray intersection stuff.

It never ceases to amaze me the shear number of bugs I manage to squeeze into so few lines of code ...
Logged

Suminsky
Level 0
**


mehhhh


View Profile WWW
« Reply #150 on: March 13, 2016, 03:37:54 AM »

This is looking really good.
Maybe I missed something, but how will the player attack enemies?
Logged
joeyspacerocks
Level 1
*



View Profile WWW
« Reply #151 on: March 13, 2016, 03:48:03 AM »

Thanks! Ah ha, you've spotted the (ssh) lack-of-gameplay-issue!

Well, Spooky Pooky is a game of peace and love, intermingled with brutal horror and gene-splicing. Therefore whilst it might be nice to have a game where you just jump on stuff and hug it to death I just happen to like shooty games.

So yes, there is violence and shooting - there's a few GIFs some pages back where I show some shooting with a seed-gun which lets you plant lovely flowers. I'm hoping some of the bad guys suffer from hayfever. That'll teach them. There's no antihistamines in this lab!

However, that was just a preamble to get aiming, etc, working so it's in there but there are precious few weapons about. In fact I've managed to get a year on in this project without showing a single GIF of death and destruction, so I'll have to change that soon.

I've just this minute created a new file called 'ui.c' and was about to finally try and get a menu into the game, and now you've gone and mentioned this! Now it's a toss up between UI and guns ... and damn it, I'm never going to get this UI done!
Logged

oahda
Level 10
*****



View Profile
« Reply #152 on: March 13, 2016, 03:48:40 AM »

Maybe I missed something, but how will the player attack enemies?
Why do you automatically assume they can? Tongue

...
... You disappoint me. Sad
Logged

joeyspacerocks
Level 1
*



View Profile WWW
« Reply #153 on: March 13, 2016, 03:54:48 AM »

... You disappoint me. Sad

Aw. Maybe this will cheer you up - it's highly likely none of the 'weapons' will destroy (well, maybe one). That is, most of the weapons apply a temporary effect to the target.

The current list looks something like this:

- freeze ray
- heat ray
- blob gun
- transporter ray (let player think it's a disintegrator until later in the game when they enter the room where it's been sending everything)
- inflator
- pookifier (portable)
- dephaser - victims are out-of-phase and harmless for a period
- water pistol - puts out fires - refill from water
- tazer / defibulator
- ray gun - really does disintegrate things
- gravity gun - inverts gravity for victim
- creature gun (e.g. caterpillars) - fires creatures

Those are pasted directly from my brain with no filtering. So ... sorry.
Logged

io3 creations
Level 10
*****



View Profile WWW
« Reply #154 on: March 14, 2016, 12:14:00 PM »

- transporter ray (let player think it's a disintegrator until later in the game when they enter the room where it's been sending everything)
That's gonna be one fun Party Room
  Hand Shake Left Blink Hand Shake Right  Panda Hand Joystick  Hand Knife Right  Durr...?  Gomez Big Laff  Tiger Tired  Wizard Tears of Joy  Giggle Mock Anger Blink  Hand Any Key  Who, Me?  Noir  Hand Fork Left  Crazy Toast Left  Gomez  Blink
Logged

Crabby
Level 2
**



View Profile
« Reply #155 on: March 14, 2016, 12:56:46 PM »


- transporter ray (let player think it's a disintegrator until later in the game when they enter the room where it's been sending everything)
That's gonna be a shock to some, but that's smart game design. And pretty funny to boot.  Smiley
Logged

Working on something new!
Follow me @CrabbyDev.
joeyspacerocks
Level 1
*



View Profile WWW
« Reply #156 on: March 15, 2016, 06:01:54 AM »

That's gonna be one fun Party Room

That's gonna be a shock to some, but that's smart game design. And pretty funny to boot.  Smiley

This is one of those things that struck me as pretty funny but probably hard to communicate to the player. I'd have to be careful not leave too long a gap between cause and effect - make it one of those things where you travel through the destination room on your way to the weapon, grab it, shoot a few things and are forced to travel back through the room where they turn up .. I guess if you then shoot them whilst in the room they'll just pop back into existence, so that'll help make it clear.

I'm starting to think that I'll need some kind of foil for the hero to talk to to explain all this stuff ..
Logged

oahda
Level 10
*****



View Profile
« Reply #157 on: March 15, 2016, 06:27:41 AM »

... You disappoint me. Sad
- transporter ray (let player think it's a disintegrator until later in the game when they enter the room where it's been sending everything)
SPOLIERZZZ

a certain sci-fi ish series did this exact trick actually
Logged

joeyspacerocks
Level 1
*



View Profile WWW
« Reply #158 on: March 15, 2016, 06:57:24 AM »

a certain sci-fi ish series did this exact trick actually

Dagnabit. It's impossible to be original! Which one?

EDIT: It's Ratchett and Clank isn't it. I knew it.
Logged

joeyspacerocks
Level 1
*



View Profile WWW
« Reply #159 on: March 23, 2016, 02:28:55 PM »

So let's talk UI. I feel that UI gets a bad rap amongst game developers. It's all totally deserved of course.

The problem (for me) is that it just doesn't fit in. It doesn't even try. You've got a whole bunch of code to run your game, some of it might even be nicely architected. Let's kid ourselves.

Then UI arrives and you realise that it's a bit weird - it doesn't want to run and jump or shoot stuff. It just sits there being kind of square and (shudder) hierarchical and requires a whole bunch of special code all of its own. Basically it's a whole lot of hassle for seemingly little reward and it doesn't even do anything interesting. Except let the player choose options, or start the game. Or pause the game.

Look.



Of course we're looking at it all wrong. The goal should be to polish it and make it look cool and swish and, because remember this is a game we're making, fun to use. So into the project todo list it goes. It's functional for the moment, so it gets the job done, but it needs pazazz and gravitas. Or other words.

It's a pretty simple implementation as it stands. Some basic structures to hold 'panels' and 'menu items', etc with some callback functions to trigger actions. There's a little stack of panels that can be pushed and popped and some truly horrendous layout code because I'm all about the hardcoded numerical pixel values.

I'm getting the feeling that maybe this is the kind of stuff I should save until I'm into Greenlight or something, but I need to get save/load games sorted so that I can add to it as I go when building features and content, and that kind of thing is so much easier when you have a little UI to hang it off.

So that's what I'm off to do next - save/load. My, what a glamorous life we lead.
Logged

Pages: 1 ... 6 7 [8] 9 10
Print
Jump to:  

Theme orange-lt created by panic