The "How do I..." Thread

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.
User avatar
adamaH_oriH
Posts: 327
Joined: Thu Jul 23, 2015 8:10 am
Location: Mars Base

Re: The "How do I..." Thread

Post by adamaH_oriH »

Gez wrote:
adamaH_oriH wrote:I already know how to turn Mus to Midi. I was niot asking 'how do I turn Mus intor Midi', and I use slade. I was asking how do you identify the name of a midi song, artist name and song name wise
You haven't understood one word of what I was saying, since I AM NOT TALKING ABOUT TURNING MUS TO MIDI

I AM NOT TALKING ABOUT TURNING MUS TO MIDI


I AM NOT TALKING ABOUT TURNING MUS TO MIDI


I AM NOT TALKING ABOUT TURNING MUS TO MIDI


I AM NOT TALKING ABOUT TURNING MUS TO MIDI

I am talking about getting the info from MIDI files that have relevant METADATA. I've even given screenshot examples of how MIDI files may have metadata. Here, look:

Here, look:
Gez wrote:If you are lucky, the lumps are still in MIDI format (if they've been converted to MUS format, forget it) and they contain relevant metadata (that's unfortunately pretty rare). Just look at it with a good MIDI player, or with SLADE, and the metadata (if any) should be displayed.

If there's no relevant metadata (including no metadata at all) you'll have to ask for help. You can try this thread. No guarantee of results, though.
Here is a step-by-step reading comprehension guide of this post:
If you are lucky, the lumps are still in MIDI format -- here I am saying that the lumps should still be in their pristine, virgin MIDI format. Not "converted back to MIDI", but "still in MIDI format".

