8 ms·
This humble, relatively small dev team has written their game on top of a barebones engine and ported it to more three platforms and architectures, yet multi-bi
by cedws 4y ago
This humble, relatively small dev team has written their game on top of a barebones engine and ported it to more three platforms and architectures, yet multi-billon dollar studios claim supporting anything beyond x86_64 Windows is an impossible feat.
I have so much respect for Wube. Absolutely amazing quality and care in everything they do.
- AnIdiotOnTheNet 4y agoI mean, yes, and that goes to literally everyone who's all "web is great because cross-platform" too, but it is worth noting that Factorio doesn't exactly ask much of GPUs compared to the games multi-billion dollar studios are putting out. There are a lot of different GPUs and drivers to account for on Windows, and adding in Linux to that compounds the problem[0] significantly and brings in a paltry number of users, so it is pretty understandable why they don't bother. And the Mac user base that cares about gaming is kind of a joke in terms of size. [0] Steam Deck being relatively bespoke hardware might help there.
- BlueTemplar 4y agoThey got as far as to make their own graphic engine mid-development : https://www.factorio.com/blog/post/fff-230 https://www.factorio.com/blog/post/fff-230 Factorio asks different things from GPUs. that today are much more used to accelerate 3D. not 2D graphics : https://www.factorio.com/blog/post/fff-281 https://www.factorio.com/blog/post/fff-281 Also : > Contemporary integrated GPUs are also significantly faster, and while it might not be as much of a challenge to render the game for them, they do share some resources with the CPU - be it the last level of cache, or CPU cooler, so the integrated GPU working hard may cause the CPU to slow down. > However, the point I wanted to illustrate by this post is how broad a range of GPUs there is. People see a 2D game and expect to be able to play it on essentially anything. If we want to live up to that expectations, we have to impose a lot of limitations on ourselves, because 'anything' also includes a couple orders of magnitude slower GPU than is found in an average gaming computer of today. CPUs got a lot faster in the last decade too, but mostly due to increasing the number of cores and adding wider vector computation units. They didn't get that much faster when executing serial code, which is unfortunately most of Factorio's game code. So if you play the game on a laptop with a Core 2 Duo and GeForce 320M, you'll run into framerate issues due to the weak GPU much sooner than a UPS slowdown due to the old CPU. https://www.factorio.com/blog/post/fff-333 https://www.factorio.com/blog/post/fff-333 But, yeah, Factorio is one of those games that don't impose a maximum limit of entities on themselves and are mostly bottlenecked by singlethreaded CPU than GPU performance, like any simulation-like game with lots of entities, each of which can have a gameplay (and not just display) effect on another : https://www.youtube.com/watch?v=HvI_5S3aITk https://www.youtube.com/watch?v=HvI_5S3aITk (And also, specifically, RAM latency is important for Factorio : https://old.reddit.com/r/factorio/comments/4h647g/factorio_performance_test_cpuram_based_fpsups/ https://old.reddit.com/r/factorio/comments/4h647g/factorio_p... )
- Thaxll 4y agoFactorio was release 6 years ago and they don't do anything else right? I mean the studio is only working on this game.
- less_less 4y agoVersion 0.1.0 was released in 2014, and version 1.0.0 was released in 2020. They are now working on an expansion. So yeah, as far as I know it's their only game. As you might hope, the game is exceptionally well-polished, at least once you get over the initial UI complexity.
- yread 4y agoTheir indiegogo was started in feb 2013, with a demo v0.2.2. I think I still have it somewhere https://www.indiegogo.com/projects/factorio#/updates/all https://www.indiegogo.com/projects/factorio#/updates/all
- tpush 4y ago> [...] yet multi-billon dollar studios claim supporting anything beyond x86_64 Windows is an impossible feat. Who actually claims that? The issue is more that the ROI just isn't there. Remember that porting to a platform incurs additional support costs that need to be payed.
- Forgeties79 4y ago>the ROI just isn’t there Blizzard seems to disagree, as I mentioned in another comment. I’m just not sold on this argument tbh. It makes sense at face value but that’s not enough reason for me. Especially given how many games played on both PC and Mac from 2010-2020 and continue to do so. It’s not the empty desert for gamers it was in the 2000’s.
- smoldesu 4y agoAnd Blizzard also stopped trying to port more advanced titles like Overwatch. Even Diablo 2 Resurrected didn't get an Apple Silicon release (despite the fact that they already made an ARM version for Switch). Maybe you're right, and the technical hurdle is fairly small relative to the money they stand to make from it. Whatever the case is though, Apple's current offerings are not really attractive to developers. People would rather target the APIs they already know than do Apple's dirty work for them. Maybe Apple should take a page out of Sony's book and actually compensate or assist the studios building on top of their technology.
- bluesign 4y agoAnticheat unfortunately
- comex 4y agoSpecifically, those two titles don’t have Mac releases for any architecture. Apple Silicon support is somewhat orthogonal, since there weren’t any major API removals between x86_64 and arm64. (Unlike in the old days, when, say, Carbon was removed in the transition from x86 to x86_64.)
- 4y ago
- preisschild 4y agoNot supporting macOS is fair. After all, Apple went out of their way to not support standardized cross-platform APIs like Vulkan.
- dagmx 4y agoI’m curious whether people who hold this view are graphics developers themselves who’ve developed games? The reason I ask is because there are so many different graphics APIs, of which Vulkan is the one that has the lowest rates of direct targeting. You’re looking at custom platform APIs everywhere but Linux. Windows and Xbox only officially supports DirectX (including console variants here), PlayStation have their own, Switch supports their own plus Vulkan (and most people don’t target Vulkan on there). Even Metal has significantly more games targeting it due to iOS support. Before people say those are only mobile games, thats a severe underestimation of what games are on mobile. So every cross platform game needs to support multiple APIs anyway, and even if you count every API , Vulkan is by far in last place. Edit: I’ll also add that both macOS and Linux had lack of games when their only API was a cross platform one: OpenGL. yes, macs GL is outdated today but it wasn’t always , and just like Vulkan, very few games directly targeted GL anyway.
- BlueTemplar 4y agoI thought that Windows and PlayStation also supported Vulkan ?? EDIT : Ok, I see, more details here : https://news.ycombinator.com/item?id=33742823 https://news.ycombinator.com/item?id=33742823 ---- Also, not every game has to target every platform, especially when we're talking about radically different inputs / outputs ! I'm honestly surprised about Factorio going to the Switch (especially since they supposedly started working on it before the Steam Deck, which I could have seen as having been a «tech demo stepping stone»), considering how much Factorio relies on precise mouse clicking !
- dagmx 4y agoWindows doesn’t officially support Vulkan. It’s exposed by third party drivers, but isn’t the official API (and was indeed limited in use for a while). One could argue that it’s moot though but there are ramifications. PlayStation supports GNM not Vulkan. Afaik the switch is the only recent console to support Vulkan but it’s not preferred, instead using the NVN api. Not counting the SteamDeck since it’s a general purpose computer.
- simonebrunozzi 4y agoWhat's their story? Are they simply an independent studio? Is there VC-money involved?
- codeflo 4y agoIf you don't insist on setting up your company in the most expensive city on the planet, you might not need VC money to set up a competent dev team.
- waboremo 4y agoYou don't need VC money, but if you want to set up a dev team at all you do need some substantial capital. But that's not what happened here, it wasn't really a choice of location or funds. It was a passion project that went viral.
- Therenas 4y agoNo VC money, just three people developing a game they‘d like to play themselves, and it grew organically from there, financed by the money made from selling the game.
- BlueTemplar 4y agoThey got 22k€ from a crowdfunding in 2013 : https://www.indiegogo.com/projects/factorio#/ https://www.indiegogo.com/projects/factorio#/ IIRC sold more than 3 million copies by now ? P.S.: The evolution of trailers over the years is quite something : 2013 : https://www.youtube.com/watch?v=V1qOCAM9Syw https://www.youtube.com/watch?v=V1qOCAM9Syw 2014 : https://www.youtube.com/watch?v=9yDZM0diiYc https://www.youtube.com/watch?v=9yDZM0diiYc 2016 : https://www.youtube.com/watch?v=DR01YdFtWFI https://www.youtube.com/watch?v=DR01YdFtWFI 2020 : https://www.youtube.com/watch?v=J8SBp4SyvLc https://www.youtube.com/watch?v=J8SBp4SyvLc
- izacus 4y agoThey just ported their game to Switch (another ARM platform) so once they did the legwork to make code decently arch and GPU API independent, porting to macOS probably isn't a massive overhead.
- wankle 4y agoI generally agree but TBF, it's a 2D game from the YT videos on their page.
- alexktz 4y agoI was just saying to my wife last night when her Lego Hobbits game crashed that I don't recall a single crash in my 1000+ hours in Factorio. Not one! Factorio is the standard against which I compare not only other games, but all other software. For polish, stability and craftsmanship. I hope they read this thread because the love for the game everywhere is truly well deserved.
- Silverback_VII 4y ago1000+ hours... It is probably very unpopular but maybe one has to start asking in what way humanity as a whole does benefit from the creation of such addictive games. Theodor Kaczynski wrote in one of his books that computer games will increasingly distract younger generations(males are obviously more affected) from solving urgent issues resulting in an erosion of freedom. maybe he was right
- michaelmcdonald 4y agoGames are a hobby. Hobby's utilize time. No different than reading a book, building a chair, gardening, etc...
- fayten 4y agoPeople do not need to be productive 100% of the time. Let people have fun without shaming them. Just think of how far science and technology has come in the last decade.
- mandmandam 4y agoAt least games are interactive. I've never played, but Factorio looks quite healthy for the mind. If you want to rail at wasted time, there are much better targets out there. Try corporate tax accountants, or insurance salesmen, or fossil fuel PR goons; people actively destroying value. We have PFAs in the rain; plastic on Mt. Everest and the Mariana Trench. We have a warming planet alongside proxy oil wars. You want to solve those problems by looking at addictive computer games? Really? Not even reality TV, or corporate media monopolies - games? ..... I think your high horse is pretty sickly looking tbh.
- fassssst 4y agoOpportunity cost. Add support for an OS that has 3% of Steam users vs. focusing the efforts elsewhere.
- mfcl 4y agoYeah, the cost of porting to a new platform needs to be lower than the money you think you will make out of it. I think Factorio's code quality allows the developers to make the ports relatively cheap. Big studios have so many developers that come and go and just work on legacy code that seems to make assumptions about the platform on every level. The cost becomes too high and not worth it. It's because one is greedy, but because it's bloated. If I remember correctly the studio behind Mini Metro gave up Linux on their new game because it was too time consuming to run the game and test it. Obviously if you lack tests and need to have manual testers all the time, new platforms won't help you. (I'm making assumptions from the blog posts I read, I might be wrong about the real reasons.)
- electrograv 4y agoEvery wonder why Steam has so few Mac OSX users? Might it have something to do with how few major games are available at all on Mac OSX? It doesn’t exactly take brilliant insight to see that this is a bit of a chicken-and-egg problem, and so them taking this justification to avoid porting (and I think you’re probably correct that this is their reasoning) creates quite a self-fulfilling prophecy.
- CJefferson 4y agoOne problem is there used to be more games. With windows you can buy 10 year old releases and they (usually) still work. With Mac, there is very little chance a 10 year old executable would run.
- waboremo 4y agoSure would be helpful if Apple would use its obscenely large warchest to negate this self-fulfilling prophecy entirely.
- philistine 4y ago
- washywashy 4y agoComparing apples to oranges
- badsectoracula 4y ago> yet multi-billon dollar studios claim supporting anything beyond x86_64 Windows is an impossible feat. It makes sense though, there are different circumstances in play. One day back in ~2013 (or so) as i returned from work, a gamedev studio, i bought my first Android device (some cheap tablet that was sold in a basket) from a mall i often visited after work. Once i arrived at my place and checked it out for a bit, i decided to port my previous (current at the time) 3D game engine on it - downloaded the SDKs, read some docs and tutorials, etc and banged out code until some hours later i got the test game running[0] on the device. All it took was some spontaneous decision and a few hours of my time at home. That's about it. However if something similar (porting to a new system) was to happen for the game engine i worked on at work, it'd take much more effort - even after assuming the decision was already made. Different programmers worked on different aspects of the engine that would need to work on it (graphics, audio and low level / system support would be the least) and as the engine relied on middleware we'd need to also ensure the middleware supported whatever we wanted to target, the programmer responsible for that middleware had to take that into account and ensure the legal side was covered too (some middleware consider ports -or basically any executable you make- as separate licenses). We'd also need to have the buildmaster work into integrating the new platform for the automated builds and testing (and perhaps write some basic tests if needed). QA would need to allocate time to test on the new platform, not only for the platform specific functionality but also some tests would need to run on the new platform even for functionality that had nothing to do with it to ensure all new stuff worked as expected (this in turn could cause other ripple effects - for example some new functionality in the engine that worked in a powerful platform might prove too demanding/slow for the new platform - at that point someone would have to decide -meaning meetings, etc- if the new functionality will remain, if it will be altered to work on the new platform -this means some research time will be spent on this- or if it will become an optional feature that somehow is only available to the powerful platforms while not being available on the new one -which would require not only the programmer time to implement this switching but depending on the functionality, potentially also artist/designer time to specify where it will be used- but also depending on what that'd be about, it may require some fallback functionality too -again more programming time). And that would be for a small-to-midsized AAA game developer at the time with a rather small engine team - in larger teams and companies there'd be way more people and friction involved. All that would translate to a lot of extra time and thus cost. If you are an indie developer it is very easy to just add support for something, but much harder to do if you are a multi-billion dollar studio. A couple of years after the above i joked i could port my engine (same as the Android one) to Haiku if i felt like it - and then i did that[1]. Meanwhile that wouldn't even pass as a joke in the companies i worked at. [0] https://i.imgur.com/9P3C2zj.png https://i.imgur.com/9P3C2zj.png [1] https://i.imgur.com/cI97myO.png https://i.imgur.com/cI97myO.png
- justinhj 4y agoI worked in small and large game companies for over 20 years and this does not surprise me at all. A modern AAA title involves 100s of people, whereas a small independent can be less than a dozen. At scale a company can spend millions on advertising reach, on graphics pipelines and content creators. What they are bad at is small things and risk. If you spend $1b developing and marketing a game you must ensure it appeals to the widest demographic possible. Unless there is a clear market of hundreds of thousands then it's really hard to shift even the meagre amount of resources it would take do the actual port. And then, as a large company, you need to train people to do support, you need legal people working with the platform for all kinds of shit from placement and proper use of logos to compliance with app store rules.
- codingcodingboy 4y agoIs it really that complicated from a legal and support perspective? For legal/platform compliance I feel that it shouldn't be that different between platform, most of the work should be the initial familiarization with the requirements or are they changing all the time like crazy? Support should be proportional to the number of users. If the game is multiplayer/ live service I see that things might get seriously daunting if you don't have either a good number of sales or the capacity to coordinate the whole team.
- justinhj 4y agoIt’s not complicated for a small team, but it is for a large public company.
- dahfizz 4y agoThis is the only thing they have done in the past ~8 years, right? It's definitely a different business model than big studios. I do appreciate the depth of care this game has gotten, but it doesn't come for free.
- adam_arthur 4y agoThe economies of scale from having a small, skilled team with full domain knowledge of the product can lead to orders of magnitude greater output. Also having good design vs spaghetti code. I’d guess the majority of games are a hodge pocket of spaghetti code that’s iterated on until it finally works
- chii 4y ago> yet multi-billon dollar studios claim supporting anything beyond x86_64 Windows is an impossible feat. it's because multi-billion dollar studios don't hire nimble, competent teams that can turn on a dime. They higher large numbers of replaceable cogs, use massive engines and other commercial libraries from various vendors, in the hopes of shortening development time without sacrificing production value. Unfortunately, this only works to some degree, and makes turning on a dime hard. Not to mention that their leadership tend not to be technically informed enough that making such a change seems risky for low benefit. it's why i do not buy games from such multi-billion dollar studios.