Giter Club home page Giter Club logo

1oom's Introduction

1oom

1oom aims to accurately reproduce the original DOS version of Master of Orion (1993) in a form that can be run on modern computers. 1oom is Free Software (GPLv2), see COPYING.

1 Installation

1oom requires a copy of the Master of Orion (v1.3) LBX files.

1.1 Windows, MSDOS

Simply copy the EXE and DLLs (if any) to your MOO1 directory. Alternatively copy your MOO1 LBX files to your 1oom directory. See doc/usage_common.txt if you prefer to use a separate directory.

1.2 Unix (Linux)

At a minimum, 1oom requires an X server, such as Xorg.

It is recommended to have SDL installed

Also recommended:

The SDL version will include game audio and allow full screen mode.

Check your distribution's package manager or the library website on how to install them.

1.3 Android (DOSBox)

To play on Android you will need the 1oom executable for MSDOS, DOSBox application for Android and DPMI extension, for example CWSDPMI. You can build the 1oom executable for MSDOS using i586 DJGPP and Allegro4.

2 Configuration

See doc/usage_common.txt.

3 Development

See COMPILING and HACKING for more information.

4 Executables

1oom consists of a few executables:

  • 1oom_classic_* (the 1993 UI)
  • 1oom_cmdline (proof of concept textual UI)
  • 1oom_lbxview_* (for viewing LBX files)
  • 1oom_lbxedit (for editing LBX files)
  • 1oom_pbxmake (for creating PBX files)
  • 1oom_pbxdump (for dumping PBX files)
  • 1oom_gfxconv (for converting GFX for use in PBX files)
  • 1oom_saveconv (for converting save game files)
  • 1oom_*_x11 (using X11)
  • 1oom_*_sdl1 (using SDL 1.2.x)
  • 1oom_*_sdl2 (using SDL 2.x)
  • 1oom_*_alleg4 (using Allegro 4.x)

See doc/usage_* for more documentation.

Some ports have shorter filenames due to filesystem limitations.

5 Abbreviations

The following abbreviations appear in the documentation and code:

  • MOO1: Master of Orion 1 as represented by the v1.3 DOS binaries
  • OSG: The Official Strategy Guide (ISBN 1-55958-507-2)

6 Acknowledgements

Most of the credit for this software belongs to the progammer who authored 1oom v1.0 under the pseudonym Kilgore Trout Mask Replicant. Thank you for creating this and publishing it free and open source!

The original game Master of Orion was developed by Simtex Software and published 1993 by MicroProse. Thanks for the great game!

Thanks to Alan Emrich and Tom Hughes for documenting the game mechanics and AI decision making in great detail in the official strategy guide.

Ideas and text snippets have been taken from kyrub's unofficial patch 1.40m Readme. Thanks for the patch!

Thanks to shikadi.net for documenting the music format.

Thanks to CivFanatics forum user sargon0 for partial save game format info.

Thanks to those who contributed code, ideas or bug reports.

Some code has been pilfered from Chocolate Doom and VICE.

The files HACKING and PHILOSOPHY are based on Chocolate Doom.

1oom's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

1oom's Issues

maybe rare bugs

Originally posted by pirate486743186 December 22, 2023
These are not bugs directly found in 1.8, but they are hard to replicate and may or may not still be present.

In the original from Microprose, the amoeba attacked an empty system and "destroyed" it in to a radiated planet. I saw this only once.

In version 1.0 . If in the same turn a planet turns into a gaia and also has the accident the game crashes. I saw this only once. It was rather annoying, because the accident seams predecided in the savefile, so a simple undo wasn't enough. The game probably crashes for similar combinations.

In version 1.0 . You are already at war with a race and you get framed for espionage. You'll get an audience warning you to stop, as if you weren't at war already.

an other bug from version 1.0 . When the comet destroys a planet with an attribute (example poor) visible on the map, the attribute stays. So you are left with a "poor" empty system.

probably not a bug. The crystal was destroyed by a single scout of an other race. That's probably the AI just cheating.

Music bug

On some screens, such as Audience, the music should fade out when exiting and continue playing in the background rather than stopping.

Feature Request: Make fleets clickable on the Galaxy Map and/or make the entire map clickable

Now on the Galaxy Map you can only click on stars.

I think it would be cool if fleets were also clickable (I know it can be messy becuase sometimes there are just a lot of fleets on the map, but I ask to consider this option anyway).

image

