[HN Gopher] Show HN: I Built Multiplayer Deathmatch Joust
       ___________________________________________________________________
        
       Show HN: I Built Multiplayer Deathmatch Joust
        
       Author : jasonkester
       Score  : 217 points
       Date   : 2021-05-27 11:50 UTC (1 days ago)
        
 (HTM) web link (joust.life)
 (TXT) w3m dump (joust.life)
        
       | fouc wrote:
       | It's a little confusing when the name doesn't get dimmed or
       | disappears when the player gets knocked off the bird. It's almost
       | as if it's the name of the birds only, and the players are
       | entirely nameless ;-)
        
         | kgwxd wrote:
         | I mean, how often do you hear the name of the jockey in horse
         | racing?
        
       | tomw1808 wrote:
       | that was fun. nuff said.
        
       | turtlebits wrote:
       | Wow, what a throwback. Haven't played it in 30+ years but was
       | surprised to find myself trying old tactics immediately. (Too bad
       | "ceiling" bouncing doesn't work, or maybe it's just the lag.)
        
       | dec0dedab0de wrote:
       | I played for a few minutes then clicked back, and I'm still
       | hearing the sound effects. It's kinda weird
       | 
       | edit: after closing the tab they stopped.
        
       | dugmartin wrote:
       | That was awesome and brought me back to being a teenager in the
       | 80s. Someone go build the same for Berzerk!
        
       | bryonb wrote:
       | Amazing work. Childhood vibes were seriously kicking in while
       | playing this. Now if only I could get my brother here to
       | constantly yell at me to stop cheating it would really bring me
       | back.
       | 
       | I just played on my pc and the only issue I encountered was a
       | noticeable amount of lag.
        
       | RobertRoberts wrote:
       | Thank you, that was an awesome bit of 5 minutes of nostalgia. I
       | know it must have taken you hours to build, and I could only get
       | a few minutes to play, but it was worth your effort, and thank
       | you for sharing it here.
        
       | FranchuFranchu wrote:
       | I had to reload a few times for the page to load.
        
       | andai wrote:
       | Hug of death'd!
        
       | quadcore wrote:
       | Very fun. My suggestion would be add sounds like "triple kill",
       | "killing spree".
        
       | strangus wrote:
       | Well done! Can you please do Robotron next?
        
         | kgwxd wrote:
         | Robotron got a fantastic port for the 2600 recently [0] (WIP).
         | It supports twin-stick mode but that's pretty unusable on
         | original Atari controllers without a special rig. Genesis
         | controllers work on the 2600 and I've been trying to convince
         | them to add a configuration like Smash TV did for NES (sideways
         | controller in each hand, D-Pads only) but no one knows what I'm
         | talking about. It was such a comfortable way to play twin-stick
         | and with the Four Score you could even play 2 player.
         | 
         | [0] https://champ.games/downloads ("RobotWar 2684", Games in
         | Progress section)
        
       | sombremesa wrote:
       | Great work on the 'feel' of the movement. Would love to know how
       | the gravity/jumping works.
       | 
       | I'm a little disappointed the sound effects of the feet are
       | missing - that was one of my favorite things about Joust.
        
       | tomcam wrote:
       | Thank you! Joust was a sort of second-tier video game back in the
       | day and I felt it never got quite the love it deserved. I bought
       | the Sony PSP solely for its implementation. This is wonderful.
        
       | taylorcooney wrote:
       | That was extremely fun -- Go Team Blue!
        
       | tummulfingur wrote:
       | For the hardcore players you can switch teams while playing for
       | optimal tactics.
       | 
       | You can also iterate between Space + Up + W keys to boost your
       | jumps.
        
       | xwdv wrote:
       | Why not implement some kind of chat feature as well? Maybe push
       | enter to type something and it will appear above your head.
        
       | paisible wrote:
       | Played 5mins, had a blast. Great job :)
        
       | tutfbhuf wrote:
       | Browser vim plugin prevents me from playing.
        
         | Jean-Rachid wrote:
         | Click on the extension, then "save changes". It'll add an
         | exception for the site.
        
       | spywaregorilla wrote:
       | I had a lot of fun, but there's a big incentive to hit idle
       | players. I would suggest making players intangible until
       | receiving their first input on respawn.
        
       | skytreader wrote:
       | Thanks for the Friday fun.
       | 
       | Bug report: Me and another player happened to spawn on the same
       | spot, locking us in place and producing a satanic screeching
       | sound.
       | 
       | Other than that, great mechanics!
        
       | onion2k wrote:
       | I have no idea what's going on. I can't tell if that's
       | intentional or if it's broken.
        
         | DudeInBasement wrote:
         | 80's were a crazy time
        
           | airhead969 wrote:
           | I blame pastels, bad fashion, Saved by the Bell, and Trapper
           | Keepers.
        
         | qsort wrote:
         | It's both, and it's _glorious_.
        
       | 10000truths wrote:
       | On Safari using an iPhone XR, the left and right movement buttons
       | are obscured by the bottom navigation bar.
        
         | andai wrote:
         | Came to say the same about the original iPhone SE. I thought it
         | was because mine is a smaller model (most sites look weird on
         | it these days). But now I guess that's not the reason.
        
         | unixhero wrote:
         | Just use Chrome. It is the sane choice.
        
           | edoceo wrote:
           | There is no choice on iPhone
        
             | unixhero wrote:
             | Christ what a platform. I see, and stand corrected.
        
       | poopsmithe wrote:
       | Unplayable for me. My character's movements are very rough and
       | they're jittering all over the place.
        
       | hungryforcodes wrote:
       | Love the sounds!
        
       | boringg wrote:
       | HN gentle hug of death.
        
         | UI_at_80x24 wrote:
         | On a tech site like this can we please bring 'slashdotted' as
         | the verb to describe a non-malicious DDoS?
         | 
         | /. atleast earned the right to coin the term.
        
           | airhead969 wrote:
           | /.ed implies /.-originated. Hug of death is the HN
           | equivalent. /.ed / HoD seem to also be used for popularity
           | DDoSes generally.
        
       | hhh wrote:
       | This is magnificent.
        
       | gkilmain wrote:
       | Most fun i've had in a long time playing a game. Thanks!
        
       | suby wrote:
       | I love it, thanks for sharing!
        
       | sowbug wrote:
       | I played only the coin-op version as a kid, so I never played
       | competitively with other humans (the two-player version is more
       | cooperative than competitive). It's a very different game against
       | humans!
       | 
       | A suggestion: when you kill someone, you receive the points that
       | they had (min 1). Have each player's point total hover around
       | their sprite. This would set a higher bounty on the
       | better/luckier players and balance the gameplay a little.
        
       | knicholes wrote:
       | I feel like it's a little less responsive to movement than the
       | real game.
        
       | sleepybrett wrote:
       | See also: Killer Queen (and Killer Queen Black)
        
         | fnord77 wrote:
         | that was my immediate thought
        
         | bredren wrote:
         | I remember when this came out. I had travel planned to NYC and
         | made a stop at the install location to check it out. It was
         | closed.
         | 
         | Fortunately, Portland got one at Ground Kontrol not long after.
         | It was a lot of fun recruiting new people to try and fill in
         | all 10 spots. It was pretty funny when a snail win got close
         | and people started chanting "snail! Snail! Snail!"
         | 
         | I tried a tournament and had less fun. The game needed
         | balancing and it took some time to get out there.
         | 
         | Still, very cool it evolved from a physical game.
         | 
         | Iirc, some valley-based startups bought some of the original
         | cabinets. Anyone know which?
        
           | [deleted]
        
       | cpeterso wrote:
       | Very cool! Bug: sometimes my ostrich would stop walking. I could
       | even press the arrow key pointing the opposite direction. The
       | sprite would change to face the new direction but keep moving in
       | the old direction.
        
       | thdespou wrote:
       | This reminds me of Ready Player One story mentioning Joust
       | https://readyplayerone.fandom.com/wiki/Joust
        
       | atlantageek wrote:
       | I have a joust-esque game as well but never released it because
       | of fear with copyrighted graphics. Is that a risk with something
       | like this?
        
       | alexjplant wrote:
       | One of my favorite arcade games ever. It's unfortunate that it
       | doesn't have the same cultural cachet as the likes of Pac-Man and
       | its cohorts.
       | 
       | I'll have to link this to my Dad so that we can have a quick
       | deathmatch!
        
       | [deleted]
        
       | xntrk wrote:
       | So go. Thank you!
        
       | tjansen wrote:
       | Awesome. I loved Joust as a kid and spent countless hours playing
       | it. Unfortunately the physics don't work as well as in the
       | original. When you hit another player, the bounce is missing (and
       | the egg, but I guess that's not important).
        
         | airhead969 wrote:
         | Joust, Blaster Master, Jackal, Life Force, Raptor: Call of the
         | Shadows, and Arkanoid II. :)
         | 
         | Found Tyrian a few years back.
        
       | tresvert wrote:
       | How do I win in this game? You should include some instructions
       | so that newcomers can enjoy the game instead of being confused.
       | Also, I have a fast connection, yet I experience massive delays
       | during the game. Great work though, thanks for making me try this
       | game.
        
       | cacois wrote:
       | Neat! It's definitely crashed right now. I think we hurt it.
        
       | jayturley wrote:
       | Loving that my decades-old arcade skills still work :) Great job!
        
       | episode0x01 wrote:
       | Thats awesome. Would love to see match statistics
        
         | tummulfingur wrote:
         | You can see current leaderboard if you press Tab
        
       | TheDudeMan wrote:
       | Holy volume warnings. My dog left the room.
        
         | skrowl wrote:
         | I listen to my music with my speakers set to 40%.
         | 
         | I had to change them to 6% to comfortably play this game.
        
         | neogodless wrote:
         | Yeah my ears hurt. This should go in that thread of "injuries
         | due to code."
        
       | [deleted]
        
       | codingminds wrote:
       | Tried to toggle sound, now it's down.
       | 
       | > We encountered an error when trying to load your application
       | and your page could not be served. Check the logs for your
       | application in the App Platform dashboard.
        
       | c17r wrote:
       | All I get, no matter how many times I reload is,
       | 
       | Error
       | 
       | --
       | 
       | We encountered an error when trying to load your application and
       | your page could not be served. Check the logs for your
       | application in the App Platform dashboard.
        
       | iKnowKungFoo wrote:
       | Well, I'm done working for the day. :)
        
       | jasonkester wrote:
       | Most of this code dates back to 1998, when I built a little 2
       | player Joust game to push the bounds of what you could do with
       | Div (and at the time Layer) tags in the latest browsers such as
       | IE4 and Netscape 3. Surprisingly, most of it still worked when I
       | thawed it out recently, provided your browser knew about
       | document.all.
       | 
       | Over the weekend, I brought it up to date a bit and introduced it
       | to Socket.io. Thus far it hasn't seen more than a dozen players
       | at a time, so I'm curious to see what happens when a bunch of
       | folks jump in at once.
       | 
       | I'll stick around to answer questions (and likely post-mortem the
       | bits that catch on fire).
        
         | airhead969 wrote:
         | That's pretty awesome.
         | 
         | I remember making a CGI (that's an ancient, simple server
         | backend for the young-ins) IM chat in 1996. It used the keep
         | connection open trick present in HTTP 1.0 and a tiny bit of
         | Netscape JS.
        
         | Majestic121 wrote:
         | It's probably obvious for people who already played the game,
         | but a quick note mentioning 'the highest one win' would make
         | things easier for newcomers.
         | 
         | I was a bit confused about how to fight, before checking the
         | wikipedia page
        
         | Scaevolus wrote:
         | If you can figure out a way to only send inputs for each player
         | instead of their full state, it should significantly reduce
         | network traffic and lag for each player-- right now it's
         | sending ~1KB/frame!
        
           | airhead969 wrote:
           | Operational transformations (OTs).
        
             | kgwxd wrote:
             | I don't see "game" mentioned in the wiki at all. Is that
             | something typically used for games or do they tend to use
             | something else?
        
         | yoz wrote:
         | This is superb, addicting as hell, and now I have to force
         | myself to stop because I have real work to do.
         | 
         | The game gets increasingly jittery as it gets busier. It might
         | be worth writing some tests to simulate lots of players moving
         | around so it's easier to tune the performance.
        
         | stuaxo wrote:
         | Fantastic :)
         | 
         | It would be nice if you could change the scaling to use nearest
         | neighbour on the players so they don't look all smooged,
        
           | Scaevolus wrote:
           | The modern way to implement this is with <canvas>, which lets
           | you do that sort of thing pretty easily-- and is more
           | performant to render.
        
         | rjsw wrote:
         | I played Joust a lot as a kid, the character movement looks a
         | really good reproduction of the original to me.
        
           | airhead969 wrote:
           | Which platform(s)?
        
             | rjsw wrote:
             | Atari 400 (cartridge).
        
         | interblag wrote:
         | I just joined for a quick session - just wanted to say that
         | this is really fun and very well done (especially for someone
         | who has played Joust before). Thanks for sharing!
        
       | airhead969 wrote:
       | So neat! Where are the left/right controls on iPad?
        
       ___________________________________________________________________
       (page generated 2021-05-28 23:01 UTC)