Newb Question: "DM start" class name?

Archive of the old editing forum
Forum rules
Before asking on how to use a ZDoom feature, read the ZDoom wiki first. This forum is archived - please use this set of forums to ask new questions.
Locked
User avatar
Talonos
Posts: 789
Joined: Mon May 03, 2004 7:08 am
Location: At college!

Newb Question: "DM start" class name?

Post by Talonos »

So, I wanted to make a timed deathmatch level in which part way through, the level mirrored itself. I figured that the easiest way to do this would be to mirror the level, and have a script that would "spawnspot" Deathmatch Start objects in the mirrored half, Thing_Remove all the deathmatch starts in the non-mirrored half of the level, and kill all the players. That way, after the players respawn, they would be in the "new" part of the level.

I was thwarted in my attempt by the lack of a "deathmatch start" class. Or at least, the lack of mention on it on the wiki. How would I produce this effect without being able to spawn deathmatch starts? Also, what, conceptually, am I missing here? Are start locations not classes? Are they not actors? What exactly is a start location, then?

Also, in an almost unrelated note, is there a way to convert doom2 maps to doom2 in hexen format maps in a way that preserves the functionality of the linedef actions instead of just the linedef action numbers themselves? When I copy/pasted a map over from one to the other in doombuilder, my doors turned into staircase builders or something...
User avatar
Cutmanmike
Posts: 11351
Joined: Mon Oct 06, 2003 3:41 pm
Operating System Version (Optional): Windows 10
Location: United Kingdom
Contact:

Re: Newb Question: "DM start" class name?

Post by Cutmanmike »

I don't think you can remove deathmatch starts once they've been added to the game. Not sure if you can spawn them though.
User avatar
Graf Zahl
Lead GZDoom+Raze Developer
Lead GZDoom+Raze Developer
Posts: 49223
Joined: Sat Jul 19, 2003 10:19 am
Location: Germany

Re: Newb Question: "DM start" class name?

Post by Graf Zahl »

Player starts do not translate to actors in the game. They are filtered out at spawn time and stored in separate arrays that cannot be modified by the map.
User avatar
Enjay
 
 
Posts: 26936
Joined: Tue Jul 15, 2003 4:58 pm
Location: Scotland
Contact:

Re: Newb Question: "DM start" class name?

Post by Enjay »

The only thing I can think of to suggest is to put your DM starts in small rooms away from the play area of the map and then teleport the player to a random teleport spot immediately after appearing. Half way through, you could change the script or manipulate the teleport spots to get the effect that you want.

In case you don't know, if a bunch of different teleport spots have the same tid, the game picks one at random when told to teleport a player to a spot - might be useful.
User avatar
Talonos
Posts: 789
Joined: Mon May 03, 2004 7:08 am
Location: At college!

Re: Newb Question: "DM start" class name?

Post by Talonos »

Perfect. Thank you, Enjay.

Were DM starts previously classes? Is this a recent development? Just curious.
Gez
 
 
Posts: 17938
Joined: Fri Jul 06, 2007 3:22 pm

Re: Newb Question: "DM start" class name?

Post by Gez »

Map things (i.e., the stuff that go in a map's THINGS lump) are not necessarily actors; just like actors are not necessarily map things (you can't place a doomimpball on the map, they're only spawned in-game).

No, it's not anything new. I don't remember seeing a playerstart mobjs in the vanilla source code. (Mobj, short for map object, is what ZDoom turned into actors.)

There are other things that aren't actors; for example the polyobject anchors and start spots.
User avatar
Talonos
Posts: 789
Joined: Mon May 03, 2004 7:08 am
Location: At college!

Re: Newb Question: "DM start" class name?

Post by Talonos »

Thank you. It makes me wonder how I somehow missed that after all these years.
User avatar
Ethril
Posts: 2677
Joined: Sun Nov 16, 2008 2:59 am
Location: with you in the dark

Re: Newb Question: "DM start" class name?

Post by Ethril »

Talonos wrote:and kill all the players
Sounds like that would be INCREDIBLY annoying. I urge you to reconsider. Perhaps teleport the players to random non-overlapping spawn areas in the "new" area?
User avatar
Cronyne
Posts: 39
Joined: Sun Dec 06, 2009 3:56 pm

Re: Newb Question: "DM start" class name?

Post by Cronyne »

Try using a RESPAWN script. Make a huge else/if tree that checks which sector the player is in, then teleports them right when they spawn to the correct location. It'll look like just spawning normally somewhere else.
User avatar
Talonos
Posts: 789
Joined: Mon May 03, 2004 7:08 am
Location: At college!

Re: Newb Question: "DM start" class name?

Post by Talonos »

Sounds like that would be INCREDIBLY annoying. I urge you to reconsider.
Actually, it likely wouldn't. It happens once, over the course of the whole deathmatch level, which deathmatch level is meant to be played only once, total, by each player. Chances are, it would just get lost in the chaos of the deathmatch. After all, you die all the time without knowing why in a typical game. When I play, I often respawn before I finish hitting the floor, even.

However, as long as I am using a more elegant way to have players respawn in the new half of the level (instead of a cheap hack that moves all the deathmatch starts) I might as well take the extra few lines of code to teleport them the correct way. After all, I already have teleport destinations defined for the other half of the level.
Locked

Return to “Editing (Archive)”