Skip to content

Releases: dgcor/DGEngine

DGEngine v0.3.5

19 Apr 11:01
Compare
Choose a tag to compare
DGEngine v0.3.5 Pre-release
Pre-release

Release for Windows

requires a C++17 compiler.

- add animated tiles to texturePack
- add function to query json documents
- add smooth level movement
- add viewport offset to layers
- allow setting size of level objects
- convert mapCoords to floats to support doing smooth move and smaller moves (within same mapPos)
- fix W letter size in font42
- fix loading of mods not in same folder
- force game draw region to be even in size (prevents small shifts when resizing  and anchoring)
- increase number of map layers
- load level using new query json
- make images (and Animation/BitmapButton) stretch on resize (when anchored)
- move timeout code to its own class
- move zoom step code into own class
- new max height resize code (maxWindowHeight)
- refactor includes
- refactor isometric math
- refactor level drawing
- refactor level drawing to support parallax
- refactor level parser to use json query
- remove MapCoord/ItemXY
- resize refactor
- save floats as ints if there's no fractional part
- smooth player move
- update automap position/size code
- update endian
- update file.copy to save json and replace the variables before saving
- update map parsing
- update speed step to fix blur when walking
- update tileset visibleRect code
- update to vs2019
- use unordered_map everywhere

- update gamefiles
- add diablo extended gamefiles (uses diablo and flare assets)
- add flare empyrean campaign maps
- smart resizing of game window

- add F1-F8 keyboard actions to add/remove gold, life, mana, experience (for testing purposes)
- add some initial quests (poisoned water, ogden's sign, farmer's orchard, etc)
- add all default levels (Diablo + Hellfire)
- add automap for all level types + flare

In Hellfire, to enter the crypt, drop the cathedral map near the church tomb. To enter the hive, talk to lester after reaching level 15 - press F7/F8 to change experience (and level).

Note: This is a work in progress. Some things aren't perfect and that's known.
Delete previous saves to avoid errors caused by changes.

DGEngine v0.3.4

07 Mar 19:41
Compare
Choose a tag to compare
DGEngine v0.3.4 Pre-release
Pre-release

Release for Windows

requires a C++17 compiler.

- add command line parameters to export tilesets and resources
- update offset code

- update gamefiles
- add F1-F8 keyboard actions to add/remove gold, life, mana, experience (for testing purposes)
- add some initial quests (poisoned water, ogden's sign, farmer's orchard, etc)
- add all default levels (Diablo + Hellfire)
- add automap for all level types + flare

In Hellfire, to enter the crypt, drop the cathedral map near the church tomb. To enter the hive, talk to lester after reaching level 15 - press F7/F8 to change experience (and level).

Note: This is a work in progress. Some things aren't perfect and that's known.
Delete previous saves to avoid errors caused by changes.

DGEngine v0.3.3

05 Mar 20:09
Compare
Choose a tag to compare
DGEngine v0.3.3 Pre-release
Pre-release

Release for Windows

requires a C++17 compiler.

- add action to load game
- add actions to mount/unmount
- add cursor position to game's getProperty
- add focus.update action
- add more properties to buttons
- add predicate to check if gamefile exists
- allow querying UIObjects for actions when parsing actions by name
- eval formulas in game.getProperty
- get list of queryable objects to show in menu
- move BitmapButton's resizable to Image
- refactor fadeInOut to use shader
- refactor FileUtils to use C++17 filesystem
- refactor GameUtils::get*Property
- refactor gamma shader to use range 0-100
- refactor getQueryableList
- refactor level drawing (remove height offset)
- refactor ResourceManager
- refactor to fix spell querying
- refactor UIObject's draw
- shader refactor to support dynamic shaders
- update game's getProperty
- update level drawing to improve performance

- update gamefiles
- add F1-F8 keyboard actions to add/remove gold, life, mana, experience (for testing purposes)
- add some initial quests (poisoned water, ogden's sign, farmer's orchard, etc)
- add all default levels (Diablo + Hellfire)
- add automap for all level types + flare

In Hellfire, to enter the crypt, drop the cathedral map near the church tomb. To enter the hive, talk to lester after reaching level 15 - press F7/F8 to change experience (and level).

Note: This is a work in progress. Some things aren't perfect and that's known.
Delete previous saves to avoid errors caused by changes.

DGEngine v0.3.2

20 Jan 17:23
Compare
Choose a tag to compare
DGEngine v0.3.2 Pre-release
Pre-release

Release for Windows

requires a C++17 compiler.

