Game Development On Android
Gamasutra is running an article about the state of game development on Android. The author explains some of the strengths and weaknesses of the platform, and makes comparisons to development on the iPhone. Quoting:
"While iPhone apps are written in Objective C, the Android SDK uses relatively more programmer-friendly Java. The iPhone store charges developers $99 a year to distribute their apps, while Android has a one-time $25 fee for developers. And the review process for iPhone apps grows increasingly lengthy — sometimes weeks or more — and it's somewhat arcane. Android apps go live as soon as the developer hits the publish button. Google handles the review process post-hoc, and is much more lax in terms of content. ... For now, if a developer decides to implement a game exclusively for a particular smartphone platform, and the choice is between the iPhone and Android, the tradeoff is between trying to get noticed in an incredibly crowded and competitive market where the potential payoff is huge for those at the top, or entering a market with low barriers, little competition, currently low returns, but the possibility of potential growth."
I think that Android's future depends not on Google but on the devices that run it. Apple has the advantage of controlling both the platform and the device. So you know that whatever you develop for the iPhone it will work. But Android resembles more the PC market where there are different memory capacities, 3d acceleration or not, multi touch or not, keyboard or not, etc. That's why I don't play games on my PC and I bought a separate games console. Because I don't want to care about requirements.
mov ax,4c00h
int 21h
The way the section quoted in the summary plays up the "wide-open field" of Android just strikes me as very silly. If you replaced "Android" with "Mac" and "iPhone" with "Windows," you'd have a pretty good approximation of the marketshare situation in the PC game market...and no one's suggesting that writing games for Mac is smarter than writing games for Windows due to massive overcrowding of the Windows games market.
(Apologies for any incoherence. Please blame posting before fully waking up.)
Dan Aris
Fun. Free. Online. RPG. BattleMaster.
You can use logic all you want to show the advantages Android phones have, but until the shine wears off for the iPhone fans and people realize just how tied their hands are, it will remain the dominant phone. Really, the average user doesn't even care, although they usually realize later that they should have. The article that predicted 2012 for Android to surpass the iPhone is probably accurate, or perhaps even early.
>in Objective C [...] more programmer-friendly Java.
[Arguments needed]
Hmmm. Long-term investment with the potential for steady, but solid growth? Or the ridiculously slim chance of striking it big in an oversaturated market? As an American, I think I know which way my fellow countrymen will tend to lean.
Android is definitly a tempting choice for development - purely because of the ease in which you can push a product to market. But then again, there's also Symbian, which is used on things like the Nokia N97, which has been around for ages (in various itterations), the latest one is the true smart-phone style thing, but I have a 3 year old phone with an older version of Symbian on it that can still run Java Games, meaning there is already the possibility of a large market for simple apps that can run on older phones as well as the newer smartphones
It pays to be obvious, especially if you have a reputation for being subtle.
That's depends entirely on the taste and skills of the programmer.
One argument would be the available tool set and support for Java-based technologies is much larger than that of Objective-C.
Additional, the collective knowledge (and hence publications) for Java, is again, larger.
Unlike the Mac/Window comparison, Android's market is not purposefully small. Android is currently T-Mo, but will be on other telcos soon. Android is looking to be used in the Netbook space too. While the market share is smaller, Google is actively pushing it grow, and Apple is beginning to look like Microsoft in this area. Given that most games were written in Java before the iPhone, and I bet the port from MIDP to Android SDK is not a big one, I think you will see real competition in the game market. Does this mean we will be seeing the "I'm an Android/ I'm an iPhone" commercials now?
"Ones and zeros were everywhere. I even think I saw a two!" - Bender
Could you please explain the link between hardware requirements and game innovations ?
I just don't see it.
Segmentation Fault in "Life, Universe and Everything" at line 42. Don't Panic.
What is the utmost important for developers is to get them paid for their hard work. The openness of Android platform is actually hurting developers' profits since it encourages pirate copies of their software freely distributed on the internet. With the tight-control of the distribution and installation of software, iPhone platform seems to provide a stronger incentive to developers to write innovative applications for iPhone. The popularity of the iTunes' App Stores has proved my point.
Maybe because there are more Java programmers than Objective C ones?
First, I have an N95 8GB which is the best "phone" I have ever seen. Symbian is fine as long as there are buttons to push. I mistakenly bought the steaming pile of shit, that Nokia refers to as the N97. Nope, Symbian is not god for, ready for, should be used on, anything with a touch screen. This thing is a disaster. Update the OS, doest it make it any better? Nope. Symbian has hit a brick wall. N95 = good (V3) N97 = not only bad, but embarrassing for Nokia.
I think the reason Nokia is releasing the N900 is because they hit a dead end with Symbian 5 and the N97.
Development? go look at maemo.org. Everything you could want. Apple C or Java, puullleeese, it's Debian Linux with every tool you can think of.
Nokia prolly was reluctant to do this, but with the embarrassing failure of the N97 and Symbian 5, they had no choice. The N900 is light years ahead of the iPhone, or Android, and all the development choices are your. You don't have to pay or ask permission from anyone to develop in Linux.
* Carthago Delenda Est *
Oh yes, every game developer would MUCH rather program in Java than in C/C++ (of which Obj-C is a superset). It is soooo much easier to write OpenGL code in Java than in C. What a joke. This article is completely idiotic.
By the logic of this author, it's better to open a store in the middle of nowhere than a shopping center, because the middle of nowhere is not saturated with competitors. The number of applications on the iPhone actually draws in more customers, Apple advertises rather heavily the fact that you can find an app for anything!. It's also been shown that iPhone users are willing to pay money for applications, has the same been shown about android users? Also I question whether Java is more developer friendly than objective - c. The syntax is more familiar ... perhaps, but thats really its only advantage, Objective C also has memory management (if you want it).
FTA: "The developer laments issues with the market interface [...] and a lax return policy (24-48 hour returns, no questions asked). But the issue of piracy is also raised, [...] A cursory search of popular torrent sites reveals bundles of Android games for download."
For a prospective developer, those are some serious issues... I was hoping that the second half of the article would mention some changes in the platform that would solve those issues, but the only solution that is offered is to "monetize apps through advertising."
Investing time to master the Android SDK seems exciting because it's a chance for everyone who missed out on the initial iPhone app wave to catch a new wave. However, after reading this article it seems like it would be more advantageous invest time creating an awesome app for the iPhone.
That doesn't mean that Java is more programmer-friendly than Objective C.
My other account has a 3-digit UID.
This is also why consoles are stuck with the same copy-of-a-copy-of-a-copy games while the real innovation happens on the PC.
Ohhhh.... so that's what all those junky cookie-cutter FPS and RTS games on the PC are, innovation! All this time I thought they were a quick way to make money by tapping into other games' success.
Apparently wizard is not a legitimate career path, so I chose programmer instead.
A variation in hardware requirements creates innovation in 3 ways- overcoming variations in hardware to deliver the same experience, pushing the envelope of more advanced hardware, delivering new experiences to those without advanced hardware.
In the first case, a PC made game is much more likely to be "scalable" in graphics, difficulty, AI, etc. The engines are much more robust because they must deal with many different levels of hardware and still deliver a bare minimum experience to the end user. Bloated code obviously still happens, but when you know that half your potential market may not be able to play your game, you are more likely to optimize. Contrast this to a console where you know exactly what the audience has. You don't bother to innovate in how you compress, store, display, program your code unless you have to. Knowing ahead of time that all hardware is equal, you are less apt to innovate.
PC's traditionally break away from consoles fairly quickly in graphics and computing power each generation. While little is done with all this extra power, a few games per year can be seen pushing the envelope of what can be done with the PC. Similarly, innovation comes not only from graphics but from AI. PC games are more likely to be programed with AI /physics, etc, that once again scale to the user's hardware. While on a console that AI only needs to be stagnant, a PC games AI may be able to react faster, smarter, etc on a more powerful system. Again, not all games do this, but some games are innovative enough to scale with the growth of your own machine, providing a better experience to those who shelled out the money.
Third is the opposite of my second point. Not everyone has an awesome PC. Just as some companies are trying to push the graphics and AI envelope, some companies are trying to appeal to the lower end of the spectrum. Companies may, and have tried to create new types of games or new games that cater to people who can only run the barest of systems.
Good examples of a games that could not exist on a console system are dwarf fortress and battle for westnoth.
The first for it's portability and scaleability. The innovation is that you can play DF anywhere of a thumbdrive, and it will scale to your hardware last time I checked.
Second, games like westnoth rely entirely upon the user community after release. The closest thing on a console is Little Big Planet, but last time I checked you can't package your own artwork, items, models, etc. into the game. Westnoth grows because it is open to the community. This allows it to scale to different hardware very well and at the same time the non-locked-out hardware of the PC allows anyone to create anything they'd like for the game (art, missions, items, characters, cutscenes, UI, etc..)
Anything from Bloom/HDR to Anisotropic filtering back all the way to 3d textured FPSes. The jump from, say, Doom to Quake was entirely driven by uptake of hardware 3d acceleration.
If you decide to "not see" those as innovation, well, that's your choice. They're certainly innovations in the style of games that can be portrayed. When/if the next change comes to realtime raytracing, that will completely change the way games can be designed (no need to count maximum visible polys, for a start), and that will be hardware-lead, too.
That doesn't mean that Java is more programmer-friendly than Objective C.
Right, it just means that more programmers are Java-friendly.
Write your representatives! Repeal the 2nd Law of Thermodynamics!
Java may appeal to some, but many of us just want C/C++ (Objective-C, allows that).
Games on consoles and PC are normally not developed in Java for many good reasons. Game developers that want to transition to phones are likely to prefer to stay with C++ where they can use their tools of choice, such as Visual Studio.
In fact, I think that a few people out there already develop C++ on PC and keep the actual iPhone/XCode build on the side. This is a big plus for those that are already making games and would like to try to use their knowledge and tools for a cell phone game..
"La presi e te la pagai (480.000 Lire)"
C/C++
Counter-Strike
StarCraft / WarCraft
Gears of War
Bioshock
Duke Nukem
Doom 1,2,3
Unreal Tournament
Halo
Oblivion
Eeathworm Jim, Monkey Island, Braid..
Half-Life
--- insert pretty much everything important ever made ---
Java
Some Tetris Clone
???
I have to agree to a certain level. Apple has a level of quality control that people tend to forget and think of it more as a proprietary system. Its true Apple does not make sense in their choices most of the time and for some reason it works. A elite cliche type of expression if you own their products.
Whiles others that see room for improvement in their model try the same with looser controls and it never seems to be able to catch that distortion field momentum that Jobs is so good at creating.
One could argue the other side and say that by not having to worry about innovating on the tech side to fit a game into an unknown hardware spec, the developers can spend more time innovating on the game play side.
But really, I think the argument is moot. Both PCs and Consoles need each other even if just as an adversary such that there is no stagnation in the industry. Without PCs, Consoles have no reason to go to the next gen. Without Consoles, PCs have no reason to make drastic changes to game play.
However, you aren't forced to buy Windows games only from the Windows Store(TM) where each game must be approved by Microsoft before you can buy it. If that were the case, developing games for Mac would suddenly start to look at lot more appealing, in spite of the smaller installed base.
Support Right To Repair Legislation.
"While iPhone apps are written in Objective C, the Android SDK uses relatively more programmer-friendly Java."
Javas problems regarding non-deterministic garbage collection and non-existing management of other kind of resources than memory is programmer friendly? Really?
If you have other kind of resources in an object the object can be stuck in the pipeline without being garbage collected for a long time or never for that matter if memory usage isn't high compared to available memory. It's simply broken IMHO.
Personally I think non-deterministic garbage collection, as implemented in Java and C#, is the biggest king-without-clothes in modern history when it comes to programming.
That Java is programmer friendly is subjective at best.
To be fair, the bar for indy development on PC is much lower - see Penumbra (yes, it's a FPS engine, but it's a First-Person-WHATTHEHELLISTHATRUNAWAYAAAAAGH, and for that it's pretty awesome, even if, yes, horror survival is nothing new). Introversion also has a lot of awesome stuff under their belt in terms of innovative, and there's the "game as art" lot, even if a few of those later had console ports (and of course, there's the game everyone seems to be trying to clone, like Patapon (initially for the PSP), and that seems to spring up on pretty much on anything every once in a while)
Portal was the same, but was first launched on console, while some of the more innovative strategy games (early 4x ers, grand strategy, breaking from tactical leverl gaming) have been on PC, it's a question of interfaces and input, Konami's strategy games were cute (I less-than-threed them a lot), but oh so fucking limited. A lot of Sierra's awesome but slightly broken ideas (Homeworld, Outpost (bug-ridden piece of crap but superb idea)) have yet to have anything on console, or anything retaking their ideas on any platform at all really (okay, not true with Homeworld, Star Wolf did try to bring some of its elements on the table)
But, true, so long as corps like EA, Blizzard or Ubisoft (even if they had a few great things) exist in both fields, there's no way mainstream gaming is innovative anywhere, period. Besides, like in movies, I'm no pedant - I like some arthouse stuff and I like some of the commercial schlock, for different reasons.
But if you want it to be cross (CPU architecture) platform easily, you'll want to stick to it.
You can actually build native code with the Native Development Kit using C/C++/whatever, and so far all the current phones are pretty well compatible as far as native code goes, but if someone rolls out an Android device with a different CPU architecture than the current ARM incarnation, you'd have to rewrite or at least recompile your native code for it, and either distribute multiple versions of the app or include the native code for all versions and dynamically pick the correct one at run time.
relatively more programmer-friendly
[citation needed]
The statement "given Android programming is much easier (far more programmers know Java than Objective C)" is nonsensical. True enough that Java is popular, but Objective-C is trivial to learn. Actually the languages themselves don't have much bearing on the ease of development for the two platforms. It's the APIs. I've recently started messing around with Objective-C and Apple's Cocoa, and the language itself is VERY easy to pick up (and I'm not a professional developer s much as a person that uses programming as part of his job). The Cocoa API, however, is another kettle of fish. Not that Cocoa isn't well designed -- it's astonishingly well designed -- but, it's huge. Java is similar in that the language is relatively simple (on par with Obj-C, more or less), but you've got LOTS of APIs to learn.
I suspect that if you are a game developer, you're probably making little use of most of the APIs, and if you are big enough, I'm sure that you use a toolkit that abstracts-away the underlying platform. In either case, the primary language used probably has little bearing on the ease of development of games on either platform.
How is this any different from application development on PCs? It's really hard for me as a developer to feel remorse for a mobile application developer when it comes to backwards compatibility.
Clearly define what your hardware requirements are for your application. If the user doesn't comply, it's their own fault. Nothing new here.
interactive hologram, or it didn't happen.
I am in love with my new phone. The Android Marketplace from what I can tell is almost %80 free. I plan to personally download the SDK and Eclipse stuff and make my own apps/games in java. The Hero is a solidly built phone with every feature you could ask for including exchange sync. Love it!
Portal was launched simultaneously on PC and console, but it plays far better with a mouse.
Paradox
Not if you learn it properly - ie you learn the C side of it. Any idiot can learn the high level fluffy OO stuff. Get the same idiot to learn about pointer arithmetic or functions pointers or pre processor macros or casting issues or 101 other C gotchas and its another story entirely. Its the same story with people who claim to "know" C++ when in actual fact all the know is how to use "new", "delete" and maybe the STL and know jack shit about the in depth complexities of the language.
Are you serious?
The Iphone may have a better market share than Android, but this isn't Windows to Mac, it's more like Mac to Linux, or I dunno, AmigaOS to RISC OS.
There are a vast range of companies in the phone market - none of them have a Windows like share, but for the larger companies, look at someone like Nokia.
I'm astonished at the sheer ignorance of the reality of the mobile market here - that people continue to propagate this myth that Apple are not only in the lead, but have a monopoly, when neither is true. Slashdot was once a place to come where people knew about the tech industry - sadly not anymore.
... but one has to wonder if technology based vendor lock in for music will remain a valid strategy forever
Um...what technology based vendor lock in?
You do know that not a single track sold on the iTunes store since April has had FairPlay DRM, don't you?
Dan Aris
Fun. Free. Online. RPG. BattleMaster.
Java vs. Objective-C is a non-starter compared to what libraries are available to each platform.
Most serious game developers on the iPhone aren't even writing much Objective-C - they often use a framework like Unity, which lets you script in Javascript or C#.
Even those using some of the free frameworks like Cocos2D are spending more time thinking about Cocos objects than they are about Objective-C syntax, which is pretty easy to pick up. Syntax is only a tiny part of any modern platform, it's all about libraries... and even for application development the iPhone has a richer set of libraries than does Android (though Android is pretty close).
"There is more worth loving than we have strength to love." - Brian Jay Stanley
I wrote the iPhone version of Repton primarily in C++. It is easy to mix Obj-C and C++, and I prefer C++ for OpenGL usage. A few UI items I implemented using the Cocoa Obj-C interfaces because Interface Builder is so pleasant to use.
Any one suggesting iPhone development is limited to Obj-C is inexperience in iPhone development. Any one suggesting Obj-C is hard to use compared to Java may have a point, but primarily because the Java IDEs are so good compared to XCode. As far a game dev goes, I prefer C++ to Java especially the OpenGL bindings, and I think game dev benefits from new/delete control one has in C++.
The biggest strength the iPhone platform has is that the screen sizes are all the same, which makes game development much easier. You can optimize for that resolution and the standard set of inputs, instead of having to accommodate some people without multi-touch, some people with a keyboard and some without, all with different screen sizes that may affect the playing field.
The iPhone game developer does have the same issues as far as 3D power though, because the 3Gs and newer Touch devices support a more advanced version of OpenGL than does the original 3G platform (and remember, those are still being sold new!). So you have to decide if you want to support just one platform or program to allow for downgraded capability on some devices (which Apple makes about as easy as it can be I think, but it's still some work).
"There is more worth loving than we have strength to love." - Brian Jay Stanley
Once again, Apple shoots itself in the foot with their closed architecture and rigurous standards. With Tegra and Snapdragon coming to Android devices Apple is going to lose the hardware edge it has right now on Android devices and be left with no edge other than the "cool" factor; I'm not claiming the iPhone is going down in flames, it'll still do well. However, in terms of market share it will definitely go down to 3rd or 4th place in the market. I'm not an Apple hater, their products are solid, albeit overpriced. I am a proud Android user, I had the choice between the two devices and I went with a G1 over an iPhone because I saw its potential to become the top dog in the mobile market. Is Apple wrong to stick to its mentality? I wouldn't say that necessarily, they've enjoyed the No. 2 spot and laughed themselves to the bank every year while enjoying consumer popularity as opposed to the usual Microsoft hatefest.
The Android Market is open to all
But remember we are talking about games here.
We are not talking about Flash players or Google Voice or apps that skin the home screen.
For game developers, there has basically almost never been a problem with rejections outside QA issues (like crashing). So how is the iPhone market really less open for them? You can market your game any way you like to take users into the app store, and many more people are likely to see your game on the iPhone just browsing for games.
I'm sure the Android game market will improve with a lot of new devices going out, but you'd have to be mad at this point to not put a game on the iPhone first, and then decide if you would see enough return to port to Android.
"There is more worth loving than we have strength to love." - Brian Jay Stanley
If you are making your platform choice based solely on the primary development language of the platform then you might not be ready for game development. The knowledge and understanding necessary for making something as complicated as a video game transcends programming language.
Anything from Bloom/HDR to Anisotropic filtering back all the way to 3d textured FPSes. The jump from, say, Doom to Quake was entirely driven by uptake of hardware 3d acceleration.
Bull. It was (really) 3D and fully software rendered out the box. The 3D part is what drove Quake's success, not hardware. Everything in quake that actually took advantage of 3D hardware was a hack bolted on later. Like transparent water.. hehe.
Portal was launched simultaneously on PC and console, but it plays far better with a mouse.
That's an opinion I have Portal on PC and on my 360 and its easier with the mouse but it was more fun on a console because it took a little different skills.
Anything can be found funny, from a certain point of view.
Well, I can tell you that getting the original Half Life game was the motivation for me to buy my first video card solely with 3D graphics capabilities in mind. The only time I can think of that I upgraded my system specifically for a game. (Well, I upgraded my last system because I really wanted to play Fallout 3, but it wasn't the ONLY reason.) I still remember trying to play Quake 2 on my old S3 with no floating point built into the CPU. It was like watching a very jerky slideshow... Was probably getting like .3-.5 frames per second.
"But this one goes to 11!"
but the possibility of potential growth
Don't step in all that potential.
Why bother
While 90k+ apps & over 2bln downloads makes it harder to get noticed, those numbers say it all.
I've used a few Android phones and I like them. But the thing that makes the iPhone great to develop for (after you get past obj-c hurdle, the api's are actually really good) is that it's *standard*. One form factor, end of story. I can't help but think Android is gonna fall into the same hole that J2ME did when it tried to support everything. Already developers are maintaining separate branches for separate devices for Android. I've developed J2ME apps before and they are a f-ing nightmare. That platform never took off for a reason, because there's *too much* choice and diversity. Everything to all people; good luck.
There are also no where near as many Android users as iPhone and so developing for that platform with the intent to make some money on your app is not very plausible at this point. Maybe in a few years, maybe not. (Plus I hate Eclipse, so much unnecessary bloat, just like Java. I want tools that are fast and that don't require 5mil downloads of some frameworks I'll never use. But the Eclipse thing is only my hang up and I'm sure most Android devs won't care.)
So as a developer what makes more sense? 5 code bases for 5 Android phones - all with different form factors / features - and relatively little money for all your toil? Or one platform and the chance to hit it big? It's the same argument on a PC; develop for the huge Windows market, or everyone else?
The jump from, say, Doom to Quake was entirely driven by uptake of hardware 3d acceleration. If you decide to "not see" those as innovation, well, that's your choice.
Wrong. Quake was software rendered. Quake II encouraged hardware rendering but was still software rendered for many people (Unreal did the same). It wasn't until the time of Quake 3 that hardware 3d acceleration really took off.
1). I don't really care about innovations done for "scalability" done for PCs. With a console, you know exactly what everyone has, therefore you can optimize your art assets, audio assets, and your engine to run on that specific hardware. With a PC, you're wasting time trying to figure out how to dynamically determine if this player has obscure graphics feature C and dealing with turning it on or off. That's time that could be spent on real innovations, such as gameplay, that the "market" (players) actually care about.
2). Console generations are typically longer, than graphics card generations. This gives the developers more time and experience with the hardware, and the ability to do amazing things on it a few years after its launch that no one thought possible at launch. And these innovations are available to everyone who bought the console, not just those that decided they have the money to spend on 8 nVidia cards running at once.
3). There are plenty of "low-end" systems out there; they are called handhelds, and there is some terrific innovation going on there in trying to get more graphics power from their already limited processors. Take Square-Enix, for example. When they ported Final Fantasy III to the DS, they wanted to include some FMV cutscenes. Unfortunately, the processor for the top screen wasn't powerful enough to draw it alone. So they innovated, and brought in the processor for the bottom screen to help.
First you say that Dwarf Fortress couldn't not exist on a console, then you laud it for its portability. Wouldn't that portability lend itself to being ported to a console?
About the only point that still stands is the modability of PC games, which I will concede. Most developers are quite good at packaging the same tools they used to create the game, and giving them to the community at release or shortly after.
This is also why consoles are stuck with the same copy-of-a-copy-of-a-copy games while the real innovation happens on the PC.
I agree. All those Tycoon games, The Sims games, and the countless other franchise games where they are just cheap regurgitations to make money are truly innovative!
The jump from, say, Doom to Quake was entirely driven by uptake of hardware 3d acceleration. If you decide to "not see" those as innovation, well, that's your choice.
Wrong. Quake was software rendered. Quake II encouraged hardware rendering but was still software rendered for many people (Unreal did the same). It wasn't until the time of Quake 3 that hardware 3d acceleration really took off.
Sort of Wrong. Quake was software rendered, but much of what made people want to go out and buy that Voodoo card was GLQuake, which was a hardware accelerated version that id released for download, and Quake II also supported hardware acceleration to the point that it was almost required to play seriously. In addition, Unreal also became a differed game with acceleration. Q3 was just the first version that required a video card with 3d acceleration to play.
"relatively more programmer-friendly Java" -- LOL!
Dear Mods,
disagreeing with content does not mean modding down stuff. This is reasonable post presenting certain view point. Controversial statement should be debated, not pushed under carpet.
Dear AC,
I happen to agree with your statements. Innovation could happen regardless of platform - the game is not just an engine running in a specific environment.
However, I also happen to think, that vendor lock-in is likely become less of a problem on consoles - the communities there grow and expand, too. It's just a matter of time before massive jailbreaking occurs at some future generation of consoles.
Regards,
Ruemere
PS. Posted as AC.
Objective C is the retarded inbred child of C and C++ after that one night they hit the sake and redbull!
No, it's actually the purely object oriented, dynamically typed, late bound, garbage collected, message passing, compiled-to-machine-code child of C and Smalltalk.
My other account has a 3-digit UID.
With C++ filming it all....