On the Future of xu4

xu4-codex

Time Machine Dragon has a question for the Ultima fan community:

I’ve been working on xu4 again after a significant absence, fixing some bugs here and there, applying submitted patches, and trying to update other technical issues with building. I was planning on formalizing a development road map toward a new release version, but suddenly I thought: why bother with xu4 when fans can play U4 on DOSBOX, or through the GOG release?

Many summers ago, I started playing Ultima IV on DOSBOX in Linux, using that EGA enhanced tileset and the MIDI patch. It was a very enjoyable and satisfying experience. It seemed more challenging attaining the virtues and progressing through the game in the real version than it was in xu4. It felt more genuine somehow… more complete.

The xu4 website states:

“XU4 is a remake of the computer game Ultima IV. The goal is to make it easy and convenient to play this classic on modern operating systems. XU4 is primarily inspired by the much more ambitious project Exult…”

With the exception of being inspired by exult, the DOSBOX/GOG approach achieves the primary goal much more accurately: The game rules in xu4 are an approximation interpreted from the originals. Do we really need xu4?

This is a question I’d like to ask the Ultima Fan Community: Do we want further development for xu4? If so, what shape should future development take? What should the goals of xu4 be?

The strength of Exult (and Nuvie, really) isn’t just that it allows you to play one of the classic Ultima titles on a modern OS (or one of several modern OSs); it is in that it allows the game to be expanded upon in various ways. Take Nuvie’s feature that allows for the removal of the default Ultima 6 interface and the use of a gump-based inventory, for an example. Or look at Exult Studio for another.

I suspect that xu4’s future, if it is to have one, probably isn’t in simply being an alternative way to play a more or less vanilla verison of Ultima 4, with or without improved tiles. It’ll be in offering new, more interesting takes on the game…whatever those might be.

But what say you, Dragons?

11 Responses

  1. Master Katarn says:

    As of right now, xu4 is the *only* way for English-users to swap in the far superior Japanese PC-98 tileset. There is no way to do this on DosBox as far as I know… I know it’s a matter of taste, but I personally prefer the PC-98 tileset to the fanmade VGA graphics patch that can be used on DosBox (plus, the PC-98 tiles were actually released on an official port of Ultima 4, and not fanmade).

  2. James Bellanca says:

    Yes… So it can be ported to other devices, like the iPad. (I know! the official versions on the iPad already. But th controls aren’t great and xu4 would prob be better with better graphics capability.). Though, I’d rather see effort go to Exult on the iPad…

  3. Infinitron says:

    I don’t know, go wild with the user interface improvements. Give it gumps and make it full screen. Add a day/night cycle with U5-style moongates.

    He’s right, though, the game is ultimately too simple to benefit much from this.

  4. dandago says:

    As a developer I’d say: if the project has reached a maturity level such that it can be considered complete, then stop working on it (other than fixes etc) and move onto something else. Creativity kind of grinds to a halt when a project matures, and you end up doing a lot of less interesting polishing work.

    For me it’s irrelevant that xu4’s goal can be achieved using DOSBox or other alternatives. I think the whole point of projects like Exult and xu4 (and even the U1 thing I occasionally work on) is the challenge of gaining intimate knowledge of the game’s inner workings (including data files). So if I’d suggest continuing on any aspect of xu4, I’d suggest focusing on creating mature documentation of the U4 engine and its files that would allow other developers to easily work with it – especially now that the once awesome documentation on the Moongates U4 Annex is lost.

    Open source software has seen a large boom recently thanks to the likes of github, but I always get the feeling that documentation tends to be very lacking in open source software. People like coding, but usually don’t like writing. Documentation is really the most important thing if you’re doing something like a library intended for public consumption – not so much in xu4’s case, but it would still help other developers pick up projects based on the knowledge gained by reverse engineering the game (like I did with the U4 dialogues, for instance).

  5. Infinitron says:

    Another option would be to rebalance the game mechanically. Go all J.E. Sawyer on it, make the stats matter more for all classes and differentiate the weapons and armor in interesting ways. Add movement points to combat to make it less painful when you have a full party.

  6. WtF Dragon says:

    My thought was to maybe add the ability for the engine to extrude tiles, to create something akin to what EUO 3D does:

    Of course, some stuff would still need 3D assets in order to look right, but…well, it would certainly be a new way to experience Ultima 4.

  7. Sanctimonia says:

    That would be beyond awesome.

  8. Awesome topic! It’s something I’ve often thought about with the Exodus Project, though from the opposite angle. One of the prime disadvantages of working within the existing engine is that you are limited not only by the game engine itself but also by what the platform (ie DOS/ emulator) is capable of. Sure, Dosbox will run on phones and tablets, but it’s not an ideal gaming experience because it wasn’t designed for that platform. It’s also an inconvenience for some users when GOG assumes the game will run fine at XT speeds (~5MHz) but it doesn’t work well at those speeds under the upgrade.

    If you roll your own engine you’re not constrained by any of this and you’re free to add improvements where you see fit. Beyond the obvious ease of porting, you can add other quality of life improvements including ui (which you can customize to the platform), game balance, and controls. Single letter keyboard commands haven’t aged well, though some hardcore folks still love it.

    In the past I’ve preferred the DOS version, and no matter what you do there will always be purists that do. But nowadays I find xu4 my preferred choice for playing Ultima 4. The in-game configuration improvements, scaling, graphics options and dungeon graphics are just some of the reasons why I think it’s superior.

    Great work, and I hope you decide to continue working on the project!

  9. HiPhish says:

    Simply being able to run the game is no longer impressive thanks to DOSBox. Where Exult an Nuvie shine is their ability to improve upon the original games without sacrificing anything. So what should xu4 improve upon?

    Primarily documentation. I tried reading the source code of xu4 and simply gave up. There are barely any comments, let alone *documenting* comments like for Doxygen. Write down the specifications of the game, al the constants and variables. ideally the documentation should be so complete that someone could re-write xu4 just from those specifications (of course not exact code 1:1, but the result should work the same).

    Other than that, I had envisioned playing Ultima IV with a mouse-driven interface and windows. There would be one main window where the game runs and you would be able to interact with anything using the mouse. To move click a direction or hold down the mouse button. To talk to an NPC click on it. For more options (like attacking) right-click to open a contextual menu. Click on the name of a companion and their character sheet opens up in a small floating window. Press the map hotkey and a map window opens up. The map window should have a drop-down list to choose what to display (world map, a town, a dungeon). Let the user have multiple maps and allow taking notes. But a “gem” button on the map that consumes a gen and automatically updates the map. Have an option to auto-map. Allow drag&dropping equipment between character sheet windows and the inventory window. have proper plugin support for mods like tilesets or rulesets or custom levels

    I could go on, but I think the point is clear. Of course if the authors of xu4 don’t want to take on such a massive task, which would be understandable, the best course of action is to document. That way one day when someone will want to give Ultima IV the royal treatment they won’t have to start from scratch again.

  10. Greg says:

    it is the only way to play the midi music with the correct graphic

  11. Dominus says:

    I’m of course biased since I make the snapshots of xU4 🙂
    I’d really like the development to progress and I also think it should go more wild – “abandon” what you can have in the original and add new things.
    I also like very much that xU4 is directly portable, without the need to go through Dosbox.