Posted on Leave a comment

Top Programming Languages Of 2019

Every year GitHub release their State of the Octoverse report containing a huge number of insights drawn from datamining the massive number of public and private repositories on GitHub.  One of the most interesting parts of the report is always the most popular programming languages.  This year, the 10 most popular programming languages on GitHub are:

  1. JavaScript
  2. Python
  3. Java
  4. PHP
  5. C#
  6. C++
  7. TypeScript
  8. Shell
  9. C
  10. Ruby

The list was created using the following criteria:

Top 10 primary languages over time, ranked by number of unique contributors to public and private repositories tagged with the appropriate primary language.

Every year Stack Overflow have a similar report, drawn instead from a developer survey.  The language popularity reports are remarkably consistent between the two 2019 reports.

You can learn more about the reports watching the video below.

GameDev News Programming

Posted on Leave a comment

Sulis Open Source Rust RPG

Sulis is an open source (GPLv3) licensed RPG written using the Rust programming language.  It is a full implementation of a western style ( Baldur’s Gate, Divinity) RPG with Lua scripting, turn based combat, dialog and inventory systems and much more.

Sulis is available for download for both Windows and LInux on  Features of Sulis include:

  • Cross platform native binaries, currently built for Windows and Linux
  • Multiple campaigns with over 8 hours of playtime, featuring both handcrafted and procedural content.
  • We are designing a detailed and fully realized world and story – check out the Lore page.
  • Designed with modding in mind – although more work still needs to be done in this area.
  • A powerful 2D graphics engine with zoom, scalable UI, HiDPI support, and a swappable graphics backend.
  • Runs on very modest hardware – even software renderers (although at a reduced frame rate).

The source code is hosted on Github.

You can learn more about, as well as see Sulis in action, in the video below.

GameDev News

Posted on Leave a comment

Unreal Engine 4.24 Preview 1 Released

Unreal Engine have just released Unreal Engine 4.24 preview 1.  Preview 1 releases are always among the most interesting as you can see all the major new features that are going to be in the next version of Unreal Engine, although like all preview/beta releases, it should not be used in production.

Major new features of UE4 4.24 preview 1 from the Unreal forums:

Animation Updates:

  • Inertial Blending (Beta). Creates a natural procedural transition between poses. It is based on bone velocities and momentum from the outgoing pose.
  • Animation Blueprint Linking (Beta). An extension to the sub-instance system allowing for dynamic switching of sub-sections of an animation graph, enabling multi-user collaboration and memory savings for vaulted or unavailable items.

Audio Updates:

  • Stream Caching (Beta). A feature enabled at cook time that significantly changes the way audio is loaded and released from memory. When enabled, almost all compressed audio data is separated from the USoundWave asset and automatically divided into separate chunks.
  • Audio Synesthesia (Beta). The Audio Analyzer module and Audio Synesthesia plugin expose extracted audio analysis data to be used for gameplay scripting via Blueprint. This enables designers to drive animations, effects and other elements tightly coupled to sounds being played in game.
  • Audio Mixer on by Default. The new audio mixer, as first announced at GDC in 2017, will now be enabled by default in 4.24. The audio mixer in UE4 uses a common software audio renderer across all platforms. This not only provides feature parity across all our platforms, it also extends the audio feature set in a wide number of areas and prepares UE4 for continued audio innovation.

Editor Updates:

  • Variant Manager Improvements. The Variant Manager allows editing and control of a variant system. It can be used in car configurators or other customizable product experiences. The variant manager also has potential for TV & broadcast applications, where users can switch between created scene setups at runtime.
  • Datasmith for Alias Wire Support Improvements. Alias Studio is a product design software used for surface modeling.
  • Sun and Sky Actor. We modified the existing Sun Positioner plugin to wrap a directional light, a sky light, and the newly introduced Atmospheric Sky created by the rendering team. The goal is to provide a workflow similar to the HDRI Backdrop actor added to 4.23, where users are provided with self contained functionality into a single actor.
  • Extended Editor UI Layouts. You can now create, save, load, export, and import multiple Editor UI layouts—even across different machines or devices. Team members can create specific Editor layouts that improve their workflow, and share these layouts with everyone on the team. .
  • New Project Workflow. The new project creation dialog has been completely redesigned! Instead of the dialog with tabs, there is now a New Project wizard. This simplifies the workflow for creating projects by breaking it up into smaller steps that are easier to understand.
  • New Toolbars for Chaos Fracture Plugin (Experimental). The UI for the Chaos Fracture Plugin has been updated! We have moved the Fracture and Cluster tools from the Modes panel into two toolbar palettes. These two palettes are designed to naturally progress through the phases of creating a destructible mesh.
  • Datasmith Improvements for 3ds Max, SketchUp, CAD, AxF

