Human MoveAct Code Decoded — An Introduction

hbmchildren

AN INTRODUCTION TO HUMAN MOVEACT CODE COMMAND & CONTROL

I’m told that script programming is now a part of the fundamental education system, beginning in First or Second Grade. That ought to make it easy for the youngsters to follow this highly technical dissertation. Use of these commands and scripts is not limited to virtuals — they work on organics, too. All human interaction and initiative is strictly governed by these scripts. It’s best to use this on oneself, not on others. Flatties would find the code a very useful weapon. Roundies don’t run others, just themselves. All human actions can be reduced to code which responds predictably to control command.

SCRIPTS:

How To Run HBM (Human Biological Machine) Scripts:

MoveAct Code is arranged in ordered sequential form, called “SCRIPTS”.

A Script may be attached to any object or class of objects to control movements, actions and verbal exchanges between BOTS.

The MoveAct Code contains Conditions — real-time modifiers — that can be introduced to change or trigger new actions, movements and verbal exchanges during a running Action Cycle governed by a specific Script.

You can use an existing Script to command an object or GANGED group of objects to perform scripts in the following manner:

Type in the letter “i”, which brings up an entry box prompt that says “BOT”. Type in the name “Daniel” to indicate that Daniel is the BOT object you want to activate and control. Once you have entered the name “Daniel” as the designated BOT, Daniel will respond whenever you press the “i” key.

Now type in the command for Daniel to carry out. If Daniel recognizes the command, he will perform it.

If you wish to change the target of your command, merely backspace over the name and enter another name in its place, then enter a KNOWN command. Entering commands that are not known by the BOT will result in a zero action.

IMPORTANT DEFAULT SETTINGS IN ALL HUMANS:

; please note that only CAPS are recognized in the CODE. All lower case and commented-out lines such as this one are not seen by the machine.

1. Mover Object or Objects will be confined to their originating regions, meaning that most humans will never venture further than a 10 mile radius from their birthplace, and will remain well within the cultural and family group “box”, or region.

2. Mover Objects tend to run in Loops and Cycles until a Player enters their domain.

3. ON Player Enter domain, Mover Action Codes are automatically set to Active, which means that the Humans will go about their business unless Bumped by Player.

4. ON Player Leave domain, Mover Action Codes in that region reset to Not Active, meaning that the Flatties go about their business as usual, but don’t react to Player when Player is outside their Domain, ie; in another Domain however close it may be to theirs.

=============================================================

General Action Codes Format:

codesname=Initializion code

ON conditions codes

main code

Important Note: Initialization and Conditions codes may be absent.

==============================================================

IN { initialize code } = code to execute on startup or clone, should be first in sequence.

* = repeat main or local code sequence from the beginning.

{ = beginning of a code sequence.

} = end of a code sequence.

(  = beginning of a condition or count.

) = end of a condition or count.

===============================================================

Forms of Script Codes:

codes

codes(n)

{ code sequence } (n)

{ code sequence } (ON conditiontocontinue)

; number parameters (n) will fall within a range of (n1-n2) which automatically selects a time-keyed “as if random” number between those two extremes to use as (n), the number of times to repeat the action, such as taking forward steps, either before doing something else or while doing something else, ie; multi-tasking, such as talking while walking.

; for example, F(10-30) will cause the object to move forward somewhere between 10 and 30 units, defined by the oriented grid of the space in which the object persists.

; using XT(2001-2013) will issue a single tag, landing on a semi-randomized number somewhere between the items 2001 and 2013.

================================================================

Basic MoveCodes: codes(n), codes(Condition)

U(n) = Up

D(n) = Down

DF = Down to Floor (if above a box, drop to top of nearest box below object)

F(n) = Forward

B(n) = Backward

R(n) = Right (strafe)

L(n) = Left (strafe)

A(n) = Angleincrement (uses angle set by AI(n) )

H = Halt (speeds (X,Y,Z,T) set to zero)

===========================================================

Turn And Angle Codes

TR(n) = TurnRight (turn right the indicated number of increments of turn)

TL(n) = TurnLeft (turn left the indicated number of increments of turn)

