Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Messages - Goombert

Issues Help Desk / Re: bug with data structures?
« on: February 13, 2019, 01:57:24 PM »
GM8 does the same, it's because you have the game setting "Treat uninitialized variables as 0" enabled.

Yeah, it sounds like you did actually find a legit bug that should be fixed. This is kind of interesting because somebody was just talking to me the other day about ids. Anyway, as I've been making aware, I am trying to focus most of my energy and resources at laying the foundation for the new IDE and have stopped working on LateralGM. I will leave it up to you whether you want to file the issue on LGM's tracker along with your reproduction steps so it doesn't get forgotten about.

Also, I want to recommend another workaround that may be a little easier for some people. First, make a backup copy of the project. Then select Resources->Check Ids which should ask you to defrag the ids, effectively resolving the issue. However, defragging ids can sometimes break certain projects if the user was hard coding resource/instance ids in their project. They might then have to do some refactoring.

Announcements / Re: New Dependency on Google Protocol Buffers
« on: February 12, 2019, 10:34:23 PM »
Alright, a small update to this, we've finally completed the transition to Protocol Buffers over some additional pull requests and Proto2ES is no longer part of the codebase. This means the compiler uses protocol buffers directly which is handed to it by emake and RadialGM. Tools like LateralGM that use the old interface still pass an EnigmaStruct, but it is first converted into a protocol buffer before the compiler builds it.

I have not benchmarked, but theoretically, the protocol buffers and any frontend tools that use them, including emake, should now be reaching maximum build time performance. For the time being, tools like LateralGM will continue using the deprecated EnigmaStruct interface, subject to binary-compatibility breaking changes. My next step is to finally switch us to libpng and remove lodepng from our codebase before moving on to the next big things. This should bring even quicker build times!

Tips, Tutorials, Examples / Re: looking for shaders
« on: February 12, 2019, 06:51:10 PM »
Hey, you just wait until you see what I am going to port over to ENIGMA very soon. It's one of my projects in MonoGame... very exciting. I am going to port it in an attempt to add HLSL shaders and improve the GLSL shaders. I will have it working in 4 graphics systems. Just stay tuned for that, lots of interesting things coming. Also, that sounds interesting, I had wanted to build a SimCity like game in ENIGMA for some time, but presently all I have is my 2D SimCity tile-engine working that was made by me in GM a long time ago now.

Tips, Tutorials, Examples / Re: looking for shaders
« on: February 12, 2019, 06:49:43 AM »
Alright, as promised, here I am with a very simple GLSL shader example. So the first thing to mention is that shaders in ENIGMA, since they were first added, are very pure. This means we have less abstraction on top of them so you'll need to do things like declare the GLSL version at the top. I have plans and intentions of improving shader support and compatibility quite a bit soon. Since we've largely revamped our graphics systems and solved some of the more basic problems... this is the next logical step as I've been incrementally adding DX11 support.

You'll find 3 files attached to this post. is a GMX that contains a GLSL 110 shader which works in our OpenGL1 graphics system. Shaders will not be saved when saving your project in the GMK format because it did not support them. The shader itself, while GLSL 110 compliant, is not GMS compatible. It will therefore not work in our OpenGL3 system, which is structured more like GMS's shaders. This is one of the areas I plan on improving going into the future. You will also find toonv.glsl and toonf.glsl which is a 3D toon shader that also works in our OpenGL1 graphics system if you would like to use it.

If you have any more questions, please feel free to ask, and I will make sure that when I get to improving the shader support that I make an announcement.

Tips, Tutorials, Examples / Re: looking for shaders
« on: February 12, 2019, 12:25:48 AM »
Hi impo! I can make you a simple GLSL shader example that's GMS compatible. Give me a bit to prepare one. HLSL shaders are not in yet, I attempted them before but had to remove them due to dependency on the legacy D3DX. I will be readding HLSL shaders later using the newer API so I can port my one terrain engine, based on Battlefield DICE's, as a proof of concept. I'll post back later.

Announcements / New Dependency on Google Protocol Buffers
« on: February 02, 2019, 09:54:42 PM »
I wanted to make sure to cover this with an announcement to keep everyone in the loop. We have now rearranged the backend to the compiler so that it now uses Protocol Buffers directly. EnigmaStruct is now deprecated and should not be used for building new command line or frontend tools that integrate with ENIGMA.

We also had to come back and address a few regressions from this change in several games. With this, there have been no other new regressions discovered.

EnigmaStruct is deprecated rather than obsolete because it is still used by LateralGM. It will likely remain that way as my development attention is staying focused at RadialGM now which uses the new Protocol Buffers directly for its data model. One advantage to the new Protocol Buffers interface is that binary compatibility can be maintained when changing the protos. This is not true of the old EnigmaStruct, and thus, tools that use it will be subject to frequent breakage as a result of the lack of binary compatibility.

Long story short, you will now need to install Google Protocol Buffers when setting up ENIGMA or the next time you update an existing installation.
Code: (Bash) [Select]
# MSYS2 64-bit
pacboy -S protobuf:x
# MSYS2 32-bit
pacboy -S protobuf:i

