Status Update: Native C++ FTW

I just can’t wait to see a native C++ build. The game runs rather poorly on my high end PC. Added performance will be a balm to my soul :stuck_out_tongue:

Super psyched to see some of the gameplay elements start to make it in too. I like building games, but Boundless’ RPG elements are what enticed me to drop $250 for a pioneer pack for me and my wife, not the building aspects.

5 Likes

Cant wait for it

Can’t wait to sink into the Soundtrack - … Damn, now you have me again … screw you! ^^

1 Like

Happiness overflowing

1 Like

I have absolutely no idea what you mean by that. The current, most-extant version of C++ is C++11. That doesn’t make it “fairly modern”–that makes it modern. C++ 17 is (very much) yet to be–although Microsoft is taking a stab at it, and C++ 14 is mostly not implemented. (I’m still waiting for automatic function type deduction and generic lambdas. drool)

I have no idea what GNU is doing, I have to admit. (Okay, I just looked it up. The features are apparently still experimental, and there aren’t a lot of them. It’s a complex language, and these things take time. They do have some support for automatic function return type deduction, though.)

So I stand by my earlier statement. (Like this is worth arguing over. Can we just order pizza instead? With :bacon:? )

3 Likes

I was pointing out that being the newest part of a series does not necesarily mean being modern. (As space empires is a rather old discontinued series) as C++11 was released soem time ago it can easily be defined a fairly modern specification.

From what you said it seems to be inarguably the most functional version though.

And I stand with mine, can I get a standard margarita instead?

1 Like

@james: For the sake of completeness … could you publish the status update as news on the webside ? it looks much better if people can see you are working on something :slight_smile:

1 Like

Actually I was hoping to update the website to automatically pull the items from the devlog + announcements categories. This would stop us needing to post them twice, and also get all user comments into a single location.

Either way I agree that we need to keep the news updated.

9 Likes

PS4 beta confirmed after steam c++ beta???

Looks like i will have to buy a PC Beta version too to try out the game pretty soon :wink:

Are you moving all game logic off of JS, or just engine bits? Seems hard to avoid some level of (interpreted or compiled) scripting in a game (monster AI, ???)

Yes. As the AI runs on the servers and we want to full the worlds with players + entities (creatures) there is a significant win in implementing the logic in C++. Say 100 players are online per world, and we simulate 100 entities in a 100m radius around the player, then the server needs to simulate 100 x 100 = 10000 entities. This scale makes it a win. If the game was only simulating 100 entities in the client it wouldn’t be so important.

3 Likes

I added “fairly” to “modern” because I didn’t want some smart-alec telling me that C++11 wasn’t modern! But it’s good to see that we have so many tech savvy community members.

– tl;dr –

Whilst we have flexibility with compilers on Linux and Mac OS X, we’re much more restricted with the PS4 toolchain. Thankfully it’s still fairly modern.

  • On PS4 the compiler is based on clang 3.6.
  • On Linux we use both GCC 4.8 (part of Ubuntu 14.04) and clang 3.6 to align with the PS4.
  • On Mac OS X the toolchain is Xcode 7.2 - based on LLVM 3.7(?).
  • On Windows the toolchain is Visual C++ 14.1.
  • We plan to switch to clang 3.7 on PS4 and Linux once it’s made available by Sony.

But as you point out, expecting a fully C++14 or C++17 compliant compiler across all the toolchains would be a pointless risk - given the features we’d take advantage of.

2 Likes

How do you script the AI ? Years ago i made great expirences with LUA (used it for the simulations of a swarm intelligence) which is a native C/C++ scripting language with good performence and easy use :slight_smile:

1 Like

They use LUA for creating mods for WoW as well.

yeah … the performance is really good and it’s easy to handle and lightweight. if @devs (would) use it this for scripting parts it would accelerate development for sure.

That’s all super exciting, but I’m most excited about a native C++ application. It’s pretty amazing what Minecraft can do with Java, but it won’t hold a candle to native C++ for speed.

So, will the native beta be Microsoft-Windows-only still, or are you willing to get cross-platform feedback early this time so it’s not an afterthought or an Arkham Knight redux?

The Steam version currently supports Windows and OS X; I think it’s safe to assume that the native C++ build will also target both of those. Also, it sounds like we’re unlikely to get a PS4 beta purely because Sony doesn’t have a great channel for doing that.

(Also, the devs do much of their actual work on Linux, which I suspect helps them build the game in a pretty platform-agnostic way)

2 Likes

Ambition is to deliver C++ beta and release in parallel on Windows and OSX. (It’s my personal ambition to get the Linux version out as well.)

As @nevir says, there isn’t the infrastructure for EA on PS4 at the moment. But we talk with Sony regularly about opportunities in this direction.

8 Likes