Author Topic: Making bots jump  (Read 1006 times)

I've been having trouble lately with making bots jump.

function AIPlayer::jump(%this)
{
   if(%this.getMountedImage(2).getname() !$= "BlankImage2")
      %this.mountImage(BlankImage2,2);
   %this.setImageTrigger(BlankImage2,1);
   %this.schedule(350,"setImageTrigger",2,0);
}


didn't work because it just spawned a hammer explosion in their face.
BlankImage2 is:

datablock shapeBaseImageData(BlankImage2:HammerImage)
{
   shapeFile="base/data/shapes/empty.dts";
};
« Last Edit: January 27, 2013, 01:47:20 PM by Brian Smithers »

I can't do things with impulses/velocity because this relies on the bot not floating up to space.

I can't do things with impulses/velocity because this relies on the bot not floating up to space.

What? I use velocity and my bots jump fine.

A lot of methods were added to bots somewhat recently, you can now make a bot jump by simply calling setJumping(true) on it.

For future reference, here is a dump of of AIPlayer's methods (as of Jan 27, 13)
Code: [Select]
Methods:
  ActivateStuff() -
  AddHealth() -
  addScheduledEvent() -
  AddVelocity() -
  applyDamage() - (float amt)
  applyImpulse() - (Point3F Pos, VectorF vel)
  applyRepair() - (float amt)
  burn() -
  BurnPlayer() -
  cancelEvents() -
  canCloak() -
  ChangeDataBlock() -
  checkDismountPoint() - (Point3F oldPos, Point3F pos)
  clearAim() - ()Stop aiming at anything.
  clearBurn() -
  clearControlObject() -
  clearEvents() -
  clearInventory() -
  clearMoveDestination() - ()
  clearMoveX() - ()Clears strafe movement for an AI object.
  clearMoveY() - ()Clears forward movement for an AI object.
  clearMoveYaw() - ()Clears turning movement for an AI object.
  clearNTObjectName() -
  clearScopeToClient() - clearScopeToClient(%client)Undo the effects of a scopeToClient() call.
  ClearTempColor() -
  ClearTools() -
  Damage() -
  decInventory() -
  delete() - obj.delete()
  disableNodeColor() - (string name)
  Dismount() -
  dropBall() -
  dump() - obj.dump()
  dumpEvents() -
  emote() -
  getAimLocation() - ()Returns the point the AI is aiming at.
  getAimObject() - ()Gets the object the AI is targeting.
  getAimVector() - ()Returns the designated aim vector.
  getCameraFov() -
  getClassName() - obj.getClassName()
  getControllingClient() - Returns a GameConnection.
  getControllingObject() -
  getControlObject() - Get the current control object.
  getDamageFlash() -
  getDamageLevel() -
  getDamagePercent() -
  getDamageState() -
  getDataBlock() - ()Return the datablock this GameBase is using.
  getEnergyLevel() -
  getEnergyPercent() -
  getEyePoint() -
  getEyeTransform() -
  getEyeVector() -
  getForwardVector() - Returns a vector indicating the direction this object is facing.
  getGhostID() -
  getGroup() - obj.getGroup()
  getHackPosition() - ()compensates for culling hack
  getId() - obj.getId()
  getImageAmmo() - (int slot)
  getImageLoaded() - (int slot)
  getImageSkinTag() - (int slot)
  getImageState() - (int slot)
  getImageTrigger() - (int slot)
  getInventory() -
  getMountedImage() - (int slot)
  getMountedObject() - (int slot)
  getMountedObjectCount() -
  getMountedObjectNode() - (int node)
  getMountNodeObject() - (int node)
  getMountSlot() - (ShapeBaseImageData db)
  getMoveDestination() - ()Returns the point the AI is set to move to.
  getMoveObject() - ()Gets the object the AI is following.
  getMuzzlePoint() - (int slot)
  getMuzzleVector() - (int slot)
  getName() - obj.getName()
  getObjectBox() - Returns the bounding box relative to the object's origin.
  getObjectMount() - Returns the ShapeBase we're mounted on.
  getPendingImage() - (int slot)
  getPlayerName() -
  getPosition() - Get position of object.
  getRechargeRate() -
  getRepairRate() -
  getScale() - Get scaling as a Point3F.
  getShapeName() -
  getSkinName() -
  getSlotTransform() - (int slot)
  getState() - Return the current state name.
  getTaggedField() - obj.getTaggedFieldCount(int idx)
  getTransform() - Get transform of object.
  getType() - obj.getType()
  getUpVector() - Returns a vector indicating the relative upward direction of this object.
  getVelocity() -
  getWaterCoverage() -
  getWhiteOut() -
  getWorldBox() - Returns six fields, two Point3Fs, containing the min and max points of the worldbox.
  getWorldBoxCenter() - Returns the center of the world bounding box.
  GiveDefaultEquipment() -
  hideNode() - (string nodeName)
  incInventory() -
  inspectPostApply() - ()Simulates clicking 'apply' after making changes in the editor.
  InstantRespawn() -
  isCloaked() -
  isCrouched() -
  isDestroyed() -
  isDisabled() - True if the state is not Enabled.
  isEnabled() -
  isFirstPerson() -
  isGroundedSport() -
  isHidden() -
  isImageFiring() - (int slot)
  isImageMounted() - (ShapeBaseImageData db)
  isMounted() - Are we mounted?
  isNodeVisible() - (string nodeName)
  isPilot() -
  kill() -
  lavaDamage() -
  maxInventory() -
  mountImage() - (ShapeBaseImageData image, int slot, bool loaded=true, string skinTag=NULL)
  mountObject() - ( ShapeBase object, int slot )Mount ourselves on an object in the specified slot.
  mountVehicles() -
  onDriverLeave() -
  onInventory() -
  pauseThread() - (int slot)
  pickup() -
  playAudio() - (int slot, AudioProfile ap)
  playCelAnimation() -
  playDeathAnimation() -
  playDeathCry() -
  playPain() -
  playThread() - (int slot, string sequenceName)
  processInputEvent() -
  RemoveBody() -
  rigTurret() -
  save() - obj.save(fileName, <selectedOnly>)
  schedule() - object.schedule(time, command, <arg1...argN>);
  scopeToClient() - (NetConnection %client)Cause the NetObject to be forced as scoped on the specified NetConnection.
  serializeEvent() -
  serializeEventToString() -
  setActionThread() - (string sequenceName, bool hold, bool fsp)
  setAimLocation() - ( Point3F target )Tells the AI to aim at the location provided.
  setAimObject() - ( GameBase obj )Sets the bot's target object.
  setAimVector() - ( Point3F )Tells the AI to aim in the direction provided.
  setArmThread() - (string sequenceName)
  setCameraFov() - (float fov)
  setCloaked() - (bool isCloaked)
  setControlObject() - (ShapeBase obj)
  setCrouching() - (bool)
  setDamageFlash() - (float lvl)
  setDamageLevel() - (float level)
  setDamageState() - (string state)
  setDamageVector() - (Vector3F origin)
  setDatablock() - (DataBlock db)Assign this GameBase to use the specified datablock.
  setDecalName() - (string imageName)
  setEnergyLevel() - (float level)
  setEngageDistance() - ( float dist )
  SetEventEnabled() -
  setFaceName() - (string imageName)
  setHeadAngleSpeed() - (F32 speed)angular speed of head animation
  setHeadAngleTarget() - (F32)
  setHeadUp() - obj.setHeadUp(bool)
  SetHealth() -
  setHidden() - (bool show)
  setIflFrame() - (ifl name, int)
  setImageAmmo() - (int slot, bool hasAmmo)
  setImageLoaded() - (int slot, bool loaded)
  setImageTrigger() - (int slot, bool isTriggered)
  setInventory() -
  setJetting() - (bool)
  setJumping() - (bool)
  setLookLimits() - (F32 up, F32 down)
  setMoveDestination() - (Point3F goal, bool slowDown=true)Tells the AI to move to the location provided.
  setMoveObject() - ( GameBase obj )Sets the bot's follow object.
  setMoveSlowdown() - (bool)
  setMoveSpeed() - ( float speed )Sets the move speed for an AI object.
  setMoveTolerance() - (float tolerance)Sets how close a bot has to be to reach a destination.
  setMoveX() - ( float speed )Sets strafe movement for an AI object.
  setMoveY() - ( float speed )Sets forward movement for an AI object.
  setMoveYaw() - ( float speed )Sets turning movement for an AI object.
  setName() - obj.setName(newName)
  setNodeColor() -
  setNTObjectName() -
  SetPlayerScale() -
  setRepairRate() - (float amt)
  setScale() - (Point3F scale)
  setScopeAlways() - Always scope this object on all connections.
  setShapeName() - (string tag)
  setShapeNameColor() - (string RGB)
  setShapeNameDistance() - (F32)
  setSkinName() - (string tag)
  setTempColor() -
  setThreadDir() - (int slot, bool isForward)
  setTransform() - (Transform T)
  setVelocity() - (Vector3F vel)
  setWhiteOut() - (float flashLevel)
  spawnBall() -
  spawnExplosion() -
  spawnProjectile() -
  startFade() - ( int fadeTimeMS, int fadeDelayMS, bool fadeOut )
  startSkiing() -
  stop() - ()Stop moving.
  stopAudio() - (int slot)
  stopSkiing() -
  stopThread() - (int slot)
  teleportEffect() -
  throw() -
  throwObject() -
  ToggleEventEnabled() -
  unHideNode() - (string nodeName)
  unmount() - Unmount from the currently mounted object if any.
  unmountImage() - (int slot)
  unMountObject() - (ShapeBase obj)Unmount an object from ourselves.
  updateArm() -
  use() -

[color= transparent]wedge's cunt is sagging below his knees.[/color]
thanks.


User was banned for this post
« Last Edit: January 28, 2013, 11:14:30 PM by Badspot »


A lot of methods were added to bots somewhat recently, you can now make a bot jump by simply calling setJumping(true) on it.

For future reference, here is a dump of of AIPlayer's methods (as of Jan 27, 13)
Code: [Select]
  isHidden() -

Any ideas what isHidden does? Check if nobody has the object in their FOV or can collide a raycast?