Pages: 1
Author Topic: Infrastructual Changes  (Read 10790 times)
Offline (Male) Josh @ Dreamland
Posted on: January 14, 2018, 11:50:21 am

Prince of all Goldfish
Location: Pittsburgh, PA, USA
Joined: Feb 2008
Posts: 2950

View Profile Email
Hi all,

I have some happy news to share regarding some changes to the ENIGMA codebase. Cheeseboy, Robert, and I have been making some relatively big changes to the infrastructure of this project, lately. You (I hope) haven't noticed so far, because these changes are mostly internal cleanup, code health, and productivity changes. Since we fixed the Travis-CI build a few months ago, Robert has added an AppVeyor build. With the new assurance that a change will not break other platforms, we have been cleaning up the codebase and moving things around. We have had minor regressions, which is why I'm in the process of writing a regression test suite on top of our build tests. But for the first time in this project's history, all contributors are submitting code to branches instead of directly to Master. Our build has been green since we fixed it a few months ago. This is huge news for us, but doesn't directly affect users.

The downside is, of course, the minor regressions. And we're about to have much bigger changes.

What you need to know:
Some dependencies will be added to the project. We are going to stop baking GLEW into our source, for example. LateralGM will also be updated. We will provide instructions on how to obtain the latest dependencies when that time comes. I expect us to just ship a new portable zip that everyone will need to update to.

A more comprehensive list of changes:
  • In the coming weeks, we plan to completely change the way LateralGM (and other IDEs) communicate your game data to ENIGMA. We will use a flatbuf-based system instead of EnigmaStruct, which will be removed.
  • As I mentioned, Cheeseboy has removed the GLEW source from our source tree. You will soon need to obtain it yourself (probably by downloading a new portable zip). Advanced users can install it through MSys on their own.
  • ENIGMA now writes a .desktop file on Linux alongside built games. This serves as a launcher for the game, and enables users to more easily set their own game icon.
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Offline (Male) hpg678
Reply #1 Posted on: January 14, 2018, 04:55:19 pm

Location: Barbados
Joined: Mar 2017
Posts: 283

View Profile Email
[ENIGMA now writes a .desktop file on Linux alongside built games. This serves as a launcher for the game, and enables users to more easily set their own game icon.]

This is absolutely fabulous. I'm been keeping abreast with the relevant changes and I'm happy to see some attention being made towards the LINUX side of ENIGMA.
 As it is, one can do a 'complete' game in the Windows version as oppose to the LINUX version. Windows API's are easier to incorporate than LINUX APIs. Indeed one has to do more work, and be a little creative as well. This is not a complaint or rant. In short it makes me more creative and better in trying to find a solution.

In your process of re-vamping the project however, there are two aspects, if you have the time to improve on for the LINUX version

  • String manipulation and getting input from the user
  • Dialog functions
Okay, so perhaps there are 3 aspects. There some aspects in Using 3D functions, resulted in strange resulted, reversed and difficult to do in the LINUX version. I didn't mention them before anywhere because some I've worked around them, didn't use or I've written of as being my fault. Yet when I replicated them in the Windows version, they were fine.

[compromised account]
Offline (Unknown gender) time-killer-games
Reply #2 Posted on: January 14, 2018, 08:03:22 pm

Offline (Unknown gender) Wendigo
Reply #3 Posted on: January 15, 2018, 03:15:06 am
Joined: Apr 2015
Posts: 42

View Profile
Wow that's great news. I really enjoy using this engine.
Offline (Male) rcobra
Reply #4 Posted on: January 16, 2018, 07:44:56 pm
Joined: Nov 2015
Posts: 67

View Profile WWW
It's great news
ps.sorry for my english
Offline (Male) Goombert
Reply #5 Posted on: January 18, 2018, 04:12:58 am

Location: Cappuccino, CA
Joined: Jan 2013
Posts: 2993

View Profile
This is a little bit related: tonight we got Travis CI including some Mac tests. However, we had to allow them to fail and the build to complete without them. So some PRs may show green, but the Mac tests are still queued.

There's really nothing else we can do about it because Travis just has very very few OSX instances because Apple's restrictive licensing requires the tests to be run on physical Mac hardware:

We may just have to end up provisioning our own Mac instance. But the way I see it is some tests for Mac is better than no tests, even if those tests only run once a year.

Regardless, our build times are back to 45 minutes for Travis and about 30 for AppVeyor!
« Last Edit: January 18, 2018, 06:46:17 am by Goombert » Logged
I think it was Leonardo da Vinci who once said something along the lines of "If you build the robots, they will make games." or something to that effect.

Pages: 1