- add action to set multiple variables
- add actions to set cursor position
- add eval to levelObject's getProperty for Players, Items, SimpleLevelObject
- add level.enableHover
- add new random number generator (with normal distribution)
- add prefix/suffix price classifiers to ItemClass
- add relativeCoords to drawable.setPosition action
- add spell level to spells
- fix saving empty inventory removing it from player
- fix trim functions
- Formula refactor to support dynamic formulas
- increase item properties size
- refactor item price
- rework useItem to use random in formulas instead of having value and ValueMax
- save player's selected spell
- update canUseObject to use formulas for items too
- update Formula class
- update GameUtils::replace* functions
- update loadJson to load from file and use parameters
- update Spells
- update TextUtils
- update variable.set* actions

- update gamefiles
- update gamefiles (cathedral map)
- update gamefiles (item prefix/suffic prices)
- update gamefiles (rework inventory stash item pick to be more like the original)
- update gamefiles (spell book UI)
- update gamefiles (spell UI)
- add F1-F8 keyboard actions to add/remove gold, life, mana, experience (for testing purposes)
- add some initial quests (poisoned water, ogden's sign, farmer's orchard, etc)
- add all default levels (Diablo + Hellfire)
- add automap for all level types + flare

In Hellfire, to enter the crypt, drop the cathedral map near the church tomb. To enter the hive, talk to lester after reaching level 15 - press F7/F8 to change experience (and level).

Note: This is a work in progress. Some things aren't perfect and that's known.
Delete previous saves to avoid errors caused by changes.

DGEngine v0.3.0

25 Nov 11:02
Compare
Choose a tag to compare
DGEngine v0.3.0 Pre-release
Pre-release

Release for Windows

now requires a C++17 compiler.

- add automap code
- add FFmpeg4 support
- add gamma shader
- add horizontal/vertical offset to StringText (SFML 2.5.0)
- add if.regex condition
- add min/max value to InputText
- add multiple if condition action (ex: if x == 1 and y == 2)
- add new game actions
- add new scancodes to keyboard parser
- add palette support to BitmapFont
- allow setting action for any key press
- allow unmounting folders from physfs search path
- changed elapsed time code to process more steps in regards to the current fps limit
- fix blurry level when using odd window size by forcing level view to be even in size
- fully implement load/save game
- initial Spell implementation
- make add/remove gold code generic for all items that have the quantity/capacity properties
- refactor game object query syntax
- refactor getVar*
- refactor level drawing to support multiple layers (for automap)
- refactor Namer into Classifier
- refactor replaceVars to replace vars between || instead of between %% to avoid conflicts with queries
- refactor sfeMovie
- remane val to value
- remove support for old PhysFS
- replace captureInputEvents bool with InputEvent in Button/Level
- replace regex search with string::find
- replace string conversions with C++17's charconv
- require SFML 2.5
- update tileset generation code
- use string_view where appropriate

- update gamefiles
- add F1-F8 keyboard actions to add/remove gold, life, mana, experience (for testing purposes)
- add some initial quests (poisoned water, ogden's sign, farmer's orchard, etc)
- add all default levels (Diablo + Hellfire)
- add automap for all level types + flare

In Hellfire, to enter the crypt, drop the cathedral map near the church tomb. To enter the hive, talk to lester after reaching level 15 - press F7/F8 to change experience (and level).

Note: This is a work in progress. Some things aren't perfect and that's known.
Delete previous saves to avoid errors caused by changes.

DGEngine v0.2.2

22 Apr 08:53
Compare
Choose a tag to compare
DGEngine v0.2.2 Pre-release
Pre-release

Release for Windows

now requires a C++17 compiler.

- add action to force screen draw
- add defaultTile when loading map
- add endianness library
- add gsl
- add initial save code
- add new CEL/CL2 file decoding
- add out of bounds tile to map
- add palette shift functions
- implement color cycling
- mind endianness in PCX decoder
- refactor Dun/Min/Til to mind endianness
- refactor LevelMap
- update save code

- update gamefiles
- add F1-F8 keyboard actions to add/remove gold, life, mana, experience (for testing purposes)

Note: This is a work in progress. Some things aren't perfect and that's known.
Delete previous saves to avoid error caused by changes.

DGEngine v0.2.1

10 Mar 10:50
Compare
Choose a tag to compare
DGEngine v0.2.1 Pre-release
Pre-release

Release for Windows

now requires a C++17 compiler.

