Multiple Floors

Discuss Features for Wolf3d - New and Old

Moderators: Andy_Nonymous, Adam Biser

Post Reply
User avatar
Acid Gear
Can I Play Daddy
Can I Play Daddy
Posts: 31
Joined: Sun Nov 25, 2007 6:27 pm
Location: Near Castle Wolfenstein
Contact:

Multiple Floors

Post by Acid Gear »

Did a quick search through this forum and didn't find anything, just wanted to know if it is within the realms of Wolf4SDL to handle an extra floor? I'm am just trying to make a basement area (in which you would have to take a set of stairs or elevator to reach) but am really doubting that this can be done :-( But that besides the point, any answers will be appreciated. :-)
Last edited by Acid Gear on Fri Dec 05, 2008 5:45 am, edited 4 times in total.
Image
User avatar
Haasboy
DieHard Officer
DieHard Officer
Posts: 595
Joined: Wed Jul 23, 2003 5:43 pm
Location: South Africa, Johannesburg

Post by Haasboy »

If you searched you would have discovered it was located in the Code Tutorials section - TAKE A LOOK!!!!!!!!!!!!!!!!!!
User avatar
Acid Gear
Can I Play Daddy
Can I Play Daddy
Posts: 31
Joined: Sun Nov 25, 2007 6:27 pm
Location: Near Castle Wolfenstein
Contact:

Post by Acid Gear »

Let me re-phrase that, I'm not looking for an extra "floor" texture but an actual level like one that you would have to ride up an elevator in order to get too.
Image
User avatar
Tricob
Moderator
<b>Moderator</b>
Posts: 9040
Joined: Tue Mar 15, 2005 2:43 am
Location: Neo-traditions, Inc.
Contact:

Re: Multiple Floors

Post by Tricob »

Acid Gear wrote:Did a quick search through this forum and didn't find anything, just wanted to know if it is within the realms of Wolf4SDL to handle an extra floor? I'm am just trying to make a basement area (in which you would have to take a set of stairs or elevator to reach) but am really doubting that this can be done :-( But that besides the point, any answers will be appreciated. :-)
Quite possible, actually ... and it's also within the realms of Wolf3D 16-bit, too. I know because the code changes aren't all that complicated. The code - in several places - separates out each "Episode" into ten levels each. You'll need to change that code to have it separated out into eleven levels each (meaning there's 66 levels total instead of 60). I'm probably missing a few files, but here's the files I'd check for first:

WL_MENU.H
WL_MENU.CPP
WL_INTER.CPP
WL_GAME.CPP
WL_PLAY.CPP
WL_MAIN.CPP
WL_DEF.H

Do a search for the term "gamestate.episode" and change the numbers accordingly.

There's probably more you have to do, but the rest of the code changes escape my mind at the moment. :(
User avatar
Fragstein3D
I am Death Incarnate
I am Death Incarnate
Posts: 198
Joined: Mon Dec 07, 2009 4:13 am

Post by Fragstein3D »

Are you talking about having a level in a game where you can take the stairs and go to a room above which is actually another level (which is actually attached to the level you describe as having stairs for example) which can lead back to the level you were on previously without resetting everything.

a more efficient idea for having basemtents and attics in levels, is actually having the basements and attics located outside of the levels walls, so that the only way you would be able to get there without taking the stairs (which would be like a teleporter) is with the NoCLIP function cheat.

it would also be possible to have ingame cinematics in these outside of level pockets.
User avatar
WLHack
DieHard Wolfer
DieHard Wolfer
Posts: 1243
Joined: Sun Jul 10, 2005 6:50 pm
Location: Loppi - Finland
Contact:

Post by WLHack »

Well, other way to do this would be making the game to save the floor 1
and then teleporting to floor2 and when you teleport back to floor1 you
just make the game save floor2 and then load floor1...
User avatar
Fragstein3D
I am Death Incarnate
I am Death Incarnate
Posts: 198
Joined: Mon Dec 07, 2009 4:13 am

Post by Fragstein3D »

What about items and score that you pickup on each respective floor, your idea would have the flaw of the fact one save was made before the other and hence going to floor 2 then loading floor 1 again anything you gained or earned on floor 2 would not apply because it hasen't been done yet, as the save on floor 1 was made earlier.
User avatar
WLHack
DieHard Wolfer
DieHard Wolfer
Posts: 1243
Joined: Sun Jul 10, 2005 6:50 pm
Location: Loppi - Finland
Contact:

Post by WLHack »

Yeah, thats right if we are using normal save-files... But my main idea was that only the object positions
(picked up items and killed enemies) would be saved. Now you just load that data and then proceed like
you would normally go to next level (of course player status from previous level would be kept).

