Android app for checking Netrek Servers

124 views
Skip to first unread message

Andy

unread,
Oct 8, 2011, 9:42:07 PM10/8/11
to netrek-forever
Hi,

This is a free app I wrote to allow people to easily see who is
playing Netrek at any given time.

https://market.android.com/details?id=com.swizel.android.netrekserverinfo

If you use it, please rate it or leave a comment. I'm always looking
for ideas to improve it too.

Regards,

Andy.

Zachary Uram

unread,
Oct 9, 2011, 12:22:40 AM10/9/11
to netrek-...@googlegroups.com
Nice work Andy. Thanks! I'm sure the netrek community will make good use of it.

--
Zach
http://www.fidei.org

John R. Dennison

unread,
Oct 9, 2011, 12:36:15 AM10/9/11
to netrek-...@googlegroups.com
On Sun, Oct 09, 2011 at 12:22:40AM -0400, Zachary Uram wrote:
> Nice work Andy. Thanks! I'm sure the netrek community will make good use of it.

Heh.

"netrek community"

That's pretty funny. When was the last time there was t-mode on a real
server?


John
--
IRC - Where men are men, women are men and little girls are FBI.

Karthik Arumugham

unread,
Oct 9, 2011, 12:40:03 AM10/9/11
to netrek-...@googlegroups.com
On Oct 9, 2011, at 12:36 AM, John R. Dennison wrote:

> On Sun, Oct 09, 2011 at 12:22:40AM -0400, Zachary Uram wrote:
>> Nice work Andy. Thanks! I'm sure the netrek community will make good use of it.
>
> Heh.
>
> "netrek community"
>
> That's pretty funny. When was the last time there was t-mode on a real
> server?

For about 4 hours last Sunday night on pickled. We had a queue very briefly. Maybe we'll get some folks again this weekend!

Zachary Uram

unread,
Oct 9, 2011, 12:52:57 AM10/9/11
to netrek-...@googlegroups.com
On Sun, Oct 9, 2011 at 12:36 AM, John R. Dennison <j...@gerdesas.com> wrote:
>
> Heh.
>
> "netrek community"
>
> That's pretty funny.  When was the last time there was t-mode on a real
> server?

A few months?

--
Zach
http://www.fidei.org

Zachary Uram

unread,
Oct 9, 2011, 12:53:56 AM10/9/11
to netrek-...@googlegroups.com
On Sun, Oct 9, 2011 at 12:40 AM, Karthik Arumugham <kar...@karthik.com> wrote:
>
> For about 4 hours last Sunday night on pickled. We had a queue very briefly. Maybe we'll get some folks again this
> weekend!

Cool. Thanks for the info. Will start checking the metaserver during
prime time again.

--
Zach
http://www.fidei.org

John R. Dennison

unread,
Oct 9, 2011, 1:09:26 AM10/9/11
to netrek-...@googlegroups.com
On Sun, Oct 09, 2011 at 12:40:03AM -0400, Karthik Arumugham wrote:
>
> For about 4 hours last Sunday night on pickled. We had a queue very
> briefly. Maybe we'll get some folks again this weekend!

Heh. One time. In months. I don't think I'll hold my breath on the
gaming coming back from the brink of death.


John
--
If I'm having trouble with my wife, I come here and watch the traffic. I
thought I had problems, but look at these poor people. They sit in this
traffic every day. These people have it so bad compared to me.

-- Angelo Ramirez, a retired police officer, on the Cross Bronx Expressway,
New York Times, 2 April 2010

Karthik Arumugham

unread,
Oct 9, 2011, 1:37:00 AM10/9/11
to netrek-...@googlegroups.com
On Oct 9, 2011, at 1:09 AM, John R. Dennison wrote:

> On Sun, Oct 09, 2011 at 12:40:03AM -0400, Karthik Arumugham wrote:
>>
>> For about 4 hours last Sunday night on pickled. We had a queue very
>> briefly. Maybe we'll get some folks again this weekend!
>
> Heh. One time. In months. I don't think I'll hold my breath on the
> gaming coming back from the brink of death.

I believe that's the 3rd or 4th time in the past couple months that we've had extended T with 12+ players and such.

No, it's not good, and it's not going to sustain the game. Playing more once in a while will sustain the game until we can make it more attractive to newbies. :)

John R. Dennison

unread,
Oct 9, 2011, 1:50:41 AM10/9/11
to netrek-...@googlegroups.com
On Sun, Oct 09, 2011 at 01:37:00AM -0400, Karthik Arumugham wrote:
>
> I believe that's the 3rd or 4th time in the past couple months that
> we've had extended T with 12+ players and such.

My stats don't reflect it. And, to be quite honest, I disabled my
t-mode alert system many months ago and I rarely ever look at a plist
and my days of camping on the server are over so I really have no way
of knowing when there might be t-mode or even critical mass to form
t-mode.

I will probably drop the cacti graphs as well at some point, especially
since I apparently am blocked from the tard server's plist port.

All that being said... I still maintain that the game's dead :)

> No, it's not good, and it's not going to sustain the game. Playing
> more once in a while will sustain the game until we can make it more
> attractive to newbies. :)

I have little desire to play at all; and unless the people playing are
actually playing and not the normal run-of-the-mill "watch me run away
and fart torps at you" twinks I can't picture that changing.

I hope for the sake of those that have some misguided delusions about
the game coming back from the dead that playing hours do indeed continue
to pick up. Hell, it would be hard for it to be any worse than the _no
players_ that was the case for the past many months.

But until the rogue and extraneous servers get removed from the metas I
don't see anything really changing nor do I see anyone in a position to
do something about it wanting things to change.

Same old shit, just a different day.

*shrug*

John
--
<@rattle> I am fully confident that the cisco feature train is maintained by a
schizophrenic sadist.

Nimret Sandhu

unread,
Oct 9, 2011, 3:06:21 AM10/9/11
to netrek-...@googlegroups.com
hmmm .. looks like I may have to join in sometime .. out this weekend though :)

I'll have to try out the android app ..

nimret


San Mehat

unread,
Oct 9, 2011, 10:33:47 AM10/9/11
to netrek-...@googlegroups.com
On Sat, Oct 8, 2011 at 9:36 PM, John R. Dennison <j...@gerdesas.com> wrote:
> On Sun, Oct 09, 2011 at 12:22:40AM -0400, Zachary Uram wrote:
>> Nice work Andy. Thanks! I'm sure the netrek community will make good use of it.
>
> Heh.
>
> "netrek community"
>
> That's pretty funny.  When was the last time there was t-mode on a real
> server?

Troll much?

Collin Pruitt

unread,
Oct 9, 2011, 6:25:16 PM10/9/11
to netrek-...@googlegroups.com

On Oct 9, 2011, at 10:33 AM, San Mehat wrote:
Troll much?

I hope you know that he's one of the oldest contributors to Netrek that's still around in some form, and he was a large part in sustaining the game up until it's player base train wreck a few months ago. If it's not more obvious that the game is dead than the fact that we've had extended T-mode some four times or less in the past couple of months, then I don't know what is.

Just saying.

---
Collin Pruitt
Ubuntu Member
Netrek Client COW Developer

John R. Dennison

unread,
Oct 9, 2011, 7:26:27 PM10/9/11
to Collin Pruitt, netrek-...@googlegroups.com
On Sun, Oct 09, 2011 at 06:25:16PM -0400, Collin Pruitt wrote:
>
> I hope you know that he's one of the oldest contributors to Netrek
> that's still around in some form, and he was a large part in

Nah, James and Karthik have been around much, much longer. You did get
the 'old' part right, though :)

Truth be told I started losing interest when I was put through the third
degree when I offered services to replace the dead infrastructure in the
netrek.org core. Hell, even getting wiki.netrek.org setup was really
more trouble than it was worth. I kept going as I thought that there was
hope for the game. But nothing ever changed. Bill continued to be permitted
to crap all over the game. Extraneous servers are allowed to remain on
the meta. And the metas themselves remain open. The single best thing
to happen in the past few years was the dissolving of the of the NIT;
again I though things might change. But it's just status quo as normal
except without Carlos.

Hint - it will never, ever change.

> sustaining the game up until it's player base train wreck a few months
> ago. If it's not more obvious that the game is dead than the fact that
> we've had extended T-mode some four times or less in the past couple
> of months, then I don't know what is.

It's been dead for far, far longer than the past few months.

And I place this firmly on the backs of Bill and those that thought that
their views on "openness" were good for the community. Yeah, well, we
see where that got us. Good job.

John
--
What happened should never, ever have happened. The families of those who
died should not have had to live with the pain and hurt of that day, and a
lifetime of loss.

-- Prime Minister David Cameron of Britain, apologizing for the Bloody Sunday
killings of 14 unarmed demonstrators by British soldiers in Londonderry,
Northern Ireland, in 1972, New York Times, 16 June 2010

John R. Dennison

unread,
Oct 9, 2011, 7:27:43 PM10/9/11
to netrek-...@googlegroups.com
On Sun, Oct 09, 2011 at 07:33:47AM -0700, San Mehat wrote:
>
> Troll much?

Don't know wtf you're talking about much?


John
--
I don't know why everybody is running to buy these expensive and useless
machines. I can overcome the body scanners with enough explosives to bring
down a Boeing 747. That's why we haven't put them in our airport.

-- Rafi Sela, Israeli airport security expert, referring to Tel Aviv's
Ben Gurion International Airport, addressing Canada's Parliament,
22 April 2010

Leon Medvinsky

unread,
Oct 9, 2011, 10:29:47 PM10/9/11
to netrek-...@googlegroups.com
Hmmm, I wonder how well this story of Netrek's decay would translate into a plot for fiction?

John R. Dennison

unread,
Oct 9, 2011, 10:54:54 PM10/9/11
to netrek-...@googlegroups.com
On Sun, Oct 09, 2011 at 07:29:47PM -0700, Leon Medvinsky wrote:
> Hmmm, I wonder how well this story of Netrek's decay would translate into a
> plot for fiction?

The sad part is....

It's not fiction :(

Zachary Uram

unread,
Oct 9, 2011, 11:24:25 PM10/9/11
to netrek-...@googlegroups.com
Who Mourns for Netrek?
--
Zach
http://www.fidei.org

James Cameron

unread,
Oct 9, 2011, 11:46:33 PM10/9/11
to netrek-...@googlegroups.com
Well, I had a nice game today on pickled, twice in fact, we even had a
queue at one stage. Thanks for playing, those who did.

Last week, two others and I taught 24 teenagers how to play Netrek at a
technology holiday camp. They had a great time learning. The last game
was a leaders vs campers, and the leaders genocided the campers 40
minutes in.

An Android app for being told about Netrek sounds great, has anyone
reviewed the code yet?

--
James Cameron
http://quozl.linux.org.au/

Jared Thirsk

unread,
Oct 9, 2011, 11:48:54 PM10/9/11
to netrek-...@googlegroups.com

I for one dream of its rebirth.

Jared
> --
> To post send mail here: netrek-...@googlegroups.com
> More info: http://groups.google.com/group/netrek-forever/
> Nota bene: Please be civil and treat list members with respect.
>

Zachary Uram

unread,
Oct 9, 2011, 11:50:11 PM10/9/11
to netrek-...@googlegroups.com
I dream of that also. Netrek will rise from its ashes like a glorious
phoenix! A new generation of developers will lead the way hehe.

On Sun, Oct 9, 2011 at 11:48 PM, Jared Thirsk <jth...@shaw.ca> wrote:
>
> I for one dream of its rebirth.

--
Zach
http://www.fidei.org

Zachary Uram

unread,
Oct 9, 2011, 11:51:09 PM10/9/11
to netrek-...@googlegroups.com
On Sun, Oct 9, 2011 at 11:46 PM, James Cameron <qu...@us.netrek.org> wrote:
> Well, I had a nice game today on pickled, twice in fact, we even had a
> queue at one stage.  Thanks for playing, those who did.

Excellent. A regular Sunday game could be the base we can build from
to revive netrek pickup. I will be there next weekend!

> Last week, two others and I taught 24 teenagers how to play Netrek at a
> technology holiday camp.  They had a great time learning.  The last game
> was a leaders vs campers, and the leaders genocided the campers 40
> minutes in.

Woot.

> An Android app for being told about Netrek sounds great, has anyone
> reviewed the code yet?

Ah good point.


--
Zach
http://www.fidei.org

Karthik Arumugham

unread,
Oct 10, 2011, 12:03:39 AM10/10/11
to netrek-...@googlegroups.com
On Oct 9, 2011, at 11:51 PM, Zachary Uram wrote:

> On Sun, Oct 9, 2011 at 11:46 PM, James Cameron <qu...@us.netrek.org> wrote:
>> Well, I had a nice game today on pickled, twice in fact, we even had a
>> queue at one stage. Thanks for playing, those who did.
>
> Excellent. A regular Sunday game could be the base we can build from
> to revive netrek pickup. I will be there next weekend!

…T is still ongoing (with 12 players at the moment), after 3.6 hours. I think we'll end up with more player-hours than last week by a good bit.

Zachary Uram

unread,
Oct 10, 2011, 12:18:07 AM10/10/11
to netrek-...@googlegroups.com
I joined observer port to see what was going on and Klis promptly
ejected me within 2 minutes. How rude. This is one factor why netrek
is in such trouble. And Bill was one who ejected me, and Karthik. Very
sad. Oh well at least I tried; will check back in X indeterminate
number of months I suppose if this is how I am treated. Infantile.

On Mon, Oct 10, 2011 at 12:03 AM, Karthik Arumugham <kar...@karthik.com> wrote:
>
> …T is still ongoing (with 12 players at the moment), after 3.6 hours. I think we'll end up with more player-hours than last week by a good bit.
>

> --
> To post send mail here: netrek-...@googlegroups.com
> More info: http://groups.google.com/group/netrek-forever/
> Nota bene: Please be civil and treat list members with respect.
>

--
Zach
http://www.fidei.org

John R. Dennison

unread,
Oct 10, 2011, 12:25:18 AM10/10/11
to netrek-...@googlegroups.com
On Sun, Oct 09, 2011 at 11:50:11PM -0400, Zachary Uram wrote:
> I dream of that also. Netrek will rise from its ashes like a glorious
> phoenix! A new generation of developers will lead the way hehe.

Stop top-posting :(

I'll take that bet. Say... $1000 USD?

John
--
It's probably tough to count votes when you're in a cave.

-- Defense Secretary Robert Gates, on the 7 weeks it took Al Qaeda to name
Ayman al-Zawahri to succeed Osama bin Laden, final Pentagon press
conference, 16 June 2011

John R. Dennison

unread,
Oct 10, 2011, 12:26:05 AM10/10/11
to Karthik Arumugham, netrek-...@googlegroups.com
On Mon, Oct 10, 2011 at 12:03:39AM -0400, Karthik Arumugham wrote:
> T is still ongoing (with 12 players at the moment), after 3.6 hours. I
> think we'll end up with more player-hours than last week by a good
> bit.

s/week/the past few months/


John

--
<zu22> i've talked with Jesus several times
<zu22> i even touched his robe
<zu22> and arch angels have appeared to me
<zu22> such as Gabriel and Michael
<zu22> they trained me in battling demons
<zu22> this was 2 years ago
<zu22> yeah i better not say anymore
<zu22> you guys aren't ready

Jared Thirsk

unread,
Oct 10, 2011, 1:05:15 AM10/10/11
to netrek-...@googlegroups.com
> > I dream of that also. Netrek will rise from its ashes like a
> > glorious phoenix! A new generation of developers will lead the way hehe.
>
> I'll take that bet.  Say... $1000 USD?

Betting for or against?  I am betting a chunk of my life savings on it.

Jared

Toumal Rakesh

unread,
Oct 10, 2011, 4:01:54 AM10/10/11
to netrek-...@googlegroups.com
Awesome job on the android app. Don't listen to the naysayers.

Quite frankly, I'm saddened by the constant decline in netrek players - but I am certainly not surprised. Netrek does not endear itself to new players or even potential contributors.

When I tried to set up a server months ago, I found the code to be broken on 64bit platforms. The server setup itself is archaic. Re-starting the server multiple times gets you banned from the metaservers, and there is no valid reason for that. And my requests for help were answered with "patches welcome". We all know that "patches welcome" is another word for "sod off", so I did. Now before you sort me into the clueless drawer, I am a fulltime software dev, I do code in C/C++ (though mostly Java professionally these days), and I do participate in community projects such as coding for EECH (eechcentral.com)
I'm not an expert in the intricacies of 32 vs 64 bit problems and the kinds of responses I got didn't exactly motivate me.

Heck there's almost more conquest players than netrek players these days, and no wonder - setting up a server is a breeze, and if you find a bug the maintainers patch it.


Here's my two cents, my suggestion for a roadmap to revive Netrek:


1) Start from scratch.
Seriously, ditch the code. There simply can not be a discussion about whether or not it "works fine".

2) Do a cross-platform implementation that's playable on the browser
There's a reason why Minecraft was a success, but Infiniminer wasn't: No matter what system, you just go to that website and play the game right from the webpage. I'm completely aware that I'm biased towards Java here (despite what Oracle is doing to it right now) but that's just my suggestion here. Scala would be an idea too, I must say that I'm learning to love this language.

3) Think about a mobile version from the start
See 2. - and if you write in Java, doing an Android version is that much easier.

4) Encourage and support server operators
Having more servers is good, not bad. Consolidating servers makes sense if you have an MMO with 1000 players on three servers, so you end up with one server with 3000 players. But if you have 0 players, like Netrek currently does, then fewer servers don't help. More servers give people a choice so they can pick something that has a good ping near them. But of course you need to do 1, 2 and 3 first.
And remove the meta-ban on too frequent updates, or at least raise the limit so that troubleshooting sessions don't get the new server banned before it's up.

5) Do regular updates, and talk about them!
Announce on linuxgames, happypenguin, heck, poke kotaku to bring an article about the revival of one of the first multiplayer computer games...



So the question is... who of you would be interested?




>Stop top-posting :(

If that's what riles up people here, I don't have much hope...




regards

Allen Tipper

unread,
Oct 10, 2011, 4:15:16 AM10/10/11
to netrek-...@googlegroups.com
I know I would be interested in points 1, 2, 4, and 5. The problem
with a mobile client is that it simply isn't possible to make a usable
method of input on Android and have anywhere near the current
complexity of the game, which is a lot of why I enjoy the game as much
as I do. However, rewriting a new version essentially from scratch may
be worthwhile, and making it run within a browser is certainly
possible and sane. I'm a fellow coding professional myself, and
although I do know C/C++ in general, my knowledge of them is pretty
limited. I'm far better with Java and Python.

Simply making a Java client that was usable in a web browser, that
would connect to current servers, would probably be a boon to getting
players. Heck, has anyone ever tried a Flash client? Would it be
possible? I don't know enough to answer that myself, but if it were
possible, even just putting a Flash client on Kongregate would be a
great plan for at least getting people to try the game.

-Allen Tipper
Insert witty .sig here

Toumal Rakesh

unread,
Oct 10, 2011, 4:24:01 AM10/10/11
to netrek-...@googlegroups.com
On Mon, Oct 10, 2011 at 10:15 AM, Allen Tipper <ake...@gmail.com> wrote:
I know I would be interested in points 1, 2, 4, and 5.

Awesomesauce!
 
The problem
with a mobile client is that it simply isn't possible to make a usable
method of input on Android and have anywhere near the current
complexity of the game, which is a lot of why I enjoy the game as much
as I do.

I agree it's not easy but is it really impossible? Besides, if all fails the very same controls could be used- after all, Android does support keyboard and mouse input...
 
However, rewriting a new version essentially from scratch may
be worthwhile, and making it run within a browser is certainly
possible and sane.
I'm a fellow coding professional myself, and
although I do know C/C++ in general, my knowledge of them is pretty
limited. I'm far better with Java and Python.

In the browser, Java Webstart makes a lot of sense to me, so that should be no issue ;)
 
Simply making a Java client that was usable in a web browser, that
would connect to current servers, would probably be a boon to getting
players.

Frankly I'd shoot for a complete rewrite, including the server. Did you take a look at the server code? It looks exactly like you'd expect from a piece of software grown over many years and with many cooks in the kitchen.
 
Heck, has anyone ever tried a Flash client? Would it be
possible?

Flash is very limited. I had some bad experiences running into walls of the API in actionscript recently... I'm not saying it's impossible, but it's certainly a fairly limited thing. Plus you can't just offer a desktop version (unless you go the hacky route of packing a flash file in an executable)


John R. Dennison

unread,
Oct 10, 2011, 4:33:08 AM10/10/11
to netrek-...@googlegroups.com
On Mon, Oct 10, 2011 at 10:01:54AM +0200, Toumal Rakesh wrote:
>
> When I tried to set up a server months ago, I found the code to be broken on
> 64bit platforms.

We ran the server on 64bit for a long time without incident other than
bots which was solved with a -m32 in CFLAGS. The reason is that when
the server core was made to be 64bit compliant the bots were not
modified in a similar manner. The common bot code does not use the same
headers as the server core and the code bases diverged. Patches to
resolve that issue have been welcome for a long time.

> The server setup itself is archaic.

Editing a couple files is archaic?

> Re-starting the server
> multiple times gets you banned from the metaservers, and there is no valid
> reason for that.

