Jump to content

tracy_t

Member
  • Content Count

    330
  • Joined

  • Last visited

  • Medals

Everything posted by tracy_t

  1. tracy_t

    Zombie addon!!

    Got the moaning... Can't do the limp though lol!!! Been trying to learn OFPAnim though; just not had any luck with it. AND LOOK: WHO'S THIS? .. http://img.villagephotos.com/p/2003-11/510218/drtongue.jpg Even closer... http://img.villagephotos.com/p/2003-11/510218/drtongue2.jpg Dr. Tongue's face has been added to my zombie addon. My colleague isn't too healthy looking... lol EDIT: You should see it close up - I tell you, this texture ROCKS! The zombie blinks, and you can see through his chin and everything. Christ, I may be 31, but us old pros are good for something, lol BTW: Sorry D. Murphy but I can't do a low poly version; I am using the standard BIS models (and some of their textures). I wouldn't know where to begin in o2. However, if anyone can help out...
  2. tracy_t

    Zombie addon!!

    Right, you must have an old version I'll send you the updated one as soon as I can; but might not be tonight cos I'm working on Bub Note to self: I really should have installed Sourcesafe!! DOH!!!
  3. tracy_t

    Zombie addon!!

    The zombies take 20 body shots from the m16 to kill. One head shot though. The AI doesn't bother shooting at them with the M16 though. With G36 they take two; but that's the only weapon the AI will target the zombies with And Murphy, please use my addon as you wish; please credit me somewhere though (even in the readme of your mission) lol Wait til you see Dr. Tongue zombie... my girlfriend shat herself when she saw the texture! lol
  4. tracy_t

    Zombie addon!!

    Hi all. Thank you for your comments. If you want zombies that attack anyone in West, I can program that quite easily. I already have the script to do it; I publish the attack script below. The only reason I didn't do that for you already is that I thought you would want to do that sort of scripting yourself. Do you want all zombies to behave in a uniform way? Remember: if I make my zombies attack West soldiers automatically, you can forget about making zombies follow waypoints, or any other fancy stuff Regards, Scott PS: I am now working on the zombie textures. So far I have Dr. Tongue and Bub semi-ready (ie: untested). I can't include the pictures here as they would be considered GORE, but I will give you the URLs (WARNING: ADULT CONTENT) : Dr Tongue: http://www.homepageofthedead.com/films/day/zomb3_thumb.jpg Bub: http://www.homepageofthedead.com/films/day/bub4s_thumb.jpg I include the code for movezombie.sqs. Zombies using this code will automatically attack WEST and RESISTANCE soldiers. Call from your zombie unit's initialisation: [this, id of target] exec "movezombie.sqs" e.g. [MyZombie, Player] exec "movezombie.sqs" and your zombie will attack the player. If the zombie is 1000m away from the player, the zombie will disappear - no point in chasing someone that far away. NB: Make sure a trigger called westsoldiers covers your whole island, and is activated ONCE by WEST. Make sure a trigger called resistancesoldiers covers your whole island, and is activated ONCE by RESISTANCE. <table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE"> ; movezombie.sqs _z = _this Select 0 _t = _this Select 1 #Main ~1 ?(!alive _z) : goto "End" ?(_t != objNULL) && (alive _t) goto "move" _tig = false _t = player _pt = (list resistancesoldiers) + (list westsoldiers) _y = 0 _uc = count _pt #loop ~2 ? _y>= _uc: goto "premove" _u = _pt select _y ? (!alive _u) : goto "nextunit" ? _z distance _u < _z distance _t: _t = _u #nextunit _y=_y+1 goto "loop" #premove ? _t in units group player: _tig = true _z dowatch _t #move _d = _z distance _t ? _d > 1000 : Goto "end" ? _d > 5 : goto "walk" ? _d < 6 : goto "engage" Goto "Main" #walk _z domove getpos _t ~2 goto "Main" #engage ? !alive _z: goto "end" _z removeMagazines "StrokeFist" _z setPos getpos _t _z addMagazine "StrokeFist" _z fire "StrokeFist" ~3 _t setDammage (getDammage _t + 0.2) ~1 goto "Main" #End ~5 DeleteVehicle _z exit
  5. tracy_t

    Zombie addon!!

    ZOMBIE ADDON BETA IS NOW AVAILABLE @ http://www.geocities.com/tracy_t_03/Scottsaddon.zip NOTE: ONLY AI SOLDIERS EQUIPPED WITH G36 (OR MORE POWERFUL) HAVE REQUIRED STOPPING POWER. M16 EQUIPPED AI SOLDIERS WILL NOT TARGET THE ZOMBIES (as they'd be wasting their bullets.) A HEAD SHOT, AND ONLY A HEAD SHOT, CAN DOWN THE ZOMBIE WITH ONE BULLET. 12 BODY SHOTS (with M16) WILL DOWN THE ZOMBIE OTHERWISE.
  6. tracy_t

    Not one step back!

    But that means if you ran 25 metres *ahead* of him, advancing towards the enemy as you're supposed to, you'd be shot. Create a trigger BEHIND the officer, activated by east/ west whatever, and when activated the officer will shoot you. Regards, Scott
  7. I have some great sound samples I want to use in my mission. However, the samples have some music in the background which must be removed. Any ideas on how to remove it? I am no audioedit pro, so even a link to the most basic tutorial would be appreciated. So far I have tried noise gates, filters (in Goldwave) and got jack. Thank you Scott
  8. tracy_t

    Zombie addon!!

    Pants. Feckin work (NHS) won't let me use FTP here so PBO upload will be later tonight. Would any kind soul be prepared to compile the source code from the BREATHE section and host the pbo? S.
  9. tracy_t

    Zombie addon!!

    When can you download it? Well if you want it *right now* you could compile the source code yourself from the BREATHE section of these forums (the crap way) or I could try to find a host - most likely Geoshitties. I'll try and get a account set up in the next hour or so... Scott
  10. tracy_t

    Zombie addon!!

    That's cos it IS dried crap! It's the standard BIS "damaged" model. Hard to change textures without editing the P3D itself.
  11. tracy_t

    Zombie addon!!

    Try: http://img.villagephotos.com/p/2003-11/510218/DAYOFTHEDEAD.jpg http://img.villagephotos.com/p/2003-11/510218/ZOMBIES.jpg Yes, that is a crashed bus!! And no, the zombies don't have glasses any more, I removed them... they look quite evil now. LIMITED BANDWIDTH!!! So won't be up for long I dare say. Would probably be faster for you to take the code from the BREATHE section of the forum and compile it to see for yourself
  12. tracy_t

    Zombie addon!!

    Hi Fubar: Well, I don't have time to create a campaign (I'm a grown man with a pub next door. Why am I into zombies at 31? lol) but hopefully others will make the time I hope the likes of Karillon and D. Murphy man can use the addon, or modify it for their needs. Cheers, Scott "Tracy" T.
  13. tracy_t

    Custom wound sounds

    What about using the HIT or DAMMAGED (spelling is correct) event handlers, then playing an appropriate sound?
  14. Dear all, as promised: Zombies in OFP. Copy both config.cpp and initzombie.sqs to a directory called ScottsAddon. Use MakePbo or StuffPbo to compile the directory into a Pbo file (which must also be called ScottsAddon.) Yes, scott is my first name, lol! Please, if you use this code, credit me, Scott "Tracy" T (and D. Murphy Man, who's original zombie code I nicked originally)! I realise it may not be the done thing to release code on this forum, but I hope this code can help budding addon makers (and zombie fans.) Note: This is a work in progress, and I will be updating the code as I go along. I will replace hard-coded values with the #defines in due course - don't panic, I'm a C++ programmer by trade, lol  (Visual C++ 6 IDE rules for creating config.cpp files.) Any questions? Feel free to PM me. Config.cpp: <table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE"> #define TEast 0 #define TWest 1 #define TGuerrila 2 #define TCivilian 3 #define TSideUnknown 4 #define TEnemy 5 #define TFriendly 6 #define TLogic 7 #define true 1 #define false 0 // type scope #define private 0 #define protected 1 #define public 2 class CfgPatches {     class ScottT_Zombies     {     units[]={Zombie, Zombie2, Zombie3, Zombie4, Zombie5, Zombie6, Zombie7, ZombieWoman1,ZombieWoman2,ZombieWoman3, ZombieWoman4, ZombieWoman5};     requiredversion=1.750000;     }; }; class CfgVehicles { class All {}; class AllVehicles: All {}; class Land: AllVehicles{}; class Man: Land{};   class Civilian: Man{};   class Civilian1: Civilian {}; class Civilian2: Civilian {}; class Civilian3: Civilian {}; class Civilian4: Civilian {}; class Civilian5: Civilian {}; class Civilian6: Civilian {}; class Civilian7: Civilian {}; class Civilian8: Civilian {}; class Civilian9: Civilian {}; class Civilian10: Civilian {}; class Civilian11: Civilian {}; class Woman1: Civilian{}; class Woman2: Civilian{}; class Woman3: Civilian{}; class Woman4: Civilian{}; class Woman5: Civilian{}; class Zombie: Civilian {     side=0; armor=100; armorhead=0.2; armorbody=500.0; armorhands=500.0; armorlegs=500.0;     scope=2; glasses="None"; displayName="Zombie";     class eventhandlers   {       init = [_this select 0] exec {\scottsaddon\initzombie.sqs};         }; }; class Zombie1: Civilian1 { armor=100; armorhead=0.2; armorbody=500.0; armorhands=500.0; armorlegs=500.0;     scope=2; glasses="None"; displayName="Zombie 1"; side=0;     class eventhandlers   {       init = [_this select 0] exec {\scottsaddon\initzombie.sqs};   }; }; class Zombie2: Civilian2 { armor=100; armorhead=0.2; armorbody=500.0; armorhands=500.0; armorlegs=500.0;     scope=2; glasses="None"; side=0; displayName="Zombie 2";     class eventhandlers   {       init = [_this select 0] exec {\scottsaddon\initzombie.sqs};   };     }; class Zombie3: Civilian3 { armor=100; armorhead=0.2; armorbody=500.0; armorhands=500.0; armorlegs=500.0;     scope=2; side=0; glasses="None"; displayName="Zombie 3";     class eventhandlers   {       init = [_this select 0] exec {\scottsaddon\initzombie.sqs};   };   }; class Zombie4: Civilian4 { armor=100; armorHead=0.2; armorbody=500.0; armorhands=500.0; armorlegs=500.0;     scope=2; glasses="None"; side=0; displayName="Zombie 4";     class eventhandlers   {       init = [_this select 0] exec {\scottsaddon\initzombie.sqs};   };   }; class Zombie5: Civilian5 { armor=100; armorhead=0.2; armorbody=500.0; armorhands=500.0; armorlegs=500.0;     scope=2; glasses="None"; side=0; displayName="Zombie 5";     class eventhandlers   {       init = [_this select 0] exec {\scottsaddon\initzombie.sqs};   };   }; class Zombie6: Civilian6 { armor=100; armorhead=0.2; armorbody=500.0; armorhands=500.0; armorlegs=500.0;     scope=2; glasses="None"; side=0; displayName="Zombie 6";     class eventhandlers   {       init = [_this select 0] exec {\scottsaddon\initzombie.sqs};   };   }; class Zombie7: Civilian7 { armor=100; armorhead=0.2; armorbody=500.0; armorhands=500.0; armorlegs=500.0;     scope=2;     glasses = "None";     side=0;   displayName="Zombie 7";         class eventhandlers   {       init = [_this select 0] exec {\scottsaddon\initzombie.sqs};   };   }; class ZombieWoman1: Woman1 { armor=100; armorhead=0.2; armorbody=500.0; armorhands=500.0; armorlegs=500.0;     scope=2;     side=0;     displayName="Zombie Woman 1";     class eventhandlers   {       init = [_this select 0] exec {\scottsaddon\initzombie.sqs};   }; }; class ZombieWoman2: Woman2 { armor=100; armorhead=0.2; armorbody=500.0; armorhands=500.0; armorlegs=500.0;     scope=2;   side=0;   displayName="Zombie Woman 2";     class eventhandlers   {       init = [_this select 0] exec {\scottsaddon\initzombie.sqs};   };   }; class ZombieWoman3: Woman3 { armor=100; armorhead=0.2; armorbody=500.0; armorhands=500.0; armorlegs=500.0;     scope=2;   side=0;   displayName="Zombie Woman 3";     class eventhandlers   {       init = [_this select 0] exec {\scottsaddon\initzombie.sqs};   };   }; class ZombieWoman4: Woman4 { armor=100; armorhead=0.2; armorbody=500.0; armorhands=500.0; armorlegs=500.0;     scope=2;   side=0;   displayName="Zombie Woman 4";     class eventhandlers   {       init = [_this select 0] exec {\scottsaddon\initzombie.sqs};   };   }; class ZombieWoman5: Woman5 { armor=100; armorhead=0.2; armorbody=500.0; armorhands=500.0; armorlegs=500.0;   scope=2;     side=0;     displayName="Zombie Woman 5";     class eventhandlers   {       init = [_this select 0] exec {\scottsaddon\initzombie.sqs};   }; }; }; class CfgGroups {  class East  {    name="East"    class Scott_T_Zombies    {     name="Zombies";     class ZombieGroup     {       name="Group of zombies"; class Unit0{name="1";side=0;vehicle="Zombie1";rank="Lieutnant";position[]={0,0,0};}; class Unit1{name="2";side=0;vehicle="Zombie2";rank="Sergeant";position[]={-8,-3,0};}; class Unit2{name="3";side=0;vehicle="Zombie3";rank="Sergeant";position[]={-6,-3,0};}; class Unit3{name="4";side=0;vehicle="Zombie4";rank="Corporal";position[]={-4,-3,0};}; class Unit4{name="5";side=0;vehicle="Zombie5";rank="Corporal";position[]={-2,-3,0};}; class Unit5{name="6";side=0;vehicle="ZombieWoman1";rank="Corporal";position[]={0,-3,0};}; class Unit6{name="7";side=0;vehicle="Zombie6";rank="Private";position[]={2,-3,0};}; class Unit7{name="8";side=0;vehicle="ZombieWoman2";rank="Private";position[]={4,-3,0};};     class Unit8{name="9";side=0;vehicle="Zombie7";rank="Private";position[]={6,-3,0};}; };    };   }; }; Initzombie.sqs <table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE"> _zombie = _this select 0 _zombie setdamage 0.8 _zombie SetBehaviour "CARELESS" _zombie DisableAI "TARGET" _zombie DisableAI "AUTOTARGET" _zombie allowfleeing 0 _zombie SetMimic "Agresive" exit
  15. tracy_t

    Unit specific triggers

    Can you not set the activation of the trigger to: <desiredunit> In chopper1 where desiredunit is the id of the unit, and chopper1 is the id of the helicopter the unit has to go in?
  16. tracy_t

    Help needed to make a script

    I've replied to the *copy* of your thread with a solution
  17. tracy_t

    Help to make a script

    Off top of my head: _unit = <id of unit you want to rotate left> _destangle = (GetDir _unit) - 30 ? _destangle < 0: _destangle = 360 + _destangle #loop ; change unit facing by 1 degree _newangle = (GetDir _unit) - 1 ? _newangle < 0: _newangle = 360 + _newangle ? _newangle >= _destangle: _unit SetDir _newangle ? _newangle == _destangle: goto "end" ~1 goto "loop" #end exit
  18. Actually Karillion, your zombieplayercheck.sqs file has given me an idea on how to improve performance in my game... ! Probably will speed it up by a significant factor lol! Just goes to show an old dog like me can learn new tricks I will of course credit you appropriately. In return, would you like any help with Sound FX, or music? I have just about every well-known zombie movie ever made to hand, so I'm yer man for getting desired FX... Cheers, Scott
  19. PS: To answer your question, yes it still matters if the AI is killed or not. The WEST AI soldiers won't be on your side - they will shoot you down like a dog if they see you near their base(s). If they couldn't be killed then the game would be unrealistic.
  20. Hi Karillion, I looked at your scripts before (I unpbo'd the Nogova virus mission to see how the zombies were created), but they weren't suited to what I needed. Anyway, here's how I get 100 + zombies on screen at once. Monitorarea.sqs: monitors a resistance player in a spawn area. To be replaced by more optimal code soon. group1 - group20 are individual EAST soldiers, hidden away on a secluded part of the island. They are only there so zombies can join the EAST group and be shot at by West, although since I created my zombie addon they are pretty much redundant. <table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE"> _trig = _this select 0 _opos = getpos _trig #sp ? count list (_trig) > 0: goto "az" ~2 goto "sp" #az _gc=1 #fg ?_gc==1:_gp = group1 ?_gc==2:_gp = group2 ?_gc==3:_gp = group3 ?_gc==4:_gp = group4 ?_gc==5:_gp = group5 ?_gc==6:_gp = group6 ?_gc==7:_gp = group7 ?_gc==8:_gp = group8 ?_gc==9:_gp = group9 ?_gc==10:_gp = group10 ?_gc==11:_gp = group11 ?_gc==12:_gp = group12 ?_gc==13:_gp = group13 ?_gc==14:_gp = group14 ?_gc==15:_gp = group15 ?_gc==16:_gp = group16 ?_gc==17:_gp = group17 ?_gc==18:_gp = group18 ?_gc==19:_gp = group19 ?_gc==20:_gp = group20 _nu = count units _gp ? _nu < 10: goto "cz" ~2 _gc = _gc+1 ? _gc < 15: goto "fg" exit #cz _zi = random(1) * 10 _zType = ZombieTypes select _zi [_zType, _opos, _gp] exec "createzombie.sqs" ~5 goto "sp" Createzombie.sqs: First parameter is type of zombie to create; Â I specially created a zombie addon for operation flashpoint which up-armors the zombies leg, body, arms etc (but not the head). You can have it if you like. <table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE"> _zType = _this select 0 _opos = _this select 1 _group = _this select 2 _zType createunit [_opos,_group,"Zombie = this;"] zombie SetBehaviour "CARELESS" zombie DisableAI "TARGET" zombie DisableAI "AUTOTARGET" zombie allowfleeing 0 zombie SetMimic "Agresive" dostop zombie _group = Group _zombie _group SetSpeedMode "FULL" [zombie] exec "movezombie.sqs" exit movezombie.sqs: <table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE"> _z = _this Select 0 _t = _this Select 1 #Main ~1 ?(!alive _z) : goto "End" ?(_t != objNULL) && (alive _t) goto "move" _tig = false _t = player _pt = (list resistancesoldiers) + (list westsoldiers) _y = 0 _uc = count _pt #loop ~2 ? _y>= _uc: goto "premove" _u = _pt select _y ? (!alive _u) : goto "nextunit" ? _z distance _u < _z distance _t: _t = _u #nextunit _y=_y+1 goto "loop" #premove ? _t in units group player: _tig = true _z dowatch _t #move _d = _z distance _t ? _d > 1000 : Goto "end" ? _d > 5 : goto "walk" ? _d < 6 : goto "engage" Goto "Main" #walk _z domove getpos _t ~2 goto "Main" #engage ? !alive _z: goto "end" _z removeMagazines "StrokeFist" _z setPos getpos _t _z addMagazine "StrokeFist" _z fire "StrokeFist" ~3 _t setDammage (getDammage _t + 0.2) ~1 goto "Main" #End ~5 DeleteVehicle _z exit PS: I see we've both re-used D-Murphy man's zombie code in parts S.
  21. tracy_t

    Civilian texture files

    I just checked it out, and according to the dump of config185.bin file by a-lone-wolf, the new res character models and textures are in O.Pbo in the CHAR subdirectory. Cheers, Scott
  22. tracy_t

    Civilian texture files

    Are they not in res\addons\o.pbo ? Certainly they are in that directory. S.
  23. Funny you mention half life - there's erm, some similarities in there.... you will see what I mean soon enough.... *cough*
  24. What about creating a trigger condition: count crew Chopper1 == (Number of people to board, including pilot) on activation: OtherChopperTakeOff = True And then as the condition of the first waypoint of the other chopper OtherChopperTakeOff==true
  25. Oh God, shorten variable names? That reminds me of C64 BASIC years ago... I got 100 zombies moving right now and I have ~30fps. There are about 50-70 west soldiers in the melee too. Not quite as responsive as I'd like, but better than nothing. My benchmark is 5639, so you lot will be able to guess how this will run on your PC. Mind you, I have a Radeon 9700 Pro, soz.... PS: if.. then only works in a function, does it not. So putting it in a for..each in an SQS (as I have now) won't work. Would anyone like a copy of the work "as-is" ?
×