[Looking for Hire] Develop Monkey Addons!

Monkey Forums/Monkey Programming/[Looking for Hire] Develop Monkey Addons!

Tibit(Posted 2013) [#1]
Anyone here interested in getting hired to build simple Monkey modules?

The idea is this:
1. Find good a Monkey programmer willing to develop an external module for a specific target
2. That programmer gets paid for the work
3. Write the module and write a step-by-step use tutorial
4. We share the full source with all Monkey coders as public domain, even allowing existing frameworks to claim it as their own

1. Open iOS Projects
a. Chartboost - Properly wrap Chartboost (fullscreen) and (more screen) on iOS.

2. Open OUYA Projects
a. OUYA - Wrap the OUYA ODK

Greenlit Projects

*In Progress* RevMob - Properly wrap RevMob (fullscreen) on iOS. Programmer: Skn3 Funding: Tibit (100%)

The process and funding

1. Programmers that are interested can apply here or by mail, either to a specific project or a target that you know well.

2. If anyone else would be interested in having a module built, post here and we can see if more are interested.

3. We estimate a price to complete the project

4. If more people want to fund, they can.

5. Once funding covers the estimated price and the programmer finds all terms acceptable - The project is greenlit.

6. We upload the code to a open source repository and once done add a tutorial in the tutorial forum

Note:
- Programmer decides if they want to get paid upfront or on completion
- I suggest we use paypal for payments
- If you want to do it for FREE for the greater good, then by all means that is acceptable ;)

What do you say?


