I will be relying on you guys

A place for people with an interest in developing new shmups.
fredrikpj
Posts: 38
Joined: Tue Feb 09, 2010 11:28 am

I will be relying on you guys

Post by fredrikpj »

I'm currently developing a flash shmup engine to handle large amounts of effects and bullets.
Currently I've managed to get about 1000 projectiles/fx on screen at once with 150 enemies hitdetecting with pixelperfect mode, and it's running at 60 fps on a single core computer (3 ghz). I think I'll have another week or two tweaking the engine before I can start developing my first shmup game.

I'm hoping to get some insight from you, so I'm hoping to use your experience in making my first shmup at least somewhat decent. :)

I read around a bit and saw things like not too long levels, interesting weapons and enemies, no inertia on player ship, not too messy graphics etc. Are there any more recommendations that I should keep in mind?
fredrikpj
Posts: 38
Joined: Tue Feb 09, 2010 11:28 am

Re: I will be relying on you guys

Post by fredrikpj »

Doh, and now I notice the post by Thunder Force regarding links to development :oops:

Anyways, it's nice to meet you guys, I'm hoping to get feedback from you as I develop the game :)
User avatar
Udderdude
Posts: 6294
Joined: Thu Feb 16, 2006 7:55 am
Location: Canada
Contact:

Re: I will be relying on you guys

Post by Udderdude »

Relying on us? You're in trouble now.

Shmups don't require pixel perfect hit detection. If anything you are going to want to make the hit areas for things smaller than they really are.

Flash is also terribly slow for anything like shmups. Even the good ones don't try to do much more than low-res mode with 40 FPS.
Ex-Cyber
Posts: 1401
Joined: Thu Oct 25, 2007 12:43 am

Re: I will be relying on you guys

Post by Ex-Cyber »

Are you using AS3?
fredrikpj
Posts: 38
Joined: Tue Feb 09, 2010 11:28 am

Re: I will be relying on you guys

Post by fredrikpj »

Udderdude wrote:Relying on us? You're in trouble now.

Shmups don't require pixel perfect hit detection. If anything you are going to want to make the hit areas for things smaller than they really are.

Flash is also terribly slow for anything like shmups. Even the good ones don't try to do much more than low-res mode with 40 FPS.
Hehe, I know, but you guys are the experts in this. I really like that you're being honest in giving feedback to other developers.

Regarding flash, I have a special method that actually is a lot faster in pixelperfect mode than box hittesting :)
It's all how you do it, there are so many ways to program in actionscript..

I'm hoping to get people to see that you actually can do a decent shooter in flash without killing your cpu.

Also, for fullscreen mode I'll be running it through zinc, meaning you get direct input support for joysticks and directX to scale the image to whatever resolution you want without it increasing cpu usage.
Last edited by fredrikpj on Tue Feb 09, 2010 1:51 pm, edited 1 time in total.
fredrikpj
Posts: 38
Joined: Tue Feb 09, 2010 11:28 am

Re: I will be relying on you guys

Post by fredrikpj »

Ex-Cyber wrote:Are you using AS3?
Yes, and Alchemy.
User avatar
worstplayer
Posts: 861
Joined: Sun Jun 17, 2007 6:48 pm
Location: Slovakia

Re: I will be relying on you guys

Post by worstplayer »

Doesn't Zinc sort of defeat the purpose of making a game in Flash (playable in a browser)?
Of course, if your system turns out to be as effective as you say, it might work.
"A game isn't bad because you resent it. A game is bad because it's shitty."
fredrikpj
Posts: 38
Joined: Tue Feb 09, 2010 11:28 am

Re: I will be relying on you guys

Post by fredrikpj »

worstplayer wrote:Doesn't Zinc sort of defeat the purpose of making a game in Flash (playable in a browser)?
Of course, if your system turns out to be as effective as you say, it might work.
Zinc adds a better environment for a standalone app, while I still can use the web to send a limited game to game portals. For example, the VVVVVV game uses Kongregate to let people play two levels from his game, then when you buy the full game you can run it as a .exe with directX fullscreen mode.
fredrikpj
Posts: 38
Joined: Tue Feb 09, 2010 11:28 am

Re: I will be relying on you guys

Post by fredrikpj »

Btw, anyone here developing games in flash? :)

I managed to find a neat solution to music.
Normally embedding mp3 files for web use is a perfect way to let users enjoy a long session of watching progressbars

