Duke4.net Forums: EDuke32 Scripting - Duke4.net Forums

Jump to content

  • 119 Pages +
  • « First
  • 105
  • 106
  • 107
  • 108
  • 109
  • Last »
  • You cannot start a new topic
  • You cannot reply to this topic

EDuke32 Scripting  "CON coding help"

#3181

View PostMC84, on 05 January 2023 - 12:56 PM, said:

What is the best way to create an actor that has multiple damage levels? The following code gets stuck after the first ifstrength statement;

useractor notenemy DOORBOARDED 120
{
 cstat 273 // blocked, hittable
 ifaction 0
  {
   ifhitweapon
    { ifstrength 100
      action ONE 
      break 
     }
    else
    { ifstrength 80
      action TWO 
      break 
     }
    else 
    { ifstrength 60
      action THREE 
      break 
    }
   else
   { ifstrength 40 
     action FOUR 
     break 
    }
   else
   { ifstrength 20
     action FIVE 
     break 
    }
   else
   { ifstrength 0
     killit 
    }
   }
}
enda
	


It's getting stuck because all of that only fires on IFACTION 0. Changing the action to anything else stops meeting that condition.
After that it is getting stuck on the first strength check because 'ifstrength 100' is true until death (if strength <= 100).

Spoiler

2

User is offline   MC84 

#3182

Thanks guys! I appreciate the help!
0

User is offline   VGames 

#3183

View PostVGames, on 05 January 2023 - 05:32 PM, said:

Is there any way to check what HUD is being used as in the HUD you pick by pressing the - or = keys? I tried messing around with "statusbarrange" by getting the value and saving it in a variable, but I don't know what the number is for the specific HUD type I'm trying to mess with.


Still looking for some help with this if it’s even possible.

But also wanted to ask if “digitalnumber” is deprecated now what is its replacement?

This post has been edited by VGames: 06 January 2023 - 07:55 AM

0

User is offline   Reaper_Man 

  • Once and Future King

#3184

You want the screen_size userdef property.

https://wiki.eduke32...iki/Screen_size

Screentext should be used for all HUD text drawing. At the bottom of the wiki page are examples on how to convert deprecated screen text commands to screentext.

https://wiki.eduke32...wiki/Screentext
0

User is offline   VGames 

#3185

View PostReaper_Man, on 06 January 2023 - 10:41 AM, said:

You want the screen_size userdef property.

https://wiki.eduke32...iki/Screen_size

Screentext should be used for all HUD text drawing. At the bottom of the wiki page are examples on how to convert deprecated screen text commands to screentext.

https://wiki.eduke32...wiki/Screentext


This is what I’ve been looking for thanks
0

User is offline   jimbob 

#3186

i want to use EVENT_SOUND to check if a sound if playing, then use rotatesprite to display a subtitle for it, adding a regular quote works fine, but rotatesprite doesnt seem to work the way it should... well i am guessing it triggers for a single tick then stops so the graphic isnt displayed correctly. any way to make the graphic stay on screen longer?
i use this in event_sound
case PSA1 { quote 125 rotatesprite 0 0 65536 0 6282 0 0 0 0 0 xdim ydim } break



so the quote works fine, but tile 6282 isnt rendered, or too briefly to be seen.
0

User is offline   Reaper_Man 

  • Once and Future King

#3187

That's likely correct, it would only be displaying for a single gametic when EVENT_SOUND captures the sound playback. EVENT_SOUND only triggers when a sound is played, NOT while a sound is playing. What you can do is create a subtitle timer gamevar, and in EVENT_SOUND set the timer, then in a DISPLAYREST event, display the subtitle if the timer is non-zero. You don't want to decrement the timer in DISPLAYREST because that's tied to the player's framerate, so you'll want a separate EVENT_WORLD or similar event to decrement the timer down to zero.
0

User is offline   jimbob 

#3188

i got it working :) i did do it all in event EVENT_DISPLAYREST but thats something i'll fix this afternoon, for now it works :) thanks
0

User is offline   VGames 

#3189

Is there a sprite flag that can keep sprites from reacting to the dynamic lights when using Polymer?
0

#3190

React as in illumination from other dynamic light source? If it exists it's not documented.
Since cstat
8192 is dynamic shadow
16384 is invis with dynamic shadow
32768 is invis


Maybe 65536 , 131072, or 262144



