ECWolf - Advanced Source Port

Chat on the Original Wolfenstein 3d Game

Moderators: Dean, ronwolf1705, Arielus

User avatar
Executor
DieHard Officer
DieHard Officer
Posts: 743
Joined: Fri Mar 28, 2003 8:32 pm

ECWolf - Advanced Source Port

Post by Executor »

Totengraeber for ECWolf is due out this weekend. The reason it got delayed so long, aside from simply forgetting it for a while, is that I playtested it by playing it. All of it. And my first playthrough of this mod on skill 4.

Image

The port is 99% perfect except for the ending screen (unavoidable), Contemporary Insanity being level 0 for the sake of having unique level slots, Schabbs being made slightly less of a pushover, and some minor technical details like ambient sound timing and chaingun jamming that I couldn't find the code for and approximated with best-guess numbers (also God damn, Contemporary Insanity is a hell of a way to cap off the map set, much better than the anticlimactic level 41).
User avatar
Thomas
Mapping Master
Mapping Master
Posts: 5719
Joined: Tue Nov 23, 2004 4:41 pm

Post by Thomas »

Sorry for my ignorance; but isn't Contemporary Insanity (I can also see the floor number is 0 on your screenshot) the inaccessible map from The Final Solution? The reason I'm asking is, that I cheated my way to that level so many times and ran around it for hours on end trying to find the exit. What's the story behind it, and what has it to do with Totengraeber? I'm curious. Furthermore, I agree with you on level 41. The only true disappointment in the entire game though. Kudos for the secret level "1" with all the treasure - or is this level ("1") Contemporary Insanity?! I'm a little bit confused here... Forgive me, lol.
User avatar
Tricob
Moderator
<b>Moderator</b>
Posts: 9040
Joined: Tue Mar 15, 2005 2:43 am
Location: Neo-traditions, Inc.

Re: ECWolf - Advanced Source Port

Post by Tricob »

Executor wrote:... and some minor technical details like ambient sound timing and chaingun jamming that I couldn't find the code for and approximated with best-guess numbers (also God damn, Contemporary Insanity is a hell of a way to cap off the map set, much better than the anticlimactic level 41).
Having ported 95% of the game at one point, I'm sure I can locate the code you mention here. :)

Just one thing - the code doesn't "time" each ambient sound; all it does is see if a digitized sound is playing in the background or foreground, and starts playing back an ambient sound if the answer is "no". IIRC, the Ambient Sounds code is in WL_PLAY.C, but don't quote me on that. :) When I ported the Ambient Sounds code to SDL, it didn't work very well. It may be vain to suggest this, but I'd recommend you do a hack of this tutorial instead. Considering your programming experience, you'll probably want to change the code anyway, as you can probably do a better at optimizing it than I can. :)
User avatar
Executor
DieHard Officer
DieHard Officer
Posts: 743
Joined: Fri Mar 28, 2003 8:32 pm

Post by Executor »

ECWolf mods are made using ECWolf's special lumps that define things like actor behavior, level properties, etc. rather than using the source code. I implemented ambient sounds by placing a special actor in a hidden corner of the map that waits for around three seconds, then rolls the RNG to decide whether to play an ambient sound or not. Each cycle, it has about a 1 in 6 chance of playing an ambient sound, and if it decides to play an ambient sound, picks one of the sounds at random.
Thomas wrote:Sorry for my ignorance; but isn't Contemporary Insanity (I can also see the floor number is 0 on your screenshot) the inaccessible map from The Final Solution? The reason I'm asking is, that I cheated my way to that level so many times and ran around it for hours on end trying to find the exit. What's the story behind it, and what has it to do with Totengraeber? I'm curious. Furthermore, I agree with you on level 41. The only true disappointment in the entire game though. Kudos for the secret level "1" with all the treasure - or is this level ("1") Contemporary Insanity?! I'm a little bit confused here... Forgive me, lol.
I don't know about the inaccessible map from The Final Solution, but the super secret level in Totengraeber with all the treasure is named Contemporary Insanity. If the TFS map has the same name, they are both named after Temporary Insanity, a very old mod for registered Wolfenstein that exploited all sorts of bugs and glitches in the original DOS engine for strange and often humorous effects.

