Home World Forum
Stars! AutoHost web forums

Jump to Stars! AutoHost


 
 
Home » Stars! 2.6/7 » The Bar » Stars 3
Stars 3 Thu, 24 April 2014 12:02 Go to next message
platon79 is currently offline platon79

 
Chief Warrant Officer 3

Messages: 185
Registered: February 2004
Location: Norway
As most people know, the sequel to Stars 2, Stars Supernova Genesis, died and never hit the shelves.
As some people know, Jim Lane, one of the main members on the supernova team, and Jeff continued development on a low-graphics stars 3.0 after the fall of supernova. You can read about it in the old rec.games.computer.stars thread "Stars Supernova Genesis Beta", at https://groups.google.com/forum/#!searchin/rec.games.compute r.stars/stars$20supernova$20genesis$20beta/rec.games.compute r.stars/Ib3WDthwZDg/kywf5-bAtggJ
As you can see in this thread from august 2006 at https://groups.google.com/forum/#!searchin/rec.games.compute r.stars/jim$20lane/rec.games.computer.stars/aW7Sm670jgI/pszT i47pxOUJ the stars 3 project was still alive at that time.
This made me wonder if there was still some hope of it having continued as a hobby project, and maybe entered some sort of playable state after all these years, or just died? I didn't find any other threads about this project, and decided to do some digging. What had happened to the stars3 project? Was it still alive?
I did a lot of digging, and actually managed to get in touch with Lim Lane. This was my question:

To Jim:
Me and some fellow norwegians have recently begun playing the good old
masterpiece stars 2 again. (Which I have played a lot over the years) I long
ago learned of the tragic fate of the sequel, stars supernova Genesis, but
only recently read about your hobby project, stars 3, which looked really
promising and exiting. But the last i read about it was from 2006, so I
became really curious; Is the project still alive? Is it long dead and
buried? Do you still tinker on it now and then? Is it finished but not
released to the public? I would really like to know.

Yours sincerly
Runar Holen


And I received this response from Jim:

Greetings, Runar:

Stars 3 unfortunately died a long time ago. Jeff McBride and I worked on it
for a few months, but the need to earn a living interfered with both of us.

I doubt that any project of that scope would be noticed on desktop platforms
any more. The features that made Stars! 2 so good were about depth of game
play. Supernova had deeper game play than S!2, and also had the publisher
backing needed to do the kind of graphics essential for all but casual games
anymore. Stars! 3's game play would have been even better than Supernova's,
but we never had any budget for outside art - we were going to reuse the S!2
art with a few small new things added by volunteers / friends. Even in
2005/2006 or so, that probably wouldn't have been enough. We had hoped that
the former S!2 community would be interested enough to keep S!3 afloat, even
with bad art. Today, that community has long since moved on to other things.

A project of that scale would be better suited to Android today than to
desktops, but it doesn't look possible to earn a living with it there,
either.

I'm afraid that unless either Jeff or I wins a lottery or one/both of us
inherit from rich relatives that we don't know we have, Stars! is gone. A
shame; I joined the Supernova project because S!2 was one of the very few
computer games that I've ever enjoyed playing more than a few times.

-James Lane


So that is it I guess. I am really hoping that he or Jeff wins the lottery.

Report message to a moderator

Re: Stars 3 Thu, 24 April 2014 12:24 Go to previous messageGo to next message
Inquisitor80 is currently offline Inquisitor80

 
Warrant Officer

Messages: 115
Registered: February 2004
Location: The dark places in betwee...
is it not possible for them to release the code for S3 or S2 ??
if they do so then it can become an opensource project
i would love to see it made into a java app that can be run on all platforms
logging into a browser to do my turn would be epic. or logging in from work, take a turn, or just to look at something....

please?



- Inquisitor80
___________________________________
We must move forwards not backwards, upwards not forwards, and always twirling, twirling, twirling toward freedom.

Report message to a moderator

Re: Stars 3 Thu, 24 April 2014 16:40 Go to previous messageGo to next message
platon79 is currently offline platon79

 
Chief Warrant Officer 3

Messages: 185
Registered: February 2004
Location: Norway
Inquisitor80 wrote on Thu, 24 April 2014 12:24
is it not possible for them to release the code for S3 or S2 ??
if they do so then it can become an opensource project
i would love to see it made into a java app that can be run on all platforms
logging into a browser to do my turn would be epic. or logging in from work, take a turn, or just to look at something....