Also, why can't I just click anywhere on the map and focus on this particular piece of the galaxy (that's how minimaps usually work).

Thanks!

Small Descrepancies on Planet Screen in Ships and Transports Interfaces

There are several minor interface inconsistencies in the planet screen related to ships and transports.

  1. The error messages in the Transports dialog have different styles:

Green text without outline
image

Green text with outline
image

Black text
image

Black seems the most appropriate for me in all cases.

  1. Accept button in the Ship Relocation dialog should be disabled unless a valid target is chosen:
image

Compare with the similar button on the Transports screen.

image
  1. Cancel and Accept buttons in the Ships dialog have the same functionality
image

No matter which button you click, the selected ship will be chosen for production anyway. I think that the Cancel button should leave the ship that was selected before.

Also, clicking Cancel button should produce a different sound, but on this screen the sound for Cancel and Accept buttons is the same.

  1. Ship production carousel can be rotated only to the right
image

There are only 6 items on it, so it's not a big deal, but I prefer to have an option to rotate it to the left too. Can we use the right mouse button click for that? Looks natural for me.

Thanks!

Audience bugs

I've encountered a few bugs regarding collecting tribute from AI players.
In MOO1, when a technology is offered as a tribute, the order of technology development can be strangely disrupted.
In 1oom, technology may be offered as a tribute, but there will be no mention of it at all.
It looks like someone will have to carefully check all the code

Either disable the copy protection or mention it is active

I just tried the game for the first time. I was doing really well because the galaxy generation was favorable. At some point I got the copy protection question and as per usual I simply clicked somewhere. Oddly, I got a second question and then a third and BOOM. Game over.

Seriously, having the copy protection active is not really enjoyable. I don't want to ALT+TAB out of the game and browse some .pdf manual. I paid for the game, alright. Multiple times: Boxed copy, Gamestop, Steam, Gog, Master of Orion: Collector's Edition).

At the very least mention in the README that the copy protection is not disabled. It killed my first experience.

Documentation

It is necessary to change the structure of the documentation so that the necessary information itself finds those interested

Feature Request: Racial bonuses wise science spending rates autodistribution

I really like the feature when you press the "=" key and all science spending ratios are set to equal.

image

This feature may be even more interesting if it takes into account racial differences in technology development (page 57 of the manual).

image

For example, equal spendings are 16,67% per technology field.

But the adjusted equal spendings for Alkari (since they poor in Force Fields and excellent in Propulsion) are:
x + x + 1.25x + x + 0.6x + x = 5.85x;
x = 17.09%

Computers = 17.09%
Construction = 17.09%
Force Fields = 17.09% * 1.25 = 21.37%
Planetology = 17.09%
Propulsion = 17.09% * 0,6 = 10.25%
Weapons = 17.09%

I think it would be great if the first press on "=" key set spendings as equal and the second one -- as adjusted-equal.

Thanks!

Planet "Pop xx max" display error

Thanks for working on 1oom.
See attached v1.7.5 save.
It says for the "Crius" system, south-west on the star-map: Pop 50 Max / Pop(ulation) 125 / Planet size 125.
That 50 is a display error AFAIK.
In this same game I have seen this Pop Max display error occur multiple times, in different places. This game was started in v1.7.5.

Edit: also seen it for a planet that was occupied by me.

1oom_save5.zip

Combat screen hit / death explosion effects

Build: 1.6.2
Bug / unexpected behavior:

  • Hitting a stack and not wiping out the last ship plays the "big explosion" animation.
  • Hitting a stack, destroying the last ship thus wiping out the stack plays the "small explosion" animation.

It seems that this is the reverse of the behavior in Master of Orion 1.3. Tested on both the DOS and the SDL2 executables with default settings / New Game and the behavior is the same.

Suggestion: Create free art pack?

Since 1oom has been included the Debian repositories, I wanted to float the idea to create a free art pack (sort of like OpenTTD does), to effectively make the project 100% free and able to run on its own. We could try either sourcing pixel art from the community or alternatively we could do a crowdfunding drive to contract a couple of good pixel artists to produce quality artwork. This would mean 1oom could turn into a more encompassing project, not only providing a better way to run the original MoO, but also gain a life of its own and be a truly free 4x game available for all audiences free of charge.

Crowdfunding could be done via Patreon, Indiegogo, Liberapy of Kofi, and we could even discuss what sort of artwork could fit the game best.

Boolvec

It is necessary to get rid of boolvec with variable length wherever possible to avoid data errors and make the code clearer

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.