Instead use a mod player to play mod files (amiga music format). That way you can have a 5 minute track using no more than 200 kb, and it will still sound good enough for a shmup.
User avatar
Udderdude
Posts: 6294
Joined: Thu Feb 16, 2006 7:55 am
Location: Canada
Contact:

Re: I will be relying on you guys

Post by Udderdude »

I've just spent the last 2 years developing Flash games and other projects for clients. So yeah, I have some experience. I have a Flash game I made recently on my site if you want to check that out.

How are you playing MODs in Flash? Flash is enough of a CPU hog as it is. Doesn't playing a MOD take up more resources than playing an MP3 in Flash?
fredrikpj
Posts: 38
Joined: Tue Feb 09, 2010 11:28 am

Re: I will be relying on you guys

Post by fredrikpj »

Udderdude wrote:I've just spent the last 2 years developing Flash games and other projects for clients. So yeah, I have some experience. I have a Flash game I made recently on my site if you want to check that out.

How are you playing MODs in Flash? Flash is enough of a CPU hog as it is. Doesn't playing a MOD take up more resources than playing an MP3 in Flash?
Thats the cool thing, it uses very little resources :)
Check this out: http://www.photonstorm.com/flod

As for embedding mod files into the .swf file, you can convert the data into a png file like I've done here: http://www.flashbutler.com/modplayer.swf
(Or if you're writing classes, you can also use the embed tag..);
fredrikpj
Posts: 38
Joined: Tue Feb 09, 2010 11:28 am

Re: I will be relying on you guys

Post by fredrikpj »

Might as well post the tests here:

This test has one enemy firing 300 bullets per second while 150 ships are hitTesting against the bullets, and if they get hit I make them brighter (rendering them onto the fx layer).
http://www.flashbutler.com/projectile.html

Here's the tilemap engine initializing a 1000x1000 tileset (with two layers per tile, making it a total of 2 million tiles).
Also running three parralax layers:
http://www.flashbutler.com/tilemapping3.html (looks like shit now since it's all random tiles, but the fps/ram is what's important).
Ex-Cyber
Posts: 1401
Joined: Thu Oct 25, 2007 12:43 am

Re: I will be relying on you guys

Post by Ex-Cyber »

Udderdude wrote:Doesn't playing a MOD take up more resources than playing an MP3 in Flash?
As inefficient as Flash can be sometimes, MP3 decoding is far more computationally complex than MOD playback. It's like the difference between sprite/tile rendering and DVD playback.
User avatar
worstplayer
Posts: 861
Joined: Sun Jun 17, 2007 6:48 pm
Location: Slovakia

Re: I will be relying on you guys

Post by worstplayer »

That projectile demo is very impressive. I think this is more than enough for a shmup.
"A game isn't bad because you resent it. A game is bad because it's shitty."
fredrikpj
Posts: 38
Joined: Tue Feb 09, 2010 11:28 am

Re: I will be relying on you guys

Post by fredrikpj »

worstplayer wrote:That projectile demo is very impressive. I think this is more than enough for a shmup.
Thank you, yes I'm very happy with the performance so far.
I think I should be able to bump performance a bit more however once I get all TAAS optimizations included, meaning I'll be writing data directly to the memory using Alchemy c/c++ code instead of using flash. :)
fredrikpj
Posts: 38
Joined: Tue Feb 09, 2010 11:28 am

Re: I will be relying on you guys

Post by fredrikpj »

Updated the projectile system. Previously it basically just moved the bullets in one direction, also there was just three variables for each bullet.

This updated demo has 37 variables per bullet.
So here's 500 bullets on the screen with 20 enemies hitTesting. Also, the bullets are homing, with some sluggishness added, also has acceleration/deacceleration phases. Plus, the bullets are affected by gravity. Also, it has directional control to switch bitmaps according to its direction, plus it supports animating bullets.

Here's the demo: http://www.flashbutler.com/projectile2.html

How's performance on your end?
ForeverSublime
Posts: 47
Joined: Fri Nov 06, 2009 7:31 am

Re: I will be relying on you guys

Post by ForeverSublime »

fredrikpj wrote: I read around a bit and saw things like not too long levels, interesting weapons and enemies, no inertia on player ship, not too messy graphics etc. Are there any more recommendations that I should keep in mind?
Certainly. Add interesting game mechanics. You can take any element (intertia, length, messy graphics, hit box size) and turn it into a feature if your game is designed around/in support of it.
fredrikpj wrote: I'm hoping to get people to see that you actually can do a decent shooter in flash without killing your cpu.
All depends on your idea of a "decent" shooter. Just as someone can complain about intertia, someone can complain about the surplus of bullets on the screen being just as cliche. It's all in how you execute a concept.
fredrikpj
Posts: 38
Joined: Tue Feb 09, 2010 11:28 am

Re: I will be relying on you guys

Post by fredrikpj »

ForeverSublime wrote:
fredrikpj wrote: I read around a bit and saw things like not too long levels, interesting weapons and enemies, no inertia on player ship, not too messy graphics etc. Are there any more recommendations that I should keep in mind?
Certainly. Add interesting game mechanics. You can take any element (intertia, length, messy graphics, hit box size) and turn it into a feature if your game is designed around/in support of it.
fredrikpj wrote: I'm hoping to get people to see that you actually can do a decent shooter in flash without killing your cpu.
All depends on your idea of a "decent" shooter. Just as someone can complain about intertia, someone can complain about the surplus of bullets on the screen being just as cliche. It's all in how you execute a concept.
Good points.
I've been playing around a lot with different shooters, while I love the adrenalin feel you get from a vertical shooter, I still prefer horizontal ones.
Things I found to be fun:
- Dropping bombs, I love this, since you need to precision strike targets where your ship will have problems flying.
- Hitpoints, I hate when you get shot once and you're dead. A simple three hitpoint system is what I prefer (this could be changed with difficulty setting, 1 hit for expert, 3 for normal, 5 for beginner etc.)
- Weapons intact, while I think you should loose a small amount of your weapons, I hate it when they remove everything when you die.
- Secondary mode, love this, such as secondary button to change configuration of how you're shooting. A simple thing like turning around to fire backwards for example.
- Variation, things that surprise you when you're playing. Columns that rise from the ground, rotating walls that you need to avoid etc.
- Objectives, adding small things like "collect at least xx items", or "destroy xx podships" and a big confirmation text when you've updated your objective, like "You've destroyed 1/2 podships!"
- Currency, like in blood money that you collect money to use in stores.
- Boss phases, superfun when you manage to destroy the head or wing or whatever that makes the boss change its tactics.
- Effects, I think this is superimportant, when I destroy something big, I want it to spout flames and explosions, and fireballs/smoke particles that goes in all directions, screen shaking and flashing when you destroy a boss. It makes such a difference in immersiveness I think :)

