OpenBOR v3.0 Build 4183 for Windows/Wii/PSP

Status
Not open for further replies.
Thanks  8)

White Dragon said:
You can use skipselect and via script just use changeplayerproperty(0,"name",loaded_model) to force to select a player. Not heavy script.

Hmm... let me give that a try
 
Hmm... will that force player 1 (as in example) to use ken when level after branch xxx is played?

OTOH I've tried using changeplayerproperty to change player in select screen. Well, it doesn't change anything in select screen but it does change chosen player in game
 
Bloodbane said:
Hmm... will that force player 1 (as in example) to use ken when level after branch xxx is played?

OTOH I've tried using changeplayerproperty to change player in select screen. Well, it doesn't change anything in select screen but it does change chosen player in game

This happens with a lot of code. For example, try to use a spawn script in select screen - it won't work.

Last time I talked with DC about this, he said there is a code you need to use to let the engine accept this, but he forgot which one and seams that nobody knows it. Maybe White Dragon can look on the source code and search for this.
 
nsw25 said:
To explain what I and others would like to see changed is like this.

heres an example of what I have done in older mods

Code:
set	Story
#cansave 2
nosame 1
credits 30
lives   3
custfade		100

skipselect 

select  data/select.txt

if you set skipselect with empty you can then define players with a custom select screen txt file.

the way you have tried to set it up with multiple skipselects is interesting.

is there a way to have it like

skipselect playera player player

then these are selectable from that point on (until next skipselect is defined)

then we can have a blank select screen txt file or something (to define background and music etc) and then those players are selectable only ? (and when loose lives and press continue)

only issue I can think of is as Bloodbane said if you have branches etc and potential additional or reduced unlocked chars (guess this would need scripting and be unavoidable)

You can do it:
in levels.txt write:
skipselect
select  data/select.txt

in select.txt write
music      data/music/music.ogg 1
background  data/bgs/select.gif
allowselect RYU KEN

and just you will able to select JUST ryu or ken
 
could you add a option to not share palette on enemy icon portraits?

something like the 1 flag to not share palette
icon data/chars/pyro/xmenicon.png 1
 
rafhot said:
could you add a option to not share palette on enemy icon portraits?

something like the 1 flag to not share palette
icon data/chars/pyro/xmenicon.png 1

if you use:
icon data/chars/pyro/xmenicon.png 0
you will not show palette
 
OpenBOR v3.0 Build 4194 (Windows/Wii/Android)
http://www.mediafire.com/file/ia08wxtknykzmb9/OpenBOR_v3.0_Build_4194.rar
added allowselect players on savefile to save/load the allowselect list by me
New openborconstants

-- Direction of an entity.
DIRECTION_LEFT
DIRECTION_RIGHT

-- Direction adjustment property for binding and attack hits.
DIRECTION_ADJUST_LEFT
DIRECTION_ADJUST_OPPOSITE -- Force target's direction to opposite of owner's.
DIRECTION_ADJUST_NONE
DIRECTION_ADJUST_RIGHT
DIRECTION_ADJUST_SAME -- Force target's direction to same of owner.

and Added "releasekeys" to player property. Returns the key release status.
by DC
 
White Dragon said:
rafhot said:
could you add a option to not share palette on enemy icon portraits?

something like the 1 flag to not share palette
icon data/chars/pyro/xmenicon.png 1

if you use:
icon data/chars/pyro/xmenicon.png 0
you will not show palette
thanks
i tested and
the flag only works for players at the moment, and i need it to work for enemies
 
rafhot said:
White Dragon said:
rafhot said:
could you add a option to not share palette on enemy icon portraits?

something like the 1 flag to not share palette
icon data/chars/pyro/xmenicon.png 1

if you use:
icon data/chars/pyro/xmenicon.png 0
you will not show palette
thanks
i tested and
the flag only works for players at the moment, and i need it to work for enemies

tested on enemy, it works! it works on icon when you hit the enemy with nolife 0
 
About animationproperty

