Welcome, Guest. Please login or register.
Did you miss your activation email?

Login with username, password and session length

 
Advanced search

1374762 Posts in 65014 Topics- by 57244 Members - Latest Member: djshih

March 29, 2020, 01:43:46 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsThe Outhouse
Pages: [1] 2
Print
Author Topic: The Outhouse  (Read 1875 times)
fuedhq
Level 1
*



View Profile WWW
« on: February 18, 2020, 11:03:28 AM »

The 80 were a very special time for game making.
You had plenty of different and incompatible machines and each were very unique on its own powers.
You also didn´t have the billions of games and clones of today to path a road, so there were some very exotic games going around, some became classics, others were forgotten. Within the mostly forgotten ones, there was Outhouse.

TRS-80 cover

Before we get into the game, it should be fun to mention me and my brother once pestered our parents to buy a new color computer game and we choose this one, tape version. As we were happily getting into the car to drive back home, we accidentally opened the tape case and the tape fell perfectly through a manhole... Cry

Of course we got around to buy it again a few months later but it was such a stroke of surprise unluck.

As for the game itself, here are the only two versions available:

TRS-80


TRS-80 Color (COCO)
« Last Edit: March 15, 2020, 06:39:43 AM by fuedhq » Logged
fuedhq
Level 1
*



View Profile WWW
« Reply #1 on: February 18, 2020, 11:53:21 AM »

More information about the original game can found around the internet, here a couple links:
http://www.trs-80.org/outhouse/
http://www.lcurtisboyle.com/nitros9/outhouse.html

But as you may already have suspected, it is all about an UFO protecting an outhouse against various perils.
It is a single screen 8 way shoot em up of some sort but the stage makes it for an interesting experience.

So, what is my business with it?...apart from a manhole infant rage...
To remake an extend it of course! And this time, in a very unusual way.

See, the game on the original TRS-80 happens on a monochrome block character+text kind of weird resolution while the COCO version makes use of the graphics resolution and sports higher definition and a bunch of artifact colors. Now, note that the COCO also has a weird block character+text mode similar to its younger-in-name brother but... it has colors! In fact, about 9 of them more or less. There is a drawback, its resolution is lower. Can color overcome resolution? Because I plan to use that exact mode of the COCO as close as I can.

Now, the TRS-80 can display 64x16 characters(blocks), and as graphics go, it can split it in 6 pixels in a 2x3 form. So, at the end, you get a screen capable of 128x48 monochrome pixels. This is more or less how it looks like:
Note the fat pixels are slightly tall.

Jumping to the TRS-80 Color, the COCO, you get a 32x16 characters(blocks), and as graphics go, it can split it in 4 pixels giving a final resolution of 64x32 color pixels. Here is how it looks like:
Note the fat pixels are also tall.

So far so good but hang on! There is a catch!
And a very mean one! Check this other image here:

You can see I overlayed a grid to expose the block divisions, the catch is, within a block there can only be a maximum of 2 colors and one of them MUST be black. Should you plot a pixel that is a third color on a 2 color block, the non-black pixel will become the same color you just plotted. That makes it a very challenging mode to create art, also notice the colors are kind of very pure, no shades. If you are a pixel artist, I recommend trying this mode, it is super fun!

« Last Edit: February 18, 2020, 01:07:21 PM by fuedhq » Logged
fuedhq
Level 1
*



View Profile WWW
« Reply #2 on: February 18, 2020, 12:25:31 PM »

A good thing about this development, is that I already have done most of the graphics and mind sketched a story and gameplay.
Here is how it was first layouted:

And here is an image containing most of the sprites and graphics I plan to use:

With that set up, I made all required sprite sheets and got what I believe as GFX done, that was yesterday.
Notice the attention to position on the sprites, some of them can only exist at that very specific positions in relation to block limitation. You will also notice the pixels are square on this image, I will be stretching them to the COCO aspect ration in code.

And talking about code, yesterday I started it, tweaked my framework a little bit, and managed to create the game display and the 2 player controls. Yeah, I want it to be a 1 or 2 player coop game. My last games got criticism on the control and lack of full screen, I hope that part is already working now.

