Download

Trying to Make a Looping Map

Ok so, If anyone knows the Tale of Tale’s game: ‘The Path’, an artistic survival game that plays off the Grim Brother’s Tale ‘Red Riding Hood’. It uses a mechanic I don’t see used very often that does WONDERS or keeping the game immersive.
What it is, is when the player hits the border of the map, they are immediately spawned on the opposite side of the map, creating the illusion that the player has walked in a complete circle, as opposed to hitting an invisible wall. I want to use this mechanic in my game if I can, but I’m not sure how to reproduce it. I know I’ll need a hidden actor box along the borders of my map, probably four different ones working in correlating opposite pairs, where when they player enters one it triggers the character to respawn in the opposite box on the map (or outside of it) so that the player could essentially keep walking forwards for infinity and never hit an edge. However, I don’t want the game to jump when they player is teleported either, I’m hoping to make it look as seamless as possible, but I’m just not sure how to do this. The easiest way to explain this if im confusing people, is to consider how you never hit an edge when walking around the world. It doesn’t end, you just end up where you started eventually.

Any help or suggestions? This mechanic is a must-have for any survival game and I’m definitely willing to share any solution I come across that works properly. Believe me when I say its a lot better than simply hitting the edge of a map or dying because u fell off a map or being eaten by a ocean critter for swimming out too far.

Sounds like a drumroll UE4 AnswerHub moment!

I’ll answer it here though. There are a number of approaches you can take. I would load 3 of the same level or edge-of-level if 2D or 9 of the same level or edge-of-level if 3D. You simply have the duplicates there to “appear” as though it’s infinite. With proper maths and player movement, they will never know the difference.

Game making 101: Smoke and Mirrors :slight_smile:

The other approach is of course level-streaming if you want a true “infinite” world.

Sticking multiple maps together would create more problems than solve for me. Its a huge map, so placing duplicates would make running it a nightmare for players. Also it would still have an end, and for online gameplay purposes it would mean that despite looping the map you are actually in a different location, players could never find you because one persons location could be another person’s looped location.
I need one instance, one map, that jumps the player around when you try and walk off of it.
In short, I need to know how to teleport the character without having the world need to go to a load screen all over again. I know this involves invisible actors, where once entered trigger you to respawn near their correlating opposite on the map. I may loop map sections just so ppl can never see the end of the map when they hit these actors, that’s a good idea, but they wouldn’t be for traversing, just aesthetics.
Sooo…yea. Anyone know how to teleport a character to a new location without loading a new level?

Thanks for the suggestions tho!

This is just a thought, but if you have a multiplayer game where you chase someone else, teleporting seems to be the wrong approach.

Imagine chasing someone to the edge of your map, and he goes over and gets teleported to the other side. For him everything looks normal, but the person chasing him would be left alone and wondering where his target went, right?

Try the teleport node?

Do you have a better mechanic to simulate a round map that wouldn’t have some technicalities at the seams?
I think if two players are chasing each other they’d prob both be warped eventually. There’s also going to be a scent ability so people following the trail would end up being teleported themselves, regaining visual on their target. Its not perfect but I think as far as Optimization and Maps go its the better option to simulating a round map. Unless you have a suggestion? :3

How does one use the Teleport node?

You can try making the world huge but on a sphere. Look at this video as an example.
https://www.youtube.com/watch?v=PLzu-nCjhA8

Hello all. Is levels with looping coordinates still impossible in such modern technology as UE4? Is it like “lost knowledge of Ancients”, meaning games that had that in past? (I can name “Terminal Velocity”, “Fractal Combat”, but most likely there are others). Such feature, with some “distance fog” added would give perfect freedom of “small planet”, but flat actually. Any knowlege please on this, anyone? Thank You…

What’s the end goal, endless runner flight-sim just above surface, or orbital exit / entry on small planet etc?

Single-player mobile-quality flight game is doable in UE4. Its not a lost art, its just ‘out of fashion’ maybe. But if you’re assuming you can just bolt-on multiplayer later - know this… MP is a whole other beast. UE4 isn’t geared up for large worlds and multiplayer out of the box. There’s a ton of architectural things to get right. Recommend you search on ‘Large Worlds’. For now check out Level Streaming / World Composition, and download Midgen’s procedural terrain generator

Would you say Gears of War’s Train Wreck level is a good example of looping level ? If so, how was that made ?

I am all into above-surface aerial shooters. Like this: https://youtu.be/B8YwdChqL_Y
For now, I am kind of weak in theory, and i have been always weak at math (i jumped into UE4 since it can be now visual Blueprints-only). I know about Cashgen, I guess have to study implementation. But, I don’t really need procedural (as I understand that term). I need placing 1 or 3 copies of level in direction where Player is moving. He needs to have visibility fog. I made an illustration (but now, when I think of it more, probably one “layer” of extra level copies has to be placed around all the time, and then swapped some of them left-righ, up-down, when needed). Please see picture. I would love to discuss this further. “End Game”, or Ultimate Goal - checkbox at Landscapes in UE4 editor - “Loop level coordinates (infinite level)”. Also debug checkbox for otherwise mandatory visibility fog.
LoopingMapSystem.jpg

It will work for multiplayer too if your take into consideration on which piece of map each player stands. When both players are on the edge piece you teleport both of them, when one is on the edge you teleport him but draw his avatar at previous edge piece for other player to see.

Thanks for not ignoring this topic :slight_smile: So, I am a 3-month beginner. I understand I should learn now about level streaming, understood. But I would like to ask to experienced folks here just this: is it doable to “stream”, swap around some squared level with everything that is there, including positions of everything. I am pretty sure i can learn to master level streaming, I just would like to know, is my imagined goal reachable at the end :slight_smile: Thank You.

Interesting, that, after my conceptual question in last message, no one is really saying would my described “looped world” be even possible, in UE4. Is that a “No”? I wasn’t even asking for ready solution (but that would be nice of course), I just wish to know is that a viable goal to try to reach. Thank You. :slight_smile:

Well, you had whole month to try implementing it…

Motorstep, no you get it excactly wrong :slight_smile: I have maybe a hour or two in a day for UE4, so, there is much basics I still go thru, etc etc. That is exactly why I asked conceptual question - is what I described possible at all, or should I strip that from my big list of “to do, to try” :slight_smile: But, thanks for responding anyway! It is not that I am not doing anything, here is my latest :slight_smile: https://www.youtube.com/watch?v=xr5f3F7hn-o

@Thunder_Owl Looking good! Looping level isn’t something out of ordinary. It’s just good ol’ hackery and more about the setup than technical limitations. Many UE3-based games did that. It’s just odd that no one seem to know how they did it.

Motorsep, thanks :slight_smile: Sounds positive and encouraging :slight_smile: About no one telling here how exactly that can be done - smells like conspiracy! Haha… Like, you know, knowledge of freemassons. We are looking for secrets of “freeloopers” :smiley:

@Thunder_Owl

Hey Juris - I think its possible using UE4… The reason no one has put forward a solution maybe is because the question is too open-ended. You could always ‘try something’, then post a more specific followup question afterwards etc.

Remember, the forums are quieter than 2014-2016, the type of game is maybe not as popular right now too, and there is no one-size fits-all solution either. Plus, you still have to populate the looping map with interesting stuff, which will take artful chops.

Did you ever try getting that tiled-map project to work, to loop around itself etc? How about using meshes and seeing what mid-gen’s plugin can do to help?.. BTW: UE4 Landscapes are quite heavy for flight-combat-sim work. 4.19 is bringing some run-time material changes, but in general you can’t mod landscapes at all at run-time, and they’re heavy, they weigh down a project like this…

Four trigger volumes that are on the tick and any object entering gets teleported to cords on the opposing side? Six if you want top and bottom?