Jump to content

S.U.F.I.: Shut Up And Fight


remvst
 Share

Recommended Posts

After having lost all inspiration regarding game ideas and released that kind of crap, I decided to stop bothering and do something I like: a simple looking shooter with lots of explosions.

 

So this is what I came up with: S.U.F.I.: Shut Up And Fight, a game in which you shoot at everything that moves and pick up items to help you. How original.

 

Here are a few screenshots in case the title already pushed you away:

 

sufi-thb01.png sufi-thb02.png sufi-thb03.png

The game is designed for desktop mostly, which should make it stand apart from most of the stuff that's been posted here :P.

You can try to run it on a mobile device, the controls were designed for it, but it's probably gonna crash (especially on Chrome). I haven't tested it iOS yet.

You can play the game at http://sufi.tap2play.io/

I'm really looking forward to feedback. I probably won't change the core game, but I could tweak a few things. For instance, I am aware that the game is very difficult at the moment. I intend to keep it a little difficult, but I might tweak it based on feedback.

For those interested, I used:

- Pixi.js for the display

- Howler.js for the sound

- screenfull.js for the fullscreen stuff

- store.js for the storage

- marmottajax for AJAX calls

- alertify.js for the prompt dialog

Link to comment
Share on other sites

Hi remvst,

not much I can say ... I played as "DingDong" to th third place :D ... I really liked the entire thing. From music, to design, to gameplay.

Did you program the leaderboard on your own? I was thinking about a global leaderboard for my games as well, but then I read lots of comments about security issues. So I went for a service solution. Unfortunately, even clay gave me very unsatisfying results, so I kept a local board only.

Keep it up :)

Link to comment
Share on other sites

That's a nice polished shooter.

 

Suggestion: Because it's so fast-paced, I didn't want to take my eyes off my ship. I didn't even notice the health and power indicators for about three levels. Even after that, I was sure when I lost a life, but during fast combat I didn't have a good sense of my health level. Maybe you could move the health and power indicators to the ship itself, as a color treatment or glowing aura or something? Or even a bar, like the enemy health bars.

Link to comment
Share on other sites

Hi remvst,

not much I can say ... I played as "DingDong" to th third place :D ... I really liked the entire thing. From music, to design, to gameplay.

Did you program the leaderboard on your own? I was thinking about a global leaderboard for my games as well, but then I read lots of comments about security issues. So I went for a service solution. Unfortunately, even clay gave me very unsatisfying results, so I kept a local board only.

Keep it up :)

I used to use Clay's leaderboards, but now I always use my own (got about 10 games using the same system). The reason for that is that I can analyze what players do. For example, on this game, I can see the game details (kills, shots, level...), but I can also tell your average framerate.

It also allows me to run lots of analytics on my own database, something I can't do with Clay, and not as much on Google Analytics (which I do use though).

What's more, Clay requires to log in, and is confusing for a lot of players. I just want a simple name box where the user can put whatever he wants.

Last but not least, I can integrate my stuff within the game, which I can't do with Clay. For instance, if I wanted to display today's best score on the menu, that'd be pretty easy. I can also include it here.

Though, it brings lots of security issues. Many people will try to send false scores, and sometimes it's hard to tell who cheated and who was crazy good at it.

Clay doesn't help for this, as you can just open the console and send anything you want.

What I did is that I added a lot of security checks on the server side, as well as encryption on the client side. I could go into more details if you want, but basically I just add a lot of checks that are simple and could be bypassed, but most people won't know how.

Another problem it brings is that you have to use your own database. That sounds pretty easy, but I actually have a ~450 MB MySQL database that I have to manage, and pay for it (way more expensive than the 200 MB basic database my host used to provide).

Honestly, unless you're planning to have LOTS of games running your leaderboard system, I'd recommend using a service. I started my own because back then noone was providing that kind of stuff, and I just stuck to it.

That's a nice polished shooter.

 

Suggestion: Because it's so fast-paced, I didn't want to take my eyes off my ship. I didn't even notice the health and power indicators for about three levels. Even after that, I was sure when I lost a life, but during fast combat I didn't have a good sense of my health level. Maybe you could move the health and power indicators to the ship itself, as a color treatment or glowing aura or something? Or even a bar, like the enemy health bars.

This was actually one of my concerns, thank you for pointing it out. I'll see what I can do (I honestly have no idea :P ).

Thanks for the feedback guys ;)

Link to comment
Share on other sites

Thanks for your nice explanation :)