I have also updated the Ubuntu/Linux installation instructions as well as the easy method script with the help of TKG. You will need a newer protobuf version which is why we recommend installing the dependency from Maarten Fonville's PPA which is where our Travis CI build obtains it.
Code: (Bash) [Select]
sudo add-apt-repository ppa:maarten-fonville/protobuf
sudo apt-get update
sudo apt-get install libprotobuf-dev protobuf-compiler

You will also need to do a clean build of the compiler.
Code: (Bash) [Select]
make clean
make -j4

Works in Progress / Re: Mystery Mansion
« on: January 30, 2019, 04:35:13 AM »
If you are talking about DirectSound not playing short WAV files, you may seriously want to update hugar, they weren't kidding when they told you I submitted a patch for it recently. (Y)

Works in Progress / Re: Mystery Mansion
« on: January 19, 2019, 12:18:32 PM »
I am really excited for the release of your upcoming game hugar. I have to say, I like the theme and I think it's going to be interesting to see how the story develops as the game progresses. I look forward to a story directed by you. The gameplay mechanics discussed sound similar to others we've been seeing lately, with some additional twists. I hope that you will employ enough variety to differentiate the game. I am looking forward to what the bonus items will be and discovering them in the game. I really like the preview screens and have to say the art work looks good so far. I'll be watching and waiting for the first release!

General ENIGMA / Re: Great News for the NEW YEAR
« on: January 01, 2019, 02:44:36 AM »
Oh my gaaaahddd, I went to bed in 2018, I wake up in 2019 and the EDC is fixed. Call the starship scotty because they're going to beam me straight up into the giant big ol' fat 3.14 in the sky.

Now that I got that out of my system, I just want to say I am really happy and thrilled with all of you lately. Excellent work on Josh's part, I am really happy he finally hammered all the gremlins out of the EDC so we can use it again. I am really proud and also greatful for your work on developing an offline manual that I know many people are going to be quite happy about hugar! TKG is clearly starting to mature into a skilled software developer, and a useful contributor now, as he continues to refine his development habits and practices to accomplish much larger and needed tasks like the SDL joysticks this week.

2018 has been a great year and I have it on good authority that 2019 is going to be even better! :eng101:

Works in Progress / Re: Project Mario
« on: January 01, 2019, 02:19:06 AM »
Minor update to this topic because I have run across the fact that my old Dropbox links have gone dead. I stopped using Dropbox about a year ago but have backed up all of my files from there. I spoke with Josh and asked him about putting Project Mario up on the EDC and he actually went so far as to fix EDC game uploading. I'm now hosting the project's source there.

I believe this is carried on from the ISO compliant version because I notice I use all forward slashes for filepaths instead of backslashes. Which is fine either way, GM8.1 should handle forward slashes just fine. To get this version to build on the latest master you just need to use the OpenAL audio system because the DirectSound audio system seems to have some issues with some of the WAV audio files.

Over the years since I posted this topic, ENIGMA has changed significantly. The only main issue I have found with running the game in the good old OpenGL1 is that Mario's head does not appear on the start screen. This is likely due to a change in the clipping planes of the projection function when I switched ENIGMA to GLM. Direct3D9 has also seemed to have developed some surface issues at some point. Regardless, I am generally happy that the game continues to work so well despite some of our massive overhauling of the models and everything (thanks continuous integration!).

Issues Help Desk / Re: [SOLVED]LGM/Enigma lib errors
« on: December 07, 2018, 10:15:16 AM »
That's good, everybody note this, I may have to tweak the Wiki a bit to mention that you should do it from the MinGW32 terminal for 32 bit.

Off-Topic / Re: Greetings, everyone!
« on: December 05, 2018, 12:41:19 AM »
Hey ProtoLink! I should mention I find it humorous that not only is your group Enigma, your name is also "Proto" "Link" and the entire new serialization mechanism we use in the new IDE is based on Google Protocol Buffers (aka "protos"). Anyway, welcome to the forum and I hope you have fun here! Our community members are extremely helpful so don't ever be afraid to ask for help.

Issues Help Desk / Re: LGM/Enigma lib errors
« on: December 05, 2018, 12:37:52 AM »
3. 64-bit CompileEGMF don't work on latest LateralGM.
I'm using portable Java 8.0 x32, packed with Launch4j, so, the installation and PATH for it is not needed.

This is the problem, you have to use a Java that is the same architecture as compileEGMf. A 64 bit Windows process can not load a 32 bit dll, and this is true for Java as well. If your computer can run the 64 bit version, then you should use a 64 bit Java with a 64 bit MSYS2, which actually will still allow you to build 32 bit games if you separately install the 32 bit versions of the packages at the same time (though nobody has really experimented with doing so yet). RadialGM will not have this issue.

Issues Help Desk / Re: RGM crashes on startup
« on: November 17, 2018, 04:07:15 AM »
This has since been resolved and was just temporary. Understand I may make a few more breaking changes like this as I refine the remote building of games in the server.

That said, I am not really ready for beta testing yet, so whatever people are doing at this point is not really supported. I'll be making an official announcement when everything is ready to go for the first beta.