please?


You should read all the posts in the first link I provided from RJ Ladd (Jim Lane). (And remember that there is a page two...) They are very interesting reads, and also explain why it is almost a hopeless project to do things with the original stars2 source code. Ok, here is a couple of snippets:


I have an ownership stake in the SN code, but not in the Stars! 2
code. I've got the Stars! 2 code, but I can't release it.
Jeff and I had intended to at least release a version of Stars! 2 with
no copy protection, but I don't have the right to do that myself,
either.

Stars! 2 requires Visual C version 1.5 to compile. If there is a ghod,
Jeff and I should be the only people left on the planet who still have
VC 1.5 available. You might think that it would be easy to modify the
source to compile under a more recent version of VC. From personal
experience, I can assure you that you'd be mistaken. Very mistaken.

........

I tried to do that at one point. You'd find it hard to believe how
difficult it is to fix those bugs.
Stars! 2 was a Win16 game. Yup, Win16, with all its segmented memory
glory. 64K segments. Nowadays, a 64M segment sounds small. S2 was
written originally as a part time fun project by a couple of people
who were bored by their work on the guts of Excel, and who were
experts are wringing the last tiny bit of performance out of the
segmented Win16/8086 architecture. Shoehorning a universe the size of
a S2 game into Win16 took a great deal of skill. When they started,
they never expected that it would become a product, and didn't care at
all about code maintainability

.....

VC 1.5 supports the Win16 features that the Stars! 2 code depends on.
It isn't just 16 vs 32 bit ints (although that's a significant issue).
There are the different kinds of pointers for near and far data, the
different memory models, etc. Not to mention the Win16 API itself,
which newer versions of VC do not include. (Windows continues to
support the Win16 API via the compatibility box, but the VC compiler
no longer supports writing to that API.)
You're right about the bit-mapped structures. In addition, since
everything had to fit into 64K segments, larger data structures are
very carefully packed into 64K. Some of the game limits (16 players,
max number of ship designs, etc.) are due to the bit packing in
structures, and some (like the limited number of fleets or minefields
that can exist) are due to packing arrays of structures into 64K
segments.

All of these limits can, in theory, be releaxed. But the code, by a
couple of young and foolish Microsofties, was not written to be
maintainable. There are places where bit packed structures are packed
or unpacked by code that uses shift-and-mask operations with immediate
constants, i.e. "(foo & 0x1C) >> 2". That's a lot of lines of mostly
uncommented code to go through, finding, understanding and replacing
mysterious constants. There's a lot of implicit retyping of data via
pointer abuse. Also, given the extremely tight memory constraints (no
more than 640K available in the entire machine), there are global
variables that are used and reused many times for many different
purposes.

Understanding what the code is trying to do is hard enough. Changing
it without breaking things is harder. Much of the code makes very
little sense unless you remember the oddities of the Win16
environment.

Keep in mind, again, that Jeff & Jeff did not start writing Stars!
intending it to be anything more than a part time diversion for
themselves and a few friends. Stars! 2 was hacked together, not
engineered.

Over time, as Stars! evolved from the first demo for J&J and friends
through Stars! 2.6, the game design reached a remarkable level of
quality. IMNSHO, Stars! 2 is the best multiplayer 4x game ever
written, and its quite good for single player, too. No 4x game has
good AI, although some cheat enough to make their AI look better than
Stars! 2. (AFAIK, with one small exception, Stars! 2 AIs don't cheat
at all. SN AIs cannot cheat; they have exactly the same access to
exactly the same info as any other players. No Stars 3 AIs have been
written, but they would also be incapable of cheating. Really good
strategic AI is incredibly hard to write; perhaps impossible.) But the
code, frankly, is a nightmare.

The code in the SN engine (written in C) is quite a bit better than
Stars! 2 (also in C). The Stars 3 code (in C++), what there is of it,
is very clean and maintainable. But Stars! 2 has the minor advantage
of being complete and available. Smile


Jim Lane

Report message to a moderator

Re: Stars 3 Thu, 24 April 2014 17:58 Go to previous messageGo to next message
Altruist is currently offline Altruist

 
Commander

Messages: 1068
Registered: August 2005
Location: Berlin

Thanks for digging that out and getting in contact to inquire about Stars!3.

And it is quite obvious that the "Let's make it an open source project" approach isn't feasible, unfortunately.

Report message to a moderator

Re: Stars 3 Thu, 24 April 2014 19:58 Go to previous messageGo to next message
Inquisitor80 is currently offline Inquisitor80

 
Warrant Officer

Messages: 115
Registered: February 2004
Location: The dark places in betwee...
platon79 wrote on Thu, 24 April 2014 15:40


You should read all the posts in the first link I provided from RJ Ladd (Jim Lane). (And remember that there is a page two...) They are very interesting reads, and also explain why it is almost a hopeless project to do things with the original stars2 source code. Ok, here is a couple of snippets:



well boo
i understand now, however i am still disappointed



- Inquisitor80
___________________________________
We must move forwards not backwards, upwards not forwards, and always twirling, twirling, twirling toward freedom.

Report message to a moderator

Re: Stars 3 Sat, 24 May 2014 08:49 Go to previous messageGo to next message
theval is currently offline theval

 
Petty Officer 3rd Class

Messages: 43
Registered: May 2014
Quote:

Understanding what the code is trying to do is hard enough. Changing
it without breaking things is harder. Much of the code makes very
little sense unless you remember the oddities of the Win16
environment.


If that's the only obstacle to releasing the code, I think it's far-fetched. Digging through ancient code is such a joy and a challenge for a decent hacker. I suspect ownership and legal questions are much more of a hassle here.

Report message to a moderator

Re: Stars 3 Sat, 24 May 2014 15:09 Go to previous messageGo to next message
m.a@stars is currently offline m.a@stars

 
Commander

Messages: 2765
Registered: October 2004
Location: Third star to the left
Refactoring for teh win! Work at computer

Heck, make it a "challenge" even: see who can get the old beast to compile and run ok in a modern setting with the least code refactorings, or the most elegant, or the most portable... Pirate


[Updated on: Sat, 24 May 2014 15:11]




So many Stars, so few Missiles!

In space no one can hear you scheme! Deal

Report message to a moderator

Re: Stars 3 Sat, 24 May 2014 19:12 Go to previous messageGo to next message
mrvan is currently offline mrvan

 
Officer Cadet 1st Year

Messages: 220
Registered: May 2014
I would not think that the code base is that useful except for historical reasons / interest. If the community wants to invest a lot of time in programming, it should be much easier to rewrite from scratch.

(I know that has been attempted, and my fingers are itching to add another attempt to the list of failed projects... )

Report message to a moderator

Re: Stars 3 Sun, 25 May 2014 06:06 Go to previous messageGo to next message
theval is currently offline theval

 
Petty Officer 3rd Class

Messages: 43
Registered: May 2014
Quote:
If the community wants to invest a lot of time in programming, it should be much easier to rewrite from scratch.


I think FreeStars is a decent effort, at least from game engine side. Is that true?

Report message to a moderator

Re: Stars 3 Sun, 25 May 2014 06:26 Go to previous messageGo to next message
m.a@stars is currently offline m.a@stars

 
Commander

Messages: 2765
Registered: October 2004
Location: Third star to the left
mrvan wrote on Sun, 25 May 2014 01:12
I would not think that the code base is that useful except for historical reasons / interest.

There's still a lot of things poorly understood and hard to replicate exactly in a clone. Plus, there's plenty of bugs that could be fixed, even if not all of them would be easily fixed. Sherlock

Last but not least, Stars! belongs to posterity. One day MOMA or some other big museum will host it. Why not start now? Rolling Eyes



So many Stars, so few Missiles!

In space no one can hear you scheme! Deal

Report message to a moderator

Re: Stars 3 Sun, 25 May 2014 08:22 Go to previous messageGo to next message
theval is currently offline theval

 
Petty Officer 3rd Class

Messages: 43
Registered: May 2014
Quote:
There's still a lot of things poorly understood and hard to replicate exactly in a clone.


I'm curious what this could be...

Report message to a moderator

Re: Stars 3 Sun, 25 May 2014 21:13 Go to previous messageGo to next message
magic9mushroom is currently offline magic9mushroom

 
Commander

