News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_Gryzor

Robocop Prime

Started by Gryzor, 12:44, 08 February 14

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

Carnivius

Quote from: Gryzor on 18:40, 16 February 14
By "off-the-shelf filters" I meant the algorithms that are used in games and emulators the world over; you know, stuff like EAGLE etc (though I wouldn't touch most of them).


Followed :)

Oh yeah.  Mostly nasty things.  :P

I did look into a curve 'shader' for Game Maker: Studio but it seems to run quite slow on my laptop for some reason.   I also found one that works very fast for changing colours (simulating the indexed palettes of 8 and 16 bit machines) which makes colour switching in levels so much easier and also for fade-to-black and back again using ONLY the colours I defined in the CPC palette code.  Also this means I can have the user tweak the colour settings if they prefer it the way it is on different emulators (meaning that I use 127 as the mid value and I think one uses 109 and such).

Anyways just got back from audition (second one for the same show).  Eating my burger and chips now.  Yum!
Favorite CPC games: Count Duckula 3, Oh Mummy Returns, RoboCop Resurrection, Tankbusters Afterlife

Carnivius

Was doing some colour and shading tests with my choice of 16 colours for RoboCop and ended up doing this.



I liked Uridium on the 8-bits but felt it could look a lot better especially on CPC and I loved Uridium 2 on Amiga so I had a go at spriting the Uridium 2's manta sprite in CPC Mode 0 and did 3 colour schemes.  The original Mode 1 CPC/Spec Manta on the left obviously.   Added some stars to make the background look spacey.
Favorite CPC games: Count Duckula 3, Oh Mummy Returns, RoboCop Resurrection, Tankbusters Afterlife

Gryzor

Robocop... in space?


Looks like what it should've been though :)

Carnivius

Well the first game wouldn't have looked like that anyways cos that wasn't the style they had back then but if they'd done a CPC port of Uridium 2 I'd like to think that's how the manta would have looked.  I loved that lil ship on the Amiga.   Small but so perfectly animated and stylish. 

Anyways still coding away on RoboCop:Prime.  Got that colour changing code nearly all done.  At moment it's working too well in that it's changing the status panel colours along with the main game area (not too bad when doing fade to blacks though would prefer that seperate, but when trying to give the game area an intense firey look of reds/oranges to suggest extreme heat, I don't want the status panel changing to those colours too) so trying to think a way to seperate them.  On CPC of course you can just split the screen in the same way you get Mode 0 games with Mode 1 status panels.   I've got some theories on how to modify my code to achieve the same look.  Will put them into practice soon.
Favorite CPC games: Count Duckula 3, Oh Mummy Returns, RoboCop Resurrection, Tankbusters Afterlife

Carnivius

#29
Turns out I'd already coded my 'theoretical' solution before I even had the problem.  The solution was part of my pause menu which deactivates all the objects after taking a 'snapshot' as a large sprite it posts in the place to make it look like the game is paused.   

You can see here the game screen is palette shifted to darker colours while the status panel and pause menu are the original palette.   



This ain't really important in CPC terms but in simulating the indexed colours of 8 and 16 bit machines via a Game Maker produced game it's pretty important to me. :)
Favorite CPC games: Count Duckula 3, Oh Mummy Returns, RoboCop Resurrection, Tankbusters Afterlife

Carnivius

Just doing more tests with the colour shader.  This time applying it multiple times within the same object to check if it slows down anything much.  But it seems to not slow down noticably at all so yay!

Tested it on RoboCop himself since in my engine he's made up of 3 sprites.  Head (which can turn round and also switch to the helmetless Murphy face), torso (for aiming) and legs (for independent walk animation).

Head is using the blue palette, torso in red, legs in a green/grey.   (Shown without and with a cheap monitor-style overlay) 
But yeah doesn't he look so FUNKY!  8)
Favorite CPC games: Count Duckula 3, Oh Mummy Returns, RoboCop Resurrection, Tankbusters Afterlife

Devilmarkus