Dev Tools

  • AutoSDKs (Beta). The AutoSDK feature enables customers to distribute target platform SDKs while configuring them for the Engine on demand. UnrealBuildTool, AutomationTool and the Unreal Editor are all designed to work seamlessly with AutoSDK — the switching between SDKs is handled by UnrealBuildTool, which is invoked by the other tools.
  • BuildAgent Tool (Beta). BuildAgent is a utility for managing agents on a build farm. It supports fast cleaning of Perforce workspaces using locally stored information about file timestamps, as well as fast switching of workspaces using a local cache of files addressable by MD5 digest. It also includes functionality for parsing errors and warnings from build steps and propagating them to UnrealGameSync to display for users.

Geometry Updates:

  • Modeling Mode (Experimental). We have implemented a new Editor Mode that allows users to create and edit static mesh assets directly in the main 3D viewport using existing Actors/Components that are placed in the world. This does not replace the Static Mesh Asset Editor, but is a separate set of tools that are focused on interactive 3D modeling.
  • Modeling Mode Sculpting Tools (Experimental). Sculpting Tools are a subset of the Modeling Tools Editor Mode. We know that this kind of tool is of particular interest to artists, so we wanted to give you some details! The feature is a simplified version of 3D sculpting found in DCC tools like Mudbox or ZBrush. The basic concept is the same: you click and drag on your mesh to push the vertices around.

Mobile Updates:

  • Auto-instancing on Mobile (Experimental). We are planning to support the auto-instancing feature of the HLR on mobile devices for improved performance due to reduced draw calls. This functions the same as desktop auto-instancing, but it uses a texture instead of a buffer due to limitations on Mali devices, which can only support a buffer of 64 kb.
  • Android App Bundles. Android App Bundles are a new upload format for the Google Play Store that defers APK generation and signing to Google Play itself. Google’s Dynamic Delivery system then provides an APK optimized for a user’s device configuration automatically. As of 4.24, we will be supporting App Bundle builds through the Unreal Engine.

