Patreon reward version released!
Community Forums/Monkey2 Talk/Patreon reward version released!
| ||
Hi, I have just posted a message to my Patreon backers that includes a link to a VERY rough pre-alpha version of monkey2. This will probably be contentious, but it is meant to be a simple reward to everyone who has shown support for the monkey2 project so I wont be making this available to the general public just yet (although it IS still open source, so if you ask nicely maybe someone will send you a copy). It is IMO borderline unusable(!), but it does hopefully give a glimpse of the direction monkey2 is going in. The next version will be much more functional, and will more than likely be available via github. Bye! Mark |
| ||
Great news! Just downloaded it, so I will dig into it as soon as I have some time. I like what I see so far, especially those sdl2 and emscripten folders :) |
| ||
Sooooo Excited !! TYVM! Mark, you should probably post your preferences about people reporting bugs and such, I can imagine the the Monkey2 forum topic getting very messy quickly. I suspect the better option would be for people to hold off reporting any bugs until an official alpha status IMO. yay!!!! Congrats Mark! |
| ||
> I suspect the better option would be for people to hold off reporting any bugs until an official alpha status IMO. There's a note to that effect in the README, although I suspect it'll go largely ignored! |
| ||
> especially those sdl2 and emscripten folders :) I've basically just done enough to get an SDL window open here, but it was also a good exercise to get some extern API stuff working. |
| ||
struct_test.monkey2 made my week. Struct and Operator answers my two biggest "make my life easier!"-isms with Monkey. Followed by func ptr (and eventually lambda). I don't quite get the slot one. I get the idea, not the mechanics but I didn't look at it very long to digest it. Edit - The only minor thing is it'd be nice to say "Vec3(1,2,3)" instead of "New Vec3(1,2,3)" but that's minor. New Vec3 is the C#/Java way, I'm used to the C++ way of just Vec3. But I have no gripes using New Vec3 to keep it consistent with classes. I always lean towards the least amount of chars that I have to type. :) |
| ||
Cool! NOT a bug report, but is emscripten meant to build yet? I can run em++ from a command line and get a response, so can confirm em++ is working [EDIT] Maybe just needs a reboot... [EDIT: Yep!] |
| ||
> The only minor thing is it'd be nice to say "Vec3(1,2,3)" instead of "New Vec3(1,2,3)" but that's minor. Still not decided about this. The big plus for sticking with new is that it doesn't introduce any extra syntax - generic code can create objects the same way, and there's no confusion between ctors, casting (which may well change - casting a value could also be thought of as constructing a new value anyway) and function calls. But I haven't really given this a whole lot of thought as yet. > NOT a bug report, but is emscripten meant to build yet? Yes it is, and does still here. Can you try adding a Print GetEnv( "PATH" ) to mx2cc to see if emscripten looks like it's in there? |
| ||
This will probably be contentious, but it is meant to be a simple reward to everyone who has shown support for the monkey2 project Sounds fine, as a non-Patreon (yet), I'm totally fine with this and its a nice idea. With SDL stuff can MX2 use the runtimes binaries or only source code? |
| ||
>Still not decided about this. The big plus for sticking with new is that it doesn't introduce any extra syntax - generic code can create objects the same way, and there's no confusion between ctors, casting (which may well change - casting a value could also be thought of as constructing a new value anyway) and function calls. But I haven't really given this a whole lot of thought as yet. If it stays status quo, I won't complain. One of those things where I'd prefer it one way, but not gonna push for it knowing there's a master plan behind everything. The gc-less pass-by-value was the huge thing to me, and I have it! |
| ||
Just got my copy! Happy joy joy! Off to explore. :) |
| ||
Yay, got the SDL2 window demo going on desktop. :) Having issues with emscripten and python but MX2 lives! Will Monkey 1 and 2 live together like it is now (via TED); cause me like. :) |
| ||
My pathetic excuse for a VM on my MacBook Pro ran out of diskspace trying to install all the new stuff. Gonna have to try this on the PC machine.... |
| ||
Not reporting a bug, instead wondering if I have emscripten or python installed correctly or maybe i am missing a dependency. I get this error when building for emscripten (Win 7 64bit). Just FYI. Edit: Using python 3.4.3 Should I be using python 2.x.x with emscripten? |
| ||
Haven't tried it yet, but can .monkey2 files use .monkey files? And if so, is there a #If check so we can put MX2 code into a common module used on both MX1 and MX2 projects? |
| ||
is there already documentation included ? |
| ||
no. Only source files. |
| ||
There's a short readme. |
| ||
Regarding new style Property "The above way just seems very monkey-ish to me. Still open to ideas here though..." The new Property feels way more Monkey than Method .. Property. I like it. |
| ||
Then i have to wait, i need some good documentation :) |
| ||
@Richard Betson: If you're having problems with emscripten. I would suggest checking out the emscripten requirements. Another thing do not mix 32bit and 64bit tool chains, and the use of VS 2012/2013 is out until they update their end. As I do not have access to the pre-alpha, I cannot give much assistance. @marksibly: As Python is a requirement of emensctripten, have you considered using SCons as a build system? |
| ||
Great. I will have a play! |
| ||
> Edit: Using python 3.4.3 Should I be using python 2.x.x with emscripten? I'm guessing that's the problem. Windows emscripten is completely self contained (I think) and includes it's own version of python, but adds its python path to the end of PATH when it installs, so if there's already a version of python in your PATH it could be conflicting. If that makes sense... You could try locating the emscripten python path and adding it the start of PATH, either via my computer/properties, or the monkey2/bin/env_windows.txt file. |
| ||
Emscripten is working fine here now -- think it just needed a reboot after installing. It's pretty awesome! |
| ||
> Emscripten is working fine here now -- think it just needed a reboot after installing. It's pretty awesome! Isn't it! I've had it going for a while and was ready to drop it at the first sign of major trouble, but haven't had any real problems with it. What'd be really nice is if someone can figure out how we can include emscripten in the package. This'd mean setting the necessary PATH settings in monkey2/bin/env_windows.txt so they point to a local version of emscripten in monkey2/devtools or something. I tried this but couldn't get it to work, I think because 'system' PATH settings must be different than 'user' PATH settings. Some of them seem to get lost when python is invoked or something. |
| ||
Worked without reboot here. Great start! :) |
| ||
Was the download link sent per e-mail? Or at Patreon? |
| ||
Per email. |
| ||
Thx Mike! Was away for 2 days, and coming back my fully configured Windows 8.1 PC does not want to start anymore (hardware-side)... :D A new cool Mac Pro is 7,000+ Euro... oh well. |
| ||
@Mark Windows emscripten is completely self contained (I think) and includes it's own version of python Interesting. When I did my first build with emscripten it 'downloaded' SDL (might have been SDL2) and then tried to 'download' pywin32 ( http://sourceforge.net/projects/pywin32/files/pywin32/ ) but reflected that it could not get it. So I had to install python which allowed me to then install pywin32. After that I got the error I posted earlier. So I am not sure what I have done wrong and I will try to figure it out today. Edit- So just FYI I installed the offline version of emscripten. @Anyone If you have emscripten building in MX2 on Windows 7 what version of python do you have installed on your system? And did emscripten download and install tools on first build? Thanks. |
| ||
OH wow I got it working. :D I updated emscripten via the console and then uninstalled python and pywin32. The build of the SDL2 demo ran on my browser and that is wicked cool. Edit - I feel mainstream'y and cutting edge'ish. :) Good job Mark. |
| ||
Could someone send me the download link ? gcmartijn@... My name is now at the list here: https://www.patreon.com/monkey2?ty=p |
| ||
You should get a message with the download link directly from Mark. |
| ||
Yeah, you have to click the profile button at the very top-right of the Patreon page, then click Messages. Took me a while to figure out! |
| ||
I have the zipfile monkey2.zip now, but osx prompt for a password ? Please enter the password for "env_linux.txt" what password ? |
| ||
Did you check your spam folder? |
| ||
Yeah, you have to click the profile button at the very top-right of the Patreon page, then click Messages Or read the message the link came in... |
| ||
I only have this email, and a zipfile but no password.Hi, Thanks for supporting monkey2! Here's a download link for the monkey2 reward release: [here is the link to the zipfile] Bye, Mark |
| ||
How to install and use it on Mac OS X? I installed 84e and copied everything from monkey2 folder into it. Ted disables Build/Run for .monkey2 files, and renaming to .monkey gives syntax errors then (no MX2 used). Mojo2 tests work, but I can't test .monkey2 files. When I use the command line compiler MonkeyXPro84e/bin/mx2cc_macos (899Kb), it overwrites itself with a 0-byte file. |
| ||
Danilo, were you able to unpack the zip file on OSX? |
| ||
Yes, Mike. Double-click (opens The Unarchiver) and pasting password from eMail. |
| ||
Hi, Desktop (Windows 7 64bit) compiled programs are, 32bit at present? Will we see 64bit down the road? Thanks, |
| ||
You need Unarchiver to unpack on OSX, the native utility fails. |
| ||
I use osx but needs to wait for the password... |
| ||
Or if your a OSX command line guy: unzip monkey2.zip It then asks for the password... and works! |
| ||
I played with this a bit, namely struct and operators. I'm so happy, can't wait till it's ready and I can upgrade my MX1 projects to MX2. The code will get so much cleaner not having to use temporary globals to store calculations. MX1 MX2 |
| ||
Did anyone manage to get MX2 sources compiled on OS X? |
| ||
> I installed 84e and copied everything from monkey2 folder into it. monkey2 folder should be installed 'next' to monkey1, not 'inside', eg: C:\MonkeyXProv84e C:\monkey2 Another thing you can try is just running mx2cc.monkey directly from ted (using c++ target) in debug mode. With no args and in debug mode, it should run one of the monkey2 tests. |
| ||
Just place the monkey2 folder aside the monkey84e folder - root -- monkey2 -- monkey84e Goto monkey84e en rightclick open bin/ted (to give it the rights to run it) After that close ted again,and rightclick open monkey inside the monkey84 folder. Then ted will open, and choose open file. Then open a monkey2/tests file and run it. I only use desktop so I din't test that other thing. |
| ||
Thank you, Mark! Putting it next to the 84e folder works now with Ted. |
| ||
Regarding generic functions: Will there be a TypeOf..Is operator to help with functions that need a little finagling to work for certain types? |
| ||
2 short questions. 1.) how to use the mojo2 module using Ted and the latest versions ? Import mojo2 1 error(s): /Users/gcmartijn/Documents/game1/Monkey2/game2.monkey2 [3] : Expecting string literal Using mojo2 1 error(s): Namespace 'mojo2' not found Or is this not possible in the alpha version ?? Because mojo is all written as monkey1 code and that will work after a month or longer ?? 2.) Namespaces inside tests/test1.monkey2 I see this namespace test Does someone know how this namespaces will work ? |
| ||
I don't think it's at that point. Only what you see in the monkey2/test folder. |
| ||
Ow... Im wondering how long will it take then ? More then 4 Months ? @mark Is monkey a hobby project, or is it your only fulltime job? |
| ||
I don't think it's at that point. Only what you see in the monkey2/test folder. That's right. Traditionally the test examples indicate whats up and running. ;) Is monkey a hobby project, or is it your only fulltime job? I can guarantee it's not a hobby. ;) Serious stuff for Mark I'm sure. |
| ||
I can guarantee it's not a hobby. ; Do you have inside informations? |
| ||
No. Just indicating his dedication. I know nothing. :) I know from personal experience that often you put in full-time hours on a project like this. So at worst (in reference to "hobby") a second job and one I bet he loves doing. |
| ||
> Ow... Im wondering how long will it take then ? More then 4 Months ? All in good time. And probably way too early to put a timeline to. Keep in mind, this is alot of R&D work that Mark has to put into this getting all these language features together, then make it fit with the brl/mojo/monkey/opengl/std/etc modules. Kinna like great BBQ, it's ready when it's ready. |
| ||
But I think I get the idea now what monkey2 is. Yesterday I thought, well lets start with SDL2 so I can see how that works. But it was for short time, because not all the SDL2 functions where 'inside ted'. I did wonder why, so I did a quick check in the /module/sdl2 folder. What I did see where all the sdl2 files (I hope a 1:1 copy from the original!) and a .monkey2 file. Including the function I want to use. And now the interesting point. That .monkey2 file is the key to make sdl2 (or any other C) external library working inside ted. But the sad point was, that it was handmade :( and did contain only the methods and stuff to make the sample test working. After all that information I really hope and I really do haha is that mark make a automatic converter to make that .monkey2 file from C. When this is possible then: - everything is 1:1 with the original ! - many C libraries will be possible to use if you want - If sdl2 comes with some fixes, then you can update your own lib (if you want) (I see that in a other topic) I think that will be one of the powers for monkey2 Or is mark going to write the whole thing by hand ? This is dangerous because you can make a mistake, and it will cost many time. Edit @nullterm A good BBQ haha |
| ||
I think your expectations are a little high right now, GC-Martijn! The readme says "Monkey2 pre-pre-pre-alpha V-0.01"... For what it's worth, this level of functionality has been entirely normal all for BRL products at such an early stage of development. It'll grow with time. I would also refer you to the start of this very thread: I have just posted a message to my Patreon backers that includes a link to a VERY rough pre-alpha version of monkey2. This will probably be contentious, but it is meant to be a simple reward to everyone who has shown support for the monkey2 project [...] It is IMO borderline unusable(!), but it does hopefully give a glimpse of the direction monkey2 is going in. The next version will be much more functional, and will more than likely be available via github. and from the Patreon release message: I probably shouldn't really be releasing this at all as it is still in a very rough, pre-alpha state, but I do want everyone to know that I am actually doing something behind the scenes here. As such, this probably has more historic value than technical! ... The next release should be MUCH more advanced but it probably wont be for another few months yet. |
| ||
Yea i know, but i really want to know if this is marks end goal, to make a automatic C to monkey2 'wrapper','bindings' file or how you want to call it. Then its solid as a rock |
| ||
Yeh man, everything taking too long, m8. This is just a waste of time. By the time monkey2 is out I'd have to wait another 3 years for monkey3 as its the only version that will allow me to finish my game. I've got the basic engine up and a design doc ready. 'Dangerous Pong' is gonna make me teh monies but selfishness is keeping monkey3 years away. We'll see. Now wheres my brain........... |