[{"data":1,"prerenderedAt":129},["ShallowReactive",2],{"project-40625306":3},{"id":4,"name":5,"line":6,"line_source":7,"title":8,"url":9,"domain":10,"maker":11,"posted_at":12,"year":13,"points":14,"comments":15,"rank_in_year":16,"shown_in_year":17,"top":18,"tier":19,"category":20,"subcategory":21,"format":22,"keywords":23,"reception":29,"sentiment":30,"stance_mix":31,"scored_comments":15,"aspects":32,"strip":33,"post_text":34,"what":35,"said":76,"maker_in_thread":82,"shape":84,"grid":85,"attempts":86,"same_week":92,"maker_shows":121,"maker_hidden":122,"reader_version":123,"card":124},"40625306","Hypersomnia","A Web shooter in C++ with no engine. Fully deterministic netcode","title","Show HN: I made a Web shooter in C++ with no engine. Fully deterministic netcode","https:\u002F\u002Fhypersomnia.io\u002F","hypersomnia.io","geneotech",1717948560,2024,10,0,2671,3515,76,"shown","games","multiplayer shooter","game",[24,25,26,27,28],"deterministic netcode","c++ game","webassembly game","box2d","browser shooter","quiet",null,{"positive":15,"neutral":15,"mixed":15,"critical":15},{},[],"GitHub: https:\u002F\u002Fgithub.com\u002FTeamHypersomnia\u002FHypersomnia\n\n- The netcode relies on full simulation determinism - this includes Box2D physics. I'm using standard floating-point calculations and rely on IEEE754 compliance. I also use STREFLOP for portable math function implementations. This is commonly done for RTS games with a lot of synchronized units, however this technique is rarely if ever seen in games with complex physics, esp. shooters.\n\n- The atlas packer I wrote for the game was reused in Assassin's Creed, Skydio and received 2 scientific references: https:\u002F\u002Fgithub.com\u002FTeamHypersomnia\u002Frec",{"problem":30,"audience":30,"pricing":30,"motivation":30,"time_to_build":30,"stack":36,"openness":75,"stage":75,"team_size":75},[37,43,47,51,55,59,63,67,71],{"value":38,"source":39,"evidence":40},"C++","maker",[41],{"id":42},"post",{"value":44,"source":39,"evidence":45},"Box2D",[46],{"id":42},{"value":48,"source":39,"evidence":49},"Emscripten",[50],{"id":42},{"value":52,"source":39,"evidence":53},"WebAssembly",[54],{"id":42},{"value":56,"source":39,"evidence":57},"LLVM",[58],{"id":42},{"value":60,"source":39,"evidence":61},"libdatachannel",[62],{"id":42},{"value":64,"source":39,"evidence":65},"datachannel-wasm",[66],{"id":42},{"value":68,"source":39,"evidence":69},"OpenSkill",[70],{"id":42},{"value":72,"source":39,"evidence":73},"STREFLOP",[74],{"id":42},"unknown",{"praise":77,"objections":78,"requests":79,"questions":80,"alternatives":81},[],[],[],[],[],{"comments":15,"answered":15,"key":83},[],{"commenters":15,"max_depth":15,"maker_replies":15,"first_comment_mins":30,"lifespan_hours":30},[],[87,88],{"id":4,"t":12,"points":14,"comments":15},{"id":89,"t":90,"points":91,"comments":15},"41127823",1722509301,4,[93,98,103,107,112,117],{"id":94,"name":95,"points":96,"category":97},"40632773","at.hn",459,"consumer_social",{"id":99,"name":100,"points":101,"category":102},"40646741","Revideo",298,"dev_tools",{"id":104,"name":105,"points":106,"category":20},"40635397","Probabilistic Tic-Tac-Toe",293,{"id":108,"name":109,"points":110,"category":111},"40645743","Unforget",274,"productivity",{"id":113,"name":114,"points":115,"category":116},"40607889","sol-mate-eink",229,"hardware",{"id":118,"name":119,"points":120,"category":102},"40632533","mpa-archive",223,2,false,"v2",{"id":125,"name":5,"line":6,"ai":122,"cat":20,"year":13,"points":14,"comments":15,"rec":29,"s":30,"top":18,"kw":126,"maker":11,"domain":10,"tier":19,"attempts":121,"strip":127,"url":9,"mix":128,"praise":-1,"objection":-1,"sub":21},40625306,[24,25,26,27,28],"",[15,15,15,15],1794036656106]