Jump to content
johnnyboy

JBOY Dog [v1.5 - updated 12/21/2018]

Recommended Posts

Testing him in combat pointed out the need for the "SITREP" (i.e., "Speak!") command, as you can lose him in the jungle.  Remember, when tracking, you can always pause him (with "Stay" command) while  you fight, or  pause him so you and your team can catch up.  When you are ready to track again, re-issue the "Track" command and he will resume tracking.

 

The "mourning" feature was also a necessity for group respawn missions.  If you as player handler get killed  in the jungle, and you spawn into another unit in the group, you want to take control of the dog.  But he may be hard to find.  By having the dog go to his dead handler and cry, you can then hear where he is to find him and take control.   I could have had the dog immediately go under control of next alive unit, but I felt there should be a penalty for handler dying, and it shouldn't be that easy.  So you must go to the dog to take control.

 

I look forward to seeing  your mission someday!  Or a vid or screenshots... 

  • Like 1

Share this post


Link to post
Share on other sites
2 hours ago, jgaz-uk said:

I made a mission on ArmA 2 Prison Break where AI guards had dogs that would attack you if you left a compound (setcaptive trigger area) could that be done with this 1.3 version in Arma 3

 

Very doable I think.  Put down a guard with some move waypoints and give him a dog named GuardDog1 (how to do this is described in the init.sqf).

 

Then set up a trigger that will execute the code below.   This example assumes the unit to be attacked is named Prisoner1, and the guard dog is named GuardDog1.

GuardDog1 setVariable ["vCommand", 'attack', true];
GuardDog1 setVariable ["vTarget", Prisoner1, true];

You should then see the guard give the attack hand signal, hear the guard give the attack order, and the dog will attack the target unit.

 

@foxhound: Thanks!

Share this post


Link to post
Share on other sites

Would like to apologize in advance for my bad English, have a question, etc. Is it suitable for singelplayer or also for servers?

Share this post


Link to post
Share on other sites

Hello Jonny Boy

I want to understand why dog go at 5 meters when detain action 

 

 

Can we make it sits in front of the detainee and barks every 1 minute for example?

It should be possible but I can not find the commands

 

Share this post


Link to post
Share on other sites
6 hours ago, AIG.Tartar said:

Would like to apologize in advance for my bad English, have a question, etc. Is it suitable for singelplayer or also for servers?

It works for Single Player. And it has problems in Multi-Player, although some people have made it work.

3 minutes ago, superordi said:

Can we make it sits in front of the detainee and barks every 1 minute for example?

It should be possible but I can not find the commands

Movement and control is not precise due controlling dog movement via PlayMove commnads (they are not like AI units).  Sometimes he sits directly in front of detainee, and other times he is a few meters away.  Most of the times it works pretty good.   I have him growling at the suspect once, rather than barking.   The code for Detain is in JBOY_dogCommand.sqf.  Search for word "detain" and you will find the section of code for this.  I like growling more than barking for detain, so I don't plan to change it.  But I make take your suggestion to repeat the growl every minute or so. 

 

Another problem is the Sit animation only makes him sit for awhile, then he gets up and walks a few meters forward.  I have no control of that.

 

Also, you probably should download latest version of JBOY Dog.  It might be working better in the current version.

 

I'm making a real mission with the dog now, and plan to work around his weaknesses.  I plan to:

  • Detain:  Keep Detain tasks short.  Detain a guy, question him or search him, release him.
  • Heel:  Walk slow and he stays fairly close.  (If you run he has a terrible time staying really close).  If you have an AI sentry walking a dog, set his speed to Limited and dog will follow pretty good.
  • Clipping:  The dog clips through walls and buildings (I can't prevent that), so plan your missions to be more in fields or jungle.  Or if in towns, try to keep him to the center of the street, so less likely to clip.
  • Tracking:  Tracking works great.  Track someone through the fields, forests, jungle, villages. 
  • Patrolling through jungle:  This works great as dog warns you of near enemies.
  • Dogs are slow:  BIS made dogs maximum sprinting speed slower than a mans sprinting speed.  I can't change that.  If you run, you will have to stop and wait for your dog.  But if you have AI squad mates, you often have to wait for them too, so its not too bad.

Thanks for your interest!

  • Like 1

Share this post


Link to post
Share on other sites

hey,

just letting you know that i'm in a process of porting arma 2 dogs in a way that you can actually control them in a reasonable way without ridiculous hacks like triggering animations in a loop (i know that's the only way right now).

 

