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.