linking maps together

Non-technical talk about multiplayer and singleplayer gameplay and game design.
darkcodemonkey
Posts: 8
Joined: Mon Jul 26, 2010 3:52 pm

linking maps together

Post by darkcodemonkey »

I'm not sure whether I should put this here or in mapping, so forgive me.

Anyway, I am trying to do a quake single player mod and would like to create a massive world, but i'm trying to have it spread out over several maps, more along the lines of Legend of Zelda or Monster Hunter. I've been using GTKRadiant to map (mostly because I'm running on Linux), but can't figure out how to link maps together with a teleport or what ever it is I'm missing, like in the start map in Quake 1. if anyone could help me it would be most appreciated.

Yes, I''m a noob, but everyone has to start somewhere.

Thanks in advanced
leileilol
Posts: 2783
Joined: Fri Oct 15, 2004 3:23 am

Post by leileilol »

"Like the start map in Quake" is done by this - if a rune is posessed, the game starts you off in info_player_start2 instead. That's it. Unfortunately if you want to do ambitious cohesive cross-level linking with Quake, there's no clear and simple way to do that. Hexen II barely did it, Quake2 somewhat did it, and Half-Life had a very annoying way of doing it.

You say you're a noob, so I highly advise to start small. You can't make a Zelda on your first week.
i should not be here
Spike
Posts: 2914
Joined: Fri Nov 05, 2004 3:12 am
Location: UK
Contact:

Post by Spike »

I've never played Zelda, so I'll have to use other games as a point of reference...

If you want a hub system such as that found in HalfLife, Quake2, or Hexen2 where you can return to a previous map where all the ents are how you left them... forget about it. Without extensions it cannot be done.

What you can achieve is loading a previously visted map with entities that are spawned conditionally such that it appears to be a progression of the previous map. The serverflags global is persistant and can be used to decide the previously visited maps. This is the same global that holds the grabbed runes in Quake, and it is this field that spawns the various barriers on start.bsp. Spawn spot selection is also tweeked such that if you have any rune, it uses info_player_start2 instead of the regular start spot.
This only really works with maps which have no monsters, as they are likely to respawn without intervention.



Note that if you want a true hub system and are willing to stick to a single engine, FTE can support hub systems with a couple of changes to a mod. Simply add an extra optional string argument to changelevel, and the previous map will be archived in case you return. The extra argument is passed to the next map via a 'startspot' string global, and this can be used to choose the player's spawn spot on the new level.
darkcodemonkey
Posts: 8
Joined: Mon Jul 26, 2010 3:52 pm

Post by darkcodemonkey »

thanks for the quick replies, but...

IDK whether I'm just not reading what you said right, or whether I didn't explain it well enough.

Basically what I want is to have the player walk from one map and then to another, and then back again. Right now, I'm not worried about complicated stuff like having things stay where the player left it or what have you. All I want are slipgates for the most part.

walk from map A to map B, then back to map A, but when you appear at map A for the second time, you are near the exit to map B, and not where you originally spawned.

Sorry if I'm making this too complicated than what it needs to be. when I said like the start map, what I want is, how does it teleport you from start.bsp to e1m1.bsp or e2m1.bsp ect...

Thanks again.

BTW: I'm not planning on making a zelda in my first week, I'm experienced enough to know that it could months or even years for it to be complete, or even done right. but this is just a small thing in the bigger picture to come much, much later.
darkcodemonkey
Posts: 8
Joined: Mon Jul 26, 2010 3:52 pm

Post by darkcodemonkey »

Well, I figured half of my problem out, just by using the change level trigger, but now what if I want the player to teleport from one map to a different spot (much like after completing a level) but without holding anything. so basically spawn at playerspawn 2 without holding a rune.

thanks again

Sorry for being a noob
Last edited by darkcodemonkey on Mon Jul 26, 2010 5:58 pm, edited 1 time in total.
Spike
Posts: 2914
Joined: Fri Nov 05, 2004 3:12 am
Location: UK
Contact:

Post by Spike »

1: spawnflag will kill that
2: means you have no cd in the drive, ignore it. also see 1.
3: don't know what you mean
goldenboy
Posts: 924
Joined: Fri Sep 05, 2008 11:04 pm
Location: Kiel
Contact:

Post by goldenboy »

walk from map A to map B, then back to map A, but when you appear at map A for the second time, you are near the exit to map B, and not where you originally spawned.
You cannot very simply do that sort of stuff in vanilla Quake.

Quoth is a mod that allows for some inter-map travel like this, but I'm unsure if it does what you need. It is also very limited, so you can't go back and forth between several maps.

http://kell.quaddicted.com/quoth/quoth_ ... info_gates

What you can also do is use the Russian method and simply have two versions of map A with different names. So you'd have three maps, but the player will never notice it. It's primitive, it's cheating, it's wasting resources, but it'll work.

In Quake 1, most things that you'd take for granted and that you'd think would be simple, aren't simple.
darkcodemonkey
Posts: 8
Joined: Mon Jul 26, 2010 3:52 pm

Post by darkcodemonkey »

Spike wrote:1: spawnflag will kill that
2: means you have no cd in the drive, ignore it. also see 1.
3: don't know what you mean
lets say, you start the game in House A. when you leave House A, you are brought just outside House A into a town. If you go into House B, you are brought inside that house. But when you leave, you will be brought back to the outside of House A because that is where the spawn point is. can I make it so you are outside House B without holding onto a rune.

Also, let's say that there are multiple houses (House C, House D, etc...) how would I go about doing multiple spawn points and in turn linking each map to that specific spawn point.

Hope this clears thing up a little.
thanks

Also, BTW: I'm planning on using darkplaces as the engine.
frag.machine
Posts: 2126
Joined: Sat Nov 25, 2006 1:49 pm

Post by frag.machine »

darkcodemonkey wrote:
Spike wrote:1: spawnflag will kill that
2: means you have no cd in the drive, ignore it. also see 1.
3: don't know what you mean
lets say, you start the game in House A. when you leave House A, you are brought just outside House A into a town. If you go into House B, you are brought inside that house. But when you leave, you will be brought back to the outside of House A because that is where the spawn point is. can I make it so you are outside House B without holding onto a rune.

Also, let's say that there are multiple houses (House C, House D, etc...) how would I go about doing multiple spawn points and in turn linking each map to that specific spawn point.

Hope this clears thing up a little.
thanks

Also, BTW: I'm planning on using darkplaces as the engine.
If you are trying to simulate a small town I suggest doing that in the same map using regular teleporters. Put a silent tele and its destination in each side of every door, and with some judicious use of stuffcmd you can even simulate fadein/fadeout effects (much similar to Elder Scrolls IV: Oblivion). I already did something like that, it works pretty well for a single player mod. This opens possibilities like reuse of indoor scenaries for multiple houses (only changing the inhabitants and the furniture - like Oblivion already does, btw), but that would be a more advanced feature.
I know FrikaC made a cgi-bin version of the quakec interpreter once and wrote part of his website in QuakeC :) (LordHavoc)
darkcodemonkey
Posts: 8
Joined: Mon Jul 26, 2010 3:52 pm