DOS protection. While it _may_ be a little too sensitive (to be fair
I've not looked at that code in many months) it is there for a necessary
purpose. There is no reason for rapid server restarts; if you are doing
development or initial server setup don't solicit the metas. Even
better, don't add unnecessary servers to the metas at all.

> And my requests for help were answered with "patches
> welcome". We all know that "patches welcome" is another word for "sod off",

That's not true at all. _You_ may interpret that saying as such, the
rest of us didn't.

> so I did. Now before you sort me into the clueless drawer, I am a fulltime
> software dev, I do code in C/C++ (though mostly Java professionally these
> days), and I do participate in community projects such as coding for EECH (
> eechcentral.com)
> I'm not an expert in the intricacies of 32 vs 64 bit problems and the kinds
> of responses I got didn't exactly motivate me.

I do believe you were told of the -m32 issue, were you not? I know you
were asking questions back then and I even remember spending some time
with you on the issue and then you just disappeared. I 'spose I can go
look through my logs and refresh my memory.

> Heck there's almost more conquest players than netrek players these days,
> and no wonder - setting up a server is a breeze, and if you find a bug the
> maintainers patch it.

Setting up a netrek server takes about 30-45 minutes if it is your first
time; this is not overly long.

> Here's my two cents, my suggestion for a roadmap to revive Netrek:
>
>
> 1) Start from scratch.

Then it's not netrek.

> Seriously, ditch the code. There simply can not be a discussion about
> whether or not it "works fine".

Of course there can not be. It works; whether it works "fine" or not is
another story but the facts are:

1) "Fine" is subjective.
2) It's worked for over 20 years.
2) There are active servers and if it didn't work there could not be.

> 2) Do a cross-platform implementation that's playable on the browser
> There's a reason why Minecraft was a success, but Infiniminer wasn't: No
> matter what system, you just go to that website and play the game right from
> the webpage. I'm completely aware that I'm biased towards Java here (despite
> what Oracle is doing to it right now) but that's just my suggestion here.
> Scala would be an idea too, I must say that I'm learning to love this
> language.

This comes up all the time. I wish you luck but considering the track
record of java clients I feel it's pointless. If it was doable people
would have already done it. There has yet to be a fulling working
netrek java client. Yeah, I know. "Start from scratch." And again,
it's no longer netrek.

> 3) Think about a mobile version from the start
> See 2. - and if you write in Java, doing an Android version is that much
> easier.

Impossible due to HID limitations. Unless you stupify the game. And,
once again, not netrek.

> 4) Encourage and support server operators
> Having more servers is good, not bad.

This can not be further from the true. Server and player base
fragmentation is a long known and documented problem that has done as
much if not more to kill netrek than any other single factor. This
dates back to the bot servers in the mid 90s and still holds true today.

> Consolidating servers makes sense if
> you have an MMO with 1000 players on three servers, so you end up with one
> server with 3000 players. But if you have 0 players, like Netrek currently
> does, then fewer servers don't help. More servers give people a choice so
> they can pick something that has a good ping near them. But of course you
> need to do 1, 2 and 3 first.

This is mostly patent nonsense. A difference of 20-30 ms only matters for
the very best df'ers; for the majority of the rest of the player base it it
totally irrelevant. If you are talking a significant difference, say in the
60+ ms range, that is another story. And at that point it's really a
global issue of having a regional server in Asia, Europe, Australia,
etc. At this point netrek isn't suffering from that particular problem.

> And remove the meta-ban on too frequent updates, or at least raise the limit
> so that troubleshooting sessions don't get the new server banned before it's
> up.

Stop soliciting the metas if you are developing or troubleshooting.

> So the question is... who of you would be interested?

> >Stop top-posting :(
>
> If that's what riles up people here, I don't have much hope...

Top-posting on mailing lists is idiotic and in 99 out of 100 times due
to no other reason than pure laziness.

John
--
One original thought is worth a thousand mindless quotings.

-- Diogenes of Sinope (412 BC - 323 BC), Cynic philosopher of ancient Greece

Allen Tipper

unread,
Oct 10, 2011, 4:56:58 AM10/10/11
to netrek-...@googlegroups.com
On Mon, Oct 10, 2011 at 4:24 AM, Toumal Rakesh <toumal...@gmail.com> wrote:
> On Mon, Oct 10, 2011 at 10:15 AM, Allen Tipper <ake...@gmail.com> wrote:
>>
>> I know I would be interested in points 1, 2, 4, and 5.
>
> Awesomesauce!
> &nbsp;

>>
>> The problem
>> with a mobile client is that it simply isn't possible to make a usable
>> method of input on Android and have anywhere near the current
>> complexity of the game, which is a lot of why I enjoy the game as much
>> as I do.
>
> I agree it's not easy but is it really impossible? Besides, if all fails the
> very same controls could be used- after all, Android does support keyboard
> and mouse input...
> &nbsp;

At that point, it seems superfluous to me. However, if we're coding it
in Java anyways, it wouldn't be that hard to put up an Android port of
a decent Java client, if it were coded in a sane manner.

>>
>> However, rewriting a new version essentially from scratch may
>> be worthwhile, and making it run within a browser is certainly
>> possible and sane.
>>
>> I'm a fellow coding professional myself, and
>> although I do know C/C++ in general, my knowledge of them is pretty
>> limited. I'm far better with Java and Python.
>
> In the browser, Java Webstart makes a lot of sense to me, so that should be
> no issue ;)

> &nbsp;

Another idea to think of for a "quicker fix" to get in-browser play,
at least in Google Chrome, might be nativeclient. I plan on taking a
look at it more seriously when I wake up after finally getting to bed.
For more info, look at http://code.google.com/p/nativeclient/


>>
>> Simply making a Java client that was usable in a web browser, that
>> would connect to current servers, would probably be a boon to getting
>> players.
>
> Frankly I'd shoot for a complete rewrite, including the server. Did you take
> a look at the server code? It looks exactly like you'd expect from a piece
> of software grown over many years and with many cooks in the kitchen.

> &nbsp;

I haven't, yet, as John so eloquently said, at that point it's not
Netrek. It might be based on Netrek, but it's really a different
thing. It might be an awesome thing, but it's definitely not Netrek.

>>
>> Heck, has anyone ever tried a Flash client? Would it be
>> possible?
>
> Flash is very limited. I had some bad experiences running into walls of the
> API in actionscript recently... I'm not saying it's impossible, but it's
> certainly a fairly limited thing. Plus you can't just offer a desktop
> version (unless you go the hacky route of packing a flash file in an
> executable)
>

I'm not a big fan of Flash myself, but it does seem to be something a
lot of folks are using for games in the browser these days.

>
> --
> To post send mail here: netrek-...@googlegroups.com
> More info: http://groups.google.com/group/netrek-forever/
> Nota bene: Please be civil and treat list members with respect.
>

Also, in general, John made (at least) one other good point in his
post: we really don't need more servers so much as more players on the
servers we have. When we struggle to get one T-mode game a week, and
the fact that it happened two weeks in a row was impressive, it tells
me that we need to get all the people logging into one server.

It does give me one idea, though: queues are bad, if we start having
them happen too much. A cool thing that might be able to be added to
the server code is to allow a server to fork games, and run two games
at once. Even better if when this happens players from both games can
talk to one another. Just a random idea.

Toumal Rakesh

unread,
Oct 10, 2011, 5:01:56 AM10/10/11
to netrek-...@googlegroups.com
On Mon, Oct 10, 2011 at 10:33 AM, John R. Dennison <j...@gerdesas.com> wrote:
On Mon, Oct 10, 2011 at 10:01:54AM +0200, Toumal Rakesh wrote:
>
> When I tried to set up a server months ago, I found the code to be broken on
> 64bit platforms.

We ran the server on 64bit for a long time without incident other than
bots which was solved with a -m32 in CFLAGS.  The reason is that when
the server core was made to be 64bit compliant the bots were not
modified in a similar manner.  The common bot code does not use the same
headers as the server core and the code bases diverged.  Patches to
resolve that issue have been welcome for a long time.

My memory is spotty there, I admit - but I do remember that a simple compiler flag was not the solution and I was advised to either switch to a 32 bit server or fix it myself.

 
> The server setup itself is archaic.

Editing a couple files is archaic?

There's a lot more to be done if you want to run a server with bots. You are obviously used to working with netrek. But take it as an outsider's perspective.

 
> Re-starting the server
> multiple times gets you banned from the metaservers, and there is no valid
> reason for that.

DOS protection.  While it _may_ be a little too sensitive (to be fair
I've not looked at that code in many months) it is there for a necessary
purpose.  There is no reason for rapid server restarts; if you are doing
development or initial server setup don't solicit the metas.  Even
better, don't add unnecessary servers to the metas at all.

Unless a server sends the metaserver 10 packets a second (or even 1 packet per second), there's no reason for banning. Calling that DOS protection is... baffling me. Yes it is too sensitive.

 
> And my requests for help were answered with "patches
> welcome". We all know that "patches welcome" is another word for "sod off",

That's not true at all.  _You_ may interpret that saying as such, the
rest of us didn't.

Guy A: I need help with this problem, because I can't fix it myself
Guy B: Fix it yourself, and send us the patch

Am I missing something here?
 
> so I did. Now before you sort me into the clueless drawer, I am a fulltime
> software dev, I do code in C/C++ (though mostly Java professionally these
> days), and I do participate in community projects such as coding for EECH (
> eechcentral.com)
> I'm not an expert in the intricacies of 32 vs 64 bit problems and the kinds
> of responses I got didn't exactly motivate me.

I do believe you were told of the -m32 issue, were you not?  I know you
were asking questions back then and I even remember spending some time
with you on the issue and then you just disappeared.  I 'spose I can go
look through my logs and refresh my memory.

It took me 20 seconds to set up a conquest server. 20 minutes for 4 Doom2 servers with rather complex mods (AOW, etc.)
When there was no solution for Netrek after a week I pretty much gave up.

 
> Heck there's almost more conquest players than netrek players these days,
> and no wonder - setting up a server is a breeze, and if you find a bug the
> maintainers patch it.

Setting up a netrek server takes about 30-45 minutes if it is your first
time; this is not overly long.

There are tons of executables, no documentation what some of them do, the whole setup is confusing. Again, it's good that you are familiar with it, but from an outsiders perspective netrek is very much archaic.
I'd like a single server executable with command line options and a configuration file, thank you. That's what I qualify as "simple".

 
> Here's my two cents, my suggestion for a roadmap to revive Netrek:
>
>
> 1) Start from scratch.

Then it's not netrek.

The heresy!

 
> Seriously, ditch the code. There simply can not be a discussion about
> whether or not it "works fine".

Of course there can not be.  It works; whether it works "fine" or not is
another story but the facts are:

1) "Fine" is subjective.
2) It's worked for over 20 years.
2) There are active servers and if it didn't work there could not be.

I have very little to reply here. Good luck reviving Netrek then.

 
> 2) Do a cross-platform implementation that's playable on the browser
> There's a reason why Minecraft was a success, but Infiniminer wasn't: No
> matter what system, you just go to that website and play the game right from
> the webpage. I'm completely aware that I'm biased towards Java here (despite
> what Oracle is doing to it right now) but that's just my suggestion here.
> Scala would be an idea too, I must say that I'm learning to love this
> language.

This comes up all the time.  I wish you luck but considering the track
record of java clients I feel it's pointless.  If it was doable people
would have already done it.  There has yet to be a fulling working
netrek java client.  Yeah, I know.  "Start from scratch."  And again,
it's no longer netrek.

I think Mohjang is doing pretty well with their 3d game in Java, which ignorants keep thinking is impossible and unplayable (despite the excellent JMonkey engine for example)
They *sold* how many copies? Ah right, 3.7 million.

 
> 3) Think about a mobile version from the start
> See 2. - and if you write in Java, doing an Android version is that much
> easier.

Impossible due to HID limitations.  Unless you stupify the game.  And,
once again, not netrek.

Android devices support keyboard and mouse too. Some don't even need external input devices for that (Asus transformer, Asus slider)

Do I hear an echo here?

> 4) Encourage and support server operators
> Having more servers is good, not bad.

This can not be further from the true.  Server and player base
fragmentation is a long known and documented problem that has done as
much if not more to kill netrek than any other single factor.  This
dates back to the bot servers in the mid 90s and still holds true today.


If I look for servers I join the server that has players. If I have 10 friends who want to play, and nobody is online, we tend to pick a server that works for most of us. Explain how more choice in servers fragments the playerbase if you rarely even enter T-mode these days, and there's hardly ever the case of 3 players on one server, and 3 on another server?

 
> Consolidating servers makes sense if
> you have an MMO with 1000 players on three servers, so you end up with one
> server with 3000 players. But if you have 0 players, like Netrek currently
> does, then fewer servers don't help. More servers give people a choice so
> they can pick something that has a good ping near them. But of course you
> need to do 1, 2 and 3 first.

This is mostly patent nonsense.  A difference of 20-30 ms only matters for
the very best df'ers; for the majority of the rest of the player base it it
totally irrelevant.  If you are talking a significant difference, say in the
60+ ms range, that is another story.  And at that point it's really a
global issue of having a regional server in Asia, Europe, Australia,
etc.  At this point netrek isn't suffering from that particular problem.

I am talking about 30ms vs 160ms, so it is certainly not patent nonsense thank you.
 

> And remove the meta-ban on too frequent updates, or at least raise the limit
> so that troubleshooting sessions don't get the new server banned before it's
> up.

Stop soliciting the metas if you are developing or troubleshooting.

"Stop making mistakes that hurt nobody, or we won't take your server" - Well you already established that you don't want more servers. I rest my case, I guess.
 
> >Stop top-posting :(
>
> If that's what riles up people here, I don't have much hope...

Top-posting on mailing lists is idiotic and in 99 out of 100 times due
to no other reason than pure laziness.


http://en.wikipedia.org/wiki/Posting_style

I could go into detail on how it's perfectly valid to top-quote if the original message is short, and the response is it's own thing instead of a line-by-line response like this here.  I could also try to explain that while natural reading goes top down, the most interesting message should require less scrolling than the next-important message, which is the one that provides context. I could also point out that things change and top-quoting is a fact of life in the real world, because most people don't like scrolling down if all you do is quote for context, not for direct response.

But, as you so eloquently put, that's not netrek.

Toumal Rakesh

unread,
Oct 10, 2011, 5:10:51 AM10/10/11
to netrek-...@googlegroups.com
On Mon, Oct 10, 2011 at 10:56 AM, Allen Tipper <ake...@gmail.com> wrote:
> a look at the server code? It looks exactly like you'd expect from a piece
> of software grown over many years and with many cooks in the kitchen.
> Frankly I'd shoot for a complete rewrite, including the server. Did you take
> &nbsp;

I haven't, yet, as John so eloquently said, at that point it's not
Netrek. It might be based on Netrek, but it's really a different
thing. It might be an awesome thing, but it's definitely not Netrek.

Guys, this is not the christian faith. Yes it is still netrek if the game plays the same and the spirit is the same. But if names bother you so much, call it Netrek 2 or Netrek the next next generation or whatever. The point is to still have the same game.

 
>>
>> Heck, has anyone ever tried a Flash client? Would it be
>> possible?
>
> Flash is very limited. I had some bad experiences running into walls of the
> API in actionscript recently... I'm not saying it's impossible, but it's
> certainly a fairly limited thing. Plus you can't just offer a desktop
> version (unless you go the hacky route of packing a flash file in an
> executable)
>

I'm not a big fan of Flash myself, but it does seem to be something a
lot of folks are using for games in the browser these days.

Doing online multiplayer games with flash is a major PITA. Not to mention the toolchain and libraries are just so much less mature and full-featued. But I'm not saying it's not possible, don't get me wrong! I just feel that thinking forward the next 5-10 years, Java seems a much more stable choice. But again, I fully realize I'm biased here.

 
Also, in general, John made (at least) one other good point in his
post: we really don't need more servers so much as more players on the
servers we have. When we struggle to get one T-mode game a week, and
the fact that it happened two weeks in a row was impressive, it tells
me that we need to get all the people logging into one server.

As I said before, the other older games don't have a problem with more servers either. People flock to the populated servers anyway, but having more servers gives the players choices while there are NO games going on. For example: There's a very popular server playing the AOW mod for Doom2. But during the day in europe, it's mostly empty. After I started up mine, it turned out that players in europe now have a perfectly playable server that they can flock to. But in any case people flock towards the server that has players in it.

Most games have the "few full servers, the rest is empty" syndrome. I hear complaints about it every day, and I see it happen for older games like Tribes 1, Tribes 2, etc.

So forgive me if I don't see John's point as undisputable truth, when my factual experience tells me otherwise.


 
It does give me one idea, though: queues are bad, if we start having
them happen too much. A cool thing that might be able to be added to
the server code is to allow a server to fork games, and run two games
at once. Even better if when this happens players from both games can
talk to one another. Just a random idea.

If a server is full they can just join a different server, no? Ah wait, we don't want more servers...
See my point?
 


James Cameron

unread,
Oct 10, 2011, 7:42:11 AM10/10/11
to netrek-...@googlegroups.com
What you say has offended me in particular because I thought I had taken
so much care to respond to your problems last year, and because I am
the maintainer of the server code.

On Mon, Oct 10, 2011 at 10:01:54AM +0200, Toumal Rakesh wrote:

> When I tried to set up a server months ago, I found the code to be
> broken on 64bit platforms. The server setup itself is archaic.

We have this documented. It follows the GNU package standards;
configure, make, install. These standards are not archaic, they are in
regular use by tens of thousands of software packages.

But I've checked the mailing list archives at
http://mailman.us.netrek.org/pipermail/netrek-dev/ and your 64bit
problem was with the add-ons, not the core. I'm tempted to remove the
add-ons and leave them in a separate package, as they haven't had the
same level of code review.

> Re-starting the server multiple times gets you banned from the
> metaservers, and there is no valid reason for that.

There is a valid reason, and it is documented in the metaserver code,
which is also open for review. See "check for flooding" in scan.c.

> And my requests for help were answered with "patches welcome".

Not so. I checked the mailing list archives just now to make sure. I
tried really hard. Sorry I didn't try hard enough, but if you have a
problem with that, why not talk to me instead of flaming me on the
player mailing list?

I see myself as entirely responsible for the server code base, and I'm
sorry it didn't meet your expectations of quality, but on the other hand
I don't see any way that I can do so ... your expectations are hard to
fathom and seem to shift.

Toumal Rakesh

unread,
Oct 10, 2011, 8:51:51 AM10/10/11
to netrek-...@googlegroups.com
On Mon, Oct 10, 2011 at 1:42 PM, James Cameron <qu...@us.netrek.org> wrote:
What you say has offended me in particular because I thought I had taken
so much care to respond to your problems last year, and because I am
the maintainer of the server code.

I don't want to sound ungrateful - after all, you maintained that code for a long time (or at least I think so, I know too little about the details, so excuse my lack of background knowledge there)


 
On Mon, Oct 10, 2011 at 10:01:54AM +0200, Toumal Rakesh wrote:
> When I tried to set up a server months ago, I found the code to be
> broken on 64bit platforms. The server setup itself is archaic.

We have this documented.  It follows the GNU package standards;
configure, make, install.  These standards are not archaic, they are in
regular use by tens of thousands of software packages.
But I've checked the mailing list archives at
http://mailman.us.netrek.org/pipermail/netrek-dev/ and your 64bit
problem was with the add-ons, not the core.  I'm tempted to remove the
add-ons and leave them in a separate package, as they haven't had the
same level of code review.

It's not the build system I have trouble with. But again, for me as an outsider it's not even apparent that the "addons" are not maintained by you. I guess most of my criticism goes towards them, though even the plain netrek server install needs two programs running: netrekd and update. And the default server install has many more executables.

Indeed, pulling out all of the crud is probably an idea. Have a clean server, with the addons coming with a big disclaimer saying "here be dragons".

Still, would be nice to have at least bots working, preferably without needing an extra package.

> Re-starting the server multiple times gets you banned from the
> metaservers, and there is no valid reason for that.

There is a valid reason, and it is documented in the metaserver code,
which is also open for review.  See "check for flooding" in scan.c.

I sincerely hope you don't mean the "delist" method of flooding the metaserver, which is one of the more outlandish concepts I've seen in the code. A simple "delist my server please" message to the metaserver would've done the same job. And what use is a permanent delisting anyway? If you don't want your server to appear on a metaserver, isn't the logical course to just not send updates to the metaserver?

That is if I don't completely misunderstand something here. I didn't look into the metaserver code, only the netrekd stuff.

And just to point out that I have some experience here: I wrote the (crappy-coded) masterserver for Enemy Engaged, to date still operational at http://hoxdna.org/eech


> And my requests for help were answered with "patches welcome".

Not so.  I checked the mailing list archives just now to make sure.  I
tried really hard.  Sorry I didn't try hard enough, but if you have a
problem with that, why not talk to me instead of flaming me on the
player mailing list?

I'm not flaming you. I never called you names or anything like that.
In fact, my main point was that what netrek needs for a fresh start is... a fresh start. That's my opinion, and you are free to disagree of course - which you did, quite vehemently. At the end of the day, that's perfectly okay and I won't lose any sleep over being told that any rewrite is out of the question because it's "not netrek" anymore. To me that's a nonsensical argument, but hey, we can agree to disagree.

 
I see myself as entirely responsible for the server code base, and I'm
sorry it didn't meet your expectations of quality, but on the other hand
I don't see any way that I can do so ... your expectations are hard to
fathom and seem to shift.

Dude, it's very easy to criticize, and hard to do better. For what it's worth, I think it's great that Netrek didn't just vanish many years ago, and people like you are to thank for that. To that end, I "expect" nothing.

But it's my opinion that the codebase itself is not up to todays standards. Hardcoded planetnames and messages, global variables left and right, cryptic methods with no comments or documentation, tight coupling etc...
Please try to understand that I'm pointing out specific problems that I believe make for a good reason for a rewrite, in addition to the fact that plain C is no longer "best of breed". I'm not saying that you suck or do a bad job.

Am my expectations shifting that much? What I wanted to run a server with bots. Now I hear new servers are not even wanted, or seen as part of the problem even.

All I'm saying is that if you want to have more players, you will need to change the way you think about Netrek. Not the gameplay, mind you. I'm perfectly fine with people wanting to not change that, and/or add unnecessary fluff. Heck, my suggestion that an android client was just a mere idea, a brief thought. I'm not married to that either.

What I am suggesting is to start with a clean slate, because let's face it, it will only become more difficult to find maintainers for old C code. Make a server that's efficient and small, with integrated bots, maybe even a scripting interface or other cool stuff. Make a cross platform java client that works even in a browser. Minecraft and others proved that it's possible.

If people visit netrek.org and can just log in and play, online and with others, then you will get a good flow of new players and build up a new, larger community. That is, if you want that to happen of course.


Again, just a suggestion. Of course nothing stops me or anyone else from starting up a new project from the ground up, but it would be awesome to see the real, original netrek community be behind that as well.









Collin Pruitt

unread,
Oct 10, 2011, 10:16:01 AM10/10/11
to netrek-...@googlegroups.com

On Oct 10, 2011, at 4:01 AM, Toumal Rakesh wrote:
1) Start from scratch.
Seriously, ditch the code. There simply can not be a discussion about whether or not it "works fine".