params: {entity}, {animation_id}, {property}, ({sub-property}), {frame_index}
getanimationproperty(ent,openborconstant("ANI_ATTACK5"),"jumpframe","velocity.y",0);
params: {entity}, {animation_id}, {property}, ({sub-property}), {frame_index}, {value}
changeanimationproperty(ent,openborconstant("ANI_ATTACK5"),"jumpframe","velocity.y",0,4.3);

if frame_index is not necessary (like jumpframe that is fow all animation) you can set frame 0 (not evaluated)

Here all properties and sub-properties:
Code:
static const char *list_animation_prop[] =
{
    "animhits",
    "antigrav",
    "attack",
    "attackone",
    "bbox",
    "bounce",
    "cancel",
    "chargetime",
    "counterrange",
    "delay",
    "drawmethods",
    "dropframe",
    "dropv",
    "energycost",
    "flipframe",
    "followup",
    "idle",
    "index",
    "jumpframe",
    "landframe",
    "loop",
    "model_index",
    "move",
    "numframes",
    "offset",
    "platform",
    "projectile",
    "quakeframe",
    "range",
    "shadow",
    "size",
    "soundtoplay",
    "spawnframe",
    "sprite",
    "spritea",
    "subentity",
    "summonframe",
    "sync",
    "unsummonframe",
    "vulnerable",
    "weaponframe"
};

    static const char *proplist_attack[] =
    {
        "blast",
        "blockflash",
        "blocksound",
        "coords",
        "counterattack",
        "direction",
        "dol",
        "dot",
        "dotforce",
        "dotindex",
        "dotrate",
        "dottime",
        "drop",
        "dropv",
        "fastattack",
        "force",
        "forcemap",
        "freeze",
        "freezetime",
        "grab",
        "grabdistance",
        "guardcost",
        "hitflash",
        "hitsound",
        "jugglecost",
        "maptime",
        "noblock",
        "noflash",
        "nokill",
        "nopain",
        "otg",
        "paintime",
        "pause",
        "reset",
        "seal",
        "sealtime",
        "staydown",
        "steal",
        "tag",
        "type"
    };

    static const char *proplist_attack_coords[] =
    {
        "coords.height",
        "coords.width",
        "coords.x",
        "coords.y",
        "coords.z1",
        "coords.z2"
    };

    static const char *proplist_attack_dropv[] =
    {
        "velocity.x",
        "velocity.y",
        "velocity.z"
    };

    static const char *proplist_attack_staydown[] =
    {
        "rise",
        "riseattack",
        "riseattack.stall"
    };

    static const char *proplist_bbox[] =
    {
        "height",
        "width",
        "x",
        "y",
        "z1",
        "z2"
    };

    static const char *proplist_counterrange[] =
    {
        "condition",
        "damaged",
        "frame.max",
        "frame.min"
    };

    static const char *proplist_drawmethods[] =
    {
        "alpha",
        "amplitude",
        "beginsize",
        "centerx",
        "centery",
        "channelb",
        "channelg",
        "channelr",
        "clip",
        "cliph",
        "clipw",
        "clipx",
        "clipy",
        "enabled",
        "endsize",
        "fillcolor",
        "flag",
        "fliprotate",
        "flipx",
        "flipy",
        "perspective",
        "remap",
        "reset",
        "rotate",
        "scalex",
        "scaley",
        "shiftx",
        "table",
        "tintcolor",
        "tintmode",
        "transbg",
        "watermode",
        "wavelength",
        "wavespeed",
        "wavetime",
        "xrepeat",
        "xspan",
        "yrepeat",
        "yspan"
    };

    static const char *proplist_energycost[] =
    {
        "cost",
        "disable",
        "mponly"
    };

    static const char *proplist_jumpframe[] =
    {
        "frame",
        "velocity.x",
        "velocity.y",
        "velocity.z"
    };

    static const char *proplist_dropframe[] =
    {
        "frame",
        "velocity.x",
        "velocity.y",
        "velocity.z"
    };

    static const char *proplist_followup[] =
    {
        "animation",
        "condition"
    };

    static const char *proplist_landframe[] =
    {
        "frame",
        "velocity.x",
        "velocity.y",
        "velocity.z"
    };

    static const char *proplist_loop[] =
    {
        "frame.max",
        "frame.min",
        "mode"
    };

    static const char *proplist_move[] =
    {
        "base",
        "x",
        "y",
        "z"
    };

    static const char *proplist_offset[] =
    {
        "x",
        "y"
    };

    static const char *proplist_platform[] =
    {
        "alt",
        "depth",
        "lowerleft",
        "lowerright",
        "upperleft",
        "upperright",
        "x",
        "z"
    };

    static const char *proplist_projectile[] =
    {
        "bomb",
        "flash",
        "knife",
        "shootframe",
        "star",
        "throwframe",
        "throwframe.base",
        "throwframe.x",
        "throwframe.y",
        "throwframe.z",
        "tossframe"
    };

    static const char *proplist_quakeframe[] =
    {
        "framestart",
        "intensity",
        "repeat"
    };

    static const char *proplist_range[] =
    {
        "a.max",
        "a.min",
        "b.max",
        "b.min",
        "x.max",
        "x.min",
        "z.max",
        "z.min"
    };

    static const char *proplist_shadow[] =
    {
        "frame",
        "x",
        "y"
    };

    static const char *proplist_size[] =
    {
        "x",
        "y",
        "z"
    };

    static const char *proplist_spawnframe[] =
    {
        "frame",
        "relative",
        "x",
        "y",
        "z"
    };

    static const char *proplist_spritea[] =
    {
        "centerx",
        "centery",
        "file",
        "offsetx",
        "offsety",
        "sprite"
    };

    static const char *proplist_summonframe[] =
    {
        "frame",
        "relative",
        "x",
        "y",
        "z"
    };

    static const char *proplist_weaponframe[] =
    {
        "frame",
        "weapon"
    };

 
