Documentation Project

dont know if it ok to post here but diging in the forums about jumpmove, found a post of utunels about how a 7 value both in x as in z fixed the limitation of value 2 in wich a static jump cant move. test it and works
this is the info in the manual.

jumpmove {fx} {fz}

  • This allows Player to modify player's jump movement.
  • {fx} determines effect in x axis:
    • 0 = (default) No effect.
    • 1 = Left/Right changes facing direction during jump.
    • 2 = Left/Right changes jumping speed during jump (doesn't work with static jump).
    • 3 = Combination of 1 and 2.
  • {fz} determines effect in z axis:
    • 0 = (default) No effect.
    • 1 = Walking/running momentum is carried during jump.
    • 2 = Up/Down changes jumping speed during jump (doesn't work with static jump).
    • 3 = Combination of 1 and 2.
That's all very out of date and best left be.

DC
 
dont know if it ok to post here but diging in the forums about jumpmove, found a post of utunels about how a 7 value both in x as in z fixed the limitation of value 2 in wich a static jump cant move. test it and works
this is the info in the manual.
This is already on the legacy manual :)
 
Digging into the source code I've found some more information that, once confirmed, we can add to the manual:

Biker:
• The Rider is spawned at Y+10 from the parent.

• Rider won't copy the map from the Biker entity neither there is a way the change it's palette by native means (until 6931 at least) - Coinfirmed

• The manual says "Bikers should normally be spawned further out than other enemies. You'll probably want around 400 or -80 (But not more than -200 or 520, or they'll die)" but, from what I saw at the code, one of the values is wrong:

C:
// for old bikers
int biker_move()
{


if((self->direction == DIRECTION_RIGHT) ? (self->position.x > advancex + (videomodes.hRes + 200)) : (self->position.x < advancex - 200))

Unless I am mistaken, they are spawn either at -200 or (video horizontal resolution +200) - confirmed

SUBTYPE BIKER is called with the following settings:

Code:
subject_to_hole                                = 1;
        subject_to_gravity                             = 1;
        subject_to_basemap                             = 0;
        subject_to_wall                                = 0;
        subject_to_platform                            = 0;
        subject_to_screen                              = 0;
        subject_to_minz                                = 1;
        subject_to_maxz                                = 1;
        no_adjust_base                                 = 0;

I know each type has a group of default settings aplied by default and here are the default values as I could get from the source:

TYPE PLAYER

Code:
chainlength            = 4;
        bounce                 = 1;
        subject_to_basemap     = 1;
        subject_to_wall        = 1;
        subject_to_platform    = 1;
        subject_to_obstacle    = 1;
        subject_to_hole        = 1;
        subject_to_gravity     = 1;
        subject_to_screen      = 1;
        subject_to_minz        = 1;
        subject_to_maxz        = 1;
        no_adjust_base         = 0;


TYPE ENEMY

Code:
        bounce                 = 1;
        subject_to_basemap     = 1;
        subject_to_wall        = 1;
        subject_to_platform    = 1;
        subject_to_hole        = 1;
        subject_to_obstacle    = 1;
        subject_to_gravity     = 1;
        subject_to_minz        = 1;
        subject_to_maxz        = 1;
        no_adjust_base         = 0;

TYPE ITEM

Code:
        subject_to_basemap     = 1;
        subject_to_wall        = 1;
        subject_to_platform    = 1;
        subject_to_hole        = 1;
        subject_to_obstacle    = 1;
        subject_to_gravity     = 1;
        subject_to_minz        = 1;
        subject_to_maxz        = 1;
        no_adjust_base         = 0;

TYPE OBSTACLE
That is a curious one - I can't understand the NOATTACK part.

Code:
        aimove |= AIATTACK1_NOATTACK;
        subject_to_basemap     = 1;
        subject_to_wall        = 1;
        subject_to_platform    = 1;
        subject_to_hole        = 1;
        subject_to_gravity     = 1;
        subject_to_minz        = 1;
        subject_to_maxz        = 1;
        no_adjust_base         = 0;

TYPE STEAMER
Code:
offscreenkill = 80;

TYPE PSHOT
Code:
aimove = 0;
        subject_to_hole                = 0;
        subject_to_gravity             = 1;
        subject_to_basemap             = 0;
        subject_to_wall                = 0;
        subject_to_platform            = 0;
        subject_to_screen              = 0;
        subject_to_minz                = 1;
        subject_to_maxz                = 1;
        subject_to_platform            = 0;
        no_adjust_base                 = 1;

TYPE TRAP
Code:
        subject_to_basemap     = 1;
        subject_to_wall        = 1;
        subject_to_platform    = 1;
        subject_to_hole        = 1;
        subject_to_gravity     = 1;
        subject_to_minz        = 1;
        subject_to_maxz        = 1;
        no_adjust_base         = 0;

TYPE TEXT
Code:
        subject_to_gravity     = 0;
        subject_to_minz        = 1;
        subject_to_maxz        = 1;

TYPE ENDLEVEL
Code:
        subject_to_basemap     = 1;
        subject_to_wall        = 1;
        subject_to_platform    = 1;
        subject_to_hole        = 1;
        subject_to_obstacle    = 1;
        subject_to_gravity     = 1;

TYPE NPC
Code:
        bounce                 = 1;
        subject_to_basemap     = 1;
        subject_to_wall        = 1;
        subject_to_platform    = 1;
        subject_to_hole        = 1;
        subject_to_obstacle    = 1;
        subject_to_gravity     = 1;
        subject_to_minz        = 1;
        subject_to_maxz        = 1;
        no_adjust_base         = 0;

TYPE PANEL
Code:
        antigravity            = 1.0; //float type
        subject_to_gravity     = 1;
        no_adjust_base         = 1;
oh thx for this will use it in future work
 
This is actually a really valuable initiative for the OpenBOR community. Undocumented features and hidden behaviors can make modding much harder, especially for newcomers trying to understand AI flags, animations, and scripting logic.

I agree that many things are only mentioned in old posts or scattered across forums, which makes learning more difficult than it should be. Having proper explanations for flags like “falling” vs “animating” would definitely help avoid a lot of trial and error.

I’ll be following this topic because a centralized documentation effort could become extremely useful for both new and experienced OpenBOR creators. Thanks for putting the effort into organizing all of this.
 
Back
Top Bottom