6 ms·
In-browser retro-futuristic tank game, open source
- Datagenerator 4y agoCould use some Doppler sounds to gauge the distance to enemies nearing by, like space invaders that used increased frequencies when danger level increases?
- brianrisk 4y agoPure javascript/html. Would love feedback on ideas. Leave a star on Github if you like it!
- mysterydip 4y agoNeat! Smooth performance on my iPhone. The controls might need some tweaking in terms of values, like faster turning if I'm holding it down, but less if I'm tapping trying to line up a shot.
- brianrisk 4y agoGlad it worked for you on the iPhone! I'd love to figure out how to resize the screen correctly if the phone is in portrait and then you rotate it to landscape
- jaeh 4y agodo you mean like this? const onResize = () => { const { innerWidth: w, innerHeight: h } = window camera.aspect = w / h camera.updateProjectionMatrix() renderer.setSize(w, h) } window.addEventListener('resize', onResize)
- PostOnce 4y agoI know the github link is on the main screen, but people are going to click past it to play of course so here's the github link to click on from HN: https://github.com/brianrisk/SYNTHBLAST https://github.com/brianrisk/SYNTHBLAST
- brianrisk 4y agoYou're the best
- lbotos 4y agoGreat job! - Maybe a warning for tanks behind you? Felt overwhelming at times - Maybe top down tile one level sooner? - In top down mode maybe larger bullets
- brianrisk 4y agoThe warning idea could actually add to some of the suspense. Maybe a creepy sound they make within a certain radius? And: larger bullets? That's hands-down the easiest suggestion to try out I've ever seen! (as opposed to "multiplayer and wearables inventory woudl be cool bruh")
- gkaemmer 4y agoVery groovy visuals. There was something sort of terrifying about the enemy tanks. Maybe a minimap would help with this, but I almost got Slenderman vibes when I would turn around and see a tank right there in front of my face. Got my heartrate going.
- brianrisk 4y agoI fully get it. Their seeking algo is pretty primitive, but their steady relentlessness is unnerving. At level 3 or higher there are green pads you can run over that gives you an overhead view
- madrox 4y agoGood fun! As a FPS player, I want an option to bind A and D to strafe and use mouse or arrow keys to turn. Also, maybe have the music fade in so I have a chance to save my ears. "Blast" indeed. :)
- z9znz 4y agoBut tanks can't usually strafe... The sound is very reminiscent of the old video game arcades. Just about every game cabinet was pumping out some soundtrack and game sounds like this, so the entire place had a certain acoustic character which was very unique. I'd hate it now with my older sensitive ears, but as a kid it was a siren song.
- madrox 4y agoIt isn't a tank. It's a triangle. Tanks also don't have infinite ammo. We make concessions to unreality all the time in the name of making things more fun. And this isn't an arcade. It's a web page. It's a common courtesy to people visiting web pages to not get immediately blasted with sound at the high end of the range.
- z9znz 4y agoAnd yet, this game was clearly intended to be a throback to old arcade games. And old arcade games like this typically modeled tanks (and didn't have strafing). Old arcade games also DID have loud music like this, and as I noted above the whole arcade was full of these competing sounds.
- sh4rks 4y agoI'm really surprised how smooth the controls felt on my phone. Even with eight direction buttons, the movement was intuitive.
- modeless 4y agoThe floor desperately needs anisotropic texture filtering. Hopefully should be easy to turn on. Better yet, check this article and implement some really high quality texture filtering: https://bgolus.medium.com/sharper-mipmapping-using-shader-based-supersampling-ed7aadb47bec https://bgolus.medium.com/sharper-mipmapping-using-shader-ba...
- brianrisk 4y agoA popular suggestion today! Done!
- tech234a 4y agoVery cool! Multiplayer could be a fun addition where players could choose to collaborate or could try to prevent other players from reaching future levels.
- abetusk 4y agoAlmost completely unrelated but I have long wanted an in-browser/real-time/javascript/FOSS 'synthwave screensaver' in the style that you sometimes see on YouTube [0]. Maybe I'll use your code as a baseline for it if I get the motivation. In terms of actual feedback, the game itself has a lot going for it. I would, at the very least, add some 'juice' to it, which would probably add a lot. There are many videos on it but the most enlightening one I found was from Nijman of Vlambeer [1]. You might need to take care with literal screenshake as it's 3d but there are many other suggestions that are relevant (kick back from firing, enemy blood/armor splatter, detritus persistence, small variations in bullet direction, etc.). [0] https://www.youtube.com/watch?v=zgsJohwr9EQ https://www.youtube.com/watch?v=zgsJohwr9EQ [1] https://www.youtube.com/watch?v=AJdEqssNZ-U https://www.youtube.com/watch?v=AJdEqssNZ-U
- tjbrennan 4y agoYou're in luck: https://github.com/victorqribeiro/retroSynthwave https://github.com/victorqribeiro/retroSynthwave This plus the macos app Plash makes for a sweet desktop wallpaper.
- ForHackernews 4y agoNice! Reminds me of Battlezone https://www.arcade-history.com/?n=battlezone&page=detail&id=210 https://www.arcade-history.com/?n=battlezone&page=detail&id=...
- brianrisk 4y agoOh Battlezone! I drew a lot of influence from the (way cooler than mine) '90s game Spectre: https://www.youtube.com/watch?v=t41bawPxF-g https://www.youtube.com/watch?v=t41bawPxF-g
- wazoox 4y agoI've played so much Spectre and Spectre Supreme back then on my LC II :)
- snewman 4y agoSpectre co-author here. Neat to see this! The backstory of Spectre is that we wrote a straight-up Battlezone clone just as a hobby project, then decided that it was worth commercializing and so we fiddled around just enough to make it not be a copyright violation. It's influences all the way down. :-) By complete coincidence, a friend of my co-author texted this photo from the Vintage Computer Festival today: https://photos.app.goo.gl/XTEUkjwtJb7nhQn7A https://photos.app.goo.gl/XTEUkjwtJb7nhQn7A
- sen 4y agoI love who you find on HN. Thanks so much for Spectre, it's one of my absolute favourite games from my school days. I couldn't count the number of times we got after-school detention for sneaking into the Macintosh labs at lunch time to play Spectre. We taught ourselves to pick the lock on the lab door then locked ourselves in and played with the volume right down, usually only getting in trouble because of us laughing and egging each other on. It's one of the big things that got me into computers in the first place, and holds a special place in my heart. Everyone else geeks out over SNES nostalgia but we were absolutely Spectre teens.
- 4y ago
- linman0x90 4y agoKind of made me motion sick. Could be a side effect of getting old.
- philipwhiuk 4y agoThe green pads was a neat twist.
- wazoox 4y agoA blast from "Spectre" and "Spectre Supreme" :)
- germinalphrase 4y agoSpectre! I couldn’t come up with the title. Thank you for reminding me.
- sen 4y agoWe played sooo much Spectre (and then Spectre VR) on the school Macs. From memory it even had local multiplayer via AppleTalk? You can play the original DOS version in-browser at MyAbandonWare which is a fun little nostalgia trip: https://www.myabandonware.com/game/spectre-vr-20h/play-20h https://www.myabandonware.com/game/spectre-vr-20h/play-20h
- pierrec 4y agoThat was fun. I love how the AI is both very simple but also creates interesting group movements (especially in "zombie modes"). Cosmetic enhancement: the ground plane looks really blurry half-way to the horizon. I can even see it in the README screenshot :D Looks to me like a textbook use case for anisotropic filtering, which should be a simple setting in the library you're using: https://en.wikipedia.org/wiki/Anisotropic_filtering https://en.wikipedia.org/wiki/Anisotropic_filtering Or if you're feeling hardcore, write a shader for the ground plane: https://iquilezles.org/articles/filterableprocedurals https://iquilezles.org/articles/filterableprocedurals
- brianrisk 4y agoWhat a pro tip! This was an easy change; I've pushed it to the repo and will be out with the next release I put out later today. Any other suggestions you have I'd love to hear. (Incidentally; I set the anisotropy to 8 for that texture -- I liked some of the blur produced as it gives it a nice neon effect)
- xwdv 4y agowhy can't I find anyone to kill??
- mgdlbp 4y ago- Upon starting a level, hold reverse to escape :D - Undocumented: [Shift] toggles between first person and top-down - The camera tumbles endlessly if a perspective change finishes while the tab is unfocused -- I discovered both of these after using [Ctrl]+[Shift]+[Tab] - The enemies have randomized speed and use lead pursuit; this is quite effective at preventing them from stacking up behind the player like they do in similar games - Enemies only turn left and will turn all the way around in order to turn right -- you can make them dance in the middle of the map by circling clockwise along the wall, or stall them by moving back and forth - It's pretty common to make players slide along walls when moving against them at an angle. That does make less sense for a tank, though.
- brianrisk 4y agoYou are one hell of an alpha tester! Are you up for opening an issue for the camera tumble? https://github.com/brianrisk/SYNTHBLAST/issues https://github.com/brianrisk/SYNTHBLAST/issues
- squarefoot 4y agoAs an avid BZFlag player I of course like it. It seems to me it could grow into something interesting. Multiplayer maybe?
- pantulis 4y agoYeah, great BZFlag vibes over there. How is BZFlag these days?
- squarefoot 4y agoThe game is pretty much the same compared for example to the early 2K; now there are lot less players and teams, but it's still a lot of fun.
- systems_glitch 4y agoPretty cool!
- DennisP 4y agoIt'd be cool if it worked like the old arcade tank game: buttons control tread forward/reverse. Opposite directions spin you in place, same direction for forward/back, activate just one tread to travel in a circle. The floaty things that award "ether" look familiar :)
- a1r 4y agoWow this has a ton in common with my port of the C64 game ENCOUNTER, https://github.com/air/encounter https://github.com/air/encounter Look for the Play link in the README. Great job on the aesthetics!
- bitlax 4y agoWow it's like I'm back at Chuck E Cheese playing Cyber Sled. https://youtu.be/pwF4A9oMrcQ https://youtu.be/pwF4A9oMrcQ
- deleted 4y ago[deleted]
- Waterluvian 4y agoThis is great. I played Spectre and SpectreVR a ton as a kid. The 80s retro theme is a perfect fit. I think a gentler, more wispy synthwave song would fit better, but this is certainly a subjective topic to opine on. Well done!!
- omeze 4y agoCool! Reminds me of Robotron 64: https://m.youtube.com/watch?v=NJtTB5DyAog https://m.youtube.com/watch?v=NJtTB5DyAog
- tomcam 4y agoWonderful, and it worked on my iPhone. Thanks!
- jker 4y agoSuper fun, and the 80s retro look is spot on. The sun reminds me of a logo from that era, but I can't remember the company or organization.
- 6295926493 4y ago
- 6295926493 4y ago
- nerbert 4y agoThat reminds me of spectre supreme! Good times.
- yreg 4y agoThe style is called synthwave, not retro-futurism :) https://aesthetics.fandom.com/wiki/Synthwave https://aesthetics.fandom.com/wiki/Synthwave https://aesthetics.fandom.com/wiki/Retro-Futurism https://aesthetics.fandom.com/wiki/Retro-Futurism
- brianrisk 4y agoPerhaps Synthwave is a subset of Retro-Futurism? "...a blend of old-fashioned 'retro styles' with futuristic technology"
- justchill 4y agoThis brings back memories of some game I played on my Mac ages ago that was 2d top down and you were tanks against other tanks
- tmilard 4y ago3D WALK game : https://free-visit.net/fr/demo01 https://free-visit.net/fr/demo01 ( load twice to play )
- radiojasper 4y agoSuch a fun lil' game to play! I would advice adding some OpenGraph data to your website header so sharing the link on (eg.) Discord doesn't look so plain. If you're unsure what to add, just have it generated for you [0] [0]: https://smallseotools.com/open-graph-generator/ https://smallseotools.com/open-graph-generator/
- justsomehnguy 4y agoIt took some time to dig up, but this reminded me of Thunderstrike[0] Controls are behaving strange with turning, sometimes it registers right away, sometimes it takes some time (like a whole second), sometimes it just ignores the key. Firefox, Windows. If you want to add something then in no particular order: clouds, especially for the top down view small moving inertia firing sounds, so it would be a slightly annoying to constantly press fire borders for the outer area or wrap around the world high score board at least for a session once in a while (rnd 5-10 seconds?) make the bots change to a random direction, so they wouldn't pack after the player [0] https://archive.org/details/msdos_Thunderstrike_1990 https://archive.org/details/msdos_Thunderstrike_1990 (be sure to check options -> misc)