The Death of Unity
gamedeveloper.com
gamedeveloper.com
Not only that, but with this predatory practice of taking any percent (steam, apple) or fix dollar value, makes just having a game up a potential liability. If you need to refund anyone you are refunding the full $0.99 from your account, despite you only made $0.46 (steam and unity are going to keep theirs, its on you as the publisher to make up the difference). If you had a disastrous launch and had a majority of people seeking a refund, well not only did you hard work and effort not pay off, you owe $$$$ on top of that. In theory this liability is like shorting a stock and the loss potential is virtually limitless, you could end up owing millions.
Game giveaways like Game Pass and Epic Games Store's free games are generally based on a flat advance. I think PlayStation Plus's free games are also a flat advance, but I can't personally attest to it. There are tables out there of how much money Epic handed specific developers for their games and how many copies were installed that I think leaked during the Apple lawsuit, and in some cases developers earned much less than Unity's 20 cents per copy due to the number of installs.
Ideally this flat advance model would have been widely protested by the industry, but there is a huge audience of struggling indie game devs for whom a flat advance is a desperately needed lifeline, so it's been successful.
What kind of protest do you expect to see? The change was announced just now.
they always have and always will. But revshare and ESPECIALLY residuals (tangential to this topic) are costs that the elite will fight to the grave to not give out.
Indie devs are simply taking that gamble and unironically working for exposure. profits are razor thin in games and the market is fickle, so it's much preferable to have a guaranteed minium than to negotiation revenue/profit shares. if they become "too successful" they simply need to use that newfound exposure to negotiate a better deal next time.
And yeah, of course there would be much bigger backlash for their largest clients who probably prefer this new model. Which IMHO doesn’t seem entirely unreasonable if you’re on Pro (which you current have to be anyway if your company has over 200k revenue)
Probably not, I’m not a fan of these changes but most people seem to really over exaggerating because they don’t understand how the new (very convoluted) pricing model works.
The $.2 install fee (only for users living in “rich” countries) seems to be there just to incentive developers to upgrade their subscriptions to Pro which offers much higher revenue/install limits and lower fees above them.
I highly doubt many/any(?) games os Gamepass or Apple Arcade were created using the personal edition (after all they already have a 100/200k per COMPANY revenue limit. would MS really pay less than that for any game and you have zero sales every else?)
On Pro you’d only have to worry if your downloads went significantly over a limit. Which is concern in this case, just relatively a much smaller one. In any cases it seems to create some false incentives for fixed fee developers (unless the publisher agrees to pay the fee which would be pretty reasonable)
IMHO so far the biggest issue with these pricing changes seems to be that they are way too complicated. It was unreasonable for them to expect that most people commenting online would bother looking at more than a single number (or would understand their current pricing model for that matter)
1: https://www.revenuecat.com/blog/growth/does-apple-keep-its-c...
2: https://www.techradar.com/news/how-steam-refunds-are-a-bless...
I've been "game development adjacent" for most of my career. By that, I mean I'm not a game developer, I'm mostly a web developer, but I've done a lot of game development-like things in my projects over the years, including a 4 year stint where I built a VR app for foreign language training.
My impression during the last 20 years of my career is that game development lacks a lot to be desired in the "professionalism" side of software development. At least, on the indie side. I obviously don't know anything about what large studios do. But large studios aren't using Unity, either.
In the non-game development world, almost all of the best tools for development are free and open source. There are several different packages to choose from for any task, and they all pretty much integrate together. They support well-defined, open standards. Their developers work hard to make the software be stable across minor versions. And the tools--and thus the pipeline of developers--between small and large projects, small and large teams, are largely the same (caveat some scale-managing orchestration tools that one can get by without perfectly fine without users ever noticing on the small scale).
Before you might scoff-in-JavaScript at that statement, just spend some time trying to do indie game development. I've yet to encounter even a major version upgrade in a web dev tool that was as painful as even some patch upgrades were with Unity. Alternatives are vastly different. There's very little code one can share between even two .NET-oriented game engines. Thus picking one of those alternatives effectively shuts you out of the larger job market.
I used Unity heavily for about 5 years, after already having extensive, other software development experience. I very quickly grew a reputation with my peers for being very effective. Most of that effectiveness was just me writing tools to fix all the technical project management deficiencies in running a Unity project. Developing in Unity felt like the 6 months that I'll never get back of my early developer life doing FoxPro development. Unity is like Crystal Reports. Unity is like Dreamweaver. All those things in enterprise dev were also shitty, take-it-or-leave-it siloed tools. Yet I only ever encountered them in large corporations being ran by pointy-haired managers. And one would certainly never start a personal project using one of them.
I think part of the equation is that in that space most of the hard problems have been solved for the past 50 years - so while computing at whole is young, some common expectations have started to crystallize and this is apparent in the expected quality of open source tools.
However, in general IMO the software engineering -quality of an open source offering is inverse proportional to it's innovation and novelty. The more niche the domain, the likelier it is the open source there is sub-par per expectations - and not to fault the open source enthusiasts there! It just seems high quality open source either needs some diamond-level craftmanship from few contributors, OR a massive, massive userbase with professional interest aligned with the project.
In open source, another way to view this, is that in popular domains there are hundreds of competing teams creating similarish solutions to similarish well understood problem-solution domains, and then word-of-mouth quickly drives community to contribute those perceived as "highest standard".
From another point of view.
You still need fairly esoteric skillset to contribute to game tech. There are lots of things that simply are not taught that well together, and everyone needs to do lots of hard work to enmesh these concepts in their head to a whole. The work is not magical or rocket-science-hard, just something esoteric that manages to combine stuff from super hard or poorly defined domains like numerical computing and art into what is basically a frivolity. The implied hard work means you need same competence basically to contribute to game tech meaningfully where you could be curing cancer, doing actual rocket science or something of actual impact. As a field, games have an abysmal reputation of abusing talent and naivety. Anyone in their right mind absolutely not driven to develop games will choose any other field. Hence it's no wonder game tech is kind of ... random often.
If you managed to get over 200k installs and 200k revenue you can just upgrade to pro and increase these limits to 1 million.
I’m not a fan of these changes and the whole model seems too convoluted but the fees don’t seem to be that unreasonable.
It seems they are actually even lower now than they were for a subset of users.
Will it though? That $0.20 fee seems like a red herring (and not such a big deal unless most of your users are in US, Western Europe etc.) and hardly anyone will pay that much. Why would they?
Anyone who makes over $200k is already using Pro and your per install fee is unlikely to be above $0.05 or so, maybe you van even get it down to $0.03 or $0.02. Which still might be a significant hit for some but that alone is unlikely to kill Unity in the F2P mobile market.
Also considering how much some of these game developers are willing pay for Ads $0.05 can’t be a very significant amount for them.
Don’t get me wrong, I don’t really like this whole pay per install thing or where Unity has been heading over the past 4-5 years in general but I don’t think these new fees will be such a huge hit for 90%+ or all their clients.
Also, demo installs apparently count against that threshold https://twitter.com/necrosofty/status/1701717971016790508 (their original reply https://twitter.com/unity/status/1701689241456021607)
The fees are also PER-GAME so one popular game wont cause your new game to cost a bunch immediately.
It sounds way less bad than what people are making out to be (still not free, but should anything be?)
...but it's not really very clear is it? They've done their best to make it simple, with multiple examples in the FAQ, but fundamentally, what they're introducing is a very very complicated scheme.
Multiple rates, multiple tiers.
> All determinations, calculations of installs, and revenue related to the Unity Runtime Fee will be made by Unity in its sole discretion.
Ouch, expensive. Don't worry:
> Qualifying customers may be eligible for credits on the Unity Runtime Fee based on the adoption of Unity services beyond the Editor, such as Unity Gaming Services or Unity LevelPlay.
How much?
> please contact your account manager for ad monetization
Got a problem with that? Not what you were expecting?
> Unity may also waive all or any part of the Unity Runtime Fee in its sole discretion. As we implement this program, customers may see an invoice for an amount less than the full number of installs (or for $0) to help with the transition.
> We recognize that users will have concerns about this and we will make available a process for them to submit their concerns to our fraud compliance team.
Some amount. With some discounts. Based on your subscription, maybe? Or maybe you just get credits?
...
I mean, trivially, yeah, sure. Did you make more than $200000 in the last year? Probably not. So, you probably don't care, and this doesn't have anything to do with you.
However, it's really a bit shit to go from a predictable fee to an arbitrary rolling fee which you can't easily predict; and you can't, because despite all their examples, they've really failed hard at two things:
1) How much will it cost?
Not, you tell me later how much it will cost. Not, I get a surprise bill I can't afford in a month. Me, without you input, calculate how much it will cost. How much will it cost? It's pretty clear to me that the answer to this is who the heck knows?
They decide what an install is.
They decide how many installs you had.
They decide how much of a discount to give you.
They decide how much to charge you.
They decide how to deal with any disputes.
Does that sound cool to you? It doesn't really seem cool to me.
2) When will the rates / terms / values change?
There's no rules. They decide that too.
Published a game today? Well, in a year maybe it'll cost more than it costs now per install. Maybe not. Who knows?
...
It's easy to say, 'its no big deal'; but unpredictable pricing is very very bad. They've totally messed this up by making it too complicated and too bespoke.
200k revenue is a higher mark, but far from a high mark. Especially for mobile games. those mobile packs can go up to $100 a pop, so if you got 2000 purchases, every free customer is costing you.
Out of curiosity, how does 0.99 * 0.7 - 0.2 = 0.493 come out to 46 cents?
Frankly speaking - there’s a lot of comments similar to this in tech, especially when espousing the solutions that crypto may offer for these “problems” that are built on ignorance or misunderstanding of how the industry actually operates.
Having been in more discussions about “disrupting games” than I can count, almost every one of them was driven by outsiders with zero appreciation.
While Steam’s fees are on the higher side, the depth of publisher features offered by steamworks is incredible and are likely saving average developers the fees many times over
Facebook famously had the illusion that if you made distribution free, you could dislodge game developers from Steam (see FB Gameroom). Educating people on the 999 other reasons why developers choose steam , was painful.
Not that I’m a fan of those changes, but I’d bet the $0.2 fee is only there to encourage anyone affected to upgrade to Pro.
The fact that most people will only see a single number and ignore the rest of the quite complicated pricing model says a lot about their marketing department… I mean what did they expect?
This is basically committing hara-kiri on the product and looks to be effectively a company killing decision, unless there is something we are missing ?
Stable profits are worthless. (Forget the fact that, y'know, they keep the company alive, everyone paid, and everything that actually matters to 95% of people working fine.)
All that matters is growth. Growth is what gets CEOs praise from shareholders, bonuses from boards, and even-higher-paying CEO jobs elsewhere.
Unity never had those though or any profits for that matter (they have been burning cash for almost two decades..)
> All that matters is growth
Yeah, but in this case they have been more focused on growing their costs rather than revenue (which is not exactly ideal even from the "Wall Street" perspective).
If what you say is the case, then this is still a dumb move, because it's still acting as if the choices existing Unity developers have are "pay Unity whatever they want, or get out of the business", but it's at least not quite as directly related to Wall Street brainrot.
I guess it's down to how the video game/engine market works. A tiny proportion of their users make massive amounts of money while essentially paying peanuts to Unity (well.. I guess at least in relation to what value it provides compared to storefronts/ad companies/platform owners etc.), while the bulk makes barely anything.
They don't want to go with a rev. share model due to various (pretty valid reasons) and therefore they seem to be really struggling with monetization. So they came up with this Frankensteinian compromise/abomination which hardly solves anything:
- most of their biggest customer will continue paying pennies (as % of revenue).
- most users are under the 200k/1000k limit so these changed don't even affect them in short term (of course it might make them reconsider whether they really want to continue using Unity)
- the not that large but very vocal (their corporate won't go around complaining on twitter/reddit/etc.) group of mainly indie developers in between is kind of screwed (at least if they make F2P or cheap mobile games). However it's not like they pay Unity that much money currently, so their executives who obsessed with maximizing short-term revenue growth don't have any reason to care about what happens to them.
But it's not. Unity is extremely unprofitable as a company (-50% operating margin.. lol..).
They would be fine if they hadn't started burning money like there is no tomorrow after their IPO back in 2020. The company was still unprofitable but had decent growth and would've broken even in a year or two. Then they decided that they need to double their headcount (to almost 8000 people...) in two years and start buying random companies for exorbitant prices (I guess why not? Money is free after-all).
Now they don't have a choice and have to maximize their rev. growth or the company is f**d. IMHO the engine itself would probably be in a much better spot had MS (or even FB) bought them 5-10 years ago and they could've easily paid as much as their current valuation minus Weta, IronSource, whatever they bought before.
> company killing decision, unless there is something we are missing ?
Probably. I mean the pricing changes seem to be very complicated and most people are only looking at a single number ($0.2) which seems to be there only to force everyone above the 200k revenue/install threshold to upgrade to Pro tier. Seems like 80-90% of all users won't pay anything for installs and the average for those who do is probably to be somewhere between 2-5 cents which is not unreasonable financial (it still seems like a slightly bizarre price model in general).
The way they presented this seems to be a disaster marketing wise. But about on par given the general level of idiocy amongst their upper management (especially their "marketing department").
But Unity has been declared dead/dying before, I suspect it'll have a long future ahead in some form even if it's no longer the obvious go-to engine choice for indies and mobile developers. A lot of people have invested a lot of years into their Unity skills as well as projects/codebases.
What do you think has taken it's place?
Artists are excited by the potential of UE5, as Unity's rendering tech has stagnated somewhat. But making a UE5 Nanite/Lumen game is likely to be limiting your audience rather a lot, with high hardware requirements.
Is it ready nowadays? Looking at their showcase it seems I've played a few games using it without knowing.
Is it there yet? I don’t know, but it’s improving constantly and making strides and things like what’s happening with Unity will only gain Godot more support. I think it’s just a matter of time.
https://w4games.com/2023/02/28/godot-support-for-consoles-is...
What does "ready" mean?
Also what does "spending loads of time debugging the internals of the engine" mean? I have worked on small and large (AAA) games with both custom and 3rd party engines and all of them needed a lot of time both profiling (to make things faster) and debugging (to avoid/fix[0] bugs) the engine internals. Where is the threshold where that time is "loads"?
Without being specific on the requirements how can one respond with "yes" or "no"?
[0] "avoid" for the 3rd party engines that we tried to not change much as it'd affect engine upgrades later, "fix" for the custom engines
> Projects written in C# using Godot 4 currently cannot be exported to iOS
With unity or unreal it's one click as long as you're using a Mac.
https://docs.godotengine.org/en/stable/tutorials/export/expo...
For new projects, Unreal Engine does have interesting terms for indies.
But legislators aren't exactly forbidden from creating new types of companies. As ignorant as I am of most things business, there is today more than just the "Inc." and LLC. They've even created various non-profit and charitable corporations that are prohibited, by law, from distributing profits.
This being the case, why not a new type of corporation that was somewhere in the middle? Able to distribute profits (perhaps even with limitations on when they can withhold them, like so many of the big tech companies). Ones where the shareholders still get some (statutorily defined, so that case law can't come in and fuck it up) priority, but that when shareholders are acting only in short term interest, they can be overruled by those in charge of managing it.
> This being the case, why not a new type of corporation that was somewhere in the middle? Able to distribute profits (perhaps even with limitations on when they can withhold them, like so many of the big tech companies). Ones where the shareholders still get some (statutorily defined, so that case law can't come in and fuck it up) priority, but that when shareholders are acting only in short term interest, they can be overruled by those in charge of managing it.
There are of course alternate ways of structuring companies that prioritize the needs of groups of people besides shareholders like worker co-ops. The issue with these is that it can be difficult to raise capital to start or grow these businesses because there's less incentives for investors to give you their money.
Publicly traded companies have to state what they prioritize. It's as simple as that. If they don't, they must prioritize profit, but not short-term profit.
That rule is usually blown out of proportion, it just can not explain the modern companies behavior.
(But yeah, they must prioritize shareholders. That means that the shareholders are the ones that decide that stated priority, into whatever they want.)
I think there was a thread (don't recall if I saw it on HN or reddit). Someone said Dodge brothers (?) sued Ford (?) because Ford was trying to give it's employee raises (?) or reducing their working hours (?).
https://en.m.wikipedia.org/wiki/Dodge_v._Ford_Motor_Co.
Basically Ford wanted to cut shareholders dividends to dramatically increase production and the number of people employed in his plants while at the same time cutting the costs and prices of his cars.
He told his shareholders that the goal was the long term benefit of the company and the value of this strategy to them was not a consideration for the plan.
Shareholders didn't like it and the Dodge brothers, who were among the largest ones, indeed sued him.
The court held that Ford could not lower consumer prices and rise employee salaries. It also upheld the order requiring that directors declare an extra dividend of $19.3 million.
Many people point out at this lawsuit when questions arise as to why corporations squeeze as much value as they can for the shareholders at the expenses of basically everything else.
So this is more about shareholder rights? They can vote for board members, and then those board members can direct strategy.
It seems like a corporation can do all these things that Ford was planning, it just has to factor in shareholders.
So if shareholders wanted to paint all the plants purple, they have some rights to force that.
Is this correct: It doesn't have to be about profits, it is just about control?
The fiction that a corporation's fiduciary duty to its shareholders means "profits above all else" didn't become a thing until the 1980s, when Reagan's "greed is good" became the driving mantra of capitalism.
A "B" corporation, for example, is just a C corporation that has voluntarily agreed to a set of governance rules.
Godot can't include game console-specific code because its open-source license is incompatible with the various game console API licenses. But that doesn't mean you can't have have your Godot game on a console.
I supposed there could be some way the core team could setup a different group targeting closed source SDKs (even maybe for a fee... as a way to finance the main open source development?). For instance monogame is open source and supports most popular game consoles [2].
--
0: https://lonewolftechnology.com/
1: https://docs.godotengine.org/en/3.0/tutorials/platform/conso...
Also Unity games were mod unfriendly, meaning that those games are mostly dead by now.
And I don't know what it was exactly, but Unity games (specifically the RPGs) seemed to lack some sort of gritty realism with character interaction and movement. It just seemed cartoony and missing some sort of UI feedback that made the game feel 'real'. Maybe because of lag because of the terrible engine, I don't know.
Maybe one day a Linux engine remake of Unity will make all of the amazing RPGs playable and moddable again, like Pillars of Eternity 1/2 or Wasteland.
That's got nothing to do with Unity. A game being mod friendly is 100% a dev decision.
For an example look at Cities: Skyline, lots of big mods and it's a Unity game.
So anyone that wants to replace Unity, despite their missteps, has a long to catch up to.
https://learn.microsoft.com/en-us/dotnet/core/deploying/nati...
1: BRUTE, Mono AOT, and CoreCLR NativeAOT among others
> Heard from inside Unity that the blog post was reviewed for weeks and internal concerns about poor / confusing messaging, Game Pass, etc, were all ignored. It's resignation time for some folks.[1]
[0] https://finance.yahoo.com/news/dispute-between-unity-improba...
[1] https://twitter.com/georgebsocial/status/1701678249086992478
And as a result, losing focus on the needs of game developers.
https://news.ycombinator.com/item?id=37481344 - "Unity plan pricing and packaging updates"
It's linked in this article as "the latest and final straw".
Unity plan pricing and packaging updates - https://news.ycombinator.com/item?id=37481344
The New Godot Development Fund - https://news.ycombinator.com/item?id=37481872
This heavily implies Unity was responsible for the advent of commercial game engines and game engines being licensed to third party developers, which is bullshit. This was done with many game engines long before Unity, such as iD Tech, RenderWare, the Build engine, GoldSrc, the Unreal engine, even the GameMaker Studio engine.
It's not unlike the library vs. framework debate of the modern JS world. Unity & Unreal are more frameworks, while most other engines are libraries.
From Wikipedia on RenderWare: It was licensed over 200 times. The scope went towards an integrated middleware with low level APIs for rendering, physics, audio, AI all of which are extensible through plug-ins which also serve the official high-level API. The aim was to reduce the learning curve by also including service and support for licensees. With RenderWare Studio an integrated development environment including a debugger was included.[3] RenderWare themselves claimed a 70 % marketshare across studios that choose an external engine in 2003
I was more referring to "modern" Unreal. Like UE4 didn't have any flagship game associated with it, at least not at launch. That transition seems to have happened over the life of UE3 which started life associated with a flagship game & genre, but by the end of it was a lot more diverse (such as Infinity Blade on iOS)
Good point about RenderWare, though
Godot is a "mature" toy engine. There is not a single quality / money maker game that shipped on Godot.
This does not seem to be related to this:
> There is not a single quality / money maker game that shipped on Godot.
There's some missing context in the middle. I'm curious how one implies the other? I'd be game for chains of logic going from first -> second or vice versa.
I'm specifically curious, what is Godot missing?
I mean look at the showcase:
https://godotengine.org/showcase/
It all looks amateur.
All the mobile dev work on Unity so you better have good reasons to change the entire pipeline.
I think from a business perspective, I'd be more at ease if they could advertise any profitable games.
Not that games need to be profitable, but there's some value in knowing other people tried and succeeded to use Godot commercially.
Someone should be the first!
This is the same as saying "no FAANG company uses X language/platform so X is a toy", it's far too reductive and not actual reality.
As someone who has used Unity a lot, it really isn't the engine. You're only noticing this is the whole "no good toupees" thing. The thing is, the Unity Assetstore makes it very easy to hack together something that kind of works, but because nothing will quite fit together it'll be a janky mess.
Rust is fine though, in my experience. (and yes I do mean the video game in this context, hahaha)
One big argument people have is whether the lighting in game is good or not. They do dynamic lighting, which can definitely cause some voidlike shadows, but people were arguing over whether Unity had tools to help with that or not.
Also, multiplayer is hard, but they have made some (very questionable) decisions like sending all clients the entire map entity list. Hackers abuse this to know where rare items are located and even the stuff other players have found or brought into raid. If I find a GPU or LEDX and put it in my bag, they instantly know and can come kill you to take it. This combined with issues with desync, audio not working correctly, invisible players...I don't think this is a Unity problem as much as it's just a complex game, a pretty small dev team, and they don't want to hire outside of Russia.
Now compare Satisfactory to its actual genre-appropriate competitor, Factorio, and suddenly Unreal looks like a pathic joke. Factorio scales _so_ much better it's absurd, but that's really down to the quality & focus of the simulations being added by the game developer. None of it has anything to do with the engine itself (well, except that Satisfactory is limited by the number of game objects it can place as a result of an Unreal Engine limitation...)
The engine is not simulating any of the factory logistics, that's all going to be bespoke code by the game dev and so there's no major reason to expect unity or unreal to behave meaningfully different here.
And yeah, I feel like you're choosing some specific games while ignoring all the others. Tons of famous Unity games are great. Is Subnautica janky? What about Hollow Knight? Rimworld, Beat Saber, Outer Wilds, Cuphead, both Ori games - the list of major Unity projects can go on for a while, and I wouldn't call any of the above examples janky.
Yes: I could make the crashed burning spaceship pop into and out of existence by walking a couple of metres back and forth across the floating platform I was standing on.
And even then, as far as I know, they're not really simple 2D games, but more of 2.5D. There are 3D background layers and 3D-like lighting and effect calculations, in addition to overall being very visually dense and complex. I certainly can't compare it to fully flat games, like the aforementioned Hollow Knight or Cuphead, etc.
So yes, an engine can have known issues, but isn't it up to the devs to make a product that runs well? Unfortunately for Jedi: Fallen Order they just weren't given time to make it work well, just "good enough" for console, and it's even worse on PC. The sequel has the same issues.
Granted it's not a mobile game but still.
There will always be someone to say that an open source project can’t replace a mature, proprietary one since it doesn’t match all the features or ecosystem. Historically, this changes really fast once you make the licensing terms bad enough to make a large chunk of your customers and prospective customers leave and take a good risk with said open source project.
Roccitiello was also shortsighted when he was CEO of EA. It’s sad that history repeats itself.
However, one thing I don't like about Godot is their choice of a dynamically-typed, scripting language as their main programming language, instead of a statically-typed, compiled language which, in my humble opinion, would have been better.
I have never used Godot, but from https://godotengine.org/features/#script :
> New in 4.0: GDScript offers optional static typing support, boosting your coding efficiency and runtime performance.
and
> Godot is built to be extended, and that means you can choose a programming language not provided by the Godot team itself. Thanks to our community there are many language bindings for popular tools like Rust, Nim, Python, and JavaScript.
>
> New in 4.0: C++ supports comes officially in the form of GDExtension API, which gives you a way to script and program your game components for maximum performance without having to recompile the engine.
Additionally, C# has first class support and community supported languages include stuff like Nim, Rust, and Typescript: https://github.com/Vivraan/godot-lang-support
Compilation is irrelevant to a game engine scripting language. I think Godot does some magic on their end to make the interpreted nature of GDScript not matter from a performance perspective, but don't quote me on that.
Now I'm learning a lot and decided to stick with Godot for this project. My restarting phase is over and I'm moving forward now! I've been really enjoying it! The more I use it I really like it.
A funny experience today, in part due to google being "not terrible" these days (as we say in French), was looking up internationalization. The first hit was a youtube video that was in Indonesian with no subtitles. But in two minutes the guy showed the file structure and whatnot and it's super easy to use.
Sometimes (always-ish?) the docs don't provide examples, which I think would be helpful, and sometimes error messages could be different like, instead of "wrong args on function" it could tell you what the right ones are (like Rust), and I don't know how to refactor other than manually which is different when you're used to IntelliJ, but these are minor gripes.
Overall this experience reminds me of what got me into coding with Flash when I was a whippersnapper, when I felt it was really fun. It feels like you can make whatever you can dream of happen.
Then I read about Unity here today and how sell-outy they are acting it reminds me of another reason to continue using open source, or free software like Godot, or Reaper (free-ish) or Blender. We are starting to have really high quality options these days.
I really hope Godot forges foreward and I hope the ethics continue to serve independent devs. And I really hope there's less breaking changes than 3 -> 4, because it makes it kind of tricky to find references online when a lot of syntax changes. But hey I love python and I got into it in early v.3 days when most stuff was v.2 so I just started with the then bleedy version and that's what I'm doing with gdscript also using v.4 and so I guess I may just have good version timing when I start a language, that is if gdscript can become a little bit more backwards compatible at some point. But also, do what must be done. Sometimes things do need to change so I get that, but at a certain point in time there "should" be a baseline compatibility with self (IMHO) in software. Or to me, that is part of what makes software good.
Also if I'm talking to one with such power, can we pretty please have list comprehensions? And also if the gods desire, can we have the format string from python?
comprehended_list = [v for v in a_list if condition]
comprehended_dict = {k:v for k,v in a_dict.items()}
formatted_str = f"typing stuff and then {any_typed_var}"
# This basically calls the var's __str__() and then __repr__() as backup
Anyway this post is not meant to sound complainy, or begging (for slightly more pythonicism) but more so as funny although I'm not. Badum-Ching, I'll see myself out. Seriously though I think Godot is awesome. Please keep up the good work. Although I don't understand the "why" of being like python and then not. Like why rename .lower() to .to_lower()?Unity is not my favorite engine to work with, and there was a long period of buggy, non performant console ports, but less choice is always worse.
The solution is only use open source for dev tools, or pay one-time fees.
For smaller indie studios, there are definitely better alternatives, but when it comes to the big packages, there's really just Unity and Unreal.
Or big studios can just build their own engine. Lots of big studios still do this. Once they run the math on how much licensing will cost them, they realize they can pay several inhouse devs to just make a bespoke engine for the same cost. And then further amortize that NRE cost over several titles.
Will this licensing change hurt big studios in the short run? Unlikely. Could it hurt Unity in the long run once big studios realize they can just build exactly what they want inhouse for the same (or less) cost? Much more likely.
As for small studios: small studios eventually become big studios. If they burn the small studios now, they won't have big studios buying from them in 5-10 years.
Or might be related to them working on the Wii U before, where Unity was officially supported (you even got a free license as a Wii U developer), while Unreal Engine 4 wasn't supported (until it was?). Maybe not a big deal given that there's like ten Wii U games in total, and that Unreal is supported on the Switch (Yoshi's Crafted World and Octopath Traveler come to mind).
So when I install my Steam games on my desktop, my laptop and my Steam Deck that's 3 installs. If I reinstall the OS, that'll be another install - or if I clean up my Steam library and reinstall later, etc.
Maybe this is acceptable if your title has microtransactions because you may get some ongoing revenue stream for that user - but otherwise?
And it's entirely unclear to me how this works with Game Pass, streaming, etc.
[0] - https://twitter.com/stephentotilo/status/1701679721027633280
Even if you go crazy and install the game 10 times, that 10cents is less than the 25 cents unreal would charge assuming your game is $5.
As a comparison point Unreal also has another advantage, which is that they waive the unreal revenue cut for sales on Epic Games Store, so that subset of your revenue (if you release there) is yours to keep. Unity can't offer any deal of that kind, all they can offer is discounts if you use stuff like their ads service (which is only appealing to F2P mobile game developers).
These new Unity per-install fees could hit developers who aren't making money - for example F2P games, free demos, very cheap games (e.g. charity bundles), potentially even pirated copies (if Unity intend to track installs via analytics sent from the runtime?)
In reality, most indies fail and won't hit the 100,000 download threshold or the $100k revenue threshold. But it's a new fee to worry about, and one that gives Unity a lot of 'monetization levers' to pull more aggressively further down the road (tweaking the fees/thresholds)
It's also worth considering that Epic could change the UE pricing model significantly if their sole serious competitor starts to fade into irrelevance...
There were also people who'd read it as a 'per install per month' (e.g. monthly active users) charge, as the pricing table refered to 'Standard monthly rate', which made it look pretty awful...
If they made the price increase continuous and charged for max(0, #installs - 200,000), then that would be something else, but the way they wrote it implies a bomb waiting to explode if your game gets too successful
There's a revenue threshold to meet to pay the fee.
This is how you kill a product.
For example at $2 million in revenue unreal would cost $50k in royalties. Assuming a game with a price of $1 and 2 million installs unity is $10k in install fees. If your game is priced at $10, that's just $1k in install fee vs the same $50k in fees to unreal.
Assuming Unity Pro ($2000 per seat per year) - first 1000000 installs are free, next 1000000 priced as follows: 0.15 * 100000 + 0.075 * 400000 + 0.03 * 500000 = 60000$ + Unity Pro for each seat.
If the agreement changes underneath you as you're making the game, you can't budget for it, and trust is completely lost.
I have it on good authority that they just today learned what charity bundles are and how they work.
Imo, the price increase amount is basically irrelevant. Unity's reputation has already been rapidly shifting towards "untrustworthy" over the past few years because of the endless support problems and unfulfilled promises. At this point, I can't imagine pinning years of work on the hope that they won't pull the rug out from under you midway through production.
It feels like they've broken an implicit contract. This probably won't hurt studios pumping out mobile games, but it probably won't help their long term reputation or with the loss of enthusiasm in the community
We can assume that this would mean running the game at a loss, because the author didn’t say that.
We can assume that this would mean running the game at a loss,
because the author didn’t say that.
A better assumption would be that they're likely to clear the $100k/mo, but as they said "not guaranteed" to do so.I suspect that if the author would have intensified the statement to "they would go out of business with the new scheme" if they were certain to lose money.
It’s funny that the vague $100k/mo figure is meant to evoke some sort of response from the reader. The implied assumption seems to be that Unity should not charge anyone this fee because free-to-play exists as an optional business model that a developer can choose to maximize revenue.
Like the boogeyman lurking in the closet is that any indie developer could wake up one day and their game is EVE Online
I don’t understand…
Growth of Unity but of questionable benefit to the core product.
Open source the engine and IDE, have inhouse teams and contributors working on it, ultimately it becomes the go-to for game dev.
Then, provide best in class cloud services for using Unity, all the game backend stuff, comms, etc.
Wouldn't this model work?
Something like 85% of VR games/apps are made in Unity.
Why?
(I experimented with both, and preferred Unreal's interface, open source code, and ability to use a compiled language, but have never made a game.)
The cumulative effect stacks up as they charge for every install & re-install of the app. That's the subtle shift of per install v. per user.
If the user has to reinstall the game due to the bug, the developer will have to cough up the fee.
If they have to reinstall because of hard-drive space hijinks, then the dev coughs up the fee.
If they get a new computer or a new device and install the game again...
from https://old.reddit.com/r/Unity3D/comments/16hgmqm/unity_want...
I’d expect more from GameDeveloper but I guess those years have long since passed.
What an insult to writers, artists, and game designers! None of them have managed to imbue their works with "unique spirit?"
> And its engine wasn't especially good.
It was good enough. It's non trivial to do, despite appearances.
> These days a large % of Minecraft installs are a C++ version of the game and not the original Java version, because it's really not about the engine.
But is the Bedrock version even the majority? It's been out for years and adoption is very slow. If it was not for game consoles it might not have taken off at all. And the main reason is mods. Which are not part of the "engine" as you put it, and were enabled by the technology choice.
Agreed that mods are a big part of the experience and would only really have flourished using technologies like Java (what Notch chose), C# or JavaScript, not C++.
As someone said, to the extent they have managed to do it -- and many have -- it was not because of engines like unity but despite them. I imagine all those people would have been happier if the engineers had made a custom engine for them (and quick).
Every minute spent on re-inventing the wheel for the umpteenth time is time lost on actually writing and polishing the actual game. Tools like Unity were a godsent for small teams and solo devs who just wanted to write and publish games.
While libraries like SDL can lighten the burden somewhat, they are still no replacement for solid asset pipelines, visual editors, performance analysing tools, and a mature pipeline for multi-platform packaging and publishing.
This is wrong, there are tons of finished games that use custom engines. For example one of the most recent indie games i bought was Zortch which was made by a single person and used a custom engine.
EDIT: actually here is a page that collects some custom engines, ranging from big studios down to one man efforts, all with released games:
https://gist.github.com/raysan5/909dc6cf33ed40223eb0dfe625c0...
What you are asking for is something completely different and unless humanity had some sort of hivemind to have universal knowledge, we can't really know as people start and abandon projects all the time.
The best we can do is some heavily biased guesses - and mine would be that the abandoned games in engines like Unity, GameMaker, etc where it is trivial to start a new project would be much more than even other engines (let alone custom engines).
Which is why that silly "Quake" thing never went anywhere.
What was John Carmack thinking? How did he ever imagine "Doom' and "Quake" could ever get released?
These days, hardware is almost limitless* , the real scarce resource is person-hours of development time.
(*Ok, not limitless, there's still some people doing serious optimisation work on games. But for an average indie/mobile developer, it's more about avoiding fairly well known performance pitfalls than worrying about low-level optimisation or inventing really clever algorithms to gain back some speed)
Photorealistic art assets? Voice acting from name actors? Really crappy hackneyed plots which fall to pieces under the slightest scrutiny? I think Bethesda actually has a patent on that. Lootbox mechanics which are a couple iffy election cycles away from a Senate subcommittee hearing? None of that is coming out of a bedroom developer. Writing a simple engine for a simple indie game with the kinds of art and mechanics a single person or small unfunded team can accomplish, however, is a lot more feasible.
1. The concept of licensable game engines during the development of doom in the early 90s was hardly a common thing, and certainly nothing along the lines of a low barrier, low cost entry like unity used to be
2. Id software is very well known for basically being a tech company more than a game company, and later went on to make a great deal of money licensing out the doom and quake engines to other companies who could then focus on creating games without having to build a bespoke engine
There are ofc many successful games that were not built on top of a third party engine.
Including one of HN’s darlings Factorio for example.
Probably a true statement in a way that's difficult to verify. Nobody is keeping track of never released games, specially those that didn't really get started because so much work went on the 'engine'.
That said, there are some examples. Like Minecraft and Factorio. An existing engine might not have benefited those titles as much as they would a standard FPS game. They could be probably made using an existing engine, but the benefits might not be that apparent if you have to fight the engine and twist it to do what you want.
Going to larger studios, Elite: Dangerous has its own engine too - could they have used, say, Unreal? Probably, but then they would not be able to use many features, like the Unreal's terrain system, for their planetary landings and such(not without ugly hacks - or making it work like Starfield) and would likely have to code their own. If you are doing that, might as well skip the whole thing.
I'll still agree that in 95% of the cases there's an existing engine that will handle most of a game's use-cases. If one has access to the source code, this figure probably expands significantly.
This isn’t true about websites and frameworks or sculptures and chisels. There’s no reason why it should be true of games and their engines. It is a poetic statement though.
My opinion is that, in all of these processes, people are the ones that bring the spirit and thus are its source in the final product.