tested on enemy, it works! it works on icon when you hit the enemy with nolife 0

now i see
but for my project i need that in icon position only for bosses portraits
now i know why is not working
 
Nice to see things getting done around here.  ;D
I'm too far into my current updates to try and use this update now, though I can definitely mess with it in the future.

x)
 
- commented the "drawing water ..." log msg

Oh God, thank you!
White Dragon, let me ask you something:

I know this is not a request topic, but how hard it would be to make the engine accept animated gifs instead of static gifs for things like title, menu, and all others? This is something such I would benefict almost every modder in this forum :)
 
O Ilusionista said:
I know this is not a request topic, but how hard it would be to make the engine accept animated gifs instead of static gifs for things like title, menu, and all others? This is something such I would benefict almost every modder in this forum :)

Afraid I'm going to have to veto this request. We have other plans for those areas that will give you a lot more control than animated .gif (think models). Adding animated .gif support would be too much bloat for overlapping functionality.

DC
 
:D Hello, i know this is not a request tread, but maybe can take a look at this particular bug that is trapped in the openbor pak select menu.

http://www.chronocrash.com/forum/index.php?topic=2235.0

And if you can in a future release add the command line option, well, that would be a plus.

Oh and what is neccesary to compile the psp and dreamcast versions?, i have the toolchains for kallistios and pspdevkit already installed.
 
Damon Caskey said:
O Ilusionista said:
I know this is not a request topic, but how hard it would be to make the engine accept animated gifs instead of static gifs for things like title, menu, and all others? This is something such I would benefict almost every modder in this forum :)

Afraid I'm going to have to veto this request. We have other plans for those areas that will give you a lot more control than animated .gif (think models). Adding animated .gif support would be too much bloat for overlapping functionality.

DC

I could swear you was going to deny this. I don't want to sound harsh, but this is something which really should be done on the past if we call this engine the ultimate 2d engine. Because from all the engines I know, OpenBor is the only one which doesn't do this natively.

And with this deny, I need to say that I have doubts (I am trying to translate a expression we have here, but all the translates are too hard) that this will come soon. And I was very happy and Faithfull about the new horizons of OpenBor, until I got this cold shower...
 
Status
Not open for further replies.
Back
Top Bottom