TU(n) (look upward the indicated number of upward increments)

TD(n) (look downward the indicated number of downward increments)

TP = TurntowardPlayer (turns the object toward local player)

T~P = TurnawayfromPlayer (turns the object away from local player)

TN = TurntowardNearestplayer (turns the object toward nearest player)

T~N = TurnawayfromNearestplayer (turns object away from nearest player)

TC = TurntowardCenterofregion (turns object toward center of region or space)

T~C = TurnawayfromCenterofregion (turns object away from center of region or space)

TA(n) = Turnangle (turn angle, increments determined by “n”)

TS(name) = TurntowardSpot (name of object toward which the HBM will turn)

Spot or Object must be numbered or ID’d to be recognized by the machine.

T~S(name) = TurnawayfromSpot (name of the object away from which the HBM will turn.

TO = TurntowardOtherteammember (turn toward other team member)

T~O = TurnawayfromOtherteammember (turn away from other team member)

HBMs travel in social teams, which translate into family groups, business groups, sports groups, special interest groups and other forms of cliques.

AS(n) = AngleSet (determined by this number of degrees to set the angle)

AI(n) = AngleIncrement (does and sets default angle increment unless modified in-game)

AR(n) = AngleRange (increment angle by a random value from -n to +n degrees)

Attach Code

AL(Lightobjectname) = AttachLight (name of object) to object

AL = AttachLight clear (removes light from object)

Wait Codes

W(n) = Wait for “n” seconds

W(-1) = Wait forever ( use condition code to take script out of “wait” mode)

WT(tag) = WaitTag (wait until you see this tag)

WK(key) = WaitKey (this is the key for which to wait)

WC(“command”) = WaitCommand (“commandstring”)

WE = WaitEnd texture(code 99 in texture) (auto in projectiles)

WS = WaitSynchronize (wait until all in class are in sync)

WN(distance) = WaitforNearplayer (wait for a local or net player) to come within specified distance, then continue. This wait will also end waiting if a player sends a projectile to bump the object.

WU = Wait for User command

WV = Wait until the object is in View

==============================================================

Projectiles/Play/Player

; a projectile is anything that represents the extension of player’s “touch” : it can be a tool, weapon, force or particles emanating from player’s point, other than Player Bump Object. It can be the hand, operating as a tool, and can be invisible or made visible with a texture, such as an extending hand, finger or radiation. Projectiles can be represented visibly, as in a magic wand sending out crystalline particles; or invisibly, such as telenosis, the action of telepathic hypnosis, using direct control commands. The best use of this function is within the Orbs, but it can of course be applied to organics

P(n) = shoot Projectile, use tool (or weapon) number “n” — if object has a “shoot” sequence, auto-wait for texture end before continuing the code sequence (WE code above)

P(n,tag) = shoot Projectile with tool number n, if projectile hits player, issue indicated tag

PS(s,n) = PlaySound (sound name, number of loops of this soundbyte to play)

PS is a very important class of commands, enabling one to have conversations and to hear environmental sounds, giving clues to oncoming events and to hear music tracks if they are running in-game. Without PS, there would be utter silence, and we’ve already had plenty of that, eh? See command list for COACHES for specifics on creating convincing conversations with seemingly live persons.

PTL(amt,n) = PlayerTurnLeft: specified amount of turn for n times

PTR(amt,n) = PlayerTurnRight: specified amount of turn for n times

PTU(amt,n) = PlayerTurnUp: specified amount of turn for n times

PTD(amt,n) = PlayerTurnDown: specified amount of turn for n times

PRL(deg,n) = PlayerRollLeft specified degree of roll for n times

PRR(deg,n) = PlayerRollRight specified degree of roll for n times

PPF(deg,n) = PlayerPitchForward specified degree of pitch for n times

PPB(deg,n) = PlayerPitchBack specified degree of pitch for n times

PJH(amt,n) = PlayerJitterHorizontal: amount of jitter for n times

PJV(amt,n) = PlayerJitterVertical: amount of jitter for n times

PMF(amt,n) = PlayerMoveForward: amount of movement for n times

PMB(amt,n) = PlayerMoveBack: amount of movement for n times

PMU(amt,n) = PlayerMoveUp: amount of movement for n times

PMD(amt,n) = PlayerMoveDown: amount of movement for n times

PML(amt,n) = PlayerMoveLeft: amount of movement for n times

PMR(amt,n) = PlayerMoveRight: amount of movement for n times

PMS(amt,n) = PlayerMoveSpeed: amount for n times

PWK(key) = Player WaitKey: player waits for named key or keys. There may be more than one unlocking key involved in a single lock-passing action.

EXAMPLE:

PWK(CTRL LMB) = Player Waits for Key “Control” or “LeftMouseButton”

PGS(name) = PlayerGotoSpot (name of object or spot or point)

PGN(name) = PlayergotoNamedregion (name of region or domain)

PGJ = PlayerGotoJail (implemented during CTF only as a spawn delay)

PXT(code) = PlayereXecuteTransitcode: code to execute

Capture/Grab/Pickup/Operate/Open/Close/Take

CP = CapturePlayer (captured player moves with script owner)

CO = CaptureObject (last contact object, eg ON PB player bump)

RP = ReleasePlayer (removes all trace of quantum entanglement)

RO = Release Object (removes all trace of quantum entanglement)

MOVE CODES

This is the core of control commands, determining most activities and reactions of the Human Biological Machine, or “Flattie” which can be “capped” and operated by a non-phenomenal Being such as yourself.

M = Move codes

MD = Move Default (such as resume OWALK)

MO = Move to Opponent; Original point

MOS = Move to Original Spot including original angle of inclination

MP = Move to Player point; marks current point & moves to it or near PO.

MC = Move to Center of current region, domain or room

MS(name) = Move to Spot (name of spot to move toward)

MF(who) = MoveFollow (follow the indicated ID named object or player)

MR = MoveRunAway (fight or flight syndrome)

MA = MoveAbove

MM(pmap,code,n) = MoveMap (pmap is id name of OPMAP object)

code:

0 = no move, just setup

1 = select first

2 = select nearest

3 = select random // selection always favors least recent choice

n: 0 = no move, just wait; n = repeat for n nodes

MN(mapnode) = MovepmapNode

The above code produces results such as the Rosenkrantz & Guildenstern Syndrome, that of always being in the right place at the right time, disregarding circumstances that might prevent it.

 

EXecute Codes

X = Execute codes:

XK(key) = eXecuteKey (execute action when you see the designated key, such as KEYTONAME, KEYTOACTION or KEYTOSCRIPT. Engine will check key assignments in name, action, script order.

XT(tag) = issue the named tag from script object

XTP(tag) = issue tag from player

XF(flycode) player can fly, 0=flyoff, not 0=flyon

XC(codes) = eXecuteCodes with named codes, when finsiehd return to next code after XC

XG(codes) = eXecuteCodes with named codes, ontinue with this code as if original code

XS(“show/say string”) = show a string as if chat (see coaching and chat modes for details; this includes speaking the player’s and/or speaker’s name or names)

XM(“message”) = show message, no sayer’s name

XN(“classid”) = eXecuteNew class changes the class of an object, if doclass = 1 then change for all objects in that class of objects

XAP = eXecuteAttack on Nearplayer (attack on the nearest player may merely mean social interaction, a kiss on the cheek, or serving pie & ice cream to a restaurant customer.

XAO = eXecuteAttack Object (move toward and aggress upon an object)

XA(who) = eXecuteAttack who (interact with the designated player, object or thing)

XD = eXecuteDie (sets off a string of “death” animations, conditions, tags & effects)

XE = eXecuteEffect (for example, an OTHROW will issue tag on object or wall collision

XR = eXecute Return/Restart (will return to main code after a command, eg, to skip out of a failed command)

XRA = eXecuteResetAll movers, puts back to original starting point and original script

XL = eXecuteLeave (leave an object where the mover happens to be at the moment)

XU = eXecuteUnleave (will unleave or take away the netplayer’s object or objects)

XH = eXecuteHide (object will not be seen by player, no interaction possible atm)

XHN = eXecuteHideNoupdate (hides object and allows no-collision status)

XS = eXecuteShow object (object appears in normal “show” mode)

===============================================================

ON Condition codes:

Sets aside a code sequence for various in-game real-time conditions. When that condition occurs for an object, the codes are executed. when codes are finished, execution continues in the main code sequence as before from where it left off before the conditional interruption, or at the beginning of the main sequence if the * code occures within the condition code sequence.

So far, most of what you’ve already seen accounts for 90% of human behavior, not considering mental and emotional overlays of the actions, such as “I’m hungry” or “I want to see a movie”. We will now consider a number of behavioral entities…

Double Condition Codes:

ON Bump: (bumping means running into the sphere of manifestation of another, what in video gaming is called the “agro circle”, the point at which the “bump” effect is “felt” or noticed. //important note// the word “codes” below seems simple enough, but the codes can be so utterly complex that it takes 12 pages of text to write one string of code)

ON BP { codes } = On BumpPlayer(local/net), execute named codes

ON BL { codes } = On BumpLocalplayer, execute named codes

ON BN { codes } = On BumpNetplayer, execute the named codes

ON BO { codes } = On BumpOther class object, execute codes as given

ON BA { codes } = On BumpAny object, execute the codes specified

ON BW = On bumpWall, execute codes, for instance, back up and turn away, which would look like ON BA = PTR(45,1), PMF(32,1) or PMB(32,1), meaning Player Turns 45 degrees to the right one time, then walks forward 32 units, or Player backs away from wall 32 units. Additional commands may be issued along with this, including soundbytes, (“Damn, ran right into the wall!!!”) random-generated thoughts (“What’s that wall doing there???”, emotional reactions (“You stupid idiot!”), stumble (“Oopsie!!!”) etc. amounting to hundreds or thousands of reaction syndrome to the general mayhem.

ON BC { codes } = ON BumpCeiling execute codes as given

ON BF { codes } = ON BumpFloor execute codes as given, for instance, “Ouch!!!”
and a sudden drop to the floor, showing the animation “I’m hurt”.

ON BM { codes } ON BumpMap node, execute codes as given

===========================================================

ON Close — This refers to a specified distance between object and player:

ON CP { codes } = On ClosePlayer(local/net) execute codes as given

ON CL { codes } = On CloseLocalplayer, execute codes as given

ON CN { codes } = On CloseNetplayer, execute codes as given

ON CO { codes } = On CloseOther class object, execute codes as given

ON CA { codes } = On CloseAny object, execute codes as given

ON CM { codes } = On CloseMap node, execute codes as given

ON Hitbyprojectile:

ON HP { codes } On HitbyPlayer’s(local/net) projectile, execute codes

ON HL { codes } On HitbyLocalplayer’s projectile, execute codes

ON HN { codes } On HitbyNetplayer’s projectile, execute codes

ON HO { codes } On HitbyOther class object’s projectile, execute codes

ON HA { codes } On HitbyAny object’s projectile, execute codes

ON HK { codes } On HitstoKill reached, execute appropriate codes

ON View:

ON VP { codes } ON ViewbyPlayer(local/net), execute codes

ON VL { codes } ON ViewbyLocalplayer, execute codes

ON VN { codes } ON ViewbyNetplayer, execute codes

ON VO { codes } ON ViewbyOther class object, execute codes

ON VA { codes } ON ViewbyAny object, execute codes

ON XF { codes } ON eXecute Failure, execute specified codes

===========================================================

Well, that’s the end of chapter 1 of the Human MoveAct Code. You now have enough programming to be able to create a frighteningly convincing cocktail party or social bridge game or a sickeningly familiar political argument between several dozen folks, or a rumpus between dress designers preparing their garments for a shredding competition on the runway. You could easily construct an afternoon with the Kardashians. There’s a lot of window-dressing that can go on top, but the fundamentals are as simple as what you see here. A sound is a sound is a sound, and an amination is an animation is an animation, and a … well, you get the idea. It’s all gingerbread that you see and hear and touch and feel, but the fundamentals are…well, BOTTish, eh? Much more awaits you as you delve deeper into the Universal Science of Universes.

==============================================================

See You At The Top!!!

gorby