Download

Training Stream - Procedural Room Generation - Jan. 6th, 2015

WHAT
Technical Writer Ian Shadden takes us through a project designed as a foundation for square tile, turn-based strategy games in Blueprints. We’ll randomly generate a map, “dig” rooms and corridors between, and populate it with teams. It won’t be a complete game, though should serve as a good starting point with it’s covered topics such as map generation, non-rendered actors acting as data classes, 1D and 2D arrays, the awesome “random streams”, and order of operations via GameMode.

WHEN
Tuesday, Jan. 6th @ 3:30PM - 5:00PM ET - Countdown]

WHERE
www.twitch.tv/unrealengine

WHO
Ian Shadden - Technical Writer
Chance Ivey - Community Manager

Feel free to ask any questions on the topic in the thread below, and remember, while we try to give attention to all inquiries, it’s not always possible to answer everyone’s questions as they come up. This is especially true for off-topic requests, as it’s rather likely that we don’t have the appropriate person around to answer. Thanks for understanding!

Edit: The video from the stream is now available to watch **here, **and the project should be available via the Learn Tab now!

You should mention whether it’s blueprint or c++ :slight_smile:

Thanks John! Updated :cool:

Sounds awesome, I subscribed to your twitch so hopefully I won’t miss it!

Is this something that will be on the market place in the future or a download somewhere?

This sounds incredible :D, seriously awesome stream idea, can’t wait to use this knowledge to develop strategy games/roguelites in the future :D.

Looking forward to the stream =)

I would like to watch this still 8 hours to go :frowning: . Teleport me in the future XD.

Minimum editor version to follow this stream?

The project should be in the Learn tab shortly after the stream.

This will be using 4.6.1. I’m not sure whether earlier versions will work without any changes.

I’m currently on 4.5.1, hope it’ll work fine. Thanks for the info.

This is relevant to my interests, hopefully I’ll be able to drop in :slight_smile:

Same. Just caught the tweet: I’m definitely there.

Wish, if any demo tutorial here, they provide a sample code from they demo tutorial… Because not all can easy follow :slight_smile: Thanks

This will all be in Blueprints so there is no code to provide. We will make the entire project available though. In the future when we cover programming topics, we will absolutely provide the sample code.

i’d love to watch today but time zone and work won’t allow, so hopefully it will be posted on youtube soon after

This sounds excellent.

between 10/11 pm for we :eek:
I hope too, i don’t know why but i can’t watching stream on twitch because too much lag…I hope it will come back as before…
Have a great twitch

I won’t be able to follow it completely, so I’ll ask here.

I don’t yet know how the system will be developed, but could the room generation system be adapted for a “Dungeon Keeper” or “Evil Genius” type game, where players build bases on a square-tile grid? Particularly in terms of setting up the grid and the class knowing how each tile should react to other adjacent tiles, such as detecting which form a single room and being able to draw rooms onto rock tiles. The rock is then replaced by the room and these tiles automatically create walls on the outer edges against the rock and archways when next to another room of a different type.

Great stream, and thanks for the shout out! :slight_smile:

Ian pretty much got me started back in April by helping me transition to instanced meshes and collision volumes for tile interaction, as well as ideas about structs and arrays. Been learning and iterating ever since. Looking forward to checking out the content example from the stream. I don’t think I would do much with quad trees, but I am sure there are tons of little things that I can learn from in random areas of the blueprints. :slight_smile:

Hoping to reach a good stopping point with the generator in the next couple months and move on to my own system of pathfinding.

I am interested in the Navmesh though. Looking at the nodes available in blueprint, I am not exactly sure what I would be able to do with it procedurally. There are a lot of “Cast to Nav” options in the context menu though. Is that basically how you get into the inner workings of Navmesh or are those dead ends? The plain Navmesh nodes don’t seem to give enough access, especially when it comes to Set.

Off the top of my head, here is a list of things I would need access to in blueprint:

  1. Set each grid point of the navmesh(feed my vector array into it)
  2. Set a cost for each point, perhaps with the ability to alter specific tile costs on a per unit basis
  3. Have multiple types of points(ex: land/water)… or maybe this could be separate Navmeshes
  4. A way to set objectives
  5. A way to retrieve all relevant path information
  6. Ability to generate and regenerate an arbitrary number of Navmeshes at any time(for each faction, different unit type, etc)
  7. Really any controls that give more flexibility for unique situations

Not sure what else might be useful off the top of my head, but if I can at least access that much then I might be able to make it pretty far with just that.

I can create a pathfinding solution myself, but I like idea of using Navmesh as the foundation even if only for performance reasons. Lots of simultaneous pathfinding needs in a Civ game. :slight_smile:

Thanks again for the stream Ian, and FYI, I pronounce my user name as Zeus-tee-ack. :slight_smile: