ID:23286
 
Keywords: design, newtopia
In Newtopia, I was just about to jot down a few notes for my plans to implement the dynamic maps and online creation in the game when I realised something -- square is boring.

Newtopia uses 80x80 maps by intentional design, as this allows 36 13x13 burrow "claims" in a 6x6 pattern in the centre of the map, with a surrounding border of 1 tile around all edges of the map. Burrows correspond one-to-one with the surface.

When I was thinking about how the "create new map" function of the online creation system was going to work, something popped into my brain: staggered maps.

More specifically, my question for my readers is as follows:

Should maps be a standard grid:
+---+---+---+---+
|   |   |   |   |
+---+---+---+---+
|   |   |   |   |
+---+---+---+---+
|   |   |   |   |
+---+---+---+---+
or should maps be on a staggered grid:
+---+   +---+
|   +---+   +---+
+---+   +---+   |
|   +---+   +---+
+---+   +---+   |
|   +---+   +---+
+---+   +---+   |
    +---+   +---+
Using a square-based grid is advantageous to me as a developer because it's quite a bit easier to implement. It's advantageous to a player because it's easier to understand.

Using a staggered grid (hex-like grid) is advantageous to me as a developer because it allows me to preload only six surrounding maps instead of eight surrounding maps. It's advantageous to a player because it makes it a little more difficult to "spoof" a pursuer (a very out-of-character means of escape), since there are only three maps you can run across at a time at a corner instead of four maps at a corner.

What do you think? The architecture easily supports both systems. Only one map presently exists: the Newtopia Sanctuary map, containing the endowment land and the tinest fraction of the Sanctuary Inlet, so I don't have to kludge any existing maps.

Anyway, good night. I'll read responses in the morning (perhaps early afternoon ;-)).
The hexlike is neat, but I actually kind of like the idea of spoofing; just have a tracking skill check for which way someone went, and make it clear for people watching which way someone goes... I'd personally say simplicity is best, unless there's a really good developmental reason for otherwise.
A problem I faced when developing a similar system was with the case of diagonal movements between maps, the ability to quickly go between several maps in order to confuse your pursuer, I guess this is what you mean by spoofing.

I took a page from HrH and decided that there would be solid turf ‘caps’ on each corner to stop people from being able to do that.

The hex idea looks new and interesting (everything new is of course defaulted to interesting) so my money’s on that as I think it’d be cool to play in!
@Bdjewkes: The "spoofing" is out-of-character through and through. To spoof someone who is pursuing you, run across a corner. They will obviously see you run across that corner and will also get a message about which way you went. However, once you have entered the new map and the other person can no longer see you, you run across to a different map. Because the other person can no longer see you, it's impossible for the game to produce a message corresponding to the direction in which you went. The person will follow you to the old map because they saw you go that way, but once they get there, you will have effectively completely disappeared because you are no longer on that map any more!

One workaround I've been considering is a "disintegrating outline". When someone crosses a map border, a little silhouette of their character (with an arrow pointing in the direction they went) is left behind, and this silhouette disintegrates over a few seconds of real time. In this case, if the person dashes off into a different map, you'll still see the silhouette and it'll be easier to chase them down.


The Tracking skill already exists (in unimplemented form) and will work exactly as you mentioned, but it's just plain silly that someone needs to use Tracking to find someone that they were within breathing distance of a few moments ago! Leftley could speak volumes about how pissed off it made him when he tried to bandit a bridge and people just kept disappearing off the map edge nearby. This prompted discussion about axing the "run"-based map and making everything on one large, contiguous map. I'm very much a proponent of small, well-defined local maps, however, because I feel they give a greater sense of scale and allow people to digest less of the world at a time than a large map, so I deliberately chose 80x80 maps even in spite of knowing that a seamless map is much better for most kinds of player-versus-player combat.

I was also intending on a "zoomed out" system which would allow you to see a small-scale representation of the surrounding map, revealing the numbers of animals you could see in each adjacent map. The Scouting skill would allow you to see beings farther away from the map borders, while the basic untrained skill would allow you to see anyone who was within range of the adjacent border to you.


@Thorg: I don't want to use artificial means of preventing people from going between maps. Birds are strong advantages because they can just skip over everything, and that advantage would be diminished something fierce if they were forced to go through the same passages as other landborne animals.
Oh, I see what you mean. You could always add a delay to successive transitions between maps. If you pass through one map, its imediate. If you try and pass through another one within the next 5 seconds or so, though, there could be a few second delay. The next map switch could add a further delay, etc, until you stay on a single map for some 10 seconds or so.
Hey, increasing delays. That's a great solution.

A small, static delay won't work because even if you manage to catch them trying to spoof across a border, they could just disappear off onto another nearby map again while they're out of sight. You might never "lose" them, but you'll never be able to catch up to them because while you try to follow them, you have to wait too. But if the delay increases over time, people will find it more and more difficult to spoof at a single corner.


I only have one reservation... it's a somewhat out-of-character restriction to solve an out-of-character issue. There's no physical reason why someone can't run back over another map, which means it's an artificial restriction, something I've been dearly trying to avoid. I want intangible restrictions on most actions (you can do anything, but it will hurt you karmically), excepting sanctuaries which are morally and ethically pure.
Look at it this way; if you're running and you suddenly turn around, you're going to need to slow down first.

Also, dealing with transitions between maps happens to be an OOC convention, so to balance it on an IC level there needs to be some degree of OOC intervention. That said, I definately agree that minimizing arbitrary restrictions is important, but something that is (frankly) as abusable as this is a problem that HrH definately had.


Heh. The running system already requires you to slow down first to turn around. It's part of the dashing lock. ;-)

You do have a valid point about OOC convention, though. I think I'll implement increasing delays and the silhouette system some time over the next couple of days.
What about a 'double bluff'? Say a player runs onto another map, spoofs in one direction then runs back and spoofs in another direction?

There would then be two degrading outlines making it a 50-50 chance of catching up with the spoofer (and would be horribly OOC I imagine).

Or am I thinking about this wrong, would there not be enough time for this to occur, etc?
The solution I came up with there was to have the arrow on the silhouette always point in the exact direction that the other person is, in relation to where they are on the other map(s). For instance, if the silhouette on your current map shows that someone ran northeast off the corner of your current map, and then they try to spoof south, the arrow on your current map would update to point east because even though they'd be in the northeast corner of the east map, they would be directly east in relation to you now.

With that system, and just a little bit of mathemagics, I don't even need to implement a delay, since the system will always tell you where they are in relation to you now, assuming they are actually in sight of the border. As soon as they leave sight of the border, the silhouettes disappear.
Very shiny and elegant. Good idea.
Have you decided on the 'hex' or regular setup? Or have I overlooked it.
Haven't decided yet. I'm not even working on the map right now, though... I'm playing around with my cool new illegibility system for when people write things. ;-)
I like the silhouette system.

Some of my unreleased projects used cartoony puffs of dirt. =)