![]() |
#41 |
Re: EDuke32 CON mod
I've got a problem here. I'm trying to make a simple bot that will take the place of the HoloDuke. The problem I am having is that when he shoots, he always shoots in the direction of the player, regardless of which direction he is actually facing. I want him to shoot in the direction he is facing. Maybe if there were a different command for making actors shoot, one that allowed specification of direction? I don't see a command like that, but maybe there is a secret value I can set that will do the job.
|
|
![]() |
![]() |
#42 |
update
Update: Now with baby aliens!
DTCONS Features: -Infested humans (aka "Kill me" women) now have a chance to spawn baby aliens. This is a random event that will happen, on the average, after about a minute of the human's ai being activated. The woman will die with jibs, then a small blue version of a newbeast will spawn. Baby newbeasts cannot shoot shrinkers and have fewer hit points than adults. -Pigs can fire RPGs (50% of the time) as well as shotguns. They won't fire RPGs when at point blank range. -Troopers can drop morters when they are airborne. Watch out for the occasional unexploded morter on the ground. -Some pigs turn big and red when they first "wake up". These pigs have more hit points and explode when they die. -Some lizardmen are blue; these fire mostly freezershots with the occasional firelaser thrown in. Blue lizardmen shatter when they die. -Octabrains are transparent unless they are attacking. Projectiles will pass right through transparent Octabrains, though they can still be harmed by splash damage. Octabrains have reduced hit points. -Superkick: If you kick while jumping or falling, you will perform a superkick that does 100 damage (killing most enemies with one or two hits). It leaves a crack decal on walls. A little bit tricky to use, but very effective when mastered. -Jumping: Jumping height has been reduced. However, you can perform a second jump in mid-air by pressing the action key during the ascent of your regular jump. The timing is a bit delicate (press the action key almost immediately after jumping), but this enables you to jump quite a bit higher. Necessary to reach places that require the nonreduced jumping height. -Zoom mode: Activate the nightvision goggles and stand still and you will enter the zoom mode, which does just what the name suggests. Zoom mode will disengage if you start moving or turn off the goggles. While in zoom mode, press the action key to fire extremely rapid sniper shots. These do not use ammo but they deplete your goggles very rapidly. They are also very deadly. -Duke jumps higher when on steroids. Double jumping on steroids is quite high. -Killing enemies adds small amounts to your first aid kit and to your nightvision goggles. Max first aid amount is 200% -Minor changes to user.CON, including increased ammo capacity, armor capacity, increased pistol damage (with decreased ammo pickups for pistol).. There may be a few other details I am forgetting. DTCONS.zip |
|
![]() |
![]() |
#43 |
![]()
I'm having trouble manipulating player velocities. If I use the code:
setvar temp 53399 setplayer[THISACTOR].posxv temp setplayer[THISACTOR].posyv temp ...when the player is using the jetpack, it reduces x and y movement speed to about 1/4 of walking speed. It does this regardless of what values I put in (although I haven't tried anything under 512 yet). I want to create a superfast jetpack mode, in which the player squishes enemies by flying into them. I have also tried using move commands on the player and they do nothing, regardless of whether the jetpack is on or the player is falling. posyv is not listed on the Wiki (though it does exist, of course).
Last edited by DeeperThought; 04-16-2006 at 03:30 PM.
|
|
![]() |
![]() |
#44 |
Re: EDuke32 CON mod
Surprised this isn't on the wiki. Try this instead:
setplayer[THISACTOR].runspeed |
|
![]() |
![]() |
#45 | |
Re: EDuke32 CON mod
Quote:
![]() And if you know about any other structure members / commands / etc. that aren't on the Wiki, please post them here! |
||
![]() |
![]() |
#46 |
Re: EDuke32 CON mod
Interesting. The runningspeed value has a nonlinear effect. This isn't very noticeable at speeds near the default (53399 in user.con). But if you put in high values (like in excess of 60000) there is an acceleration buildup, much like the way skating on ice is typically handled in video games. What happens is that you continue moving even after you stop pressing the movement key, and you have to start moving in the opposite direction in order to counter it or else you will keep sliding. The increase in speed on higher values is exponential. At 80000, the acceleration quickly builds up and will crush you against walls on the other side of the map within seconds.
|
|
![]() |
![]() |
#47 |
Re: EDuke32 CON mod
Heh, my "1996 all over again" comment was more accurate than I thought.
![]() If you saw my CON files you would probably die. ![]() |
|
![]() |
![]() |
#48 | |
Re: EDuke32 CON mod
Quote:
![]() |
||
![]() |
![]() |
#49 | ||
Re: EDuke32 CON mod
Quote:
Quote:
|
|||
![]() |
![]() |
#50 | |
|
Re: EDuke32 CON mod
Quote:
![]() |
|
![]() |
![]() |
#51 |
![]()
This is the code to use EVENT_GAME.
Code:
onevent EVENT_GAME getactor[THISACTOR].picnum TEMP ifvare TEMP <actor1> // Can use a defined actor name as per Defs.con { <code> } ifvare TEMP <actor2> // Can use a defined actor name as per Defs.con { <code> } etc… endevent |
|
![]() |
![]() |
#52 |
Re: EDuke32 CON mod
Or something like this:
Code:
onevent EVENT_GAME getactor[THISACTOR].picnum TEMP switch TEMP // case SECTOREFFECTOR: // spritepal 26 // setvar TEMP2 26 // setsector[THISACTOR].floorpal TEMP2 // break case BOTTLE3: getactor[THISACTOR].roll TEMP2 addvar TEMP2 16 setactor[THISACTOR].roll TEMP2 getactor[THISACTOR].mdzoff TEMP2 addvar TEMP2 -1 setactor[THISACTOR].mdzoff TEMP2 getactor[THISACTOR].ang TEMP2 addvar TEMP2 16 setactor[THISACTOR].ang TEMP2 break case SMALLBLOOD1SPLAT1: getactor[THISACTOR].statnum TEMP2 ifvare TEMP2 5 { getactor[THISACTOR].htg_t ZERO TEMP2 addvar TEMP2 1 setactor[THISACTOR].htg_t ZERO TEMP2 ifcount 2 { getactor[THISACTOR].yrepeat TEMP2 ifvarl TEMP2 40 { addvar TEMP2 1 setactor[THISACTOR].yrepeat TEMP2 getactor[THISACTOR].x x getactor[THISACTOR].y y getactor[THISACTOR].z z addvar z 224 setsprite THISACTOR x y z resetcount } } iffloordistl 3 { findnearactor 3614 256 TEMP2 ifvare TEMP2 -1 { espawn SMALLBLOOD1SPLAT1 getactor[THISACTOR].xrepeat TEMP4 setactorvar[RETURN].TEMP3 TEMP4 } } } break case BLOODPOOL: ifspritepal 2 { cactor 3614 setvar TEMP3 32 } break case JIBS1: case JIBS2: case JIBS3: case JIBS4: case JIBS5: iffloordistl 4 { changespritestat THISACTOR FIVE insertspriteq getactor[THISACTOR].picnum TEMP2 addvar TEMP2 4 setactor[THISACTOR].picnum TEMP2 ssp THISACTOR CLIPMASK1 getsector[THISACTOR].floorz z setactor[THISACTOR].z z } break case JIBS6: espawn SMALLBLOOD1 randvar STEPTYPE 5 setactorvar[RETURN].STEPTYPE STEPTYPE getactor[RETURN].z TEMP2 addvar TEMP2 -2048 setactor[RETURN].z TEMP2 setactor[THISACTOR].xrepeat ZERO break case SHELL: eqspawn FLOORSHELL setactorvar[RETURN].STEPTYPE ONE state shellshit break case SHOTGUNSHELL: eqspawn FLOORSHOTSHELL setactorvar[RETURN].STEPTYPE TWO state shellshit break endswitch endevent |
|
![]() |
![]() |
#53 |
Re: EDuke32 CON mod
o_O
Is there a place I can get a list of all the structure members that aren't in the Wiki? Also, about EVENT_GAME, which I haven't used yet: Is it true all the time, or just when the game is starting? As for my own cons... I can happily report that -Double-jumping has been improved (you can now start the double-jump at any time during the regular jump, including the descent...although this won't save you from fall damage if your velocity is very high). -The jetpack now has a Boost mode, which you enter by pressing the action key while using the jetpack. In Boost mode, you fly much faster, and if you collide with enemies while moving at a high velocity you will squish them. Note that whether an enemy is smashed depends on your velocity and distance from them, not on the Boost mode itself. Theoretically, if you could get your velocity up high enough by other means (such as falling a great distance) you could squish enemies without boosting. I still need to tweak this by increasing power drain and adding smashability to some more monster types. I want most monsters to be smashable but obviously not bosses and maybe not even commanders. An update has not been posted yet. |
|
![]() |
![]() |
#54 |
Re: EDuke32 CON mod
You should think about that first question you have there and realize how ridiculous a question it is. You're always free to check the source code to see how the stuff that isn't documented yet works.
![]() As for the event, it is called once for every actor per game tic. |
|
![]() |
![]() |
#55 | |
Re: EDuke32 CON mod
Quote:
![]() |
||
![]() |
![]() |
#56 |
Re: EDuke32 CON mod
Another idea DeeperThought, When you kill a monster you could make a pic of the monster or duke icon (for multiplayer) you killd come up in the corner of the screen and a pic of what weapon was used to kill it. Sort of like in multiplayer games these days. and if its multiplayer maybe the name of that person? Just some ideas again.
__________________
I Know Everything There Is To Know About Anything. Duke Nukem Red Alert SVN Ask Me Anything! |
|
![]() |
![]() |
#57 |
Re: EDuke32 CON mod
Just want to note that all the structure members should be there. Was kind of a fluke that the runspeed one was left out. I fixed it in the wiki about a minute after I confirmed its exact name from an aim log and posted it here.
|
|
![]() |
![]() |
#58 | |
Re: EDuke32 CON mod
Quote:
Putting a picture in the corner of the screen isn't something I know how to do yet. Right now I am concentrating on making changes that effect gameplay and are relatively easy to code. One thing I have considered is making the monsters drop items that look like the weapon icons. When you pick up the items, it would give the player some kind of bonus or special power when using the corresponding weapon, for a limited time. |
||
![]() |
![]() |
#59 | |
Re: EDuke32 CON mod
Quote:
![]() |
||
![]() |
![]() |
#60 | |
Re: EDuke32 CON mod
Quote:
__________________
I Know Everything There Is To Know About Anything. Duke Nukem Red Alert SVN Ask Me Anything! |
||
![]() |
![]() |
#61 | |
Re: EDuke32 CON mod
Quote:
I'm sure there are many good uses for this. Most of the obvious ones would involve new tiles. For example: It might be cool to have a 60's Batman style Wham! or Pow! appear when a superkick connects on a monster. But, for the time being, I am not using any new graphics. |
||
![]() |
![]() |
#62 |
Another update
I wanted to do this as an edit of my last update post, rather than making a new one, but the forum won't let me edit it...
This version includes all the stuff from the last version (see the last update post), PLUS -Double jump is easier to use -Boost Mode added: Press the action key while using the jetpack to enter boost mode. Your maximum speed will increase greatly, and fuel will deplete more rapidly. If you collide with a creature at high speed, you will squish/smash them. This does not work against bosses or mechanical things (e.g. tanks). As a bonus, killing enemies this way will grant you +5% jetpack fuel per enemy. Boost mode can be toggled on and off with the action key while in flight, and of course it is cancelled if you turn your jetpack off. Next time I'll just include a README instead of posting all this. DTCONS.zip |
|
![]() |
![]() |
#63 |
Re: EDuke32 CON mod
You are gaining attention very fast DeeperThought
![]()
__________________
I Know Everything There Is To Know About Anything. Duke Nukem Red Alert SVN Ask Me Anything! |
|
![]() |
![]() |
#64 | |
Re: EDuke32 CON mod
Quote:
What makes you say that? ![]() |
||
![]() |
![]() |
#65 | |
Re: EDuke32 CON mod
Quote:
![]() |
||
![]() |
![]() |
#66 |
Re: EDuke32 CON mod
Not paranoid, just curious.
|
|
![]() |
![]() |
#67 |
Re: EDuke32 CON mod
Are you looking over your shoulder every 5 minutes? lol
__________________
I Know Everything There Is To Know About Anything. Duke Nukem Red Alert SVN Ask Me Anything! |
|
![]() |
![]() |
#68 | |
Re: EDuke32 CON mod
Quote:
![]() |
||
![]() |
![]() |
#69 |
Re: EDuke32 CON mod
Lol, Im meaning you only just started posting about your con mod the other week and this thread is starting to gather attention. You never know some one might ask you too help them in there own mod or TC
![]()
__________________
I Know Everything There Is To Know About Anything. Duke Nukem Red Alert SVN Ask Me Anything! |
|
![]() |
![]() |
#70 | |
Re: EDuke32 CON mod
Quote:
![]() |
||
![]() |
![]() |
#71 |
![]()
Well....i for one am keeping a copy of this thread and will try out the con stuff your coming up with. They sound very interesting.
Who knows, maybe you'll come up with a way for Duke to fart and spew purple gas from his butt. ![]() Hmmmmmmmmmm...maybe a new weapon? ![]() |
|
![]() |
![]() |
#72 |
|
Re: EDuke32 CON mod
Someone already did that.
![]() |
![]() |
![]() |
#73 |
HoloBot progress
Trying to get my holobot to do what I want has been a real bitch. The holobot (summoned in place of the HoloDuke) is supposed to be your buddy, but there is no way I know of to make it detect the location of monsters. The AI routines (like seekplayer, fleeenemy, faceplayer) are all designed around the idea that players are the enemy. Worse, the routines don't even function the way I expect them to. For example, when I set the AI of my actor to fleeenemy, it will only flee for about one second, then it turns around and moves towards the player. Then it continues pace back and forth, despite the fact that I have not given it any further commands. There have been many baffling problems.
But now I have something that is sort of useful. The holobot starts by walking in the direction you are facing while firing a chaingun (it does this continually). When you fire a weapon, the holobot will turn and face the same angle that you are facing (e.g. if you are facing north, then it will face north). In this way, you can make it go where you want. After a certain amount of time, it blows up. I want to do better than this, but at least it's a good start. |
|
![]() |
![]() |
#74 |
|
Re: EDuke32 CON mod
Well bots are possible. Heck, even Star Ship Troopers had them, and it wasnt even an Eduke mod.
|
![]() |
![]() |
#75 |
Re: EDuke32 CON mod
Yes, the built in AI routines are pretty dodgy. You pretty much need to write your own AI stuff in the CONs if you want it to be any good.
![]() |
|
![]() |
![]() |
#76 | ||
Re: EDuke32 CON mod
Quote:
Quote:
|
|||
![]() |
![]() |
#77 |
Re: EDuke32 CON mod
The con files from SST TC were run through a program to make them relatively unreadable. And you can easily program much better bots in much less time in Eduke 32.
__________________
I don't wanna be like other people are Don't wanna own a key, don't wanna wash my car Don't wanna have to work like other people do I want it to be free, I want it to be true Eduke32.com : The Rejected Applications : The Meadhall of the Comitatus |
|
![]() |
![]() |
#78 | |
Re: EDuke32 CON mod
Quote:
Well, I don't know how easy it will be for me, but I'll give it a shot. I just discovered the findnearactor command, which will be extremely useful. Speaking of which, I noticed something funny and a bit annoying. To start with, here is the example from the Wiki of how to make one actor face another: findnearactor PIGCOP 2048 TEMP ifvarn TEMP -1 { getactor[TEMP].x MX getactor[TEMP].y MY getactor[THISACTOR].x x getactor[THISACTOR].y y subvarvar MX x subvarvar MY y getangle ANGVAR MX MY setactor[THISACTOR].ang ANGVAR } Nice! Only one problem: If an actor is dead, but the body is still lying there, findnearactor will return it! So if my Holobot kills a pig, and it was the closest, it stills come up as the nearest pigcop. I can tell him to ignore it if it doesn't have any hit points, but I don't know how to make him "see" another pig until he moves into a position where a live pig is the closest pig. Too bad there isn't a "findnearliveactor". Also, I am wondering about findnearactorvar -- in the Wiki it says simply "Version of findnearactor that takes a gamevar". I am guessing this means it uses two gamevars: findnearactorvar <actor> <gamevar1> <gamevar2> But it might be even more useful if there were a gamevar in the actor slot, because then you could use the same code to look for different actor types (e.g. you could make a generic state and pass it different actor types). |
||
![]() |
![]() |
#79 |
Re: EDuke32 CON mod
Spawn an invisible sprite that removes itself after a few counts from the monsters you wish to find while they are alive and use findnearactor to locate this sprite.
|
|
![]() |
![]() |
#80 | |
|
Re: EDuke32 CON mod
Quote:
![]() |
|
![]() |
Bookmarks |
|
|