ID:133352
 
I was thinking about a few older games I used to play, and I remembered that the maps would wrap around on each other! I thought it was a really cool idea, but nonetheless, I have no idea about it. I was talking to Jon, and he said that there may have been a post on this already, if there is, delete this. Anyway, to my point. Would this be possible, at all, in DM?

Also, it would be nice to keep yourself centered around the map at all times without having that ugly black-space. I just think it looks better, personally.
This can be done with relative ease. Seika is a good example of this going well.
In response to CaptFalcon33035
With smooth motion, as opposed to having each border of the map just relocate you to the other? Otherwise, could you explain how Seika does it?
There's a few ways to do it. The easiest would be to simple stop the camera when the user gets to the edge of the map (so the player doesn't see black, although it could work either way). Then the user can walk to the far right side, and then you would move the camera and character to the opposite side of the world.
In response to DivineTraveller
I dunno if I'd do it any other way in BYOND unless it were absolutely important. It'd be fairly processor and coding intensive. You'd have to duplicate mobs and objs... and copy the world tiles to the opposite side.

Once you do that, only a small portion needs to be copied, cuz you'd just move the character and camera to the opposite side of the map and the player wouldn't be any the wiser.
In response to DivineTraveller
Imagine the world map:

              A
 __________________________
 |                         |
 |                         |
 |                         |
 |                         |
B|                         |D
 |                         |
 |                         |
 |                         |
 |_________________________|
              C


Seika cuts off the end portions of the map of length of the radius of client.view (or the distance from the center of the map to one of the edges) and places them around all sides and uses teleports to take care of the problem before hand. Imagine:
              A
 __________________________
 |__________End of C_______|
 | E|                    |E|
 | N|                    |N|
 | D|                    |D|
B|  |                    | |D
 | O|                    |O|
 |  |                    | |
 |_D|____________________|B|
 |_______End of A__________|
              C


If that makes any sense...
The teleports will be on the border of the ends of the maps.
They are all copies.
In response to Jerico2day
Or you could just use images. That would limit interaction, though.
In response to CaptFalcon33035
CaptFalcon33035 wrote:
Imagine the world map:

A__________________________| || || || |B| |D| || || ||_________________________|C

Seika cuts off the end portions of the map of length of the radius of client.view (or the distance from the center of the map to one of the edges) and places them around all sides and uses teleports to take care of the problem before hand. Imagine:
A__________________________|__________End of C_______|| E| |E|| N| |N|| D| |D|B| | | |D| O| |O|| | | ||_D|____________________|B||_______End of A__________|C

If that makes any sense...
The teleports will be on the border of the ends of the maps.
They are all copies.

That is a rather cheesy (no offense to seika) method to go about it, but it does seem like the best route to make it happen. And yes, it does make sense.
DivineTraveller wrote:
I was thinking about a few older games I used to play, and I remembered that the maps would wrap around on each other! I thought it was a really cool idea, but nonetheless, I have no idea about it. I was talking to Jon, and he said that there may have been a post on this already, if there is, delete this. Anyway, to my point. Would this be possible, at all, in DM?

Only if your map is played Legend of Zelda style, or you do some funky complicated work with images and such. I know Theodis created an infinite space map that loaded up planets and such, and you could fly around throughout with no trace of where the edges were, unless you encountered a bug. But stuff like that isn't exactly easy to do, and its much simpler just to structure your game in such a way as to handle maps like that.

Maybe you remember the Lost Woods from the original Legend of Zelda game? Same concept could easily be applied to other things.
In response to Foomer
Foomer wrote:
DivineTraveller wrote:
I was thinking about a few older games I used to play, and I remembered that the maps would wrap around on each other! I thought it was a really cool idea, but nonetheless, I have no idea about it. I was talking to Jon, and he said that there may have been a post on this already, if there is, delete this. Anyway, to my point. Would this be possible, at all, in DM?

Only if your map is played Legend of Zelda style, or you do some funky complicated work with images and such. I know Theodis created an infinite space map that loaded up planets and such, and you could fly around throughout with no trace of where the edges were, unless you encountered a bug. But stuff like that isn't exactly easy to do, and its much simpler just to structure your game in such a way as to handle maps like that.

