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 - Josh @ Dreamland

Issues Help Desk / Re: Problem with instance_deactivate_region
« on: June 23, 2013, 05:46:58 am »
While that code is 150% fatter than it needs to be, it is correct.

The player gets deactivated because the view does not instantly move to encompass the player. When your code starts, there is no player, and the view is still at (0,0). You then create a player, because one does not exist, but you create him outside of the view. You then deactivate everything outside the view, which hasn't moved.

That's why creating the player after calling your deactivation code will fix it.

« on: June 22, 2013, 06:55:54 pm »
I assure you this is not copy pizza, but original comment.

Issues Help Desk / Re: Problem with instance_deactivate_region
« on: June 22, 2013, 03:02:01 pm »
The view is always at (0,0) because you deactivate the player before the view can follow him. You can fix it by either creating the player object after deactivating instances, or calling [snip]instance_activate_object(obj_blagger)[/snip].

You're going to run into other problems, though, from sprites not animating while their owning objects are deactivated. You could fix that by having the controller object keep track of a frame count for all instances, if that's your only other issue.

Issues Help Desk / Re: Problem with instance_deactivate_region
« on: June 22, 2013, 10:40:43 am »
Nowhere in that entire file does the word "view" appear. It's probably for the wrong game; could you build your game in ENIGMA, then re-upload those files?

General ENIGMA / Re: License Exemptions
« on: June 22, 2013, 10:23:48 am »
The point of a technical definition is to define what is meant by an endorsement. In our case, we would specify that by "endorse," we just mean "permit" or "acknowledge," and then we have to define how we endorse it, eg, by keeping it in a list of endorsed IDEs.

General ENIGMA / Re: LGM IDE for android?
« on: June 21, 2013, 10:37:23 pm »
Considering Android is primarily Java, it really should not be difficult. But I don't know how to get Swing working on it. While I don't believe Android supports Swing at all, I believe the format it uses is similar enough that porting LGM should not be a huge problem. My main concern would be in maintainability; we don't want this process to involve a lot of duplicate code (preferably none at all) or prevent compile of LGM on a non-embedded system, but at the same time we want to be able to store the code together.

TGMG probably knows the most about this, but he's AWOL.

General ENIGMA / Re: License Exemptions
« on: June 21, 2013, 08:28:47 pm »

Issues Help Desk / Re: Enigma fails to start on Ubuntu 12.04
« on: June 21, 2013, 04:23:03 pm »
Design mode has been missing since R3; I'm not sure why there's still a button for it. Try using "Run" or "Debug" instead.

Issues Help Desk / Re: Enigma fails to start on Ubuntu 12.04
« on: June 21, 2013, 02:36:45 pm »
Could you paste the contents of the console, either here or on Pastebin?
That will help us diagnose the problem.

General ENIGMA / Re: License Exemptions
« on: June 21, 2013, 11:12:15 am »
That the exception must only apply to an "official" ENIGMA has never been something I feel is necessary. I see nothing wrong with a $49.99 AMGINE springing up, since its code would have to be GPL, meaning that we (or anyone) could easily copy their changes or fork their product and distribute it for free (once we get our hands on a copy, that is).

My concern isn't that we'll have a $50 GPL AMGINE; it's that we'll have a $50 closed-source AMGINE + exempted-GPL ENIGMA.

Our exception, without that clause, lets you link e-GPL code (the ENIGMA engine) against proprietary code (the user's game). This exception does not in any way discriminate the user's game from team AMGINE's improvements. So, let's say that the instance system has a gaping fault in it that causes segfaults in some common (but intended) case. Team AMGINE writes a replacement instance system, which is either (A) completely original and not licensed as GPL, or (B) based on the old system, and therefore still licensed as exempt GPL.

(A) Original and not licensed as GPL: Their fix is legally indiscernible from user code; we can not (or at least, do not) prevent linking against it while allowing linking against popular third-party libraries and user code. They can distribute their semi-proprietary fixed ENIGMA with the current version of ENIGMA's code, and continue leeching off of us until we rethink our license (after which they'll have to maintain the engine themselves). We'll never have our hands on their fix.

(B) based on the old system, and therefore still licensed as exempt GPL: This case is the easier case for us to leverage. Their code is exempt GPL, but they may have already linked it against proprietary code to create a module; the trick is that their module does not necessarily count as an executable per the conditions of our exception, so they may need to distribute the code as GPL or e-GPL. However, it is their option to distribute it as GPL with a license that excludes us. Basically, they'd do the thing that you don't want me to do. Their exception would allow their users to link against their code, and our exception would allow their users to link against ours. We lose.