Emitting dynamic light is 256 in spriteflags and I don't think there's much chance a receiving dynamic flag is hidden at the bottom (536870912, 1073741824, 2147483648)
There should not be any arbitrary non-powers of 2 like in the WORKSLIKE flags because those are brought on by one value or the other being impossible to use together.
0

User is online   Danukem 

  • Duke Plus Developer

#3191

cstat values are limited by what the .map format can store. Try entering a number higher than 65535.
0

User is offline   VGames 

#3192

Ok I’ll give it a try. Thanks for the help. To be clear you’re telling me to use a cstat value higher then 65535 correct?

This post has been edited by VGames: 11 January 2023 - 06:23 AM

0

User is online   Danukem 

  • Duke Plus Developer

#3193

 VGames, on 11 January 2023 - 06:21 AM, said:

Ok I’ll give it a try. Thanks for the help. To be clear you’re telling me to use a cstat value higher then 65535 correct?


nonono, I was saying they don't exist. You literally can't enter a higher value than that, mapster won't even let you.
0

User is offline   VGames 

#3194

Oh ok. Dang I thought this was gonna do what I wanted lol. Oh well.
0

#3195

Having a problem with a single corpse sprite refusing to stay in place when changing from the dead enemy to the corpse. I added empty pixels to the bottom of each corpse and then cstat them so they sink halfway into the ground to mimic the normal corpses' bottom few rows being hidden.
This one is popping up as if it has not yet been cstat'd while none of the others have this problem.
Spoiler

Attached thumbnail(s)

  • Attached Image: hop.gif
  • Attached Image: so855c.png
  • Attached Image: 1855.png

0

User is online   Danukem 

  • Duke Plus Developer

#3196

Don't toggle the half-submerged cstat and you don't need to edit the art, either. Just adjust the yoffset in the .art editor to put the corpse where you want it.
0

#3197

It worked, thank you
0

User is offline   jimbob 

#3198

i noticed the HEAVYHBOMB actor doesnt have a whole lot of code to it in the game.con, i want the weapon to be non pick back uppable. for example once thrown its out there and it should not be able to be picked back up, any wasy way to do it or do i have to make the actor spawn a faux bomb replacement actor when it comes to a standstill?
speaking of the heavyhbomb, would it theotretically work if i check if its moving to play a random "rolling on the floor" sound like in Powerslave/Exumed? with a iffloordist check ofcourse.

This post has been edited by jimbob: 12 January 2023 - 02:15 AM

0

User is online   Danukem 

  • Duke Plus Developer

#3199

 jimbob, on 12 January 2023 - 02:13 AM, said:

i noticed the HEAVYHBOMB actor doesnt have a whole lot of code to it in the game.con, i want the weapon to be non pick back uppable. for example once thrown its out there and it should not be able to be picked back up, any wasy way to do it or do i have to make the actor spawn a faux bomb replacement actor when it comes to a standstill?


If it was me I would just replace it with my own actor as you suggested. It's a cleaner solution than trying to fight the hardcoding.

 jimbob, on 12 January 2023 - 02:13 AM, said:

speaking of the heavyhbomb, would it theotretically work if i check if its moving to play a random "rolling on the floor" sound like in Powerslave/Exumed? with a iffloordist check ofcourse.


Yes, but also stop the sound when it stops moving or when it blows up.
0

User is offline   jimbob 

#3200

 Danukem, on 12 January 2023 - 02:30 AM, said:

If it was me I would just replace it with my own actor as you suggested. It's a cleaner solution than trying to fight the hardcoding.

well im going to chalk that up to the "fix it in the patch"

Quote

Yes, but also stop the sound when it stops moving or when it blows up.

nice, i'll look into it.
0

#3201

I found the problem with the octabrain death is it uses an 8-frame action for just 5 actual tiles. The final 3 frames are supposed to use the corpse and it only happened to be displaying the correct frame because it was the last defined tile at that time
0

User is offline   RPD Guy 

#3202

Is there any weapon coding tutorial?
0

User is offline   jimbob 

#3203

there is, but its in spanish
i think i did a rough google translate version of it but i dont know if i still have it.

This post has been edited by jimbob: 20 January 2023 - 01:23 AM

0

User is online   Danukem 

  • Duke Plus Developer

#3204

Okay, here's my tuturial for making a basic weapon in EDuke32 that makes use of the built-in weapon gamevars:

1) Put all of the graphics you need for displaying the weapon in the game (.art tiles, DEFed in models, or whatever medium you are using)

