Ask Epic Anything: Programming & Scripting | May 24th, 2023 at 12:30PM EST

There is no way to due this currently, but this is something we would like to add in the future

3 Likes

Yes. This is something that essentially has infinite ability to evolve in sophistication. No specific ETA yet though it is a high priority.

Since Verse is statically typed getting user specified properties could be challenging - though not necessarily impossible.

I’m not sure if there is another reason - such as stability or security - or if such functionality is just not implemented yet.

There has been very little performance optimization of Verse - that will be more a focus with the future Verse VM that will replace the Blueprint VM. Until that happens I’m not sure how relevant that answer will be or for how long.

From my own personal bias - I prefer Verse events - especially Await() over subscribing. I think that it is more powerful, flexible and resilient. It will be even easier in the future with things like iterated concurrency expressions. Not everyone agrees on this so try different things out.

4 Likes

Yes this is on the roadmap for 2023. You can get more information on this in the Verse Programming Language GDC talk: https://youtu.be/5prkKOIilJg

3 Likes

We are looking to have something similar eventually - no specific ETA.

AI tooling around Verse will inevitably become a reality at some point - no ETA for Epic efforts on this front.

Some UEFN developers have already done some experimentation - https://twitter.com/wbwarforge/status/1643723599667183618

4 Likes

Separating out into multiple devices is often the more manageable approach in terms of being easier to add new features to your project in the future. Splitting up logic into multiple parts allows you to make it more flexible and reusable in other systems. Also makes it easier to revisit in the future.

3 Likes

Yes there is a Verse BNF - we probably just need to clean it up and remove the future plans from what is currently present before we can put it online in the Verse documentation.

Technically yes - they are separate types in Verse. One of the hints is that true and false are both lowercase like other Verse type name conventions. They aren’t indicated that way in the docs currently though the typing in Verse is quite sophisticated and as this becomes more feature complete the docs will better reflect the Verse type theory.

Yes.

3 Likes

Awesome! Great to hear!

But the devX with Verse is hard to work with, its very hard to test code. When will we see some tooling like:

  • REPL
  • Unit Testing Framework
  • Ability to programmatically create in-game data and events for testing

All the above is being actively worked on - by me in particular. I’m excited about it too as are the internal teams that will be using it. Unfortunately no ETA yet.

4 Likes

Yes - the plan is to create collaboration tools. No specific ETA. Definitely use community mechanisms for now.

Verse Debugging is also planned. Also unhelpfully - no specific ETA yet.

4 Likes

The plan is to eventually open source Verse once it is sufficiently evolved. Probably sometime after it is available for Unreal development.

3 Likes

Awesome! Thank you!

Yes - the new custom Verse VM is well underway…

3 Likes

Verse will not replace Creative Devices. In an ideal future, existing devices will evolve into open sourced Verse scripts that we provide so you can learn how they are made or make your own variations of those devices. For each device this means that we will need to have the Verse API necessary to support it. They will still be usable as they are today, but you will be able to see how the device is made.

4 Likes

Good question. As Ray above says - ideally all new custom Verse devices will be able to be used anywhere that original style Creative Devices are used. And all original style Creative Devices will continue to work as they do though ideally eventually they will stop being black boxes and you will be able to see the Verse commands that they are comprised of - and of course remix them and make variations of them. We are excited internally at Epic to get to this point - though it isn’t clear if we will 100% reach this point or when.

3 Likes

I’d say the most difficult challenge is prioritization. There are so many things that need to get done and so many different people dependent on different parts of the system trying to push certain things to be prioritized. There are many bugs to tackle and also new features that would be super beneficial. It’s not an easy solve and it’s a lot of talking with the community and various teams and making your best guess on what will be the greatest return on investment.

I’d say the biggest advice that I would give creators is to build up a portfolio of completed and diverse work as well as collaborations with many different people. Aiming to hit success is great, but if your goal is to get into game development, showing that you can see multiple different types of projects through from start to finish as well as work well with others. It’s often important to remember that you will more often than not be working with others. Technical skills can be earned over time on the job.

4 Likes

Currently everything is known by UEFN - all the API is specified in the three *.digest.verse files. In the future it would download from an online code / asset repository.

It is the difference between local vs. remote modules.

Yup. Eventually.

3 Likes

We are always interested in hearing any Verse API creators feel are missing. This helps us prioritize features.

4 Likes

I am actively looking into this - also any caping of server vs. client and Sleep(0). Not sure of the interactions between the systems and what is possible yet.

I hope so! Plan to discuss this soon. Not sure where things will go or any ETA yet.

3 Likes

The plan is to eventually have software plugins of some sort. Not sure about Python plugins specifically. [I helped integrate Python into Unreal editor so I’m familiar with Houdini, etc.]

3 Likes

As much as I love coding, for me it is a means to an end for Game Design. It enables me to be able to not just have an idea and talk to people about it, but to also build out a prototype at least to quickly convey an idea. If a picture is worth a thousand words, a playable prototype is invaluable.

2 Likes

For me, I started in high school taking every class possible related to IT, Tech, Programming, etc. I wanted to make games, and as a kid the first thing I realized was to code them. I ended up building a lot of little projects that were shareable. I’ve found that the more shareable projects I have the easier it was to get interviews and to have something to talk about or refer to when asked questions myself.

3 Likes

Yes

3 Likes