Also Totengraeber for ECWolf is out now, check its release thread in the mods forum! :D
User avatar
Tricob
Moderator
<b>Moderator</b>
Posts: 9040
Joined: Tue Mar 15, 2005 2:43 am
Location: Neo-traditions, Inc.

Post by Tricob »

Executor wrote:ECWolf mods are made using ECWolf's special lumps that define things like actor behavior, level properties, etc. rather than using the source code. I implemented ambient sounds by placing a special actor in a hidden corner of the map that waits for around three seconds, then rolls the RNG to decide whether to play an ambient sound or not. Each cycle, it has about a 1 in 6 chance of playing an ambient sound, and if it decides to play an ambient sound, picks one of the sounds at random.
I've actually thought about doing something similar for my own Ambient Sounds code. Like your code, it's carried out by an actor spawned on the map. A major difference with mine is that it's spawned in a square on the map of an outdoor environment, and before it plays back the sound, it checks to see if the player is on the same floorcode as the "actor". If this is true, it plays an "outdoor" version of a "falling rain" sound. If it checks as "false", it plays an "indoor version" of the rain sound instead.
User avatar
Executor
DieHard Officer
DieHard Officer
Posts: 743
Joined: Fri Mar 28, 2003 8:32 pm

Post by Executor »

Yeah I can't do that. To do something like that I would need ACS or similar to add scripting to the level itself, and that won't be coming for some time.
User avatar
Thomas
Mapping Master
Mapping Master
Posts: 5719
Joined: Tue Nov 23, 2004 4:41 pm

Post by Thomas »

Executor wrote:I don't know about the inaccessible map from The Final Solution, but the super secret level in Totengraeber with all the treasure is named Contemporary Insanity. If the TFS map has the same name, they are both named after Temporary Insanity, a very old mod for registered Wolfenstein that exploited all sorts of bugs and glitches in the original DOS engine for strange and often humorous effects.
Then it's just because the screenshot confuses me, as The Final Solution's inaccessible map was labeled "0" and the Totengraeber level was marked "1". Ah! And yes, I'm too quite certain that the name derives from Temporary Insanity. Been a while since I tried that one...
Blzut3
DieHard Guard
DieHard Guard
Posts: 214
Joined: Wed Jun 08, 2011 8:59 pm

ECWolf - Advanced Source Port

Post by Blzut3 »

This probably won't be reasonably done in time for 1.3, but my computer networks class requires some protocol be implemented. So:
► Show Spoiler
And here's a video of it yesterday where I just had one player viewed by two instances: https://www.youtube.com/watch?v=fTXCF27Epv4

Plenty of sync problems to take care of though. :/
User avatar
printz
Can I Play Daddy
Can I Play Daddy
Posts: 26
Joined: Wed Jul 31, 2013 5:35 pm
Location: Bucharest

Post by printz »

Wow, are the BJ sprites placeholders or fully rotated? I'd love if there are some sprites so I can use them in AutoWolf!
Blzut3
DieHard Guard
DieHard Guard
Posts: 214
Joined: Wed Jun 08, 2011 8:59 pm

Post by Blzut3 »

They're just the sprites from the end sequence. I'm not sure if I'm going to include multi player sprites with the port. The most likely scenario at this point is I will add some code to sub in the guard sprites if no player sprites are available and leave it up to users to load a mod for the rest. Otherwise I need to come up with sprites for every game supported and that could quickly become a mess.

If you want sprites though, contact DoomJedi since I know SplitWolf has a full set.
User avatar
doomjedi
DieHard Wolfer
DieHard Wolfer
Posts: 3317
Joined: Fri Jul 21, 2006 12:00 pm
Location: Israel

Post by doomjedi »