Nice pixels.
I played a bit and did a little mockup.
(I know, it uses 17 colours :( but I changed a few pixels...)

Perhaps changing just 1 colour to dark green would work fine?


When you put your ear on a hot stove, you can smell how stupid you are ...

Amstrad CPC games in your webbrowser

JavaCPC Desktop Full Release

Carnivius

#32
Um yeah but you do know I'm not actually using these colour schemes on RoboCop right?   ;)

And yes there's a dark green in the game's main palette but I didn't want it in that particular sub-palette because the grey (or even the light blue) works much better for what I wanted (that green ramp was a homage to the glow in the dark Night Fighter RoboCop figure from the Ultra Police line which NECA also homaged which the glow in the dark plastic is a very pale yellow/green/grey).  The dark green doesn't work for that effect cos it just makes it look 'too green'.   The Night Fighter homage is just meant to be a hidden extra in the PC game.  I may switch the dark brown to dark blue to make it look a bit more 'neon'.

I have another palette scheme which uses the dark green for various enemies and stuff.

Hehe, you know what?  The dark green version you did reminds me of Aquaman.   :laugh:
Favorite CPC games: Count Duckula 3, Oh Mummy Returns, RoboCop Resurrection, Tankbusters Afterlife

Carnivius

Here's what I meant (copy pasted from my Tumblr)

A 'glow in the dark'-inspired colour scheme which is a homage to...

...the NECA Night Fighter glow in the dark RoboCop figure which is a homage to...

...the Kenner Night Fighter glow in the dark RoboCop from the Ultra Police toyline.

Yeah, basically I'm enjoying putting a lot of lil references and easter eggs to things outside of the main movie series too. :)
Favorite CPC games: Count Duckula 3, Oh Mummy Returns, RoboCop Resurrection, Tankbusters Afterlife

Carnivius

Ok the first four colour schemes for Robo himself are set. :P




RoboCop 1, RoboCop 2, Night Fighter and RebootCop (which also makes use of the red visor thing I had already coded in there for the animated series reference).

Ok I should get back to actually coding stuff.  :D
Favorite CPC games: Count Duckula 3, Oh Mummy Returns, RoboCop Resurrection, Tankbusters Afterlife

robcfg

All the schemes look awesome!

Gryzor

Not a huge fan of the grille overlay, but damn it looks sexy...

Carnivius

grille?  It's the closest thing to a CPC CRT monitor I can do at this resolution.  Really not wanting to go into all that scanline stuff again.  Remember it's all optional.
Favorite CPC games: Count Duckula 3, Oh Mummy Returns, RoboCop Resurrection, Tankbusters Afterlife

Gryzor

Oh yeah, I know, don't worry :D I just find it a tiny bit... dirty?

Carnivius

#39
Been working on other characters such as the generic enemy and cops (which all share the same palette swapped legs)

Had to increase Robo's head sprite slightly just to match the other characters (his was looking particularly small when not wearing the helmet and standing near the other folks)





Yeah those last two palette swaps are definitely homaging another popular 80's video game.  :P



Still pondering what I can really do with 128k and disc.   Cos the original RoboCop was pretty impressive running off a cassette tape on a 464.   Were the only differences on 128k just the sampled speech of the directives?


EDIT: Just noticed the 'Hall of Shame' link at the bottom that took me to moved comments by TFM. Can he not understand that I simply cannot code CPC games?  It's beyond me.  But why should that stop me paying tribute to my fave 8-bit computer and provide resources such as these that a proper skilled CPC coder can have a go at creating the CPC version with?  Also I certainly couldn't do all this graphic stuff without having to make my own engine of the game to make sure it all looks and feels right and that's what I do with Game Maker:Studio.   Would help the eventful CPC coder to see how I imagine it to work also and they can use this PC version of the game to compare when coding the CPC version.   But who cares?   I'm having fun with this!  :D
Favorite CPC games: Count Duckula 3, Oh Mummy Returns, RoboCop Resurrection, Tankbusters Afterlife

arnoldemu

Quote from: Carnivac on 20:27, 01 March 14
Been working on other characters such as the generic enemy and cops (which all share the same palette swapped legs)

Had to increase Robo's head sprite slightly just to match the other characters (his was looking particularly small when not wearing the helmet and standing near the other folks)





Yeah those last two palette swaps are definitely homaging another popular 80's video game.  :P



Still pondering what I can really do with 128k and disc.   Cos the original RoboCop was pretty impressive running off a cassette tape on a 464.   Were the only differences on 128k just the sampled speech of the directives?


EDIT: Just noticed the 'Hall of Shame' link at the bottom that took me to moved comments by TFM. Can he not understand that I simply cannot code CPC games?  It's beyond me.  But why should that stop me paying tribute to my fave 8-bit computer and provide resources such as these that a proper skilled CPC coder can have a go at creating the CPC version with?  Also I certainly couldn't do all this graphic stuff without having to make my own engine of the game to make sure it all looks and feels right and that's what I do with Game Maker:Studio.   Would help the eventful CPC coder to see how I imagine it to work also and they can use this PC version of the game to compare when coding the CPC version.   But who cares?   I'm having fun with this!  :D
I like that you have chosen to do your graphics in the CPC style. It helps to show what could have been achieved. I also think it is great you think about a CPC version in the future. I also think it is good that you are having a go with game maker. I do hope one day a coder will make it a reality on CPC.

Tfm has the knowledge and ability to make a CPC version if he wanted.

Keep going there is nothing wrong with what you are doing. Equally there is nothing wrong with people who only make mockups. We are all enjoying the CPC.
My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

arnoldemu

Some tips that can help to make it more CPC friendly which may help others.

1. If using mode 0 style graphics ensure the width is divisible by two.
2. If you are making a map with tiles try to use less than 256 unique tiles.
3. If the intention is to use hardware scrolling make tiles day multiple of 4 pixels in width and 8 pixels in height. These are the effective minimum scroll size and makes CPC coding more simple. The unique tiles keeps coding and size more manageable.
4. If using hardware scroll try to keep scroll area keep within 1024 range. This means Something like 8 screens wide. Does depend on width and height of scroll area, it also means sprites can be faster to draw.
5. 128k may seem a lot but if the design is graphics heavy it will fill up fast. Allow for sprites to be flipped horizontally in code, consider reusing bits like legs. Also you may need to reduce screen size and multi load. Consider less enemies and reuse lots in gameplay.

All of these considerations will help to ensure your vision and design do not need to be reduced when a CPC version is done.
My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

arnoldemu

Quote from: arnoldemu on 16:33, 02 March 14
Some tips that can help to make it more CPC friendly which may help others.

1. If using mode 0 style graphics ensure the width is divisible by two.
2. If you are making a map with tiles try to use less than 256 unique tiles.
3. If the intention is to use hardware scrolling make tiles a multiple of 4 pixels in width and 8 pixels in height. These are the effective minimum scroll size and makes CPC coding more simple. The unique tiles keeps coding and size more manageable.
4. If using hardware scroll try to keep scroll area keep within 1024 range. This means Something like 8 screens wide. Does depend on width and height of scroll area, it also means sprites can be faster to draw.
5. 128k may seem a lot but if the design is graphics heavy it will fill up fast. Allow for sprites to be flipped horizontally in code, consider reusing bits like legs. Also you may need to reduce screen size and multi load. Consider less enemies and reuse lots in gameplay.

All of these considerations will help to ensure your vision and design do not need to be reduced when a CPC version is done.

My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

Carnivius

#43
Quote from: arnoldemu on 16:33, 02 March 14
1. If using mode 0 style graphics ensure the width is divisible by two.
The sprites as loaded into Game Maker all divisible by 2 as that's how I work (usually in divisions of 4 or 8 such as 8, 16, 32 and such because that's how the video cards worked best particularly on older versions of Game Maker, odd numbered widths on sprites often led to some nasty graphical glitches and other side effects)