2) Do a cross-platform implementation that's playable on the browser
There's a reason why Minecraft was a success, but Infiniminer wasn't: No matter what system, you just go to that website and play the game right from the webpage. I'm completely aware that I'm biased towards Java here (despite what Oracle is doing to it right now) but that's just my suggestion here. Scala would be an idea too, I must say that I'm learning to love this language.

3) Think about a mobile version from the start
See 2. - and if you write in Java, doing an Android version is that much easier.

Considering that your ideas may all be technically possible, who is going to dedicate the man-hours to completely recode the server base, build a Java or otherwise interface for a website, and build and maintain an Android/iOS client, all for a next-to-dead game? Also, if you recode the server, you'll also probably have to do some reworking on the client side for the three (or four, if you count pygame) clients that we have "actively" in development. It would take the few people that are willing to do this a very long time to accomplish this.

All three of your ideas have been brought up multiple times in the past. A few have been attempted but failed, others were shot down before they ever got out of the idea stage. The problem is that it's simply not feasible to do what you're proposing with the small development base that we have now, and the existing developers have other things to worry about than, for all intents and purposes, recoding a dead game. There's no point if what we have now works and it's worked for over 20 years, so why put such a dramatic time investment into something that probably will never revive from it's current state?

Toumal Rakesh

unread,
Oct 10, 2011, 10:44:51 AM10/10/11
to netrek-...@googlegroups.com
On Mon, Oct 10, 2011 at 4:16 PM, Collin Pruitt <col...@collinp.com> wrote:

Considering that your ideas may all be technically possible, who is going to dedicate the man-hours to completely recode the server base, build a Java or otherwise interface for a website, and build and maintain an Android/iOS client, all for a next-to-dead game? Also, if you recode the server, you'll also probably have to do some reworking on the client side for the three (or four, if you count pygame) clients that we have "actively" in development. It would take the few people that are willing to do this a very long time to accomplish this.

All three of your ideas have been brought up multiple times in the past. A few have been attempted but failed, others were shot down before they ever got out of the idea stage. The problem is that it's simply not feasible to do what you're proposing with the small development base that we have now, and the existing developers have other things to worry about than, for all intents and purposes, recoding a dead game. There's no point if what we have now works and it's worked for over 20 years, so why put such a dramatic time investment into something that probably will never revive from it's current state?



Let me answer your first question: Who.
Who is those who are interested in the game and want to see it revived. That means everyone on this list plus the folks outside who don't know about it yet, but would have to be brought in and enticed to join.

Why: Because I believe that netrek is pretty much timeless. It's a fun game.

But one thing is clear: Such an effort needs dedication. It's a ton of work. And believe me, I know it hurts to "throw one away" - I've spent a year working with a team of volunteers on a relaunch of a community website - the relaunch was a so-so success, but the codebase was just patched up from the old site. Our team then spent another year and a half rewriting the entire website, art gallery, forum, web chat, commission system, etc. from scratch using the Yii framework. The productivity boost we got from using a good framework as a starting point was tremendous. We're currently betatesting 2.0 and every day we're happy we ditched the old code, which was hand-grown since 2002.

I don't know if I can be that guy to drive the development a new Netrek, I already am heads over tails in the further development of that website - but at the very least I'd be more than happy to contribute.

A netrek game that I could just hop in from my work PC without installing? Man that would rock. I'd hook up all my friends and we'd play that just for the heck of being federation captains duking it out oldschool-style. That's the kinda dream I have: Go to the website, and either download a full client for local use, and/or just play the game right from my browser, like I can do with minecraft. It's a powerful thing really.



Bill

unread,
Oct 10, 2011, 10:49:03 AM10/10/11
to netrek-forever
On Oct 10, 8:51 am, Toumal Rakesh <toumaltheo...@gmail.com> wrote:
> But it's my opinion that the codebase itself is not up to todays standards.
> Hardcoded planetnames and messages, global variables left and right, cryptic
> methods with no comments or documentation, tight coupling etc...
> Please try to understand that I'm pointing out specific problems that I
> believe make for a good reason for a rewrite, in addition to the fact that
> plain C is no longer "best of breed". I'm not saying that you suck or do a
> bad job.

The server is in C, it's going to stay that way..I don't think it's a
good idea to waste energy trying to say the server should be in a
different language. Clients, on the other hand, can be in many
different languages. For example, did you know we have a cross-
platform python client? I would recommend to focus your energy and
enthusiasm on the client side.

> Am my expectations shifting that much? What I wanted to run a server with
> bots. Now I hear new servers are not even wanted, or seen as part of the
> problem even.
>

I think you misunderstand the process a bit for new servers. Netrek
SOP is that any new server is not needed, and will likely be blocked
from metaserver if no communication is attempted with metaserver
owners prior to listing. The burden is on you to communicate with
said metaserver owners and provide justification as to why your server
should be listed. Expect resistance (I've struggled for years on this
very issue) but you have my support. I would suggest offering
something besides a plain bronco vanilla server, we have 2 of those
and they are never fully occupied.

> What I am suggesting is to start with a clean slate, because let's face it,
> it will only become more difficult to find maintainers for old C code.

All current devs know C, and we aren't going anywhere.

Bill

Zachary Uram

unread,
Oct 10, 2011, 11:22:30 AM10/10/11
to netrek-...@googlegroups.com
On Mon, Oct 10, 2011 at 10:44 AM, Toumal Rakesh <toumal...@gmail.com> wrote:
>
> A netrek game that I could just hop in from my work PC without installing?
> Man that would rock. I'd hook up all my friends and we'd play that just for
> the heck of being federation captains duking it out oldschool-style. That's
> the kinda dream I have: Go to the website, and either download a full client
> for local use, and/or just play the game right from my browser, like I can
> do with minecraft. It's a powerful thing really.

Another option is a middle of the road approach that QuakeLive uses.
Play is driven from a web interface, but a a small local client is
installed once, well it is updated infrequently as well, which IIRC
uses Direct X so you can take advantage of your graphics card, so the
web interface is a sort of bridge passing data. Netrek is not very
graphics intensive currently, but a newer netrek might want more
polished graphics. If this really happens, and that is a huge if, I
think that we allow players to setup profiles online and be able to at
any moment see their complete stats, and the stats would be publicly
viewable by anyone. We might also want to borrow from the
achievement/medals model which has been so popular in recent years in
online gamin. I think CoD was one of the main popular games to push
this. So every time a player earns an achievement they will get a
medal or something on their profile. Some would counter that, "stats
don't matter." While this is true at higher levels of gameplay for
newbies and even for a large percentage of any popular playerbase,
perhaps even a majority, stats are something cool which they want to
see, and they want to see their friends' stats. As others have said,
such bold initiatives usually don't come to fruition. There have been
3 Java clients that I'm aware of at least. First was Robert Temple's
JTrek which was really old like Java 1.x-2.x, purely 2D, then there
was Nick Slager's GLTrek which used an OpenGL library, not a true 3D
client (MacTrek is much closer), but it had some 3D objects for
dimensionality, and IIRC used Java OpenGL bindings, then there was Jay
Corrales' OBSTrek which was a more basic observer only client. I know
there are a number of professional Java developers on the list so
perhaps this is a good path to take. Has anyone had experience with
Aviatrix3D?


--
Zach
http://www.fidei.org

Karthik Arumugham

unread,
Oct 10, 2011, 12:00:12 PM10/10/11
to netrek-...@googlegroups.com
On Oct 10, 2011, at 4:01 AM, Toumal Rakesh wrote:

> 4) Encourage and support server operators
> Having more servers is good, not bad. Consolidating servers makes sense if you have an MMO with 1000 players on three servers, so you end up with one server with 3000 players. But if you have 0 players, like Netrek currently does, then fewer servers don't help. More servers give people a choice so they can pick something that has a good ping near them. But of course you need to do 1, 2 and 3 first.
> And remove the meta-ban on too frequent updates, or at least raise the limit so that troubleshooting sessions don't get the new server banned before it's up.

I'm not going to address the other points, since others have addressed them quite a bit.

More servers splits the player base. If you do it to add choices for latency, then you get players with lower average latency perhaps…split amongst multiple servers.

As far as Bronco servers go, pickled is specifically where it is since that's the best location I've found to give players from all over the country (and Europe/Asia) the most fair overall latency. There are several other locations I *could* run pickled from, and have in the past, but the average latency/stdev of all players would go up. (Even if players in certain areas would drop.) I personally think that's a better solution to improving ping times with the number of players than tossing up servers.

We have two active Bronco servers as has been pointed out, and just pickled being full is a rare thing. There's not going to be a game on both at the same time. Adding more servers just adds more places that you might get 1 or 2 people sitting on for no reason…when you could instead have all 16 on a single server. If one server was regularly full and the other had a decent number of players, then yes, having more servers would be necessity. It is not, at the moment, and indeed harmful.

Toumal Rakesh

unread,
Oct 10, 2011, 1:20:14 PM10/10/11
to netrek-...@googlegroups.com
On Mon, Oct 10, 2011 at 6:00 PM, Karthik Arumugham <kar...@karthik.com> wrote:
On Oct 10, 2011, at 4:01 AM, Toumal Rakesh wrote:

> 4) Encourage and support server operators
> Having more servers is good, not bad. Consolidating servers makes sense if you have an MMO with 1000 players on three servers, so you end up with one server with 3000 players. But if you have 0 players, like Netrek currently does, then fewer servers don't help. More servers give people a choice so they can pick something that has a good ping near them. But of course you need to do 1, 2 and 3 first.
> And remove the meta-ban on too frequent updates, or at least raise the limit so that troubleshooting sessions don't get the new server banned before it's up.

I'm not going to address the other points, since others have addressed them quite a bit.

More servers splits the player base. If you do it to add choices for latency, then you get players with lower average latency perhaps…split amongst multiple servers.

And I have already stated that my experience says otherwise. But if you want specific examples:

First example: Tribes 2. The "Goon Haven" server in Tribes 2 (tribesnext.com) is usually the first server to fill up. People flock to it first, and only then spill over to other servers. The only time goon is not full is when the US folks are asleep, at which point the EU folks hit the EU servers. People from NZ and AUS, who can't play on either servers due to lag, have their own refuges.

Second example: Doom 2. There's 132 servers in the master list. The server that's almost always full during US daytime is Grandvoid US AOW, currently at 22/32 players. During EU daytime it tends to be my server because it's the only one running AOW in Europe. The fragmentation there is between mods, not servers. Only one server of a particular gametype is in use at a time, again with the new zealand and australia guys being the notable exception because they can't really play anywhere else without hefty lag. Those guys won't join your game in the US or EU because they know they will have a bad time.

Now if you had a big persistent component, like building your character or leveling up, yes then more servers would hurt the game. That's why I said that for MMOs and the likes, having less servers makes sense, especially for dwindling player numbers. Point in case: Planetside switched from 3 to 2 and eventually just 1 server. They did this because you have to level up your character per server and switching servers means starting with a total gimp with the default pistol and default rifle and not much else.


We have two active Bronco servers as has been pointed out, and just pickled being full is a rare thing. There's not going to be a game on both at the same time. Adding more servers just adds more places that you might get 1 or 2 people sitting on for no reason…when you could instead have all 16 on a single server. If one server was regularly full and the other had a decent number of players, then yes, having more servers would be necessity. It is not, at the moment, and indeed harmful.


And again, why do you think 1 or 2 guys will skip a server that's already full? Don't you think they'll pick the server that has players on it already - whatever server that may be - as long as the ping is in a playable range?
If anything, I see the gametypes as the dividing thing here. People who want to play vanilla vs. people who want to play bronco, now that's where one won't necessarily switch for the other...

I completely understand your concern, but I think my examples are valid. If you still disagree, then that's perfectly fine, but sad. I hope that you consider my point and maybe change your mind about things.  By all means, check out skulltag.net and tribesnext.com and see for yourself. (Note that the numbers on tribesnext.com are a bit misleading because of the bots being counted in)



Jared Thirsk

unread,
Oct 10, 2011, 1:38:19 PM10/10/11
to netrek-...@googlegroups.com
Toumal wrote:
> Let me answer your first question: Who.
> Who is those who are interested in the game and want to see it
> revived. That means everyone on this list plus the folks outside who don't
> know about it yet, but would have to be brought in and enticed to join.
>
> Why: Because I believe that netrek is pretty much timeless. It's
> a fun game.

I am interested in seeing netrek immortalized, at least for another generation.

I am a solo indie game developer working on something tangential: a commercial game that is inspired by netrek, and both "not netrek" and not netrek ...but hopefully awesome.

I hope the netrek community can be sparked to renew life into netrek in a dramatic way, so I am trying to be careful not to distract from that.  For me personally at least, I think it is worth it to consider is trying to  establish some kind of direct commercial support for netrek, to at least solve the manpower issues and enable dreaming big enough to capture a larger and even mainstream audience.  I envision a commercially self-sustaining (for-profit) game that has netrek as we know it today as a classic mod, and ideally given away for free (including game engine) in the spirit of netrek.  (Ideally it would be cross-platform too.)  As this mod would be from scratch, it would be "not netrek", but hopefully there would be enough resources to get it indistinguishably close to verbatim.  

As a fallback (which I don't personally see happening but who knows), or if the netrek community revived itself before the above happens (I'm hoping but not holding my breath), a benevolent commercially successful netrek-inspired game could give back to its roots by paying small chunks of money (or donating code or other infrastructure) to today's netrek developers.  Of course, such a game could also advertise and encourage people to try netrek, at least until the creation of a verbatim replacement that everyone is happy with.  (In the context of this group, 'everyone happy', even for small sets of everyone, seems like a humorous concept but I can hope.)

> I don't know if I can be that guy to drive the development a new
> Netrek, I already am heads over tails in the further development of that
> website - but at the very least I'd be more than happy to contribute.

Go for it!  Get a thick skin (if you can tell from reading this list, you probably need it), take time to get a good vision, and run, dude.

Quoting earlier ideas: 
> > 1) Start from scratch.  Seriously, ditch the code. There simply can not be a 
> > discussion about whether or not it "works fine". 

Unless you have grandiose plans (like me) I'm not convinced rewriting the server is a good idea (even as an OOP guy like you who thinks C is archaic).  Unless you plan to change planet names, why in the world would you care whether they are hardcoded?  After peering around the code for a bit, the pragmatist in me rose up and appreciated that it does indeed work, and that is indeed enough unless you have a good reason why it's not (which you have yet to provide.)
I am a framework junkie and I also understand the exponential gains in building from a good framework (I have seen hundreds of thousands of development dollars wasted on bad frameworks, and spent hundreds of thousands of my employer's money creating new ones), but I have also learned that the only benefit of code beautification for its own sake is warm fuzzies when you are dreaming about code at night.  And for the next week/months/years when you're doing QA/bugfixing for no reason, you'll be cursing the decision.  (Note: I am effectively rewriting everything so I definitely think it can be a good idea -- I'm just saying you need to prove your reasons.)

A web client sounds like a decently good thing, for punks who are too lazy to install stuff ;)  
(...Or corporate drones who can't install things on their PC?  This may destroy the economy haha. GPA killer may become EPS killer.)

If you did totally rewrite something, I would think the server is fine and netrek is most lacking in clients (most urgently, at least - lots of things there to improve before thinking about the server, unless you have specific ideas for the server I haven't thought of).  

If I had time to directly contribute to netrek, I would take a quick look at existing clients, drink a big cup of "Not built here syndrome" juice, and go nuts on making my own vision of the ultimate client.  Or to get started contributing faster, I might try to add a few features to existing clients as it made sense to fit them in.  (The python and C++ w pf clients intrigued me.  As a .NET twink, I might have a slight Java allergy ;).)

> > 3) Think about a mobile version from the start

I agree with others in cautioning that in trying to haphazardly slap netrek on a portable, the fun will mostly certainly be lost in the translation.  (Not to mention opening the game up to people who have no hope of playing the game properly will destroy it for everyone else.)   Some day I'd maybe take a shot at a tablet version with voice comms and some clever control scheme and UI layout, but I expect this to require a lot of UI design inspiration and effort. Frankly I am not convinced the netrek community has this readily available now. 

> > 2) Do a cross-platform implementation that's playable on the browser
> > There's a reason why Minecraft was a success ...I'm completely aware
> >  that I'm biased towards Java here  ...

Are there (m)any successful Java games? (Other than minecraft, I see now.)
Have you looked at Unity3D?  It is a free/cheap top tier game engine and does Windows, Mac OS X, web (IE, Firefox, Chome and more) for Win/Mac, Wii, iPhone/iPad, Android, Xbox 360, PS3.  Linux support is apparently in the works, though I'm not holding my breath.  (I wonder what percentage of current netrek players use linux?  (Although given the current size of the player base perhaps any percentage is negligible.))