Networking Updates:

  • Network Engine Test Suite. In 4.24, we added automated testing features to the EngineTest project for networked features. We added a FunctionalNetTest to this project so we can create tests designed to make sure that different areas of networked games behave properly. With it, developers can test network features such as replication and RPCs between server and clients. This allows for testing with both Listen Servers and Dedicated Servers.
  • DTLS Support (Experimental). The DTLS packet handler component uses OpenSSL to implement a DTLS ( based encryption scheme for network traffic. It provides two different approaches for accomplishing this goal, encryption based on pre-shared key values (similar to the existing AES packet handler), and a system based on exchanging self-signed X509 certificates.
  • Steam Sockets (Experimental). SteamSockets is a networking plugin that takes advantage of the new Steam network protocol layer that was introduced recently into the Steamworks SDK. This plugin empowers a project to take advantage of some of the finer benefits of Valve’s network functionality to provide a smoother (and safer) online experience for players when using Steam.

Niagara Updates:

  • System Overview (Beta). There is a new tab in the Niagara Emitter and System Editor, which gives a high-level overview of the system or emitter being edited. The System Overview panel combines the pan-and-zoom Graph node view with compact versions of the Emitter Stack. With this new panel you get something which feels similar to the Cascade editor, but matches the form, elements and style of Niagara.

Online & Media Framework Updates:

  • Pixel Streaming Updates (Beta). PixelStreaming plugin was re-architected to resolve various quality-related issues and for general improvement, plus adding features requested by current customers:
    • Fixed video encoding artifacts.
    • Improved streaming over limited bandwidth network connections like mobile networks.
    • Add “Freeze Frame” feature to Pixel Streaming API – to show a static image (either custom or automatically generated) and pause streaming by user request, e.g. to avoid wasting network traffic on user inactivity.
    • Added encoding support for AMD GPUs.
    • Early implementation, and not completely on par with NvEnc
    • Upgraded WebRTC version to release 70.
    • As an ongoing initiative, integrated PixelStreaming with UE4 Media Framework. This allows basic Pixel Streaming playback inside UE4.

Open World Updates:

  • Landscape Blueprint Brushes and Landmass Plugin (Beta). Up until now Landscape data could be imported and/or edited from the Landscape Editor Mode only. This new feature opens the Landscape data to Blueprints. It is now possible to assign Blueprint Brushes to the new Landscape Edit Layers. Those Brushes have a Render event that can be implemented in Blueprint that allows the user to inject landscape data (Height data and/or Weightmap data) into the Edit Layer.

Rendering Updates:

  • Ray Tracing Features Updates (Beta). We have a number of new improvements to highlight – some are:
    • New RTGI method that delivers faster results. (Experimental)
      • Enable it using r.RayTracing.GlobalIllumination.EnableFinalGather 1. It supports a single bounce and samples per pixel should be set to 8.
    • Improved instancing support for Instanced Static Meshes and Hierarchical Instanced Static Meshes with improved efficiency for large worlds.
    • Multi-view support for Virtual Reality devices and split-screen. (Experimental)
      • NOTE: denoiser support is not yet in Preview 1. It will come later in the preview releases.
    • World Position Offset support for Static Meshes (enabled with per-Actor setting)
    • Improved multi-bounce ray traced reflections with better support for area shadowing in reflections using samples per pixel greater than 1. We’ve also added support for SSR fallback when using the command r.RayTracing.Reflections.Hybrid.
    • Niagara VFX support for Ribbons.
  • Screen Space Global Illumination (SSGI) (Beta). We’ve added beta support for dynamic global illumination as a screen space effect. Currently, it can be enabled using r.SSGI.Quality. Use a value between 1-4 to choose a quality level. It’s intensity and tint color can be adjusted using the Post Process Volume > Rendering Features > Global Illumination category.
  • Material Layers (Beta). Will enable you to combine your Materials in a stack giving you similar functionality to Material Functions except that is supports the creation of child instances. Existing documentation on this feature can be referenced here.
  • New Atmosphere Fog Component. We have a new AtmosphereSky component which adds a physically based Earth-like atmosphere. It can be used to create exotic worlds and provides a ground view with and aerial perspectives, including ground to space views for planetary atmospheres.
  • Burley Subsurface Scattering. We’ve added the Burley algorithm to the SSS Profiles Asset. This method is more physically accurate and aims to improve the quality of skin shading and simplifying setup using physically based material properties. This SSS model targets high-end skin rendering with cleaner, more accurate falloff.
    • Enable it in the SSS Profile Asset.
    • The Editor Preview Level should be set to Cinematic
    • It requires Temporal Anti-Aliasing to be enabled.
    • For existing content using the standard SSS Profiles, it should require minimal changes to your existing content.
  • Hair and Fur Rendering and Simulation (Experimental). We have experimental support for hair rendering and simulation. In 4.24, you’ll be able to import your Alembic (.abc) groom from an external DCC application, create and setup your hair using the Groom component in UE4, Author and Edit your Material in UE4, and use Niagara to set up hair physics with some adjustable settings.
  • Runtime Virtual Texturing Improvements (Beta). We’ve continued to improve process and add useful updates to the RVT workflow for 4.24. These are some of the improvements coming this release:
    • Added settings for more refined control of your RVT through the RVT Asset.
    • Added RVT Material Types. We now have four options compared to the two in the previous release.
    • Added different RVT Base Color and Normal Storage settings for encoding.
    • Added two new RVT Asset actions through the context menu for “Find Material Using This” and “Fix Material Usage” to streamline workflows when creating or fixing RVT Assets and their references.
    • Ability to build a Streaming Virtual Texture from your RVT from its low resolution mips. This makes it more efficient to make use of both Streaming and Runtime Virtual Textures together to save memory.
    • Tied RVT to Scalability options for along with console variables to tune RVT settings per-project and/or per-platform.

Virtual Production Updates:

  • Pro Media Export (Beta). Currently, the export to disk capabilities from Sequencer is limited and does not address the production needs. We are adding Pro media codec support for Avid DNXHR to sequencer export to better integrate with film pipelines and TV Pipelines.
  • 3D Text (Experimental). As Unreal Engine becomes used in the Broadcast industry there have been a number of requests to support Geometry based 3D Text.
  • nDisplay QoL – Revised Architecture for Pawn, GameMode & Inputs. We have a number of improvements to highlight:
    • Pawn – We were forcing users to use a custom nDisplay Pawn – nDisplay would not properly work with regular Pawns or Character Classes.
    • GameMode – Must be using a Custom nDisplay Game Mode. We’re getting rid of that as well.
    • Consequences – Adding rotations via rotation components vs the controller

XR Updates:

  • OpenXR (Beta). A new UE4 plugin that utilizes the new OpenXR standard to support a wide range of VR and AR devices through a single plugin.
  • Magic Leap Update. We’ve updated the Magic Leap integration with support for their latest 0.22 SDK. This required updating almost the entire surface area of the plugin and brings us from a relatively old 0.19 integration up to what they are currently publicly shipping.

Be sure to check the complete forum post for a list of fixes and breaking changes in this release.  Check out the video below to see Unreal 4.24 preview 1 in action, including how to enable and use the new mesh modeling and sculpting tools.

GameDev News

Posted on Leave a comment

The Weekender: 100 Games Edition

There hasn’t been anything really worth reviewing this week, hence a lot more news bits and our usual run of features. Michael’s submitted a tips guide for GWENT, which we’ll run next week – I didn’t really feel like it was something worth rushing to review. I’ll also be trying out the new Hearthstone mode properly next week when the global beta starts. Had to re-download the game as I haven’t played in forever, but should be interesting to see Blizzard’s interpretation of an Auto Chess mode, even if it does look like a lazy man’s game of Hearthstone.

Also, make sure you grab Bastion while it’s free, if you haven’t already!

Meanwhile, in the world of mobile games…

Out Now

Honestly, there wasn’t much this week that really caught our eye or seemed worth shouting about. If you’ve spotted anything we missed, do let us know and I can update the column.

One thing that did catch my eye was an iOS-only game called Boolitaire (there is a game on android with the same name, but I don’t think it’s the same game). It’s a spooky-themed twist on Solitaire that seems to combine resource management with tactical card play. We’ve always had a soft-spot here on PT for games that do interesting twists on established concepts, and at $1.99 there are much worse ways to spend your money. We haven’t been able to try it out ourselves though, so here’s a gamepaly video from App Unwrapper:

New Apple Arcade Games

We don’t normally run dedicated updates for Apple Arcade but we just happened to get a press release through for these new additions. What’s more, Apple Arcade is now officially up to 100 games! Huzzah!

We’re not going to go into detail on all of them, but the first five of the six new additions include:

  • Takesahi & Hiroshi – An Adventure about… making a game? I think?
  • Guildings – A story-driven narrative adventure about going on a quest.
  • Marble it Up: Mayhem! – An Action/Platformer about playing with Marbles.
  • Sociable Soccer™ – A Sports management game that uses card mechanics, and has multiplayer.
  • Discolored – A first-person exploration/adventure game.
  • BattleSky Brigade: Harpooner – a scolling shoot’em-up game in the BattleSky Brigade series.

And without further ado, the official 100th game to land on Apple Arcade is…..

UFO on Tape: First Contact

Genre: Action

What would you do if a real UFO descended from the clouds? Run screaming? Or grab your iPhone and start recording?! The highly anticipated sequel to the award-winning iOS 2010 release, UFO on Tape puts you in the hot seat as you speed through the countryside in hot pursuit of visitors from outer space.

App Updates

Bridge Constructor Portal

Bridge Constructor Portal has received its first piece of DLC, nearly two years after it released onto mobile. Called Portal Proficiency, this add-on adds 30 new levels, and lets you construct bridges and choose where to place the portals.

Star Traders Frontiers

Another huge update for Star Traders – this one adds the 7th Story Era, which comes with new simulation rules, Rumors, Conflicts, and Contact actions/mutations. Enemy AI Captains also now finally use the new Carrier ship type introduced earlier in the year. There’s plenty more changes and additions as well, so make sure you check out the full update (taken from the Steam entry) to find out more.

Other games to receive updates this week:

  • Pokemon Masters has received an update that adds in new story story chapters, and the ability to swap Pikachu out for a Torchic.
  • Hearthstone received its new Auto Chess mode this week – it’ll be available for everyone to play on Monday.
  • DOTA Underlords had a pretty hefty balance update yesterday.

App Sales, Deals & Discounts

Only a few sales we felt worth highlighting this week:

  • Star Traders: Frontiers is currently at its best price this year to date at $3.99 on both iOS and Android. This is an excellent sci-fi sandbox RPG, and well worth checking out, especially with the new update!
  • Night of the Full Moon, which has never been that expensive anyway at $0.99 is currently free on iOS and Android. It’s got several DLCs/IAPs, but it’s still a pretty good solitaire card game.
  • The excellent strategy card game Age of Rivals is down to $1.99 again, but only on iOS.

Space Grunts is also discounted (since Space Grunts 2 is imminent), but it’s not the best price it’s been, so beware of that.

Seen anything else you liked? Played any of the above? Let us know in the comments!

Posted on Leave a comment

Havok Physics For Unity Preview Released

Back at GDC 2019, Unity announced Havok Physics would be coming soon.  Yesterday, Havok for Unity was released as a preview package in the Unity Package manager.  The Havok physics implementation is built on the DOTS framework therefore you will require Unity 2019.1 for higher to run it.

Details of the Havok preview from the Unity blog:

When we first set out to define what the future of physics would look like with our Data-Oriented Technology Stack (DOTS), we sought a partner that shared the same core concepts and values as us. Through our partnership with Havok, we were able to leverage DOTS to deliver the highly optimized, stateless, entirely C#, and performant Unity Physics. We also knew that some of you would have more complex simulation requirements, needing a stateful physics system. For that reason, we knew Havok would be the perfect solution to integrate into Unity for those high-end simulation needs.

Some of you might be asking, “Ok, but why did you make two systems instead of just one?” We know that our users have a plethora of different use cases, and we wanted to give everyone a choice based on what their needs are. For some, Unity Physics will suffice, while others will want the benefits and enhanced workflows of Havok Physics. Ultimately, there is no right or wrong choice, as we illustrate later in this blog post. You can switch between either solver without having to reauthor all of your content completely.

An obvious question you may have is, why should I choose Havok over the new Unity physics engine?  This is explained in the Havok documentation:

  • Higher simulation performance : Havok Physics is a stateful engine, which makes it more performant than Unity.Physics for scenes with significant numbers of rigid bodies, due to automatic sleeping of inactive rigid bodies and other advanced caching techniques (typically 2x or more faster).

  • Higher simulation quality : Havok Physics is a mature engine which is robust to many use cases. In particular, it offers stable stacking and a solution for smoothing out contact points when rigid bodies slide quickly over each other (known as “welding”).

  • Deep profiling and debugging of physics simulations using the Havok “Visual Debugger” standalone application (available on Windows only).

You can learn more about the Havok preview in the video below.  In addition to an overview of what Havok physics is all about, it also covers the installation process and illustrates how to configure and run the Havok Visual Debugger.  The example repository used in the video is available here.

GameDev News

Posted on Leave a comment

Daily Deal – Armistice Sale, up to 80% off

The Armistice Sale is back this year, promoting non-violent gameplay in support of children affected by the world’s deadliest conflicts. War Child UK & Children in Conflict have pulled together a bunch of games that are either non-violent or have been modified as part of this year’s Armistice campaign (like Sunless Skies).

Participating games have pledged a portion of their proceeds to these organizations in order to help support children affected by conflict. You play, so every child can.

* Offer ends November 12 at 12AM PST

Posted on Leave a comment

Minecraft Earth Early Access Available in Nine Countries, now includes the UK

By Joe Robinson 06 Nov 2019

People of the UK, your time has come! The Early Access for Minecraft Earth has finally landed upon the beaches of the British Isles. It is the ninth country to get access to the open beta, joining South Korea, Canada, the Philippines, Australia, Mexico, Sweden, New Zealand and Iceland. No word yet on when the US is going to be given the green-light, but it shouldn’t be too much longer.

Previously, you could only have played Minecraft Earth if you lived in or around London and had signed up for the Closed Beta, which only had limited functionality. If you were playing around with the CBT you can still log into the game – the client will just need to download some additional files and you’ll be good to go. As far as we can tell your progress will also be saved, so there’s been no reset this time.

minecraft earth early access uk

The Early Access has more and is closer to what the final game will look like, with the new features such as:

  • Adventures – small slices of procedurally generated, limited-time Minecraft worlds that you play in augmented reality in life size and are just one of the experiences that are optimized for social multiplayer
  • New mob variants, smelting and crafting – like the *adorable* Muddy Pig, Moobloom, Jumbo Rabbit and Cluckshroom, we’ll have new friendly and hostile mobs for you to meet. Through smelting, you’ll be able to work ores into ingots and with crafting you’ll get to create items you need (if you have the right materials of course), instead of having to collect the items outright.

There’s an official blog post from MineCon the end of September that goes into more details regarding the Early Access build, otherwise go to either the iOS or the Google Play store to get started.

Original Story: The Minecraft Earth Closed Beta Test has been trundling along now for a couple of months now, finally releasing on Android at the start of September. It’s only been available in a few cities… although I wonder how loose they’ve been with the geography restrictions. I live about an hour outside of London, for example, yet I was given access not long after it hit Android.

Still, the main question on everyone’s mind is – when is it going to be out for realsies? The answer is soon! Sort of! At this year’s Minecon event that was held in Nashville, Mojang revealed that the Pokemon GO-like augmented reality game would be rolling out in October… into Early Access.

That’s not quite what ‘released’ means, and since Early Access is practically a Beta still, I guess you could say Minecraft Earth is transitioning from a Closed Beta to an Open Beta this October. Yay? The Early Access build is supposed to have more features than the current beta version, but we don’t know the specifics yet. A final release date of Spring 2020 has been bandied about, but I expect that to change as the game gets into the hands of more players.

What we do know is that this Early Access program is going to be a global roll-out, eventually. Smaller markets will get the game first to act as testing grounds (as is traditional), and Mojang will reportedly be adding in new territories every week or so. The entire world should have access to the game by the end of the year.

MC Earth Sample2

We’re not sure what this will mean to users already in the CBT in the ‘Famous Five’ cities currently with access – we’ll have to get back to you on that.

As before, iOS and Android users can re-register now via the official website, or via the app stores, if you haven’t already.

Posted on Leave a comment

Now Available on Steam – Conception PLUS: Maidens of the Twelve Stars, 10% off!

Conception PLUS: Maidens of the Twelve Stars is Now Available on Steam and is 10% off!*

Itsuki Yuge is suddenly summoned to the magical world of Granvania to save it from evil Impurities. To return to his own world, he must save this one with the help of his Star Children born between him and the 12 Star Maidens!

*Offer ends November 12 at 10AM Pacific Time

Posted on Leave a comment

November 2019 Free Unreal Engine Assets

Excellent news for Unreal Engine developers, we have another year of Unreal Asset Marketplace giveaways!  This consists of 5 assets free for the month (and yours forever if “purchased”) as well as 3 asset packs that are free forever.

This month’s content consist of:

Free For November

Free Forever

In addition to the giveaway, they are running an appreciate sale on Nov 5th and 6th, featuring assets from last years giveaways for 50% off.  If you are interested in learning more about these assets, be sure to check out the video below. 

GameDev News

Posted on Leave a comment

Bastion returns and is currently Free on iOS for a Limited Time

By Joe Robinson 05 Nov 2019

You may remember back in September we gave you the heads-up regarding Bastion, Supergiant Games’ popular action-RPG and one of 2012’s best mobile games. Due to the transfer of publishing rights from Warner Bros to Supergiant themselves, the original iOS version needed to be delisted. If you had it on your device at the time you can still play it, but if you don’t you won’t be able to access that version of the game or your save-game data anymore.

Fear not though, it’s already returned in a new version.

That nu Bastion is free-to-download where you get to play the beginning for free. A one-time unlock IAP is needed for the full game, but that is currently also free for a limited time – it will be $4.99 at full price. This new version comes with iCloud save support, Game Center achievements and new game plus, amongst other improvements.

The only downside from switching over to this new version is that you can’t keep your save-game data. Supergiant published a full FAQ back when the news first broke about Bastion, if you still have questions, otherwise as mentioned the new listing is available to download at your leisure.

When was the last time you played Bastion? Do you plan on giving it another go? Answers on a postcard!