ziggy(Posted 2013) [#2]
I say I love it and I wish I have more time right now


Skn3(Posted 2013) [#3]
I could be interested in coding work anyone needs doing. I have lots of experience with blitzmax, monkey, web languages, objective C, winapi, more, more, more and lots more.

I can also illustrate, sprite and produce decent quality artwork if people need some artwork done too.

Tibit are the listed projects your own projects? What kind of budget do you have in mind? If you would prefer to talk via email then please feel free to email me.

jon@...


Playniax(Posted 2013) [#4]
We provide services for third party. Such services include the development and completion of entire projects, but can also be comprised of various specific assignments.

As most people know by now we are selling Ignition, our framework. What we want to do in the near future is to offer people a service to write a specific component that you would need for your app or game. This can be for example a GUI component or artwork and templates. A game we did is Defenstar

Anyone, feel free to contact us for more information and pricing.


Difference(Posted 2013) [#5]
I'm interested in a camera module for all devices that has camera,

Also in an audio module, that let's me write to the soundbuffer / generate sound in code.

I'd be willing to help fund it, providing it becomes public domain.


CopperCircle(Posted 2013) [#6]
I am also interested in a multi-platform camera module and would be willing to pay for it...


Tibit(Posted 2013) [#7]
Cool to see such positive response!

I sent a mail to Skn3 & Playniax about my suggested projects above.


Soap(Posted 2013) [#8]
I'm willing to contribute $ to get more done. If there are people wanting to go for specific projects I can contribute some money for bounties when it's done.


Rushino(Posted 2013) [#9]
This is an interresting idea! +1


dave.h(Posted 2013) [#10]
Yup i also think this could be a great idea


Arthur(Posted 2013) [#11]
This is very good idea! I'll support it with funding if there will be some experienced programmers working on such general purpose modules.

Here is some modules that, I think, needed in almost any mobile game:

InApp purchases module, well documented, tested, with samples etc.
Push notifications and Local notifications module
Complete Facebook module, that support not only latest version (6.0) but all previous iOS versions too
iCloud module
Flurry module
iAds module
Twitter module
Playtomic module
QR codes reading module for devices with camera


Also very usefull tool would be code translator from AS3 to Monkey code. To easily port Flash games to mobile platfroms (Adobe AIR has low perfomance).

And some targets or modules for bunch of interesting platforms that are already here or will be released in near future:

haXe+NME : http://www.haxenme.org/
Raspberry Pi : http://www.raspberrypi.org/downloads
Pebble: E-Paper Watch : http://pebblewatch.heroku.com/blog
I'm Watch (Android) : http://www.imdeveloper.it/technologies.php
Blackberry
Bada
LG SmartTV
Simbian
OUYA (Android) : http://www.kickstarter.com/projects/ouya/ouya-a-new-kind-of-video-game-console
Android NDK : http://developer.android.com/tools/sdk/ndk/index.html
Chrome WebApp Store : https://chrome.google.com/webstore/developer/dashboard
Unity3D
Nintendo Wii U
Nintendo 3DS
Sifteo Cubes : http://support.sifteo.com/entries/21886711
Atari Arcade : http://www.atari.com/arcade/developers/downloads-and-documentation
Tizen : https://www.tizen.org/
Firefox OS : https://developer.mozilla.org/ru/apps
Jolla OS : https://wiki.merproject.org/wiki/Platform_SDK
Kindle e-ink readers : http://kdk.amazon.com/gp/public/gateway
Rikomagic : http://www.rikomagic.co.uk
NVidia Shield
GameStick : http://www.gamestick.tv/
IdeaCentre Horizon Table PC
Wikipad : http://www.wikipad.com/
Archos GamePad : http://www.archos.com/products/gamepad/index.html?country=us&lang=en&p=1#a
Project Fiona : http://www.razerzone.com/projectfiona
Flash 11.3 Stage3D (MiniB3D)


Tibit(Posted 2013) [#12]
I'd vote that IAP and Flurry are my top priority next on line when these first are done :)


TFT(Posted 2013) [#13]
This is an interresting idea! +1


c.k.(Posted 2013) [#14]
I wonder if we should have a few days of nominations for the project list, then let people vote on them. The most popular 3 to 5 items could be listed and our programmers can provide bids to do them. Then we can apply funds.

Maybe we can get some space on the wiki to host the "Projects Development" (PD) list, with statuses, updates, etc...

We need some way to collect, hold, and pay funds. We can provide an accounting on the PD page.


Skn3(Posted 2013) [#15]
I'm interested in a camera module for all devices that has camera,

Also in an audio module, that let's me write to the soundbuffer / generate sound in code.


What targets would you want for something like this? iOS, android any others?


c.k.(Posted 2013) [#16]
Also, if requested functionality is already available in a library/module, whether free or not, we need to list that as well. No point re-inventing the wheel! I don't like wasting resources. :-)


Tibit(Posted 2013) [#17]
Yeah, I think that even if one exists, but that may not be updated or work 100% it could be a good reference point for the programmer.

I have greenlit the Revmob addon, Skn3 is hired for that project.


devolonter(Posted 2013) [#18]
Great idea! I would be happy to participate in the development too, but unfortunately I have no free time. I hope that soon we will see a lot of new and useful modules.

It would be great if the source code of modules was stored in the cloud storage github, bitbucket, etc. So that there was always an access to them.


Tibit(Posted 2013) [#19]
yeah, bitbucket!

Here is a link to the first module: Monketize


Shinkiro1(Posted 2013) [#20]
That's cool :)
Just wondering what all these non monkey files are doing in the rep (ini, jungle, ...)


c.k.(Posted 2013) [#21]
We also need to make sure these modules are cross-platform, for at least iOS, Android, and HTML5. What others?

Right?


John McCubbin(Posted 2013) [#22]
How about a module that lets you create and use a platforms native UI elements, iOS and Android atleast.

So we can create native looking apps.


CopperCircle(Posted 2013) [#23]
I think there should be a separate forum area for the modules and they should be cross-platform, for at least iOS, Android and WP8. Its the mobile platforms that could benefit from camera access and such.


dave.h(Posted 2013) [#24]
i see that youve greenlit the revmob project and was wondering how people were going to contribute to this and any other projects.Also is it just for ios or can this be used on android.


Tibit(Posted 2013) [#25]
For that project I thought no one else was interested so I decided to fund it my self to get the ball rolling!

Skn3 is my programmer of choice. Playniax haven't replied yet, maybe they are game-jaming? If you or anyone is willing to contribute, let me know!

While of course I can fund a few modules myself, there is a limit :)

My hope is that by sharing these modules with everyone for FREE some others might follow and help fund future modules. I hope it to be a Win-Win scenario.

Right now I have only funded the RevMob module for iOS only. (RevMob is one of the highest converting Ads network on iOS for games). I'd love to do Chartboost next on iOS and then AirPush for Android (both high converting).

Post here or feel free to mail me (see my profile) if you want to discuss more.


MikeHart(Posted 2013) [#26]
I find is dangerous to invest in something now as long we don't know 100% that the new target system in V67 is final.


Skn3(Posted 2013) [#27]
The code can be reused from 66 to 67 quite easily just copy and paste some parts into the target instead of having to hack it in to the project. (Assuming the target stuff stays as it is)


Skn3(Posted 2013) [#28]
The code can be reused from 66 to 67 quite easily just copy and paste some parts into the target instead of having to hack it in to the project. (Assuming the target stuff stays as it is)


ziggy(Posted 2013) [#29]
@tibit: JIPO files are meant to be left out of any version control system, as they represent the local user options of a Jungle Ide project.

Files to include when using Jungle Ide on a version control system:
-JiPorj: This is the list of files that are part of a project, compiler options, dependencies, etc. If there are coders not using Jungle Ide, those files can be safely ignored, so it does not hurt.

-Jungle: This is the solution itself. If you want to be able to load the whole thing with Jungle Ide wothout having to create a new solution, this is required.

Wich files are meant to be excluded from the repository:
-JILayout: This file contains information about Jungle Ide layout preferences and panels organization for a given solution. That is sort of local user preferences. they should be kept local for each user, so put outside the repository. You don't want to be needing to merge the whole thing when another user resizes or moves the find and replace dialog.

-JIPO: This file contains information about wich files are open and closed in a given solution. Cursor pos, splitview on editor windows, etc. This is also part of the local options of each user for a project, so it is advised to leave it out of the repository. You don't want to be merging the whole thing when a user is editing another document (and leaves it open) or a user modifies the expanded/collapsed status of a given folder on the solution explorer.

I would recommend to leave the jungle file in the repository so people using Jungle can just open the project with all files and the like with a single click.

So, all in all, Jungle Ide solutions are designed to be version control friendly, by spliting in different files local options from project structure. It's a very good idea to follow the mentioned rules to simplify compatibility with other Jungle Ide users, and with non jungle contributors.

This is more or less explained here: http://www.jungleide.com/docs/index.htm?Solutionfilesdecription.html But I wonder if I mayve should add a more detailed explanation somewhere in the documentation


Tibit(Posted 2013) [#30]
Yeah Ziggy that is how I usually do, I think I was just lazy when I set this up a while ago.

One question is if each module should have it's own bitbucket repository. Instead of one for all Ads providers (such as monetize), we could have one for each one (ex ChartboostForMonkey, RevMobForMonkey, AirPushForMonkey). Which is the best solution do you think?


maverick69(Posted 2013) [#31]
Michael Contento has already wrapped revmob in his Bono-Framework. And it works great:

https://github.com/michaelcontento/bono/blob/master/src/ads/revmob.monkey

A lot of the other mod-suggestions on this thread are also already wrapped.


ziggy(Posted 2013) [#32]
By the way, I think I'll be using this module very soon, and it looks very very nice.

I think each module should have its own repository as long as they're not meant to be used at the same time.

One thing that could be nice is to make a third party implementation of the xml based module auto updater system Jungle is actualy using, and implement it on modules, so you can have each one on its own repository, and at the same time, have a single way to have them updated easily both in Jungle Ide, from the command line, or even from TED if someone writes a front end (wich sohuld be trivial if the whole thing is done as a standard commandline tool)


Tibit(Posted 2013) [#33]
@maverick, great find! I haven't seen any of those modules, there is plenty there and IAP & flurry too! :)

Ziggy do you have a simple guide to setting that up? While I find it not that taunting to setup modules I love any simplifications we can get.

I think the biggest thing for modules is that I need to "reinstall" them on iOS when I switch to my Mac to upload/test an App on iOS for example.


ziggy(Posted 2013) [#34]
@Tibit: Let me prepare a simple Monkey stdcpp program with as many todos as required to port the current Jungle auto-updater to Mac, Linux and any other IDE, OS or whatever. I think tomorrow I'll have some minuts. I will need a simple XML parser module, I think skn3 had one. Anyway, I'll make a pseudocode-like monkey app, so we can implement the required bits and have a decent stand-alone module updater system.

The whole idea is based on this: http://www.monkeycoder.co.nz/Community/posts.php?topic=1703#27481

It may look more complicated than it is, but at the end is fairly simple. Take a look to the fontmachine module. It has a lbms file, that's the only file required on the module to be self-updatable. The process is also very simple.


Difference(Posted 2013) [#35]
@Skn3

What targets would you want for something like this? iOS, android any others?


Camera:
Phones iOS, Android and Windows Phone 8, prioritized in that order.

I'm looking for a live camera feed like (iOS AVCaptureSession I guess) http://www.musicalgeometry.com/?p=1273 for making "Augmented" Apps.
It would of cause also be great to have the ability to take a picture and gain pixel access.

Audio:
I'm really only interested in iOS, because that's the main virtual instrument scene,but Android might be catching up if they are fixing the realtime audio issues.

For audio, I'd like to be able to make music apps without lag, so If I could write/load samples to a looping soundbuffer or something like that, I might be able to do something useful.

Access to microphone recording (or just registering the sound "level") , getting the sound to a readable buffer, would be great too.


Rushino(Posted 2013) [#36]
Interresting discussion. I think we need a kind of module repository otherwise someday this is fast become a modules nightmare. This repository should allow to patch or apply a specific module to a project. Like nuget in .Net the company i also work for is currently using it (since its open source) to apply components and package to an existing project. However, it won't go as far as editing target files through.

I am also interesting in funding and that would be probably in the networking area but right now i am rather broke lol my project is sucking mostly of my reserved incomes for this.

There also a downside right now i have to agree with Mike here. To me it look like there are still gonna have big changes to the target and general way monkey handle things. From what ive seen this is still moving and changing too much from a version to another (which is good ofcourse) which isnt the perfect condition to make modules right now. We don't even know what Mark will come with. But maybe its not that hard to convert.


Arthur(Posted 2013) [#37]
I can add $50 to Chartboost crossplatform(iOS, Android) module fund, and $50 to Revmob crossplatform(iOS, Android) module fund. Where I can send money through PayPal to support development of those modules?


Difference(Posted 2013) [#38]
How about using http://www.fundageek.com/ or something similar?

I don't know them, but it seems they charge 5% and you can reject or accept funding at the end of the pledge period. Payments are through PayPal.


Tibit(Posted 2013) [#39]
Arthus, mail me and I'll give you a link for Chartboost that goes directly to the programmer (Skn3). I have paid half upfront already and your addition is a welcome addition!

I might know a Monkey that will appear tomorrow.. :)


dave.h(Posted 2013) [#40]
@titbit

did you get my last email mate


Tibit(Posted 2013) [#41]
EDIT I got it, it was wrongly sent to a backup folder! Wierd! Have replied now!

btw I spell it: T I B I T =)


Difference(Posted 2013) [#42]
I'ver started a topic here for the camera module: http://monkeycoder.co.nz/Community/posts.php?topic=4422


frank(Posted 2013) [#43]
AS3->Monkey would be good. Doesn't have to be complete, just for doing 80% of the boring work for instance. http://opensource.adobe.com/svn//opensource/flexpmd/trunk/ is a solid parser for AS3, so that should save a bit of effort.


siread(Posted 2013) [#44]
I'm totally up for funding Flurry (Analytics) and Google Play IAP modules. Who wants the job? :)


Tibit(Posted 2013) [#45]
We found a flurry module here:
https://github.com/michaelcontento/bono/tree/master/src/analytics

Note that I haven't tested it myself, yet.


MikeHart(Posted 2013) [#46]
@Siread: Flurry analytics for Android? I might have something. Need to test it tonight.


MikeHart(Posted 2013) [#47]
Ok, Flurry for Android and Monkey V67c or above:

http://www.monkeycoder.co.nz/Community/posts.php?topic=4477


siread(Posted 2013) [#48]
Nice one! Will try it out asap. If you can add iOS support I'd be more than happy to make a donation. :)

Also wanting iCloud.


Beaker(Posted 2013) [#49]
I would happily support the following:

Camera module (iOS/Android)
Native UI (iOS/Android)
CSS3 mojo (HTML5)
Maps - google/openstreet maps (HTML5/iOS/Android)
Microphone stuff (iOS/Android)


MikeHart(Posted 2013) [#50]
@Siread: At the weekend I might have time to implement IOS. But there I can only test in the simulator. Need to finish some art stuff for someone first.


Rushino(Posted 2013) [#51]
Anybody would be interested for a WebSocket client in glfw ? this would require a good existing websocket library to be accessible in money via the glfw target. I would pay for that if everything work correctly.


Tibit(Posted 2013) [#52]
Rushino, the current Monkey network stuff works with building most clients, but not servers and anything UDP. Is it server-building you are looking to do?


Difference(Posted 2013) [#53]
> I would happily support the following:
> Camera module (iOS/Android)

Great!, now put your money where your moth is here: http://monkeycoder.co.nz/Community/posts.php?topic=4422

:-)


MikeHart(Posted 2013) [#54]
--


MikeHart(Posted 2013) [#55]
Uploaded a new version of the Flurry module, supporting now parameters when with LogEvent.

http://www.monkeycoder.co.nz/Community/posts.php?topic=4497#49897


Tibit(Posted 2013) [#56]
Here is the first crowd funded module: Chartboost Monkey
http://code.google.com/p/chartboost-monkey/
* I added a few things that I haven't yet tested on ios/android, if I broke something please me know!

Chartboost displays FullscreenAds in games and are one of the highest paying on iOS right now, they also allow you to easily cross-promote your own apps or do deals with others.

And now it's FREE for Monkey. Enjoy!


Skn3(Posted 2013) [#57]
Might want to change the license at the top of the chartboost.monkey I forgot to add MIT license header :)


Playniax(Posted 2013) [#58]
Great stuff man!


Tibit(Posted 2013) [#59]
Skn3, could you take a quick look on the HasCacheMoreAds check function, it seemed like it wasn't implemented, so I added a stub for it but I did not want to mess with the native code until I can test on device.


c.k.(Posted 2013) [#60]
Nice work, folks! Let's keep it up!

(No HTML5 compatibility? Chartboost fail.) :-)


c.k.(Posted 2013) [#61]
Oops. I'm getting an error when trying to run example1:

"Implements cannot be used with external classes."


Skn3(Posted 2013) [#62]
I will have a quick look shortly. I think the android api had some methods that the ios one didn't perhaps.


Raz(Posted 2013) [#63]
I would very much appreciate an implementation of an SQLite3 module, specifically for GLFW (c++) (but obviously other targets welcome).

I would be willing to give $100 to someone who can implement the following (if people want to contribute to that $100, or add to it, fine by me!)

Create a database if it doesn't exist
Local db:SQLite3DB = SQLite3.Load("database.db")


Close a connection to a database
db.Close()


Implement some sort of SQLite3Result class which can handle both action commands as well as select commands.
Local thisResult:SQLite3Result = db.Query("INSERT INTO table ( field_1,field_2,field_3) VALUES ( NULL, 'cat', 123 )")
Local anotherResult:SQLite3Result = db.Query("UPDATE table SET field_2 = 'woop' WHERE field_1 = 1 LIMIT 1")
Local selectResult:SQLite3Result = db.Query("SELECT * FROM table ORDER BY field_1 ASC LIMIT 3")
If selectResult->numRows > 0
  while local row:StringMap<String> = selectResult->fetchAssoc()
    ' DO SOMETHING WITH row
  end
end


The SQLite3Result class must let me display the results as a StringMap<String> (fetchAssoc()) as well as a standard array (String[]), I must also be able to reset the iterator position for a result set (so I can loop through the results again without requerying the database).

I think that just about covers it. I will pay once I am able to create a simple working test app on my computer :)


c.k.(Posted 2013) [#64]
Meanwhile. :-)


Rone(Posted 2013) [#65]

I would be willing to give $100 to someone who can implement the following


$100 for less than 100 lines wrapper code...really?


c.k.(Posted 2013) [#66]
Rone! Instead of expressing incredulity, CLAIM THE MONEY! :-)


muddy_shoes(Posted 2013) [#67]
Let's say your 100 lines is correct. Let's say that they're entirely trivial and can be typed out perfectly in about an hour. You still have the time to grab SQLite, read the docs/code, test your wrapper, engage with raz, probably some level of support following on. I'd be surprised if it took less than a day even if everything goes smoothly.

It's not a horribly low offer for a casual hobbyist trade but I don't see where the "Wow, that's a lot for very little work!" comes in. Do most programmers get paid < 10 euros/hr in Germany?


Rushino(Posted 2013) [#68]
I completly agree with Muddy here. Don't think it will take few hours to complete you would be really surprised... :) btw.. i am looking for someone to develop a WebSockets lib for Win8 target please look here if someone interested. http://www.monkeycoder.co.nz/Community/posts.php?topic=4385


Rone(Posted 2013) [#69]

Do most programmers get paid < 10 euros/hr in Germany?


I hope not

but you're right, surely a few hours work...


Rushino(Posted 2013) [#70]
If you want to know how much time it could take.. take your estimate and do x3 and you will be pretty near the real time it take. That how i usually estimate. But when its time to research stuff.. you never know how much time it will take because its prone to errors a lots.


Rone(Posted 2013) [#71]
I've tried it

https://github.com/sascha-schmidt217/sqlite3

sqlite3.c + sqlite3.h must be added to the native project
make sure sqlite3.c is compiled as C code

looks as follows

_db = New SQLite3DataBase()
_db.Load("database.db")

_db.Query("CREATE TABLE Books(Id INTEGER PRIMARY KEY, Title TEXT, Author TEXT, ISBN TEXT DEFAULT 'not available')")
_db.Query("INSERT INTO Books(Id, Title, Author, ISBN)VALUES(1, 'War and Peace', 'Leo Tolstoy', '978-0345472403')")
_db.Query("INSERT INTO Books(Id, Title, Author, ISBN)VALUES(2, 'diesdas', 'Leo Tolstoy', '978-0345472403')")
_db.Query("INSERT INTO Books(Id, Title, Author, ISBN)VALUES(3, 'blibla', 'Leo Tolstoy', '978-23423')")
_db.Query("INSERT INTO Books(Id, Title, Author, ISBN)VALUES(4, 'blubla', 'Leo Tolstoy', '978-2342342342')")

Local result:= _db.Exec("SELECT * FROM Books")
While result.Read()
	For Local e:= Eachin result.StringMap
	      Print e.Key + "/" + e.Value
	End 
Wend 



Raz(Posted 2013) [#72]
$100 for less than 100 lines wrapper code...really?

It isn't just 100 lines of wrapper code though is it? ;) I could write 100 lines of wrapper code that in no way functions in the way I want.

It's also $100 for "your" expertise in SQLite and C++ as well as X hours of work. I assumed that to a person who knows what they are doing, this won't be difficult, but it still involves their time and much less time than me if I were to figure out what I need to do myself.

I also tried to very specifically ask for what I need, but who knows, I may have under estimated something, something that someone who knows what they are doing will pick up on.

And even at this stage we are still ignoring how valuable such a feature would be for me. I know it will help me with lots of projects and I am pretty sure that other people can make good use of it too.

If anything, I would say $100 is not enough. Unfortunately it's all I can afford at the moment, so I am hopeful that others may be able to chip in as well.


Raz(Posted 2013) [#73]
Haha, as if you were posting that as I typed the above :D

Thanks Rone, I will give it a look in an hour or so.


Raz(Posted 2013) [#74]
Rone: would it be possible if you went into a little more details regarding the installation? :)

Thanks


Beaker(Posted 2013) [#75]
I would be willing to contribute $150 dollars for each mobile native UI module (iOS and Android = $300 total). I think we would probably have to hammer out specifics and project goals. Anyone else interested?

I'm currently looking at Xamarin (formerly MonoTouch) and that costs about $300. I'd prefer to use/support Monkey but I'd happily use Xamarin.

I'm aware this is a non trivial task and has some complications.


Raz(Posted 2013) [#76]
Rone: Actually, I think I figured it out! (I edited the MinGW makefile so that CPPFLAGS included -I../sqlite3 and OBJS included ../sqlite3/sqlite3.o

That's amazing, thank you :)

Email me on chris(at)chrismingay.co.uk and I'll sort out payment.


Tibit(Posted 2013) [#77]
Awesome turnaround time for that project, great work! :)


ziggy(Posted 2013) [#78]
I'm currently looking at Xamarin (formerly MonoTouch) and that costs about $300. I'd prefer to use/support Monkey but I'd happily use Xamarin.
I've been using Xamarin too and it's great, but building an abstracted (and maybe simpler) GUI system for Monkey that can target iOS and Android could be the basis to add more targets in the same way Mojo does, so one could add windows phone if it gets more popular, or whatever comes next. I would like to support this development if it is done as a driver-based-abstracted layer (as Mojo does with graphics). Not sure which amount I could donate, as it would depend on the design proposal, but I would definitively support it with some cash.

Now, depending on how it is done, and designed, Jungle Gui (or something similar) could be used as a target for devices without native support too when it is more complete. sort of a "software-renderer" approach on some engines, this time to provide GUI portability when the native area is not available on a given target.


Skn3(Posted 2013) [#79]
That is some good work! Now who is up for the task of filling out the full functionality and porting to all targets ;) ?

I think perhaps there needs to be a jobs board on this forum? At least that way module projects and short code projects can be filtered out into separate threads? I think I might send a support email to monkey staff to request this...


Skn3(Posted 2013) [#80]
It would be a very tough decision to commit to making a native UI module. Unless there was some heavy backing? Maybe need to get more uni/college students enticed into monkey, they have lots of spare time don't they ;)

Are there any decent cross platform libs that could be wrapped?
http://blog.qt.digia.com/blog/2013/03/05/qt-for-ios-preview/

Just saw this which is good news...


ziggy(Posted 2013) [#81]
@skn3: Qt is a great library, but the way it handles memory is sort of complicated to integrate to Monkey. Last time I checked it, it had a sort of hieratical structure tree which I'm not sure can play well with GCed languages, but maybe it's just over my skills and it can.

This leadsto the point that it would be great to have a GC for C++ targets that does not rely in Mojo if we want to get this going anywhere. I supose Objective C has the same GC problem as C++ targets have, but I haven't really checked it.


Beaker(Posted 2013) [#82]
I'm not into the idea of Qt, as it just adds another layer, and presumably is non-native.

Regarding GC: iOS 6 onwards has ARC:
http://developer.apple.com/library/ios/#releasenotes/ObjectiveC/RN-TransitioningToARC/Introduction/Introduction.html


c.k.(Posted 2013) [#83]
Guys, I've set up a forum where projects/pledges/bids can be worked out in their own threads.

Come make use of it.

http://ucodeia.com/forum/index.php


Tibit(Posted 2013) [#84]
For native GUI would we not need an editor similar to that found in XCode and Ecplise?

I am also interested in a cross GUI thing because it means a lot more mobile Apps can be made in Monkey and that can be easy consulting $$ for many developers, including me :)

My plan was to instead reply on JungleGUI or something similar that will work crossplatform - there is lots of apps that do not use the native stuff that are high-end but I'd like to hear any arguments for and against native versus "software rendered" gui and which use cases each is most useful for.


Skn3(Posted 2013) [#85]
Yeah QT would be overkill, are there any other solutions? It would be a really interesting project to write a cross platform gui lib for monkey. Shame I am already busy in my spare time wrapping the photon networking lib... and then of course the impending UK simcity release which will inevitably suck any free time I have!

I can imagine a gui lib where the os messaging and functionality is wrapped into a monkey layer and then all gadgets (buttons, textfields, custom native gadgets) are written in pure monkey code.... hmmm sounds like a lot of work to me!


Rone(Posted 2013) [#86]

wrapping the photon networking lib...



Hey, I did the same for xna. Maybe you can use it...

photon.monkey


photon.xna.monkey



Skn3(Posted 2013) [#87]
Hey Rone nice thanks! I will keep it for reference. The plan was to wrap it natively method for method, for each photon native library. I started trying this but it turned out it would not be possible as each implementation of photon differs slightly. A serious pain in the arse and tbh I am surprised considering how big these guys are...

My solution is to write my own monkey api natively, one for each target and have that speak to photon. The Monkey user will never have to directly speak/use the photon API. Of course this is not ideal for future proofing my code, but I couldn't work it any other way.


Tibit(Posted 2013) [#88]
wrapping the photon networking lib

Seriously?? :D

And nice, already an xna version :)

I looked into that before but determined that it looked to big/complex.

Can I help with that in any way? I'm looking into multiplayer now. I was going for building a server solution in Monkey, however photon server seems like a great way, especially with a modified C# target in Monkey for server logic.

I really like they provide hosting service + the network library.


Rone(Posted 2013) [#89]
what were the problems? wrapping the photon api directly is pretty straightforward and offers some advantages... especially you can then also use 'photon cloud' automatically

Edit:
ok..."implementation of photon differs slightly"...
didn't looked into any other than xna

My implementation is 'photon cloud' only if I remember corectly...so I wrapped LoadBalancingClient, which extends IPhotonPeerListener, directly...this was sufficient for testing purpose...


I really like they provide hosting service + the network library.


yes, I can only recommend it. Saves a lot of time and annoyance...especially photon cloud.


Tibit(Posted 2013) [#90]
I had need for their hosted photon server. But could surley use their cloud part for simpler turnbased games.


c.k.(Posted 2013) [#91]
Need App42 monkey module: http://ucodeia.com/forum/viewtopic.php?f=4&t=4


Volker(Posted 2013) [#92]
Chartboost:
I get the same error as c.k. too when compiling example1.monkey to android.
"Implements cannot be used with external classes."


Skn3(Posted 2013) [#93]
It should be updated now. You can use just the chartboost.monkey for raw access to the official SDK or wrapper.monkey for an easier to use api that emulates in non supported targets.


Zurrr(Posted 2013) [#94]
Chartboost:
I get the same error
"Implements cannot be used with external classes."


Tibit(Posted 2013) [#95]
it should be fixed, I'm using it myself, are you using the latest version from GitHub?

For which platform do you get the error and with what example?


Skn3(Posted 2013) [#96]
Yeah please do reply here if this issue persists and I will have another look at the code.


Zurrr(Posted 2013) [#97]
Chartboost:

I download from: http://code.google.com/p/chartboost-monkey/
Uncompressed it and put in "{monkey}/modules/chartboost-monkey/" folder.
I open example1.monkey and compile to android and
I get the error
"Implements cannot be used with external classes."

Also happen on example2.monkey

Try on Monkey 68c and Monkey66b. WIth Ted. Both produce the same error.
Its compile time not runtime error. Build folder not create at all, compile stop at that point


Skn3(Posted 2013) [#98]
Hey mag,

Cheers for taking the time to respond.

I think I know the issue. The download version was not uptodate with the source. Please try redownloading now I have updated the download.

https://code.google.com/p/chartboost-monkey/downloads/list


Tibit(Posted 2013) [#99]
ah that explains it.

Skn3, is there something one needs to do to update the download zip on bitbucket? I did not know. How?


Zurrr(Posted 2013) [#100]
Skn3. Thanks a lot.

I still having problem. At which monkey version are you testing?
Here on monkey 68c. Compile ok and running, but I got a black screen on my android samsung S2. I test example1

Here my log:



Skn3(Posted 2013) [#101]
Hey Mag apologies I was away for Easter.

Using version 69

So I downloaded the .zip package and ran the example1 and example2. They both work on (although example1 will say unsupported) the PC. I don't have an android device next to me to test but nothing has really changed so lets see if we can fix it quickly first...

https://code.google.com/p/chartboost-monkey/wiki/ChartboostSetupIntructions

Does that guide assist you?


silentshark(Posted 2013) [#102]
@skn3, @mag - did you guys get any further with Chartboost? I get the same issue as mag - blank, black screen on actual android devices, althought it seemed ok on an emulator on a pc

This was the same on v69 and v70e

Cheers for all the hard work pulling this module together


Skn3(Posted 2013) [#103]
Moved this to here:

http://monkeycoder.co.nz/Community/posts.php?topic=5217#57624


Xaron(Posted 2013) [#104]
I had need for their hosted photon server. But could surley use their cloud part for simpler turnbased games.


Will do that.