Also, Unity uses some kind of sandboxed Mono for scripting (supporting C#, Boo, etc.).  I am biased as a .NET developer for 6 years before I quit my day job, so I think this is totally awesome. (Beats Lua etc.  that was the previous norm for the industry IMO.)

(However, Unity was missing a few things (good GUI, networking components) when I was looking at it, so I'm working on a Windows & .NET only game for now (with hopes to port later, maybe using Unity since it sorta supports .NET.  Google's Nativeclient is also interesting, and it looks like someone has ported the 3D engine I'm using (OGRE) to it.))

But if you're looking for something for the web, and you also have wild imaginations about somehow doing something on portable devices (Android/iOS), then definitely check out Unity.

Jared

Toumal Rakesh

unread,
Oct 10, 2011, 3:53:29 PM10/10/11
to netrek-...@googlegroups.com
On Mon, Oct 10, 2011 at 7:38 PM, Jared Thirsk <jth...@shaw.ca> wrote:
Toumal wrote:
> Let me answer your first question: Who.
> Who is those who are interested in the game and want to see it
> revived. That means everyone on this list plus the folks outside who don't
> know about it yet, but would have to be brought in and enticed to join.
>
> Why: Because I believe that netrek is pretty much timeless. It's
> a fun game.

I am interested in seeing netrek immortalized, at least for another generation.

I am a solo indie game developer working on something tangential: a commercial game that is inspired by netrek, and both "not netrek" and not netrek ...but hopefully awesome.

I hope the netrek community can be sparked to renew life into netrek in a dramatic way, so I am trying to be careful not to distract from that.  For me personally at least, I think it is worth it to consider is trying to  establish some kind of direct commercial support for netrek, to at least solve the manpower issues and enable dreaming big enough to capture a larger and even mainstream audience.  I envision a commercially self-sustaining (for-profit) game that has netrek as we know it today as a classic mod, and ideally given away for free (including game engine) in the spirit of netrek.  (Ideally it would be cross-platform too.)  As this mod would be from scratch, it would be "not netrek", but hopefully there would be enough resources to get it indistinguishably close to verbatim.  

As a fallback (which I don't personally see happening but who knows), or if the netrek community revived itself before the above happens (I'm hoping but not holding my breath), a benevolent commercially successful netrek-inspired game could give back to its roots by paying small chunks of money (or donating code or other infrastructure) to today's netrek developers.  Of course, such a game could also advertise and encourage people to try netrek, at least until the creation of a verbatim replacement that everyone is happy with.  (In the context of this group, 'everyone happy', even for small sets of everyone, seems like a humorous concept but I can hope.)


One of the big dangers of any "commercial" netrek spinoff is copyright; I was in fact engine coder and scripter for a (freeware) stargate game (based on the torque engine) and we got shot down by MGM just prior to them being sold off.

 
> I don't know if I can be that guy to drive the development a new
> Netrek, I already am heads over tails in the further development of that
> website - but at the very least I'd be more than happy to contribute.

Go for it!  Get a thick skin (if you can tell from reading this list, you probably need it), take time to get a good vision, and run, dude.

I run an artwork and story community site with 170.000 registered members and fierce competition. I think my skin is sufficiently thick, but I honestly lack the time to initiate yet another project. As I said, I'd definitely contribute code or entire modules.

 
Quoting earlier ideas: 
> > 1) Start from scratch.  Seriously, ditch the code. There simply can not be a 
> > discussion about whether or not it "works fine". 

Unless you have grandiose plans (like me) I'm not convinced rewriting the server is a good idea (even as an OOP guy like you who thinks C is archaic).  Unless you plan to change planet names, why in the world would you care whether they are hardcoded?  

It's a code smell. For example, it means that internationalization is not supported and would require huge changes. Want to have more planets or change the names? Recompile.
 
After peering around the code for a bit, the pragmatist in me rose up and appreciated that it does indeed work, and that is indeed enough unless you have a good reason why it's not (which you have yet to provide.)

Oh sure it works. But is the code easy to maintain? Is the codebase solid and well written? Are there strange concepts that don't follow the conventions of todays games? I'd say there's a number of reasons speaking for a rewrite. Getting rid of things like "flood the metaserver to remove my server from the list" and similar grown things are reasons too.
 
I am a framework junkie and I also understand the exponential gains in building from a good framework (I have seen hundreds of thousands of development dollars wasted on bad frameworks, and spent hundreds of thousands of my employer's money creating new ones), but I have also learned that the only benefit of code beautification for its own sake is warm fuzzies when you are dreaming about code at night.  

Clean code is easier to maintain. A well coded piece of software is not just beautiful to look at, but easy to grasp and modify. If this were not the case, then I'll stop with the whole MVC, IOC and in fact, the entire OO stuff.

I fight against the "just get it done" attitude at my day job every day. Not only is it completely stupid for a company like ours that makes products for air traffic control and emergency centers, but it is extremely expensive in the long run. We've sunken millions of $ into bad code, all for saving time in the short run, producing code that "just runs".

Of course perfectionism can be overdone too, but honestly, this rarely ever happens.

And just so I get this out of the way: I wrote my share of shameful code in the past. My old C code is certainly worse than netreks. We learn and move on, at least that's what I like to keep telling myself ;)

 
And for the next week/months/years when you're doing QA/bugfixing for no reason, you'll be cursing the decision.  (Note: I am effectively rewriting everything so I definitely think it can be a good idea -- I'm just saying you need to prove your reasons.)

Ah, well now if the code were well-written and loosely coupled, we'd have unit tests (or in the case of a rewrite in a different language, integration tests) so we could verify the new implementation behaves similarly. But frankly, I wouldn't see protocol compatibility as a goal here.

 
If you did totally rewrite something, I would think the server is fine and netrek is most lacking in clients (most urgently, at least - lots of things there to improve before thinking about the server, unless you have specific ideas for the server I haven't thought of).  

Sure: How about a server with more modern netcode, one that has bots included and/or offers a scripting interface for game logic and/or bots? Preferably one that comes with unit tests, built by a CI buildserver and requiring a single binary to run.
 
Are there (m)any successful Java games? (Other than minecraft, I see now.)

The Chrome Engine is Java based. Wurm Online is java too. But there are many more.
Java is suitable for games. The only problematic area is sound, you need external libraries for solid sound support on all platforms (openAL for example)

 
Have you looked at Unity3D?  It is a free/cheap top tier game engine and does Windows, Mac OS X, web (IE, Firefox, Chome and more) for Win/Mac, Wii, iPhone/iPad, Android, Xbox 360, PS3.  Linux support is apparently in the works, though I'm not holding my breath.  (I wonder what percentage of current netrek players use linux?  (Although given the current size of the player base perhaps any percentage is negligible.))

I have dabbled with unity, I know a number of projects that use it. The netcode is not great, the rest looks quite neat. Definitely an interesting contender, though linux support is missing atm.

I also used the Torque engine a lot. C++, awesome scripting language, proven stuff.  But they're focusing on windows mostly now, and for a game like netrek the only major benefit would be the (fantastic) netcode and the UI. Also no in-browser support AFAIK, dunno since I stopped working with it a year ago or so.
 
And if you don't like Java, there's always Scala. IMHO that's pretty much everything Java should be and then some - though Scala needs mature, experienced developers. Definitely not for people who think that "patterns" are something they find staring at their tiled floor ;)



James Cameron

unread,
Oct 10, 2011, 5:42:32 PM10/10/11
to netrek-...@googlegroups.com
On Mon, Oct 10, 2011 at 02:51:51PM +0200, Toumal Rakesh wrote:
> I sincerely hope you don't mean the "delist" method of flooding the
> metaserver, which is one of the more outlandish concepts I've seen in
> the code. A simple "delist my server please" message to the metaserver
> would've done the same job. And what use is a permanent delisting
> anyway? If you don't want your server to appear on a metaserver, isn't
> the logical course to just not send updates to the metaserver?
>
> That is if I don't completely misunderstand something here. I didn't
> look into the metaserver code, only the netrekd stuff.

A simple "delist my server please" would be too easy to forge. We have
had very hostile players in the past.

What you are probably missing is that the server to metaserver
solicitation protocol is entirely open and without authentication, so as
to achieve the lowest latency and the most up to date display.

It was designed in the days when computing a crypto key was reasonably
expensive stuff.

It might be redesigned to use public key crypto ... but for what
benefit? Ease of understanding? It's easy to understand now, just take
the time to do so.

Benjy Thomas

unread,
Oct 10, 2011, 6:13:17 PM10/10/11
to netrek-...@googlegroups.com
On Sat, Oct 8, 2011 at 9:42 PM, Andy <ap_k...@hotmail.com> wrote:

> This is a free app I wrote to allow people to easily see who is
> playing Netrek at any given time.

This is great! However, the current version seems to require one to
proactively check the servers.

Could you have the app run in the background and alert the user when a
server either passes a certain number of players (user defined) or
attains T-mode?

People have their phones on them nearly all the time. Think of how
much more often critical mass would be achieved if folks were alerted
once just a handful of players were on a server.

Cheers,
Benjy

Jared Thirsk

unread,
Oct 10, 2011, 6:45:39 PM10/10/11
to netrek-...@googlegroups.com
Toumal wrote:
> One of the big dangers of any "commercial" netrek spinoff is
> copyright; I
> was in fact engine coder and scripter for a (freeware) stargate
> game (based
> on the torque engine) and we got shot down by MGM just prior to
> them being
> sold off.

Although I'm a trekkie and think the trek theme has added a bit to netrek, I don't really care anymore about Star Trek references in netrek.  My game will have no major direct references to star trek (although for community mods, I'm obviously not hardcoding team names, and there could be the option for alternate skins or whatever.)
 
> >  Unless you plan to change planet names, why in the world
> >  would you care whether they are hardcoded?
>
> It's a code smell. For example, it means that
> internationalization is not
> supported and would require huge changes. Want to have more
> planets or change the names? Recompile.

Ok, internationalization sounds like a good feature.  But how valuable is it and would it really be a boon to netrek?  You could (with a little more pain) get clients to do translation.  Also, would you be ready for non-english speakers to be your teammates on the servers?  (May need to make macros easier on the client to ensure everyone uses them so things get translated.  You may need better tutorials as well so you don't have clueless people who can't learn the game ruining your servers.)   Should they have their own servers?  If this is the case, then it's not helping the english game much?

Do you really want to have more planets?  It sounds like you were agreeing about not fragmenting the player base, which makes me think you are not serious about adding planets.  Am I missing something?

How often do you want to change planet names?  If you want to change them every day, I can see you splitting that out to a config file or whatever, but I doubt you want that.  

I'm just hoping you give all due consideration to plugging your nose and finding the joy in pragmatism :)

I don't know how long you've been around netrek, but I've been around long enough to see that the community is very resistant to gameplay changes.  Netrek is likened to chess, as in "it's basically a perfect time-tested game at its core."  I see the point to a large extent (and also have a million ideas I want to try as something else that is "not netrek".) 
Even if you do have gameplay ideas, I'm not convinced (although maybe could be) that having a fantastic new gameplay would attract new players and revive netrek, because I think the existing gameplay is fantastic and has shown that it's not enough.  I guess I wonder if you have ambitions to make gameplay changes, what are they and how you see it working within today's netrek community?

I guess your willingness to take on big tasks makes me think you have some grand vision you haven't fully shared and I am trying to draw it out :)

> > After peering around the code for a bit, the pragmatist in me 
> rose up and
> > appreciated that it does indeed work, and that is indeed
> enough unless you
> > have a good reason why it's not (which you have yet to provide.)
>
> Oh sure it works. But is the code easy to maintain? 

What maintenance work needs to be done?  
I would think that if the maintainers are happy, everybody's happy.

Another factor in maintenance is code familiarity, and I understand the
 current maintainers are extremely familiar and adept at maintaining the current
codebase.  To me that could be a pro in favour of keeping C over a newfangled
unfamiliar OOP design that people don't have their head wrapped around.  
I'm not convinced netrek is complex enough to be too hard to understand for
people who want to make minor improvements.  We don't have 5+ people working full time on tons of new features for netrek and interfacing with the codebase all over the place.  If we did, I'd be all for a rewrite.

Granted, it would be nice for new contributors to have a nicer modern looking codebase to 
get started with, but you have yet to convince me such changes should be prioritized and would actually be accomplished by somebody.

(I'm reminded of an anecdote from my past:  In university, I actually lost marks for "over-engineering" a supposedly simple assignment, which was writing a whole pseudo-OS (yeah, simple.)  I'm a software engineer, and wanted it all organized and extensible, the Comp Sci (non engineering) TA had a different mentality and didn't like a million classes and told me "you engineered this to death!"  To which I thought in my head along the lines of "Duh, I'm an engineering student".  My friend wrote a 1000-line main.c program with one monster main function and I think got full marks.  I always thought  that TA was a jerk, and I thought my friend was silly for writing a giant spaghetti method "OS", but after stewing about it for 10 years I see a (tiny) bit of a point in readability issues with an exploded OO architecture that are mostly class boilerplate (and no UML diagrams to help.))

> Is the codebase solid and well written? 

I can't think of (m)any bugs over the years I've played netrek, and to me that is the only empirical evidence that really matters.  (How much time the developers sunk into bad code is something you'll have to ask them, assuming they'd own up to it.)

There is a place for "if it works, it's good enough."  IOW, ship it and move on, and clean the bad code smell out of your mind, and enjoy making clean code in a new area.  I drive a car, and I don't care if the traffic lights signals are written well or in a language I like.  As long as they've proven they work through sufficient testing, it's good enough for me.

If you actually do internationalization, bot/logic scripting, and more, then I can see wanting to have a nice codebase.   But if a rewrite is 1000 hours and it would bring the effort of your new features from 200 hours down to 100, then is it worth it?  I love beautiful code, and the intangible boost to morale and sense of freedom it gives to developers, but you have to look at cost-benefit!!  If it would bring 10000 hours down to 5000 hours, awesome, but show this to me where this benefit is.  I am a pie in the sky dreamer and want to be convinced.  I just don't want to see a 500 hour effort fizzle out and provide zero benefit, when something good could have been accomplished.

But if new developers are only interested in getting involved if they can start from scratch or use a particular language, or whatever, so be it!  Happy coding and I hope you can sustain the enthusiasm.   (It brings the question back to who?)

> Are there strange concepts that don't follow the
> conventions of todays games? 

Can you think of specific examples?
I think there are many many of these in netrek, but I think the client is the place to start addressing them.  

> I'd say there's a number of reasons speaking for a rewrite. 

Me too, I'm just not sure you mentioned any, (or enough).  Internationalization is a good one but I think it nearly as easily done as translation in a nicely architected client.  Scripting would be cool too.
I'm not convinced either would significantly boost netrek, but maybe it could be worth it as part of a larger feature roadmap.

> Getting rid of things like "flood the metaserver to remove my
> server from the list" and similar grown things are reasons too.

Getting rid of that feature you don't like sounds like a simple deletion or code comment,
or tweaking a number.
Ctrl-X or dd is a cross-language programming tool :)

Convincing the establishment to change their metaserver, however, is a different story :)
I am concerned you are losing your argument with wanting more servers, even despite your experience with other games, and if you are to get frustrated and give up with people here I would rather see you do it another way.  (But I hope you don't at all.)  Are you thinking more of the same servers?  What is the point of that?  Are you thinking of different servers with different gameplay features?  Do you have the itch to experiment with new gameplay features, or hope/expect someone else to do that?

> Clean code is easier to maintain. A well coded piece of software
> is not just
> beautiful to look at, but easy to grasp and modify. If this were
> not the
> case, then I'll stop with the whole MVC, IOC and in fact, the
> entire OO stuff.

But you do new stuff with those MVC IOC OO frameworks.  What new stuff do you want to do in the netrek server?  I18n, scripting... is that it?

> I fight against the "just get it done" attitude at my day job
> every day. Not
> only is it completely stupid for a company like ours that makes
> products for
> air traffic control and emergency centers, but it is extremely
> expensive in
> the long run. We've sunken millions of $ into bad code, all for
> saving time
> in the short run, producing code that "just runs".

I'm with you 100% on that one and then some.  (The shortsightedness IMHO
where I worked wasn't just in code, but in research, business, marketing, etc.)  
I effectively left that job in frustration over it because I felt the attitude
was perpetually setting me up for failure (and I dreamed of greater
successes than we were seeing).

Sure this attitude is stupid for companies like yours and my old one, but netrek is a far cry from either, so I posit the principle doesn't automatically apply here.

> Of course perfectionism can be overdone too, but honestly, this
> rarely ever happens.

I spent several years making a beautiful framework and then funding
dried up because it wasn't sexy enough and didn't deliver anything yet.
If I had it to do over again with full hindsight, I would have delayed
sound foundations a little to make more low-effort gimmicks strung together.
So I guess I've been burned this way.

If you believe rewriting the server is worth it and can do it and/or convince others to do it, power to ya, man.  It sounds like you don't have time to do it though.  Maybe I and others should (re)post a list of things we think would be more bang for the buck and you can debate us over whether rewriting the server, and clients, and netcode, etc. should be higher priority.

I'm all for clean foundations, but I'm not sure you or anyone is prepared to tackle it, both due to lack of manpower, and due to a lack of perceived benefit (i.e. a cost-benefit analysis comparing realistic numbers and expected benefits).

> > And for the next week/months/years when you're doing 
> QA/bugfixing for no
> > reason, you'll be cursing the decision.  (Note: I am
> effectively rewriting
> > everything so I definitely think it can be a good idea -- I'm
> just saying
> > you need to prove your reasons.)
>
> Ah, well now if the code were well-written and loosely coupled,
> we'd have
> unit tests (or in the case of a rewrite in a different language,
> integrationtests) so we could verify the new implementation
> behaves similarly. But
> frankly, I wouldn't see protocol compatibility as a goal here.

If netrek were to be significantly extended with new gameplay concepts,
over a multi-year time span, I would be all for rewriting a new server (that's why I'm doing it) and network protocol (or at the very least, refactoring, if similar devs continue on and think parts are salvageable into a nice code base for the long run).

> > If you did totally rewrite something, I would think the server
> is fine and
> > netrek is most lacking in clients (most urgently, at least -
> lots of things
> > there to improve before thinking about the server, unless you
> have specific
> > ideas for the server I haven't thought of).
>
> Sure: How about a server with more modern netcode, 

Sorry if this should be obvious, but what improvements would you make to the netcode?
Do you want to add new network message types?  If so, I'm curious what you have in mind.
Otherwise if it works I don't know what the point would be.

> one that has bots included and/or

Correct me if I'm wrong, but it sounds like this could be accomplished by rearranging netrek and its makefiles, i.e. no need to write any significant amount of code.  (Setting up new servers doesn't seem like a popular use case these days, and there isn't a shortage, so I'm not sure how improving it would be of significant benefit.)

> offers a scripting interface for game logic and/or bots?

Scripts for bots would sure be cool, although netrek's strength in its gameplay isn't bots but human opponents.  I'm not sure how this would help netrek.  (I'm curious what new behaviour would you script for bots?)

As for game logic, I've thought it would be cool to have mini-tutorials with bots that run the player through doing an escort, etc.  In that case, scriptable bot logic would definitely help there.

Another example where scripting could help: there's also the idea of making mostly orthogonal 'gateway drug' games to lure people into a netrek ecosystem.  Even if netrek was 10% of that ecosystem, if it was large enough, that would be way better than today.  The nice thing about netrek's playerbase being 0 (most hours of the day) is we don't have to worry about fragmenting 0 :).  Even though I on principle hate and don't commit to games like sturgeon that reward farming to gain unfair advantages and being a weenie runner who doesn't want to die, I am a sucker for games like it on occasion, and had a lot of fun scumming a supership a couple times before swearing never to do it again, and think that kind of thing is a great idea to draw people in.  But apparently it's not enough to save netrek.  But get a nice client with a simple-ish arcade game, slap it in a web browser, advertise it on flash-like portals, and you will (hopefully) get 1000's of causal and potentially moronic gamers coming in, and some of them won't be morons and will latch on to the better game of netrek.

If I was to do this, even if I wanted to rewrite the server, I would strongly consider writing a client from scratch compatible with existing netcode protocol, and architect it so I could swap out the netcode for something else down the road if/when I decided I really wanted/needed to replace the server.  Don't you think this approach has merit?

> Preferably one that comes with unit tests, built by a CI buildserver and
> requiring a single binary to run.

Sounds good.  
(CI is great but I'm not convinced it and unit tests would make the top 100 todo list for netrek.  Unless of course you got involved and felt more comfortable with them and they made you happy and more enthusiastic -- whatever it takes to boost available manpower.)

> I have dabbled with unity, I know a number of projects that use 
> it. The
> netcode is not great, the rest looks quite neat. Definitely an
> interestingcontender, though linux support is missing atm.

I come from a semi-enterprise and low-bandwidth networking background and I have made some netcode that I think/hope will be awesome for games (as low as 1 byte to invoke a remote method (on top of an open source multi-channel optionally reliable & optionally sequenced UDP layer I didn't write), remote data binding with support for collections, transparent round-trip service object proxying, events, serialization of POCO objects using MsgPack).  I have close to 0 overhead for doing new OOP things over the network and I love it.   Since it is .NET I may try integrating it with Unity some day.  I'd also port it to Java in 10 or so years if nothing better came along and I had nothing better to do ;).

> And if you don't like Java, there's always Scala. IMHO that's
> pretty much
> everything Java should be and then some - though Scala needs mature,
> experienced developers. Definitely not for people who think that
> "patterns"are something they find staring at their tiled floor ;)

Thanks I should check it out. 

Jared

Toumal Rakesh

unread,
Oct 10, 2011, 6:49:09 PM10/10/11
to netrek-...@googlegroups.com
On Mon, Oct 10, 2011 at 11:42 PM, James Cameron <qu...@us.netrek.org> wrote:
A simple "delist my server please" would be too easy to forge.  We have
had very hostile players in the past.

I know there is no authentication involved there, but this statement makes little sense. Surely you have to agree that if one can forge the packet's source address for  a delisting request, he/she can also forge multiple listing requests, thus flooding the meta and causing a false delisting. So if that's your fear, your solution doesn't protect you in any way, shape or form.

 
It might be redesigned to use public key crypto ... but for what
benefit?  Ease of understanding?  It's easy to understand now, just take
the time to do so.

Implying a lack of understanding on my part about this particular thing is not helping your argument.



James Cameron

unread,
Oct 10, 2011, 7:00:48 PM10/10/11
to netrek-...@googlegroups.com
+1 for periodic checks, as default, or as a preference for those with
restrictive data plans.

I'd also like to see icons used instead of only text. See
http://quozl.linux.org.au/gytha/0.7-servers.jpg for how I did it on the
cross-platform client.

I'm curious ... Andy, are you using the UDP query protocol or the TCP
query protocol? I look after the metaserver, you see, so I'm interested
in making sure it can handle the load of handsets. ;-} UDP is much
faster and consumes less data. It could also give us stats of usage,
which I can pass back to you.

James Cameron

unread,
Oct 10, 2011, 7:13:28 PM10/10/11
to netrek-...@googlegroups.com
On Tue, Oct 11, 2011 at 12:49:09AM +0200, Toumal Rakesh wrote:
> I know there is no authentication involved there, but this statement
> makes little sense. Surely you have to agree that if one can forge the
> packet's source address for a delisting request, he/she can also
> forge multiple listing requests, thus flooding the meta and causing a
> false delisting. So if that's your fear, your solution doesn't protect
> you in any way, shape or form.

Yes, you're right. An existing server shown by the metaserver can be
removed by someone forging a delist request with matching source
address, hostname, type and port. Glad to have this reviewed, thanks.

> Implying a lack of understanding on my part about this particular
> thing is not helping your argument.

You did not initially demonstrate a convincing level of understanding,
so I was obliged to consider it in order to get a response.

Karthik Arumugham

unread,
Oct 10, 2011, 8:05:12 PM10/10/11
to netrek-...@googlegroups.com
On Oct 10, 2011, at 6:49 PM, Toumal Rakesh wrote:

> I know there is no authentication involved there, but this statement makes little sense. Surely you have to agree that if one can forge the packet's source address for a delisting request, he/she can also forge multiple listing requests, thus flooding the meta and causing a false delisting. So if that's your fear, your solution doesn't protect you in any way, shape or form.

There are a wide range of attacks, such as source address spoofing, that could be used against Netrek. It was, obviously, developed in a friendlier era (as far as the Internet goes.) I was mildly concerned about solicit in general due to the very reason you give, but again, there are plenty of other attack vectors. So not worth the time to weed out minor ones like this, unless actively being exploited.

Since we've been limited in development resources, I think we've been focused more on things like looking for buffer overflows and the sort that could lead to the system the server or meta is on being compromised. That's much more of a concern to me than someone attacking the infrastructure (which, again, can be done in countless ways.)

Yes, it's a little silly that the rationale for not having a delist is to avoid spoofing, since as you mentioned, you can just flood it if you can spoof your source address. But there are a thousand other silly things in the code that are worse than that. :P

ahn

unread,
Oct 11, 2011, 1:05:01 AM10/11/11
to netrek-forever
The quality of Netrek code is unimportant. So is the metaserver
delisting issue. The real problem with Netrek for the last decade or
more has been that no new leaders have stepped up to fill the void
that us old geezers left behind when we moved on to real life. It's a
shame that the FOCS/history/blame/whatever is being used to discourage
contribution at a time when any contribution at all could be helpful.

If you have the time and inclination to do something, I suggest you
just do it. There is no need to ask for permission or to convince the
community. If your ideas work, then the results will reflect that.
That's how it was done in Netrek's prime. Start with something that
can have the largest impact with the least effort. This Netrek app is
a great example. Too many have proposed grand ideas only to quit
shortly thereafter (or never even start).

Preserving the classic Netrek game should be the least concern. The
servers and the code will persist, but the other component that makes
the game classic is long gone - the players who understand its true
depth. So, the players of today and tomorrow should drive the
evolution of Netrek into a form that they will enjoy. Gain enough
critical mass, and the original depth will be rediscovered.

Toumal Rakesh

unread,
Oct 11, 2011, 6:02:27 AM10/11/11
to netrek-...@googlegroups.com
On Tue, Oct 11, 2011 at 7:05 AM, ahn <a...@netrek.org> wrote:
The quality of Netrek code is unimportant.  So is the metaserver
delisting issue.  The real problem with Netrek for the last decade or
more has been that no new leaders have stepped up to fill the void
that us old geezers left behind when we moved on to real life.  It's a
shame that the FOCS/history/blame/whatever is being used to discourage
contribution at a time when any contribution at all could be helpful.

/sign

Note that my point was not to dwell on that one issue, but to point out that rewriting the server does make sense.

 
If you have the time and inclination to do something, I suggest you
just do it. 

Thanks for the encouragement.

Many years ago, I worked on Deranged Raid (http://www.playspoon.com/wiki/index.php?title=Game_Info) which was entirely written in C, and 99% of it by myself.

As I said I do not have the time available to build a prototype from scratch, but I can contribute if others are willing too. As it happens I have written a 2D game library for java which handles most aspects like sprites, input and such. It's not complete but it could be a starting point. I'd strongly suggest apache mina for the netcode.

I have experience developing distributed and client/server architectures. For a new Netrek, I'd suggest having a decoupled network code that transmits and handles updates independent of framerate. So while the framerate would be something like 60 fps, net updates could be set to something like 10 ticks per second. Clients would continue to move entities along their speed vector, overwriting the position with the one transmitted by the server whenever such data is available. Since entity visibility is not a factor, clientside hit detection would probably suffice, with the server just verifying that the range is sane and that there's been a sufficient cooldown between "hit" updates by a client. If a ship is cloaked, the entity could be effectively removed for the others so as to prevent modified clients to show cloaked ships.

In the CAP Theorem, we'd be A+P. The system would be "eventually-consistent". Newly joining or reconnecting players would receive a snapshot, so the netcode has to handle that too.

I'd suggest keeping the server and the client separate for now. Starting a server from within the client can be added later anyway.

As for project stuff, I can set up a build server too (comes in handy pretty soon, if you don't believe me ask the guys running http://ci.bukkit.org ) and I can make the whole thing webstart-enabled from the start so even the earliest prototypes will work both as standalone executables and in your browser.

As a first prototype goal I'd suggest getting the basic application going, with a ship moving around and firing torps. I'd suggest the next prototype goal to be network play right thereafter.

I'll gladly write the entire masterserver and serverlist update stuff and contribute heavily for the general netcode and other things.


I guess the only question to ask is... who else is interested?

Zachary Uram

unread,
Oct 11, 2011, 7:50:03 AM10/11/11
to netrek-...@googlegroups.com
On Tue, Oct 11, 2011 at 6:02 AM, Toumal Rakesh <toumal...@gmail.com> wrote:
>
> I guess the only question to ask is... who else is interested?

What will the implementation language be?


--
Zach
http://www.fidei.org

Andrew Szczeszynski

unread,
Oct 11, 2011, 7:51:55 AM10/11/11
to netrek-...@googlegroups.com
Hi Toumal,
 
  I think what you're doing is a great idea - I am in complete agreement that all the code needs a rewrite, but that the game is timeless and could become big again.  I'm actually trying to do the same thing, to bring Netrek to the masses, but I'm taking a more liberal approach - I'm trying to change the game to make it less complicated (yes, it's a new game - not Netrek - but it's basically what you get if you try to simplify Netrek enough to make it accessible - http://www.galacticcombat.com/).  I originally thought I would use the netrek code - but it is too much of a mess, I couldn't use it.  Even after I wrote my code, I wanted to contribute back some stuff (for instance, some improved AI dogfighting), but I just couldn't make it work - the code is too complex - a rewrite would encourage people  (like myself) to grow it again.
 
  What I want to point out is some of my experiences with my version that might stear you in the right direction (I don't know what that direction is - I'll let you make your mind up).  I took the approach of a flash game because it satisfies the problem of making it easy to install, but also distribution - I could just post it on all the flash game sites and it would work.  The downside, though, is that flash doesn't really support UDP - which is a big drag.  I did actually go live with the game, but hit the problem that people needed a single player 'training/mission' mode - it was too complicated to just jump in, even though it is insanely simplified... so people left in frustration before quorom was hit.  I'm trying to solve this now - add a single player/mission mode that will keep people interested long enough for quorom, and to also provide basic training (and of course, I got insanely busy with real work and now it's on the back burner for last 3 months).
 
  I guess my point is that if the goal is to make it accessible and make it a hit game again (which is what I would love), then it probably won't be enough to make it simply easy to install - it will need to have some kind of training mode to ease people into the game - that would allow the 'word' to spread.  As such, make sure that whichever direction you choose, it should be compatible with your end goal (I don't expect you to do all this work - that would be discouraging - but at least allow others to contribute in that direction).  And yes, it is absolutely impossible to get everyone to agree - you'll get a heck of a lot of no's - but if you build it, and it is kinda netrekie, they will come.
 
  As far as technical questions: absolutely decouple frame rate - clients should predict vectors, as you stated.  Note that predicting collisions is not really necessary, and when the predicition is wrong, it goes very wrong.. its very hard to do client side detection because different clients will get different answers - you need an authority - not sure if trying to solve this issue is worth it.
 
  Good luck!
- Andrew
 
-----------
Dilbert: "If we migrate our enterprise applications to the web, and outsource our sales and product development, the entire company can be managed by one monkey..... plus a second monkey to look at the powerpoint slides from the first monkey."

Toumal Rakesh

unread,
Oct 11, 2011, 8:22:09 AM10/11/11
to netrek-...@googlegroups.com
Java, optionally Scala.
The big upside is that the core could be written in Java/Scala and the gameplay logic/AI/highlevel stuff could be implemented via Groovy, Scala, Beanshell or other scripting languages.



Toumal Rakesh

unread,
Oct 11, 2011, 8:28:17 AM10/11/11
to netrek-...@googlegroups.com
Hey there, I tried to take a look at your game a while back actually but couldn't reach the server, is it still up?

I completely agree that the game should be playable even while not in T-mode. This could be done either via bots that can play T-mode, or via alternative objectives like "invade planet X" which would essentially be small coop-missions for the connected players.

Heck, even a full coop T-mode would rock. It's certainly not easy to do (I spent several years writing the first bot AI for Starsiege Tribes, called "Spoonbot", and I know there's a lot more to it than most people think), but would go a long way towards a game where people actually fill up a server after a while, because they have something fun to do in the meantime. And it would be a great way to do a live tutorial of sorts.



--

John R. Dennison

unread,
Oct 11, 2011, 8:55:53 AM10/11/11
to netrek-...@googlegroups.com
On Tue, Oct 11, 2011 at 02:28:17PM +0200, Toumal Rakesh wrote:
> Hey there, I tried to take a look at your game a while back actually but
> couldn't reach the server, is it still up?

This conversation has moved far off-topic for this list. If you want to
contribute back to netrek, fine. If you want to talk about some
non-netrek variant this is the wrong place to continue.


John
--
Be in charge of your own destiny, or some one else will.

-- John Francis "Jack" Welch, Jr. (1935-), past Chairman
and CEO of General Electric

Toumal Rakesh

unread,
Oct 11, 2011, 9:27:08 AM10/11/11
to netrek-...@googlegroups.com


On Tue, Oct 11, 2011 at 2:55 PM, John R. Dennison <j...@gerdesas.com> wrote:
On Tue, Oct 11, 2011 at 02:28:17PM +0200, Toumal Rakesh wrote:
> Hey there, I tried to take a look at your game a while back actually but
> couldn't reach the server, is it still up?

This conversation has moved far off-topic for this list.  If you want to
contribute back to netrek, fine.  If you want to talk about some
non-netrek variant this is the wrong place to continue.


I was waiting for "not netrek" to come up again, I guess "non-netrek" will have to do ;)

Well if you want me to unsubscribe from this mailinglist then by all means. Because if the only allowed discussion is the patching of existing code, then no. Maybe you should consider renaming the mailinglist from "netrek-forever" to "netrek-maintenance".

I'm not claiming to be the most awesome coder or anything like that. But if the one and only netrek is the one based on age-old grown C code filled with quirky idiosyncrasies, if you think having less servers gets you more players, then no, I do not want to contribute to that. Feel free to dismiss my points as the rants of a clueless nameless coder on the internet. That's ok with me, I don't have anything to prove here.

I have neither the time nor inclination to convince others of the benefits of clean code, concepts like dependency injection, OO in general, or even stuff like test driven development (or unit tests in general) and continuous integration. I'm happy to see that the majority of developers is catching on by now, finding out that the short-term extra investment pays off bigtime in the long run. The rest either passed the age of sufficient learning capability, or never reach that level of proficiencies to understand the reasons for their own misery, or even see that they are in misery to begin with. Heck 10 years ago I dismissed Java and unit testing and all that evil pointless stuff myself, give me lean C code or give me death, I thought. It took me years of painful learning to realize the extent of just how wrong I was. I'm not saying I'm perfectly right now, but I certainly grew out of these old prejudices.
I fear the programmer who thinks his code is perfectly fine, just as I fear people with an overdeveloped do-what-it-takes attitude.

With that, I wish you the very best. If some people on this list are interested in a proper revival, you have my email, feel free to contact me. I still love this game and I'm certain it will live on, in one way or another. Even if it's "not netrek".


Take care!

ahn

unread,
Oct 11, 2011, 9:48:49 AM10/11/11
to netrek-forever
Ok, one more follow up before I head back to my grave.

Rewriting the entire code base doesn't solve Netrek's problems. Even
if we had had a redesign and reimplementation of the code 10 years
ago, the outcome would not have changed. If you want to help Netrek
and you want to have the most impact, I suggest you focus on the
player-facing client and its usability, look for ways to expose the
game to new players, and flatten the learning curve for any that try
the game for the first time.

I can recall about half a dozen "next-generation" (after Paradise)
forks/derivatives of Netrek that have been attempted. If these people
had been more welcomed in the Netrek community, their efforts could
have been channeled back to improve and evolve the game, or at least
its software. Instead, their work ended up as programming exercises
for the authors.

This conversation is far off-topic for this thread, but it is not yet
off-topic for this list. Create your own thread, and discuss until
you conclude whether you wish to contribute to Netrek or to fork a
derivative. Ignore the pessimism, but do listen to constrictive
criticism.

Good luck.

Andrew Szczeszynski

unread,
Oct 11, 2011, 11:31:14 AM10/11/11
to netrek-...@googlegroups.com
John,

  I think you are being way out of line.  We are conversing precisely about Netrek - Toumal is wanting to contribute and trying to get ideas about what kind of platforms or technologies to use, as well as ideas about where to go with the game.  Your comment is tantamount to saying 'anyone can discuss contributing to netrek, as long as they don't get/discuss ideas from anywhere else'.   If someone said 'I would love to add 'status' messages in netrek that work just like twitter', would you ban the comment as 'off-topic' because it mentions Twitter?  Loosen up with that trigger button, you're being unfair.

- Andrew
 

Paul Berker

unread,
Oct 11, 2011, 11:38:21 AM10/11/11
to netrek-...@googlegroups.com
I know some of you may balk at this, but I think this would really draw
new players.

I client that had a 3-D view option. The game would still be 2-d, but
give the view angle something
other than top down and give the ships 3D shapes and effects.
Also maybe a mode that just followed your ship from above and behind
looking forward.
You would still have the main top down play field on the side panel to
look at.
(this would not require any server code changes)
It could really enhance the playing experience (I know this from playing the
old Star Fleet Command on Pc's in the w95-w98 era in league play.. it
was only
2D but looked 3D)
I am not talking about 3D glasses etc.. just some perspective.

MaxFerret

Kurt Siegl

unread,
Oct 11, 2011, 1:59:14 PM10/11/11
to netrek-...@googlegroups.com
Paul Berker sagte:

> I know some of you may balk at this, but I think this would really draw
> new players.
>
> I client that had a 3-D view option. The game would still be 2-d, but
> give the view angle something
> other than top down and give the ships 3D shapes and effects.

In principle I say this are ideas are worth being considered, but coming
back to the topic, I thing what really would help will be an iPAD and
Android 3 client implementation.

Of coarse one would need to completely rethink the whole navigation to
gestures, but IMHO this are nowadays the devices where this kind of games
will be played by the mass.

Just my thoughts
Kurt (007)


Jared Thirsk

unread,
Oct 11, 2011, 2:23:04 PM10/11/11
to netrek-...@googlegroups.com, netrek-forever
From: ahn <a...@netrek.org>
> If you ... want to have the most impact, I suggest you focus on the

> player-facing client and its usability, look for ways to expose the
> game to new players, and flatten the learning curve for any that try
> the game for the first time.

I second this, and think Andrew's Galactic Combat game is a great case study. 
Even though it is too simplified to be the netrek we know and love,
it does a lot of the things I think would be helpful in client usability and attractiveness.
(And I wonder if some hurt it: like lack of netrek physics, phasers.)
Andrew "gets it" when it comes to client.  Now the trick is to apply some of the same lessons to actual netrek.   (BTW, great work Andrew!)  

> This conversation is far off-topic for this thread, but it is 
> not yet off-topic for this list.

I agree.  I can see people not wanting Galactic Combat-specific chat on this list, but I definitely think GC is within scope as a case study for how to improve the netrek user experience.

Jared

Zachary Uram

unread,
Oct 11, 2011, 2:36:32 PM10/11/11
to netrek-...@googlegroups.com
On Tue, Oct 11, 2011 at 1:59 PM, Kurt Siegl <kurt....@hargelsberg.at> wrote:
>
> In principle I say this are ideas are worth being considered, but coming
> back to the topic, I thing what really would help will be an iPAD and
> Android 3 client implementation.
>
> Of coarse one would need to completely rethink the whole navigation to
> gestures, but IMHO this are nowadays the devices where this kind of games
> will be played by the mass.

I think an iPad or even Kindle Fire client would be lots of fun. Take
advantage of the technology, the built-in gyroscope can be used for
turning left or right, for more precise turns which are needed in
dogfighting you can have them touch the screen and just move their
finger in the angle they need, to fire torps single tap finger, to
fire phasers double tap or something. I had an idea where distance
would be used to calculate acceleration (and speed) based on a
distance vector. The shorter the distance from A to B, determined by
pressing a button and then tapping or whatever, the slower the
acceleration will be. So if you tap all the way across galaxy, which
would be very quick on a touch pad device, you will get the maximum
acceleration and reach warp 9. That way a user can intuitively learn
how to control speed through distance vectors and you don't need to
worry about defining speed keys.

--
Zach
http://www.fidei.org

Zachary Uram

unread,
Oct 11, 2011, 2:40:45 PM10/11/11
to netrek-...@googlegroups.com
On Tue, Oct 11, 2011 at 11:38 AM, Paul Berker <pa...@paulberker.com> wrote:
> I know some of you may balk at this, but I think this would really draw new
> players.
>
> I client that had a 3-D view option. The game would still be 2-d, but give
> the view angle something
> other than top down and give the ships 3D shapes and effects.
> Also maybe a mode that just followed your ship from above and behind looking
> forward.
> You would still have the main top down play field on the side panel to look
> at.
> (this would not require any server code changes)
> It could really enhance the playing experience (I know this from playing the
> old Star Fleet Command on Pc's in the w95-w98 era in league play.. it was
> only
> 2D but looked 3D)
> I am not talking about 3D glasses etc.. just some perspective.

Paul I've been in favor of this for a long time. It will make for a
more enticing gaming experience for newbies. More info:
http://en.wikipedia.org/wiki/Video_game_graphics#2.5D.2C_3.2F4_perspective.2C_and_pseudo-3D


--
Zach
http://www.fidei.org

Toumal

unread,
Oct 11, 2011, 10:36:42 AM10/11/11
to netrek-forever

On Oct 11, 3:48 pm, ahn <a...@netrek.org> wrote:
> Ok, one more follow up before I head back to my grave.
>
> Rewriting the entire code base doesn't solve Netrek's problems.  Even
> if we had had a redesign and reimplementation of the code 10 years
> ago, the outcome would not have changed.  

I think this one deserves an answer.

First of all, how do you know? Also, the history of netrek is one of
rewrites, otherwise you guys would be playing Empire (or Conquest for
that matter)

Second of all, the thing is that this is not just about rewriting the
server at all cost, but there are real reasons for it. If all you
concentrate on is the client, you're missing the big picture. For
example, can you make new interesting pre-T-mode gameplay without
modifying the server? No. Any gameplay change will require server
modifications. So making that more maintainable is definitely a task
worth doing.

Doing a cross-platform client should be a no-brainer. If I can run the
same game on Linux, Windows and Mac, AND in the browser, that's the
ideal situation. It's what made Minecraft a success while nobody even
remembers the .net-jailed Infiniminer (Yes there's mono, I know...
good luck with that)
And if the client is, for example, Java - then that's all the more
reason to use the same language for the server. A fresh start also
means gaining the benefit of recent developments and insights. Heck
even the theory has advanced a lot from the 1980s, knowing Brewer's
CAP theorem goes a long way in understanding what can be done and what
isn't possible - avoiding the usual half-solutions that result in
undesired behavior. Someone brought up collision detection and how
there are several ways of dealing with it in a client/server
architecture - that's exactly the kind of problem I'm talking about.

If you want to concentrate on the client, all you'll get is prettier
sprites, maybe better controls and perhaps a nicer UI. You still have
multiple clients that look and feel different on every platform, and a
webstart-enabled client, or a client that can spawn its own local
server transparently for the user is something you can only dream of.
Sure, the server works, but so do the currently available clients. By
that rationale, there should be no change at all.

My last suggestion is that you folks decide what you want. The ones
who don't want change obviously can keep using their old stuff, the
others could move on. Making nicer explosions or better keybinds in
Netrek client XYZ is not going to yield a revival of Netrek.


Take care!

Zachary Uram

unread,
Oct 11, 2011, 2:47:53 PM10/11/11
to netrek-...@googlegroups.com
On Tue, Oct 11, 2011 at 9:27 AM, Toumal Rakesh <toumal...@gmail.com> wrote:
>
> With that, I wish you the very best. If some people on this list are
> interested in a proper revival, you have my email, feel free to contact me.
> I still love this game and I'm certain it will live on, in one way or
> another. Even if it's "not netrek".

Toumal I love your enthusiasm and discussion of close netrek variants
is within the list guidelines. I have updated the boilerplate to
reflect this:

Description

Discussion relating to netrek and organic variants:

* bronco - standard netrek
* chaos - wackiness
* hockey - PASS ME!
* paradise - more stuff
* INL - clue play
* sturgeon - insanity
* other forks and variants

So please stay and let the good discussion continue. I request we
create a new thread so that list members who don't want to follow this
discussion can just ignore/filter the new thread. I will start the new
thread after this post.
--
Zach
http://www.fidei.org

Allen Tipper

unread,
Oct 11, 2011, 3:00:26 PM10/11/11
to netrek-...@googlegroups.com
Zach, thank you. I'm very glad to see that forks and variants are now
officially on topic.

-Allen Tipper

---------------------------------
Insert witty .sig here

Zachary Uram

unread,
Oct 11, 2011, 3:19:57 PM10/11/11
to netrek-...@googlegroups.com
On Tue, Oct 11, 2011 at 3:00 PM, Allen Tipper <ake...@gmail.com> wrote:
> Zach, thank you. I'm very glad to see that forks and variants are now
> officially on topic.

Welcome Allen. I think discussion of variants will end up helping
classic netrek. Strategies, practices, implementation ideas and
features that are discovered by thinking outside the box and pursuing
variants can later be incorporated into bronco clients. And what
bronco desperately needs is people playing. Player retention is still
the Holy Grail, but things are so anemic now that if no one is playing
at all, except for a handful or two of regular veterans, any
discussion of retention would be purely academic. If a variant takes
off and succeeds we can easily steer that playerbase toward classic
netrek. When I started playing around '94 the Golden Age of netrek was
already in its terminal phase and even then we had no problem
sustaining multiple concurrent bronco, hockey, chaos and paradise
games. The strong teamplay aspect, strategic richness and tactical
shoot 'em up fun is still there in netrek. We just need a new
generation of players to give netrek a chance. Once they get over the
initial learning phase and appreciate all three aspects of the game,
which takes time, a number of them will become diehard players and
possibly netrek evangelists! In the 90s most online gamers were
university students, but now we have millions of middle aged gamers,
even elderly gamers. We shouldn't be trying to appeal to the Call of
Duty: Black Ops or World of Wacraft crowd. Just focus on making netrek
easy to play (a web client is a must in my view), easy to configure
(all of the current clients suffer from UI problems - we need to adopt
an industry standard HUD display or something that players are
accustomed to using IMHO), aesthetically and aurally pleasing, and I
think we need to leverage social media
(buzz/g+/twitter/facebook/linkedin/etc...) so that new players can
easily share their new found enthusiasm for the game which will help
with adoption. Another feature which I think will help to win over
newbies is a unified, web-accessible stats system with
medals/achievements functionality and detailed publicly viewable
stats.

--
Zach
http://www.fidei.org

Jared Thirsk

unread,
Oct 11, 2011, 4:51:32 PM10/11/11
to netrek-...@googlegroups.com
From: Toumal <toumal...@gmail.com>

> > Rewriting the entire code base doesn't solve Netrek's
> problems.  Even
> > if we had had a redesign and reimplementation of the code 10 years
> > ago, the outcome would not have changed.  
>
> I think this one deserves an answer.
>
> First of all, how do you know? Also, the history of netrek is
> one of
> rewrites, otherwise you guys would be playing Empire (or
> Conquest for that matter)

I'm confused now.  Are you suggesting to make a different game that is loosely based on netrek?

Are you sure your skin is as thick as you think?  You seem to getting flustered for no good reason and it makes you harder to follow.  Relax...we all want to figure out the best approach(es) to moving netrek forward, and we are all grown up enough to deal with differing viewpoints.

> Second of all, the thing is that this is not just about
> rewriting the
> server at all cost, but there are real reasons for it. If all you
> concentrate on is the client, you're missing the big picture. For
> example, can you make new interesting pre-T-mode gameplay without
> modifying the server? No. Any gameplay change will require server
> modifications. 

Freedom to experiment with better pre-T modes is a great idea.  It would have helped the discussion with me at least if you shared your 'real reasons' to start with, rather than say "let's rewrite thousands of lines of code and use unit tests and IOP.. it will be good, honest" :)  

Here's some logic.  (Maybe it would help if we stopped speaking english.)
 - Low amount of development effort available => look for biggest bang for buck.
 - Expectation of a new long-term development arc => rewrite everything

I agree with both logical conclusions.  It sounds like you only find the second scenario interesting, so I hope you succeed at it and find others to work with you.

 - Biggest bang for buck (for a small development effort) is making the client look modern (like GC) with nice help screens and a smoother interface, I would think.  Instead of server-side tutorials, simply make youtube videos (I think something like it exists already, but I'm sure it could be made more accessible, or embedded in the client).

 - Biggest bang for the buck (given a small effort available) is not to rewrite the server to do the exact same thing and then run out of steam.  That, my friend, is by definition exactly zero bang for the buck.  I know you are imagining more, but it's your fault in this discussion for not laying out a nice roadmap of features that you hope for.  

It's still to be seen how much development effort is available.  As it stands now, even you admit it is not enough.   My secret agenda: that you might entice more developers to join you if you talk up all the awesome things you hope to do, given a revamped codebase foundation.

> Doing a cross-platform client should be a no-brainer.
> It's what made Minecraft a success while nobody even
> remembers the .net-jailed Infiniminer

Not that I'm against cross-platform, but evidence I find here and on wikipedia suggests fragmentation was the downfall:

> (Yes there's mono, I know... good luck with that)

Mono+Unity: Windows, OS X, web, iOS, Android, Xbox, Wii, proprietary set top boxes, and soon Linux (not that it matters much), on what's becoming triple-A game engine with a complete pipeline.... I don't think they need any luck ;)

I admit I'm intrigued by Apache Mina.  .NET lacks a lot of nice things in the Java world like all the great libraries under the Apache umbrella.  I have no experience mixing Java with games, but Java could very well be a great choice, especially if you're the ringleader and you are comfortable with it.

Regarding concentrating on the client:
> You still have multiple clients that look and feel different on every platform, 
> and a webstart-enabled client, [is something you can only 
> dream of]

This appears to be an assumption on your part of what a client effort would omit.

Furthermore, having a client look the same on two different OS's is not a benefit
to the vast majority of users.  "I just rebooted from Windows to Linux and it looks
slightly different and I'm so confused! Gah! *ragequit*"  
I can see how a unified cross-platform client would benefit development time, which would in turn promote a higher quality client.  But if improving development time was a goal I'd start by, oh, say, not rewriting the server ;)   (But go for it dude)

> or a client that can spawn its own local
> server transparently for the user is something you can only
> dream of.

I'm not sure why this would be hard.
I haven't set up a server lately, or tried running it on Windows, but I would think it would be relatively low development effort to port it and have some mechanism to start a server with an appropriate config.  But if you want to do a rewrite, just do it and I'm happy for you that it is that much easier.  In my rewrite, I architected it to transparently start a server, as well as support in-client server to skip all netcode, and I'm happy.

(Having players on local servers instead of public ones seems like going in the wrong direction, but I'm sure you have un-expressed reasons why you think it would be a good idea.)

> If you want to concentrate on the client, all you'll get is prettier
> sprites, maybe better controls and perhaps a nicer UI. 

My sincere concern here is that your efforts translate to a larger playerbase.

Taking the other viewpoint, if you focus on the server, and you get:

 - scriptable logic for making pre-T modes
 - scriptable bots
 - people joining local servers instead of public ones
 - more pre-T modes
   - coop T mode (as in 4-8 humans vs bots?)

Maybe I forgot some (I'm omitting 'change planet names without recompile'), but I honestly can't see these things causing a dramatic revival of the netrek playerbase.  Do you??  I think co-op T would help a bit, just like I think pre-T bots have maybe helped a bit.  
Don't read this as pessimism -- read it as a challenge to be sure and confident that what you will do will have good results.  If I can dissuade you, I'm afraid that 100's of hours of development work will dissuade you and I don't want to see that.

If you do your fancy server rewrite but still have clients that like an air traffic control application from the 80s, I still think players will still be scared to try it en masse.  Java over the years has been known for having awful UI that nobody likes to use so if you have been in a Java world for the last several years maybe you don't get it ;).

 - Tutorials

I think tutorials would help a lot, as would simplified training game modes.  To me this is the most compelling user-feature reason for a server rewrite, (but perhaps still an insufficent reason on its own, if I was to do it all myself.)  And I think it would go hand in hand with a client UI that is not intimidating, that holds your hand with tooltips, and that has buttons that appear on-screen for dropping armies, etc., like GC.   Since the client part could be done without a rewrite, I personally would start with it.  Even if Toumal goes and spends a while working on a rewrite, other people could work on these features for a client.

I am a little annoyed (but who cares) that you have seemed to be talking more about developer features than player features.  
Facetious feature proposal: in addition to the red alert indicator in the client, you have a red alert indicator if someone breaks your CI build, and next to the player list you have a green-red light indicator to show which unit tests are broken, and a new macro for "Please ogg bug #1234".

I'm sure you and I and others could think of more improvements, but I think it would be helpful and inspiring to list them all.  The thought of different features coming to fruition may appeal to different would-be developers and get them on board.

> Sure, the server works, but so do the currently available
> clients. By that rationale, there should be no change at all.

This statement is not helpful.


> Making nicer explosions or better keybinds in
> Netrek client XYZ is not going to yield a revival of Netrek.

This is a strawman.  There are prettier clients and I couldn't care less about nicer explosions.  I unfortunately find the prettier netrek clients that have come along harder to look at (partly because they're in early development and have weird zooming.  I think I did try a 3D aspect one that seemed harder to play with but maybe it takes getting used to.  I mostly like GC).  Often in games I wish I could simplify the graphics for a more distilled view.

Galactic Combat has a lot of UI features executed better than I've seen in netrek clients aside from explosions.

> My last suggestion is that you folks decide what you want. The ones
> who don't want change obviously can keep using their old stuff, the
> others could move on. 

Potential development streams coming out of these discussions:

 1) Toumal's plan of rewrite everything and add new features
     -) Need to list potential new features
     -) Need a mission statement
     -) Need to find enough devs to contribute
 2) Client improvements
 3) Server improvements
 4) Android/iOS app

