Hypothetical Question (Next-Generation MOO2)

Suggest or Vote on new features here.
Posts: 17
Joined: Sat Jan 09, 2010 3:25 am

Postby Istrebitel » Sun Jan 10, 2010 9:54 am

Well actually the MOO2 is looking as a very simple game. See for yourself:

- No real time.
What this means is you dont need to program triggers, interrupts, catch numerous bugs of triggers not working or scripts failing or whatever. You can process all step by step, thats what the algorythm is about.
This is easing the process a hundredfold in my opinion. Because the program itself is strictly done step by step. Anything like "multitask" or "real time" is emulated, and that emulation takes alot of time to make, debug etc.

- No character animation (almost).
Animated characters (units, heroes,...) is a lot of work to do. You got to constantly change frames, sync animation (like the arrow should start flying from the character only when his bow stretching animation reached the point at that he released the string), just hell a lot of stuff to do.
The Moo has only simple loop animation like glowing buttons, rotating research topics and talking spies/scientists/ambassadors/etc but thats all, its looped, its not dependand on anything, so its actually simple.

- Very simple graphics overall.
Mostly plain sprites attached to a position, some sprites with looped animation. Rotation is also very simple due to non-isometric perspective. Just paste the image on the screen and thats it.

- No pathfinding algorythms involved
Really this is a time eater. Ever try to make 1000 units find their way through a complex terrain and never stop or hang the game...Imagine they can block each other on their way as well, and you got hell of a work to do for writing and optimising the pathfinding. This game has zero problems with that.

- Very simple to write AI.
Unlike games with 3-d environment where you have to make AI decide and think as a human in a virtual space, you have him to calculate, say, how to dodge shots, where to move his character. And he has to do it fast as well, provided the game is realtime, and most are. Here you make a simple yet very effective script AI. Like, AI has some research trees to chose from, some ship designs to choose from, build orders to choose from and common management techniques to use (those industrialist etc). Now each turn you check the situation agaisnt what the AI wants to achive, and make orders. The amount of things you can do is STRICTLY limited that easies the AI writing just hundredfold (unlike, say, a strategy game where you can order each unit at each time moment five orders, one of them targeting 1000000000 possible points on the map).

- Very simple game algorythm overall

Actually, the whole game program consists of an interface loop that shows either of the X preset screens (main menu, race pick menu, colony menu, star map menu, etc) and catches user input. User input is then processed and either takes him into other screen or changes something on a current screen. Actions taken by user are checked to be legal and then, if legal, change some game variables, like decrease a number of workers on said planet by 1 and increase number of scientists on said planet by 1. After any change everything that can be touched is recalculated (like if you shuffled workers, industrial output of a colony is recalculated, then subsequently money output, pop growth etc).
Then, at the end of the turn, changes are applied, Ai makes his changes, then the time is shifted forwards (ships move, productions are made, populations change, research made etc) and its all over again.
Combat is also simple. Choice is made, damage and stuff calculated, animation played, next choice to be made. After combat ends, changes to the game variables are made - which ships disappear, which ships gain xp, which ships get damaged, which leaders die.

So simple its just... well, genius how that simple game can be that catchy and that deep and that interesting. but its simpliness means it can be redone from scratch completely with relatively (compared to, say, transport tycoon deluxe) low work involved.

User avatar
Posts: 220
Joined: Wed Mar 22, 2006 4:27 pm
Location: Orlando, Florida, USA, Earth, Human Empire

Postby Time » Wed Jan 13, 2010 5:57 pm

Greetings Istrebitel,
It looks like you have thought some of the basic mechanics through.
Perhaps, you and some others can work out the details in your spare time and keep us posted on any sucesses you make.
I have read elsewhere where others have have tried to come up with their new version of a MOO 2.5. It would be good to hear of more works in progress. The closest I've seen is http://cosmicsupremacy.com/
It is similar in many aspects, others are absent entirely.
I wish everyone luck, should you choose to accept this mission.

