March 18th, 2022, 12:55
(This post was last modified: March 18th, 2022, 13:25 by RefSteel.)
Posts: 5,109
Threads: 112
Joined: Nov 2007
(March 17th, 2022, 07:43)thrawn Wrote: I haven't tried any of the 1ooms but did play a few RotP games a while ago and it was interesting how different the AI was. It required a big strategy adaptation so you may want to run a few quick practice games on whichever version you settle.
It's a pity that none of the clones and remakes developed multiplayer. It would have been great to do a MOO pitboss :)
This feels like it's tantalizingly close to possible with 1oom (but probably would actually be very complex to do). It couldn't be done asynchronously the way we do with Civ4 because tactical combat is so important to the game, but as long as all the players can schedule times to be online at once, it seems like it should be possible ... in theory. Actually programming it would be a huge project though, I suspect.
(March 17th, 2022, 05:34)haphazard1 Wrote: I am willing to give 100m a try, if that is what people want to use. I don't have any experience with it, so someone will need to provide some guidance on the version and configuration file issues RefSteel mentioned.
You can download base 1oom from its page on gitlab - if you're using Windows or Dosbox, the binaries for that OS should be all you need: Unzip them in their own folder, then copy all the .lbx files from your MoO folder into the 1oom one, and it should be good to go. [EDIT: 1oom has its own exe file(s) - a "classic" version, a "command line" version, an SDL1, and an SDL2. The "command line" is a pure text interface. I know my ancient xp machine can only run the SDL1 version under windows, and I think I used the "Classic" version under DOSbox when I tried that years ago. The cfg file ... I'd have to check. I didn't see an obvious way to set Classic+ AI in the file itself when I checked, but of course I could have missed something.]
Posts: 5,607
Threads: 47
Joined: Mar 2007
Thanks for the tips, RefSteel! I have set up the base 100m and it appears to be working properly. From looking at the doc files there are a lot of options to play around with; I will have to take some time for that. But the default behavior of the "classic" form is working at least.
Posts: 5,109
Threads: 112
Joined: Nov 2007
Okay! So ... 1oom. In order to get its bugfixes working under the base 1.0 version in DosBox, I had to first create the "fixbugs" pbx file. On my system, that meant (in DOS) running 1oom's pbxmake, thus:
Code: 1pbxmake doc/fixbugs.txt fixbugs.pbx
Then each time I want to start the game, I run
Code: 1classic -file fixbugs.pbx
(I think you can set up a 1oom shortcut to run that in DOSbox automatically.)
As for the classic+ AI, that doesn't need to be set up in the config file after all: It's not game session dependent, but is set when you create the game with UI extras enabled, and then persists in the saves. (This also answers jez9999's question about why 1oom doesn't use the original save format: Its saves include additional information like which AI to use and its persistent random seed, which are stripped out when converting to the base game's format.) As for the config file, there are more options in visual operating systems; in DOSbox, apart from things you can set from within the game itself, the main thing to include is the line, "ui.uiextra = true" - and actually that can apparently be turned on or off from the main menu via ALT-X as well. (When UI extras are enabled, I think the game displays the game version as 1oom at the bottom of the main menu screen, so you can tell.)
Now for the UI improvements: My DOSbox config file - on my system, it's called 1CLASSIC.CFG - looks like this:
Code: # 1oom configuration file
opt.data_path = "."
opta.audio = true
opta.music = true
opta.sfx = true
opta.sfxinitpar = true
opta.music_volume = 100
opta.sfx_volume = 30
opta.audiorate = 48000
opta.audioslice_ms = 50
game.undo = true
game.yearsave = true
game.skipintro = false
# PLAYERS*100+GALAXYSIZE*10+DIFFICULTY
# 2..6, 0..3 = small..huge, 0..4 = simple..impossible
game.new_game_opts = 614
ui.uiscale = 1
ui.uiextra = true
# 0..146
ui.uiicon = 146
# Invert mouse wheel for sliders
ui.mwislider = false
# Invert mouse wheel for counters
ui.mwicounter = false
# Starmap scroll speed (1..10, 0 = instant)
ui.sm_scroll_speed = 0
It can be edited with any text editor; the lines starting with # are "commented out" and ignored by the game. Many of the entries are also changed automatically when you change things in-game (e.g. your default game.new_game_opts setting reverts to the settings you used for your most-recently-created new game - in the case of my config file, 5 enemies, medium size, Impossible difficulty = 614.
Hopefully that (works and) covers everything!
Posts: 59
Threads: 2
Joined: Feb 2022
Yep, I have a similar setup and I too use fixbugs.pbx when I run the game.
Posts: 5,607
Threads: 47
Joined: Mar 2007
Thanks for the additional explanations, RefSteel and jez9999. Very helpful.
What is the difference between the classic_sdl1 and classic_sdl2 executables? (This is probably explained somewhere obvious, and I have just missed it.)
Posts: 59
Threads: 2
Joined: Feb 2022
Is that the Windows version? I've literally never used that; just used the DOS version in DOSBox and it worked fine.
Posts: 5,109
Threads: 112
Joined: Nov 2007
(March 20th, 2022, 04:32)haphazard1 Wrote: Thanks for the additional explanations, RefSteel and jez9999. Very helpful. :nod:
What is the difference between the classic_sdl1 and classic_sdl2 executables? (This is probably explained somewhere obvious, and I have just missed it.)
Ah - sorry; what I posted above was for the DOS version. sdl1 and sdl2 are both for Windows environments; either or both might work for you depending on which "libraries" your operating system makes use of. My old xp box could only run the sdl1 version, but running 1oom under Wine on my current linux machine (which, for the record, is an utterly silly thing to do, but I need some way to look at the sdl2 version to answer questions like these!) works with sdl2 as well. The two versions are totally interchangable. They do use a different save format than the DOS version, for reasons best known to the coder, but the gameplay should (in theory) be identical to the DOS version. So if you're using the windows version:
1) You can create the bugfix file from the command line (it used to be called "Run" under the Start menu; I don't know how it's done with more-recent versions of Windows) thus:
Code: [filepath to your 1oom directory]/1oom_pbxmake doc/pbxin_fixbugs.txt fixbugs.pbx
Then there are several more options in the config file, but the main point is still ui.uiextra = true - but then there's the savegame issue. You can convert a DOS 1oom savefile to a Windows one again via the command line thus, using it's the "continue" save (save 7) as an example:
Code: [filepath to your 1oom directory]/1oom_saveconv 1OOMSAV7.BIN -o 1 1oom_save7.bin
Hopefully converting it back the other way will also be straightforward (I haven't tried yet). Once you have a working continue save, you can then jump right into the game (like running Starmap.exe under kyrub's patch) either through the command line or by creating a shortcut that points to:
Code: [filepath to your 1oom directory]/1oom_classic_sdl2 -file fixbugs.pbx -continue
(Or replace sdl2 with sdl1 if you're using that.) Or of course you can use the method above under DOSbox and ignore all of this. Either way, I hope that covers everything! (I mean, except for the reverse savefile conversion at least....)
Posts: 5,607
Threads: 47
Joined: Mar 2007
Thanks again, RefSteel! The save file compatability and conversions do make things more complicated for an SG, don't they?
March 20th, 2022, 22:31
(This post was last modified: March 21st, 2022, 02:59 by RefSteel.)
Posts: 5,109
Threads: 112
Joined: Nov 2007
(March 20th, 2022, 19:42)haphazard1 Wrote: Thanks again, RefSteel! The save file compatability and conversions do make things more complicated for an SG, don't they? :(
They do, but we can work around them! In fact, I just discovered a beautiful fact: 1oom 1.0 savefiles are actually all in the same format after all! The only difference is the name! So instead of messing around with saveconverters, to turn a DOS 1oom file into a windows one, you can just change the name from e.g. 1OOMSAV7.BIN to 1oom_save7.bin and vice-versa - just make sure to delete, rename, or move any existing save with that number first.
(Also, I've figured out a work-around to allow someone to play a turnset with kyrub's patch or the vanilla game and still allow subsequent 1oom turnsets to be played with Classic+ AI on! Translating between 1oom 1.0 and the ignatius fork is actually the only thing I don't know if we can do, since I don't know if ignatius updated saveconv to work with the different/additional information in the save. I think Tapani and RFS-81 still use the 1.0 save format, but I know ignatius saves include some extra stuff like alternate ruleset choices, and I'm not sure how base 1oom would handle them.)
[EDIT: I went ahead and started a thread for the new succession game - I'll be happy to try to answer any other technical questions there or here as well!]
Posts: 2,107
Threads: 12
Joined: Oct 2015
(Putting this in the general "which patch?" thread for the moment).
I've loaded up 1oom (Windows, sdl2) with the fixbugs PBX, and had a go. When I'm bombarding a race (Meklars) with Shield 3 and Planetary shield 5 the "planet" button in the tactical screen is showing a shield level of "3" - but back of the envelope calculations suggest that the full shield is taking effect, so I think it's a display bug / misfeature.
It may have looked easy, but that is because it was done correctly - Brian Moore
|