Showing posts with label rogueleague. Show all posts
Showing posts with label rogueleague. Show all posts

Sunday, January 14, 2018

Two weeks of Ultimate ADOM development (UADOM Update #1)

Hi everyone!

The past two weeks I have been mostly active on Twitter while actually working on our Ultimate ADOM game engine. It will be foundation for our next generation series of roguelike games (yep, plural) and thus the foundational work is extremely important (and fun - as I love building frameworks and complex architectures).

What has been achieved so far?

  • I'm getting somewhat accustomed to Unity as that is the platform we will be using to deploy Ultimate ADOM games on many channels (desktop, mobile, console, etc.). So far - once you get the hang of it - it works nicely.
  • I have started using JetBrains Rider which IMHO is a brilliant piece of software (as usual from JetBrains). It's a blazingly fast and pretty smart integrated development environment, works nicely in conjunction with Unity and provides excellent C# support. There are still a few rough edges (especially when used on MacOS) but general the support by JetBrains is very active and helpful and despite those rough edges Rider already now is leagues above any other IDE I tried for C#. Highly recommended!
  • Ultimate ADOM is using an entity component system (ECS). My ECS is based on JSON configurations that are backed by C# classes to add complex behavior. It uses entity templates (basically classes) to describe entities (class instances, objects) and has been designed with the idea of supporting hundreds of thousands of entities at runtime because I envision a truly complex world with almost infinite means for interaction. All the infrastructure for the basic ECS architecture is in place, parsing is basically finished (I'm still optimizing my JSON-object mapper on a use case basis for special cases to make modding even more trivial).
  • In order to be able to prototype features quickly I needed an ASCII based interface even in Unity. The basics for this also have been implemented and now are working.
  • The ECS architecture uses an underlying event architecture to implement communication between disjointed components. This architecture also is implemented in its basics and already went through a turn of optimizations to make it scale for later more complex situations.
  • The game engine is configured through the same JSON based setup used for all other content. The basic infrastructure to set up game variants also is in place (although a lot of work still needs to be done here).
  • Movement for the player has been implemented as an example to prove that everything works as required.
  • Jochen and Krys are familiarizing themselves with Unity, toying around with graphical concepts to elaborate our future graphical approach with Ultimate ADOM and have been testing particle systems, lighting and animation as we want to lift current ADOM graphics to a completely new level.
Next up on the roadmap are
  • implementing basic combat (another interesting challenge as many already existing subsystems for containers etc. then will need to flex their muscles),
  • resuming work on ADOM bug fixes (remember: we will continue to work on ADOM). Jochen and I already have discussed the next new features which probably will center on our Rogueleague portal and challenge games.
Finally we are talking to various people on order to extend Team ADOM somewhat. If all works out well, we soon will have a second graphical artist joining the team to supplement Krys' amazing skills and provide us with more concept and marketing artwork (at least initially).

Here are some more impressions from the past two weeks:

Body configurations can become complex in Ultimate ADOM (although we still have way to go before we rival Dwarven Fortress ;-) although that's not the goal):


Predefined maps are already very easy to create (great for modding, too):



The ASCII interface still is rudimentary but I'm nonetheless proud about having gotten there in the past couple of days because there are more than 10.000 lines of code of basic architecture running behind it (not for the ASCII stuff, mind you, but for the actual game content - and all that will shine later on):


This screenshot from a point in development time when I still had to add lots of architecture hints at the detail and complexity of what is going on behind the scenes:



And while this is not our 3D attempt it was fun to create it nonetheless ;-)


In summary about 15.000 lines of C# code plus another 870+ lines of JSON configuration were created in these two weeks and we are now moving forward to turning this into a game :-)

Talk to ya soon!
Thomas

MerkenMerken

Saturday, December 9, 2017

ADOM 3.0.4 prerelease and Rogueleague.org server available now

Rogueleague.org
Hi everyone!

This prerelease hopefully will be the very final one before we publish a polished and complete (as far as our crowdfunding promises go) ADOM to Steam.

ADOM 3.0.4 again contains a number of bug fixes and minor enhancements as well as one major new feature: After registering you now can connect to our Rogueleague.org server to manage your global highscores (e.g. in competition to all the other ADOM players out there).

IMPORTANT: 

  • If you own highscores achieved by cheating you might want to delete them. In the next couple of weeks we probably also add some kind of community-driven cheat detection and cheaters will be banned from the server. If cheating becomes excessive we might be forced to limit the server to Steam only (and only in connection with Steam accounts) which would be sad but necessary if people start ruining the idea of the server. So be honest and remain a good member of the ADOM tribe :-) !
  • Connections to the global highscore server are only possible with ADOM Deluxe (and in a couple of days the Steam version). The pure ASCII version does not support this.
  • Highscores are synchronized after you quit ADOM - only then they will show up on the server.
  • You will need to register an account in order to be able to synchronize with the server.
  • The global highscores probably will enhance the fun with challenge games a lot :-)
  • Our Rogueleague.org server really is a version 0.1. We have tons of ideas on how to improve it, the layout and design needs a lot more work and we have extensive statistics planned and more - but all this takes time and we will on it step by step in the months to come. So please be patient with us :-)
Now all prerelease testers can go to the usual location and start having fun :-)

When you submit bugs or RFEs you now also can choose "Rogueleague.org" as a category in order to inspire us with your ideas of what would be great to have for a community portal - so let us know what you come up with :-)

Axes high!
Thomas Biskup & Team ADOM