(if they've been converted to MUS format, forget it) -- here I am quite explicitly saying that if they have been turned to MUS, there is nothing one can do. I am not saying "convert them to MIDI format", I am saying "forget it". Forget it. Get it? Forget it.

and they contain relevant metadata (that's unfortunately pretty rare) -- here I am saying what is important here, it is that they contain relevant metadata. I am also saying that there's no guarantee you'll find relevant metadata; but it's worth a try.

Just look at it with a good MIDI player, or with SLADE, and the metadata (if any) should be displayed. -- here I am telling you how you can look for that metadata. I have also given you an example, later:
Image
See that thing right here?
"End is Nigh" (c) 2001 Jamie Robertson, http://www.bgcsoftware.co.uk/jamie-robertson/
Do you see how getting something like this is relevant and useful when you want song title and author? Try to answer that, then open the spoiler box and compare your answer to see if it was correct.
Spoiler:
MUS is irrelevant because MUS never has metadata. Converting them to MIDI is not going to create this metadata, SO I AM NOT TALKING ABOUT THAT. :x

And finally:

If there's no relevant metadata (including no metadata at all) you'll have to ask for help. You can try this thread. No guarantee of results, though. -- here I am telling you that if the metadata way doesn't help you, you have to ask people, and I give you a link to a forum thread where you can ask people. Wow! So helpful! Much linkage!

At no point did I tell you to convert MUS to MIDI -- I did the exact perfect contrary of that, I told you it was useless -- and at no point did I try to explain to you how to convert MUS to MIDI -- why would I have done that since I was telling you it was useless?

In conclusion, I am not talking about turning MUS to MIDI. :x :x :x
Oh... :oops:

and more bad news: they've been turned into mus.
User avatar
DoomKrakken
Posts: 3489
Joined: Sun Oct 19, 2014 6:45 pm
Location: Plahnit Urff
Contact:

Re: The "How do I..." Thread

Post by DoomKrakken »

Is there a way to have Raise states for players? Like, when they resurrect?

Also, is there a way to set translations to actors so that the new translation then becomes the actor's default "normal" translation?

Example: Guncaster has various ways of changing translations for actors now. For example, if a monster is killed by an attack dealing "Tiberium" damage, the monster's translation becomes a bright green. When it's raised, it turns back to normal. Now, here's the question... let's say I decide to create a Nightmare Cacodemon and have it inherit from GuncastCacodemon rather than Cacodemon. The most important feature of this Cacodemon is that it also has a translation that makes it blue. If I kill the Nightmare Cacodemon with an attack dealing "Tiberium" damage, then it will turn green. However, if an Arch-Vile raises it, then the monster will become red like the standard Cacodemon. What I want is for it to return to the blue translation I set for it, rather than its parent's "normal" translation. Is there a way to do this?
User avatar
NeuralStunner
 
 
Posts: 12328
Joined: Tue Jul 21, 2009 12:04 pm
Preferred Pronouns: No Preference
Operating System Version (Optional): Windows 11
Graphics Processor: nVidia with Vulkan support
Location: capital N, capital S, no space
Contact:

Re: The "How do I..." Thread

Post by NeuralStunner »

Clarification: Is the translation reset being done through a script, or is this an effect of the resurrection? If the latter, then I'd say this is a bug/oversight, as the default translation should always be what's specified for the actor class. If the former, I'm not sure what else you could do, since the engine is just doing what it's told (setting the translation to nothing).
User avatar
DoomKrakken
Posts: 3489
Joined: Sun Oct 19, 2014 6:45 pm
Location: Plahnit Urff
Contact:

Re: The "How do I..." Thread

Post by DoomKrakken »

It's through a script, actually.

There's no way to make it as though that monster's new translation is its "default" translation?
User avatar
Mav3r1ck
Posts: 262
Joined: Thu Jul 16, 2015 11:09 pm

Re: The "How do I..." Thread

Post by Mav3r1ck »

I'm trying to replicate the effect in doom 64 where the machine in the Terraformer smashes the ground to reveal the passage way. Below is the code I'm using.

Code: Select all

script Terraformer (void)
{
	Floor_RaiseByValue (59, 8, 64);
	Ceiling_RaiseByValue (59, 8, 64);
	Floor_RaiseByValue (61, 8, 64);
	Ceiling_RaiseByValue (61, 8, 64);
	Delay(16);
	Floor_LowerByValue (59, 8, 64);
	Ceiling_LowerByValue (59, 8, 64);
	Floor_LowerByValue (61, 8, 64);
	Ceiling_LowerByValue (61, 8, 64);
}
It will rise up but won't go down. I've attached the script execute to the switch and done what I could think of but I don't know what I'm doing wrong. Can someone help me with this?
User avatar
DoomKrakken
Posts: 3489
Joined: Sun Oct 19, 2014 6:45 pm
Location: Plahnit Urff
Contact:

Re: The "How do I..." Thread

Post by DoomKrakken »

Is there a way to replicate a lightning bolt effect using actors inheriting from FastProjectile or by using A_RailAttack? I want to create something curvy, jagged, and uneven, yet a continuous connected line, to simulate the looks of a lightning bolt.
illuknisaa
Posts: 62
Joined: Sun May 15, 2016 2:19 pm

Re: The "How do I..." Thread

Post by illuknisaa »

Mav3r1ck wrote:I'm trying to replicate the effect in doom 64 where the machine in the Terraformer smashes the ground to reveal the passage way. Below is the code I'm using.

Code: Select all

script Terraformer (void)
{
	Floor_RaiseByValue (59, 8, 64);
	Ceiling_RaiseByValue (59, 8, 64);
	Floor_RaiseByValue (61, 8, 64);
	Ceiling_RaiseByValue (61, 8, 64);
	Delay(16);
	Floor_LowerByValue (59, 8, 64);
	Ceiling_LowerByValue (59, 8, 64);
	Floor_LowerByValue (61, 8, 64);
	Ceiling_LowerByValue (61, 8, 64);
}
It will rise up but won't go down. I've attached the script execute to the switch and done what I could think of but I don't know what I'm doing wrong. Can someone help me with this?
Try adding

Code: Select all

Tagwait (61);
Tagwait (59); 
before or after after the delay. Only reason I can think why your script doesn't work is because the sector is trying to go down even though it is still going up.
User avatar
Mav3r1ck
Posts: 262
Joined: Thu Jul 16, 2015 11:09 pm

Re: The "How do I..." Thread

Post by Mav3r1ck »

Yes, I was trying to get the timing right with the delay to get the desired effect. While I was waiting, I decided to do some experimenting. It seems the game won't allow it that way for some reason, which I don't understand why it won't.

Code: Select all

script Terraformer (void)
{
	Door_Close (60, 64);
	Delay(16);
	Floor_RaiseByValue (59, 8, 160);
	Ceiling_RaiseByValue (59, 8, 160);
	Floor_RaiseByValue (61, 8, 160);
	Ceiling_RaiseByValue (61, 8, 160);
	Delay(176);
	Floor_LowerInstant (59, 0, 36);
	Ceiling_LowerInstant (59, 0, 36);
	Floor_LowerInstant (61, 0, 36);
	Ceiling_LowerInstant (61, 0, 36);
	Floor_LowerInstant (57, 0, 4);
	Floor_LowerInstant (58, 0, 4);
	Floor_LowerInstant (69, 0, 4);
	Delay(16);
	Floor_RaiseByValue (59, 8, 284);
	Ceiling_RaiseByValue (59, 8, 284);
	Floor_RaiseByValue (61, 8, 284);
	Ceiling_RaiseByValue (61, 8, 284);
	Delay(300);
	Floor_LowerInstant (59, 0, 40);
	Ceiling_LowerInstant (59, 0, 40);
	Floor_LowerInstant (61, 0, 40);
	Ceiling_LowerInstant (61, 0, 40);
	Floor_LowerInstant (57, 0, 4);
	Floor_LowerInstant (58, 0, 4);
	Floor_LowerInstant (69, 0, 4);
}
This is the code I'm using now and will work correctly like I want it to when alternating between the Instant and the ByValue specials. Though this is only half of it and once I get the timing and heights correct I'll be able to move on with the quake effect and smash sound.
User avatar
TheBadHustlex
Posts: 1914
Joined: Thu Oct 03, 2013 12:50 am
Location: 'stria

Re: The "How do I..." Thread

Post by TheBadHustlex »

I'm completely new to ZDoom-Multiplayer, so I need to ask a few questions:
I'm making a Deathmatch-WAD including new weapons and maps. Of course, I'd need to test this. But how do I do that? I know there is a tutorial around here, but I have no idea how to test multiplayer-features. Can you run mutliple GZDoom-Windows? And can you then join the game you host?
Also, one fundamental thing I don't understand: What is the "command line"...? I know its not the ZDoom-console, and I don't think it means the cmd.exe. I know, that may be a dumb question, bit I really dont know.
User avatar
kodi
 
 
Posts: 1361
Joined: Mon May 06, 2013 8:02 am

Re: The "How do I..." Thread

Post by kodi »

How do I connect an md3 character or weapon hand model with a weapon? I can import them in MisfitModel3d with the "Points" clearly visible, but I can't figure out how to get the non-animated part (weapon) to attach to the animated part (character/hands).
illuknisaa
Posts: 62
Joined: Sun May 15, 2016 2:19 pm

Re: The "How do I..." Thread

Post by illuknisaa »

Mav3r1ck wrote:Yes, I was trying to get the timing right with the delay to get the desired effect. While I was waiting, I decided to do some experimenting. It seems the game won't allow it that way for some reason, which I don't understand why it won't.

Code: Select all

script Terraformer (void)
{
	Door_Close (60, 64);
	Delay(16);
	Floor_RaiseByValue (59, 8, 160);
	Ceiling_RaiseByValue (59, 8, 160);
	Floor_RaiseByValue (61, 8, 160);
	Ceiling_RaiseByValue (61, 8, 160);
	Delay(176);
	Floor_LowerInstant (59, 0, 36);
	Ceiling_LowerInstant (59, 0, 36);
	Floor_LowerInstant (61, 0, 36);
	Ceiling_LowerInstant (61, 0, 36);
	Floor_LowerInstant (57, 0, 4);
	Floor_LowerInstant (58, 0, 4);
	Floor_LowerInstant (69, 0, 4);
	Delay(16);
	Floor_RaiseByValue (59, 8, 284);
	Ceiling_RaiseByValue (59, 8, 284);
	Floor_RaiseByValue (61, 8, 284);
	Ceiling_RaiseByValue (61, 8, 284);
	Delay(300);
	Floor_LowerInstant (59, 0, 40);
	Ceiling_LowerInstant (59, 0, 40);
	Floor_LowerInstant (61, 0, 40);
	Ceiling_LowerInstant (61, 0, 40);
	Floor_LowerInstant (57, 0, 4);
	Floor_LowerInstant (58, 0, 4);
	Floor_LowerInstant (69, 0, 4);
}
This is the code I'm using now and will work correctly like I want it to when alternating between the Instant and the ByValue specials. Though this is only half of it and once I get the timing and heights correct I'll be able to move on with the quake effect and smash sound.
Did you try adding "tagwait();"? If you add that it should prevent the issue of trying to move the sector up and down at the same time.
User avatar
Mav3r1ck
Posts: 262
Joined: Thu Jul 16, 2015 11:09 pm

Re: The "How do I..." Thread

Post by Mav3r1ck »

illuknisaa wrote:
Mav3r1ck wrote:Yes, I was trying to get the timing right with the delay to get the desired effect. While I was waiting, I decided to do some experimenting. It seems the game won't allow it that way for some reason, which I don't understand why it won't.

Code: Select all

script Terraformer (void)
{
	Door_Close (60, 64);
	Delay(16);
	Floor_RaiseByValue (59, 8, 160);
	Ceiling_RaiseByValue (59, 8, 160);
	Floor_RaiseByValue (61, 8, 160);
	Ceiling_RaiseByValue (61, 8, 160);
	Delay(176);
	Floor_LowerInstant (59, 0, 36);
	Ceiling_LowerInstant (59, 0, 36);
	Floor_LowerInstant (61, 0, 36);
	Ceiling_LowerInstant (61, 0, 36);
	Floor_LowerInstant (57, 0, 4);
	Floor_LowerInstant (58, 0, 4);
	Floor_LowerInstant (69, 0, 4);
	Delay(16);
	Floor_RaiseByValue (59, 8, 284);
	Ceiling_RaiseByValue (59, 8, 284);
	Floor_RaiseByValue (61, 8, 284);
	Ceiling_RaiseByValue (61, 8, 284);
	Delay(300);
	Floor_LowerInstant (59, 0, 40);
	Ceiling_LowerInstant (59, 0, 40);
	Floor_LowerInstant (61, 0, 40);
	Ceiling_LowerInstant (61, 0, 40);
	Floor_LowerInstant (57, 0, 4);
	Floor_LowerInstant (58, 0, 4);
	Floor_LowerInstant (69, 0, 4);
}
This is the code I'm using now and will work correctly like I want it to when alternating between the Instant and the ByValue specials. Though this is only half of it and once I get the timing and heights correct I'll be able to move on with the quake effect and smash sound.
Did you try adding "tagwait();"? If you add that it should prevent the issue of trying to move the sector up and down at the same time.
Yeah, I'm gonna try that as soon as I start working on it again. Thx for the help!
User avatar
|ndußtrial
Posts: 398
Joined: Sat Aug 17, 2013 11:39 am
Graphics Processor: Intel (Modern GZDoom)
Location: Ivy Mercy Lyons

Re: The "How do I..." Thread

Post by |ndußtrial »

TheBadHustlex wrote:Also, one fundamental thing I don't understand: What is the "command line"...? I know its not the ZDoom-console, and I don't think it means the cmd.exe. I know, that may be a dumb question, bit I really dont know.
command line is the windows terminal/command prompt
User avatar
JPL
 
 
Posts: 523
Joined: Mon Apr 09, 2012 12:27 pm
Contact:

Re: The "How do I..." Thread

Post by JPL »

I'd like to make an actor that activates when you get within its radius, and deactivates when you leave it.

More specifically, I'd like to run an ACS function that displays a message when you get near a thing, and run another function (or the same function with different parameters) that clears the message when you move away.

One way I was trying to do that was this, but it doesn't work:

Code: Select all

ACTOR MyTriggerRadius 1996
{
	Radius 128
	Height 1
	Activation THINGSPEC_Switch
	+SOLID
	+BUMPSPECIAL
	+CANPASS
	States
	{
	Spawn:
		CAND A -1
		Stop
	Active:
		BON1 ABCDCB 6 ACS_NamedExecute("Proximity_Text", 1)
		Loop
	Inactive:
		CAND A -1 ACS_NamedExecute("Proximity_Text", 0)
		Stop
	}
}
I'd like to set the parameter passed into that function on a per-thing basis, too, instead of what's hardcoded in the decorate. I'm relatively new to DECORATE scripting, still trying to figure out what's possible.

Currently I'm getting something equivalent to this functionality with "Actor Enters/Leaves Sector" things, but I'm finding that making the trigger areas single-sector is too much of a pain; I'd like to be able to just place one thing and set one parameter on it without having to move verts/sectors around.
illuknisaa
Posts: 62
Joined: Sun May 15, 2016 2:19 pm

Re: The "How do I..." Thread

Post by illuknisaa »

JPL wrote:I'd like to make an actor that activates when you get within its radius, and deactivates when you leave it.
Spoiler:
1. Your switchable decoration doesn't work because it doesn't inherit from the switchable decoration class.

eg. it needs to look something like this:

Code: Select all

ACTOR BatSpawner : SwitchableDecoration
Also what you are doing is kinda pointless anyway because:

2. There is a jump function that does what you want:
http://zdoom.org/wiki/A_CheckRange
Locked

Return to “Editing (Archive)”