|
MadFox
#5375 posted by aguirRe on 2006/09/30 12:35:24
Check out the FAQ link at the top of the page, there are descriptions how to add available forum text attributes. Use post Preview to make sure you've applied correctly.
Ahh, That Is What You Meant, Foxy
#5376 posted by HeadThump on 2006/09/30 13:05:28
I thought is what just some delicious word play on your part. I use < i > bleh < / i >
Fine
#5377 posted by madfox on 2006/09/30 23:16:26
that's wahat I meant headthump, i still use a directionary to get ahead my tongue thumbed.
Mapping Advise
#5378 posted by Inf on 2006/10/04 14:17:05
I'm interested in doing a Quake 1 map. Any advise on which editor to use?
Thanks
#5379 posted by Trinca on 2006/10/04 16:12:00
there are a lot editor i think will depend of with one u will like more :\ i use Quark but most of people here hate it, and use worldcraft... i personaly hate it :) some prefer GTKradiant... neg|ke use qoole oh wel i think u should make a round in all to see with one is the easy to start!
Trinca:
#5380 posted by Inf on 2006/10/04 16:28:56
I'm used to GtkRadiant 1.4.0 and D3Edit and Q4Edit. I take it I should go with GtkRadiant 1.5.0 for Quake then?
Not sure about which editor has the best support regarding sourceports and stuff.
Uhm...
#5381 posted by negke on 2006/10/04 17:06:14
neg|ke uses quest by the way... (which, as per speeds, plays in the same league as deathmatchmaker ;D)
getting familiar with gtkradiant can't be wrong, i guess, since it works similar to most other editors and also supports a variety of newer games.
Inf
#5382 posted by R.P.G. on 2006/10/04 19:31:15
QTKRadiant 1.5 will have a different feel than the other versions, but it's the choice that I would recommend.
How To Set It Up For Quake?
#5383 posted by Inf on 2006/10/05 02:36:41
Do any of you know how to set GtkRadiant 1.5.0 up for Quake. I can't seem to be able to use the assets that came with the game. Things like textures and stuff. Some Googling did not give me an answer either so I'm hoping some of you guys could.
Thanks.
Inf
Hit 'P' and bring up the Preference menu -- look over to the left, and see Global then gam in the list. Click on game for that section, and do the pulldown tab to select Quake from the list of games. Voila.
Mine you, you'll still need a .bat or something to compile your maps, and be sure to stick your .wads in the /id1 directory.
Inf
Hit 'P' and bring up the Preference menu -- look over to the left, and see Global then game in the list. Click on game for that section, and do the pulldown tab to select Quake from the list of games. Voila.
Mine you, you'll still need a .bat or something to compile your maps, and be sure to stick your .wads in the /id1 directory.
Inf
Hit 'P' and bring up the Preference menu -- look over to the left, and see Global then game in the list. Click on game for that section, and do the pulldown tab to select Quake from the list of games. Voila.
Mind you, you'll still need a .bat or something to compile your maps, and be sure to stick your .wads in the /id1 directory.
Inf
#5387 posted by Bazzu on 2006/10/05 02:57:30
LOL, WTF.
For the love of Carmack, somebody fix this.
To Aguire
#5389 posted by gone on 2006/10/05 08:55:31
could you please include BSP feature that would move func_groups back to world on compile?
Newmonster
#5390 posted by madfox on 2006/10/05 12:09:32
I've been working on a new monster. Made a new vorebabe.mdl and started scripting.
I used the spellmaster.qc but after a while I wondered why I couldn't make my own vorebabe.qc, as I needed it for a spawn function in the shallrath.qc
Now I am so far I can make it a walkmonster_start, but the attack functions won't work. I've been working for days now but it just won't fit.
I don't know what I done wrong, outcome is a progs.dat that don't attacks.
http://members.home.nl/gimli/newmonst.htm
http://members.home.nl/gimli/vorebabe.dz
Func_groups
#5391 posted by aguirRe on 2006/10/05 12:40:25
OK, I've added a new option -group to TxQBSP 1.13 beta available here: http://user.tninet.se/~xir870k/txqbsp113beta.7z . It enables func_group parsing, i.e. moving the brushes back to world.
Please try it out and let me know if it works as I'm not using Radiant.
Wads...
#5392 posted by metlslime on 2006/10/05 13:38:39
wad support in the latest nightly build is broken. so hopefully they fix it again.
I've got all my textures exported into id1/textures/ as jpegs
#5393 posted by Kell on 2006/10/05 14:52:08
I've got all my textures exported into id1/textures/ as jpegs
How do you load them though? Are you using the latest ( october 1st ) build?
#5394 posted by Inf on 2006/10/05 16:29:33
I tried several 1.5.0 builds and none of them seem to be able to show/load Quake textures.
I tried Tigger his method, what Bazzu suggested, but the editor crashes. Still working that out though. I would prefer not to use Tigger his method because it seems a bit uh...what's the word...unneccesary if you can simply have a editor doing all that for you. Instead of downloading and setting up lots of stuff.
Ofcourse I appreciate the suggestion and if it's the way to go, I'll use it. It's just that I prefer a editor specifically designed to work with Quake.
Attacks
#5395 posted by Preach on 2006/10/05 16:48:24
The monster isn't attacking because none of the ai functions you call in your frame functions actually check for an attack. The normal quake monsters regularly call ai_run, which is the main ai thinking hub. ai_run should be the default action which you only stop using if you don't want the monster to get distracted during its animation - like if it's in pain or attacking or dead.
ai_run calls the function CheckAnyAttack, which determines if a missile attack can hit. If you find CheckAnyAttack in ai.qc, you can see there are lots of if statements that check if the monster is, for example, a shambler, and do the special shambler checkattack if it is. After those there is a generic checking function CheckAttack, which should suffice for your monster.
CheckAttack checks if you're in melee range, and if you are and you have a th_melee it calls that. If not, it checks for a missile attack based on the range to the target. The probability of attack is higher at certain ranges. If so and you have a th_missile, it calls that.
So the flow goes
ai_run -> CheckAnyAttack -> CheckAttack ->.th_missile
To fix the monster, simply add the following lines
void () vorebabe_run1 = [1, vorebabe_run2] {ai_run(1);};
void () vorebabe_run2 = [2, vorebabe_run3] {ai_run(4);};
void () vorebabe_run3 = [3, vorebabe_run4] {ai_run(3);};
void () vorebabe_run4 = [4, vorebabe_run5] {ai_run(5);};
void () vorebabe_run5 = [5, vorebabe_run6] {ai_run(6);};
void () vorebabe_run6 = [6, vorebabe_run7] {ai_run(4);};
void () vorebabe_run7 = [7, vorebabe_run8] {ai_run(4);};
void () vorebabe_run8 = [8, vorebabe_run9] {ai_run(3);};
void () vorebabe_run9 = [9, vorebabe_run10] {ai_run(5);};
void () vorebabe_run10 = [10, vorebabe_run1] {ai_run(6);};
You'll notice the similarity to the vorebaby_walk lines, but that we call ai_run not ai_walk, which is only designed for walking to path_corners. We are reusuing frames 1 through 10, which is allowed : - )
The final part of the fix is to change the line
self.th_run = vorebabe_walk1; to
self.th_run = vorebabe_run1;. Once he wakes up, his behaviour will change to vorebaby_run1, which will check for and call missile attacks.
One final thing I noticed is that the frame numbers you are calling in the code don't quite agree with the model. The frame numbers for the walk sequence in the model are 0,1,2...9, not 1,2,3...10 - the first frame in the model is frame number 0. I've not fixed this in the run code I posted, as frame 10 happens to look much like frame 0, so the animation loops. Perhaps it would be best to use the frame macros $walk1, $walk2 etc in the code rather than the numbers directly, as it's easier to number them correctly like that.
You'll need to fix the frame macro definitions first, take out the dollar signs in the names in the header(but NOT the main code where you add them back in). The first one should read
$frame walk1 walk2 walk3 walk4 walk5 walk6 walk7 walk8 walk9 walk10 with only the $frame retaining the dollar sign, and do the same for the rest of the header. But when you use it in the frame function you put the dollar sign back in, eg:
void () vorebabe_run1 = [$walk1, vorebabe_run2] {ai_run(1);};
Hope that's clear.
Kell:
#5396 posted by metlslime on 2006/10/05 17:22:57
How do you load them though? Are you using the latest ( october 1st ) build?
I load them by opening another map that uses them (sad but true.)
And yes, i am using the october 1st build...
Thanks A Lot!
#5397 posted by madfox on 2006/10/05 20:16:39
preach, although I have read most of the qc files now, I still can't see the logic relations between them, but I'm learning.
I saw the nummers of frames once start with 0 and then with 1. I couldn't get the death frame right, it always jumped back to the stand frame. So I added a death frame and then it didn't occure.
I experimented with pasting parts of the monster attacks into it, but kept errors (of course). Now I can tune it better in.
Host Error
#5398 posted by madfox on 2006/10/05 21:24:17
After I made the changes I can't start Quake.
CALL0 : 1455 (?)
ai.qc : ai_run
vorebabe.qc : vorebabe_run1
NO FUNCTION
I think I have made no definition for the ai_run, but I don't know how.
http://members.home.nl/gimli/vorebabe.qc
And I Run...
#5399 posted by Preach on 2006/10/06 01:05:36
The problem is now too much running. When a monster calls ai_run but doesn't have a target, as happens when this monster spawns, it decides to try and walk if it has a movetarget, or stand otherwise. The problem is that at the moment you've given it the same standing animation as the run animation, so it calls ai_run again, trapping it in a loop.
The fix is to put back the walk frames AS WELL. Don't replace the run animations, but add these functions too:
void () vorebabe_stand1 = [$walk1, vorebabe_stand1] {ai_stand();};
void () vorebabe_walk1 = [$walk1, vorebabe_walk2] {ai_walk(1);};
void () vorebabe_walk2 = [$walk2, vorebabe_walk3] {ai_walk(4);};
void () vorebabe_walk3 = [$walk3, vorebabe_walk4] {ai_walk(3);};
void () vorebabe_walk4 = [$walk4, vorebabe_walk5] {ai_walk(5);};
void () vorebabe_walk5 = [$walk5, vorebabe_walk6] {ai_walk(6);};
void () vorebabe_walk6 = [$walk6, vorebabe_walk7] {ai_walk(4);};
void () vorebabe_walk7 = [$walk7, vorebabe_walk8] {ai_walk(4);};
void () vorebabe_walk8 = [$walk8, vorebabe_walk9] {ai_walk(3);};
void () vorebabe_walk9 = [$walk9, vorebabe_walk10] {ai_walk(5);};
void () vorebabe_walk10 = [$walk10, vorebabe_walk1] {ai_walk(6);};
Then set the lines in monster_vorebabe to look like:
self.th_stand = vorebabe_stand1;
self.th_walk = vorebabe_walk1;
self.th_run = vorebabe_run1;
Then compile and it'll work.
One more thing, you have the glowing effect on for a few frames, which works fine, except it's possible for the monster to die or go into pain inbetween the light going on and the attack turning it off. This means the light doesn't turn off again, which probably isn't what you want. Add self.effects = 0; to the top of vorebabe_die and to the bottom of vorebabe_pain - so only turn the effect off if the vorebabe actually goes into pain, but do it before you think about gibbing it.
|
|
You must be logged in to post in this thread.
|
Website copyright © 2002-2024 John Fitzgibbons. All posts are copyright their respective authors.
|
|