Blzut3 wrote:If you want sprites though, contact DoomJedi since I know SplitWolf has a full set.
I have much improved many (not to say "most") of the player (and even some SS) frames since last beta of "SplitWolf", and those better frames will be part of next "SplitWolf" beta whenever we'll decide to release it. There are new and more versatile player death frames as well.
It's even much more than that, but won't mention here.
Otherwise I need to come up with sprites for every game supported and that could quickly become a mess.
That's why "SplitWolf" only supports Wolf3D, Spear and their classic mappacks.
I do have 8-dir rotational frames for some of the common enemies used in Wolf3D modding. I even released primitive versions of such sets in the past.
Some - we even use in one of our in-dev mods :) Won't tell you why.
User avatar
MrWolfForever
DieHard Wolfer
DieHard Wolfer
Posts: 1304
Joined: Tue Jun 07, 2011 12:21 am
Location: Northeast Ohio, USA

Post by MrWolfForever »

Suggestion: For mapsets being playing, could an option be added to specify whether to move pushwalls 2 or 3 spaces? I posted this first in another forum before I saw this, except as its own thread. I think it would be easy to code in and would make mapsets more accessible.
My YouTube channel - Various Wolf3D and Doom videos; comments highly appreciated and welcomed!: [link removed]
Blzut3
DieHard Guard
DieHard Guard
Posts: 214
Joined: Wed Jun 08, 2011 8:59 pm

Post by Blzut3 »

That can be done by loading a mod: http://maniacsvault.net/ecwolf/files/mo ... lrange.pk3

I could add an option in game to enable compatibility, but how many mods are there that are vanilla compatible except for the pushwall movement distance?
User avatar
MrWolfForever
DieHard Wolfer
DieHard Wolfer
Posts: 1304
Joined: Tue Jun 07, 2011 12:21 am
Location: Northeast Ohio, USA

Post by MrWolfForever »

Thanks - I did not know about that mod. Works like a charm if I just copy past the pk3 onto the exe before loading. :)

Where can I find the most comprehensive list of available mods for ECWolf?
My YouTube channel - Various Wolf3D and Doom videos; comments highly appreciated and welcomed!: [link removed]
Blzut3
DieHard Guard
DieHard Guard
Posts: 214
Joined: Wed Jun 08, 2011 8:59 pm

Post by Blzut3 »

I guess I should have stated that I just made that after reading your post. ;)

The only released mods I'm aware of are the techdemo, the assassinate hitler port, and the totengraeber port.
User avatar
MrWolfForever
DieHard Wolfer
DieHard Wolfer
Posts: 1304
Joined: Tue Jun 07, 2011 12:21 am
Location: Northeast Ohio, USA

Post by MrWolfForever »

Well thanks for making the mod, it is appreciated. :)
My YouTube channel - Various Wolf3D and Doom videos; comments highly appreciated and welcomed!: [link removed]
Blzut3
DieHard Guard
DieHard Guard
Posts: 214
Joined: Wed Jun 08, 2011 8:59 pm

Post by Blzut3 »

User avatar
wolfwhips
DieHard Officer
DieHard Officer
Posts: 547
Joined: Thu Aug 10, 2006 12:12 am

Post by wolfwhips »

Wow, Super Noah 3D released! Time to get some mods going! :D
Blzut3
DieHard Guard
DieHard Guard
Posts: 214
Joined: Wed Jun 08, 2011 8:59 pm

Post by Blzut3 »

I'm sure everyone who wanted a copy bought it by now, but just to be sure everyone is aware: The sale on Super 3D Noah's Ark ends after tomorrow so if you want a $3.49 copy be sure to get it now.
User avatar
Andy_Nonymous
DieHard Officer
DieHard Officer
Posts: 578
Joined: Wed Apr 02, 2003 9:24 pm
Location: New Jersey, USA

ECWolf - Advanced Source Port

Post by Andy_Nonymous »

ECWolf 1.3 doesn't work under Windows 98 for some reason.

The message I get in Win98 when launching:

----------------------------------------------------------------------------
Error Starting Program

The ECWOLF.EXE file is
linked to missing export SHELL32.DLL:SHGetFolderPathW.
----------------------------------------------------------------------------

I merely unzipped the ecwolf-1.3_x86.zip file, added the GT14 version WL6 files, and double-clicked on ecwolf.exe

EDIT:

There's a secondary error window that says:

---------------------------------------------------------------
E:\ECWOLF\ecwolf-1.3_X86\ecwolf.exe