A little curiosity about the display, behind the stage, the game happens on a square pixel 64x32 screen. It then gets scaled to fit an area of 256x192 in the middle of a 320x240 screen, which means blowing every pixel 4x horizontally and 6x vertically. At this screen, I add the text characters as needed in game. Finally, the result gets scaled to a window mode or full screen mode retaining the aspect ration. Sounds a little complex but it was the only way I thought of when dealing with the fonts as they are pure pixels against the color pixels inside the blocks.
Logged
michaelplzno
Level 5
*****



View Profile WWW
« Reply #3 on: February 18, 2020, 03:42:27 PM »



Logged

fuedhq
Level 1
*



View Profile WWW
« Reply #4 on: February 18, 2020, 05:59:40 PM »

Hopefully this version will also be a good change! :D
Logged
fuedhq
Level 1
*



View Profile WWW
« Reply #5 on: February 19, 2020, 10:50:06 AM »

Introduction, title screen and credits are up. Need to add high and last score to the title.
Will work the start game routine now.
Logged
fuedhq
Level 1
*



View Profile WWW
« Reply #6 on: February 19, 2020, 06:16:34 PM »

Just finished implementing the control choice code. It may sound boring and it IS.
It is kind of complex to make it work, let me explain, I want to support keyboard control and two joysticks should they be connected. You need at least one joystick to be able to play a 2 player game. So it works like this, on the title screen, whichever control hits start, it sets that control to player 1, if that control hits start again, the game begins. If after the first start, another control hits start, that control is set to player 2 and if any of them hit start again, the game begins.

I also made it so that the control type and the number of players is texted on the credit area, so one knows what is going on.
Pressing back or esc after choosing at least one player resets the scheme and credits get to be displayed again.

I know this is SUPER BORING, it is the kind of thing I should add to my code framework so to NEVER code it again.
But since it is done, let´s forget about everything and advance to the fun part!  Roll Eyes

Time to build the sky transition towards the game start, should be simple as I already did a quick test a while ago, then, to add the players in game! Beer!
Logged
fuedhq
Level 1
*



View Profile WWW
« Reply #7 on: February 21, 2020, 08:09:52 PM »

Done with a vertical slice.
One or two players can start the game and move the UFOs around. Crash and die, get to a game over msg, and flip back to the text intro so to start over.

Ufo movement is limited by the screen sides and ceiling. Will crash and lose a life if it kisses the floor.
Will instantly game over if anyone crash on the outhouse. should that happen, you loose all score and any player left alive instantly runs away.

Score will be by toilet paper amount. Should help an essentially cooperative game in case it is played by 2.

Major events will halt the game object movements, like the explosion. That is mostly because there will be some sound playing later on.

The real speed is somewhat a slight faster than the gif.

You start the game with 3 lives

Logged
fuedhq
Level 1
*



View Profile WWW
« Reply #8 on: February 22, 2020, 05:08:16 AM »


A set of UFO explosions

How:

- translate UFO position to block resolution for the particles
- randomly flash a set of blue flashes 
- randomly flash a set of red flashes mixes in
- randomly blows debris, 12 directions, mixes in


here the flashes
Logged
brickshot
Level 0
*


0xAF


View Profile WWW
« Reply #9 on: February 22, 2020, 06:19:46 AM »

Sitting here with my 8 year old trying to explain what this game is about  Cheesy Cheesy She's like "Dad can we play outhouse?" Just thought you should know you have at least one eager play tester if it comes to that. Keep up the good work.
Logged
fuedhq
Level 1
*



View Profile WWW
« Reply #10 on: February 22, 2020, 05:30:49 PM »

you both should be able soon Smiley
Working on the rays. a bit strange stuff.
Made the outhouse and its collisions with the UFOs.
Notice the double shake, it should be used in future if not a deadly blow.
I gotta add the few toilet papers flying about.

Logged
fuedhq
Level 1
*



View Profile WWW
« Reply #11 on: February 25, 2020, 04:01:10 AM »

Gotta add more frames to that outhouse collapsing,
in the meanwhile, work has advanced on the UFO´s ray.
It was particularly tricky first because it has to look super cool as it is something one will be looking a lot into when playing, second, the ray must trail an specific path, which happens to not be aligned to the UFO.

An UFO can be at position odd or even on either axis (x,y), let´s say, even is at a block position and odd is at a pixel position. The ray MUST trail block positions. The UFO sprite is 4 pixel wide and 3 at height.