Quote
2. If you are making a map with tiles try to use less than 256 unique tiles.
3. If the intention is to use hardware scrolling make tiles day multiple of 4 pixels in width and 8 pixels in height. These are the effective minimum scroll size and makes CPC coding more simple. The unique tiles keeps coding and size more manageable.
The tiles have been 4x8 from the beginning as it meant I wouldn't need too many variations of them as the smaller size meant more unique combinations were possible without needing specific variant tiles.  At moment the number of unique map tiles is about 96 and most have been designed to be quite flexible and used in all sorts of places.  I'm pretty good at tile optimization and design.   Oh and there's about 16 that make up the various menu stuff and status panel parts such as the tubes and boxes.

Quote
4. If using hardware scroll try to keep scroll area keep within 1024 range. This means Something like 8 screens wide. Does depend on width and height of scroll area, it also means sprites can be faster to draw.
Haven't built a proper level yet (just test rooms while I code various pieces) but I was planning to do this anyways and break up the level into smaller pieces (like to go onto the next piece you go through a door)

Quote
5. 128k may seem a lot but if the design is graphics heavy it will fill up fast. Allow for sprites to be flipped horizontally in code, consider reusing bits like legs. Also you may need to reduce screen size and multi load. Consider less enemies and reuse lots in gameplay.
Yep.  Already done this (and that's how it works in this PC version with the sprite flipping).  The legs of the human characters are all shared and palette swapped (which I asked cngsoft on if it were easily doable).  All their parts (head, torso, legs) are horizontally flipped for directions.  Only RoboCop himself has seperate left and right torso sprites (so his gun will always appear in his right hand), his legs and head sprites are flipped.   Even ED-209 is being designed as multiple pieces so that the torso and legs are seperate sprites and the legs will animate independently.   Multi-load was a reason I thought this might be best for disk though I will try to compact all I can anyways.  Screen size is only slightly bigger than the original CPC RoboCop and that scrolled nicely in all directions though I'm not sure I will even need multi-directional scrolling yet depending on how I design the levels.

Quote
All of these considerations will help to ensure your vision and design do not need to be reduced when a CPC version is done.
Yep.  I think I'm being fairly 'smart' with these things but I'm also making note of what isn't absolutely necessary too which is fine for this version or even the 128k CPC version but might be just wasteful if then trying to make a 64k version.  There's some extras that will only probably only be in this PC version for my own amusement though the CPC coder can still attempt to fit it in the CPC version if they want to give it a go.  I'm not saying that anything is off-limits. 

Also if you notice there's a magenta of value (255,0,127) in that skyline.  This colour is not visible on any sprites because on them it's their background colour and what is used for their transparency (I think you'd call it masking on CPC?) .  That was a tip I got from Axelay some time ago.  So yep I'm keeping various things in mind while I design this.  :)

EDIT:
Sample of what I mean with the sprites
Here are RoboCop's legs at this current stage of development.  A series of 16x24 sprites that include the 8 frame walk cycle then standing, crouching, and front and back views of standing.    This is in the normal 1x1 pixel resolution (which I then stretch in Game Maker in real time to look like Mode 0's wide-pixels).  All of these (except the front and back view legs) get flipped horizontally when he turns around. 