Messages: 1361
Registered: May 2008
platon79 wrote on Fri, 25 April 2014 06:40
No 4x game has
good AI, although some cheat enough to make their AI look better than
Stars! 2.


GalCiv 2 is famous for a game in which one of the AIs used the human player as a pawn against another AI.

Report message to a moderator

Re: Stars 3 Mon, 26 May 2014 03:55 Go to previous messageGo to next message
m.a@stars is currently offline m.a@stars

 
Commander

Messages: 2765
Registered: October 2004
Location: Third star to the left
theval wrote on Sun, 25 May 2014 14:22
Quote:
There's still a lot of things poorly understood and hard to replicate exactly in a clone.


I'm curious what this could be...

* The AIs, for starters, though most people won't miss them if they're replaced with anything that works. Hit over head

* The Battleboard has random and non-random components which nobody has entirely explained. Boxing

* The exact freakin' mineral depletion mechanics. Wall Bash

* Plenty of "little" roundoff and integer-math artifacts that keep things like pop growth from being exact. Sherlock

* The MT, wormholes and other random events' exact randomness. Whip

* Minehit damage allocation exact workings. We think we know all the wrinkles, but... Confused



So many Stars, so few Missiles!

In space no one can hear you scheme! Deal

Report message to a moderator

Re: Stars 3 Mon, 26 May 2014 04:08 Go to previous messageGo to next message
iztok is currently offline iztok

 
Commander

Messages: 1202
Registered: April 2003
Location: Slovenia, Europe
Hi!
magic9mushroom wrote on Mon, 26 May 2014 03:13

GalCiv 2 is famous for a game in which one of the AIs used the human player as a pawn against another AI.

IMO you're over-estimating the AI in GC-2. I've played quite a lot of GC-2 games and was also quite active on GalCiv forum and 've never seen or heard of anything alike. Sad

The main problem with such information is: a live players sees a random act of an AI, that makes sense to the live player, and immediately thinks AI is "smart" (has code to handle this situation). Unfortunately, most of the time it hasn't. The intelligence is just in the eye of the beholder.

BR, Iztok

Report message to a moderator

Re: Stars 3 Mon, 26 May 2014 05:28 Go to previous messageGo to next message
theval is currently offline theval

 
Petty Officer 3rd Class

Messages: 43
Registered: May 2014
m.a@stars wrote on Mon, 26 May 2014 09:55
theval wrote on Sun, 25 May 2014 14:22
Quote:
There's still a lot of things poorly understood and hard to replicate exactly in a clone.


I'm curious what this could be...

* The AIs, for starters, though most people won't miss them if they're replaced with anything that works. Hit over head


Nice challenge, I agree. An algorithm junkie is required for that. Crazy

Quote:

* The Battleboard has random and non-random components which nobody has entirely explained. Boxing

* Plenty of "little" roundoff and integer-math artifacts that keep things like pop growth from being exact. Sherlock

* The MT, wormholes and other random events' exact randomness. Whip

* Minehit damage allocation exact workings. We think we know all the wrinkles, but... Confused


I think few will notice if one clever randomness is replaced by another clever randomness. And intrigue is preserved by keeping details in secret Razz

Quote:
* The exact freakin' mineral depletion mechanics. Wall Bash


What is mineral depletion?

Report message to a moderator

Re: Stars 3 Mon, 26 May 2014 14:59 Go to previous messageGo to next message
m.a@stars is currently offline m.a@stars

 
Commander

Messages: 2765
Registered: October 2004
Location: Third star to the left
theval wrote on Mon, 26 May 2014 11:28
What is mineral depletion?

The rate planetary minconcs decrease as they're mined. There's a couple approximate formulas, but little else. Sherlock



So many Stars, so few Missiles!

In space no one can hear you scheme! Deal

Report message to a moderator

Re: Stars 3 Tue, 27 May 2014 04:46 Go to previous messageGo to next message
theval is currently offline theval

 
Petty Officer 3rd Class

Messages: 43
Registered: May 2014
m.a@stars wrote on Mon, 26 May 2014 20:59
The rate planetary minconcs decrease as they're mined. There's a couple approximate formulas, but little else. Sherlock