Thanks Zach for clarifying list topics.  At some point, perhaps after a mission statement is established and an initial team gets on board, I think it might make sense for discussion about a rewrite to be split to a different list.  (Of course, it would be natural anyway to have a dev list.)

It could be a multi-year effort before it successfully recreated netrek (assuming it even tried, Toumal's intentions are unclear to me) and it would detract from those who wanted to work on 2, 3 or 4 above and make for an uncomfortable list atmosphere of mixing old and new.  I may not have time to contribute code right now (since I'm doing my own rewrite) but I would be interested in following and discussing it, and would prefer an email list environment that did not mix two distinct thrusts so I didn't have to worry about annoying people who didn't care about a rewrite effort, or who do not care about it until it is like netrek.  But discussion of both GC and a non-netrek rewrite (until it became a netrek clone) would always be on topic as case studies that relate to potential netrek improvements. 

Jared

Mark Wood

unread,
Oct 11, 2011, 5:37:00 PM10/11/11
to netrek-...@googlegroups.com
1: Ancient games (like netrek) with minimal pizzazz are reasonable and tolerated on phones and tablets but far less so on desktops ...

2: the current (abysmally sized) playerbase is probably made up of those in two categories : 
2a: people like me who played netrek starting from ancient times (pre windows 95)
2b: a few younger generation types who were recruited by old-timers and stayed because of game-mechanics

