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
cocka
Posts: 1520
Joined: Sat Jul 02, 2011 7:21 am
Location: Hungary

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

Post by cocka »

how do I change the player's mass in game?
http://zdoom.org/wiki/ACS_actor_properties

APROP_Mass
User avatar
BloodyAcid
Posts: 372
Joined: Thu Jul 26, 2012 10:28 pm
Location: Canadia

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

Post by BloodyAcid »

ReedtheStrange wrote:What's the least glitchy way to make a blow-away wall?
How so? Some random explosion graphics and a wall lowering? Or LITERALLY shoot a rocket into some dummy-physics sprites and have them blow away?

For the first option for some explosion graphics, make a trip line (wherever you want) that activates an ACS script that spawns explosive sprites (you'll need to make your own actors) everywhere, quake the floor, and lower it.
User avatar
NickPerrin
Posts: 47
Joined: Thu Apr 12, 2012 1:13 pm

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

Post by NickPerrin »

Is it possible to have monsters not detect the player by touching? For example, monster is facing North, player approaches from South. He "rubs" up against the back of the monster's radius but is never in its line of sight. It detects him from the touch alone and goes into chase/melee/missile states etc. Are there flags or other ways in which to make monsters only detect you by sight?
User avatar
Ravick
Posts: 2041
Joined: Sun Aug 22, 2010 10:59 pm
Location: Tubarão, Brasil

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

Post by Ravick »

I'm afraid there is no way to do it, but, if I'm correctly, this a nice feature to suggest. Maybe as a flag for A_LookEx.
cocka wrote:
how do I change the player's mass in game?
http://zdoom.org/wiki/ACS_actor_properties

APROP_Mass
Thanks!

Is there a way to prevent player from being able to crouch only a specifically parts of the game? I mean, to prevent it by an ACS scrpit, and then allow it again?
User avatar
edward850
Posts: 5886
Joined: Tue Jul 19, 2005 9:06 pm
Location: New Zealand

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

Post by edward850 »

Ravick wrote:Is there a way to prevent player from being able to crouch only a specifically parts of the game?
Yes.
Ravick wrote:I mean, to prevent it by an ACS script, and then allow it again?
No.
User avatar
Ravick
Posts: 2041
Joined: Sun Aug 22, 2010 10:59 pm
Location: Tubarão, Brasil

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

Post by Ravick »

But this will disallow in the whole game. There is no way to disallow it just in a specifically moment? :(
User avatar
edward850
Posts: 5886
Joined: Tue Jul 19, 2005 9:06 pm
Location: New Zealand

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

Post by edward850 »

Ravick wrote:But this will disallow in the whole game.
Try "map", not "whole game".
Ravick wrote:There is no way to disallow it just in a specifically moment? :(
No. Well, you can disable player movement outright, but it's probably not what you want.
User avatar
insightguy
Posts: 1730
Joined: Tue Mar 22, 2011 11:54 pm

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

Post by insightguy »

Is it possible to confine the player's mouse movement to a box?
User avatar
Ravick
Posts: 2041
Joined: Sun Aug 22, 2010 10:59 pm
Location: Tubarão, Brasil

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

Post by Ravick »

You say the the vision of the player, or even the movement of the mouse in the menus? If you are saying just the vision, you can make an ACS script that checks for player's angle and pitch and does not allow these values to get bigger and/or smaller the values you want. :)

___
@edward850 Thanks anyway =/
User avatar
insightguy
Posts: 1730
Joined: Tue Mar 22, 2011 11:54 pm

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

Post by insightguy »

Ravick wrote:You say the the vision of the player, or even the movement of the mouse in the menus? If you are saying just the vision, you can make an ACS script that checks for player's angle and pitch and does not allow these values to get bigger and/or smaller the values you want. :)
yes that's the one. how do i do that?
User avatar
cocka
Posts: 1520
Joined: Sat Jul 02, 2011 7:21 am
Location: Hungary

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

Post by cocka »

Hello!

Is there a way to speed up spikes in Hexen?
User avatar
ChronoSeth
Posts: 1631
Joined: Mon Jul 05, 2010 2:04 pm
Location: British Columbia

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

Post by ChronoSeth »

cocka wrote:Is there a way to speed up spikes in Hexen?
Uh, what spikes?
User avatar
Enjay
 
 
Posts: 26874
Joined: Tue Jul 15, 2003 4:58 pm
Location: Scotland

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

Post by Enjay »

ChronoSeth wrote:
cocka wrote:Is there a way to speed up spikes in Hexen?
Uh, what spikes?
Probably these: [wiki]Classes:ThrustFloor[/wiki]

And, yes, you could probably speed them up by inheriting from them and using shorter frame durations.
User avatar
cocka
Posts: 1520
Joined: Sat Jul 02, 2011 7:21 am
Location: Hungary

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

Post by cocka »

Thanks.
User avatar
Ravick
Posts: 2041
Joined: Sun Aug 22, 2010 10:59 pm
Location: Tubarão, Brasil

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

Post by Ravick »

insightguy wrote:
Ravick wrote:You say the the vision of the player, or even the movement of the mouse in the menus? If you are saying just the vision, you can make an ACS script that checks for player's angle and pitch and does not allow these values to get bigger and/or smaller the values you want. :)
yes that's the one. how do i do that?
Oops, sorry, I didn't see you reply before :o

I've take a look at Enjay & Aphoterm's scripts for that chain-gun in Liberation. I thought it was very complicated, so I decided to make one simpler for my needs.

Here is the code:

Code: Select all


int Angulo;
Int Visada;

Script 405 (void)
{
 angulo = (getactorangle(1000) >> 8);
    if ((angulo > 64) && (angulo < 192))
     {
        if (angulo < 128)
         {
            setactorangle(1000, 0.25);
         }
        if (angulo > 128)
         {
            setactorangle(1000, 0.75);
         }
     }
 //Pitch
  Visada = (GetActorPitch (1000) >> 8);
    if (Visada > 20)
     {
         SetActorPitch (1000, 20<<8);
     }
     if (Visada < -20)
     {
         SetActorPitch (1000, -20<<8);
     }
delay(1);
restart;    
}
The values are arbitrary, so you'll need to define what numbers you want first. You'll need 4 values: the max and min pitch, and the max and min angle.

For doing this, first make a script that constantly shows the value of a variable with "[wiki]PrintBold[/wiki]". Then, make it give this variable the value of players angle (something like "MyVar = ([wiki]getactorangle[/wiki](1000) >> 8);"). Then run the game and watch the values that are displayed. Take the max and min angle values. Later you just need to take the values of the pitch, so just delete the line above and change for this: (MyVar= ([wiki]GetActorPitch[/wiki] (1000) >> 8);). Run the game again and take the values you want.

Note that in the script I give the angle and pitch variables the names of Angulo and Visada. Then I make it check if it is out of the range I want, and tell the ACS to give the player (TID 1000) the change it's angle and/or its pitch.

This is not an elegant way to do this, but it works, hehe :)

Return to “Editing (Archive)”