So, is what I'm doing a fairly dickish? Yes. But I believe that it's all right to be fairly dickish when granting the right to take rights away, rather than being fairly dickish when granting regular rights.

General ENIGMA / Re: License Exemptions
« on: June 21, 2013, 09:47:03 am »

You can sell anything people are dumb enough to buy. You can put ENIGMA on a disc and sell it for $50, if someone wants to buy it. You can sell downloads of ENIGMA for $50. The GPL just says that if they then ask you for the source, you have to provide it. I could even add a price tag to ENIGMA, but it'd be stupid for people to buy it from here when they can get it for free from you. Stallman used to sell hard copies of Emacs for large sums of money, which people would buy either for convenience or to support the cause.

Users are free to distribute their games without crediting us in the game, by the GPL. But they must make the source available, and the applicable parts of the source will have our names in it. This exception makes it so they do -not- have to distribute the source.

To prevent forks of ENIGMA which do things we don't like—eg, strap on a price tag or implement a closed-source correction for something wrong with ENIGMA—I am tailoring this exception to only allow users to close-source their games if they compiled it with an "official" IDE ("ENIGMA-Endorsed Interface"). This means that if AMGINE wanted to fix something crucial in ENIGMA, and then sell their fixed version of ENIGMA for $50, we could tell them to fuck themselves; all user code (including their fix!) must be GPL.

The key is that GPL doesn't make it hard to sell code; it makes it hard for assholes to sell code. Now, the AMGINE team could distribute a $50 patch for the open-source ENIGMA, but then they'd have to maintain it to work with the latest version at all times. Depending on how bad we want that patch from them, we could decide how difficult to make their lives.


I might drop them a line, if I start feeling important enough to waste anyone's time.

General ENIGMA / Re: License Exemptions
« on: June 21, 2013, 09:07:18 am »
Right. This makes sure users can distribute their games without any attribution or royalty to ENIGMA, but that a $49.99 AMGINE will quickly fail, as all user games must be GPL unless we endorse them (which wouldn't happen unless they were paying us sufficiently, and even then, their code would have to be GPL + ENIGMA Exemption, too). Note that they are free to run a completely GPL version without us; they'd just have some politicking to do before they could allow their users to close-source their games, which would mean we'd have to approve of it.

If letting users open-source their games was not a to-do point for them, they could run a completely GPL fork of ENIGMA, though, which we'd be unable to pull without forcing our users to GPL their code. There'd be some political turmoil, there, but we'd get through it.

Issues Help Desk / Re: Problem with instance_deactivate_region
« on: June 21, 2013, 07:51:49 am »
How big is your game? I might ask you to attach [snip]ENIGMAsystem/SHELL/Preprocessor_Environment_Editable/IDE_EDIT_objectdeclarations.h[/snip]. Also, maybe [snip]ENIGMAsystem/SHELL/Preprocessor_Environment_Editable/IDE_EDIT_objectfunctionality.h[/snip]. I fear it might have declared those two variables locally, or is using them locally.

General ENIGMA / Re: License Exemptions
« on: June 21, 2013, 07:46:30 am »
You're assuming that the board members are fair. They don't have to be. There is no controlling body to enforce any system you suggest, and you can't just appoint one. The only legal claim to resources here is from the person who pays the server bills, and that's Ism and myself. We are the only people with the legal ability to take control of this website at any time.

There isn't even a structure for more people to have a say in this; at the end of the day, my name is on the bill, so even though Ism shares it with me, if the server goes unpaid, they come after me, and conversely, if I lose control of this server or its domain, I can regain it through them. I don't have the ability right now to divide that power up. So I will always be in a position to override any decision concerning this website, until such a time as I transfer its legal ownership to a new person or entity.

Ism might have a solution to this, as she doesn't believe in any governmental role. I don't have a simple solution.

General ENIGMA / Re: License Exemptions
« on: June 21, 2013, 07:33:19 am »
He has website access, which means he could change it. He wouldn't, though.

Shares are not easy to divide. And we don't have a system to ensure that everyone has a say proportional to their share; we don't have a controlling entity. A company has a CEO who can do whatever he wants. Free software projects, in general, do not have that. Though Canonical has Shuttleworth; look how that ended for them. So I guess it's a matter of appointing a hierarchy if we want people's say to be carried out.

Even then, we might need a bigger entity to control succession. We might need to register ENIGMA as an LLC and list server access as an asset, to protect against the unlikely event that Ism, Gary, and I were all hit by a bus before anyone had a chance to pick up the torch.