Egoboo Development Diary Part 3 - 03.08.2015
t’s time for the third part of the development diary series of Egoboo!
Last time we focused on converting to SDL 2.0, fixing bugs and converting
the codebase to C++. This time we are happy to announce some new gameplay
improvements in addition to the usual list of bugfixes.
Egoboo finally has a proper user-interface in-game. We have designed the
current system so that it is easy to expand or improve upon. This features
a new inventory and character screen. Now you can finally examine your
character attributes and defences.
New character and inventory interface
The minimap can now be moved around and resized using the M button. Now the
icon of characters or monsters is drawn on the minimap instead of tiny blips.
New minimap zoom feature
A new simplified and improved Video Options screen is implemented. A similar
screen for Audio and Input Binding is in the works.
Some focus has been made into making the character attributes more interesting.
Egoboo currently features the following character attributes:
Formerly known as Strength. Represents the fortitude, power and physical prowess
of your character. Your Might attribute directly affects the following:
- This increases damage with melee weapons
- Determines knockback effect
- Jump power
- Block chance for shields and chance to break a Block
- Increases character size
Formerly known as Dexterity. Represents how fast, energic and quick your character
can react and move. A character's Agility directly affects the following things:
- Increases attack speed
- Movement speed
- Hit chance with ranged weapons
- Damage with ranged weapons
- Chance to disarm traps and unlock chests
Both the Intelligence and Wisdom attributes were merged into a single Intellect
attribute. Too little separated these two attributes in terms of game mechanics
so it made sense to merge them to make intellect an overall more interesting
attribute. Intellect is the measurement how clever, wise and perceptive your
character is and affects the following:
- Damage with all spells (both Arcane and Divine)
- Hit chance for spells
- Experience gain
- Chance to find traps and hidden treasure
How fast your mana regenerates per second. Was formerly called Mana Return.
A completely new attribute that determines how fast your life regenerates per second.
Only special effects and magic usually gives life regeneration.
Formerly known as Mana Flow, your Spell Power determines which spells you can cast
and how powerful they are. For example: a Wizard with 3 Spell Power can summon 3
Magic Missiles while an Adventurer with 1 Spell Power can only summon one Magic Missile.
Character development is integral in any rogue-like RPG and Egoboo is no exception
to that. We felt that the old level up system did not really feel satisfying so we
have expanded this using the new GUI system mentioned above. Each time your character
gains an experience level, you clearly see which of your attributes is improved and by
how much. Furthermore you get to select a Perk to learn. A Perk is a unique bonus that
your character gains permanently. Some of them unlock new abilities or improve your
existing ones. Each class has a different set of Perks to select from and some Perks
are unique to each class. So far we have added almost 100 unique Perks!
Here are some examples of the Perks an Adventurer can learn:
Athletics: +25% Jump Power and +50% movement in water
Rally: Nearby allies gain +10% movement speed and attack damage
Dodge: +1% chance per Agility to avoid damage.
Which one to pick?
Bugfixes and Changes
- Fix collision boxes so that attacks actually hurt their targets and cause knockback
- Faster texture loading by only loading textures into memory when they are actually needed
- Fix Gonne particles spawning in the ground
- Changed how damage resistance works so that it allows for more granularity and prevent
resistance to block damage completely. (unless complete immunity was intended)
- Fix so that particles spawned by Weapons are owned by the holder of the Weapon
- Fix particles not properly de-spawning (e.g Soldier Starter)
- Replaced or removed some IDSZ flags in Objects that weren’t doing what was intended
- Fix some Particles not being properly rendered
- Healer and Paladin Healing cloud can now properly hit multiple enemies or friends
- Fix knockback logic
- Swipe weapons like Claw or Sword can properly hit multiple enemies
- Make aiming with ranged weapons easier
- Improve renderer logic
- Improved memory management to reduce chance of memory leaks
- Screenshots are not saved in PNG format
- Prevent some in-game messages from being spammed
- Game performance improvements
- Improved cross-platform interoperability
- Crash fixes
- Many, many other minor bugs resolved
We need you!
We always welcome help! Pop into the developer chat
if you wish to help us. We need anything from coders, graphic artist, web designer to game
testers. We would like to have someone draw a new interface for the main menu among other
things. This website sorely needs to be remade and kept up to date with 2015.
We have now fully migrated to Visual Studio 2015 and dropped support for 2013 so that we can
fully utilize the new features of C++11. We have also an up-to-date build system for both MinGW
and Linux using GCC. OS X has also a working build system.
Egoboo Development Diary Part 2 - 03.06.2015
Hello and welcome to the second part of the Egoboo Development Diary series! We are happy to
announce that the game is already in a much better and stable state since our previous diary post.
There still remains work to be done before the game is playable enough for end-users (some options
features missing, still some game blocking bugs). We still need playtesters though and to facilitate
this we are working towards introducing daily-builds to give playtesters access to the bleeding-edge
version of Egoboo!
Upgrade to SDL 2.0
One of the major milestones of the roadmap has been completed, the conversion to SDL 2.0. For the
user this means many minor improvements such as better platform compatibility, improved fullscreen
support, improved keyboard support and many minor annoyances are gone. SDL 2.0 also has support for
iOS and Android platforms, but development for those are not in focus yet - let's get this game
working properly on PC first!
While some bugs still remain, many fixes have been implemented already. Here is a short excerpt of
some of the bugs we have fixed since January:
- Weather effects work again (rain, snow, etc.)
- Fix item grabbing not working properly
- Fix particle animations not looping properly
- Lava now actually hurts you
- Save games properly work again
- Coins bounce again and make coiny noises
- Blud hits the ground again and de-spawns
- Water is properly rendered again
- Lighting effects work properly again
- Weapons have proper hitboxes again
- Money can be picked up again!
- Fixed many graphical issues or glitches like transparency, reflections or shine
- Whips now uncoil when used
- Memory leaks fixed
- Various crash fixes
- Many other minor bugs
We also took the liberty of improving some various game mechanics:
- Looting a chest now drops its contents in front of the chest instead of all around it (leading
to items stuck behind or inside the chest object)
- Changes the story and some content of the Wizard Starter
- Game logic now supports more than 4 armour types (no class has more than 4 yet)
- Adventurer Starter now starts with a Knife
- Improved module loading screen
- Module difficulty is now represented by skulls
- Game now runs at 60 FPS (was normally capped to 30 before)
Conversion to C++
We have already reaped the benefits of converting the codebase to C++. Major performance improvements
and many bugfixes. There is still a lot of code to port from C to C++ and if you are interested in
helping, don't be shy to contact us on gitter.
- Initial AppVeyor CI integration
- Cross platform unit testing
- Windows unit testing and provision of windows builds using AppVeyor
- More bugfixing
Egoboo Development Diary Part 1 - 29.03.2015
Egoboo is actively maintained again
The dungeon crawler Egoboo is now actively developed again: A team of developers is reviving the cross-platform dungeon crawler Egoboo on GitHub. This is the first post of the "Egoboo Dev Notes" series in which the developers keep you informed on the course and progress of the development of Egoboo.
It was pleasant surprise for the developers that resuming the development of Egoboo found some resonance. There still seem to be quite a few people out there who care for this odd piece of gaming history called Egoboo. For the ones who have never heard of Egoboo: it is a dungeon crawler and quite an entertaining game; however, its development stalled for a long time, bugs and glitches were not fixed and the game did not evolve. However, it is actively maintained now again. This is more or less normal progress for open source software such as Egoboo, but there are perfectly normal questions any open source project should answer - for one thing: indeed Egoboo is and will stay open-source and subjected to the GPLv3 license and you can download the game and its source code for free as before. This is the first question any open source project should answer. However, there are many more and those can not be answered that easily: as a consequence, the team decided to start this monthly series of posts - primarily targeting prospect developers and content creators - that will keep you informed on the course and progress of development on Egoboo.
In this first post of this series, we will describe a few changes that are made or being planned to Egoboo's technological basis and we talk about graphics and sound, controls and user interface. More importantly, we try to communicate our relation to to various aspects of Egoboo, in particular what we intend to change and what we intend to keep - eventually, this is important to some people out there as gamers really hate when something changes for the worse. Last but not least, we provide you with a target date for a first binary release.
Who we are is less important, what we do is maintain Egoboo, an old, weathered piece of code and data that had a bad start and allegedly suffered a lot. However, somehow it managed to stay a unique, entertaining game. Maybe this is the reason, why people still care for Egoboo. In any case, we care. This is why we want to ensure that Egoboo withstands the test of time as it did before for years to come. We want to improve and maintain the technology as well as the assets, to ensure that Egoboo lives long and prospers - and eventually we will make some old scars vanish.
Things to Change: Technology
The Egoboo developers wish to begin the time-consuming task of bringing Egoboo's code and data up to date, so that it fulfills the quality requirements that ensure proper maintainability and documentation. We want to ensure that Egoboo withstands the test of time.
Drastic changes on the underlying technology are made such as the final transition from C to C++ shows: Egoboo compiles now with recent C++ compilers under Linux, Windows and Mac, the amount of C code/C-ish code is decreasing steadily (ultimately, Egoboo should take advantage of what C++ 11 and beyond offers to us). An improved build system and updating external dependencies (for instance, the transition from SDL 1 to SDL 2 is being prepared) are part of the roadmap plan. Egoboo accumulated quite a few bugs that over the years in which Egoboo was subject to irregular maintenance and wild expansion: bug-fixing is imperative. As a matter of fact, most of those bugs could have been avoided and in fact will simply vanish. Principles, methods and techniques that are widely known are employed - well-known algorithms, reasonable documentation and automated testing are prevalent examples. Indeed, Egoboo will receive a unit testing framework and a reasonable in-source and out-of-source documentation. We do not refrain from subjecting parts of Egoboo to more exhaustive methods, though. The goal here is simple: Egoboo - like any game - needs to be maintainable and expandable - to achieve that, it needs a good basis, a stable core with calm maintenance, reliable functionality such that the "hotter" parts can rely and build upon it.
Things to Change: Assets
The team also feels that improvements to graphics, sound, controls, user interface and game mechanics are long overdue. Partially, coders can do that, however - or as many Open Source projects slowly learn - graphics and sound are not part of the graphics or audio API used. The assets (e.g. graphics/sounds) need to be created and used in content (e.g. levels). Egoboo contains a decent amount of assets and content, however, creating/improving this requires more than coders: In the Open Source sector, the species capable of creating assets and content - namely graphic artists, audio artists and level designers - are rare: the team will improve the tool set that Egoboo offers to those, hopefully attracting those precious specimen.
Things to Keep: Egoboo
A perfectly normal question is (in case you have looked at the source code of Egoboo): "Why don't you rewrite the whole thing?" The team decided against a rewrite of Egoboo in a sense of "starting from scratch" for technical and non-technical
reasons. On the technical side, content exists for Egoboo already and this content can not be trivially accessed without the underlying game engine. But this would only be half the truth. An important non-technical reason is the feeling, that the unique spirit of Egoboo would be lost during the course of a full rewrite. Drastic changes to underlying technology do not necessarily imply that the feeling of a game is destroyed. They do, however, bear the danger. We are in fortunate situation to have one of the original designers of many of the modules among its members. Together with refactoring instead of rewriting, the risk of losing something without realizing it and effectively destroying the game, is reduced.
An important aspect of Egoboo is that it enabled users and developers to create their own adventures (called "Modules" in Egoboo). The existing content of Egoboo demonstrates the power of Egoboo's provided tools. However, the tools are also dated and difficult to use so the content eventually demonstrates the capacity for suffering of the content creators. We think this is not necessary; there are great examples of tools that make content creation simple and fun (Neverwinter Nights 2 is such an example). To attract asset and content creators and for that we think that the ability to create your own content is an essential element of what Egoboo constitutes, tools receive a lot of attention from us. As before, the tools to be created should satisfy players and developers alike. That way, we hope to retain the feeling of Egoboo when evolving Egoboo to something that will last another few years: We want to keep the spirit of Egoboo alive.
Things to Come: Binary Release
In this post, we want to answer one of the more pressing questions of many people: A stable binary release is scheduled for around Christmas 2015/2016.
See you next month.
GitHub! - 05.01.2015
We have moved our code to GitHub!
STILL ALIVE! - 09.05.2011
We are still alive,
this time with many screenshots! It has been a while since last update,
but life has been busy for all the developers! There has been some
progress however. First we can proudly release a proper Macintosh
release again thanks to Jonathan Fischer our "Mac guy". Macintosh users
can download the game from here. In other news we can show you some nice screenshots of the new split screen system Birdsey has been working on:
is still a work in progress and the final version will not look like
that! There are a few key issues that need to be fixed before we can
release Egoboo 2.8.2 as Stable.
But wait, there is more! AI is
now improved by the so called A* pathfinding algorithm. This means that
monsters and helpers alike are much smarter in picking their paths
toward where they want to walk. No more monsters getting stuck in
corners! Here is a small screenshot of A* in action:
yes, we also have a nifty new inventory system :D. This should make
handling inventories a lot easier than before. Here is the final
screenshot from this update:
DEVELOPMENT UPDATE - 04.01.2011
A small news update on
current Egoboo development. We are working on the next version of
Egoboo named 2.8.2. This release will fix even more issues found in the
2.8.1 release, most importantly a crash bug in certain animations.
Furthermore we have optimized and fixed more stability for the game.
Here is the current changelog:
- Update: The Valkyrie can now enter Divine Order of Aaron shops.
- Update: Some minor GUI improvements.
- Bugfix: Fixed a problem with dynamic slot loading where data got loaded more than one time.
- Bugfix: Fixed Forgotten Fortress missing half of its objects and monsters.
- Bugfix: Antialiasing wasn't working properly for some solid objects.
- Bugfix: Fixed duplicate item exploit with the thunder spear.
- Bugfix: Removed various glitches in character animations.
- Bugfix: Fixed listen skill not always working.
- Bugfix: Confusion rays of the brain scrambler monsters work again.
- Bugfix: Portal to the next level now correctly spawns in Imprisoned One level 1.
- Bugfix: Any new unlocked modules are now properly scanned for when a module was just beaten.
- Bugfix: Armor suits did not spawn properly due to a script typo.
- Bugfix: Fixed the Imprisoned One and Archmage Trials questlines not properly progressing.
Removed a crash bug that was caused by specific animations.
- Bugfix: Fixed some typos.
We are not sure when Egoboo 2.8.2 will be ready for release, but
until then you can still grab the latest nightly build through the SVN
repository and get the windows binaries in the bar to the right here.
EGOBOO 2.8.1 RELEASED - Merry christmas! - 24.12.2010
santa clause in Zippy Town to get your presents and candy! Egoboo 2.8.1
fixes over a hundred bugs including issues that corrupted save games
and various crashes. A number of new nifty features have been added
such as armor that can be put into inventories, random treasures and
camera blur effects. This is a must have update!
to see a full changelog of version 2.8.1. Remember to uninstall older
versions of Egoboo before installing the new one. Credits to all the
debuggers, especially Penguinflyer5234, Seth, Khaos89 and Octagon for
extensive play testing that allowed us to track down and make 2.8.1
Merry christmas and a happy new year from the Egoboo Development Team!
SMALL NEWS UPDATE - 01.10.2010
development is still going along. Currently we are trying to fix
numerous issues in 2.8.0 that was revealed after the previous release.
We have come a long way and fixed over 80 bugs and added a few new
features. The physics system has been redone again and numerous crash
bugs and all the save game bugs have been fixed among other things. If
the current version in the SVN proves to have no game breaking issues,
then we will try to release Egoboo 2.8.1 as soon as possible!
EGOBOO 2.8.0 is now Stable! - 06.08.2010
2.8.0 version has now been flagged as stable. Most reported bugs were
fixed since the development version. A total of 44 additional bugs were
fixed. These are not listed in the changelog but can be found here
for those who are interested in the details. Other than that the Stable
version contains some minor reworking of some game mechanics for
movement and attack speed.
Next version will contain further
polishing, bugfixing and maybe another module. There is some background
art that needs improvement. bitnapper from the Egoboo community has
taken upon himself the task of coding a new proper map editor for
Egoboo! This map editor will hopefully reach a more finished state than
the current EgoMap and maybe even let it work on Linux or Mac.
EGOBOO 2.8.0 (unstable) Released! - 14.07.2010
it is ready! After a year of hard work we can finally release a
playable version of Egoboo. This release is not yet marked stable and
is under development. This is the biggest release Egoboo has ever had
so far and the changelist is waaay to big to list here. Click here
for a full list and here is a small summary of the most important
- Various new modules, quests, classes, items, monsters, spells, etc.
- Improved UI to make things more usefriendly (module filters, xp bar,
popup text, etc.)
- Major optimizations on the game engine.
- Improved AI features and many AI script bugfixes.
- Both major and minor bugfixes that should ease gameplay.
this release is marked unstable and might still contain major bugs, but
all in all I would strongly recommend to play 2.8.0 instead of 2.7.4.
Egoboo 2.8.0 (Unstable) - Windows
Egoboo 2.8.0 (Unstable) - Linux and Macintosh
introducing SVN Builds - 5.07.2010
We now offer pre-compiled binaries from the repository for
all the windows users out there. The SVN build is located to the right
of the screen.
What is the SVN build?
current SVN build is the very latest version of Egoboo that is
available for download from the Web Page. It includes the latest new
features, but might also include the latest bugs. The SVN build is for
those who want to use the latest updates from the SVN, but who do not
want to compile the code themselves.
Why should I download this?
SVN build will contain the latest bugfixes and also the latest bugs
that were introduced. These bugs can be game breaking and make the game
very unstable. For all the latest game content in the SVN to work
properly, you will need the latest SVN build.
will need a program like TortoiseSVN
to access the SVN repository. Simply run the extractor to your Egoboo
SVN folder and run the new binary. (egoboo-svn-r1090.exe for revision
1090 for example)
Link to the SVN:
Development update - 24.06.2010
are finally closing in on the 2.8.0 release! There is still a lot to be
done, especially bugfixing. With all the new improvements, massive
rewrites and new features, many old things that used to work will
probably work different or even not work at all. We need to locate
these bugs and you can help us to do so!
bgbirdsey is working on
a performance issue that prevents the game from being played on older
computers, but he claims he will be ready in a few days (give it a
week!). By then we will try to release a 2.8.0 Development (i.e
unstable) version. Everyone can report a bug or issue through either
the forums (under Bug
Report) or through Trac
(our very own Feature/Bug tracker).
just finished another module for the Imprisoned One series and only 1
module is missing before the quest line is complete. This module is
kinda interesting. You have to protect the portal from waves of
monsters to win this module (as shown below):
Notice the new
yellow XP progress bars below the character icon. bgbirdsey has worked
on some more "advanced" physics effects for particles as well. This
includes particle interaction with wind and under water. And we added a
few more new weapons and scenery for you to discover in the game!
Cheers, Egoboo Development Team.