C# vs visual scripting(playmaker)

I have been learning religiously C# and unity apis for a long time now,
I mean minimum 2 to 3 hours a days,sometimes more,
reading couple of thick c# books.
But when I found out about playmaker I felt as I have wasted my time,and energy.(losing on my social life,sleep,you name it)
Of course I have found many post online discussing this matter.Which is better?
Some say they both great together,and of course you would know the other answers.
With many powerful mobiles I would think it dose not matter if playmaker is a tiny bit slower in performance.
I know this might sound somewhat selfish but maybe I like to hear I have not wasted my time and energy.
And learning C# further more,is useful.(still all the credits to the team who made playmaker).

This the main question .
Is it a waste of time learning c# when there are tools like play maker around?
What are some the cons or pros if you switch completely to playmaker?

I do not know about PlayMaker, but learning Unity is the best move I made. I have learned some Visual Basic to make a game, as well as 3 other codes and was discouraged due to constant changes in the coding language using for 6 years. The first code from the company was like C, but every year to 18 months they changed some of the root of the code and you could not “read back” to the earlier codes.
I then went to another company and after working AND FINISHING 3 FPV games, the Engine Company went “belly up”. Yep, they “folded” and I was not able to Publish my games.
So, what is the possibility of your Play Maker Engine company lasting over 2 to 3 years?
What devices do you use with the language? Can you CrossPlatform to new devices?

I am now having to transfer my ideas to C# and JS using Unity. I am nearer to getting all my code answers that I use on my 3 games and have all my Assets from my other games. I just have to build the levels and drop in the objects.

I wasted 2 years with the other Engine and regret going with it.
Learning C# and JS will not hurt, since the majority of 3D devices are using them. Learning to transfer to Android and iOS will come easier.

Just some things to think about.

You have not wasted your time and energy - furthermore, you should invest more of it.

PlayMaker is at its core a finite state machine and there myriads of problems that are not best presented in terms of finite states. Usually you can write and maintain a script that addresses a problem much easier than you could wire up an FSM to do the same, though there are some problems where the opposite is true. Creating and maintaining an FSM in code quickly becomes a nightmare, and that’s where a tool like PM really shines. But creating and maintaining a complex system that solves a multitude of problems would be absolute agony to do in an FSM because you would have to resolve all of the complexities at some point to a series of finite states. This isn’t a trivial point - it might even be impossible to create a system that solves certain problems in an FSM, but there’s almost always a way if you know how to program.

The main downside of switching completely to PM would be that you have to design your game in the terms and logic that PM presents, whereas if you’re programming the logic yourself you make up and define whatever terms you want/need (within the constraints of the language). PM does enable you to make custom actions (which would require some programming ability) that extend its usefulness tremendously, but you’re still constrained to think in terms of events, transitions, and finite states.

I believe the best approach is to focus furiously on programming a system and reserve PM to solve those specific problems in the system that it excels at solving.

@ARRCOMM1
Thanks for your insight,I have experience with cpp,c# and lua,not visual basic.
I know it is kind of an old programming language.
I have look at some syntaxes, it seems very fun and simple.
Thanks for your response.

@Roland1234
thanks,I am glad to hear that,I have been really into C# and I fell in love with its simplicity compare to cpp.
Since I do not have to worry about pointers and memory management as much;)
I have to day I love working with C# in visual studio ,it makes me feel like I am in heaven.
And C# has so much hidden potential I love to master.
Thanks again:)

Yeah, same here - also coming from C++ (I’m still really fond of the language - I would actually argue C++ is simpler, but never mind that). Just wait until you get into generics, delegates, lambda expressions, and reflection in C#. Really neat stuff there.
If you are developing in Visual Studio then I highly recommend you get UnityVS along with ReSharper if you aren’t using them already - you will soon become a lean, mean, game-making machine.

Good coding to you!

I don’t even see a fair comparison between knowing how to program and using a visual editor. There just isn’t the same creative freedom when coding/designing systems when you are using a visual editor compared to programming. I don’t think there will be for a long time. I used a visual editor before I learned how to program, and as nice/convenient as a visual editor is, I can’t imagine developing an entire game only using a visual editor. You absolutely in no way shape or form wasted your time. Just my two cents.

I have been playing around with Linq,lambda,delegates,generics for a while now.
I still got to understand reflection better.
That is why I love it so much.

Thanks for letting me know about these tools,They do seem really awesome.I am trying them out now.
Since now ,I have been just using this method that I have found in this tutorial,you might of seen it before.
http://forum.unity3d.com/threads/120327-Video-Tutorial-How-to-use-Visual-Studio-for-all-your-Unity-development
It simply compiles your files in VS and it shows up in unity.
Thanks a bunch:)

Thanks.
For me since I have been coding in lua and cpp before this,I guess my eyes pick up text better somehow.
But I do not mind playing around with a Visual Scripting tool on the side.

PlayMaker lets you program new actions which can then be used in the Visual FSM Editor. This is very powerful. I can use all my C# knowledge to program new actions, then put together an FSM super fast or have another person use my new actions while they are visually scripting stuff in PlayMaker.

It’s not an either/or thing. Knowing both C# and PlayMaker can greatly increase your effeciency!

@Garth
Thanks for your insight:)