The Mono Project likes scripts. Does Epic Games?

I have to try this with my customers, when the request a “but you could do it yourself!”

>>>>

You’ve got official response long ago. Indeed, you should try it with your customers.

so If I make a program in C++ and one in assembler you would say that the major difference is a syntax difference?

Just do it do, somebody else did the c++ part, try with C# and blueprints and see for youself

This doesn’t even make any sense… [unsubscribed]

You are forgetting (you people who whine about C#) that Epic offers you UE4 without upfront fee, with full source, and only with 5% royalties after you earn certain amount of money. So get what they offer and make do with it.

Alternatively, become AAA studio, pay Epic appropriate fee for support and maybe then they might consider helping you implementing C# into UE4, if you are going to be the one to implement it for your actual project. And maybe it will be merged into one day.

Apparently if you can’t comprehend it after 2 pages of detailed info you are hopeless case.

Yeah, I am looking at you, .

I’m not really sure what you mean. I’m just curious what reasons you have for wanting C# that aren’t already covered by C++, Skookum, or BPs. I can’t really think of one. It’s an actual question.

what’s the purpose of the request tag then?

and the .net framework ofc

Certainly not for spamming forum with unreasonable requests. Think hard before you post. For example, there might be an existing that works on PC, but but haven’t been implemented on Android yet. There goes request to extend that existing to another platform.

I come from Quake / Doom 3 modding / development, so it would be cool to have either QuakeC or DoomScript scripting languages in UE4 because that’s what i am used to and that’s what I like working with. Following your logic I could have posted it as request. However, not only it will never be implemented, it would take away time and resources from more important things UE4 needs if Epic were crazy enough to implement it (which I also want to have and which are more reasonable and feasible and practical for end-product).

I don’t get how you and other C# requesters don’t see the with your " request".

and who are you to say that?

if it cannot be done, it will not be done, if it’s a low priority than it will be listed as low priority like the rest of other low priority tasks.

This is a “Feedback for Epic”, so it makes perfect sense to be Epic aware of your “wishes”,
I don’t spam every other requests calling BS on whatever other people want just cause isn’t something that is useful to me.

so before thinking of what you write, try to think if you SHOULD write at all.

That’s not really an answer. What’s your use case that you are unable to perform with the other 3 options? Almost all of the things in your picture are covered by unreal’s C++ implementation.

You’re giving a lot of, “Oh I want X,” without giving any reasons why you want x. Your argument would hold a lot more water if you were giving reasons things currently available to you aren’t workable solutions, and I’m sure those reasons exist, you’re just refusing to give them. Syntax is not a good enough reason on its own to add a new language. Skookum would suck if it weren’t live editable/debuggable with inlined asynchronous operations and a host of other features. If it were just syntax nobody would use it. At this point I’m not even sure this is a you actually want rather than trolling. You’re not giving any actual reasons for wanting it. A picture of all the features added to C# over 10 years isn’t really an answer when most of those features already exist in C++ or are implemented in unreal’s APIs.

Maxi i dont think you understand that C++ in UE4 is not C++, it really isnt, its the closest thing to a Managed C++ that you will probably ever see, besides for just being C#, i would like to say that LITERALLY the only difference between the C++ we have now in UE4 and the C# that you want is that we dont have access to the .Net library, which in itself is not that big of drawback at all.

Also to answer your question about why CryEngine and Unity both have C# support, its because they both dont want to open their engine to their users for money purposes, so instead they give their users a SubSet (C# layer) of features to work with. So the only reason they dont offer C++ support themselves is ONLY because of the fact that they are greedy, nothing else, not because C# is just more liked by everybody (which it isnt), or that its better than C++ (which it isnt), but purely because they dont want to open source their engine to their customers.

Hands down, if you cant take the time to learn C++ in UE4 and live with the fact that, it is the best and only way to code in UE4, then you honestly dont deserve to use the amazing engine that Epic Games has worked so hard to provide to you.

The rest.

tell me a bit about compilation times, debug experience, intellisense, reflection, and all the features in the above image.

yeah I mean… who ever needed that

so why didn’t they provide a subset (C++ api layer) to work with instead of a C# layer?

tell that to everyone else in this section

Dude. I’m not trying to argue with you. I’d like to have an actual adult discussion about what you feel is missing. It’s pretty clear to me that you have no interest in actually talking about what features you want (over a handful of posts you have not given a single concrete ). This isn’t the way to actually convince people you’re right. I’m out.

ok, let’s choose linq and compilation times

Compilation Times will always be higher with a programming language compared to a Scripting language, thats just a static truth that will never change.
Debugging works just fine in VS, you can create Break points, Step through execution, look at the Call Stack, Watch variable’s in real time, basiclly everything works for debugging that you could ever want.
Intellisense works out of the box, not sure what else you would want.
Reflection is handled very graciously by Epic Games, and is the reason why i told you that you are so lucky to be able to have access to such an amazing engine.
There is no in that picture that you showed me that Unreal’s C++ doesnt already provide to you, please name one.

Nobody actually, cause Epic already provides their own Robust set of library’s for you to use.

You cant create a C++ api layer if the underlying C++ isnt exposed to the user somehow, and that is the very reason why CryEngine, and Unity dont provide one, the only reason you can do such a thing with C# is becuase of the fact that it is a Scripting language.

Honestly, you seem to be the only person that even cares to have C# in the engine, once everybody was told that Epic wasn’t going to do it, they were fine with just using Blueprints, and the soon to be complete SkookumScript, which i highly, highly suggest you try out, becuase it really is an amazing Scripting language, of which the developers are providing First-Class support for Unreal Engine.

Good, that is what is needed, a faster scripting language, that can get the work done, I agree.

Not as fast as with C# and many things like INLINE always gets in the way.

I don’t even consider that as intellisense, it is slow, not accurate and it’s worth 1/100 of what you can get from managed language (and there is a practical reason for that, it’s just the way it is).

linq

well nobody cause it isn’t available. and yes, I like Epic library but you cannot really compare it to .NET.

are you telling me that every C++ project must be open source in order to use it with C++?

they left.

Linq is pretty easily replaced by using predicates in the find functions.

Compilation times really depend on what you’re doing. Skookum live updates even while running, Blueprints have never taken that much time for me. C++ can vary wildly depending on what kind of files you’re modifying, but if you’re using fast iteration build mode you should be getting <10s compile times.

Just too bored to continue.

I’ll leave you with this:



{3 4 5 8}.reject[item.pow2?]  // {3, 5}
BadGuy.instances.select[item.armed?]  // all bad guys with weapons


If you really think the difference is that great, then honestly dont be a programmer please, your just wasting your time in a field in which you will never thrive.

Debugging cant get faster, that doesnt even make sense.

Well considering it has an entire engine to parse, your right it will be slower, but the faster computer you have, the faster it will parse, hence the faster your intellisense will be.

Linq is nothing but a convenience library, you can do exactly what the Linq library does, with a simple for loop and an array. Dont be lazy.

Again, there is nothing in the .Net library that you dont already have access through Epic’s library, and if there is, it was most likely a convenience that wasnt worth porting over to C+

If you wanted to use C++ code from another project you could create the original as a DLL then link to it in the new C++ project, but i dont know if you can still inherit and override functions from the DLL in your newly created C++ project.

You dont speak for everyone else, even though you seem to think so.
If they did leave, then good, cause them, like you, dont deserve to use such an engine.