Do you have the source code or a good tutorial available that you followed? In near future I would definitly like to integrate a global highscore in the future. But all I found on this topic was some very vague explanation. The closest I got was with some node.js scripts, but still not veeeeeery good.

Link to comment
Share on other sites

Thanks for your nice explanation :)

Do you have the source code or a good tutorial available that you followed? In near future I would definitly like to integrate a global highscore in the future. But all I found on this topic was some very vague explanation. The closest I got was with some node.js scripts, but still not veeeeeery good.

Well I didn't really follow any tutorial, and giving you the code wouldn't help much, but to help you, this is what I do:

- first, the data I send to the server is encrypted. It's a simple encryption, easy to bypass, but it's already harder to fake data

- then, on the server side, I check if the data is the same as what was previously sent. This prevents people from sending the same AJAX request multiple times and filling the leaderboard. I also add a random field, to avoid errors when people get the same score twice

- I also check the elapsed time since the last request. For instance, on a slow game, two requests come from the same player within 10 seconds, I don't save them.

 

These are pretty simple to bypass, but it prevents most players from sending false data.

Link to comment
Share on other sites

Nice Game!

I like the RGB effect when you get hit, is that easy to build in HTML5?

Also the music is nice.

 

My suggestions for improvement:

- less boring graphics

- different enemies

- make enemies die faster (i think it would be more fun. Now i have to hit a guy like 10 times till he dies. Such enemies are ok, but there should be smaller ones that die fast, would be more rewarding for the player imo)

Link to comment
Share on other sites

I like the RGB effect when you get hit, is that easy to build in HTML5?

This is done thanks to Pixi, which features several filters like this one.

 

Regarding your suggestions:

- I know the graphics are kinda boring, but that's due to my lack of graphic skills :P

- do you actually mean different (looking) enemies, or different enemy behaviours? Right now I have many different behaviours for the same enemies (basically, only 2 enemy types)

- I'll definitely make enemies die faster (like twice as fast). Thanks for the suggestion. (EDIT: it's actually online)

 

 

Also, something I forgot to mention in the first post, I actually designed a multiplayer mode using Node.js and Socket.io. I haven't included it yet because it is hard to make such a fast game look smooth (without lag), but it kinda works. I might add it in a later version.

Link to comment
Share on other sites

- I know the graphics are kinda boring, but that's due to my lack of graphic skills  :P

 

I´d try to add more colors and different spaceships.

as inspiration:

http://cache4.asset-cache.net/xc/478297073.jpg?v=2&c=IWSAsset&k=2&d=yzVbyTN4F6Ctl69YuEn67aGpceGfTNoeCi_ah_M9trSLsRa5h6svvnX7NKEE5C6o0

http://kaioa.com/b/0804/ship_a6_mv.png

http://thumb101.shutterstock.com/display_pic_with_logo/820705/179526503/stock-vector-various-spaceships-in-flight-vector-illustration-179526503.jpg

 

Wouldn´t even have to be that detailed, but just a bit more interesting yet simple forms.

 

colorwise you could do a neon style like in geometry wars. 

Ok, not very creative to copy, but would still take the visuals to a new level.

 

the enemies still die pretty hard (or is it just me lacking skill ;) )

maybe have even weaker enemies (especially in the first levels?)

 

- do you actually mean different (looking) enemies, or different enemy behaviours?

I meant different looking enemies

 

 

 

Link to comment
Share on other sites

...

Thanks for the feedback, I'll try to improve the game based on it. I have included a few more enemy styles, but nothing too drastic (for now).

 

 

Anyway, I just enabled the multiplayer mode. To try it, just hit the multiplayer button, join a room, and ask a friend to join you. You can play with up to 3 friends.

As you may have guessed, the multiplayer mode is more of an experiment, to see what was possible, as the game is super fast paced and there is definitely going to be some lag (and probably some bugs too).

 

I made it using Node.js, socket.io and it is hosted on Heroku.

 

If anyone wants to try it but doesn't have anyone to try it with, I'm always available ;)

 

 

I'm also considering writing game dev tutorials about the game. The first one would be about the architecture of enemies/AIs/spawn system.

Link to comment
Share on other sites

  • 2 weeks later...

Hey guys, I've been pretty busy lately but I found the time to write an article about game programming based on my experience on the game: Combining enemy types and enemy behaviors.

 

It's nothing too complicated, but I would really be curious to have some feedback on it. I'd like to share more about the stuff I do, and feedback would help me see if people are interested.

Even if you hated it/found grammar issues/found it useless, any feedback is good for improvement ;)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...