Search Unity

  1. Check out our Unite Austin 2017 YouTube playlist to catch up on what you missed. More videos coming soon.
    Dismiss Notice
  2. Unity 2017.2 is now released.
    Dismiss Notice
  3. The Unity Gear Store is here to help you look great at your next meetup, user group or conference. With all new Unity apparel, stickers and more!
    Dismiss Notice
  4. Introducing the Unity Essentials Packs! Find out more.
    Dismiss Notice
  5. Want to see the most recent patch releases? Take a peek at the patch release page.
    Dismiss Notice
  6. Unity 2017.3 beta is now available for download.
    Dismiss Notice

Which of these game projects would be easiest for a non-programmer to make?

Discussion in 'Getting Started' started by Sanhueza, Oct 11, 2017.

  1. Sanhueza

    Sanhueza

    Joined:
    Nov 20, 2016
    Posts:
    19
    I am an experienced game artist and designer, who wants to use Unity to prototype my game ideas. Preferably, without doing any coding.

    I have spent many years working in the AAA industry and on indie games (digital and tabletop), both in art and design. I even studied programming (C++ and Java) during my first 2 years in college. But it has been nearly 20 years since I last did any coding. I do not want to devote myself to the several years of study and practice that it would take to become a good game programmer. Being a 3D animator, 2D artist, art director, and game designer is already enough hats for me to juggle.

    So what I am planning is to learn the basics of Unity by following the tutorials (Roll A Ball, Survival Shooter, Tanks, etc... yes I know these involve coding), and then learn to use a visual scripting tool like Playmaker (also through their tutorials.) I hope that by taking this approach, and purchasing extra goodies as needed from the Asset Store, I will be able to hack together some fun game prototypes on my own - without being a programmer.

    I realize that it is unrealistic to think that I could finish a game project 100% without any coding... but hopefully this approach would at least allow me to put together some impressive demos/prototypes that could help recruit interested indie programmers, or could help raise funding to hire some.

    My question is, for those of you who have tried making games in Unity with little or no coding, and for those of you who have programmed any of the types of games I'm about to list below, which of these game genres would be the easiest for a non-programmer to make, using Playmaker or a similar tool? Which one would you recommend attempting first?

    1) Multiplayer Arcade Game - similar to "slither.io", a game with simple graphics and simple controls, where hundreds of players in an arena try to kill each other.

    2) Tycoon Sim Game - a single player game that is mostly UI-driven with 2D illustrated (or pre-rendered 3D) splash screens for turn summaries and special events. Gameplay involves managing the stats of a bunch of characters and assigning them to different tasks for profit.

    3) Abstract Strategy Game - a game like chess, using cards, where 2 to 4 players push each other's cards around to try to control the board. Would require online play with matchmaking for up to 4 players per match.

    4) Endless Brawler - a single player "Endless Runner" style game, (2D, or 3D in static side-view) where instead of running, you stay in one place and fight endless waves of oncoming enemies.


    I expect that following through the various Unity tutorials will not only provide me with a better understanding of the tools, but also how much work and complexity goes into each of these different genres on the tech side. Which will then help my decide what project to take on first. But until then, I am very happy to hear your suggestions, and your related anecdotes.

    Thank you!
     
  2. JoeStrout

    JoeStrout

    Joined:
    Jan 14, 2011
    Posts:
    5,710
    I think option 4 will be the easiest. Anything involving networking is about a gazillion times harder than the single-player equivalent. (That might be a slight exaggeration, but not by much.) And a tycoon sim game is a very complex simulation, that I think would be hard to manage with visual scripting.

    But a arcade-style brawler against waves of enemies? Nothing especially tricky there.
     
  3. mgear

    mgear

    Joined:
    Aug 3, 2010
    Posts:
    4,024
    i'd probably try first #4 or #1..

    4) might find ready 2D controller / template from asset store
    1) for quick demo, might be possible to just modify existing uNet or Photon example projects to prototype.. but cannot have hundreds of players on those free tiers
    2) sounds bit complicated

    not sure how easily playmaker works with networking, might want to check that before try multiplayer games..(i've never used it)

    also always check asset store first, might even have slither io clones already to work with
     
    Sanhueza likes this.
  4. Sanhueza

    Sanhueza

    Joined:
    Nov 20, 2016
    Posts:
    19
    @JoeStrout @mgear Thanks for the advice, guys!

    I've been thinking that, for a demo, online multiplayer might be unnecessary. For option #1 I could just fake it with hundreds of A.I. bots. And for option #3, local multiplayer (and A.I. opponents) should suffice.

    I could always figure out the networking later (though I know it's best to plan for that from the beginning, but I'm currently clueless either way, so it doesn't really matter.) Or let a much more capable networking programmer take over that part later. :)

    More advice / opinions are appreciated!
     
    Last edited: Oct 11, 2017
  5. Kiwasi

    Kiwasi

    Joined:
    Dec 5, 2013
    Posts:
    14,500
    Online multiplayer is a big red flag for high complexity.

    Which leaves the endless runner or the idle game. I would peg the endless runner as somewhat easier.
     
    Sanhueza likes this.
  6. Sanhueza

    Sanhueza

    Joined:
    Nov 20, 2016
    Posts:
    19
    Thank you for your suggestion @Kiwasi

    I understand that online multiplayer can be a very complex feature, especially for a beginner, and would probably be best to avoid for the first few projects. Just starting out as I am, I don't doubt that trying to add that in right off the bat could overcomplicate things for me.

    What I am curious about, though, is WHY is online multiplayer such a difficult feature to develop, IN GENERAL? Even today?

    I see many "plug-and-play" server solutions and cloud services available these days, from Unity, Amazon, and many other companies. And from searching the Asset Store, I can see a multitude of networking assets and even complete projects built around online multiplayer, that can be purchased and modded. Though very few of these options are free, they are relatively inexpensive, especially when compared to the hundreds-of-thousands-of-dollars-worth of programmer time it would take to develop the networking for a big online game from scratch.

    So now in 2017, when SO MUCH of the work is already done for us, why is online multiplayer still such a headache to implement? Is it that even these premade solutions can be a pain in the butt to setup and connect correctly? Or is it that online multiplayer fundamentally affects the way in which a game needs to handle events, calculations, data, etc. in order to keep everything in sync?
     
    Last edited: Oct 12, 2017
  7. LaneFox

    LaneFox

    Joined:
    Jun 29, 2011
    Posts:
    4,795
    Well at the simplest level because it adds a significant amount of code and in requires extensive testing since the client's gameplay is dependent on the server. The amount of work is non-trivial even when you're well acquainted with it. There isn't any plug-n-play solution, even the most popular solutions are not plug-n-play. They offer a framework, API and services in an attempt to give you a stable and consistent multiplayer back end where you can only focus on the other half of the work which is implementing their offerings and services.

    For a beginner it is really too much to expect them to correctly debug issues with networking in addition to their own design code. It will probably lead them to burnout which is why the general recommendation is to avoid it until they're comfortable with everything else.

    Other than that, things like security, anti-cheat solutions, latency prediction, client-to-client resolution (did he hit me? or was it a miss?) and all that is also not built in, and is definitely something you want some form of in a multiplayer title to make sure the players have a good experience.
     
    Kiwasi and Sanhueza like this.
  8. Sanhueza

    Sanhueza

    Joined:
    Nov 20, 2016
    Posts:
    19
    @LaneFox THANK YOU for the very detailed explanation!
    I guess it's the way that they market their services that makes them sound like they are plug-n-play: "Add the Amazon GameLift SDK to your game, upload your server, and Amazon GameLift will start connecting your players in minutes." At least, to the uninitiated. But your explanation really makes sense, that there is just so much more to it.
     
  9. LaneFox

    LaneFox

    Joined:
    Jun 29, 2011
    Posts:
    4,795
    I mean, it probably will. But after they're connected... You're responsible for designing, implementing and testing 100% of the communication between players. Their service is nice, but it doesn't insta-finish your project.
     
  10. Kiwasi

    Kiwasi

    Joined:
    Dec 5, 2013
    Posts:
    14,500
    At its heart single player involves getting one computer to do what you tell it to. Online multiplayer involves telling two computers what to do, and getting them to talk to each other as they do it.
     
    Sanhueza likes this.
  11. Sanhueza

    Sanhueza

    Joined:
    Nov 20, 2016
    Posts:
    19
    Okay, so, online multiplayer is out.

    And several people have said that the Management Sim (game #2) sounds like it would be complicated and/or ill-suited for visual scripting. So that's out too, for now.

    So that leaves:

    1) Faked-Multiplayer Arcade Game - a single-player version of the "slither.io"-style game, which fakes the multiplayer with hundreds of A.I. bots.

    3) Abstract Strategy Game - the "chess with cards" turn-based game, with only local multiplayer and A.I. opponents.

    4) Endless Brawler - a single-player game that is one part Beat 'em Up, one part Fighting Game, and one part Endless Runner.

    I am continuing to do research on the forums, on YouTube, and on the Asset Store, to evaluate the best paths, tools, and assets to help me learn Unity and pull off one of these games as a solo dev.

    I'm thinking that once I get rolling, this experience could make for a fun YouTube dev log and tutorial series. I haven't found much information out there on the subject of "Game Dev for Non-Programmers", but I imagine there could be a lot of interest in it. And hopefully the things I will learn, my mistakes, and my successes will help and encourage others who want to get past the non-programmer barrier.
     
    Last edited: Oct 14, 2017
    JoeStrout likes this.
  12. CarterG81

    CarterG81

    Joined:
    Jul 25, 2013
    Posts:
    1,640
    Even with these changes, your #4 is still the easiest by far. @JoeStrout 's answer is all you need. Even with the changes, just replace Multiplayer with AI, and it's still more programmer-y than #4.

    Some of the game components most "programmer-y" would be Multiplayer, AI, and Simulation stuff.

    The endless brawler sounds like it could even be maintained in a single scene, with simple AI, but still be quite fun. Especially for an experienced artist.

    I also would take a look at the Asset Store. Specifically for assets that both fit your game AND have reviews from non-programmers having an easy to implementing.

    I think there are also complete game kits like an endless runner. Not sure if that would be any good though. Worth looking at.

    There are some games that would be easier to build with Unity or the Asset Store than otherwise.

    What I would do is this: Find other people with similar skills to you. If you use Playmaker, start in that community. Find users who have completed a game or near completion and can show you.

    The idea being this: If someone else who is a non-programmer has made a game, then it is something you could also do.

    This is a great way to get a general idea on scope. Seeing how many people made a game, what their skills were, how long it took, etc. This tells you what is easier / more realistic to achieve. Because others have already done it!

    You will quickly find there arent very many (if any) artist non-programmers who made a sim game, or multiplayer game, or you play and their AI sucks or is super simple. Or maybe the surprise will be pleasant and lots can do this or that. It will give you an accurate picture.

    If others like your skill have completed a game, then it is likely to be easy for you. Especially if they used the same tools.
     
    Last edited: Oct 15, 2017
    Sanhueza and JoeStrout like this.
  13. neubiole

    neubiole

    Joined:
    Oct 15, 2017
    Posts:
    14
    I would love to make my own game without coding too but i'm just an newbie in games. However, I agree that less complicated game style is suited for this such as the Endless Brawler.
     
  14. Sanhueza

    Sanhueza

    Joined:
    Nov 20, 2016
    Posts:
    19
    Thank you for your advice, @CarterG81 !

    Yeah, I've been spending a lot of time browsing the Asset Store. It can be addicting...

    There are definitely many Endless Runner kits on the store. I don't think they'd be much applicable to the "Endless Brawler" game, though, since it's not really a Runner, it's just Endless. :)

    I have found a few kits/complete projects that do look promising for the Endless Brawler:
    Universal Fighting Engine
    Beat 'Em Up - Game Template 3D
    Though I'm worried that they might be a little too rigid for modifying them outside of the game mechanics they're designed for, at least probably not without a lot of coding. I'm afraid that after a certain point, these pre-made projects might fight against what I want the game to do, more than they will help.

    There are some other 2D/3D engines on the Asset Store that might be better choices. They aren't nearly as specific as the Fighter/Beat'Em Up engines above, but seem like they could be more flexible and open-ended:
    Corgi Engine - 2D + 2.5D Platformer
    2.5D Platformer Engine
    Third Person Controller - Melee Combat Template

    I'm also looking at Playmaker, GameFlow, and other visual scripting tools, to see which might be the best for hacking everything together.
     
    JoeStrout and CarterG81 like this.