Maybe you remember the Lost Woods from the original Legend of Zelda game? Same concept could easily be applied to other things.

That was actually one of the first things that came to mind, actually.
DivineTraveller wrote:
Also, it would be nice to keep yourself centered around the map at all times without having that ugly black-space. I just think it looks better, personally.

Not showing the 'black-space'/map edge is already a long time built-in feature, and we also have a little more eye control than that, other from the things you could softcode yourself. =)
If this is what you meant, anyway; since it wasn't 100% clear.
Infinitely-wrapping maps are difficult to pull off in a multiplayer context because you need to use "dummy objects" to simulate things that can be seen on either side of the border, and you have to use a buffer space which looks like the next map even though it's actually still the original map. When someone tries to step into the buffer space, they are forwarded to the adjacent map before they have the opportunity to see the blackness. The dummy objects have to respond to commands just like they are the real McCoy, too, which is perhaps the most difficult part of a seamless map system.

I don't know if Seika allows you to see anything but turfs on its seamless maps, but that's how you go about doing it.

I considered but abandoned the idea of a totally seamless map system for Newtopia, chiefly because it requires polling or callbacks to ensure that all "dummy objects" are in the corresponding positions on the buffer space as they are on the real maps they're on. I opted for a "dummy terrain" system which shows turfs (with a 50% black overlay) but not objects or characters, as well as a "disintegrating silhouette" which shows where a person left the map, as well as an arrow that points in the direction they went, for a couple of seconds.

Suffice it to say that while a robust solution would look perfectly seamless and would also be very pretty, it can also be prohibitively difficult to set up.
In response to Jtgibson
There's also the problem that it's essentially different sides of the map connected by teleporters in programming perspectives, so things like pathfinding, get_dir() etc wouldn't give you the wanted results, and something like an NPC told to go from one edge of the planet to the other will walk all the way instead of going 4 tiles to the left (well - through the teleporter, and this applies for all teleporters with AIs unless you account for them).
In response to Kaioken
Kaioken wrote:
DivineTraveller wrote:
Also, it would be nice to keep yourself centered around the map at all times without having that ugly black-space. I just think it looks better, personally.

Not showing the 'black-space'/map edge is already a long time built-in feature, and we also have a little more eye control than that, other from the things you could softcode yourself. =)
If this is what you meant, anyway; since it wasn't 100% clear.

I was aware of changing the perspective, but honestly, I like my character centered on my screen, which is why I'm hesitant to use edge_perspective.
In response to DivineTraveller
DivineTraveller wrote:
I was aware of changing the perspective, but honestly, I like my character centered on my screen, which is why I'm hesitant to use edge_perspective.

If this bothers you, you could easily just always prevent the player from getting near the map edge, by expanding the map and adding dense/impassable turfs at the edges, the amount depends on the amount the player can view and as such. Just like lots of non-BYOND games do. =P
In response to Kaioken
Kaioken wrote:
prevent the player from getting near the map edge, by expanding the map and adding dense/impassable turfs at the edges

That's actually an industry standard. Why else would they have a boxed out canyon in the middle of nowhere? =p
In response to SuperAntx
You could use fear as a natural barrier. Just randomly strike them with lightning, attack them with monsters, catch them up in a whirlwind or otherwise completely terrorize them within view*2 of the edge. Those who do see the edge won't live to tell about it. >.>
In response to Xooxer
Well, they do something like that in Battlefield 2. Rather than a boxed out canyon they just kill you for going AWOL.
In response to SuperAntx
I think Zork did it best. :P
In response to SuperAntx
SuperAntx wrote:
That's actually an industry standard.

Indeed.

Well, they do something like that in Battlefield 2. Rather than a boxed out canyon they just kill you for going AWOL.

Also, comes into mind that in Far Cry and Half-Life 2 there are also special 'enemies' that will kill you to prevent straying too far into sea. Though in FC I sometimes blew up arbitrarily, but meh.
Page: 1 2