Announcement

Collapse
No announcement yet.

Gore mod

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • TheKillingJoke
    replied
    Hello ceriux, yes, this is going to be a Little bit brutal , though i don't want to mimic brutal Doom. But Because of the Nature of my Mod they will have a Lot similarities. By the way, May i use your kick Models in my Mod? I found Them over at INSIDEqc and Would have use for a mighty ranger boot :-)

    Have a Nice day,
    Tkj.

    Leave a comment:


  • ceriux
    replied
    i'm liking this, is it going to be like a "brutal quake" ? if so im ready!

    Leave a comment:


  • TheKillingJoke
    replied
    Thanksgiving. Currently Working on the right blood color and individual dismemberment effects. Tedius but entertaining Work.

    Leave a comment:


  • talisa
    replied
    heh neat, gibs dripping to celiing and dripping blood, me like

    Leave a comment:


  • TheKillingJoke
    replied
    Finally switched to darkplaces, because i will need the attachment system later.
    Been working on some particle effects. Not final, but a start:


    qore20170914114504-00.jpg <- streaming blood from ceiling (still have to make decals for their source).
    qore20170914130214-00.jpg<- Bloodmist cloud, expanded a few seconds after fragging the soldiers.
    qore20170914124420-00.jpg <- Decals together with gibs. Still have to find the right originjitter/size combination for the decals.

    Leave a comment:


  • Dutch
    replied
    There's definitely no ogre size. Look at the vectors VEC_HULL and VEC_HULL2 in defs.QC (link below). If you don't want collision issues, outside of doing some tracebox check like spike suggested you only really have 1 option to guarantee no issues: make the gibs pointsize (VEC_ORIGIN). It's best to spawn gibs at the origin of whatever they are coming from (player, fiend, ogre, whatever). This guarantees they won't spawn in the wall or floor, and unless you're playing DP in slow motion, you can hardly even notice.

    if you've decided that you're going to use either dp or FTE, then use FTE. Straight up, it's a no-brainer. The author of this engine is already in your thread leaving you helpful comments. And you would be hard pressed to find a more knowledgeable guy on quake engines than spike.

    Leave a comment:


  • TheKillingJoke
    replied
    Seven
    I solved that by using the Solid-extension mentioned by spike. Regarding the engine limitation it may limit the compatibility further but it works wonders, though i will either use fte or dp in the end. I wil look at your functions in the smc after the weekend. Blood fountain ? You got my attention The “zombieheadcut" function is up for next week, when i start again. RThanks for mentioning it! The Deathknight clip was a model collision bug with my code. I replace every models that got a severed limb with a new model and forgot to spawn it +3 unit from the surface, so it spawned slightly inside the brush. I fixed that already.
    About the particle thing: Ultimate facepalm! I'm a little slower in my head than others :-) Now i undestood what you meant. My install folder was dirty and some things came together that shouldn't be together. Fixed that too. I already had a look at the Gyro folders in the QC source of your smc and i really would like to add it, as soon as i finished the models of this mod. Well, the most urgent models at least. I activated it while playing smc and found, that it is a maserpiece indeed! it was nice to see what the Gyro code adds in terms of immersion and believability to the Quake World.

    @ Dutch:
    I think the sizes where Human, Ogre and Shambler size. I wanted to spawn gibs in a random location of these sizes, but messed up the whole thing. Now i spawn gibs at self.origin + '0 0 16' for everything but the shambler. it looks ok and works. I saw some nice hipnotic code that spawns explosions in a way i wanted to spawn my gibs, maybe i will use that code or a variation to do what i wanted in the first place :-)

    @ Spike:
    I think the self.origin = self.origin + '0 0 16'; line does work good until i eventually use the hipnotic code. I think. i still have so much to learn.

    Am on the hurry, have a nice day you all and a let me spend you a Megahealth for your help and criticism

    Edit: Just fixed the slid-hopping thing with two little
    Code:
    if (self.v_angle_x >0)
    return;
    lines :-)
    Last edited by TheKillingJoke; 09-09-2017, 07:36 AM.

    Leave a comment:


  • Spike
    replied
    Its worth noting that Q1 hull sizes are aligned to the entities absmin position.
    this means that if you setsize your head-gibs to '-16 -16 -8', '16 16 48' then your gib's origin and center-of-rotation will always be 8qu off the ground.
    the catch is that it will extend outwards in the other directions too, which can make spawning it awkward - ie it will typically need to be spawned 8qu from the ground too, which is likely unacceptable. you can use tracebox (yay extensions) to attempt to find somewhere safe, but you may be unable to do this reliably enough (on failure just make it pointsized or something).
    fun tricks are fun, even if you're not able to actually use them

    Leave a comment:


  • Dutch
    replied
    Seven

    Yeah, I forgot to mention that he will need to lock the x and z angles to 0. I never thought it looked too jittery. I always thought it looked way better than gibs sinking in the floor. As for the gibbed head behavior, I assumed he would alter that in some way in the ThrowHead() function, because it looks awful only spinning in the y axis as it is in vanilla quake.

    @TheKillingJoke

    There are only 3 reliable bounding box sizes for moving objects that collide with the BSP hull: the players size (which most monsters use as well), the shambler size, and zero size, which I already mentioned. Any other size will display odd behavior because of the way the engine handles collision. I don't remember the exact numbers, but you can find them defined in defs.QC.

    Leave a comment:


  • Seven
    replied
    Hello Dutch,

    Thats not correct.
    If you spin the (head) gib around all 3 axis, like the regular gibs, it is not enough to make an additional frame in the (original/ flat position).
    It will not help the fact that it will sink into the floor. It can even be completely inside the floor and thereby invisible then.
    Because it has .avelocity_x and .avelocity_z and therefore the models .angle_x and .angle_z will be random too.
    Changing a models frame does not reset or change its angles. It will keep the values it has when touching something.
    If it was flipped upside down and you switch to frame 1 it will sink into floor completely and is invisible.

    To fix it you would need to set both angles back to “0” as well as change its frame once it touches something.
    And that aprupt transformation would look weird, and it will not change afterwards (at each next touches) as well. So why bother in the beginning ?
    So, leaving the head gib spin behavior as it is in vanilla Quake is the best option. Regular gibs will partly sink into floor but that is OK because they are made/positioned with this in mind.



    Hello TheKillingJoke,

    - If you really want to spin big gibs (like head gib or custom torso) around all 3 axis, and lay them flat/correctly on the floor in the end, you can look how it was done inside the SMC.
    Look into the custom zombie code with the beheading of zombies. I use a rolling_animation that rolls the beheaded zombie head a little over the floor.
    It has a step by step transformation that resets the head correctly in the end.
    You should also take a closer look into the “zombieheadcut” particle effectnum. As it is exactly what you want for your monster death animation:
    A blood fountain in upwards direction, that spreads in all directions. Then falls back down and leaves blood decals everywhere.
    You will also find many other custom blood effects in the SMC.

    - Why do you think that krytens gibbable corpses code works fine ? Look at the Death Knight in your clip who got blocked by the corpse on the floor (at 4:00 mins). That is a serious bug. You should either fix it or use another approach. Corpses should not block other monsters or the player.

    - It is not the low resolution of your clip. Your blood particles do not leave blood decals, and they are using wrong textures. That is what Spike also mentioned.
    And of course you are using particle effects. Don’t you see the funny red snowflake looking particle textures when shooting enemies ? That is your particle blood effect. You changed the qc so that it is broken now. You must try to understand the difference between a particle effect and a sprite effect. All Quake engines support both. DP and FTE derivates support custom textures for particles.
    DP uses a default texture row in particlefont.tga when the particle function is called with the blood value, like in vanilla´s SpawnBlood() function. When you change it, you change the default behavior and will thereby lose decals and the other blood properties (like movement, size, texture, color, velocity, etc.)
    You can change the overall look/style of particles via options menu in both engines and can customize them completely via their particle syntax. You remember the link I gave you ?

    - If you want to make the monsters pushable or use advanced physics in your mod. There is nothing better than using GYRO. It is engine independent and a masterpiece by Matthew Lawrence with almost unlimited possibilities. Very easy to use while having extremely powerful feature list at the same time. You should defenitely take a look at it when you think about pushing/shooting monsters around.

    - You can spawn entities as close to a wall as you wish. Just be sure that its bbox is not leaking into it. 32 x 32 is much bigger than a monsters bbox, so they will stuck in walls for sure when the monster stands next to it. Be aware that bboxes will not spin together with your models .angles. Keep that in mind.

    Congratulations to v0.3 !

    Kind regards,
    Seven

    Leave a comment:


  • TheKillingJoke
    replied
    v.03 is up :-) Have a nice weekend, guys.

    Leave a comment:


  • Mugwump
    replied
    Originally posted by TheKillingJoke View Post
    Uhh... thanks for that!
    Yeah, if you place entities too close to a wall in a map you have a risk of items falling out of it, monsters sticking into walls and such. Maybe it could be a cause of gib glitches.
    Last edited by Mugwump; 09-08-2017, 05:35 AM.

    Leave a comment:


  • TheKillingJoke
    replied
    Hello all together :-)

    Seven
    - Why do you still use Darkplaces when you said you want to use FTE ?
    I'm still not at the point to decide which engine i use or if i undertake the crazy venture of making a mod for as many as possible. I'm still only working on the models and code, which still leaves a lot to wish for, until i have what i want. There will come a time when i have to make a decision. But for now i remain absolutely undecided between fte and dp.

    - You can do gibbable corpses in several ways. There are many open source mods that does it already. Remember, using engine extensions limits you to certain engines !
    Yes, there may be many ways but krytens way works fine overall. I think i wil stick to that, if i find no better solution.

    - Your particle textures do look out of place / wrong. How did you manage it that they do not leave decals ?
    Uhm... that's just the low video resolution and some engine dots/squares. I'm not using any particle effects for now.

    - There are hundreds of free squash/squish/splat/... sounds. Use Google, like: "splat sound free" and you will most probably find what you are looking for.
    And meanwhile i finally found some nice ones :-D. Thanks for that! There are also a few nice royalty free ones on youtube.

    - If you really need entities to activate gibbable corpses: You know they can travel at a really high speed (almost instant), no ? That is what you need for your instant weapons.
    Thanks for the suggestion, i added an invisible nearly ftl-speed object, that can gib the corpses.

    - You are using the same code for gibs as for head gibs.
    Hm.. i think you saw an upper torso that i didn't changed yet. I experienced the same problem when playtesting in the testmap. The h_monstername models are all thrown by the unedited throwhead function as in standard quake. Probably you refer to the shambler? Can you tell at which time you saw that behaviour on the video?

    - I also saw gibs sticking in walls and flotaing in air in your other video. That is because of the fact that you are using the complete bbox to spawn them. When doing this near walls it may end up into spinning & floating gibs in mid air. Keep a save distance towards your bbox size limits (and keep your gib size in mind) and it will not happen again.
    Aye, thanks! That was an annoying thing! I spawned the gibs in a box of 32x32x32 at the monster origin, so no wonder they got stuck in the walls sometime. i reduced that to 8x8x8. I will see of that helps. Also, the gibs are SOLID_NOT and and have a size of 0. I thought that the low size helped together with the SOLID_NOT thingy. back to the drawing board!

    Mugwump
    Are you saying that you need to keep a space between items and world geometry? I think said space is 8 or 16 units.
    Uhh... thanks for that!

    Dutch
    Noted! I will add this later and look at the effects of it. Hm... could i use the FL_ONGROUND flag to tell the gib when it should play the second frame? Or is touching a wall already positive FL_ONGROUND?


    Yesterday evening i made a slide function, which pushes a hit monster away. Tons of fun in that :-) Now i only have to let the player slide only in vertical directions, not into the air, which happens of the player slides while looking upwards.

    Leave a comment:


  • Dutch
    replied
    For gibs, make them SOLID_TRIGGER with a size of '0 0 0', '0 0 0'. In the models, make 2 frames: 1 where the gib is centered on origin, and another where it's laying on top of origin (imagine the x-y plane as the floor). In the touch function, set the gib frame to 1. They will spawn at 0 (your centered frame).

    Note that if the gib is still airborne after touching a wall or what not, it will spin off-axis, but if you adjust velocities and avelocities just right, with a lot of blood, this isn't really too noticeable.

    This way, all gibs will appear to rest flat on the floor, and you will have no collision issues.

    Leave a comment:


  • Mugwump
    replied
    Originally posted by Seven View Post
    Keep a save distance towards your bbox size limits
    Are you saying that you need to keep a space between items and world geometry? I think said space is 8 or 16 units.

    Leave a comment:

Working...
X