i will most likely release a source but you can PM me, if you wanna have a test version in advance. of course this will require an addon which might go against your philosophy. but i thought i'd let you know since i can imagine this being a pet peeve of yours too.

 

EDIT: actually, jsut test it since i just uploaded it for a friend just now anyways.

 

https://drive.google.com/file/d/0B5Y0VNgK9JXiZERxdTN3NzVZaTA/view?usp=sharing

make sure to do a switchmove into this anim "babe_pastor_Stop" one time when you spawn one.

  • Like 4

Share this post


Link to post
Share on other sites
33 minutes ago, bad benson said:

i'm in a process of porting arma 2 dogs in a way that you can actually control them in a reasonable way without ridiculous hacks

That's great news BB.  I'll take a look sometime.  My problem is I'll be super busy for the next 3 months, so not sure I'll be motivated to rip out my control code and put in the new code.

 

How does the mod work?  Is your dog using regular unit AI?   I know that in early Arma 3 versions before they broke the dog, controlling the dog (like heeling) was dramatically better.  I actually built half this dog module back then, but gave up after the dog was broken.

 

In general, I avoid mods, but if controlling the dog is significantly better and more precise, then I will have to consider it.  Thanks!

 

BTW, if you can make dogs run faster than men, that would be awesome as well!

Share this post


Link to post
Share on other sites
6 minutes ago, johnnyboy said:

That's great news BB.  I'll take a look sometime.  My problem is I'll be super busy for the next 3 months, so not sure I'll be motivated to rip out my control code and put in the new code.

 

How does the mod work?  Is your dog using regular unit AI?   I know that in early Arma 3 versions before they broke the dog, controlling the dog (like heeling) was dramatically better.  I actually built half this dog module back then, but gave up after the dog was broken.

 

In general, I avoid mods, but if controlling the dog is significantly better and more precise, then I will have to consider it.  Thanks!

 

BTW, if you can make dogs run faster than men, that would be awesome as well!

 

this includes no AI. all it does is restore what you described in my own way

basically a dog that is based on CaManBase instead of Animal where BIS forces some stuff no one wants onto it. i just made sure this has all the human bones so there is no crashes or log spam.

 

so yea, it'll use whatever CaManBase uses by default AI wise. using disableAI and turning off all aspects of it will make this obey 100%. so you can either spawn this one as a unit and use stuff like doMove or spawn it as an agent and use moveTo setdestination etc. what ever you need. it simple provides a clean dog unit that is fully controllable via script wrthout animation hacks.

 

i use this with my own hostile creature AI and they follow perfectly. so this should be great for friendly dogs like yours too.

 

you can change speed inside the anim config or jsut use setAnimSpeedCoef. this is jsut hte first working version. i'll tweak speeds and add all model and colour variations soon.

  • Like 4

Share this post


Link to post
Share on other sites
1 hour ago, johnnyboy said:

but if controlling the dog is significantly better and more precise...

 

Yes it is!  :)

Share this post


Link to post
Share on other sites

Sadly 1.3 wont work at all on dedicated server & is very buggy if you host it as multiplayer. as in; the load out stops working, & the other player sees a diver above the dog if the dog enters the water. Also it needs to be started one or twice the get control of the dog with the T menu.

 

If it was possible to port over the ArmA 2 Dogs (called Blitzy I think) which were fully Coop Multi player it would be great! A2 had all sorts of animals that could kill you crocks, snakes etc.