So if you shoot sideways, the ray can align either at the upper or lower part of an UFO´s 3 pixels height.
This is no trouble because either way, it will be aligned with the color inside the UFO.

When shooting up or down, there is trouble. UFO at odd position will always shoot a centered ray but when at even position, the ray should either be at one of the UFO´s side block. That gets chosen based on the last left/right directions you moved or shot a ray with the UFO.

Super trouble was dealing the diagonals. There were also bugs related to the UFO positioned half outside the screen, as I originally planed. Now it stays fully inside the screen. Wink The ray multiply code kind of does not like the UFO with coords less then 0, I will play along.
  
« Last Edit: February 25, 2020, 04:22:44 AM by fuedhq » Logged
fuedhq
Level 1
*



View Profile WWW
« Reply #12 on: February 25, 2020, 05:02:46 AM »

More frames to the outhouse!!
Logged
fuedhq
Level 1
*



View Profile WWW
« Reply #13 on: March 01, 2020, 07:42:07 PM »

Logged
fuedhq
Level 1
*



View Profile WWW
« Reply #14 on: March 02, 2020, 05:53:59 PM »

The last post was all about trying to work out the paper toilet.
That vandal is supposed to try to sneak close to the outhouse and as he touches it, he runs away pulling the paper in a long strip. You can shoot the vandal and the paper will retract back to the outhouse or you can shoot the paper itself and burn it out. If you shoot the outhouse when paper it out, it will also set it on fire.

It was a bit troublesome to work the paper strip but all is fine now. Also there are 2 speeds for the vandal and you also crash if you touch them.

Currently, the UFOs can crash on each other and will explode if shot. I will probably only drain power but I´m unsure yet. Dog fighting seems like a cool idea. 

Here some more of the vandals.
Logged
fuedhq
Level 1
*



View Profile WWW
« Reply #15 on: March 03, 2020, 05:12:19 AM »

Here some more action. If you shoot the outhouse, you loose some paper as it flies out.
Logged
QOG
Level 3
***



View Profile WWW
« Reply #16 on: March 03, 2020, 07:07:06 AM »

Love that you're pulling off such expressive animation at a tiny resolution.
Logged
fuedhq
Level 1
*



View Profile WWW
« Reply #17 on: March 03, 2020, 06:35:33 PM »

Thanks!

The second human enemy is done, the squatter. This guy will rush in and away if the outhouse is in use. If not, he will shut himself in, use 4 papers and then walk away slowly and relieved. No vandals can steal paper while a squatter is in and if a squatter gets in while a vandal is pulling paper, the door closing will snap the paper. Here an example, just need to push its priority to the more background, it should not draw over the humans. I also changed a bunch of animation on the humans so they don´t look the same.
Logged
fuedhq
Level 1
*



View Profile WWW
« Reply #18 on: March 03, 2020, 08:22:10 PM »

What will the world be without that sacred paper!  Shocked



There are 2 more humans to go. I decided to do them all now instead of doing the monsters in an in-game chronological order, mostly because they share a lot of feats, makes it faster to dev with those info in mind.

The next human is a bomber type of vandal, he will sneak to the outhouse, plant a time bomb and run away.
Also, if paper is zero and everyone is freaking about, like in the gif, a bomber will occasionally show up.

If the bomb blows is an instant game over. To get rid of it, you have to shoot the outhouse to disarm it. Gotta keep in mind that hitting the outhouse always shakes it for 2 papers and if there is none, that will also end the game. Smiley

I still have to think about how the bomber will sneak in, but probably in bursts of motion. When not moving, I might try to make him knee so to make for a smaller target.
Logged
fuedhq
Level 1
*



View Profile WWW
« Reply #19 on: March 05, 2020, 05:03:43 AM »

Here is the bomber:


And a vid showing them 3 types of humans, such abuse to the toilet and the UFOs remain still!! :D




There is one more human type to do, the military guys.
Apart from wearing green, these guys will move around very fast between the side forests.
They will usually sneak in the background between trees where they remain invincible.
They will occasionally shoot you.

These guys are to be the bosses on level 10, not normally popping out on other waves/levels.
Logged
Pages: [1] 2
Print
Jump to:  

Theme orange-lt created by panic