New pages
Appearance
17 August 2026
- 17:2117:21, 17 August 2026 Takedamagescript (hist | edit) [12,795 bytes] Dcurrent (talk | contribs) (Created page with "<code>takedamagescript</code> is OpenBOR's recipient-side post-damage combat hook. It runs after the engine calculates offense and defense and changes the recipient's HP, but before final death processing and most pain, fall, or death reaction selection. This placement gives creators access to the resolved recipient state while the outcome can still be redirected. Scripts may prevent an otherwise lethal result, trigger boss phases, cap damage, convert lost health into a...") Tag: Visual edit: Switched
- 16:3916:39, 17 August 2026 Ondoattackscript (hist | edit) [14,199 bytes] Dcurrent (talk | contribs) (Created page with "<code>ondoattackscript</code> is a model event that runs when an entity's attack becomes a candidate to hit another entity. OpenBOR invokes the recipient's script first and the conferring entity's script second, before native block, counter, and damage resolution. The event is an attack-interception hook rather than hit confirmation. Scripts may inspect the proposed attack, coordinate custom responses, or cancel native handling through the shared last-hit confirmation v...") Tag: Visual edit: Switched
- 16:2816:28, 17 August 2026 Didhitscript (hist | edit) [9,241 bytes] Dcurrent (talk | contribs) (Created page with "<code>didhitscript</code> is a model event that runs on the entity conferring a successfully accepted hit. It provides the attacker, recipient, and raw attack properties to script after OpenBOR has determined the collision will count as a hit. The event is hit confirmation rather than damage confirmation. It also runs when the recipient blocks, when an accepted hit produces no actual HP loss, when an item is collected, and when configured landing damage is applied. It d...") Tag: Visual edit: Switched
16 August 2026
- 00:5900:59, 16 August 2026 Subscreens (hist | edit) [34,806 bytes] Dcurrent (talk | contribs) (Created page with "Subscreens are script-allocated, off-screen 32-bit drawing surfaces. Scripts can compose sprites, text, primitive shapes, and selected parts of the sprite queue on a subscreen, then submit the completed result to the main drawing queue with <code>drawscreen()</code>. Unlike queued draw commands, pixels written to a subscreen remain there until they are cleared, overwritten, or the screen is released. This retained surface makes subscreens useful both as composition work...") Tag: Visual edit
15 August 2026
- 21:4121:41, 15 August 2026 Direct Drawing (hist | edit) [31,667 bytes] Dcurrent (talk | contribs) (Created page with "OpenBOR direct drawing lets scripts place text, sprites, dots, lines, boxes, and complete off-screen surfaces into the video output. Two related paths are available: queued drawing, which joins the engine's normal depth-sorted render queue, and target-screen drawing, which changes a selected screen immediately. This article describes the direct-draw API, resource ownership, ordering, color and blend handling, drawmethod control, and off-screen composition. == Parts of...")
12 August 2026
- 19:1719:17, 12 August 2026 Movie Player (hist | edit) [39,696 bytes] Dcurrent (talk | contribs) (Created page with "OpenBOR provides a reusable source, playback, and channel system for movie media. The API uses the generic <code>movie_*</code> namespace so additional container or codec support can be added later. The current backend plays WebM files containing VP8 video and optional Vorbis audio. The movie system has three main parts: * '''Source''' - A streamed path or cached WebM byte buffer identified by a source ID. * '''Playback''' - One active use of a source, represented by a...") Tag: Visual edit: Switched
- 00:1700:17, 12 August 2026 Runtime Script Compilation (hist | edit) [15,828 bytes] Dcurrent (talk | contribs) (Created page with "OpenBOR can allocate a new script object, load source code into it, compile that source while the module is running, and execute the resulting program on demand. This makes runtime scripts useful for optional systems, generated behavior, development tools, modular content, and other cases where a script should not be tied to one of OpenBOR's predefined events. Runtime compilation is not a single evaluation call. The feature uses an owned script object with a four-stage...") Tag: Visual edit: Switched
7 August 2026
- 00:0400:04, 7 August 2026 Animation Overview (hist | edit) [15,248 bytes] Dcurrent (talk | contribs) (Created page with "Animations are one of OpenBOR's fundamental building blocks. A model uses animations to describe how it looks and behaves over time. Walking, standing, attacking, falling, taking damage, and many other actions are represented by ordered animation frames. Each animation belongs to a model and occupies a recognized animation slot such as <code>idle</code>, <code>walk</code>, <code>jump</code>, <code>pain</code>, or <code>attack1</code>. OpenBOR's native logic selects many...") Tag: Visual edit: Switched
3 August 2026
- 21:0621:06, 3 August 2026 Didblockscript (hist | edit) [7,936 bytes] Dcurrent (talk | contribs) (Redirected page to Blocking#Didblock Script) Tags: New redirect Visual edit
- 20:0120:01, 3 August 2026 Blocking (hist | edit) [24,468 bytes] Dcurrent (talk | contribs) (Created page with "Blocking allows an entity to intercept an eligible attack before ordinary hit damage and reactions are applied. Successful blocks may play an impact animation, spawn a block flash, play a block sound, consume guard points, apply chip damage, and execute block scripts. The native system separates three questions: # '''Will the entity attempt to block?''' Player input or AI behavior establishes a blocking state. # '''Can the attack be blocked?''' Facing, native guard poi...") Tag: Visual edit
2 August 2026
- 01:2101:21, 2 August 2026 Audio Overview (hist | edit) [51,950 bytes] Dcurrent (talk | contribs) (Created page with "OpenBOR uses a unified sample and channel system for sound effects, ambience, voice, and most music playback. WAV and Ogg Vorbis files may be retained in memory or streamed from module data. Music commands remain available as a legacy convenience interface and route WAV or Ogg playback through the ordinary sound channel system. The audio system has three main parts: * '''Sample''' - Loaded audio data or streaming metadata identified by a sample ID. * '''Playback''' - O...") Tag: Visual edit: Switched
27 July 2026
- 16:4516:45, 27 July 2026 Factions (hist | edit) [20,326 bytes] Dcurrent (talk | contribs) (Created page with "Factions control how entities interact with each other. Faction settings determine which groups an entity belongs to, which entities it considers hostile, and which entities it can damage. Faction properties are divided into two systems: * '''Group factions''' assign entities to named groups and compare those memberships. * '''Type factions''' use legacy entity types such as <code>player</code>, <code>enemy</code>, and <code>npc</code>. Both systems may be combined fo...") Tag: Visual edit: Switched
26 July 2026
- 03:1103:11, 26 July 2026 Graphics Overview (hist | edit) [12,164 bytes] Dcurrent (talk | contribs) (Created page with "OpenBOR uses a software-composited graphics system designed primarily for sprite-based games. Images, background layers, entities, text, primitive shapes, and scripted subscreens are collected into a drawing queue, ordered by layer, rendered into a 32-bit logical screen, and finally presented by the platform video backend. This arrangement separates game graphics from the physical display. Creators define the logical resolution and visual composition of a project, while...") Tag: Visual edit
- 02:0302:03, 26 July 2026 Hit Effects (hist | edit) [12,036 bytes] Dcurrent (talk | contribs) (Created page with "Hit effects are sounds and visual effects played in response to in-game hits. They provide impact feedback and help communicate damage, blocking, and other combat results. OpenBOR includes native hit-sound and hit-flash systems that creators may configure to give projects a distinct presentation. ''Documentation in progress.'' == Flash Adjustments == === Position and Layer === OpenBOR games commonly allow movement along the Z axis. Hit flashes must therefore be positi...") Tag: Visual edit
25 July 2026
- 17:0117:01, 25 July 2026 Model Registry (hist | edit) [19,076 bytes] Dcurrent (talk | contribs) (Created page with "The model registry is arguably the single most important aspect of an OpenBOR project, and is a required element. It is not be confused with individual models, which are singular, reusable templates used to create players, enemies, items, obstacles, projectiles, and other entities. <code>models.txt</code> is the project-wide model registry. Its default location is:<pre> data/models.txt </pre>The file serves three primary purposes: * Registers model names and their def...") Tag: Visual edit
- 00:1700:17, 25 July 2026 Logging (hist | edit) [10,386 bytes] Dcurrent (talk | contribs) (Created page with "OpenBOR maintains two text log files for diagnostic and development purposes. Although their names are similar, each log serves a different purpose. === OpenBOR Log === The primary operational log. It records engine initialization, resource loading, warnings, errors, script exceptions, shutdown information, and creator-defined messages written with the <code>log()</code> script function. === Script Log === A specialized development log containing script code generate...") Tag: Visual edit
24 July 2026
- 12:5112:51, 24 July 2026 File Operations (hist | edit) [22,243 bytes] Dcurrent (talk | contribs) (Created page with "OpenBOR supports file CRUD - create, read, update, and delete - through an API called filestream. Scripts can load external files into memory, read structured text, assemble or revise content, save the result to disk, and remove files that are no longer needed. Common uses include custom configuration, persistent game data, generated model or script files, and data exchanged with external tools. Despite the name, an OpenBOR filestream is not a continuously open operatin...") Tag: Visual edit
22 July 2026
- 18:3718:37, 22 July 2026 OpenBOR Overview (hist | edit) [14,173 bytes] Dcurrent (talk | contribs) (Created page with "This article provides a general overview of how the OpenBOR engine organizes and operates a game module. Individual systems and commands are covered in their respective articles. '''Rule 0:''' OpenBOR’s native behaviors are starting defaults, not immutable rules. Virtually every system can be adjusted, extended, or replaced through configuration and script. == Engine Structure == An OpenBOR game consists of two principal components: * '''Engine''' – The executable...") Tag: Visual edit
- 16:0716:07, 22 July 2026 Damage Control (hist | edit) [10,289 bytes] Dcurrent (talk | contribs) (Created page with "OpenBOR includes a native system of damage control and mitigation. These settings adjust how entities deliver and respond to damage from different sources. For example, a character may resist, ignore, or absorb burn damage while remaining vulnerable to another attack type. Offense properties modify damage delivered by an attacker. Defense properties modify incoming damage and reactions for the target. Both sets of properties may be configured independently for each At...") Tag: Visual edit
- 13:4113:41, 22 July 2026 Attack Type (hist | edit) [8,113 bytes] Dcurrent (talk | contribs) (Created page with "In OpenBOR, each attack is assigned a type. Attack types are then used to handle how the target will react when struck by a given attack. In the simplest example, a standard attack might cause the target to buckle in pain, whereas another would light them on fire, and a third would freeze them in place for a time. More sophisticated attributes allow differing animations when recovering, making a target more (or less) resistant to specific attack types, and so on. In mod...") Tag: Visual edit
- 11:0411:04, 22 July 2026 Geometry Overview (hist | edit) [6,819 bytes] Dcurrent (talk | contribs) (Created page with "OpenBOR uses the Cartesian coordinate system to describe locations on the display screen and within the game world. The behavior of an axis depends on whether it describes a static location, velocity, dimensions, or another property. Axis behavior also varies depending on whether the coordinates apply to the screen or the game world. == Game Field == The game field is the “world”—a virtual space occupied by stages and entities during gameplay. It is a three-dimens...") Tag: Visual edit
- 01:1001:10, 22 July 2026 Collision (hist | edit) [27,164 bytes] Dcurrent (talk | contribs) (Created page with "Collision boxes tell OpenBOR (or any other game engine) what portions of an entity are able to hit or get hit and what areas of a level are walls or platforms. In OpenBOR these boxes are geometric cubes the engine continuously compares to each other – whenever two or more cubes overlap, that’s a collision and the engine will react accordingly. Depending on the type of collision box, it will have other properties that tell the engine how to handle the collision event...") Tag: Visual edit: Switched
- 00:4500:45, 22 July 2026 Constants (hist | edit) [4,403 bytes] Dcurrent (talk | contribs) (Created page with "== Introduction == Constants are named values just like variables, except constants never change while the engine is running (hence the name). Constants provide a way to give any value a human-readable label without using memory to store it as a variable. They are highly valuable for lists of static values and as a tool for making code easier to read. OpenBOR relies heavily on constants. Nearly every list of items, properties, or values is compris...") Tag: Visual edit
21 July 2026
- 21:1821:18, 21 July 2026 Legacy Manual (hist | edit) [387,827 bytes] Dcurrent (talk | contribs) (Created page with "'''OpenBoR Guide''' by Fugue & Bloodbane. Currently updated by O Ilusionista. '''Note to users of older platforms:''' ''Dreamcast, GP2X, and Wiz platforms are officially discontinued since build 4453.'' Therefore, some things may work differently on older ports and any configuration that has a build value greater than 4453 will not work on these platforms. * The latest releases can be downloaded from GitHub: https://github.com/DCurrent/openbor/releases * If you nee...") Tag: Visual edit: Switched
- 19:2219:22, 21 July 2026 Arrays (hist | edit) [12,426 bytes] Dcurrent (talk | contribs) (Created page with "OpenBOR supports indexed and string-keyed arrays. Both forms are provided by the same allocated array object, though they use different internal storage and have different performance characteristics. Arrays are allocated in the script heap and referenced through pointers. Use <code>free()</code> when an array is no longer needed. <syntaxhighlight lang="c" line> void values = array(4); // Use the array. free(values); </syntaxhighlight> == Indexed Arrays == Indexed...")
- 18:3618:36, 21 July 2026 Strings (hist | edit) [3,082 bytes] Dcurrent (talk | contribs) (Created page with "Strings are sequences of characters used to represent text. OpenBOR Script stores strings as variants declared with the <code>char</code> prefix. <syntaxhighlight lang="c" line="">char message = "Hello world!";</syntaxhighlight> == Concatenation == The <code>+</code> operator concatenates strings. If either operand is a string, OpenBOR converts the other operand to text and returns a string. <syntaxhighlight lang="c" line> char label = "Health: "; int health = 100;...") Tag: Visual edit
- 17:5017:50, 21 July 2026 Variables Overview (hist | edit) [8,312 bytes] Dcurrent (talk | contribs) (Created page with "Variables are named identifiers that store values. Anyone who has worked with algebra has already used variables. They are one of the fundamental building blocks of scripting. == Type == Variable type describes the kind of data a variable contains and how that data behaves in expressions and operations. OpenBOR Script is weakly typed. Every variable is stored internally as a variant, and the engine may change its type automatically as values are assigned or operations...") Tag: Visual edit: Switched
- 15:2615:26, 21 July 2026 Floor() (hist | edit) [437 bytes] Dcurrent (talk | contribs) (Created page with "Accepts a numeric value and returns the largest integer less than or equal to the input using the C <code>floor()</code> function. Rounding proceeds downward toward negative infinity. For example, <code>floor(-3.8)</code> returns <code>-4</code>. <syntaxhighlight lang="c" line> float input = 3.8; int result = floor(input); // result = 3 </syntaxhighlight> Category:OpenBOR Index Category:Script Functions Category:Math")
- 15:2515:25, 21 July 2026 Ceil() (hist | edit) [436 bytes] Dcurrent (talk | contribs) (Created page with "Accepts a numeric value and returns the smallest integer greater than or equal to the input using the C <code>ceil()</code> function. Rounding proceeds upward toward positive infinity. For example, <code>ceil(-3.8)</code> returns <code>-3</code>. <syntaxhighlight lang="c" line> float input = 3.2; int result = ceil(input); // result = 4 </syntaxhighlight> Category:OpenBOR Index Category:Script Functions Category:Math")
- 15:2315:23, 21 July 2026 Atan2() (hist | edit) [662 bytes] Dcurrent (talk | contribs) (Created page with "Accepts Y and X components and returns their directional angle in degrees using the C <code>atan2()</code> function: <code>atan2(y, x) * 180 / π</code>. <syntaxhighlight lang="c" line> float y = -1.0; float x = 1.0; float result = atan2(y, x); // result = -45.0 </syntaxhighlight> Unlike atan(), the function uses the signs of both components to determine the correct quadrant. The result ranges from <code>-180</code> through <code>180</code> degrees. For a result no...")
- 15:2115:21, 21 July 2026 Angle() (hist | edit) [763 bytes] Dcurrent (talk | contribs) (Created page with "Accepts Y and X components and returns their directional angle in degrees. The function calculates <code>atan2(y, x)</code>, converts the result from radians to degrees, and normalizes it to the range of <code>0</code> through less than <code>360</code>. <syntaxhighlight lang="c" line> float y = 1.0; float x = 1.0; float result = angle(y, x); // result = 45.0 </syntaxhighlight> The resulting directions are: * <code>0</code> degrees - Positive X. * <code>90</code> de...")
- 15:1815:18, 21 July 2026 Abs() (hist | edit) [509 bytes] Dcurrent (talk | contribs) (Created page with "Accepts a numeric value and returns its absolute value - its non-negative magnitude without regard to sign. Integer inputs return an integer, while decimal inputs return a decimal. '''Whole'''<syntaxhighlight lang="c" line="1">int input = -5; int result = abs(input); // result = 5</syntaxhighlight>'''Decimal'''<syntaxhighlight lang="c" line="1"> float input = -3.8; float result = abs(input); // result = 3.8 </syntaxhighlight> Category:OpenBOR Index Category:Sc...") Tag: Visual edit: Switched
- 15:1115:11, 21 July 2026 Srand() (hist | edit) [206 bytes] Dcurrent (talk | contribs) (Created page with "Updates global seed for random number generator.<syntaxhighlight lang="c" line="1"> int seed = 78; srand(seed); </syntaxhighlight> Category:OpenBOR Index Category:Script Functions Category:Math") Tag: Visual edit
- 15:0815:08, 21 July 2026 Rand() (hist | edit) [543 bytes] Dcurrent (talk | contribs) (Created page with "Returns a pseudorandom integer generated by OpenBOR’s custom 32-bit random-number generator.<syntaxhighlight lang="c" line="1"> int random = rand() % 100; // random = 0 to 99 </syntaxhighlight> == Implementation == OpenBOR’s generator combines a linear congruential step with additional bitwise mixing and rotation. Generator state is maintained in a 64-bit global seed initialized to <code>1234567890</code>. You may update or replace the seed with srand(). Cate...") Tag: Visual edit
- 15:0215:02, 21 July 2026 Round() (hist | edit) [362 bytes] Dcurrent (talk | contribs) (Created page with "Accepts a decimal value and returns a decimal rounded to the nearest whole number using the C <code>round()</code> function. Halfway values are rounded away from zero.<syntaxhighlight lang="c" line="1"> float input = 3.5; float result = round(input); // result = 4.0 </syntaxhighlight> Category:OpenBOR Index Category:Script Functions Category:Math") Tag: Visual edit
- 15:0015:00, 21 July 2026 Trunc() (hist | edit) [371 bytes] Dcurrent (talk | contribs) (Created page with "Accepts a decimal value and returns its integer portion by discarding all digits after the decimal point. Truncation proceeds toward zero using the C <code>trunc()</code> function.<syntaxhighlight lang="c" line="1"> float input = 3.8; int result = trunc(input); // result = 3 </syntaxhighlight> Category:OpenBOR Index Category:Script Functions Category:Math") Tag: Visual edit
- 14:5714:57, 21 July 2026 Atan() (hist | edit) [539 bytes] Dcurrent (talk | contribs) (Created page with "Accepts a decimal value and returns its arc tangent in degrees using the C <code>atan()</code> function: <code>atan(input) * 180 / π</code>.<syntaxhighlight lang="c" line="1"> float input = 1.0; float result = atan(input); // result = 45.0 </syntaxhighlight> Unlike asin() and acos(), <code>atan()</code> accepts values across the full numeric range and requires no domain clamping. Its result falls between <code>-90</code> and <code>90</code> degrees. Category...") Tag: Visual edit originally created as "Atan"
- 14:4814:48, 21 July 2026 Acos() (hist | edit) [466 bytes] Dcurrent (talk | contribs) (Created page with "Accepts a decimal value and returns its arc cosine in degrees using the C <code>acos()</code> function: <code>acos(input) * 180 / π</code>. Valid arc-cosine inputs range from <code>-1</code> to <code>1</code>. Values outside this range are clamped to the nearest limit.<syntaxhighlight lang="c" line="1"> float input = 0.5; float result = acos(input); // result = 60.0 </syntaxhighlight>") Tag: Visual edit
- 14:4314:43, 21 July 2026 Asin() (hist | edit) [462 bytes] Dcurrent (talk | contribs) (Created page with "Accepts a decimal value and returns its arc sine in degrees using the C <code>asin()</code> function: <code>asin(input) × 180 / π</code>. Valid arc-sine inputs range from <code>-1</code> to <code>1</code>. Values outside this range are clamped to the nearest limit.<syntaxhighlight lang="c" line="1"> float input = 0.5; float result = acos(input); // result = 60.0 </syntaxhighlight> Category:OpenBOR Index Category:Script Functions Category:Math") Tag: Visual edit
- 14:3914:39, 21 July 2026 Pow() (hist | edit) [436 bytes] Dcurrent (talk | contribs) (Created page with "Batman punches you in the face. Also, a function that accepts two floating decimals (numeric, power). Raises input numeric to input power using the C <code>pow()</code> function. center|frame <syntaxhighlight lang="c" line="1"> float input = 2.0; float power = 3.0; float result = pow(input, power); // result = 6.0 </syntaxhighlight> Category:OpenBOR Index Category:Script Functions Category:Math") Tag: Visual edit
- 14:3414:34, 21 July 2026 Sqrt() (hist | edit) [293 bytes] Dcurrent (talk | contribs) (Created page with "Accepts a floating decimal and returns the inverse square root utilizing the Newton-Raphson method.<syntaxhighlight lang="c" line="1"> float input = 4.0; float result = sqrt(input); // result = 2.0 </syntaxhighlight> Category:OpenBOR Index Category:Script Functions Category:Math") Tag: Visual edit
- 14:3214:32, 21 July 2026 Scos() (hist | edit) [468 bytes] Dcurrent (talk | contribs) (Created page with "Accepts a floating-point angle in degrees and calculates its sine using the C <code>cos()</code> function: <code>cos(input * π / 180)</code>. For integer angles, use cos() instead to take advantage of its faster lookup table.<syntaxhighlight lang="c" line="1"> float input = 1.0; // Example input angle in degrees float result = scos(input); // result = 0.999847695 </syntaxhighlight> Category:OpenBOR Index Category:Script Functions Category:Math") Tag: Visual edit
- 12:5112:51, 21 July 2026 Sin() (hist | edit) [7,939 bytes] Dcurrent (talk | contribs) (Created page with "Accepts an angle in whole degrees and returns its sine from a 360-entry lookup table. Angles outside the range of 0-359 are wrapped to that range. For fractional angles, use ssin().<syntaxhighlight lang="c" line="1"> int input = 1; float result = sin(input); // result = 0.01745240643728351 </syntaxhighlight> == Lookup Table == <syntaxhighlight lang="c"> float <result> = sin_table[(<input> % 360 + 360) % 360]; // Lookup formula. float sin_table[] = //360...")
- 12:5012:50, 21 July 2026 Ssin() (hist | edit) [470 bytes] Dcurrent (talk | contribs) (Created page with "Accepts a floating input angle and applies the C <code>sin()</code> function as follows: <code>sin({input} * 3.14159265 / 180.0)</code>. For acquiring sine from integer angles, use the sin() function instead. <syntaxhighlight lang="c" line="1"> float input = 1.0; // Example input angle in degrees float result = ssin(input); // result = 0.017452406 </syntaxhighlight> Category:OpenBOR Index Category:Script Functions Category:Math")
- 12:4512:45, 21 July 2026 Cos() (hist | edit) [7,964 bytes] Dcurrent (talk | contribs) (Created page with "Accepts an integer angle input of <code>0</code> to <code>359</code> and outputs the cosine from the following lookup table. Out of bounds values are capped between <code>0</code> to <code>359</code>.<syntaxhighlight lang="c" line="1"> int input = 1; float result = cos(input); // result = 0.9998476951563913 </syntaxhighlight> == Lookup Table == <syntaxhighlight lang="c"> float {result} = cos_table[({input} % 360 + 360) % 360]; // Lookup formula. float cos_table[] = /...") Tag: Visual edit
20 July 2026
- 13:0813:08, 20 July 2026 Player Property (hist | edit) [4,728 bytes] Dcurrent (talk | contribs) (Created page with "== Introduction == Player property is API interface for OpenBOR's player structure. This structure is responsible for tracking player game state, lives, credits, control inputs, and transferable status between player controlled entities. Each player has an independent instance of the player structure maintained globally. == Obtaining Object == The player property is a global array of structures referenced by player index. === Single Access === You may obtain the point...") Tag: Visual edit
18 July 2026
- 00:4800:48, 18 July 2026 Controls (hist | edit) [20,733 bytes] Dcurrent (talk | contribs) (Created page with "== Introduction == OpenBOR’s native control scheme is designed to be intuitive as possible and conform to established standards for side scrolling action games. Through various native options and scripting techniques (see below), creators can map these controls to perform any desired action. You can even rename or remove commands entirely to create a unique control scheme specific to your game. In turn, players may map available commands to desired keys or buttons via...") Tag: Visual edit
12 July 2026
- 21:2621:26, 12 July 2026 Script Overview (hist | edit) [5,920 bytes] Dcurrent (talk | contribs) (Created page with "== Introduction == OpenBOR includes a C-based scripting engine that allows creators to build customized or all new functionality into their games. Scripts may execute in response to a wide range of engine events, including animation-frame updates, engine cycles, timer ticks, collisions, damage, key input, and many others. Creators can implement scripts through native define-file paths, user-defined libraries, or code inserted directly into level files and model sheets....") Tag: Visual edit
- 11:5011:50, 12 July 2026 Heads Up Display (hist | edit) [2,003 bytes] Dcurrent (talk | contribs) (Created page with "== Introduction == OpenBOR includes a fully functional HUD system out of the box. No single hard-coded HUD system could accommodate every visual design creators may want across all game genres. OpenBOR’s native HUD nevertheless supports most needs associated with beat ’em up and platformer games. For more advanced HUD designs, creators are encouraged to use subscreens and direct-drawing primitives. These tools make it possible to create virtually any graphical effe...") Tag: Visual edit
11 July 2026
- 15:1515:15, 11 July 2026 Time (hist | edit) [17,053 bytes] Dcurrent (talk | contribs) (Initial creation.) Tag: Visual edit