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.
The first step to improving this is to step out of your comfort zone. You will come across many situations where you will have to use unfamiliar coding practices like this. That's how I did it...
LanHikariDS wrote:Firstly, I don't know how to use that script. All I know is DECORATE, and that doesn't look like DECORATE
In DB2/GZDoomBuilder, you'll have a "Script" icon (Hexen format or UDMF). Plomp it in there with #include "zcommon.acs" up at the top. Press compile.
VINESAUCE is 9 charters, however the lumpname needs to be 8. Imagine you're still using the WAD format for anything sound related.[/quote]
The mod I'm working on doesn't add new maps (Think Project MSX), I'm not using any map editor, just SLADE
Then you'll need to start working with the complexities of [wiki]LOADACS[/wiki] and compiling libraries in Slade3. However, I'm not really sure I'm prepared to explain how to operate that from the absolute start. From my perspective it seems you might be running before walking just a tad, however I'm really not sure where else one starts other than making maps.
DoomKrakken wrote:You do realize that Project MSX also uses ACS, right?
I never said it didn't. However, Edward said to bring up the scripts for the map in DoomBuilder, but there's no map. Likewise, I never said I'm not willing to use ACS, I just said I don't know how to. Another thing I assumed went without saying, I want the sound to play at the start of each map, which is why I originally tried setting it to the player's Spawn state.
Well... if you use SLADE, then it should be very easy. Use an ENTER script (and if you're returning to a map you've been to before, in the case of a hub, then you should duplicate that script but make the duplicate a RETURN script).
I'm a noob with ACS, but I know enough to get around, I think...
Here's what you need to do:
- Define your "Vinesauce sound in SNDINFO (example... "Vinesauce VINESND")
- Start with a fresh new blank file. You can duplicate a text file from within SLADE and then delete its contents if you wish.
- Write this in it...
# library "ACSTITLE" //This is the name of your ACS lump. Name it whatever you want, as long as it's 8 characters or fewer in length. Make sure the name of this file is the same name as the library title.
# include "zcommon.acs" //This is important for [i]all[/i] ACS lumps. Make sure this is there too...
script "Entersound" ENTER
{
PlaySound(0, "Vinesauce", 0);
}
script "Returnsound" ENTER
{
PlaySound(0, "Vinesauce", 0);
}
- Click the "Compile ACS" button (NOT the "Compile ACS (Hexen Format)" button). A module will be created
- Create two new folders... one named "ACS", the other named "Source". Put your text file in the "Source" folder and your new ACS Module into the ACS folder.
- Create a LOADACS script limp that has the exact names of all of your ACS lumps.
Monster seeker missiles travel through the calling actor. Is there a way to change that? I want this cyberdemon that shoot homing missiles to be able to be hit by his own missiles if I circle around him.
You can try using the pointer manipulation functions to clear the missile's target (aka: shooter) after it has gotten far enough from said target to no longer be inside. Be aware that doing this will also prevent the missile from triggering infighting; it's not necessarily a problem in your case but that can be something to keep in mind if you were wanting to generalize this behavior to all monster projectiles.
A missile will always pass through its target; and when a missile deals damage it's the missile's target that is responsible for the damage.