3: the final few old-timers are nearly all grown-up into daily distractions with jobs and kids etc and not recruiting new players and there is functionally NOTHING else to recruit new players ... I suspect the gen-X recruits don't tend to persuade more recruits into a complex-gameplay-but-without-interesting-graphics games because they know their cohort wants nothing lower than WOW or evercrack, PS3 games, Wii, etc

4: the solution is to make 2 netrek clients ... 
4a: one for tablets, with gestures and on-screen-buttons
4b: a different interface paradigm for *keyboarded* smartphones

5: these smartphones and tablets have 
5a: extra control options (like their gyroscopes)
5b: touchscreens that operate sufficiently differently than mice that we have to change interface thinking
5c: potentially odd connectivity
5d: intermittency of attention, necessity of pausing, etc completely incompatible with a live 16-player game
5e: total newbies with no tolerance for empty-server issues or caustic commentary in their first hours before addiction sets in
5f: the very newbies we would love to recruit

6: My suggestion (and eventual intention) is to create a standalone non-server-based phone version of netrek 
6a: that plays by all the same rules we love, adhering to gameplay feel as much as possible
          (caveats = rapid contextual view switching local/galactic/msg with the other windows shrunken)
6b: with player-and-7-robots vs 8 robots maybe/later with the option to link to another phone for player+7 vs player+7
6c: keeping the same major interface elements, specifically including messaging
6d: and the player controls the robots via messaging commands in text form just like the better netrek bots
6e: later(maybe) for non-newbies (meaningful rank on a real server (i.e. earned on a PC) ), the mobile-client could allow real-server-play
6f: but importantly, it has to be a feels-real netrek bot-experience that they play alone, and can pause ... 
6g: then some % of millions of phone users will try local-only-solo-netrek and some % of them will try the real netrek

Basically, Netrek is functionally dead but the corpse is still quivering ... 

Changing the clothing and decorations on the pre-corpse will not attract newbies, especially with the grouchiness that pushed me away (again)

There is NO meaningful hope of directly attracting the PC (WOW, FPS, etc) / PS3 gamer crowd ... accept this, deal with it and move on

Netrek's only revival hope is to attract the Motorola-droid-1,2,3/LG-Ally/Samsung-Epic/Stratosphere/etc keyboarded-android-users and the various tablet users 
AND get them addicted to a single-player-game-with-lots-of-quasi-independant-bots and tell them to go to netrek.org for the multiplayer experience.

If anyone wants to put major coding time into netrek's revival, what I've laid out above is very likely to be the only reasonable path.

I would like to think I shall have time to pursue this, but I'm putting out the idea in case someone else wants to do so
     (realistically, I've several other major projects that should come before this labor of love)
     (if I finish my other projects and no-one has done something like this by then, I shall do so)

(and if anyone else is interested, I shall gladly respond privately with my entire list of interface ideas on how to make netrek-on-smartphones still comport with the look-and-feel of the near-dead netrek-on-1990-class-PC-paradigms so smartphone players could seamlessly transition to PC+bronco play as better-than-total-newbies)

-- Sarnac, briefly astro.ufl.edu server-runner, and never-very-good player from 1991-1995 or thereabouts (I've only been accused of being a bot once, on a *very* good day, long ago)


From: Zachary Uram <net...@gmail.com>
To: netrek-...@googlegroups.com
Sent: Tuesday, October 11, 2011 3:19 PM
Subject: Re: [netrek-forever] Re: Android app for checking Netrek Servers

James Cameron

unread,
Oct 11, 2011, 5:39:36 PM10/11/11
to netrek-...@googlegroups.com
On Tue, Oct 11, 2011 at 06:48:49AM -0700, ahn wrote:
> If you want to help Netrek and you want to have the most impact, I
> suggest you focus on the player-facing client and its usability, look
> for ways to expose the game to new players, and flatten the learning
> curve for any that try the game for the first time.

I agree, and this has been my plan now for about five years.

I've made COW on Linux much more usable, by adding a persistent entry
dialog, playing instructions, display of playing tips, and resilience in
the face of network disconnection or loss of UDP flow. Also got it
packaged into Ubuntu, and maintained the code against the continual
change of the compiler infrastructure.

I've written the new Gytha client, cross-platform, with a full-screen
dialog sequence, playing instructions, playing tips, and higher
resolution 2D graphics. It is written in a scripting language, and is
fairly easy to change.

For teaching the game in a classroom, which I do once or twice a year,
I've recently added some gradual discoverability scripting, so that the
teacher can avoid the distraction of weapons during the first few
minutes of the lesson plan ... allowing the lesson to focus on
elementary concepts like your position, the position of planets, of
other players, and how to move your ship.

Flattening the learning curve is important. Among 24 teenagers that I
taught last week, four of them needed guidance to realise that the
universe moved around them when they turned on their engines. They
thought they were stuck in the centre of the screen.

Paul Berker

unread,
Oct 11, 2011, 5:50:47 PM10/11/11
to netrek-...@googlegroups.com
I am top quoting... forgive me...
I can't tell you how many times I have been Verbally abused and left playing Netrek... enough that I no longer play.
or worse when I started to get into the coding and the Two Factions of this group not liking that other group going on...

I am not going to name anyone, but some of the Gate Keepers here are strangling this game to death thinking they are saving it.
paul.vcf

Toumal Rakesh

unread,
Oct 11, 2011, 6:45:26 PM10/11/11
to netrek-...@googlegroups.com
On Tue, Oct 11, 2011 at 10:51 PM, Jared Thirsk <jth...@shaw.ca> wrote:
From: Toumal <toumal...@gmail.com>
> > Rewriting the entire code base doesn't solve Netrek's
> problems.  Even
> > if we had had a redesign and reimplementation of the code 10 years
> > ago, the outcome would not have changed.  
>
> I think this one deserves an answer.
>
> First of all, how do you know? Also, the history of netrek is
> one of
> rewrites, otherwise you guys would be playing Empire (or
> Conquest for that matter)

I'm confused now.  Are you suggesting to make a different game that is loosely based on netrek?

No, I'm very much in favor of keeping it just like the current Netrek gameplay-wise.
 
Are you sure your skin is as thick as you think?  You seem to getting flustered for no good reason and it makes you harder to follow.  Relax...we all want to figure out the best approach(es) to moving netrek forward, and we are all grown up enough to deal with differing viewpoints.

You detect agitation where there is none ;) Trust me, I'm quite relaxed.
 
> Second of all, the thing is that this is not just about
> rewriting the
> server at all cost, but there are real reasons for it. If all you
> concentrate on is the client, you're missing the big picture. For
> example, can you make new interesting pre-T-mode gameplay without
> modifying the server? No. Any gameplay change will require server
> modifications. 

Freedom to experiment with better pre-T modes is a great idea.  It would have helped the discussion with me at least if you shared your 'real reasons' to start with, rather than say "let's rewrite thousands of lines of code and use unit tests and IOP.. it will be good, honest" :)  

Here's some logic.  (Maybe it would help if we stopped speaking english.)
 - Low amount of development effort available => look for biggest bang for buck.
 - Expectation of a new long-term development arc => rewrite everything

I agree with both logical conclusions.  It sounds like you only find the second scenario interesting, so I hope you succeed at it and find others to work with you.