- add initial flare gamefiles
- add offset support to BaseLevelObject
- add support to load part of image
- add support to loading flare animation offsets
- add support to position drawables in top/center/bottom of screen
- BaseAnimation class
- cache images when loading
- don't hide cursor when loading new cursor
- fix glitches with level view when zooming resizing
- fix small bugs
- fix small bugs in menu
- refactor classes that use animations to use BaseAnimation
- refactor Fonts
- refactor items
- refactor level parser to get map size from map if none provided
- refactor PCX decoder
- refactor RectTexturePack
- refactor SimpleIndexedTexturePack to IndexedTexturePack
- refactor texturePack to support setting start index
- refactor texturePacks/level/itemClass/playerClass
- try to parse bitmap button and then text button (if bitmap button fails to parse)
- update level draw code
- update parseLevel to handle invalid data better

- update gamefiles
- add F1-F8 keyboard actions to add/remove gold, life, mana, experience (for testing purposes)

Note: This is a work in progress. Some things aren't perfect and that's known.
Delete previous saves to avoid error caused by changes.

DGEngine v0.2.0

07 Jan 20:40
Compare
Choose a tag to compare
DGEngine v0.2.0 Pre-release
Pre-release

Release for Windows

now requires a C++17 compiler.

- add drawable.center action
- add drawables to specific resource id
- add experience to level and update player to use it
- add hasDrawable to game
- add ImageFile
- add outline shader
- add setPalette to LevelObject
- add support for Tiled map files (saved as json)
- add support to creating textures from color arrays
- add TexturePacks
- batch level sprites
- draw cel objects using palettes (shaders)
- fix mouse wheel not working when maximized and stretched
- make BitmapButton inherit from Image
- merge image and bitmapButton
- merge Movie and MovieStub
- play sound when walking
- prevent duplicate drawable ids
- refactor animation to use TexturePack
- refactor audio/sound related code
- refactor BitmapButton and Image to use Sprite2 with palette support
- refactor cel code
- refactor Event
- refactor hardcoded tile sizes
- refactor IgnoreResource
- refactor ItemClass/PlayerClass to use BaseClass
- refactor level objects to use BaseLevelObject
- refactor level to draw base of pillar as 64x32 tile (faster)
- refactor parsers that use textures
- refactor player
- refactor StringButton
- refactor tileMaps to be TexturePacks
- remove ActImageSetTextureRectVec
- replace mapbox::variant with C++17's variant
- update BUILD.txt
- update cursor to allow setting color/palette
- update drawables with new palette textures code
- update Game.cpp
- update README.md
- update texture code
- use c++17's clamp


- update gamefiles
- add F1-F8 keyboard actions to add/remove gold, life, mana, experience (for testing purposes)
- add shader support for palettes
- outline on mouse hover

Note: This is a work in progress. Some things aren't perfect and that's known.
Delete previous saves to avoid error caused by changes.

DGEngine v0.1.21

02 Jul 15:40
Compare
Choose a tag to compare
DGEngine v0.1.21 Pre-release
Pre-release

Release for Windows

- update minimum SFML version to 2.4 (fix deprecated get/setColor)
- embed sfeMovie
- update cmake to add FFmpeg FindFFMPEG.cmake
- update deprecated code for FFMPEG3 upgrade in sfeMovie (90%)
- remove unused code from sfeMovie (SubtitleStream)

- add isUsable to item
- add touch support (untested)
- add UIText interface
- execute action given drawable id and action name
- refactor buttons
- refactor cel decoding (fix small font)
- refactor input events code
- refactor setText actions into one (text.setText)
- refactor StringButton, Text2
- update android minimum version
- update itemClass description to support skipping matches
- update UIObject interface to add method to get action

- update gamefiles
- add F1-F6 keyboard actions to add/remove gold, life, mana (for testing purposes)
- resize level panel if user panels are open/closed and if size = 640x480 and stretchToFit = true
- update item prefixes and descriptions
- update level right click

Note: This is a work in progress. Some things aren't perfect and that's known.
Delete previous saves to avoid error caused by changes.

DGEngine v0.1.20

07 Jun 19:07
Compare
Choose a tag to compare
DGEngine v0.1.20 Pre-release
Pre-release

Release for Windows

- add hasEquipedItemType to player
- add subType to item class
- add support to not play sounds that are currently playing
- add support to using previously defined action in new itemClass action
- fix ActPlayerAddToProperty to work with different number types
- refactor player celTexture code
- refactor switch condition to support using previously defined case's actions
- update gamefiles

- add F1-F6 keyboard actions to add/remove gold, life, mana (for testing purposes)
- update player stats code to ignore equipped items that are no longer equipable
- change player texture depending on Armor/Weapon/Shield currently equipped

Note: This is a work in progress. Some things aren't perfect and that's known.
Delete previous saves to avoid error caused by changes.