2) Add all the sounds, too, with definesound and whatever sound files you are using

3) Decide what weapon slot your weapon is going on, and set the predefined values for that weapon slot to the values you want. https://wiki.eduke32...efined_gamevars
3.1 For example, if it is going on the pistol slot and you want it to shoot ROCKETS, then in your code declare "gamevar WEAPON1_SHOOTS RPG 1"
3.2 Study the list of weapon variables and experiment with changing the values on them. Spend some time on this. Just try changing the SHOTSPERBURST on a weapon, its TOTALTIME, what it SHOOTS, the sound it makes when it shoots, etc etc etc. Spend hours on this if necessary and do not move on until you are competent at changing the more important vars and understanding what they do.

4) If needed, define a custom projectile for your weapon to shoot. Skip this step if it is going to shoot one of the projectiles already in the base game. https://wiki.eduke32...efineprojectile

4.1 Look at the linked entry on defineprojectile. It's accurate and even has an example. If you set WEAPONX_SHOOTS to your custom projectile tile number, your weapon will shoot that projectile.
4.2 There are literally hundreds and probably thousands of custom projectiles defined in various released mods. Maybe take a look at them if you aren't sure on what values to use. You are looking for entries that say "defineprojectile" in the code.
4.3 If your custom projectile spawns something and/or has a trail, select the relevant actors for that or make them if needed.

5) If you are using your own weapon art, then use https://wiki.eduke32...VENT_DRAWWEAPON to cancel out the hardcoded display of the weapon on your slot and then display your weapon.
5.1. E.g. if you are using the pistol slot then use "ife currentweapon PISTOL_WEAPON set RETURN -1" to cancel out the hardcoded display of the pistol.
5.2 Use the rotatesprite command to draw your weapon. This may require multiple draws depending on what is going on (.e.g if the weapon is reloading you may be drawing the weapon plus a separate hand sprite and also a clip sprite)
5.3 Weapon positioning is somewhat trial and error ,but there are many examples to look at in various mods. In general, though, you start with base x and y values for the screen coordinates that put the weapon in the right place, and you adjust those based on certain hardcoded values relating to weapon sway and bob. You want to subtract looking_angSR1 from x, add weapon_xoffset to x, add looking_arc to y, and subtract gun_pos from y (all of those constantly updated vars have wiki entries and most of the examples I alluded to use those vars to adjust positioning).
5.4 You can disregard the hardcoded weapon sway and bob stuff and make your own, though.
5.5 weaponcount in the display event is equivalent to player[].kickback_pic and obviously you want your display to change depending on the weaponcount in most cases. Since you studied the weapon properties page and experimented, you know that the max weaponcount is the WEAPONX_TOTALTIME.
4

User is offline   VGames 

#3205

Is there any way to keep a non-enemy useractor from flashing when they shoot a projectile? I've got some dead bodies that squirt blood out for a short time and when they shoot out the projectiles for the blood their shade goes to the brightest setting everytime they shoot the projectile and then it returns to the correct shade. I have them using the shade of the floor because they stayed completely lit up if I just made them use the shade of the body that spawned them. Any ideas?
0

User is online   Danukem 

  • Duke Plus Developer

#3206

I think if you set mdflags to 16 on the body and then set the tsprite to the shade you want in ANIMATESPRITES that would do it.
0

#3207

PROJECTILE_NOSETOWNERSHADE?
2

User is online   Danukem 

  • Duke Plus Developer

#3208

 lllllllllllllll, on 21 January 2023 - 11:22 PM, said:

PROJECTILE_NOSETOWNERSHADE?


I forgot about that one.
0

User is offline   RPD Guy 

#3209

What is the correct way to check if an actor has been squished without using "ifsquished"?
0

#3210

I guess ifceilingdistl
If by correct you're talking about sleeping actors getting squished it won't matter what method is used when it's placed inside the actor's code (it won't work during sleep).

This post has been edited by lllllllllllllll: 25 January 2023 - 02:24 AM

1

Share this topic:


  • 119 Pages +
  • « First
  • 105
  • 106
  • 107
  • 108
  • 109
  • Last »
  • You cannot start a new topic
  • You cannot reply to this topic


All copyrights and trademarks not owned by Voidpoint, LLC are the sole property of their respective owners. Play Ion Fury! ;) © Voidpoint, LLC

Enter your sign in name and password


Sign in options