E:\ECWOLF\ecwolf-1.3_X86\ecwolf.exe

A device attached to the system is not functioning
---------------------------------------------------------------
Last edited by Andy_Nonymous on Wed Jul 02, 2014 5:27 pm, edited 1 time in total.
User avatar
Tricob
Moderator
<b>Moderator</b>
Posts: 9040
Joined: Tue Mar 15, 2005 2:43 am
Location: Neo-traditions, Inc.

Post by Tricob »

Andy, have you tried this?
User avatar
Andy_Nonymous
DieHard Officer
DieHard Officer
Posts: 578
Joined: Wed Apr 02, 2003 9:24 pm
Location: New Jersey, USA

ECWolf - Advanced Source Port

Post by Andy_Nonymous »

Thanks, Tricob, but I never thought to even look for something like that because my SHELL32.DLL file is not missing.

From the error message, my hunch is that ecwolf.exe is looking in the wrong place for it.

In Win9x, it's located in C:\WINDOWS\SYSTEM
User avatar
Tricob
Moderator
<b>Moderator</b>
Posts: 9040
Joined: Tue Mar 15, 2005 2:43 am
Location: Neo-traditions, Inc.

Post by Tricob »

OT -

What happens when the file is copied in the SYSTEM32 folder? Does Win98 have one?
User avatar
Andy_Nonymous
DieHard Officer
DieHard Officer
Posts: 578
Joined: Wed Apr 02, 2003 9:24 pm
Location: New Jersey, USA

ECWolf - Advanced Source Port

Post by Andy_Nonymous »

@Tricob: I gave that a shot, and the error/message is the same.
User avatar
Tricob
Moderator
<b>Moderator</b>
Posts: 9040
Joined: Tue Mar 15, 2005 2:43 am
Location: Neo-traditions, Inc.

Post by Tricob »

Okay. I'm afraid I'll have to leave this to Blzut3 or Executor. It's been a long time since I've gotten this error message, and I can't remember how I corrected the problem. :(
Blzut3
DieHard Guard
DieHard Guard
Posts: 214
Joined: Wed Jun 08, 2011 8:59 pm

Post by Blzut3 »

Are you using Windows 98 without KernelEx?
User avatar
Andy_Nonymous
DieHard Officer
DieHard Officer
Posts: 578
Joined: Wed Apr 02, 2003 9:24 pm
Location: New Jersey, USA

ECWolf - Advanced Source Port

Post by Andy_Nonymous »

Yes, I have a "pure" Windows 98 Second Edition OS.

Is KernelEx a new requirement for 1.3? ECWolf 1.2.3 ran great without any problems on my Win98 system.
Blzut3
DieHard Guard
DieHard Guard
Posts: 214
Joined: Wed Jun 08, 2011 8:59 pm

Post by Blzut3 »

KernelEx would be the quick solution. I use KernelEx on the 98SE2ME build I have so that's probably why I didn't notice it broke with the new file system code.

I think I can fix this though, so I will PM you a build when I think I have it working.
User avatar
Tricob
Moderator
<b>Moderator</b>
Posts: 9040
Joined: Tue Mar 15, 2005 2:43 am
Location: Neo-traditions, Inc.

Post by Tricob »

Blzut3 wrote:KernelEx would be the quick solution. I use KernelEx on the 98SE2ME build I have so that's probably why I didn't notice it broke with the new file system code.
Is this the equivalent of Windows 98 Final Edition? This version has been accused of bringing back all the problems the First Edition originally had, and being just as unstable as the First Edition as well. Ultimately, Win98 FE is a version you should avoid. Use Windows 98 SE (Second Edition) instead.
Blzut3
DieHard Guard
DieHard Guard
Posts: 214
Joined: Wed Jun 08, 2011 8:59 pm

Post by Blzut3 »

No, although I used the unofficial Windows 98 SP2 which from what I read does a similar thing, but people seem to recommend it. 98SE2ME is a tool which installs the Windows ME DLLs from the ME disc as well as the newer shell. So you end up with Windows ME without the problems. Well you still have slightly higher memory utilization, but that's not an issue when the system has 512MB.