I see your point - I just don't know if adding things like a new pre-t-mode to the current server is worth the hassle, especially with more changes coming down the line. Wouldn't it be nicer to have something that's easier to maintain? Maybe even testable and documented?
 
 - Biggest bang for buck (for a small development effort) is making the client look modern (like GC) with nice help screens and a smoother interface, I would think.  Instead of server-side tutorials, simply make youtube videos (I think something like it exists already, but I'm sure it could be made more accessible, or embedded in the client).

Ah tutorial videos are always an option, I completely agree.
 
 - Biggest bang for the buck (given a small effort available) is not to rewrite the server to do the exact same thing and then run out of steam.  That, my friend, is by definition exactly zero bang for the buck.  I know you are imagining more, but it's your fault in this discussion for not laying out a nice roadmap of features that you hope for.  

Well I said it before - easy-to-maintain code is worth extra effort. How much, that's the question. At this point our disagreement is whether or not a server rewrite is feasible or not, and it's difficult to decide who's "right".
I've had good experiences rewriting something bigger before, so I may be biased here.

It's still to be seen how much development effort is available.  As it stands now, even you admit it is not enough.   My secret agenda: that you might entice more developers to join you if you talk up all the awesome things you hope to do, given a revamped codebase foundation.

Well frankly, I don't think it would need more than 1 or two dedicated, skilled coders to get something done in a reasonable amount of time. My personal problem is that of time, and I'm not jumping up and shouting "here" because I know exactly that I don't have sufficient time to lead such an effort. I have a day job and run a spare time project coordinating 8 other contributors. But I can contribute certain work items.
 
> Doing a cross-platform client should be a no-brainer.
> It's what made Minecraft a success while nobody even
> remembers the .net-jailed Infiniminer

Not that I'm against cross-platform, but evidence I find here and on wikipedia suggests fragmentation was the downfall:

The minecraft source is pretty much out in the wild, and if you consider the many mods and plugins that alter the gameplay, I don't believe this. Why did minecraft, which has hundreds of completely gameplay-altering mods, not "fragment"?
 
> (Yes there's mono, I know... good luck with that)

Mono+Unity: Windows, OS X, web, iOS, Android, Xbox, Wii, proprietary set top boxes, and soon Linux (not that it matters much), on what's becoming triple-A game engine with a complete pipeline.... I don't think they need any luck

Mono exists thanks to the "promise" by Microsoft not to invoke their patents and copyright claims against it. Last time I checked, Mono does *not* have a license for their IP. What Microsoft did was not to remove the gun from their head, but just relax their finger. Their promise is worth very little and can be retracted at any time. I would feel a lot better about .net in general, and Mono in particular, if Microsoft were to finally put that stuff under a license that gets rid of the risk of possible future monetizing on their part. But maybe you have more current info on that topic, I admit I didn't check if something changed here recently.

OpenJDK is under an open source license and Oracle cannot retract that. All they could do was retract the Sun SDK distribution license for linux distros. OpenSDK is unaffected.

 
I admit I'm intrigued by Apache Mina.  .NET lacks a lot of nice things in the Java world like all the great libraries under the Apache umbrella.  I have no experience mixing Java with games, but Java could very well be a great choice, especially if you're the ringleader and you are comfortable with it.

That's the problem I see there: It's not enough that I am comfy with it. And that's why this discussion is so important.
 
Regarding concentrating on the client:
> You still have multiple clients that look and feel different on every platform, 
> and a webstart-enabled client, [is something you can only 
> dream of]

This appears to be an assumption on your part of what a client effort would omit.

Furthermore, having a client look the same on two different OS's is not a benefit
to the vast majority of users.  "I just rebooted from Windows to Linux and it looks
slightly different and I'm so confused! Gah! *ragequit*"  
I can see how a unified cross-platform client would benefit development time, which would in turn promote a higher quality client.  But if improving development time was a goal I'd start by, oh, say, not rewriting the server ;)   (But go for it dude)

You know, different clients for different platforms is one thing, but what about different clients for the same platform? How did that benefit netrek?
If improving development time is your goal, then the solution is simple: Change nothing ;)

 
> or a client that can spawn its own local
> server transparently for the user is something you can only
> dream of.

I'm not sure why this would be hard.
I haven't set up a server lately, or tried running it on Windows, but I would think it would be relatively low development effort to port it and have some mechanism to start a server with an appropriate config.  But if you want to do a rewrite, just do it and I'm happy for you that it is that much easier.  In my rewrite, I architected it to transparently start a server, as well as support in-client server to skip all netcode, and I'm happy.

(Having players on local servers instead of public ones seems like going in the wrong direction, but I'm sure you have un-expressed reasons why you think it would be a good idea.)

It would be nice if Netrek started to behave more like the other games out there in terms of general usage. In this case I mean a main menu that says something like this

TRAINING
HOST GAME
JOIN GAME
OPTIONS
QUIT

Sitting in a classroom with 30 other netrek players but have no outside connection (due to firewall or whatever)? Remember how easy it was to start a LAN game in games like Tribes? :)

> If you want to concentrate on the client, all you'll get is prettier
> sprites, maybe better controls and perhaps a nicer UI. 

My sincere concern here is that your efforts translate to a larger playerbase.
Taking the other viewpoint, if you focus on the server, and you get:
...
Maybe I forgot some (I'm omitting 'change planet names without recompile'), but I honestly can't see these things causing a dramatic revival of the netrek playerbase.  Do you??  I think co-op T would help a bit, just like I think pre-T bots have maybe helped a bit.  

Much of my point is about maintainability for the next 10+ years, as well as getting rid of some of the cruft that is inherent in the server. Rewriting the server isn't gonna attract new players on its own, but the consequences thereof very well might.
 
If you do your fancy server rewrite but still have clients that like an air traffic control application from the 80s, I still think players will still be scared to try it en masse.  Java over the years has been known for having awful UI that nobody likes to use so if you have been in a Java world for the last several years maybe you don't get it ;).

That's prejudice against java at work here. First of all, we're not talking about a Java Swing GUI here. This is all 2D sprite/polygon based stuff. I see no need for using Swing. A simple menu for managing things like keybinds and joining servers would be enough, and can look as awesome or as bad as you like ;)
Secondly, Swing is not that bad. <troll>It sure beats the bleached look of .net apps</troll>
I kid, I kid ;)

 
 - Tutorials

I think tutorials would help a lot, as would simplified training game modes.  To me this is the most compelling user-feature reason for a server rewrite, (but perhaps still an insufficent reason on its own, if I was to do it all myself.)  And I think it would go hand in hand with a client UI that is not intimidating, that holds your hand with tooltips, and that has buttons that appear on-screen for dropping armies, etc., like GC.   Since the client part could be done without a rewrite, I personally would start with it.  Even if Toumal goes and spends a while working on a rewrite, other people could work on these features for a client.

I am a little annoyed (but who cares) that you have seemed to be talking more about developer features than player features.  

Well frankly I don't want to come with ludicrous player feature suggestions at this stage. If I could, I'd say let's add space whales that shoot lasers and can smack starships with their tailflukes! That would be awesome!
But wouldn't it be a huge boon if netrek itself were put on a fresh, solid foundation first before we worry about new gameplay stuff, if we want that at all?
 
Facetious feature proposal: in addition to the red alert indicator in the client, you have a red alert indicator if someone breaks your CI build, and next to the player list you have a green-red light indicator to show which unit tests are broken, and a new macro for "Please ogg bug #1234".

You'd be surprised how customizable Jenkins can be ;)
 
I'm sure you and I and others could think of more improvements, but I think it would be helpful and inspiring to list them all.  The thought of different features coming to fruition may appeal to different would-be developers and get them on board.

I've seen a lot of people being turned off by the way netrek presents itself from the server to the client. From many binaries installed by the server package to the way the client doesn't have a menu like any normal game, to the default keybinds and the lack of a training mode.

I guess my main point is that of accessibility: Running the game from within a browser would go a long way to attract new players. That itself doesn't warrant a server rewrite, but again, we have been over this topic already.
 
> Sure, the server works, but so do the currently available
> clients. By that rationale, there should be no change at all.

This statement is not helpful.

But is it false? You can play netrek now, so it's not broken.
 
> Making nicer explosions or better keybinds in
> Netrek client XYZ is not going to yield a revival of Netrek.

This is a strawman.  There are prettier clients and I couldn't care less about nicer explosions.  I unfortunately find the prettier netrek clients that have come along harder to look at (partly because they're in early development and have weird zooming.  I think I did try a 3D aspect one that seemed harder to play with but maybe it takes getting used to.  I mostly like GC).  Often in games I wish I could simplify the graphics for a more distilled view.

I completely agree. In fact I don't like the fancy colorful graphics of the opengl conquest client for example. The ships are huge and it feels like a toy. Netrek feels more like a tactical console, and that's something I'd love to see preserved, though tweaked for accessibility.
 
> My last suggestion is that you folks decide what you want. The ones
> who don't want change obviously can keep using their old stuff, the
> others could move on. 

Potential development streams coming out of these discussions:

 1) Toumal's plan of rewrite everything and add new features
     -) Need to list potential new features
     -) Need a mission statement
     -) Need to find enough devs to contribute
 2) Client improvements
 3) Server improvements
 4) Android/iOS app

My proposal is a Java-based client/server pair that works either separately or in a combined package, transparently to the user. Hosting a LAN game should be as easy as with most modern games, while joining a network game should have a solid server browser that is fully integrated into the menu UI. I'd also break protocol compatibility with the old system. Get rid of the lavaflow stuff and start with just what we need. I realize this is a drastic proposal.
 
Thanks Zach for clarifying list topics.  At some point, perhaps after a mission statement is established and an initial team gets on board, I think it might make sense for discussion about a rewrite to be split to a different list.  (Of course, it would be natural anyway to have a dev list.)

The question is also whether a rewrite makes enough sense at all. I don't blame you if it turns out that the majority wants to focus on a new or an existing client only.  I'd just like to note that if you write a new client, you automatically get much of the old idiosyncrasies back inside because, well, you have to handle things the same way as every other compatible netrek client.
 
It could be a multi-year effort before it successfully recreated netrek (assuming it even tried, Toumal's intentions are unclear to me) and it would detract from those who wanted to work on 2, 3 or 4 above and make for an uncomfortable list atmosphere of mixing old and new.  I may not have time to contribute code right now (since I'm doing my own rewrite) but I would be interested in following and discussing it, and would prefer an email list environment that did not mix two distinct thrusts so I didn't have to worry about annoying people who didn't care about a rewrite effort, or who do not care about it until it is like netrek.  But discussion of both GC and a non-netrek rewrite (until it became a netrek clone) would always be on topic as case studies that relate to potential netrek improvements.

Would it need years? Frankly I doubt that. I wrote DerangedRaid with multiplayer support in 2 years, from scratch. I was  a single guy and I started with 3dfx and switched to opengl halfway through, without using any existing 3d engine. Worse, I learned most things as I went: How does polygon-based collision detection work, how does one implement a particle system, how do I implement a procedural terrain generator, how do I calculate lead firing for laser turrets, etc.

This is a 2D strategy/action game. I'm not saying it's not complex, but with a group of people working on it, it shouldn't take that long.

Or maybe I am overly optimistic here ;)
 

Toumal Rakesh

unread,
Oct 11, 2011, 6:49:58 PM10/11/11
to netrek-...@googlegroups.com
On Tue, Oct 11, 2011 at 11:37 PM, Mark Wood <marc...@yahoo.com> wrote:
There is NO meaningful hope of directly attracting the PC (WOW, FPS, etc) / PS3 gamer crowd ... accept this, deal with it and move on

I don't know if I agree there. If you told someone back in 2008 that a PC sandbox game involving blocks would sell 3 million copies, they would've declared you crazy and told you that nobody plays this kind of game anymore. But it happened.
 
Netrek's only revival hope is to attract the Motorola-droid-1,2,3/LG-Ally/Samsung-Epic/Stratosphere/etc keyboarded-android-users and the various tablet users 
AND get them addicted to a single-player-game-with-lots-of-quasi-independant-bots and tell them to go to netrek.org for the multiplayer experience.

I admit I was never a fan of singleplayer games on mobile devices. But if a mobile-only version is your goal, why not consider mobile vs. mobile multiplayer? I agree that letting players go up against PC players with their mouse and keyboard controls is probably not gonna work...


 

Jared Thirsk

unread,
Oct 11, 2011, 8:53:41 PM10/11/11
to netrek-...@googlegroups.com
From: James Cameron <qu...@us.netrek.org>

> > If you want to help Netrek and you want to have the most
> impact, I suggest you focus on the player-facing client and its
> usability ... and flatten the learning

> > curve for any that try the game for the first time.
>
> I've made COW on Linux much more usable, by adding a persistent entry
> dialog, playing instructions, display of playing tips, ...
> Flattening the learning curve is important.

I've been a little critical of clients, and I haven't played much netrek in the last few years, but I've seen improvements like this and just wanted to say I think it's great and exactly meeting the most urgent need.  I wish more client devs had more time to do stuff like this, and keep adding polish.

(I saw in the Galactic Combat game that there was a dedicated artist.  I especially liked the layout for the help screen: nice layout, font size and whitespace, although it may be a lot harder to do in netrek.)

Jared

James Cameron

unread,
Oct 11, 2011, 9:12:06 PM10/11/11
to netrek-...@googlegroups.com
On Tue, Oct 11, 2011 at 06:53:41PM -0600, Jared Thirsk wrote:
> I've been a little critical of clients, and I haven't played much
> netrek in the last few years, but I've seen improvements like this and
> just wanted to say I think it's great and exactly meeting the most
> urgent need. I wish more client devs had more time to do stuff like
> this, and keep adding polish.

Thanks.

> (I saw in the Galactic Combat game that there was a dedicated artist.
> I especially liked the layout for the help screen: nice layout, font
> size and whitespace, although it may be a lot harder to do in netrek.)

It didn't seem too difficult to improve the layout in Netrek. Have a
look at Gytha. http://quozl.linux.org.au/gytha/ ... has screenshots so
you can see some of the layout, font sizes, and whitespace. These
screenshots are slightly unrepresentative, as I've captured them at
800x800 pixels. It looks a bit different on the standard size of
1000x1000 pixels. Also, the screenshots are missing the subgalactic
view added in the latest version.

Have you an example of the layout in Galactic Combat?

Jared Thirsk

unread,
Oct 11, 2011, 9:47:37 PM10/11/11
to netrek-...@googlegroups.com
From: Toumal Rakesh <toumal...@gmail.com>

> I see your point - I just don't know if adding things like a new
> pre-t-mode
> to the current server is worth the hassle, especially with more
> changescoming down the line. Wouldn't it be nicer to have
> something that's easier
> to maintain? Maybe even testable and documented?

If one wants freedom to experiment easily with lots (more than 2 or 3) of substantially potential pre-T-mode variants, then yes it would be nicer.

> Well I said it before - easy-to-maintain code is worth extra
> effort. How
> much, that's the question. At this point our disagreement is
> whether or not
> a server rewrite is feasible or not, and it's difficult to
> decide who's "right".
> I've had good experiences rewriting something bigger before, so
> I may be biased here.

I've had good experiences too.  I think a rewrite is more compelling (and therefore more feasible when volunteer labor is involved) when everyone has an idea of a feature roadmap.


> Mono exists thanks to the "promise" by Microsoft not to invoke
> their patents and copyright claims against it. 

It is a bit of a dark cloud, and OSS purism aside, if you look at realistic worst case scenarios, I'm not sure there is much to worry about.  MS charging non-zero royalties on free software seems unlikely.


> You know, different clients for different platforms is one
> thing, but what
> about different clients for the same platform? How did that
> benefit netrek?
>
> If improving development time is your goal, then the solution is 
> simple:Change nothing ;)

A lot of things haven't benefited netrek as much as they could for various reasons,
such as lack of volunteer time.
If, for example, the python client was more mature I'd probably spend 3 hours
trying to add one of the features I have in mind, instead of writing long silly emails on this list.
Like you and Andew and probably others, I'd be more willing and able to contribute to a rewritten codebase that had a nicer OO structure.

> It would be nice if Netrek started to behave more like the other
> games out there... Remember how
> easy it was to start a LAN game in games like Tribes? :)

Sure, the ability to start LAN games easily is one more feature that would be nice to have.


> That's prejudice against java at work here. First of all, we're not talking
> about a Java Swing GUI here. This is all 2D sprite/polygon based
> stuff. I see no need for using Swing. A simple menu for managing things
> like keybinds
> and joining servers would be enough, and can look as awesome or
> as bad as you like ;)
> Secondly, Swing is not that bad. <troll>It sure beats the
> bleached look of .net apps</troll>
> I kid, I kid ;)

It's ok, I was trolling too.

(BTW the first version of my game is using WPF for GUI.  I plan for some non-trivial GUI, plus WPF is nice to (dynamically) style and animate and databind and compose -- the nicest I know of on any platform.  But porting it might be impossible (or a licensing issue), except for porting to the web via Silverlight.)

> > I am a little annoyed (but who cares) that you have seemed to
> be talking
> > more about developer features than player features.
>
> Well frankly I don't want to come with ludicrous player feature
> suggestionsat this stage. If I could, I'd say let's add space
> whales that shoot lasers
> and can smack starships with their tailflukes! That would be awesome!
>
> But wouldn't it be a huge boon if netrek itself were put on a  fresh, solid
> foundation first before we worry about new gameplay stuff, if we
> want that at all?

No. :)

It would be great -- I just think a bigger vision is helpful.

Otherwise it's only a boon to programmers who enjoy adventures in code beautification.
I measure 'boon' in terms of features that are valuable to a player or server admin.

> ... to the way the client doesn't have a menu like any 
> normal game, to the default keybinds ...

These 2 items could be addressed very quickly without a rewrite.

> ... Netrek feels more like a tactical console, and that's 

> something I'd love to see preserved, though tweaked for accessibility.

This item could be addressed now, but I don't know which client would be best to contribute to.
Even if the client is reimplemented later in Java or whatever, the UI concepts could be implemented now as an early prototype to help drive the UI design process.

> I guess my main point is that of accessibility: Running the game
> from within
> a browser would go a long way to attract new players. That
> itself doesn't
> warrant a server rewrite, but again, we have been over this
> topic already.

It sounds like you want to do enough things to warrant a rewrite, assuming its feasible.
I think it's a matter of people now deciding between low-risk lower reward contributions to the existing codebase vs higher-risk higher-reward contributions to a new one.

> > Potential development streams coming out of these discussions:
> >
> >  1) Toumal's plan of rewrite everything and add new features
> >      -) Need to list potential new features
> >      -) Need a mission statement
> >      -) Need to find enough devs to contribute
> My proposal is a Java-based client/server pair that works either
> separately or in a combined package, transparently to the user.
> Hosting a LAN game
> should be as easy as with most modern games, while joining a
> network game
> should have a solid server browser that is fully integrated into
> the menu
> UI. I'd also break protocol compatibility with the old system.
> Get rid of
> the lavaflow stuff and start with just what we need. I realize
> this is a drastic proposal.

Sounding good!

If you do plan to potentially (re)implement these features, I think it may be good to take them into account from the start (and include them in your mission statement):
 - tutorials
 - replays
 - scripting
 - bots

(Some of it may be obvious, like bots and tutorials, but it would be a shame to code yourself into a corner all over again by not thinking about the future.)

> The question is also whether a rewrite makes enough sense at
> all. I don't
> blame you if it turns out that the majority wants to focus on a
> new or an
> existing client only.  I'd just like to note that if you
> write a new client,
> you automatically get much of the old idiosyncrasies back inside
> because,well, you have to handle things the same way as every
> other compatible netrek client.

That's true.  If I did take that approach, I'd definitely think about abstracting the network protocol layer in case the server and protocol was later swapped out.
I might consider interop with the existing protocol 'wasted effort', but see it as a purchase of momentum and earlier return on investment.

> > It could be a multi-year effort before it successfully recreated netrek
>
> Would it need years? Frankly I doubt that. I wrote DerangedRaid with
> multiplayer support in 2 years, from scratch.
>
> This is a 2D strategy/action game. I'm not saying it's not
> complex, but with
> a group of people working on it, it shouldn't take that long.
>
> Or maybe I am overly optimistic here ;)

I hope it works out!

Jared

James Cameron

unread,
Oct 11, 2011, 10:29:06 PM10/11/11
to netrek-...@googlegroups.com
On Tue, Oct 11, 2011 at 07:47:37PM -0600, Jared Thirsk wrote:
> If, for example, the python client was more mature I'd probably spend
> 3 hours trying to add one of the features I have in mind, ...

In what way is Gytha immature? In the context of features you need
before you would write for it. I'm interested, for prioritisation of
planned work.

ahn

unread,
Oct 11, 2011, 10:30:09 PM10/11/11
to netrek-forever
On Oct 11, 5:39 pm, James Cameron <qu...@us.netrek.org> wrote:
> I've written the new Gytha client, cross-platform, with a full-screen
> dialog sequence, playing instructions, playing tips, and higher
> resolution 2D graphics.  It is written in a scripting language, and is
> fairly easy to change.

I'm impressed, James, at least from just the snapshots and
description.

Andrew Szczeszynski

unread,
Oct 11, 2011, 11:28:57 PM10/11/11
to netrek-...@googlegroups.com
> That's prejudice against java at work here. First of all, we're not talking about a Java Swing GUI here. This is all 2D sprite/polygon based stuff.
> I see no need for using Swing. A simple menu for managing things like keybinds and joining servers would be enough, and can look as awesome or as bad as you like ;)

Java has aweful looking 'default' feel to it, but Toumal is right - you can make anything you want in Java.  It would be awesome to get real artist work to make it look good - they could create some good looking art (I used to work for a games company, and the first thing I learned is how far apart a programmer's concept of 'good art' was from what artist consider good art - real artists wouldn'y be caught dead with the art programmers think are amazing) 

> Well frankly I don't want to come with ludicrous player feature suggestions at this stage. If I could, I'd say let's add space whales that shoot lasers and can smack
> starships with their tailflukes! That would be awesome!
> But wouldn't it be a huge boon if netrek itself were put on a fresh, solid foundation first before we worry about new gameplay stuff, if we want that at all?

There is a rule in programming - if you need to rewrite more than 10% of some piece of code, you are better off rewriting the whole thing.  Having had some experience with the Netrek code, I think it would be much faster to restart from scratch (with proper code design to implement encapsulation).  It does not necessarily have to be OO - it just needs to use encapsualtion - which I personally think would be much better achieved using OO (you can do proper encapsulation with just plain C as well)..


> I guess my main point is that of accessibility: Running the game from within a browser would go a long way to attract new players.
> That itself doesn't warrant a server rewrite, but again, we have been over this topic already.

The whole point of doing this work is to revive the game (in the long run), and I agree - in todays time, the game has to be accessible (and there is no reason why it can't). 

> I completely agree. In fact I don't like the fancy colorful graphics of the opengl conquest client for example. The ships are huge and it feels like a toy.
> Netrek feels more like a tactical console, and that's something I'd love to see preserved, though tweaked for accessibility.

Agreed.  I think the major problem with Netrek is that the user is overloaded with information, and it takes a long while to absorb it and figure out what to use when.  I think a full UI redesign could go a long way - providing only the information the user needs at any given moment, but allowing other information to be available as needed.  For instance, as an example, it would be nice if messaging itself was somewhat obsolete.  For instance, as soon as a ship on your team picked up armies, a special UI element (e.g. a glow) would make it obvious that ship is carrying armies.  If the ship is not on your screen, an arrow would point to that ship on the edge of the screen with some particular image.  If a ship with armies clicked to go near some location, your team mates would immediately be notified using some UI elements where the ship is trying to go.  I think the UI could be redesigned so that for the most part, no messages are needed and its very easy for new people to understand what is going on.   This is just one example (and feel free to disagree about this particular case), but I think we could redesign the UI to be much, much simpler.  Once that is done, I think the game could benefit from fancier graphics, because the graphics is not competing with text.
 
> Would it need years? Frankly I doubt that. I wrote DerangedRaid with multiplayer support in 2 years, from scratch. ...

> This is a 2D strategy/action game. I'm not saying it's not complex, but with a group of people working on it, it shouldn't take that long.
> Or maybe I am overly optimistic here ;)

