11 ms·
Show HN: The Curious Expedition – A Steam game in HTML5
- Tepix 8y agoI saw this game at the Indie booth at gamescom; i love the graphics style and the setting! I missed the Humble Bundle "Very positive" bundle last May. But it's currently on sale for less than 10€ on the Humble Bundle store.
- keithnz 8y agois there a write up about how you approached doing it?
- babuskov 8y agoThe demo looks cool, but for I really expected to read which libraries were used, what IDE did you use for programming, how did you package it for Steam release, etc. Could you at least give some of those details here in the comments?
- peterjonesio 8y agoI would also love to get a detailed overview of the development of this game. I am currently at work but after a 5 minute muck around I have bookmarked it to take a better look when I get home.
- riadd 8y agoWrote some more details in the other comment, but if you have more questions let me know.
- riadd 8y agoYeah sure, I also want to do a blog post about it in the future, but I thought it would be nice to link to playable build for this submission directly. It uses our own HTML5 engine. Rendering is based on a simple canvas tag and 2d context draw calls. The code is written in CoffeeScript. The server runs on node. I just used SublimeText as text editor. We ship the game on Steam via Electron and the greenworks Steam integration. It has sold over 130,000 units so far. The regular price is around 15$ on Steam. Generally we're obviously very happy with the success considering that 95% of the content was created by two persons. The project started as a hobby project in 2012, so there are some technical decisions which I would approach differently now: - Using modern JS instead of Coffeescript - Using WebGL instead of Canvas For our next project we're considering switching to Unity since 90% of our distribution happens through Steam and 3d engines like Unity and Unreal are imho way more mature than HTML5 engines at the moment. The biggest obstacle for us in using HTML5 has been the player perception of web games being for free games that are built around grinding.
- dom96 8y agoFirstly, what you've achieved is really impressive so props for that. But I'm curious about plans for your next project. This might not have been possible with CoffeeScript, but for your next project have you considered targeting both the web platform as well as native using a language that supports both? [1] As far as I can see the main benefit of targeting HTML5 is the accessibility, especially for this demo. It would however be nice to get a native version for Steam (and possibly mobile platforms if those are on the horizon too). I think using Unity will get rid of this benefit as it will require the Unity plugin to be installed to be playable. 1 - A good example of a game that does this is Reel Valley, a game built to be played primarily on Facebook's game platform in the browser, but also targeting Android and iOS. Its code base is shared across all platforms with only small platform-specific bits needed for each. Definitely worth checking out: https://yglukhov.github.io/Making-ReelValley-Overview/ https://yglukhov.github.io/Making-ReelValley-Overview/.
- riadd 8y agoThank you! As far as I'm aware the Unity plugin is dead and hasn't been pretty much disfunctional for over a year now. The new approach for Unity is to export directly to HTML5, which already works somewhat nicely. Of course you have to pay with big package sizes since you're bundling the engine with your game. That's the biggest advantage of using a custom HTML5 engine which is custom tailored for one game. We've been selling the web version before the steam version, but after putting it on steam our revenue exploded 50 times and we put the web build a bit on the back burner. We're coming back to it now and will experiment with some ideas benefiting of the immediacy of the web tech. Even thinking about doing a MMO-ish web-only spin off for it. Will check out the ReelVally blog post. Very interesting.
- antonp 8y agoHey thanks for the details, riadd! I wrote a HTML5 browser game in coffeescript several years ago and I share your analysis: I would skip CS and use modern JS for a greenfield project today. Care to elaborate about the marketing side? How did you manage to get this amount of sales? Did you get any support from Steam on that front? Thanks!
- dom96 8y agoThis is great, but my first experience with it so far makes me wonder whether you wouldn't have been better off just creating a traditional game instead of using HTML5. I really liked the aesthetic of the game, so I took a screenshot and wanted to share it with my SO over Messenger. When I opened messenger.com the game made the rest of my system start to lag significantly as Firefox started to peg my CPU. I guess handling this game and messenger.com at the same time is too much even for a fairly new MacBook Pro. It's a bit ridiculous that this is the case. Perhaps the benefit of making the demo as accessible as possible outweighs this downside.
- rootlocus 8y ago> I guess handling this game and messenger.com at the same time is too much even for a fairly new MacBook Pro I don't know if it's the MacBook Pro hardware, or the HTML5 bloat, but this shouldn't happen in 2018.
- GyYZTfWBfQw 8y agoIf you mean that writing bloatware on top of many layers of bloatware, then I agree, it shouldn't happen. Too bad it's happening.
- riadd 8y agoThanks for the feedback. I'll do another test on Firefox. To be honest perfomance is best on Chrome at the moment.
- maaaats 8y agoTo be fair, even a AAA game lags less than Messenger/Facebook in the browser.
- Jare 8y agoMy impression here from testing (in Chrome) is that when the tab for the game is not visible, the game stops its update and consumes ~0 CPU. That should be the normal behaviour when running on requestAnimationFrame() and it should work on Firefox as well. Of course if you opened messenger.com in a separate browser / window then the above does not apply.
- rcruzeiro 8y agoFYI: This site is blocked due to a security threat. demo.curious-expedition.com This site is blocked due to a security threat that was discovered by the Cisco Umbrella security researchers.
- riadd 8y agoDo you have any more info about this? I don't have Ciscro Umbrella installed, I could not reproduce any issues using other anti virus services.
- rcruzeiro 8y agoUnfortunately no. It was installed on the wifi netork i was using. Interestingly enough, the error seems to be related only to the demo subdomain based on what i observed.
- riadd 8y agoThe demo is hosted on http://layershift.co.uk http://layershift.co.uk whereas the rest of the website is hosted on our regular simple web server. It is probably related to that.
- vmateixeira 8y agoI hate having my scroll hijacked
- kowdermeister 8y agoThere is no scrolling on the page :)
- vmateixeira 8y agoThat's my point ;) Edit: To clarify, on a 16:9 the playable area is far from being vertically centered.
- riadd 8y agoOh you mean the game is cut off at the bottom or top for you?
- vmateixeira 8y agoYes. 1366x768 and 1920x1080.
- riadd 8y agoThanks for the heads-up! Working on a fix now
- Narishma 8y agoAnd that's a problem on low resolutions like the very popular 1366x768 where part of the play area is cut off on the bottom. Another issue is that the game is hogging the CPU at all times, which is terrible for battery life.
- kowdermeister 8y agoThat would have been a better error report, scroll hijacking is a totally different thing.
- lewisj489 8y agoThe performance on my PC isn't the best, regular spikes in FPS
- riadd 8y agoWhich browser are you using?
- GyYZTfWBfQw 8y agoBecause it's a HTML5 game! No surprise it's a resource hog.
- saagarjha 8y agoI love the fact that you say that this is only supported on desktop, but allow me to try it out on mobile anyways.
- nullifidian 8y agoGame looks really nice, but the HTML5 aspect of it is nothing to be proud of. Game looks as if it could work on someting like a 386 from the 80ies, but I seriously doubt it will work smoothly on anything older than 8 year old hardware.
- riadd 8y agoI guess that argument goes against a lot of JS stuff. Running on very old hardware was not our top priority for this game.
- andrewmcwatters 8y agoYeah yeah, it's not about running on very old hardware. The point is it runs terribly on modern hardware.
- AnIdiotOnTheNet 8y agoThey produced a competently executed product, which is enough to be proud of. You are right though, there's a lot of horsepower going in to what is effectively a VGA-era game. Part of me is annoyed by the over-engineering of the whole thing, if only because this trend of adding needless layers of abstraction has lead to the hell that is my every day life of dealing with unresponsive and fragile systems, but I can hardly place the blame for that on them. I honestly had no idea it was HTML5 when I played it a while back.
- chmod775 8y agoFor those who are interested because of the tech, "CrossCode" is another Steam game that uses HTML5. It has a demo running in the browser as well. I thought it was quite impressive back then (it's been playable for a while now). https://store.steampowered.com/app/368340/CrossCode/ https://store.steampowered.com/app/368340/CrossCode/ http://www.cross-code.com/en/start http://www.cross-code.com/en/start Definitely cool to see "professional" HTML5 based games finally picking up, though it's been a few years at least since they were prophesied. Oh also of course there's RuneScape having had a WebGL version for ages now. https://www.youtube.com/watch?v=g2NVY2mFv_0 https://www.youtube.com/watch?v=g2NVY2mFv_0 Edit: For the sake of completeness, here's the Steam URL for OPs game - though you should consider buying it via GOG or directly from them instead. https://store.steampowered.com/app/358130/The_Curious_Expedition/ https://store.steampowered.com/app/358130/The_Curious_Expedi...
- makepanic 8y agoCrossCode is using http://impactjs.com/ http://impactjs.com/
- codetrotter 8y agoImpact was recently open sourced, so for anyone that have heard of it but didn't know that it is now open source it might be worth checking out Impact again. http://impactjs.com/blog/2018/05/impact-is-now-free-open-source http://impactjs.com/blog/2018/05/impact-is-now-free-open-sou...
- riadd 8y agoOh yeah, I met some guys of the CrossCode team some years ago at Gamescom. They are also based in Germany. I'm still impressed with their work. Especially that they created a real-time game that relies so much on frame precision.
- jamesgeck0 8y agoDuelyst is another HTML5 game on Steam. https://store.steampowered.com/app/291410/Duelyst/ https://store.steampowered.com/app/291410/Duelyst/
- mrspeaker 8y agoI really love Curious Expedition - and I am also a huge fan of making JavaScript/web games. My favorite aspect is that it's no longer even very notable when a game IS a HTML5 game. There are heaps of them on steam now, and usually the creators don't even mention HTML5: partly because it's seen as a terrible choice in the gamedev world, but mostly (I hope) because it doesn't matter any more. The games get to speak for themselves. A game like Game Dev Tycoon can be a great game about game making, and secretly written in JavaScript. I'm continually impressed with Rezoner's games like wilds.io and wanderers.io, Ansimuz's Elliot Quest was a great game, Play Keepout (http://www.playkeepout.com/ http://www.playkeepout.com/) is a fun dungeon crawler from the team that make the multiplayer Browser Quest game for Mozilla, and Jandisoft's upcoming MMO https://www.madworldmmo.com/ https://www.madworldmmo.com/ looks pretty amazing (it's built on Pixi.js I believe) The technology is becoming less and less a factor, and the ideas and execution more and more so. Good times!
- riadd 8y agoAgreed! Mentioning the HTML5 backend on Steam is actually a detriment, or completely unimportant at best. There are lots of interesting web games in the free-to-play market, but I'm excited to see which web game actually manages to really break out into the premium market. We're using a humble bundle widget to sell our web based version at the moment. https://www.humblebundle.com/developer/widget It is very hard (or nearly impossible) to make up for the increased visibility that you get when you launch on Steam. Although that one is getting harder by the minute as well of course. Thanks for the mention in your book by the way!
- AshleysBrain 8y agoFor those interested in HTML5 games on Steam, our HTML5 engine Construct has supported Steam publishing with NW.js for some years now - here's a selection, all built with HTML5 too: https://store.steampowered.com/app/332250/The_Next_Penelope/ https://store.steampowered.com/app/332250/The_Next_Penelope/ https://store.steampowered.com/app/317250/Airscape__The_Fall_of_Gravity/ https://store.steampowered.com/app/317250/Airscape__The_Fall... https://store.steampowered.com/app/412660/Klang/ https://store.steampowered.com/app/412660/Klang/ https://store.steampowered.com/app/293240/Cosmochoria/ https://store.steampowered.com/app/293240/Cosmochoria/ If you thought there weren't HTML5 games on Steam, it's probably because they're so good nobody notices.
- k__ 8y agoNice! How does it compare to Phaser? I always had the feeling Construct was more of a full-fledged thing like Unity and Phaser was more of a framework, but on the parts they both try to solve, what do they do differently?
- AshleysBrain 8y agoThat's about right. Phaser is a framework, and Construct is a full-fledged IDE. Its main feature is a drag-and-drop system for game logic rather than programming, so it's more designed for making game development accessible to a non-technical audience (so not sure how many HN folk will be in the market for that, although it's still great for rapid prototyping or fast development). Construct 3 is browser-based so you can give it a spin here: https://editor.construct.net/ https://editor.construct.net/
- myf01d 8y agoAlso https://airma.sh https://airma.sh , one of the most upvoted show HN posts of all time is a multiplayer HTML5 game
- imhoguy 8y agoand WebGL
- danielbarla 8y agoCongrats on the success! I stumbled across Curious Expedition a while back, bought it on Steam and had a few playthroughs (of varying success). It's a very cool game, and despite being a developer, I had no idea it was HTML5. If hiding that fact was a goal, then you've succeeded there too. Since you've already answered some of the technical questions, I have a random non-technical one. In some ways, Curious Expedition is extremely similar to Renowned Explorers (~ identical plot?). To be clear, I think there's plenty of room for both games - especially since the gameplay is nothing alike - and I'm glad both exist. But did this happen by accident? I'm curious because there seems to be a trend of various things emerging in pairs (good examples are Hollywood movies, e.g. the movies Armageddon and Deep Impact coming out with similar plots within months of each other).
- riadd 8y agoThank you! We became aware of Renowned Explorers after we had been working on The Curious Expedition for about 2 years already and stumbled into them at Gamescom. I won't deny that it was initially a shock to see a game that superficially seemed so close to Curious Expedition, but as you said there is more than enough space for both games and playing them they are definetely quite different from each other. Over the years we met the folks from Abbey Games a couple of times and developed a friendship. Last year we decided to poke fun at the whole situation and did a joint bundle on Steam. The bundle has ended at the moment, but the page is still online: http://curiousvsrenowned.com To this day being able to collaborate with them and turning this potentially sour situation into something fun was one of the best experiences I had as an indie developer.
- danielbarla 8y agoThat's awesome, I had no idea the situation had been so well explored! Glad both sides took it lightheartedly. I ended up with both games in my collection separately, and was pretty shocked at the plot. What are the chances of that happening randomly!? I thought there may be a common thread I missed, but this is far more hilarious.
- INTPenis 8y ago
- LoSboccacc 8y agocongrats! played the demo a little, it's very well polished and quite interesting as a concept.
- riadd 8y agoThanks!
- adamjc 8y agoFun game, had it in Early Access. My biggest beef is it feels like it has too much RNG. I'm a big fan of roguelikes/lites, but you shouldn't be placed in unwinnable situations. It Curious Expedition it feels like you are (fairly often!).
- riadd 8y agoI agree somewhat, but we've made huge updates since early access and even since launching the 1.0 version. I feel like the current version works much better in that aspect. Check it out if you haven't played since then maybe. * Here's a list of updates as well: http://curious-expedition.com/updates http://curious-expedition.com/updates
- masklinn 8y agoSeems to "work" in safari/osx (if a bit slowly and the initial loading bar is as bad as can be), however none of the zoom hooks work (neither scrolling nor keyboard keys) and there is no UI element to zoom in/out so… can't pass the second step of the tutorial. The scroll hooks work in Firefox/osx, the keyboard zoom still does not, and it's also pretty slow there.
- riadd 8y agoThanks for the heads-up! I'll try to upload a fix in the next hour or so.
- masklinn 8y agoI don't expect you can magic the performances but I'd suggest seeing if you can provide more feedback on the initial loading bar: in both Firefox and Safari it stops as the last or second-to-last step and looks to be stuck. I know progress bars are hell, but in Safari it stopped long enough that I actually opened the devtools (and saw messages printing in the console so knew it was fine, just slow). It probably doesn't help that I'm on an 8 years old iGP, performances-wise, and I don't know that you have any ability to detect that sort of crap.
- riffraff 8y agoon chrome/osx/macbook pro I faced the same issue with scrolls, a UI element would be generally helpful.
- itajooba02 8y agoCongrates .. But it seems to be slow .. or its my browser ?
- riadd 8y agoNot sure, which browser are you using?
- seba_dos1 8y agoAnother HTML5 game on Steam that I know of: https://store.steampowered.com/app/399820/Kopanito_AllStars_Soccer/ https://store.steampowered.com/app/399820/Kopanito_AllStars_... Also, I have a standalone build prepared for https://holypangolin.itch.io/karambola https://holypangolin.itch.io/karambola - waiting for some spare time in-between working on our bigger project to put some finishing touches to it before uploading to Steam.
- riadd 8y agoOh I didn't know that Kopanito game. Looks cool. I think I'll compile a list of all the games mentioned here and will put it up on github as resource.
- gaytards 8y agolooks pretty stupid and gay
- JimWestergren 8y agoK9 Web Protection Alert curious.j.layershift.co.uk/demo is blocked because it is currently categorized as: Suspicious
- riadd 8y agoThanks! Will investigate
- tobyhinloopen 8y agoThe unexpected sound is quite obnoxious. There is no obvious way to shut it up.
- indescions_2018 8y agoCongrats! Any game you can play as Darwin or Lovelace is already a winner in my book ;) Anyone searching for startup ideas, packaging HTML5 as native binary apps remains a pain point. Mostly in making sure things like full screen layout, mouse pointer lock, networking, etc all work as intended on hosts. Apart from simultaneous testing on multiple machines, emulating via virtual box isn't sufficient for game performance. Electron and NW could vastly be simplified for humans ;) https://electronjs.org/docs/tutorial/application-distribution https://electronjs.org/docs/tutorial/application-distributio... http://docs.nwjs.io/en/latest/For%20Users/Package%20and%20Distribute/ http://docs.nwjs.io/en/latest/For%20Users/Package%20and%20Di...
- nrjames 8y agoI love The Curious Expedition; did a presentation on it at work recently. What can you tell us about The Curious Case? http://curious-case.com/ http://curious-case.com/
- riadd 8y agoIt will be quite different from our first game. Here are some things which we don't like about current detective games. - They have very carefully hand-crafted scenarios which are very expensive to create and therefore rarely allows the player to go off the tracks or to completely fail. Some of them don't even allow you to leave a crime scene until you've literally found all the relevant evidence. These games do a lot of hand-holding and player direction and rarely feel satisfying when you find the killer. - You're forced to try to mind read the game designers intention and world view instead of really taking in the game scenario itself since the game world is primarily explained qualitatively instead of quantitively. For example in LA Noir I'm asked to judge whether a person is lying or not, but what I'm actually doing is judging a actors interpretation of somebody lying or speaking the truth. - They rarely explore strategic gameplay / resource management aspects or if they do they go so far in that direction that they don't feel like a detective game anymore. I'm not saying that we'll be able to fix all these problems, but these problems are at least what drove us to think that there would be some interesting game design work in this space. It turns out to be quite hard, but I'm excited about our current prototype. Will take some more time before you'll be able to play it though unfortunately. Oh.. and it is set in Berlin of the 1920s, which is really a quite fascinating and relatively unexplored setting.
- Marazan 8y agoSome of them don't even allow you to leave a crime scene until you've literally found all the relevant evidence. The GUMESHOE Rpg System would says this was a feature not a bug. Failing to solve a case because I couldn't piece all the evidence together is an acceptable fail. Failing to solve a case because I couldn't even find the evidence is infuriating.
- 8y ago
- RobertRoberts 8y agoI found this game endearing, and I wish I was a kid again with lots of time to play. I would have gotten immersed in this. The game play is pretty smooth, and I am impressed with the performance and interaction. The sound work is great, and is a large part of what makes this game feel engaging. I played some of the tutorial, but the chewing smacking sound when eating food was a deal breaker for me, had to shut it off.
- amelius 8y agoDatapoint: demo is VERY slow on Ubuntu 16.04 x86_64 + Chromium 66.0. Startup took more than a minute, and then it proceeds with what feels like 1-2 fps. More info: 8GB of RAM, motherboard graphics (no GPU), Intel(R) Celeron(R) CPU G1610 @ 2.60GHz.
- riadd 8y agoThanks for the heads-up! We'll look into that configuration
- ohf 8y agoHigh CPU overhead seems reasonable for HTML5-based games. Introducing a DOM can only make things slower relative to a leaner (native) engine. For reference, I'm on a late-2015 laptop (XPS 13 9350) with integrated graphics, but the newer i3 gives me perfectly fine performance.
- ixtli 8y agoYes, I'm running current chrome on current macOS with a GeForce GTX 980 Ti (6gb vram) and 16gb ddr3. CPU utilization is 75% on all four cores and when drag-scrolling around the map I don't get more than 10fps. EDIT: I measured it with the developer tools. The performance is not significantly different with them open. I have a feeling you'll never be able to solve this without going to webgl because canvas drawing is slow af. I highly recommend checking out Three.JS. I wouldn't be surprised if you could port the entire game to using it in a week or so.
- brendanr 8y ago
- billfruit 8y agoWell having played for a short while, my only significant point to complain is that the music is too short and repetitive, especially the combat music I found annoying, if not for that I would have played longer; I feel.
- shawndrost 8y agoBug report: can't zoom in. No scroll wheel, '+' doesn't work. Macbook pro/Chrome
- franciscop 8y agoIs this related to Gods Will Be Watching in any way? Has a similar survival vibe and character description though this one is quite exploratory.
- riadd 8y agoI've never played Gods Will Be Watching so I can't say anything about gameplay being similar or not. There was no creative connection though.
- lcfcjs 8y agoThis is very cool! Can't people mess with the source code if its an HTML 5 steam game?
- imode 8y agojust a note to the devs, if you're watching: I ended up refunding your game because it just failed to launch on my particular (bare-bones) configuration. shame, I would've loved to play it!
- riadd 8y agoToo bad :( Did you try the web version already?
- davidjhall 8y agoGame mechanics remind me of Seven Cities of Gold, back in the day. Was it an inspiration?
- james33 8y agoExciting to see so many HTML5 games popping up on Steam and elsewhere the last few years. Here's another one that was built using Isogenic Engine/Electron and is also playable on the web, iOS, Android and Windows Store. https://store.steampowered.com/app/658970/CasinoRPG/ https://store.steampowered.com/app/658970/CasinoRPG/
- GyYZTfWBfQw 8y agohttps://i.imgur.com/x8cbvef.jpg https://i.imgur.com/x8cbvef.jpg Yep, this is the direction we are heading people! Buckle your seat belts!
- drwicked 8y agoThe first screen has a bit of a typo, it says "beaconed" when it should say "beckoned". Looks like a fun game!
- kizer 8y agoI'm getting like 3 fps over here. But the graphics are neat!
- heretoo 8y agoHi, looks great. I'm trying the tutorial, but the mousewheel doesn't zoom, but scrolls up and down on the map. The +/- keys also don't zoom. I'm running on a macbook pro, in chrome. UPDATE: +/- keys working now.
- squidbot 8y agoHow did you get it working? I'm also playing on MBP and I can't zoom with mouse or with +/-. I'm stuck on the second step of the tutorial because of this :(
- techsin101 8y agoCan I see code. I want to see code of professionally written stuff that is big but not too big
- fileeditview 8y agoI cannot find Alexander von Humboldt. Is it really possible he is not a character in your game?
- riadd 8y agoYes, he's not a character because we leaned more towards figures from the late 19th century and Humboldt was born mid 18th century. Maybe something for a later update or a mod though.
- fileeditview 8y agoAh that makes sense. I was just thinking: how can they not add Humboldt they are even from Berlin! :) Seems like a cool game. I will try it as soon as I find some time! Good Luck
- enlightsharish 8y agoDrawing trend lines is one of the few easy techniques that really WORK. Prices respect a trend line, or break through it resulting in a massive move. Drawing good trend lines is the MOST REWARDING skill. The problem is, as you may have already experienced, too many false breakouts. You see trend lines everywhere, however not all trend lines should be considered. You have to distinguish between STRONG and WEAK trend lines. One good guideline is that a strong trend line should have AT LEAST THREE touching points. Trend lines with more than four touching points are MONSTER trend lines and you should be always prepared for the massive breakout! This sophisticated software automatically draws only the strongest trend lines and recognizes the most reliable chart patterns formed by trend lines... ==> http://www.forextrendy.com?kdhfhs93874 http://www.forextrendy.com?kdhfhs93874 Chart patterns such as "Triangles, Flags and Wedges" are price formations that will provide you with consistent profits. Before the age of computing power, the professionals used to analyze every single chart to search for chart patterns. This kind of analysis was very time consuming, but it was worth it. Now it's time to use powerful dedicated computers that will do the job for you: ==> http://www.forextrendy.com?kdhfhs93874 http://www.forextrendy.com?kdhfhs93874