Here's something I didn't find:
- Alternate paths, like in outrun, going left or right, up or down to change what path you will take. Obviously will take more time to do, but might be cool to all of a sudden switch into a new path with a new boss. Good for repeat play.

I know my engine that I've shown is spouting out tons of bullets right now, when finished I actually won't use that many bullets, but I will use tons of fx particles, so that why I need my engine to handle a lot..
User avatar
emphatic
Posts: 7984
Joined: Mon Aug 18, 2008 3:47 pm
Location: Alingsås, Sweden
Contact:

Re: I will be relying on you guys

Post by emphatic »

fredrikpj wrote:Things I found to be fun:
- Hitpoints, I hate when you get shot once and you're dead. A simple three hitpoint system is what I prefer (this could be changed with difficulty setting, 1 hit for expert, 3 for normal, 5 for beginner etc.)
- Currency, like in blood money that you collect money to use in stores.
These are about the two worst ideas you can put into a shmup. Please don't say you love cut scenes as well... :roll:

If you want to make a great game, look at ARCADE games.
Image | My games - http://www.emphatic.se
RegalSin wrote:Street Fighters. We need to aviod them when we activate time accellerator.
fredrikpj
Posts: 38
Joined: Tue Feb 09, 2010 11:28 am

Re: I will be relying on you guys

Post by fredrikpj »

emphatic wrote:
fredrikpj wrote:Things I found to be fun:
- Hitpoints, I hate when you get shot once and you're dead. A simple three hitpoint system is what I prefer (this could be changed with difficulty setting, 1 hit for expert, 3 for normal, 5 for beginner etc.)
- Currency, like in blood money that you collect money to use in stores.
These are about the two worst ideas you can put into a shmup. Please don't say you love cut scenes as well... :roll:

If you want to make a great game, look at ARCADE games.
Obviously different from person to person, but having a shield that takes two hits before they go out is a nice thing I think.
And currency will keep the player playing more. If you look at a more persistent platform since this isn't arcade, then it makes sense to have currency, since you can save your progress, retry levels etc.

Take gradius, you can select different modes and combine it how you like. If you add currency to this method, then you start off with only one configuration, as you pile up more money, you can unlock more/better variations.

A arcade system won't save your progress, but you can with a browser environment.

Add a point system to this where currecy is your points. If you die you have to pay a amount depending on what you've got. If you have the fastest ship and the most advanced weapons then the penalty cost will be a lot higher than slow ships with modest weapons. So the player with most score when finished will be the one who uses the worst ship and worst weapons while dying the least. If you run out of money, it's game over.

X-out has a similar system where you buy upgrades between levels, you can usually choose to upgrade one ship to maximum, or have more lives by buying more ships with less weapons on.

Like ForeverSublime said, it's all down to how you execute it. In the right game, even cutscenes would be great. Just tacking on cutscenes for the sake of it wouldn't make much sense in a shooter and if you're expecting a arcade experience then the cutscenes would slow everything down.
However, if you add cutscenes the right way, I think it would absolutely rock. Obviously all cutscenes would have to be smartly implemented so it won't break the flow. Having voiceover commenting whats going on the screen, having in-game events happen etc.. (such as having a planet explode in the background that you're protecting against a invasion and hearing radio chatter when this happens "my god, did you see that?!...my...family...oh my god..");

Btw, nice to see more Swedes on the forum, I'm from Borås myself :)
User avatar
emphatic
Posts: 7984
Joined: Mon Aug 18, 2008 3:47 pm
Location: Alingsås, Sweden
Contact:

Re: I will be relying on you guys

Post by emphatic »

fredrikpj wrote:Btw, nice to see more Swedes on the forum, I'm from Borås myself :)
Hi! :D

Just be aware that life points and ship shops are much frowned upon by the shmups community in general. Just a heads up. It's Euroshmup characteristics that most fans of the genre loathe, as the more popular games are straight arcade ports. I understand however that YOU like these ideas, and that's what you wanna do, but my advice is: if you invest time into crafting a nice game, at least create an ARCADE MODE, with
"powerup" dropping ships and 1 hit 1 life lost and a smaller hitbox.

And another thing, no inertia on the ship whatsoever. :P
Image | My games - http://www.emphatic.se
RegalSin wrote:Street Fighters. We need to aviod them when we activate time accellerator.
fredrikpj
Posts: 38
Joined: Tue Feb 09, 2010 11:28 am

Re: I will be relying on you guys

Post by fredrikpj »

emphatic wrote:
fredrikpj wrote:Btw, nice to see more Swedes on the forum, I'm from Borås myself :)
Hi! :D

Just be aware that life points and ship shops are much frowned upon by the shmups community in general. Just a heads up. It's Euroshmup characteristics that most fans of the genre loathe, as the more popular games are straight arcade ports. I understand however that YOU like these ideas, and that's what you wanna do, but my advice is: if you invest time into crafting a nice game, at least create an ARCADE MODE, with
"powerup" dropping ships and 1 hit 1 life lost and a smaller hitbox.

And another thing, no inertia on the ship whatsoever. :P
Arcade mode sounds like a really good idea! :)
Regarding hitboxes, I'm currently detecting at a pixel perfect level as it's faster the way I'm doing it, but I can also allow things to pass as I can see how close the bullets are when they hit, so you think I should disregard bullet hits unless they're within a smaller hit area inside your ship?
I agree that it's fun to collect powerups, if I implement buying weapons, then I will make them have different power levels.

I think for my first game outing, I'll keep it very basic, just to get a feel for everything, then add more stuff later on in version 2..

Btw, I checked your site, a bit jealous of your cabinet, any good sites where I can get one? Would be awesome to have a cabinet in the livingroom (my wife would love that..er.. :D )
User avatar
TMR
Posts: 163
Joined: Thu May 14, 2009 10:29 pm
Location: Leeds, U.K.
Contact:

Re: I will be relying on you guys

Post by TMR »