Post by darkcodemonkey »

i was mainly using that as an example of what I want to do. mostly because I want multiple maps interconnecting with each other.

but thanks, this information my come in handy for when I do towns. and I was wondering if something like that would be at all possible.

Thanks
Baker
Posts: 3666
Joined: Tue Mar 14, 2006 5:15 am

Post by Baker »

Absolutely possible ...

http://forums.inside3d.com/viewtopic.php?t=2307

Prepare to get your hands dirty though ...

/Now that I have multimap demo playback capability, I ought to record an example of multimap travel and upload to YouTube sometime. Admittedly, I won't be doing this today as I have some serious engine coding stuffs I wanna do.
The night is young. How else can I annoy the world before sunsrise? 8) Inquisitive minds want to know ! And if they don't -- well like that ever has stopped me before ..
darkcodemonkey
Posts: 8
Joined: Mon Jul 26, 2010 3:52 pm

Post by darkcodemonkey »

thanks, I'll try out the tutorial you wrote up on that post.

Thanks a lot.
darkcodemonkey
Posts: 8
Joined: Mon Jul 26, 2010 3:52 pm

Post by darkcodemonkey »

Well, I'll try it once I figure out why I can't even get the normal Quake source code to compile on my machine. Oh well, maybe here soon.
gnounc
Posts: 428
Joined: Mon Apr 06, 2009 6:26 am

Post by gnounc »

Er. Make sure you're using a QuakeC compiler...and not a C compiler.
Not sure if that needed to be said.
darkcodemonkey
Posts: 8
Joined: Mon Jul 26, 2010 3:52 pm

Post by darkcodemonkey »

I'm not having a problem compiling the QuakeC source code, but the actual engine code.

Thanks anyway.
Post Reply