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

16
General ENIGMA / Re: Roadmap?
« on: June 11, 2019, 10:51:01 PM »
Alright, a couple of things, because I just reproduced it. First, I tried building an empty game and running it but that doesn't seem to work for me. The exe just crashes when I try to double click it. So I tried building the 3D Cubes Demo in compile mode and that worked. I press backspace and bam, instant crash. We'll have to figure it out.
https://github.com/enigma-dev/enigma-dev/issues/1743

Edit: Ok, I tracked it down to the addition of backspace behavior for keyboard_string so it should be an easy fix.

17
General ENIGMA / Re: Roadmap?
« on: June 11, 2019, 11:50:50 AM »
Daz is pretty accurate about his analysis. Everybody wants a roadmap, so here, I'll lay it out for the next 1-2 years.

* Grow the CI coverage by another 25% over the next year. This includes completion of binary buffers and testing of them. Coverage of objects, inheritance, and collisions.
* Continue improving and maintaining the ENIGMA engine and LateralGM. This includes new features and smaller fixes as users request them.
* Finish the EGM writer thus completing the EGM library. Test EGM project serialization to keep it working.
* Finish refining the asset compilation stages so that emake becomes a functioning remote asset compiler. This includes finalizing ideas of how RadialGM and the like should attach assets to the exe locally or remotely.
* Continue developing RadialGM into a stable and usable IDE. This includes completion of additional editors, refinement, and integration of the above completed APIs.

Quote from: Darkstar2
I would like to see resolved in ENIGMA is that nasty backspace bug
I gave backspace some testing today, couldn't see anything different from the regular input. Still need to be able to reproduce it before it can be fixed. I assume the reason you are having trouble with this at all was when we introduced SDL since the input logic was generalized. It's very easy to make mistakes when refactoring existing code when that code is not tested. Though, testing input is a little trickier, also why GUIs are tricky to test.

18
Programming Help / Re: How to access arrays stored in a ds_list ?
« on: June 10, 2019, 05:39:03 PM »
That's just the syntax checker being greedy about what's a script. Needs a fix and then a CI test to keep it working.

19
Programming Help / Re: How to access arrays stored in a ds_list ?
« on: June 10, 2019, 02:48:39 PM »
Hey, that's great! I will still look into fixing the old EGM format saving/loading from the lgmplugin for you. It just makes it easier to save that information.

PS: Also my recommendation about using lists is actually the same as Mark Overmars in the GM8 manual. It's true for scientific reasons that the data structures are faster when you consider operating on lots of data.

20
Programming Help / Re: How to access arrays stored in a ds_list ?
« on: June 10, 2019, 08:51:41 AM »
Everything hugar said is correct. The following part of the code I gave him can actually go wherever you want it, in the create too. It is copying the array to the list, element by element.
Code: (EDL) [Select]
for (var i = 0; i < array_length_1d(arr); ++i) {
    ds_list_add(list, arr[i]);
}

So the difference between ENIGMA/GM var arrays and data structure lists is subtle but important. In ENIGMA the var arrays are actually Lua tables of variants. The data structure lists are C++ std::vector of variant. Variant is the light weight type which is single dimensional in the case of reals. It uses NaN Boxing to store floating point and scalar values.

Var array functions:
https://github.com/enigma-dev/enigma-dev/blob/master/ENIGMAsystem/SHELL/Universal_System/var_array.cpp

Data struct list functions:
https://github.com/enigma-dev/enigma-dev/blob/eabb1b474d5abf7e2d58ae3eccf4ba875208a9c9/ENIGMAsystem/SHELL/Universal_System/Extensions/DataStructures/data_structures.cpp#L1203

In general, you probably want to use lists exclusively over arrays since they can not only be passed around by id, but their operations are more efficient. They won't be much different from var arrays, they just don't have to do as much work and are written in C++. And ENIGMA again is actually implemented close to GM so you should expect similar results going in the direction of any of the above.

21
Programming Help / Re: How to access arrays stored in a ds_list ?
« on: June 10, 2019, 07:03:42 AM »
We don't have that list function yet, but i can actually add that for you, that's doable now! I'll see if I can get to it tonight.

22
Issues Help Desk / Re: Error implementing struct
« on: June 01, 2019, 03:44:47 AM »
If I recall correctly, I think it's possible the definitions frame may be bugged and isn't saving. In other words, it reverted immediately after you closed the game settings frame. I am planning to look into this area soon now that I have fixed included file editing, but am extremely busy. I will update if I get any of it done, thank you for your patience. As you are discovering, ENIGMA may be rough around the edges, but this situation is drastically improving with our introduction of continuous integration testing.

23
Programming Help / Re: Error with bitmask operations
« on: May 30, 2019, 06:56:08 PM »
That's good. Your next problem is not solvable yet, and is a feature request in ENIGMA. We do not yet support data structure accessors or the associated operators. Our plan is to add normal accessors and the GML variant will be purely syntactic sugar. We just haven't had time to get to it yet. Please be patient, thanks!

24
Programming Help / Re: Error with bitmask operations
« on: May 30, 2019, 06:27:56 AM »
That's interesting. I would actually consider this a bug sort of. We are clearly storing x/y as collision system scalar which is just a double. There's no such thing as bitwise operations on floating point numbers. ENIGMA would only be able to get around this by changing the x/y of every object to var (eh, that'll slow it down a bit) or making a new type of double that allows binary operators.

Here's a temporary workaround:
y = ((unsigned int)y&$ffffffe0)+32;

25
Issues Help Desk / Re: fatal error: ffi.h: No such file
« on: May 29, 2019, 01:56:37 AM »
A fix has been merged, sorry about the problems, and thanks again to Sociopart!
https://github.com/enigma-dev/enigma-dev/commit/ad7acb3f67a207d3e0fc1da71a2b60536984fab3

26
General ENIGMA / Re: Hardware Diagnosis
« on: May 18, 2019, 01:23:04 PM »
I helped him on Discord, I think his Mesa driver was out of date, but we did get GL3 working again for him. If you look at the glew info he pasted, it clearly supports GL 3.0, not 3.3. Our GL3 system is 3.3 minimum but I can't recall exactly why. I just remember TheExDeus asking us about making it the minimum.

27
You are very welcome, sorry I didn't reply, and that's good, that's why the Wiki is now explicit about telling you which MSYS to run in.

28
Issues Help Desk / Re: Cannot compile the source ("solved")
« on: May 17, 2019, 08:48:12 PM »
Alright, I've sent a pull request which has just been merged into master and should address this. We now filter out the GRPC interfaces, which should stop the makefile from looking for the GRPC plugin.
https://github.com/enigma-dev/enigma-dev/pull/1724

If anybody has more problems please post about them here or on GitHub so we can find them and get them resolved. Cheers! (Y)

29
Ok the libpng/flipped saving is now fixed, just wait for it to be reviewed.
https://github.com/enigma-dev/enigma-dev/pull/1728

30
Thanks for the tip hugar! If I may ask, is this suggestion a result of issues you faced with screen_save function which is implemented? I actually ran onto this myself working on the screen cleanup which will be merged soon. If you save as bmp instead of png, it may fix it. I will send a pull request to fix it after the cleanup is finished.
https://github.com/enigma-dev/enigma-dev/pull/1725