fredrikpj wrote:Regarding hitboxes, I'm currently detecting at a pixel perfect level as it's faster the way I'm doing it, but I can also allow things to pass as I can see how close the bullets are when they hit, so you think I should disregard bullet hits unless they're within a smaller hit area inside your ship?
Yeah, collisions with the player at least should be more generous; they've got one ship and a finite number of bullets, the enemy has lots of ships and a metric feckload of bullets so it's only fair that the player is harder to hit!
User avatar
emphatic
Posts: 7984
Joined: Mon Aug 18, 2008 3:47 pm
Location: Alingsås, Sweden
Contact:

Re: I will be relying on you guys

Post by emphatic »

fredrikpj wrote:Btw, I checked your site, a bit jealous of your cabinet, any good sites where I can get one? Would be awesome to have a cabinet in the livingroom (my wife would love that..er.. :D )
Check out www.arkadtorget.se - best Swedish gaming site, and a nice community in general. There's a group-buy for EGRET II's and New Astro City coming up (hopefully). Also, www.arcadegames.se has some Naomi cabs.
Image | My games - http://www.emphatic.se
RegalSin wrote:Street Fighters. We need to aviod them when we activate time accellerator.
fredrikpj
Posts: 38
Joined: Tue Feb 09, 2010 11:28 am

Re: I will be relying on you guys

Post by fredrikpj »

TMR wrote:
fredrikpj wrote:Regarding hitboxes, I'm currently detecting at a pixel perfect level as it's faster the way I'm doing it, but I can also allow things to pass as I can see how close the bullets are when they hit, so you think I should disregard bullet hits unless they're within a smaller hit area inside your ship?
Yeah, collisions with the player at least should be more generous; they've got one ship and a finite number of bullets, the enemy has lots of ships and a metric feckload of bullets so it's only fair that the player is harder to hit!
Makes sense, great, I'll implement a alternative hit method for the player as well then :)
fredrikpj
Posts: 38
Joined: Tue Feb 09, 2010 11:28 am

Re: I will be relying on you guys

Post by fredrikpj »

emphatic wrote:
fredrikpj wrote:Btw, I checked your site, a bit jealous of your cabinet, any good sites where I can get one? Would be awesome to have a cabinet in the livingroom (my wife would love that..er.. :D )
Check out http://www.arkadtorget.se - best Swedish gaming site, and a nice community in general. There's a group-buy for EGRET II's and New Astro City coming up (hopefully). Also, http://www.arcadegames.se has some Naomi cabs.
Awesome! Found this one: http://www.arcadegames.se/images/prodimages/naomi1.jpg
Would it be hard to get this working with a pc and Mame?
Ixmucane2
Posts: 776
Joined: Mon Jan 19, 2009 3:26 pm
Location: stuck at the continue prompt

Re: I will be relying on you guys

Post by Ixmucane2 »

fredrikpj wrote:Awesome! Found this one: http://www.arcadegames.se/images/prodimages/naomi1.jpg
Would it be hard to get this working with a pc and Mame?
Yes. But why would you?
User avatar
emphatic
Posts: 7984
Joined: Mon Aug 18, 2008 3:47 pm
Location: Alingsås, Sweden
Contact:

Re: I will be relying on you guys

Post by emphatic »

fredrikpj wrote:Awesome! Found this one: http://www.arcadegames.se/images/prodimages/naomi1.jpg
Would it be hard to get this working with a pc and Mame?
Not very hard. The monitor does VGA @ 640x480. For the controls there are lots of solutions. Like the JVS-Pac: http://jvspac.kirurg.org/
Image | My games - http://www.emphatic.se
RegalSin wrote:Street Fighters. We need to aviod them when we activate time accellerator.
fredrikpj
Posts: 38
Joined: Tue Feb 09, 2010 11:28 am

Re: I will be relying on you guys

Post by fredrikpj »

Phew, almost done with my particle engine! Really looking forward to actually beginning to make the game now :)
Here's the engine with homing bullets and proper hitTesting. I've set the accuracy to 1 check, meaning only one bullet can occupy a grid when I'm hitTesting, but I think it feels ok for a shooter?

http://www.flashbutler.com/projectile.html

Next up is enemy management (so they actually die), and trails for particles.
User avatar
Udderdude
Posts: 6294
Joined: Thu Feb 16, 2006 7:55 am
Location: Canada
Contact:

Re: I will be relying on you guys

Post by Udderdude »

Watching those shots hit the enemies and they never explode is like torture for me.

Please make them blow up. :(
Post Reply