<<Previous Archive | Next Archive>>

Deprecation not Appreciated

When starting a 32 bit app on the newer macOS versions, you get a message box which reads like this:

And I get a lot of support requests by scared users because of this. Asking me if the app is broken. No, it is perfectly fine. Apple just decided to throw that at them, and blame the developer once they stop supporting 32 bit apps.

From my - the developers perspective, this is really a dick move by Apple. Really, suggesting that the app is not ok and scaring my users is not ok.

Especially when "deprecating" very important frameworks such as OpenGL, Apple doesn't seem to be in the position to claim which part of the software running on a computer is not compatible.
Maybe, when starting CopperCube on a newer MacOs, I should show this message box from now on:

Not sure if it would help, though.



Creating a Tycoon Game Part 1 - Writing the ISO engine

For that Business Simulation Game I am working on, I decided to go with an isometric view of the buildings. 3D would have been possible too - especially since I am also working on that 3D game engine - but I think it is much easier to place buildings and have a nice overview with an isometric 2D view.

Programming wise, it is a mixture of 2D and 3D, and you have a combination of the disadvantages and benefits of both: Mostly everything is nearly in screen coordinates but you still need to do some z-sorting and clipping. It's easy to implement, even calculating the position of an iso-tile is very easy (pseudo language):

getIsoTileScreenPosition(x, y)
{
   var tileWidthHalf =  isoTileWidth  * 0.5 * zoom;
   var tileHeightHalf = isoTileHeight * 0.5 * zoom;
   
   return position2D( x * tileWidthHalf  - y * tileWidthHalf, 
                      x * tileHeightHalf + y * tileHeightHalf );		
}

I've written about 5 isometric engines during the last 20 years, in Delphi, Basic, C, ActionScript and C++. But none of these had zoom, which I definately need for this game. I experimented a bit, and after a while I felt that I found a very nice way to do it: The engine is able to zoom smoothly, but the user only can switch between 5 or 6 fixed zoom steps. This makes the world and game feel very responsive: It looks very nice when zooming is moving between two fixed steps, and the user is still quickly able to switch between two or more of his preferred zoomed views:

I'm satisfied with how this worked out so far. I'll post a new update next week.
If you want to get a mail once the game is playable, you can subscribe to the games newsletter on its website.



My Next Game

After a successful twitter poll, where 96% voted yes, I'm going to develop my next game a bit more in the open. Meaning I'll blog and tweet a bit more about it, while it still is in development, even if there isn't much to see yet. So here is the plan:

My next game will be named Business Magnate, a tycoon game with some quite unique features.

I already created a website for it (here), which was quite a bit of work. I wrote all the HTML, CSS, PHP and JS code manually and by hand, and although it is just a single page with a newsletter, it was surprising how much work it is nowadays: You need meta tags, icons, crawler directives, GDPR compliance, responsiveness, accessibility, browser compatibilty and more.

I did a bit of pre-production work already, so that's why there is even a screenshot visible on the website, this is from the actual game already. But there is a lot of work to do in order to make this a playable and fun game, so let's stay tuned.