FunFetched 42 Report post Posted September 1, 2017 http://shellshock.io My first BabylonJS project is a whacky multiplayer first person shooter featuring, well, eggs, of course! It's in very early development and still fairly rough around the edges, but it's super easy to jump in quickly and play. It's just been made public, so finding people to shoot may be a little hit and miss (pun intended). Enjoy! Facebook: http://www.facebook.com/ShellShockGame Twitter: https://twitter.com/eggcombat 14 NasimiAsl, adam, RNull and 11 others reacted to this Share this post Link to post Share on other sites
satguru 146 Report post Posted September 1, 2017 Nice !! Share this post Link to post Share on other sites
jerome 1,732 Report post Posted September 1, 2017 really nice ! Share this post Link to post Share on other sites
renjianfeng 81 Report post Posted September 4, 2017 nice! Share this post Link to post Share on other sites
Kreeba 15 Report post Posted September 4, 2017 Great! Share this post Link to post Share on other sites
Will Welker 1 Report post Posted September 25, 2017 Not normally a shooter fan but I just played that for an hour LOL. Very nice game mechanics. What are you using for a back-end? Share this post Link to post Share on other sites
Deltakosh 4,306 Report post Posted September 25, 2017 Do you want to share a 800x500 screenshot? I would like to add your great game to our homepage Share this post Link to post Share on other sites
FunFetched 42 Report post Posted September 25, 2017 16 hours ago, Will Welker said: Not normally a shooter fan but I just played that for an hour LOL. Very nice game mechanics. What are you using for a back-end? Haha; great! Glad you're enjoying it. I'm normally not a big shooter player either, ironically enough, but thought this type of game could fill a niche that has opened up a bit since the Unity Web Player is on the way out. I'm using NodeJS on the back end with Express and the 'ws' module to support Websockets. I started out with Socket.io, but it doesn't support binary transport, and I really needed to keep packet size down as much as possible. Obviously, C/C++ would be a lot faster on the server, but Node allows me to share code on the server and client ends, making things a whole lot easier, and it's actually been handling the load quite well so far. At least 100 players can play at the same time, and I don't even have multi-core support in there yet. Share this post Link to post Share on other sites
FunFetched 42 Report post Posted September 25, 2017 6 hours ago, Deltakosh said: Do you want to share a 800x500 screenshot? I would like to add your great game to our homepage Absolutely; that would be great! Share this post Link to post Share on other sites
Raggar 139 Report post Posted September 25, 2017 I seem to be stuck at 30FPS using 64Bit Firefox. Other than that, I really liked the game and played it quite a while already. Some guy had a 90+ steak and didn't seem to take any damage. I think his name was eeey. Looking through the code, I presume it's client-authoritative, right? That means a reactive approach is needed to prevent these types of cheats. Have you any plans for this? I'm simply asking, because it's interesting.. Again, nice game. Share this post Link to post Share on other sites
FunFetched 42 Report post Posted September 25, 2017 20 minutes ago, Raggar said: I seem to be stuck at 30FPS using 64Bit Firefox. Other than that, I really liked the game and played it quite a while already. Some guy had a 90+ steak and didn't seem to take any damage. I think his name was eeey. Looking through the code, I presume it's client-authoritative, right? That means a reactive approach is needed to prevent these types of cheats. Have you any plans for this? I'm simply asking, because it's interesting.. Again, nice game. It's actually entirely server-authoritative. There's simulation on the client-end, which is probably what you're looking at, but the server has the first (and only) say as to when a player is actually hit, where he can move, etc. That makes connection quality paramount to successful play, so you might make a note of your ping as well. Generally, for any first-person shooter, anything under 100ms is considered good. Problems arise when it gets much higher, and especially when it fluctuates a lot. I'm quite close to the USA server, and my ping is generally under 20. I had a 45-kill streak myself once, so 90+ doesn't seem entirely out of the ordinary. People who play FPSes competitively on a regular basis have a serious advantage, I've noticed. Make sure you aren't downloading anything while you're playing. Steam, for instance, can be a killer if it happens to be downloading an update in the background. As for your frame rate, there's probably a way to increase that, but not knowing your system specs, I can't be sure. I get 50-60 pretty consistently on my MacBook Pro. A guy I know has a pretty powerful PC, but it was running significantly slower until he tweaked something. I can't remember if it was a driver update, or a WebGL setting in his browser. There's some good information here regarding browser settings (including Firefox) in regard to WebGL: https://superuser.com/questions/836832/how-can-i-enable-webgl-in-my-browser Edit: Actually, the game won't run at all if you don't have WebGL enabled, but Firefox does have a lot of settings for it. Enter about:config in your address bar, and search for webgl. 1 Raggar reacted to this Share this post Link to post Share on other sites
Raggar 139 Report post Posted September 26, 2017 Chrome does not have the same issue. It might just be some of the many extensions I have messing it up Very impressive game. I'm using CannonJS server-side for a little FPS project of my own. (On hold while I work on something else). I assume you use BabylonJS on the server as well? In that case you are very welcome to throw out some pointers on how you did just that, as I know it's a very sought after feature of the community. Although I use CannonJS, I have a project that would benefit from a BabylonJS backend as well. Share this post Link to post Share on other sites
FunFetched 42 Report post Posted September 26, 2017 I'm using some Babylon on the server side, but basically just for the vector and quaternion math. Since Babylon at large expects to run in a browser (and therefore, a 'window' variable), I just cut-out the portions that I needed; portions that don't require window, and put them in a new file. I'm not using a physics engine, and the collision detection I'm doing myself, because I wanted to keep it as simple (and therefore, fast) as possible. The map is just a grid, so collisions just come down to a simple box test. Share this post Link to post Share on other sites
Deltakosh 4,306 Report post Posted September 26, 2017 You are live! 1 FunFetched reacted to this Share this post Link to post Share on other sites
Will Welker 1 Report post Posted September 26, 2017 It is hard to quantify what make a great game. But when you see it, you know it. I think you have hit a sweet spot with this. It reminds me of Angry Birds in that it is simple yet satisfying in a way that we are not used to. Definitely run with this one LOL. Share this post Link to post Share on other sites
inteja 68 Report post Posted September 27, 2017 This is awesome. Great work! Share this post Link to post Share on other sites
RNull 9 Report post Posted September 28, 2017 Congrats dude, this game made FPS relevant for me again . I mean, replacing the player with an egg is a genious move !! Best Regards, RelativeNull Share this post Link to post Share on other sites
lil nug 1 Report post Posted April 5, 2018 Okay, so I have a list of things that I think that should be changed or added in the game: Rename the soldier class to be "Hard Boiled". Makes sense, right? More than three classes. I mean, at least add one more. Like an explosives-based character that instead of grenades it has remote explosives and a grenade launcher for its primary weapon. Cosmetics. You know, skins, right? Hats, at least. Or, just a reskin of the normal character. Like an easter skin, dragon egg skin, etc. I'd love to give you some pointers! I hope this works out and I hope at least one of these gets added to the game. Thanks! 1 Deltakosh reacted to this Share this post Link to post Share on other sites
Shanley Ivor 0 Report post Posted November 21, 2018 Yeah. I also spend hours to play Shell Shockers on Freegames66. I love the cute graphic and cute eggs. Share this post Link to post Share on other sites
FunFetched 42 Report post Posted November 28, 2018 Update: I'm using the full-on Babylon Null Engine on the server-side now to handle collision detection. The maps are divided into 3D grids, and every occupied cell contains a reference to an arrangement of one or more AABB or OBB bounding boxes for quick collision calculations, all loaded from a .babylon file exported from Blender. The game supports all sorts of map elements of all shapes now. Also, kudos to everyone who worked on Babylon v3.3. I'm making the transition now, and I'm seeing huge improvements in some key areas. A number of animation problems have disappeared. SPS mesh building is orders of magnitude faster than it was, which is great, because that's how I build the maps at run time. A number of other smaller items that I had clumsily patched up myself no longer need to be. Good stuff! 4 QuintusHegie, Sebavan, inteja and 1 other reacted to this Share this post Link to post Share on other sites