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.
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 »
1381
Function Peer Review / Re: GML: All draw_text functions +(string_width, _height, _width_ext, _height_ext)
« on: April 26, 2011, 10:42:52 am »
Oh, I see. You're doing text wrapping. That's fine, I think.
The reason it's cutting in the middle of words is because you handle it at all letters, not just space.
Add braces around the indented block after "else if (str[i] == ' ')".
Once you do that, it will bring the complexity down to O(N) (Really, a synonymous O(2N), but that's a sacrifice I believe is necessary).
The reason it's cutting in the middle of words is because you handle it at all letters, not just space.
Add braces around the indented block after "else if (str[i] == ' ')".
Once you do that, it will bring the complexity down to O(N) (Really, a synonymous O(2N), but that's a sacrifice I believe is necessary).
1382
Announcements / Re: Quick Update
« on: April 23, 2011, 11:43:16 pm »
Painfully aware, MrGriggs. The others are taking turns fucking up the SVN badly. Use r710 until further notice. Thanks for the debug dump, though.
1383
Proposals / Re: ENIGMA Project Icons
« on: April 22, 2011, 09:44:30 pm »
Luis, your post made me genuinely laugh. Very apt; A+.
1384
General ENIGMA / Re: Compiling in Linux
« on: April 21, 2011, 04:40:39 pm »
Sorry about that, Joserc. We've been making some reparations to get ENIGMA working on Mac, iPhone, and Android out of the box. As IsmAvatar said, you can revert to an older revision that still works using the SVN up command. I recommend revision 710.
To check out new, use this:
svn co https://enigma-dev.svn.sourceforge.net/svnroot/enigma-dev/trunk enigma-dev -r 710
To revert, use this:
svn up -r 710
To check out new, use this:
svn co https://enigma-dev.svn.sourceforge.net/svnroot/enigma-dev/trunk enigma-dev -r 710
To revert, use this:
svn up -r 710
1385
Announcements / Re: Quick Update
« on: April 21, 2011, 01:40:40 am »
No problem. Good luck, TGMG.
@HaRRi- I apologize; it turns out you were right about draw_text misbehaving due to being passed a floating point number. I have corrected this problem in r710.
@HaRRi- I apologize; it turns out you were right about draw_text misbehaving due to being passed a floating point number. I have corrected this problem in r710.
1386
Announcements / Re: Quick Update
« on: April 19, 2011, 08:10:06 pm »
I pass mouse_x and mouse_y to the current draw_text. C++ can convert from double to int implicitly, it's just not as efficient as just copying the int over. I honestly still haven't made up my mind about that, though....
1387
Announcements / Re: Quick Update
« on: April 19, 2011, 10:51:13 am »
You may want to use double for trig-based ones, though the regular draw_text uses integers... Depending on how it looks, I may need to go back and write the metrics as float instead of int.
1388
Announcements / Re: Quick Update
« on: April 19, 2011, 10:29:52 am »
And you moved in the new ENIGMA.exe from CompilerSource? The old ENIGMA.exe doesn't know how to generate to the new spec. All of those are in Autoconf/wingcc_template.eyt.
I think you do have commit access, so feel free, whenever they work.
I think you do have commit access, so feel free, whenever they work.
1389
Announcements / Quick Update
« on: April 18, 2011, 11:15:47 pm »
I don't write many newsposts anymore, but I have some news for a few of those involved in the project who don't frequent the IRC. The rest of you who are interested can thank them for not showing up, because otherwise I'd have no reason to post this. These are our standings:
In the last three revisions, I have drastically changed a couple of the systems behind the compilation process of ENIGMA, largely for the sake of TGMG (though also for freezway, who wanted access to the widget functions before they are finished). These include the following:
In the Compilers/ eYAML files, the following are now honored by ENIGMA:
Furthermore, ENIGMA now passes a "Compile Path" to the makefile. What this comprises is the current platform name, and the target platform name, separated by a slash. For instance, Linux/Linux, Windows/Windows, MacOSX/iPhone. This can be accessed as $(COMPILEPATH) from the main makefile. It will be up to TGMG to use this to include a makefile from SHELL/Makefiles. They will be largely redundant, yes, but this will allow him to get complete control over the make process for iPhone and Android.
Unfortunately, I am quite sure the latest changes have broken Windows. I'll be on Windows myself in a minute to assess and fix it. In the revisions before this, however (around r698 or so), fonts were implemented. You no longer need to use font_add_sprite(). I mention this because I know HaRRiKiRi wanted to do something with them after the font resource worked.
Other than that, I know Polygone has been doing a good job keeping up with the Wiki. I don't think I've missed anything in documenting this new Compilers/*/*.ey and About.ey eYAML layout, but it could probably use touching up by a second person. New help with documentation always welcome.
So I'll be on Windows, then I'll see about getting back to my coercer.
Edit: All right, I've fixed Windows, as far as I can tell. If you update to the latest revision yourself (or via LGM), you must do the following:
And of course, in either case, delete the DLL from the main directory so LGM rebuilds it.
In the last three revisions, I have drastically changed a couple of the systems behind the compilation process of ENIGMA, largely for the sake of TGMG (though also for freezway, who wanted access to the widget functions before they are finished). These include the following:
In the Compilers/ eYAML files, the following are now honored by ENIGMA:
- resources: Where to write the resources. $exe = The executable module. I might change this to $game. Maybe.
- Build-Extension: The extension of the output file; this is recognized but not really used yet.
- Run-Program: What program to invoke to run the game. $game is the game file.
- Run-Params: What to pass to the above. $game is the game file.
- Run-output: Where the game is built for the Run function. "$tempfile" will let LGM pick.
Furthermore, ENIGMA now passes a "Compile Path" to the makefile. What this comprises is the current platform name, and the target platform name, separated by a slash. For instance, Linux/Linux, Windows/Windows, MacOSX/iPhone. This can be accessed as $(COMPILEPATH) from the main makefile. It will be up to TGMG to use this to include a makefile from SHELL/Makefiles. They will be largely redundant, yes, but this will allow him to get complete control over the make process for iPhone and Android.
Unfortunately, I am quite sure the latest changes have broken Windows. I'll be on Windows myself in a minute to assess and fix it. In the revisions before this, however (around r698 or so), fonts were implemented. You no longer need to use font_add_sprite(). I mention this because I know HaRRiKiRi wanted to do something with them after the font resource worked.
Other than that, I know Polygone has been doing a good job keeping up with the Wiki. I don't think I've missed anything in documenting this new Compilers/*/*.ey and About.ey eYAML layout, but it could probably use touching up by a second person. New help with documentation always welcome.
So I'll be on Windows, then I'll see about getting back to my coercer.
Edit: All right, I've fixed Windows, as far as I can tell. If you update to the latest revision yourself (or via LGM), you must do the following:
- Copy the new ENIGMA.exe from CompilerSource/Stupidity-buffer/.
- Delete gcc.ey from Windows/
- Rerun ENIGMA.exe
And of course, in either case, delete the DLL from the main directory so LGM rebuilds it.
1390
Announcements / Re: Recent Events
« on: April 12, 2011, 07:22:14 pm »
Nah, he probably rebooted after disabling it in his card properties.
But don't ruin his fun.
But don't ruin his fun.
1391
Proposals / Object grouping
« on: April 12, 2011, 11:18:13 am »
With documentation of a new format started, however incoherently, here, it's time I put to writing my plan for large games made with ENIGMA.
One of Game Maker's biggest downfalls is the sheer length of time it takes to save and load games, both in GMK format and in the EXE format. People with large projects suffer incredible wait times between pressing "Run" and seeing their game working, until they finally just keep all resources external. How can we fix this?
Most people with large projects, if not every single one of them (where "large" implies having lots of resources, not a stolen tutorial and 6 massive WAV-format music files) keep their resources well-organized within the tree. I was looking over the sources (acquired in multiple ways) of successful GM-made Metroid clones. Sprites were divided by player and by land, then by enemy... it was, as a trend, very well organized.
Cutting to the chase, my proposal is sprite_load_group("Crateria");.
Basically, when our new format is implemented, "compiling" large games will be as simple as unpacking resources from the zip. Or, as we're likely to add, compiling the standalone, duplicating the game zip, stripping the script directory, object directory, and manifest files (anything that would no longer be of use in a compiled game), and adding the EXE to that.
ENIGMA games would then, when the user calls sprite_load_group(group), just recursively add all sprites found in ./Sprites/group/.
Likewise, it would recursively unload them when the user calls sprite_unload_group().
This will require minimal modification to the original system, and will save many users an assload of hassle, which when you think about it, is the point of the ENIGMA project, anyway. Built-in support for massive amounts of resources, and keeping them external, is fundamental if ENIGMA is to offer something that Game Maker just fucking doesn't.
I mean, until one of those sodding idiots stumbles upon this thread and puts their programmers to work implementing it.
One of Game Maker's biggest downfalls is the sheer length of time it takes to save and load games, both in GMK format and in the EXE format. People with large projects suffer incredible wait times between pressing "Run" and seeing their game working, until they finally just keep all resources external. How can we fix this?
Most people with large projects, if not every single one of them (where "large" implies having lots of resources, not a stolen tutorial and 6 massive WAV-format music files) keep their resources well-organized within the tree. I was looking over the sources (acquired in multiple ways) of successful GM-made Metroid clones. Sprites were divided by player and by land, then by enemy... it was, as a trend, very well organized.
Cutting to the chase, my proposal is sprite_load_group("Crateria");.
Basically, when our new format is implemented, "compiling" large games will be as simple as unpacking resources from the zip. Or, as we're likely to add, compiling the standalone, duplicating the game zip, stripping the script directory, object directory, and manifest files (anything that would no longer be of use in a compiled game), and adding the EXE to that.
ENIGMA games would then, when the user calls sprite_load_group(group), just recursively add all sprites found in ./Sprites/group/.
Likewise, it would recursively unload them when the user calls sprite_unload_group().
This will require minimal modification to the original system, and will save many users an assload of hassle, which when you think about it, is the point of the ENIGMA project, anyway. Built-in support for massive amounts of resources, and keeping them external, is fundamental if ENIGMA is to offer something that Game Maker just fucking doesn't.
I mean, until one of those sodding idiots stumbles upon this thread and puts their programmers to work implementing it.
1393
Proposals / Re: Forums - Users country info
« on: April 10, 2011, 10:18:02 pm »
Okay, let's see what that did.
Enjoy?
Enjoy?
1394
Proposals / Re: Official Tutorials
« on: April 10, 2011, 10:06:33 pm »Quote
You can compile for Linux on Linux, and on any other system, but you'd have to be insane to do it from Windows or OS X. It's very difficult and annoying to do, and it's not worth it, because you can install any Linux-based OS for free and compile it and test it properly. It'll be easier to do, too, rather than building the program from scratch by yourself.This is why it's our job to make a patch (and distribute a third-party installer) that makes it easy for them.
But yeah, may never happen.
Quote
You can compile for OS X on a non-Mac OS, but running and testing on a non-Mac OS is illegal, basically ruining the point.The idea is that if it compiles, it'll work the same. So they can test for Windows with Windows, then compile for Mac and trust it works.
Furthermore, yes, Windows is horrible, but it's our job as developers to hide that from the fragile userbase until Linux grows some stones (and, more importantly, some market share).
1395
Proposals / Re: Official Tutorials
« on: April 08, 2011, 12:22:39 pm »
I'm becoming a fan of video tutorials; maybe YouTube will eventually be our friend. *creates account*
As for tutorials like click-the-clown, we have a nice plan for that.
As for tutorials like click-the-clown, we have a nice plan for that.
Pages: « 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 »