I completely agree.  Take GC for instance - took me about 3 months of coding effort, and that without having done flash games before.

Cheers,
Andrew


Jared Thirsk

unread,
Oct 11, 2011, 11:36:53 PM10/11/11
to netrek-...@googlegroups.com

I took another look and I guess it's further along than I thought. 
(I saw no playerlist and no galactic or graphical dash and thought it was only at concept stage.  But I see it does have a galactic if you press enter -- interesting.)   So maybe I will take a look at contributing if/when I have some spare cycles.  
I'm not sure how easy it is to add GUI stuff -- have you considered using a (themable) gui library, like Gtk?  I'm not sure how/if it would work in your case.

Jared

Andrew Szczeszynski

unread,
Oct 11, 2011, 11:37:40 PM10/11/11
to netrek-...@googlegroups.com

> I'd suggest keeping the server and the client separate for now. Starting a server from within the client can be added later anyway.

Absolutely - and they should not share code.  The client needs to be ported to many platforms (e.g. Android, iOS, PC, MAC), but the server doesn't need to (at least, not initially).  The simpler we make the client, the easier it will be to port to different platforms, and the easier it will be to push new games changes.

> I guess the only question to ask is... who else is interested?\

I am very, very busy, but I could contribute, especially code snippets from GC that could be useful here (e.g. AI code). 

Cheers,
Andrew

Craig Cameron

unread,
Oct 12, 2011, 12:05:53 AM10/12/11
to netrek-...@googlegroups.com

My Two cents,

 

Hi guys,

 

I gave up playing when I moved to Australia but I still love the game and play when I am back visiting in Canada.

 

I think what we would need to do would be to first establish a steering committee

 

The steering committee will then:

1) Establish a timeframe where by all suggested can be submitted for the new project (see if we can canvas as many people who have seen netrek as possible)

2) What should be the high level goals of the project (This might include technical goals, marketing goals)

3) Understand what resources are available (Programming, Graphics, Marketing, Financial if any)

4) The committee would then vote on which features netrek should have

5) The committee would then vote on which technologies can best meet the requirements

6) Next set a timeframe to achieve these goals

7) Set up a meeting schedule

8) Next assign / volunteer the resources to implement the functionality

9) Get backup strategies for when planned resources suddenly become unavailable

 

If you have any suggestions on this approach or feel I have missed something please let me know.  I would also like to know if you think this approach would work.

 

As for me personally I think it would be get more players if:

Netrek was very pretty and had a 3D look to it

It had better sound and nice voice overs for each of the different races (my friend does a good Klingon voice)

It could be played through a web browser and from a client

Players from higher ranks can give you accomodations

You can get achievements like: 'geno in under 20 minutes' 5 times, MaxKills > 10 3 time, Took last planet 6 times, Dooshed a carrier with 10+ armies 50 times etc…

It could be played in single player or multi player mode

Different websites could have different modes i.e.

                Ensign mode you can only dogfight

                Lietenant mode tractors pressors shields and repair mode become available

                Captain mode orbiting is done automatically so is beaming up and down armies and bombing, messaging is enabled

                Admiral mode = the Normal Netrek that we all know and love

                Whenever you reach a new level it tells you what your new abilities are

 

Yours,

 

Craig "happyfish" Cameron

 

Flame away.

 

James Cameron

unread,
Oct 12, 2011, 12:20:47 AM10/12/11
to netrek-...@googlegroups.com
G'day Craig,

Nice to hear from you again. Yes, organisation would be useful, please
continue to push it.

I agree playing from a web browser is essential. I haven't got a good
grasp on how to implement it. ;-) I have noticed that people like
large downloads though. There's a higher perceived value for a game if
the download takes a while.

Gytha has achievements. It prevents on-death refit to anything but a
cruiser until the player has died enough times, then they are granted
access to assault ship and scout. They have to die even more times
before they are given access to battleship and destroyer. The kids at
camp called them "ship upgrades".

(When asked "how do I get the upgrade", we told them "die more often",
and they asked "why is that?", and we pointed out that their explosion
was the best weapon they had, and if they aren't firing this weapon
properly they need to learn how).

The refit at home planet or base was never prevented though. ;-}

The playing tips also serve as useful "non-upgrade" warnings, but I'd
like to see them formalised as icons down the side of the screen.

James Cameron

unread,
Oct 12, 2011, 12:28:35 AM10/12/11
to netrek-...@googlegroups.com
On Tue, Oct 11, 2011 at 09:36:53PM -0600, Jared Thirsk wrote:
> (I saw no playerlist and no galactic or graphical dash and thought it
> was only at concept stage. But I see it does have a galactic if you
> press enter -- interesting.)

Player list is missing, but frankly it hasn't proved useful yet to the
new players. They are encouraged to use 'i', and actually look at the
galactic.

Graphical dash was most requested feature at camp last week. Shouldn't
be difficult.

There's a subgalactic, overlaid on the tactical on the bottom left
corner, but it doesn't include ship numbers, only team colours.

> I'm not sure how easy it is to add GUI stuff -- have you considered
> using a (themable) gui library, like Gtk? I'm not sure how/if it
> would work in your case.

Yes, considered GTK+ (PyGTK), I'm reasonably familiar with that because
of my Sugar work. But it isn't so easy to do blits and blends. I've
also considered Cairo, and did some prototyping with another developer.

What convinced me in the end was cross-platform support. GTK+ sometimes
doesn't look particularly good on Windows.

Ripping out the Pygame rendering and substituting OpenGL probably
wouldn't be all that difficult.

Bill

unread,
Oct 12, 2011, 9:31:40 AM10/12/11
to netrek-forever
On Oct 11, 11:28 pm, Andrew Szczeszynski <andre...@yahoo.com> wrote:
> Agreed.  I think the major problem with Netrek is that the user is overloaded with information, and it takes a long while to absorb it and figure out what to use when.  I think a full UI redesign could go a long way - providing only the information the user needs at any given moment, but allowing other information to be available as needed.  For instance, as an example, it would be nice if messaging itself was somewhat obsolete.  For instance, as soon as a ship on your team picked up armies, a special UI element (e.g. a glow) would make it obvious that ship is carrying armies.  If the ship is not on your screen, an arrow would point to that ship on the edge of the screen with some particular image.  If a ship with armies clicked to go near some location, your team mates would immediately be notified using some UI elements where the ship is trying to go.  I think the UI could be redesigned so that for the most part, no messages are needed and its
>  very easy for new people to understand what is going on.   This is just one example (and feel free to disagree about this particular case), but I think we could redesign the UI to be much, much simpler.  Once that is done, I think the game could benefit from fancier graphics, because the graphics is not competing with text.
>  
I just had to reply to this comment. First off, it is true that
netrek has a lot of information. But that's netrek, it's a tactical
game where processing information quickly is required for clued play.
You can argue that the information should be presented differently,
but you cannot argue that there should be less information - then that
game is no longer netrek, it's some dumbed down space shooter. The
fact that you think messaging is unimportant shows a lack of clue.
Netrek is game of numbers - fuel, damage, shields, army count. You
can do certain things with UI elements but glows/arrows cannot provide
the information you need to make decisions at higher level of play.
Not to mention, we already have a feature called beeplite which
provides glows/halos for ships who call out carries and ogg targets -
unfortunately, this feature is considered "borg" by some and is
disabled by some servers. Beeplite was designed to reduce reading
requirement by pinging map with glows to try and tell the twinks where
to go. The fact that this feature was never fully accepted among clue
should give you an indication of what resistance you will face when
proposing changes.

The second thing I need to comment on, which has come up from several
posters, is that clients don't have a menu, don't have a keymap, don't
have a UI for changing keymaps, and don't have good graphics. I will
address each point in turn. I will be referring to the only actively
developed Windows client, Netrek XP 2010, of which I am the
maintainer.

1) "Lack of menu"

I would argue that the metaserver window is a menu. Besides allowing
you to click on a server of your choice, there is a button for quit, a
button for the netrek homepage, the newbie manual, INL FAQ, forum
(rec.games.netrek unfortunately) and a broken link to Charlie's
dogfight manual. What other options would you like? If you think
there should be things like single player/tutorial buttons, that's
really more of a server thing than a client thing.

2) "No keymap"

The client does have a keymap, and it's not "no keymap". The default
keys in netrek are pretty bad. I've included a keymap with the client
that's optimized for dogfighting. Every person will have a different
idea what is a good keymap, but you can't say that there's no keymap,
or that thought wasn't put into the keymap that comes with the client.

3) "No UI for changing keymaps"

Maybe you haven't played in awhile, but there are 4 ways to change
your keymap with the client. There's the old fashioned ways, of
editing netrekrc.txt manually, as well as manual remaps from the
options menu (yes, there's an in game menu, always has been. Shift-
o). We've added 2 new ways to change keymaps. The first way is in
game, through the help menu. The help menu lists all possible options
that can be remapped. By using mouse and keyboard you can change your
keymap right through the help menu. The second way is an external
utility called the netrek configuration program, a standalone
application included with the client install. It is a graphical
keymap editor for the basic keymap commands, designed to be as newbie
friendly as possible.

4) "Better graphics"

This issue is the one that's really misunderstood by people who really
don't grok netrek mechanics. We have 2 main windows in netrek, the
tactical ("local") windows and the galaxy ("map") window. It is a
fixed game mechanic, hard coded and a fundamental basis of netrek
gameplay, that the tactical window provides 500x500 pixels of
information. Outside this viewing window, the server will not send
certain information (other people's weapons, for example). Within
this window, netrek is scaled around a ship being 20x20 pixels.
People who complain about netrek graphics not being good enough, need
to realize that 20x20 pixels is quite constraining. The artwork for
ships, shared between gytha and Netrek XP 2010, is much more detailed
than be displayed at 20x20 pixels. The original artwork is 1000x1000
pixels. It has to be scaled down to display in game. The same for
planets.

Now, you might say "well, just make the tactical bigger so the
graphics are better!". There's 2 approaches to this. One approach is
taken by gytha, to make the tactical full screen, 1000x1000. This
allows the graphics to be a bit better as you can have 40x40 pixels
for ships. However, you lose the galaxy window. I would argue if you
don't have a galaxy window, you will not be very good. Netrek is
about awareness. No galaxy window really hurts your awareness. The
second approach is to take advantage of larger monitor sizes to scale
tactical window larger, increasing zoom factor to make graphics
better, while keeping the galaxy window. This approach wasn't
possible with older clients, but I build scalability into Netrek XP
2010 so you can infact do this. But, and this a big but, there's a
third option with scaling. And this option is the superior one when
it comes to gameplay. It is to scale the tactical window larger but
keep the same zoom setting. So graphics are the same, but you can now
see further, beyond the 500x500 netrek was designed for. You get
limited information from the server, but you still get some
information, and it provides a gameplay advantage. You can see ship
position, heading and speed on tactical that other players can't,
because your tactical is bigger. When presented with the choice of
better graphics or gameplay advantage, there really is no choice at
all, imho. I play with a 750x750 tactical and 500x500 galaxy window
on a widescreen monitor.

Cries for "better graphics" need to understand how netrek works and
why better graphics and better gameplay are at odds with one another
in the netrek universe.

Bill


Jared Thirsk

unread,
Oct 12, 2011, 7:26:42 PM10/12/11
to netrek-...@googlegroups.com

On Tue, Oct 11, 2011 at 06:53:41PM -0600, Jared Thirsk wrote:
> > I've been a little critical of clients, and I haven't played much
> > netrek in the last few years, but I've seen improvements like this and
> > just wanted to say I think it's great and exactly meeting the most
> > urgent need.  I wish more client devs had more time to do stuff like
> > this, and keep adding polish.

The standalone config app in Netrek XP that Bill mentioned is also nice.

What I hope for in terms of polish is having something like this integrated into the actual game application, and some kind of menu that looks like todays games: i.e. a big button in a main menu or in-game menu (probably accessible by a button) that says "Options".  The traditional netrek options menus themselves work but I'd personally appreciate a modern looking one.  (I have a partly irrational bias towards nice GUIs these days, but maybe that's a good thing.)

> > (I saw in the Galactic Combat game that there was a dedicated artist.
> >  I especially liked the layout for the help screen: nice layout, font
> >  size and whitespace, although it may be a lot harder to do in netrek.)

James Cameron wrote:
> It didn't seem too difficult to improve the layout in Netrek.  Have a
> look at Gytha.  http://quozl.linux.org.au/gytha/ ... has screenshots so
> you can see some of the layout, font sizes, and whitespace.  These
> screenshots are slightly unrepresentative, as I've captured them at
> 800x800 pixels.  It looks a bit different on the standard size of
> 1000x1000 pixels.  Also, the screenshots are missing the subgalactic
> view added in the latest version.

I think the whitespace you have, like in the tip screen is in the right direction.  
In my day job I learned to be a powerpoint monkey to convey technical info to people who didn't have much time and so I learned to value big fonts, few words on a screen, icons when possible, etc.

> Have you an example of the layout in Galactic Combat?

What impressed me most was the help screen that summed up the controls on one page.  It is very unintimidating and fun to look at.  It reminds me of help screens on console games, which is a very good thing.  It has nice graphics with big broad arrows and big icons of mouse clicks and stuff.  (It would probably require more pages in netrek, but that's ok.  Modern football and hockey games on consoles have multi-page help screens with tons of buttons.) 

The menus' look and layout appears modern, like from any top casual game today, and in-game buttons for beaming up armies and changing ships are simple but I think help flatten the learning curve without changing the game.  

I did get gytha's source from darcs up and running inside Microsoft Visual Studio 2010 Shell with Microsoft Python Tools for Visual Studio (all free), and I see the subgalactic.  I always wondered what a smaller map would look like -- it looks pretty cool, although I of course miss reading player id's in there.  
One thing I've wanted to see in the galactic was to omit the F in 'F3' and just have 3.  I have a hard time distinguishing colors (though mostly between Fed yellow and Kli light green, which doesn't matter) so I'd put the 3 on a filled circle icon, or even better have different shapes for each team.

Another idea for shrinking the galactic (apologies if they've been brought up before, I think they may have.)  Is to reduce the galactic to half size or a little more, in a 300x500 or whatever ratio, auto rotate the races to the Fed/Rom posistions, and then for the occasional idiots or sneaky guys in 3rd space, have an arrow pointing where they are off the map.  (And maybe something within the arrow, to indicate how far into 3rd space they are.)  With today's widescreen monitors, this may let the tactical be almost full size while still providing a 90% solution for the galactic.  For the odd time you want to scroll the map view to see 3rd space, it could be done with a click, or automatically somehow if you fly there yourself.  Or reverse the galactic so it is in Kli/Ori position, and have 3rd space drawn on top of the tactical in some semi-opaque manner.  Or take your press enter to see map approach to instead show the full galactic instead of half, perhaps shrinking the tactical to accomodate.

Jared

Niclas Fredriksson

unread,
Jan 9, 2012, 7:34:46 AM1/9/12
to netrek-...@googlegroups.com
On Sun, 9 Oct 2011, Jared Thirsk wrote:

>>> I dream of that also. Netrek will rise from its ashes like a
>>> glorious phoenix! A new generation of developers will lead the way hehe.
>>
>> I'll take that bet.� Say... $1000 USD?
>
> Betting for or against? �I am betting a chunk of my life savings on it.

Betting that something will never happen is a bet that can only be lost.
So if someone wants to bet me 1000 USD that netrek will never once again
get an active community (let's define that by having one season in a
league with at least 8 teams) then that's a bet I'd love to take.

--
Niclas

John R. Dennison

unread,
Jan 9, 2012, 8:24:04 AM1/9/12
to netrek-...@googlegroups.com
On Mon, Jan 09, 2012 at 01:34:46PM +0100, Niclas Fredriksson wrote:
>
> Betting that something will never happen is a bet that can only be
> lost. So if someone wants to bet me 1000 USD that netrek will never
> once again get an active community (let's define that by having one
> season in a league with at least 8 teams) then that's a bet I'd love
> to take.

You're on with one stipulation. Must occur in the next couple of years.

Netrek is dead. Has been for a long time. I still graph contact usage
and it's effectively flat-lined.


John

--
It's like picking a team when you really don't want to root for either
team.

-- Kristin Johnson, 23, on the two political parties, New York Times,
3 September 2010

Zachary Uram

unread,
Jan 9, 2012, 12:29:06 PM1/9/12
to netrek-...@googlegroups.com
On Mon, Jan 9, 2012 at 8:24 AM, John R. Dennison <j...@gerdesas.com> wrote:
>
> Netrek is dead.  Has been for a long time.  I still graph contact usage
> and it's effectively flat-lined.

Tis tragic.

--
Zach
http://www.fidei.org

John R. Dennison

unread,
Jan 9, 2012, 12:46:48 PM1/9/12
to netrek-...@googlegroups.com
On Mon, Jan 09, 2012 at 12:29:06PM -0500, Zachary Uram wrote:
>
> Tis tragic.

It is what it is. It's not ever coming back. Pull the plug, let it
expire already.


John

--
<zu22> Hellow: bears are wonderful animals
<zu22> I love bears!
<zu22> I want to feed them marshmellows.

Zachary Uram

unread,
Jan 9, 2012, 1:12:01 PM1/9/12
to netrek-...@googlegroups.com
On Mon, Jan 9, 2012 at 12:46 PM, John R. Dennison <j...@gerdesas.com> wrote:
>
> It is what it is.  It's not ever coming back.  Pull the plug, let it
> expire already.

Do you think if it dies completely it could be rebooted in the future?


--
Zach
http://www.fidei.org

John R. Dennison

unread,
Jan 9, 2012, 1:28:13 PM1/9/12
to netrek-...@googlegroups.com
On Mon, Jan 09, 2012 at 01:12:01PM -0500, Zachary Uram wrote:
>
> Do you think if it dies completely it could be rebooted in the future?

Only if one were to get an exhumation order. The proper thing to do is
pull the plug; let it expire; give it a nice burial; move on with life.


John
--
Motivation is the art of getting people to do what you want them to do because
they want to do it.

-- Dwight D. Eisenhower (1890-1969), Thirty-fourth President of the USA

Paul Berker

unread,
Jan 9, 2012, 1:32:41 PM1/9/12
to netrek-...@googlegroups.com
I have a question,

If I put up a netrek server and it showed up on the server list.
Would I still have people going crazy yelling and screaming for me to take it down?

MaxFerret

paul.vcf

John R. Dennison

unread,
Jan 9, 2012, 1:49:27 PM1/9/12
to netrek-...@googlegroups.com
On Mon, Jan 09, 2012 at 12:32:41PM -0600, Paul Berker wrote:
> If I put up a netrek server and it showed up on the server list.
> Would I still have people going crazy yelling and screaming for me to
> take it down?

Yep :)


John
--
The things that will destroy America are prosperity-at-any-price,
peace-at-any-price, safety-first instead of duty-first, the love of soft
living, and the get-rich-quick theory of life.

-- Teddy Roosevelt

Niclas Fredriksson

unread,
Jan 9, 2012, 5:48:39 PM1/9/12
to netrek-...@googlegroups.com
On Mon, 9 Jan 2012, John R. Dennison wrote:

> On Mon, Jan 09, 2012 at 01:34:46PM +0100, Niclas Fredriksson wrote:
>>
>> Betting that something will never happen is a bet that can only be
>> lost. So if someone wants to bet me 1000 USD that netrek will never
>> once again get an active community (let's define that by having one
>> season in a league with at least 8 teams) then that's a bet I'd love
>> to take.
>
> You're on with one stipulation. Must occur in the next couple of years.

I guess you and I have different definitions of never.

If I could play from the sofa with the computer in my lap or on the subway
on my way to the gym I'd totally start playing again.

--
Niclas

John R. Dennison

unread,
Jan 9, 2012, 5:52:35 PM1/9/12
to netrek-...@googlegroups.com
On Mon, Jan 09, 2012 at 11:48:39PM +0100, Niclas Fredriksson wrote:
>
> If I could play from the sofa with the computer in my lap or on the
> subway on my way to the gym I'd totally start playing again.

You'd be playing against bots :/


John
--
What lies behind us and what lies before us are tiny matters compared to
what lies within us.
-- Ralph Waldo Emerson

Zachary Uram

unread,
Jan 9, 2012, 6:46:42 PM1/9/12
to netrek-...@googlegroups.com
On Mon, Jan 9, 2012 at 5:48 PM, Niclas Fredriksson <nic...@acc.umu.se> wrote:
>
> If I could play from the sofa with the computer in my lap or on the subway
> on my way to the gym I'd totally start playing again.

Do you have a tablet computer?


--
Zach
http://www.fidei.org

Jared Thirsk (Mahalalel)

unread,
Jan 10, 2012, 6:43:25 AM1/10/12
to netrek-forever

On Jan 9, 11:28 am, "John R. Dennison" <j...@gerdesas.com> wrote:
> On Mon, Jan 09, 2012 at 01:12:01PM -0500, Zachary Uram wrote:
>
> > Do you think if it dies completely it could be rebooted in the future?
>
> Only if one were to get an exhumation order.  The proper thing to do is
> pull the plug; let it expire; give it a nice burial; move on with life.

It may be left for dead to/by you, but who's to say it can't be
rebooted?
I would think "the proper thing" for those who believe it can be done
is
to give it a shot.

Jared
It is loading more messages.
0 new messages