1. Hey! Guest! The 35th GMC Jam will take place between November 28th, 12:00 UTC - December 2nd, 12:00 UTC. Why not join in! Click here to find out more!
    Dismiss Notice

GMS 2 Raspberry Pi

Discussion in 'Community Chat' started by Tulloch, Jun 4, 2017.

  1. Tulloch

    Tulloch Member

    Joined:
    Jun 26, 2016
    Posts:
    32
    Master Systems sell roughly 150,000 units a year, even today. Just saying. -Mind Blown-

    Anyways, I think a lot of people are missing the point of a Raspberry Pi export.

    - People WILL buy a Raspberry Pi to play games, as hobbyists, but that's not the point.
    - Companies/Individuals are purchasing RPis to build consumer devices, Game Maker could be the best choice for developers.
    - Schools are using RPis to teach young adults how to build computers, Game Maker could offer teachers the ability to teach students how to build a game.
    - There's a high demand for RPi Games. GMS could help fill this void and attract some fantastic programmers to the community.

    In addition, this will help people create their own game systems with their own first-party titles. This will allow companies to create interactive demos for display, or terminals for customers.
    Truly the possibilities are only limited by your imagination.

    This is not an export that expects users to buy an RPi to play games. This is for developers who want to create their own devices.

    YYG doesn't make income on games created with the software, it makes income based on the sale of GMS and its exports. This export would attract users to the software and the export. ??? PROFIT!
    (Nothing Charitable about that.)

    And I think that's great.
     
    Last edited: Jun 12, 2017
    Kuro likes this.
  2. DukeSoft

    DukeSoft Member

    Joined:
    Jun 20, 2016
    Posts:
    783
    But.. Have you tried the HTML5 on the Pi? I think it should work just fine. It will possibly perform pretty poor as compared to compiled binaries and the JS / browser canvas would induce a serious bottleneck, but still, I think it could work.
     
    Tulloch likes this.
  3. Tulloch

    Tulloch Member

    Joined:
    Jun 26, 2016
    Posts:
    32
    Its a good thought and you can get a GM HTML5 game to load, but expect >10fps. It requires a web browser and causes problems for users looking to sell their devices... That is, if you can even get a game to run well!
     
  4. DukeSoft

    DukeSoft Member

    Joined:
    Jun 20, 2016
    Posts:
    783
    The raspberry pi should be able to run it, hardware wise. I'm just wondering how its not working yet actually? We have ubuntu exports, and i think ubuntu runs on it fairly fine. Maybe even a VM could run on it?
     
  5. zendraw

    zendraw Member

    Joined:
    Jun 20, 2016
    Posts:
    1,373
    okay, simple question to you, if the rpi is so profitable, why yoyo didnt make an export alredy? easy answer, cus exports on other platforms are more profitable. and like it has been sayd meny times, the raspbery is more about study, not games.
    where there are more games, there are gona be more devs, logical, isnt it?

    and if you really want to know wether theres gona be a rpi export or not, and not speculate to infinity, then ask yoyo, who wuld have thought of that?
     
  6. Mike

    Mike nobody important GMC Elder

    Joined:
    Apr 12, 2016
    Posts:
    2,393
    See previous comment....


    And as to "ask us", they have... several times, and we've replied in this topic several times. 99.9999% of users using GMS want to make games to release or sell, this isn't what the Pi, market is but that's not the ONLY use of it or GMS.

    https://forum.yoyogames.com/index.php?threads/raspberry-pi.27981/#post-174583
    https://forum.yoyogames.com/index.php?threads/raspberry-pi.27981/#post-176125
     
    Kuro, DukeSoft and Samuel Venable like this.
  7. zendraw

    zendraw Member

    Joined:
    Jun 20, 2016
    Posts:
    1,373
    what i got from your previous post is that you are 'working on an angle for an export' or somthing like that? can you write that more clearly so the speculations can stop?
     
    Samuel Venable likes this.
  8. Samuel Venable

    Samuel Venable Time Killer

    Joined:
    Sep 13, 2016
    Posts:
    1,291
    ^ I second this.
     
  9. Mike

    Mike nobody important GMC Elder

    Joined:
    Apr 12, 2016
    Posts:
    2,393
    I've stated these things several times, in many places.... but here you go.

    1. We want to do an export, and have actually done one in the past.
    2. There is a test of an export with which we did 3 test games - with permission from the creators : https://www.yoyogames.com/pi
    3. These free games have given us a reasonable idea of the demand from "consumers" for games - which isn't much. (not really)
    4. We did a very simple survey asking about interest in an export, we got about 935 "yes" responses. ( https://twitter.com/mdf200/status/688829541658284033 )
    5. In order to be able to release and sell the export, we need a business case for it. Not so much for releasing, but for on going "support". If were just releasing then we'd have sold the one I ported in my spare time years ago. However, as with anything like this "maintenance" is where the real cost comes in. If you pay for something, you have a reasonable expectation that it'll work and be fixed. This is where the real "cost" to YoYo Games lies, and where we're working on a viable business case.
    6. Everyone here is a fan of the Pi, and would love to get not only an export, but the IDE running on the Pi. Realistically, this is down to support costs. We'd need a LOT of people to buy it to justify it, and we have to be sure we'd get this before releasing - hence working on a business case for it.
    7. We do plan to report it, as since we did the port they have gotten a proper OpenGL engine for X windows, making it much closer to Linux, and so easier to port and maintain (so lower cost - in theory), but there is still the new porting work to be done.
    8. ALL this has to be balanced with current business directions and work load.

    Now you know as much as we do :)
     
  10. Shadowblitz16

    Shadowblitz16 Member

    Joined:
    Jun 23, 2016
    Posts:
    601
    @Mike I for one would buy it so make that 936 people
     
    Samuel Venable likes this.
  11. Samuel Venable

    Samuel Venable Time Killer

    Joined:
    Sep 13, 2016
    Posts:
    1,291
    ^ Me too. Not everyone uses twitter, let alone keeps up with stuff posted on there.
     
  12. Mike

    Mike nobody important GMC Elder

    Joined:
    Apr 12, 2016
    Posts:
    2,393
    Sorry, I can't post everything everywhere all the time. We have social media channels for general news, you should follow them :)
     
    Samuel Venable likes this.
  13. Samuel Venable

    Samuel Venable Time Killer

    Joined:
    Sep 13, 2016
    Posts:
    1,291
    I'm more of a Facebooker and I am following you guys. It's no biggie.
     
  14. Shadowblitz16

    Shadowblitz16 Member

    Joined:
    Jun 23, 2016
    Posts:
    601
    @Mike how well would gamemaker run on raspberry pi zero? without an specific export?

    I want to make a gameboy sp mod that runs gamemaker games but I'm not sure if would run well on it
     
  15. Mike

    Mike nobody important GMC Elder

    Joined:
    Apr 12, 2016
    Posts:
    2,393
    It won't run at all.
     
  16. GMWolf

    GMWolf aka fel666

    Joined:
    Jun 21, 2016
    Posts:
    3,464
    @Mike you mention the real costs are in maintenance.
    Why not have super secret features that we have to turn on in the preferences, one of which would be an unsupported, buggy as hell pi exporter?
    With all the right disclaimers YYG won't have to maintain it.
     
  17. Mike

    Mike nobody important GMC Elder

    Joined:
    Apr 12, 2016
    Posts:
    2,393
    Because no matter how it's released, it has to be tested and maintained, or on the next release it'll die and nothing will work. There are always costs involved.
     
  18. DukeSoft

    DukeSoft Member

    Joined:
    Jun 20, 2016
    Posts:
    783
    Is it like, challenging because its an ARM machine? Without the tools something like Android is giving you? I bet it is, because there is a functional Ubuntu (debian) export.

    Still I'm not sure what you've all tried internally, but I see things like Windows 10 IOT and Ubuntu images for the Pi. I'm going to start with Raspbian + HTML5 game and see what the performance on that is, maybe see if something runs some other magical way (Maybe WINE or some emulator does a trick? IDK.).
     
  19. GMWolf

    GMWolf aka fel666

    Joined:
    Jun 21, 2016
    Posts:
    3,464
    WINE on pi? Is that a thing?
     
    Kuro likes this.
  20. Token Chingy

    Token Chingy Guest

    WARNING: Wall of text.

    I'm going to try and address the issue of exporting to the Raspberry Pi platform and why it may or may not be a good idea. Having said this, I am in no way affiliated with YYG and have no knowledge of the internals of GMS or GMS2 so a lot of this will be assumptions based on previous knowledge and experience with working with Systems.

    Before we delve into technical problems of doing such a feat, let's look at the business end of things. Viability and support, these two key factors are the likely reasons why there isn't an export to the Raspberry Pi platform. GMS and GMS2 as far as I am aware is targeted towards users who would like to create games with ease and deploy them to platforms in which there is a large consumer base. You can argue as much as you want about how many million RPi's have been sold worldwide but the majority of those are to hobbyist. From a market research point of view, this isn't as lucrative as platforms such as Android, iOS, UWP, XBOX, PS3 etc. where gaming is one of the focuses of those platforms. This leads us to the second key factor, support. I am a co-founder of a software company that designed and deployed a portable, scaleable and easy to use grading system for dentistry students at a University, one of the major factors for us when implementing was how we were going to provide post-deployment support for the platform. Now this platform has one use however it needs to work on multiple systems. The problem that arises is, we are a small company of about 4 - 5 employees at any given time, many of us don't work full-time, we could in theory program for each platform and maintain a codebase for each platform, or we could maintain one codebase for multiple platforms. The first option requires us to have support for each codebase whilst the second we only require one. How does this relate to GMS and GMS2's lack of RPi export? Well essentially it's like maintaining multiple codebases, you need a support team behind it, this means more costs overall and over time. In Australia, (I'm not sure about Europe/GB) we have to pay wages based on award rates the government sets. On top of this, we also have to pay for their superannuation, tax and other benefits and to make it even more costly for us, we tend to prefer to find the best of the best to work for us and thus we pay even more above the minimum wage and pay what their worth and so at the end of the day, the cost of hiring a full-time employee is around the mark of 70-80K per annum. This is quite expensive when you think about it and I believe this is one of the major key factors for YYG not to provides the export as if based on my knowledge and experience, it would cost roughly 320K in support costs over the duration of the software.

    Now onto some technical things about creating an export option for the RPi.

    One of the amazing things about the RPi is the fact that it's affordable and allows hobbyist to tinker in the embedded world without to much of a hassle and crazy learning curve. The other amazing thing is the fact that you can load multiple different operating systems onto it, Ubuntu, Fedora, Debian, Arch etc. You name it, there's probably a way of getting it to work. But this flexibility does pose issues for an export component in GMS and GMS2. One of the first questions, I would ask myself if I were doing such a component would be, how do I support all of these different operating systems? and secondly, if I'm to support just one, which one do I support? In theory it's not all that hard to create a cross-platform codebase, ensure you use libraries available on all platforms and don't do any tricky things... here's lays the issue, for a simple program, that's possible. For a program like GMS/GMS2 that's not quite as possible. I'm not sure what graphics library GMS/GMS2 uses on the back end but I can name a few that I'm certain it employs and those are OpenGL, OpenGL ES and WebGL. If you've ever worked with OpenGL directly, you'll understand that it can be a pain in the backside to get it to function exactly the same on all systems and that's between Windows, Ubuntu and MacOS each one of those requires different headers and if you decide to involve GLUT, you'll have to pick between all the different unsupported or barely supported GLUT libraries. Oh and heres the catch, some features of OpenGL might not be available on different platforms and this is just OpenGL, what about sound, what about networking? There's a heap of individual components to get right and then after that, you need to get them all to work coherently together.

    The other place in which might be a problem is the interpreter/compiler. I assume GMS/GMS2 compiles to bytecode and so YYG will need to build in support to their compiler to have it translate GML into working ARMv7/6/5 (Or whatever the RPi boards are) byte code. Other things it will need to do is expose the on board hardware components to GMS/GMS2 in a safe and secure way, such components would be the GPIO pins, Camera etc. These are whole new set of functionalities that GMS/GMS2 will need implemented and trust me, it's not a small task.

    I haven't really gone overboard in the technical side of things as I'm trying to keep this to as simple as possible however if you're really interested in the obstacles one would encounter, you should study Systems Programming (The University of Western Australia has a very good set of lecture slides available to the general public. If you google UWA CITS2002 you should get last years course material however that may be changed soon as the new semester starts and they will reset the information).
     
    PNelly likes this.
  21. Mike

    Mike nobody important GMC Elder

    Joined:
    Apr 12, 2016
    Posts:
    2,393
    Sorry.... did you say something? :rolleyes:
     
    Kenjiro likes this.
  22. Token Chingy

    Token Chingy Guest

    Probably what you've iterated over and over again throughout the years I've been reading these forums. But these topics do keep coming up...
     
  23. DukeSoft

    DukeSoft Member

    Joined:
    Jun 20, 2016
    Posts:
    783
    Welp, a small game in HTML5 with Physics runs at a stunning 8FPS on my Raspberry Pi 2. Gonna try some other options soon :)
     
  24. Austin Scola

    Austin Scola Guest

    I totally agree. GMS can export to Linux though and RPi runs Linux? I have never tried it, but wouln't it work, or does a build only work for certain distros?
     
  25. Kenjiro

    Kenjiro Guest

    x86 Linux != arm Linux

    Different at the binary level.
     
    Austin Scola likes this.
  26. GMWolf

    GMWolf aka fel666

    Joined:
    Jun 21, 2016
    Posts:
    3,464
    And that is why i love java.
     
  27. Kenjiro

    Kenjiro Guest

    Eww, java.
     
    Kuro likes this.
  28. Mike

    Mike nobody important GMC Elder

    Joined:
    Apr 12, 2016
    Posts:
    2,393
    Banned. :p






    (not really)
     
  29. Roa

    Roa Member

    Joined:
    Jun 20, 2016
    Posts:
    565
    Its a lot faster CPU than you will get in even some $150 phones let alone 30 bucks. Is higher quality build and specific in its design to do what it does, vs a phone driving up cost by having cheap screens, batteries, GPS and gyro. The I/O setup gives you access to tangible things, so you can build your own arcade cabinet or pinball machine. Can get some crazy input and output going, like sound sensors, or custom controllers, to LED crawler screens and servos. There is a lot you can do with it for 30 bucks. A lot more than being locked into android distro.

    You kinda can use android, but its half assed right now.


    except all the people that buy them to play games?? People even turn them into mini consoles and hand helds. Im pretty sure 20% of their sales alone are due to emulation boxs. You can emulate all the way up to PSX completely smooth on them. Have you even touched one these things? They're great little power boxes and are universally adaptable with usb-in power, and hdmi connections. I carried mine to my friends house, and I plugged it right into his TV, powered it from his TV too and had a fun time on quake. Even got some classic deathmatch in.

    People dont play native games on it, because there are no games on it that are novel or interesting enough to engage in. Pretty sure games would sell like hotcakes for it if there was a big enough, creative enough, and exclusive enough library.

    That, a slightly faster GPU, POE in vs just micro usb, and a power jumper pin onboard.
     
    Last edited: Aug 7, 2017
  30. Bridget7298

    Bridget7298 Guest

    Let me chime in on this, I have owned at least 10 RPI Zero's, 5 RPI Zero W's, and 5 RPI 3's. I have built several projects with them. Iv'e built the PiGrrL, PiGrrl 2, PiGrrl Zero, Gameboy Zero, Retro consoles, and even my own custom handheld. The reason why this probably isn't a good idea for a game maker module is because it is quite amount of work to use these hobby machines in general. Sure there some people who just turn it on and throw a controller in the USB slot and call it good.

    In reality, the Raspberry Pi uses an ARM processor, which isn't the greatest, and also it lags very bad if you play something as small as Mario Party on the PI 3. Like mentioned previously, this would be nothing more then a tool for developers to test their games. Not to say there wouldn't be any custom handhelds made running GMS Games because there probably would, however it be so slight.

    When I built my first Game Boy Zero, I spent a lot of money on parts. 3D Printed Case, Pi, Audio Controller, TFT Screen, Button PCB, Wires, Power Booster, Switches, Lithium Battery ETC ETC.. It get's expensive. Who is going to want to buy a handheld with a game maker game on it when they can already buy preloaded handhelds on Amazon for a fraction of the price it would cost to make one of these?

    Even if you wanted to use a pi as a desktop computer, whats the point of playing game maker games on it when you have a Windows computer right next to you that has all the mods you ever need.

    My point is, this would be simply for mere fun for developers just to see it in action and nothing more. There is no money in this. At least not right now. In the future there might be some use for this, but right now, the PI is strongly known in the world as a nerds gadget.
     
    Last edited by a moderator: Aug 8, 2017
    DukeSoft likes this.
  31. Tulloch

    Tulloch Member

    Joined:
    Jun 26, 2016
    Posts:
    32
  32. Roa

    Roa Member

    Joined:
    Jun 20, 2016
    Posts:
    565
    For what purpose would you test on a pi with no intention to distribute?

    Do you know what ARM means? Its a form of RISC chip: reduced instruction set of computations.(computer; depending on who you ask)

    How it differs from your typical intel-X86 is that the chip is asynchronous vs relying on a time oscillator to keep a "sytem clock". Your x86 can do a lot of work in one cycle by passing data through different instruction sets, instruction sets that can do a lot more work in a few clock cycles than doing raw computations bussing around the CPU die. This in turn gives you higher compatibility, higher "data buss" rates, and generally because the pace at work is done, you can achieve higher clock rates for thermal and power reasons(Which in practice doesn't necessarily mean its faster based on what instructions sets it has and the scale of lithographic pathways). The downsides being way more complex and much more expensive development, much much higher power consumption, and in some cases, wasted cycles.

    ARM is the opposite end of the field. The clock is throttled as voltage needed and workloads and bussing is terminated on command. The RISC design is to power through work loads with as much brute force as possible, without bussing around for logic gates and instruction sets. You can get a lot more work done in a "circuit wise" shorter time if you dont have to worry about instruction sets, all your programing will be simple enough to not take advantage of it. They're Waaaaayyyy ****ing cheaper, computationally competent and depending on the case, faster, and only draw power as needed.

    That's why all your phones use them instead of x86. Its doesn't mean they have a lack of power though. You have phones on the market that can keep up with last generation consoles, or punch through 5k image capture with ease. So no, they're arnt that weak.

    The wii U and switch both use RISC cpu and GPU components.

    The reason you're emulation lags is that its making virtual copies of the proprietary CPU design and passing things through this "software cpu" and converting it back to something your machine's CPU can use. It's extremely inefficient and requires a lot of power to get through, hence why a CPU that already makes no saving shortcuts through instruction sets would struggle with it. If you run programs designed for that chip though, it burn through it just fine.

    ARM is beyond capable of gaming. We wouldn't have all these high detail vector art and 3d games on our phone if it didn't. The problem comes in at developing conversions for such an export at a low enough level to take advantage of it...which people
    like @Mike are really ****ing good at this. He is pretty old school and grew up in an era were you were forced take take advantage of memory and CPU transitions as best as possible for lack of the complexity we have now days. So thats not the prime issue.

    Also, yeah, when you single handedly design and put together anything at a retail price, vs mass production at bulk outlet price, its going to get expensive. Welcome to the modern industrial age. People would still like to design for the PI outright for its novelty factor and pushing it to the limits. Whats cooler than showing your friends a circuit board out of your pocket that plugs right into their TV and plays your game? Thats pretty badass to me. If I wanted a next gen handheld, Id go buy a new 3DS
     
  33. Edward T. Phantom

    Edward T. Phantom Member

    Joined:
    Sep 22, 2019
    Posts:
    1
    Why not simply prepare a crowdfunding campaign for the RPi exporter ? if the yoyo devs help giving a low cost shot , and with good effort of everyone , we can do it !
     
  34. Roa

    Roa Member

    Joined:
    Jun 20, 2016
    Posts:
    565
    @Mike has already toyed with it. There are a handful of "officially"(about as loosely as you can use that term) translated games, very simple ones.
    Basically it comes down to the fact that YoYo being bought by playtech means they aren't a little mom-pap studio that can just do what they want anymore. Funding wouldn't be enough, there would have to be enough market demand. Which lets face it, while its cool as ****, a demand simply doesn't exist.

    There have been a few talks of capturing the build dump before compile, and just compiling that c++ into linux ARM archs yourself, but its all just been talk and no one has actually successfully done it yet.

    [edit]
    I just released this is the 2017 thread necroed vs the new one. Everything I said has just been on repeat.
     
    Last edited: Sep 22, 2019
    Samuel Venable and FrostyCat like this.

Share This Page

  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice