Loving this, but need a little help with modding in new pickups

Advanced Wolfenstein 3D source port based upon Wolf4SDL and ZDoom.
[Home] [Download] [HG builds (Win)] [HG builds (Mac)] [Wiki] [Repo]

Moderator: Blzut3

Banjo
Posts: 13
Joined: Tue Aug 16, 2016 7:06

Loving this, but need a little help with modding in new pickups

Post by Banjo »

Hi everyone!

I just discovered ECWolf totally at random; the new Doom game made me want to revisit old Doom in source ports, and I stumbled across a Wolfenstein TC that then led me to ECWolf and I've been playing that ever since! Absolutely loving it.

I was also thrilled to see how easy modding is with ECWolf (I had a crack at Doom back in the day, but never tried modding or mapping for Wolfenstein 3D) and have had fun creating a few simple mods these past few days (graphic replacements, weapon and enemy tweaks, etc.). I also had a quick go at mapping today, and it seems like using HWE and following the ecwolfedit1.pdf instructions to import created maps works great (at least with the few test maps I made).

However, I'm a bit stuck with my next step: how do I add new elements (walls, enemies, pickups, weapons) to my created maps?

Example: I've made a new shotgun weapon (something I always wanted in Wolf3D!) and it works fine. Obviously though, I can only obtain it by using cheat codes (e.g. free items). I can use "replaces" to make it a pickup instead of something that already exists (e.g. my new shotgun ammo currently replaces chalice pickups), however this is just for testing and I want to be able to add unique new pickup items to maps rather than replace existing stuff.

Where I am confused is how do I get my new item (or weapon or wall or enemy) into my chosen mapping program (HWE, WDC, etc) so I can place it when making a map? I presume it is done by editing or creating new "mapdefs" entries, but opening those up for HWE or WDC present me with text strings I have no idea what to do with (I'm assuming the long numbers are some sort of reference to the default objects, but obviously mine aren't in the original data packs, since they are mods added by ECWolf via a pk3 file).

If anyone can even just point me in the right direction what I need to do, I'd really appreciate it!
Blzut3
Developer
Developer
Posts: 491
Joined: Sun Jan 24, 2010 22:21

Re: Loving this, but need a little help with modding in new pickups

Post by Blzut3 »

You need to write a custom map translator. The ones for the base game are in ecwolf.pk3 and should work as examples. Plug the numbers you assign in your map translator into the editor and you should be able to lay them down.

There is also a tutorial on the wiki that might help.

If you're using the latest development versions you can use the name of the actor in your translator script instead of assigning a "new number"/doomednum which was basically a result of me trying to emulate Doom's interface a little too much.
Banjo
Posts: 13
Joined: Tue Aug 16, 2016 7:06

Re: Loving this, but need a little help with modding in new pickups

Post by Banjo »

Thank you so much for the help; your pointer and that tutorial was exactly what I needed to know, and works great for me after creating a custom xlat file and using HWE for mapping. I *love* how easy modding is with ECWolf, thanks so much again for your work on this project!

A couple of other questions if that's okay...

1) Is it possible to load multiple IWAD data for a single mod? For example, if I want to make a Wolf3D mod but add a new enemy that uses sprites and/or sounds only found in SOD, do I have to include those "missing" sprites or sounds in my pk3 (what I've been doing so far) or can I somehow reference both sets of data as long as the user has them present? Happy to do it either way, but just wanting to do it the "right" way if possible. :)

2) Is there any way to change the target area size when using A_GunAttack, or otherwise effect "spread" for A_GunAttack or A_WolfAttack? I'm asking for my custom shotgun weapon, as right now it hits multiple targets but just within a *very* narrow zone (presumably the "9 degree cone" mentioned on the wiki?).

3) Can entering or exiting map clusters call/play a SOD-style "intermission" cutscene or is this limited to exittext/entertext text screens?

Oh, and a simple one I've probably missed somewhere for just running ECWolf: can I specify an IWAD from the command line or do I have to use cfg files if I want to do that without the IWAD picker?
Blzut3
Developer
Developer
Posts: 491
Joined: Sun Jan 24, 2010 22:21

Re: Loving this, but need a little help with modding in new pickups

Post by Blzut3 »

Banjo wrote:1) Is it possible to load multiple IWAD data for a single mod? For example, if I want to make a Wolf3D mod but add a new enemy that uses sprites and/or sounds only found in SOD, do I have to include those "missing" sprites or sounds in my pk3 (what I've been doing so far) or can I somehow reference both sets of data as long as the user has them present? Happy to do it either way, but just wanting to do it the "right" way if possible. :)
You would need to copy the data from one game to the other. Use whichever IWAD that requires the fewest resources to be copied. There is one exception to this which is the Spear mission packs are set up in ECWolf such that their data does not conflict so you could make a mod for SD2 or SD3 which uses all the vanilla Spear stuff using only xlat. You can't automatically pull in all three data sets though.
Banjo wrote:2) Is there any way to change the target area size when using A_GunAttack, or otherwise effect "spread" for A_GunAttack or A_WolfAttack? I'm asking for my custom shotgun weapon, as right now it hits multiple targets but just within a *very* narrow zone (presumably the "9 degree cone" mentioned on the wiki?).
Somehow I'm just now noticing that the cone is a hard coded constant still (although I probably shouldn't surprised since it used to be tied to the renderer). With that said, the way wolf3d's attack code works makes it difficult to implement a proper shotgun, but you can get pretty good results by simply calling A_GunAttack multiple times. You can play with the ranges to make point blank shots on average do more damage than ranged shots. Since the function is called multiple times, if one of the calls kills a monster it will "blow through" to the next.

This is what Operation Serpent used before switching to multiple invisible fast projectiles which emulates proper spread.
Banjo wrote:3) Can entering or exiting map clusters call/play a SOD-style "intermission" cutscene or is this limited to exittext/entertext text screens?
I'm surprised that I haven't seen a request for this before here or at ZDoom (since I don't believe it's possible there either unless emulated by using the slideshow starter). It is limited to text screens at the moment.
Banjo wrote:Oh, and a simple one I've probably missed somewhere for just running ECWolf: can I specify an IWAD from the command line or do I have to use cfg files if I want to do that without the IWAD picker?

Code: Select all

--data wl6
Banjo
Posts: 13
Joined: Tue Aug 16, 2016 7:06

Re: Loving this, but need a little help with modding in new pickups

Post by Banjo »

Blzut3 wrote:
Banjo wrote:1) Is it possible to load multiple IWAD data for a single mod? For example, if I want to make a Wolf3D mod but add a new enemy that uses sprites and/or sounds only found in SOD, do I have to include those "missing" sprites or sounds in my pk3 (what I've been doing so far) or can I somehow reference both sets of data as long as the user has them present? Happy to do it either way, but just wanting to do it the "right" way if possible. :)
You would need to copy the data from one game to the other. Use whichever IWAD that requires the fewest resources to be copied. There is one exception to this which is the Spear mission packs are set up in ECWolf such that their data does not conflict so you could make a mod for SD2 or SD3 which uses all the vanilla Spear stuff using only xlat. You can't automatically pull in all three data sets though.
That's what I suspected, but that's cool. I'm using SOD as a base, so that means I needed just a scant few missing files from W3D. In fact, in the mod I'm working on (which initially began as a "combineW3D and SOD into one game" mostly just to teach myself how to mess with ECWolf), I'd already done it the way you describe above, so the upside is that all my work wasn't for nothing it turns out (which it would have been if the answer was "yes, you don't need to copy the other IWAD data").

For me, it was also a case of "is this proper etiquette?" too, since I know some communities frown on including *any* vanilla-game resources in fan mods. Presumably not the case when there's things like WolfenDoom and Doom's Wolfenstein TC around though!
Blzut3 wrote:
Banjo wrote:2) Is there any way to change the target area size when using A_GunAttack, or otherwise effect "spread" for A_GunAttack or A_WolfAttack? I'm asking for my custom shotgun weapon, as right now it hits multiple targets but just within a *very* narrow zone (presumably the "9 degree cone" mentioned on the wiki?).
Somehow I'm just now noticing that the cone is a hard coded constant still (although I probably shouldn't surprised since it used to be tied to the renderer). With that said, the way wolf3d's attack code works makes it difficult to implement a proper shotgun, but you can get pretty good results by simply calling A_GunAttack multiple times. You can play with the ranges to make point blank shots on average do more damage than ranged shots. Since the function is called multiple times, if one of the calls kills a monster it will "blow through" to the next.

This is what Operation Serpent used before switching to multiple invisible fast projectiles which emulates proper spread.
I'm laughing here because I've never modded Wolfenstein before in my life (and never Doom past the 90's!), and yet my two personal solutions were exactly the two options above; glad to see I've not been making a hash of this so far in learning!

Initially I messed with creating super-fast projectiles (thinking along the lines of how the rocket launcher blast radius worked), which worked, but then I decided to just make things simple and use a "multiple attacks per shot using just 1 ammo" gun attack that hits harder up close and is weak at distance, and it indeed cuts through multiple enemies as it kills the ones in front! :twisted:

Later, I noticed that "cone" comment on the wiki while researching the function, and thought "I wonder if that would allow for a shotgun spread if it's not hardcoded?" So if it can't and wouldn't help, no probs!
Blzut3 wrote:
Banjo wrote:3) Can entering or exiting map clusters call/play a SOD-style "intermission" cutscene or is this limited to exittext/entertext text screens?
I'm surprised that I haven't seen a request for this before here or at ZDoom (since I don't believe it's possible there either unless emulated by using the slideshow starter). It is limited to text screens at the moment.
Cool, no probs. Just been playing around getting art screens working and that's good enough for me!

I'm surprised others haven't wanted to do it too, especially if it can't be done in ZDoom either (I only messed with that a little, because I only discovered it a month or two ago, it led me to ECWolf and I've spent far more time with that since!)
Blzut3 wrote:
Banjo wrote:Oh, and a simple one I've probably missed somewhere for just running ECWolf: can I specify an IWAD from the command line or do I have to use cfg files if I want to do that without the IWAD picker?

Code: Select all

--data wl6
Thanks! Hoped it was that easy, but all I could find online for some reason was the ZDoom --iwad command!
Post Reply

Return to “ECWolf”