Share this post


Link to post
Share on other sites
3 minutes ago, jgaz-uk said:

Sadly 1.3 wont work at all on dedicated server & is very buggy if you host it as multiplayer

Sorry to hear that.  But I've never claimed MP compatibility.  I will likely be converting to use @BadBenson's ported Arma 2 dog in the future, so maybe MP will get better then.

 

Works good in SP.  I'm having fun making a real mission with it now.

  • Like 3

Share this post


Link to post
Share on other sites
Just now, GamerOnkel said:
 
Can they make a mod from the dog script?

Sure, "they" can.  Just contact "them" to get it done.

  • Like 4

Share this post


Link to post
Share on other sites

I do dream of a day when I can just drop this addon (soon to be madeTM) into my commandline and enjoy full MP compatibility in missions.

 

Shall we say 4 days?  Should be a ton of time ;)  /jk

  • Like 2

Share this post


Link to post
Share on other sites
1 minute ago, kremator said:

I do dream of a day when I can just drop this addon (soon to be madeTM) into my commandline and enjoy full MP compatibility in missions.

 

Shall we say 4 days?  Should be a ton of time ;)  /jk

Me too brother!  lol

 

My favorite comment I got on the JBOY Dog YouTube video was:  "Make a mod.  I hate scripts."

 

Some people...

  • Like 2

Share this post


Link to post
Share on other sites
3 hours ago, AIG.Tartar said:

Will there be a server version of this  in the future?
That would be awesome !

Yes sir Mr. Tartar, but how soon that future is I don't know.

Share this post


Link to post
Share on other sites

you just have to take out a bunch of the if (!isServer) ExitWith {}  commands.   A bunch of those are called by the client and therefore the scripts exit.  That is what I had to do to get it working.  Verified to work on a dedicated server but I only have one "Dog handler" class.

Share this post


Link to post
Share on other sites

Got you new version to spawn on dedi.  Dog can sit, getin-out, hell, and whatnot...but attack command does nothing.  Any ideas?  Also sent you some classnames for RHS vics that you can add so doggie can ride in some hummers and such.

  • Like 1

Share this post


Link to post
Share on other sites

@accuracythruvolume, thanks much for the vehicle names and attach positions.  I'll add them in to my scripts and release them with the next version.  Regarding dogs not attacking on dedi I haven't a clue.  Are any errors thrown?

Share this post


Link to post
Share on other sites

I got this in the .rpt:

 

3:29:55 Error in expression <TargetDesignatedByHandler;

if (!isnull _obj) then 
{
_dog setVariable ["vComman>
 3:29:55   Error position: <_obj) then 
{
_dog setVariable ["vComman>
 3:29:55   Error Undefined variable in expression: _obj
 3:29:55 File mpmissions\__CUR_MP.lingor3\JBOY_Dog\JBOY_dogExecuteAction.sqf, line 80
 3:31:29 Error in expression <TargetDesignatedByHandler;

if (!isnull _obj) then 
{
_dog setVariable ["vComman>
 3:31:29   Error position: <_obj) then 
{
_dog setVariable ["vComman>
 3:31:29   Error Undefined variable in expression: _obj
 3:31:29 File mpmissions\__CUR_MP.lingor3\JBOY_Dog\JBOY_dogExecuteAction.sqf, line 80
 3:31:46 Error in expression <TargetDesignatedByHandler;

if (!isnull _obj) then 
{
_dog setVariable ["vComman>
 3:31:46   Error position: <_obj) then 
{
_dog setVariable ["vComman>
 3:31:46   Error Undefined variable in expression: _obj
 3:31:46 File mpmissions\__CUR_MP.lingor3\JBOY_Dog\JBOY_dogExecuteAction.sqf, line 80

 

 

ahhh.. and getTargetDesignatedbyHandler.sqf has a "if (!isServer)  exitwith {};"  still.

Therefore it was not returning a valid _obj.

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×