In reality it is exponential depletion: http://en.wikipedia.org/wiki/Oil_depletion#Oil_well_producti on_decline

But I assume it must be adjusted up as mining technology advances (i.e. cons).

Report message to a moderator

Re: Stars 3 Tue, 27 May 2014 05:27 Go to previous messageGo to next message
XAPBob is currently offline XAPBob

 
Lt. Commander

Messages: 957
Registered: August 2012
I thought it was pretty well understood (although it does suffer from rounding errors (doesn't everything in Stars!))

Report message to a moderator

Re: Stars 3 Tue, 27 May 2014 10:10 Go to previous messageGo to next message
magic9mushroom is currently offline magic9mushroom

 
Commander

Messages: 1361
Registered: May 2008
iztok wrote on Mon, 26 May 2014 18:08
Hi!
magic9mushroom wrote on Mon, 26 May 2014 03:13

GalCiv 2 is famous for a game in which one of the AIs used the human player as a pawn against another AI.

IMO you're over-estimating the AI in GC-2. I've played quite a lot of GC-2 games and was also quite active on GalCiv forum and 've never seen or heard of anything alike. Sad

The main problem with such information is: a live players sees a random act of an AI, that makes sense to the live player, and immediately thinks AI is "smart" (has code to handle this situation). Unfortunately, most of the time it hasn't. The intelligence is just in the eye of the beholder.

BR, Iztok



In any case, the AI is better than the Stars! AI even with cheating off (and the Stars! Expert AI most certainly does cheat, Lane's claims to the contrary notwithstanding).

Report message to a moderator

Re: Stars 3 Tue, 27 May 2014 15:24 Go to previous messageGo to next message
mrvan is currently offline mrvan

 
Officer Cadet 1st Year

Messages: 220
Registered: May 2014
Here's what I would do if I were to rewrite stars!:

- Strict server/clients architecture
- All information between server and clients in json (or XML if need be)
- Server is a python* program that generates new turns based on old universe plus orders
- Server accepts partial orders as well as complete orders and can be queried for all existing state
- Base client would be a web based client that functions much like the current client
- Other clients could do various automation tasks and store partial orders, notes, messages etc on the server
- AI would also be a client like any other client. Cheating is replaced by 'handicap' flags on the server

By having a very modular server/client design, multiple people can work on different aspects effectively; and multiple clients can exist and compete with each other.

At the moment, I am completely willing to contribute to a rewrite, but I lack the time to do it on my own, so I would only be interested if 2+ more people are willing to commit serious time. I can do back-end or front-end, I don't really care.

*) this is about what *I* would do, after all Smile. Ultimately, server side language does not matter that much, but something high-level (+portable +open source) like python is probably more efficient than something like C or C#.

Report message to a moderator

Re: Stars 3 Wed, 28 May 2014 06:08 Go to previous messageGo to next message
m.a@stars is currently offline m.a@stars

 
Commander

Messages: 2765
Registered: October 2004
Location: Third star to the left
XAPBob wrote on Tue, 27 May 2014 11:27
I thought it was pretty well understood (although it does suffer from rounding errors (doesn't everything in Stars!))

Significant and largely unexplained "rounding" errors. Sherlock

There was a time when Planet Hab and Fuel Usage formulas also had these kinds of "rounding" errors until they were better understood. Whip



So many Stars, so few Missiles!

In space no one can hear you scheme! Deal

Report message to a moderator

Re: Stars 3 Wed, 28 May 2014 06:17 Go to previous messageGo to next message
m.a@stars is currently offline m.a@stars

 
Commander

Messages: 2765
Registered: October 2004
Location: Third star to the left
mrvan wrote on Tue, 27 May 2014 21:24
Here's what I would do if I were to rewrite stars!:

- Strict server/clients architecture

Wholeheartedly agree. Divide the beast into manageable chunks and conquer it! Pirate


Quote:
- All information between server and clients in json (or XML if need be)

... or any other reasonably compact & efficient protocol. Lurking


Quote:
- Server is a python* program that generates new turns based on old universe plus orders

Can the "snake" easily manage large in-memory data & tables? I guess it can be multi-threaded? Sherlock


Quote:
- Server accepts partial orders as well as complete orders and can be queried for all existing state

Yes


Quote:
- Base client would be a web based client that functions much like the current client

Teleport


Quote:
- Other clients could do various automation tasks and store partial orders, notes, messages etc on the server

Nod


Quote:
- AI would also be a client like any other client. Cheating is replaced by 'handicap' flags on the server

Twisted Evil


Quote:
By having a very modular server/client design, multiple people can work on different aspects effectively; and multiple clients can exist and compete with each other.

Cheers


Quote:
At the moment, I am completely willing to contribute to a rewrite, but I lack the time to do it on my own, so I would only be interested if 2+ more people are willing to commit serious time. I can do back-end or front-end, I don't really care.

I've been doing "back-end" for some time now, but lack of serious time keeps progress slow. Asleep at cptr


Quote:
something high-level (+portable +open source) like python is probably more efficient than something like C or C#.

By what definition of "efficient" is that? Whip



So many Stars, so few Missiles!

In space no one can hear you scheme! Deal

Report message to a moderator

Re: Stars 3 Wed, 28 May 2014 06:19 Go to previous messageGo to next message
m.a@stars is currently offline m.a@stars

 
Commander

Messages: 2765
Registered: October 2004
Location: Third star to the left
theval wrote on Tue, 27 May 2014 10:46
In reality it is exponential depletion: http://en.wikipedia.org/wiki/Oil_depletion#Oil_well_producti on_decline

In *theory* yes. In practice the math doesn't quite work ok, and weird things happen. Confused



So many Stars, so few Missiles!

In space no one can hear you scheme! Deal

Report message to a moderator

Re: Stars 3 Wed, 28 May 2014 06:37 Go to previous messageGo to next message
XAPBob is currently offline XAPBob

 
Lt. Commander

Messages: 957
Registered: August 2012
[quote title=m.a@stars wrote on Wed, 28 May 2014 11:17]mrvan wrote on Tue, 27 May 2014 21:24

I've been doing "back-end" for some time now, but lack of serious time keeps progress slow. Asleep at cptr


Quote:
something high-level (+portable +open source) like python is probably more efficient than something like C or C#.

By what definition of "efficient" is that? Whip


The limiting factor here is clearly developer time, not CPU resource.

Report message to a moderator

Re: Stars 3 Wed, 28 May 2014 11:26 Go to previous messageGo to previous message
mrvan is currently offline mrvan

 
Officer Cadet 1st Year

Messages: 220
Registered: May 2014
[quote title=m.a@stars wrote on Wed, 28 May 2014 06:17]mrvan wrote on Tue, 27 May 2014 21:24

[...]
Wholeheartedly agree. Divide the beast into manageable chunks and conquer it! Pirate [..] :yes::nod: &c.


Thanks! Now just to find the time...

[quote title=m.a@stars wrote on Wed, 28 May 2014 06:17]mrvan wrote on Tue, 27 May 2014 21:24


Can [python] easily manage large in-memory data & tables? I guess it can be multi-threaded? Sherlock


Python can easily manage large arrays and lists. If needed, packages like numpy/scipy can offer extremely fast matrix manipulation. If it could be done on a single floppy, it can certainly be done in python Smile.

Multithreading is available and quite easy to set up and locks etc are well supported. However because of the interpreted nature it only speeds up IO / external processes, not loops (there is a 'global interpreter lock'). If you have really serious calculations to do, it is probably best to do that part in a different language. You can integrate C code in python seamlessly (you replace one module and the rest of the code doesn't notice the difference). However, I would be surprised if this would be necessary


m.a@stars wrote on Wed, 28 May 2014 06:17
Quote:
something high-level (+portable +open source) like python is probably more efficient than something like C or C#.

By what definition of "efficient" is that? Whip


Yes sorry, I could have been more clear there. I meant developer-time efficient as pointed out by XAPBob.

Anyway, as you state the problem is finding serious time. Where did my college days go? Wink

I did get one other enthousiastic response in a PM so maybe we can do something. The question is also: can we somehow convince more of the community to come back if we have a more modern client? Developing a game for the <50 active users of this forum doesn't sound like a very efficient use of time (even if it can be good fun).


Report message to a moderator

Previous Topic: Stars! on a tablet ??
Next Topic: Replacement needed.
Goto Forum:
  


Current Time: Thu Apr 18 22:22:02 EDT 2024