I'm also spriting his gun-holster which will be a small sprite that overlays over the thigh section of the standing leg sprite so won't take up much space or memory and is obviously only shown when he actually needs to get his gun or put it away.
Favorite CPC games: Count Duckula 3, Oh Mummy Returns, RoboCop Resurrection, Tankbusters Afterlife

arnoldemu

Great with all that :)
My games. My Games
My website with coding examples: Unofficial Amstrad WWW Resource

Carnivius

#45


Started doing ideas for interior parts of the levels and came up with the beginnings of a bar.  Thing is this shot uses only 6 new 4x8 tiles (two in the floor, and 2 each for bottles) in addition to what was already in the exterior city tileset.  For example the exterior's wooden fence tiles repurposed here for wall panelling and the bar itself.  Tile recycling is a nice way to get more out of the low amount of memory of a real CPC.

Obviously I will add some more tiles (but not too many) and details but this is just an example.
Favorite CPC games: Count Duckula 3, Oh Mummy Returns, RoboCop Resurrection, Tankbusters Afterlife

Carnivius

Thanks to a day of picking up help and tips from Token, mr_lou and Devilmarkus I have managed to combine it all into being able to view my CPC-style graphics on my actual real CPC 464 for the first time and man it's put a big grin on my face.  Like this lil smiley  ;D

It confirms to me that my colour usage is working correctly and looks cool on my real CPC monitor.  Now if someday the actual game could be running and looking like that I'll be very happy but one step at a time, eh?   :)

Favorite CPC games: Count Duckula 3, Oh Mummy Returns, RoboCop Resurrection, Tankbusters Afterlife

Devilmarkus

That's really awesome!
We really need your game for our beloved CPCs!!!!!

(Who agrees with me?)
When you put your ear on a hot stove, you can smell how stupid you are ...

Amstrad CPC games in your webbrowser

JavaCPC Desktop Full Release

Carnivius

Dunno why there's a weird dark to light curve about 2 thirds down but hey that's probably something to do with trying to take photos of CRT monitor displays.   Also the photo doesn't quite show the colours accurately.  The pale yellow and fleshy pink of the skintones looks almost like one colour there but on the real CPC screen every single colour looks perfect.
Favorite CPC games: Count Duckula 3, Oh Mummy Returns, RoboCop Resurrection, Tankbusters Afterlife

Token

Olala! Excellent  8) 8) 8)
I'm also glad you use that 464 for real!


Devilmarkus +1 ;)








Powered by SMFPacks Menu Editor Mod