Obsi Game Engine (1.5.0) by Sima :3
# Obsi Game Engine (1.5.0) Changes from the previous release: * Added new object with filesystem: `obsi.File` * Added new module for working with game's directory: `obsi.filesystem` (very similar to Love2D's except for some missing features.) * Added new functions for the module: `obsi.filesystem.newFile`, `obsi.filesystem.getInfo`, `obsi.filesystem.read`, `obsi.filesystem.write`, `obsi.filesystem.lines` * Modules like `obsi.audio` and `obsi.graphics` now depend on `obsi.filesystem` * New version of rendering API `pixelbox` is now used, which is 5-7x better than the older version. Allows native performance for better resolution. * Some error messages were changed for better debugging of the engine.
Obsi 2D Game Engine (CC:Tweaked)
Obsi is no longer in development. Please use Obsi 2 instead.
Obsi is a game engine that was designed specifically for CC:Tweaked.
Features of the game engine:
- It's 2D (I literally didn't implement triangles. DON'T EVEN TRY TO MAKE IT 3D.)
- Very similar to Love2D - if you are familiar with that engine, Obsi will be very easy to grasp!
- Customizable color palette - if you think the colors that CC provides you with are very limited, why not change them?
- Better image format - Obsi supports another image format besides
.nfp
called.orli
(stands for "Obsi Run-Length Image"). This format can be up to 6-10x smaller than.nfp
. - 3 Different renderering APIs for optimal drawing to the terminal. Including:
pixelbox
(by Dev9551),parea
,hmon
. - Changing rendering APIs on runtime (The default is
parea
, but it can be changed in theconfig.lua
file of the game's folder.) - Resizability - you can change the resolution ingame and the engine will still perform fine! (if it doesn't then it's your fault, probably)
- Tilesheets - if your image is a map of images with the same width and height, Obsi can directly give you an array of images using
obsi.graphics.newImagesFromTilesheet
. - Support for noteblocks and formats like
.nbs
(Thanks to Xella) and.onb
(the latter is just mostly a csv). - Playing/pausing/unpausing/stopping noteblock audio whenever you like.
- Scene manager + global state.
Features that are not implemented:
- Networking (Technically possible since 1.4.0, but no direct support for it yet.)
- Support for
.png
(Yeah, Dev9551, I've seen your png parser, but Holy Christ, it's too large!) - Triangles (Did I mention that this is a 2D game engine?)
- Bundler/minifier - There are plans for Obsi to have a bundler in the repository, so that when you download it, you can bundle everything up and reduce its size significantly.
The engine doesn't have a release version, so you can either download it with git clone
or pastebin
Credits:
9551-Dev - For the Pixelbox rendering API.
Xella37 - For the original parsing function for NBS file format.
Obsi Game Engine (1.5.0)
Changes from the previous release:
- Added new object with filesystem:
obsi.File
- Added new module for working with game's directory:
obsi.filesystem
(very similar to Love2D's except for some missing features.) - Added new functions for the module:
obsi.filesystem.newFile
,obsi.filesystem.getInfo
,obsi.filesystem.read
,obsi.filesystem.write
,obsi.filesystem.lines
- Modules like
obsi.audio
andobsi.graphics
now depend onobsi.filesystem
- New version of rendering API
pixelbox
is now used, which is 5-7x better than the older version. Allows native performance for better resolution. - Some error messages were changed for better debugging of the engine.
wget run https://pinestore.cc/d/27Git Repository