Now in theory the revisited level would actually look revisited as some of the items has disappeared and
there are dead corpses lying around. Only problem would be that those guards that were alive when you
left the level would be reset to their original positions.

Players starting position problems could be solved with using the Spear of Destiny code (if you pick
the spear - you will be teleported to corresponding position in the level 21 - just change that to move
you one level backward/forward)...

Of course you could do like in Doll's house by Poet and divide the level to two sections and then make
the elevator to teleport you between these two sections when the switch is flipped (no idea wether
Poet actually did it like this though)...
User avatar
Fragstein3D
I am Death Incarnate
I am Death Incarnate
Posts: 198
Joined: Mon Dec 07, 2009 4:13 am

Post by Fragstein3D »

Well that's what i was talking about.

two parts of the level both are inaccessible unless you cheat, the teleporter cloaked as an elevator would be able to transport you (hopefully seamlessly somehow) to the other unreachable area of the floor (level) so that it looks like you just went to an attic or something, and the cool thing is it's really just part of the same level.

so it would solve the guard reset positions.
of course patroling guards being reset wouldn't be a bad thing, nobody would really notice it, and it is kinda logical in limited game terminology for guards on patrol to resume their normal patrol course or their posts when the intruder gets away.
User avatar
Tricob
Moderator
<b>Moderator</b>
Posts: 9040
Joined: Tue Mar 15, 2005 2:43 am
Location: Neo-traditions, Inc.
Contact:

Post by Tricob »

Fragstein3D wrote:two parts of the level both are inaccessible unless you cheat, the teleporter cloaked as an elevator would be able to transport you (hopefully seamlessly somehow) to the other unreachable area of the floor (level) so that it looks like you just went to an attic or something, and the cool thing is it's really just part of the same level.
Oh, yeah ... this is possible by doing a hack of the Teleport code from MCS. I've done my own version of the code so that it creates the illusion you suggest here. My code re-writes the whole routine from scratch (and uses far more memory, I'm sure), and now you're allowed much more freedom when mapping for this feature. Still a lot of fine-tuning to do with the code though, and two glitches to fix before I post the code. :(
User avatar
Officer-Michael John
Banned
Banned
Posts: 280
Joined: Fri Dec 19, 2014 9:15 pm
Contact:

Post by Officer-Michael John »

How to I can a multiple level (floor) with normal music,cleiling adding in Wolf4SDL as in MMC Anthology? Exaple:16 level -->13 normal,1 boss,2 secret level.
User avatar
Tricob
Moderator
<b>Moderator</b>
Posts: 9040
Joined: Tue Mar 15, 2005 2:43 am
Location: Neo-traditions, Inc.
Contact:

Post by Tricob »

Try SDL Code Crackers for that. But please ask for one feature at a time.
User avatar
shodan
DieHard SS
DieHard SS
Posts: 336
Joined: Sat Dec 04, 2021 12:34 am

Post by shodan »

Fragstein3D wrote:Are you talking about having a level in a game where you can take the stairs and go to a room above which is actually another level (which is actually attached to the level you describe as having stairs for example) which can lead back to the level you were on previously without resetting everything.

a more efficient idea for having basemtents and attics in levels, is actually having the basements and attics located outside of the levels walls, so that the only way you would be able to get there without taking the stairs (which would be like a teleporter) is with the NoCLIP function cheat.
Hmm, necro'ing this thread, but this is a pretty neat idea, and I think using 128x128 maps (iirc that's possible, right?) would give this the space to really work well. Might be difficult to really give the feel of this - the graphics would of course need to support distinguishing the areas as well - and you'd probably want two-way transporters for this so the player can go back up/down the stairs (or displace the transport destinations a space away from the stairs), but certainly seems like it could be fun to do. I don't think the elevator idea would be great for this, unless it's made very obvious that it isn't the end of the entire level.

What would also be neat to do with something like that would be to allow the transporters to transport enemies - imagine going downstairs face to face with a boss, hightailing it back up the stairs because you weren't prepared for that, and thinking you're safe to prepare until you see the boss come up behind you... :twisted: :-o
Look at you, hacker...
User avatar
Tricob
Moderator
<b>Moderator</b>
Posts: 9040
Joined: Tue Mar 15, 2005 2:43 am
Location: Neo-traditions, Inc.
Contact:

Post by Tricob »

I remember thinking that was a cool idea *until* I teleported into an enemy, and neither of us could move. That was why I wrote my code so the enemies viewed the teleport marks as guard blockers.
Post Reply