Another clone in progress at:
He's working on formations right now.
MOO1 Fan, MOO2 Fan, MOO3 needed too many changes = hopeless, getting older waiting for a MOO4 (still).

Posts: 17
Joined: Sat Jan 09, 2010 3:25 am

Postby Istrebitel » Thu Jan 14, 2010 1:23 pm

Well, its actually very easy to get tired in process if you do it alone. And honestly, i know no good ways of acquiring people who wish to make a game together. I had experience at my age of 14-18 when i was trying to do some games, some even were very interesting but i lacked graphical skills and my friends, also programmers, unfortunately were not very determinated enough to help me, even though they were interested.

That said, i have an idea now. Maybe i should ask on those open source games forum about how to do it. How they gathered their community to make a game together... They should know that, definetly.

After all, devil's in the details. It indeed looks simple, but the difficulties would sure arise. And one man might not find a solutuion where other will instantly see it.

PS: thanks for links. its interesting idea to make an online game of moo!

User avatar
Posts: 220
Joined: Wed Mar 22, 2006 4:27 pm
Location: Orlando, Florida, USA, Earth, Human Empire

Postby Time » Thu Jan 14, 2010 11:00 pm

Or like Void Stalker had suggested here, this forum could be used with seperate sections for each part needing to be designed. If ok by Lord Brazen.
I am sure you will find people here with knowledge and experience of MOO2. With ideas of what changes they would like to see if MOO2 were redisigned. Mine were minor, just don't make it too MOO3-like, and you'll be good. :wink: There are posts here with more suggestions and the predominent attitudes towards them.
As far as programming knowledge goes though, my xp was back in the c64 and apple 2e days too, with alittle PASCAL and Visual BASIC (4.0,5.0) and I currently have no compilers. So, I can't be of much help in that department.
There is a freeorion project http://www.freeorion.org/index.php/Roadmap
shows how they divided up each section (sort of eating the elephant one bite at a time idea).
Their Roadmap looks sound. They veered off from MOO2 too much (if you ask me. I don't like starlanes)
I'm not sure which language would best, perhaps, C++ or Java, or some combination of those and the newer ones out there.
Any discussion would have to be in the "General Discussion" area to be seperated from exclusice MOO2 content unless a seperate section can be created for it.
MOO1 Fan, MOO2 Fan, MOO3 needed too many changes = hopeless, getting older waiting for a MOO4 (still).

Posts: 17
Joined: Sat Jan 09, 2010 3:25 am

Postby Istrebitel » Fri Jan 15, 2010 1:38 am

I currently program in C# and i have pascal/delphi/c/c++ experience. But i like Microsoft's XNA alot for this one (its a simplified and upgraded DirectX that is actually crossplatform, but so far this crossplatform is only good for xbox and some handheld gaming console i dont remember...) But the language is not that important.

The link is awesome, but thats not M00 at all :( Although i admit it looks great. Indeed.

My idea was not making a new game. As i said, i have an idea of remaking Moo2, and after remaking it, tuning it to speed up multiplayer by removing unnessecary actions slowing the games down, for example storing race designs, ship designs and allowing autocombat with spacemonsters player already killed once with same fleet, allowing simultaneous combat if it happens that more than one pair of opponents clash at one turn etc. Also simplifying net code and allowing reconnection of players (like, Ai can substitue for player if he's absent for some time, but he can return and control himself again, provided ai didnt screw him totally :)

The goal is to reproduce Moo2 and then go on forward from that. Not a game inspired by Moo2. Well, thats how i see it...

But anyway my first step is to set up the developing environment here on my home pc, then experimenting a bit to see if i have determination and time to at least take this project so far that people would get interested and probably catch it up i if loose determination. I dont want to be a loudmouth, gather a croud and then disappear just because i got distracted by some new game that's out in the stores (as much as i hope for that to happen i dont see it coming, pc games are so boring nowadays... more likely i'll dig up some old game :)

User avatar
Posts: 654
Joined: Wed Jun 13, 2007 5:25 pm

Postby Overlord2 » Fri Jan 15, 2010 9:28 am

many people had idea of remaking moo2, but then they strangely abandoned. I believe rewriting moo anew keeping it exactly the same as it is, but adding new features, is a job not easier than writing a new game from the scratch. Unless you get the source code somehow. In the latter case it will make it possible.

User avatar
Posts: 220
Joined: Wed Mar 22, 2006 4:27 pm
Location: Orlando, Florida, USA, Earth, Human Empire

Postby Time » Sun Jan 17, 2010 5:16 pm

Some have claimed to be remake MOO2, (freeorion has a similar name, but is not MOO2) but, instead alter it so much, or remove parts completely, that it becomes unrecognizable, .
I would encourage any reproduction, as best as possible, to the original MOO2 first.
Then, one could worry about if the graphics should be improved, or some other part.

Since getting the source code is highly unlikely, approximate when necessary.
It's good that you have experience in multiple areas of software design. That should help you imensly in this task.
Perhaps, your version could be the first completed recreation of a classic for the next generation (and for some of us mid-lifers). :D
MOO1 Fan, MOO2 Fan, MOO3 needed too many changes = hopeless, getting older waiting for a MOO4 (still).

Void Stalker
Posts: 20
Joined: Sun Aug 30, 2009 9:47 am

Postby Void Stalker » Mon Jan 18, 2010 7:19 pm

Well, I am still for the idea of breaking down all the suggestions by kind, so suggestions about tech tree modifications do not share a thread about ground combat or leaders, for example.

For me, I would want every {change} to include a check-able box so that each individual user could customize their gaming experience to fit their tastes.

If this were developed to the extent that I would want it to go to, we would have a ridiculously extensive set of options to choose from (which would not be a good thing to have to go through every time the game was loaded up) and the best way I have come up with to avoid the horrible choice of just playing with the last set chosen or go through all the options each time is the following:

One Idea that I haven't posted before would be to have an unlimited list where a player could set up a group of preset 'options', name this set (and this would include the date the set was created), and then be able to rapidly select from a list of such sets which one you felt like playing on any particular given day. Another possible feature of this kind of a list would be to allow the user to associate a text file that details exactly what they were intending to do with a particular set of options (For example, if a player wanted to create a game where ground combat was as limited as possible to say just a text screen telling the results of the battle, in order to speed play along), then this would offer the ability to have a description text file available whenever the player was going over the list of old option sets and trying to remember which ones did what. :D

Part of this would mean that there should be some way to tell the difference between a saved game using option set #1 and a saved game with option set #2, so you could have the ability to rapidly tell which games were using the simplified ground combat resolution system as opposed to the games that were all about ground invasions. One simple way to do that would be to tie the save game folder the games would be saved in to the option set used to create the game in the first place.

Another aspect of this type of thing could be the inclusion of a "DIRTY HARRY" quote "Do you feel lucky"? Lets say that a gamer has stored several option sets, and that the game includes an 'analyzer' that looks for some options that are never used, and then presents a screen (depending on whether the gamer selected this option, of course) that offers the choice of a list of options sets or "Do you feel lucky?", and this then would build a game using some never before selected options to mix things up a bit to change the feel of that particular game (I would also want the game to create a name for this set of options, along with the test file detailing what options were the players favorites and what were added by the program so the player could have some info on what made that game memorable --- for better or worse --- and then be able to modify that set to suite their interests).

Hopefully, someday MoO2 will live again as a modern program that doesn't need to be patched just to run on a current OS. Is anyone interested in doing a suggestion mega thread?

To reiterate, such a thread would have a parent thread in which only links to specific threads would exist. Something along the lines of this for example:

********* Welcome to the suggestions mega thread ********

Below are a list of threads for the discussion or various ideas for MoO2 improvement, along with a brief description of the Original Post and a current state of the thread synopsis.

Here we have a discussion about some altered methods of tech research/effects of race picks etc...
** And here would go some brief description of where the thread was currently at when the master listing was last updated (so if the master list were updated once a month, for example, then the dates that a threads info were most recently updated would be displayed in the synopsis **

And then the next thread, followed by the next and so on. One thing we would need to do though, is keep each thread limited to the discussion of the idea(s) proposed in the Original Post, so that the people coming here later could easily find exactly what they are looking for.

Let me know if there is any interest in such a thread....
Last edited by Void Stalker on Tue Jan 19, 2010 9:48 am, edited 1 time in total.

User avatar
Posts: 220
Joined: Wed Mar 22, 2006 4:27 pm
Location: Orlando, Florida, USA, Earth, Human Empire

Postby Time » Tue Jan 19, 2010 1:17 am

I agree.
A seperate forum Heading would have to be created (Let's say, entitled "MOO2 Remakes"), such as the, " Master of Orion II Multiplayer Games " already created, because, others would come up with other versions, it would be best to set this up right to begin with.
Under that heading would be the different versions, such as the, "LAN games " that could come up over time.
Under that would be the posts on each subject to be discussed.

Personally, I like the checkbox idea.
This was done well in Sierra's Empire Earth - The Art of Conquest game.
It was even setup there where the pick cost would increase automatically when the player chose more picks in the same area.
For example, if one chose "-20% reduced cost", and "+20% more damage" for a particular unit, the cost for both choices is more than each seperately.
I guess this is based on the rarity of multiple increases in the same area would become statistically more improbable of occurring and therefore should be weighted appropiately.
Anyway, I'm sure I'll have other ideas, as others will too.

@ Lord Brazen: Does this type of discussion of a more refined rewrite of MOO2, instead of just modifications to the existing version, warrant its own seperate section the size of "Master of Orion II Multiplayer Games " currently is ?
And, Will you set something like this up so that further discussion could be posted under the appropiate sub-sections?
Or is a full re-write of MOO2, out of the scope, of what this forum is about, and therefore would need to be a completely sepetare Blogspot?
MOO1 Fan, MOO2 Fan, MOO3 needed too many changes = hopeless, getting older waiting for a MOO4 (still).

Void Stalker
Posts: 20
Joined: Sun Aug 30, 2009 9:47 am

Postby Void Stalker » Tue Jan 19, 2010 9:25 am

That's one area (multi-player) that I totally overlooked, but your quite right that there would be many issues that naturally address just muliplayer games rather than single player. My own interest is strictly single player (I know that multi has a charm all it's own, but the fun I get from MoO2 is in the form of long games --- not something that MoO2 is going to deliver reliably in multi --- IMHO), and my only attempt at multi (a hot-seat game) left me uninterested in ever repeating the experience.

One thing I have read up on here is that there are 'clear' choices for best race picks in multi games. If that is so, then it seems to me that the race picks need to be addressed to restore balance so that a nice spectrum of player races would be competitive. How boring and unbalanced it must be to have everyone 'having to' play the same race picks. :(

Some thoughts I have on this regard:

Race picks.

Creativity --- I like this one, but really guys, why every tech for every level of every category?!?! Why not reduce it down (to maybe 2, or even 1), but change the effects so that instead of the normal cost benefit (6/all) it instead works for just one extra tech/level within one category. If you wanted this for 1 pick, then you would have to take a corresponding 'uncreative' trait in one of the other categories, meaning that in that category, one tech (at each level) would not be available for research by the players race. If you didn't want to suffer that potential loss, then the cost should be doubled to 2 picks.

+2 Prod --- My solution for this would start with the bonus being applied to the presence of +Prod buildings upon the planet, so a race could get their first +1/worker only after getting Auto-Factories and building one on the colony, and then the +2 would be possible when the next +Prod building is built (Robo-Miners). I would even go so far as to allow a +3 Prod pick, if it was limited in this manner, just so that Deep-Core-Mining would make some sense for such a productive race. Basically, the +Prod pick would only work for developed worlds, and would scale up based upon how built up the world is.

As you can see, most if not all of my ideas would need a total rewrite of the game. :cry:

Anyway, I got to go do stuff, later guys.

User avatar
Posts: 8
Joined: Sat Jun 23, 2007 5:52 pm

Postby Riftwalker » Tue Jan 19, 2010 9:10 pm

There are a lot of good ideas and interesting replies to this thread. (Although it certainly wandered off course a bit. :D)

Regarding creating a MOO2 clone, remember that the formats of the graphics, sounds, and resources of the game are known. And any MOO2 fan already has them. Any MOO2 clone would be a world ahead if it simply reused these resources rather than trying to figure out custom art.

In a couple afternoons I wrote a program that loads MOO2 images/animations into video memory and displays them on the screen in OpenGL. It reads the location of the MOO2 installation from a configuration file. Then starts some of the background music and captures some keystrokes to move some of the sprites around the screen. The program was written in Java using LWJGL. With some elbow grease this could easily expand into the graphical/UI portion of the game.

But the point I'm finally getting around to making is, is the data model of the game and the algorithms which modify the data model well-understood and well-documented? It's one thing for a software developer to code up a data model and its transformation logic. It's quite another thing for that software engineer to actually have to experiment with the game to figure all those details out, and THEN implement them.

Posts: 17
Joined: Sat Jan 09, 2010 3:25 am

Postby Istrebitel » Sat Jan 23, 2010 2:59 am

Regarding disappearance, thats what i was talking about, lack of determination. It looks easy at start and then it become tedious. Actually, in programming, you frequently dont see a result up to the very end. Because you have to first build the so called engine and then - only then - its usefull to add something (graphics, ships...)
So, it looks easy, but it requires alot of work to reach the point after which its that easy... kinda. And well, you just think one day "this is taking too much time with too little outcome, screw it"... Thats how it happens in disappears.

I am trying to write an MOO2 remake right now, for about a week already. Several hours a day. If i ever get anywhere presentable, i'll approach the community with it and ask for help. I could very much use help on loading formats (i know them, but if someone already did a reading app he could easilly provide the code i could reuse). And later on alot of stuff. I hope i will have determination not to say "screw it" before i actually manage to make something at least distantly playable..

Posts: 2
Joined: Sat Jan 23, 2010 1:33 pm

Postby openMOO2 » Sat Jan 23, 2010 1:56 pm

Istrebitel wrote:I could very much use help on loading formats

i look at your nickname and think that you can speak russian?
there is some source about graphic format, smk video and stuff here in C++ with some russian comments.
i took some info from MOO2 WorkShop by Grig de Griz from www.mo3.fatal.ru
i learn saved format now

Posts: 17
Joined: Sat Jan 09, 2010 3:25 am

Postby Istrebitel » Mon Jan 25, 2010 11:39 am

Yes i know russian and all those tools are already bookmarked and downloaded by me :)
But the import of graphics is not my concern right now, as for starters simple printscreen will do. I am starting with making an engine, and then all that is left is just to fill it with content - that when it goes to graphics formats reading etc. If you dont have an engine, putting effort into loading the graphics might be wasted because .... well, because you can do nothing with what you have just learnt to import :)

So far i am making menu engine. If i succeed, then in a day or three i would be able to make almost every simple menu in the game (simple = consists of buttons or buttonlike captions and texts/images only). Then i'll create additional controls (like, sider control for taxes/game volume, list control for colony screen/planets screen/weapons in ship design), and well, that would be already something to show to the community. Since my program relies heavilly on xml, it would then be possible for people to contribute (i hope someone would get interested in this project) by filling in weapons data, tech data etc.

Until the game is already ~alpha-playable~ at least in hotseat the format reading can actually wait, i suppose...

Posts: 17
Joined: Sat Jan 09, 2010 3:25 am

Postby Istrebitel » Mon Jan 25, 2010 11:41 am

Btw, thanks for the link for that portmoo2 file. If i understand it contains functions and procedures to read the game lbx files?

Return to “Suggestions”

Who is online

Users browsing this forum: No registered users and 1 guest