7 ms·
Build retro games using WebAssembly for a fantasy console
- davidandgoliath 5y agoFor those curious about this, pico-8, liko-12 and tic-80 (amongst others) are fantastic little ecosystems to play in. Highly recommended.
- fartcannon 5y agoI love that people are pushing into 3D even with the limited specs.
- TulliusCicero 5y agoFun fact: 160x160 is still a higher resolution than you get with 4-player splitscreen on the N64 (which would be 160x120).
- Dylan16807 5y agoYes for a normal N64 game making normal tradeoffs, but at low scene detail the console can do 640x480, so 4 players could each get 320x240.
- TulliusCicero 5y agoYes, it was technically possible, but how many games actually ran at that resolution?
- Dylan16807 5y agoThat's not my point at all. That's why I said not for a normal game! I just wanted to point out that if you're willing to go anywhere near this low-detail then an N64 can trivially beat the resolution. It's not stuck that low. As far as normal games, plenty went over 320x240, mostly using medium resolutions rather than the max.
- Sharlin 5y agoIt has full floating-point support and practically ”unlimited” cpu power, so 3D at 160p60fps is super feasible.
- Tijdreiziger 5y agoI'm greatly enjoying https://wasm4.org/play/nyancat https://wasm4.org/play/nyancat (although it pauses if I switch to another tab or minimize it :( )
- city41 5y agoTo the creator of this tool: please consider starting games muted and having a mute toggle button. Yes these are games but it's still surprising to have music playing as soon as the tab opens. I had to scrambled to close the tab.
- jakear 5y agoThe D pad overlaid on mobile doesn’t seem to handle touch ending events. Once I press once that key is shown as activated forever and it appears as if the game sees it as such as well.
- rzzzt 5y agoTry pressing the center part and shifting your thumb around while holding it. (I tried it on an Atom tablet and the context menu popped up if I pressed the "leaf" parts or the buttons for too long.)
- TulliusCicero 5y agoHere's the languages used as examples in the tutorial: - AssemblyScript - C / C++ - D - Go - Nim - Odin - Rust - Zig Are languages like Java/C#/Python right out because they can't output webassembly?
- pjmlp 5y agoThey can output WebAssembly, don't mix languages with implementations. https://leaningtech.com/cheerpj/ https://leaningtech.com/cheerpj/ https://docs.microsoft.com/en-us/aspnet/core/blazor/host-and-deploy/webassembly?view=aspnetcore-6.0 https://docs.microsoft.com/en-us/aspnet/core/blazor/host-and... They just happen not to be cool.
- kant2002 5y agoJust today NativeAOT was combined with WASM https://twitter.com/yowl00/status/1473052545744527365 https://twitter.com/yowl00/status/1473052545744527365 Links to Github: https://github.com/yowl/csharp-wasm4 https://github.com/yowl/csharp-wasm4 It would be slightly extravagant experience, but C# is technically possible.
- MisterTea 5y agoThe listed languages all compile to machine code. The languages you listed are all dynamic languages that run in a VM and have massive overhead.
- TulliusCicero 5y agoI don't understand why the default seems to be using arrow keys for movement, instead of WASD. A gamepad has the movement controls on the left hand, either d-pad or stick, and for PC games, using WASD for movement is standard. Using arrow keys swaps the hands, and thus makes it less intuitive to anyone with gaming experience. It's the equivalent of forcing anyone who comes to your website to switch which hand they use for their mouse. At the very least, just support arrow keys AND WASD.
- rlv-dan 5y agoI grew up playing Nintendo. Later I moved to PC and arrow keys. It was never a problem for me. But using WASD as arrow keys never worked for me. It is not intuitive for me.
- codetrotter 5y agoAre you by chance left handed? I can see that WASD would be awkward to use for anyone who keeps the mouse on the left side of their keyboard instead of on the right side of the keyboard. Also, speaking of WASD. Anyone implementing WASD controls in a game, please make sure you make the keys rebindable and not hardcoded to WASD. I use the Dvorak layout so in the position that a QWERTY user has their hands when playing with WASD controls I have different keys, and therefore when I’m in game I make use of keyboard input configurations offered by the game in order to set up keys that work with the layout I use :) And even though there may just be a handful of people that use Dvorak… :p there are still quite a few different keyboard layouts that are quite widespread. Fortunately most games on Steam offer the ability to define your own keys. And even some browser based games do as well.
- dudifordMann 5y agoAs a lefty who moves the mouse to the left side of keyboard, WADS is no more awkward than any other keyboard combination for left or right headed people. Just, you know, shift your keyboard a little bit more towards the right for comfortable spacing lol.
- 5y ago
- kmilonoa 5y agoI'm enjoying this, it's awesome.
- Dylan16807 5y agoInteresting mix of constraints for a console. A full framebuffer but only 4 colors on the same screen. Small cartridges and lots of RAM. And it appears to have unlimited CPU power?
- jonny_eh 5y agoAnd support for keyboard, mouse, and four controllers.
- Dylan16807 5y agoWell keyboard support is a given for a conceit like this. Mouse input is uncommon for an old console, I'll give you that, but four controllers is very usual.
- jonny_eh 5y agoMapped to joystick buttons or full keyboard? PICO-8 just maps up, down, left, right and btn1/btn2.
- ArtWomb 5y agoVery cool. Nintendo GBC era graphics fidelity and smooth animations playable instantly in browser. It's amazing how performant it is. "Wormhole" is the basis for a great "Pilotwings" flight trainer ;)
- tjpalmer 5y agoAnd don't miss the game jam that starts on January 14. https://itch.io/jam/wasm4 https://itch.io/jam/wasm4