Netrek development, the next generation

71 views
Skip to first unread message

Zachary Uram

unread,
Oct 11, 2011, 2:49:58 PM10/11/11
to netrek-...@googlegroups.com
This thread is for current discussion of netrek organic variants,
development proposals, methodologies, implementation details. Enjoy!

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

Toumal

unread,
Oct 11, 2011, 4:15:45 PM10/11/11
to netrek-forever
On Oct 11, 8:49 pm, Zachary Uram <net...@gmail.com> wrote:
> This thread is for current discussion of netrek organic variants,
> development proposals, methodologies, implementation details. Enjoy!

Thank you. And sorry for hijacking the android app thread back there.

I'd like to expand on my suggestion for a rewrite in Java.

The more I delve into the currently available 2d engines for java the
more I am impressed with Slick (http://slick.cokeandcode.com/) - it's
actually a project that's very much alive, the supplied functions
cover the essentials and best of all, it's written in a way that
doesn't make it terribly hard to replace with something else should we
desire to do that at a later point. It's definitely way more feature-
complete and well documented than my own efforts from a few years
back. They don't show ambitions for feature-creep and limit themselves
to the useful essentials: 2D Graphics only, input handling, sound,
particle system, and a few other things.

We'd still have to do the netcode ourselves, but that's not a huge
thing either. Apache Mina makes sockets in Java quick and painless,
plus the performance of Mina is excellent - it's being used by science
labs and banks for efficient communications.

One of the big questions is: Would it make sense to use the same code
for client and server for entity movement (ships etc)? The benefit of
that would be that there'd be no code duplication for things like
"keep the ship moving in the same direction until we get told
otherwise by the server"...

It could also be interesting to have client and server share the same
code completely, with the client doing the rendering on top, and the
server tasked with holding "truth" about all entities.


What do you guys think so far? Is this a direction you could get
involved with? What do you feel about a java-based implementation as
such?

ahn

unread,
Oct 11, 2011, 9:59:21 PM10/11/11
to netrek-forever
On Oct 11, 4:15 pm, Toumal <toumaltheo...@gmail.com> wrote:
> One of the big questions is: Would it make sense to use the same code
> for client and server for entity movement (ships etc)?

> What do you guys think so far? Is this a direction you could get
> involved with? What do you feel about a java-based implementation as
> such?

You say you seek to retain the current game mechanics. But it's not
clear if you intend to retain backwards compatibility with the
existing Netrek server. You will attract more interest if you intend
the latter, but that will also constrain what you can do.

Take a look at Theo's Java observer client, Robert's JTrek and Mats'
Netrek TNG. They are all pure Java.

Zach Uram

unread,
Oct 12, 2011, 5:33:07 PM10/12/11
to netrek-forever
On Oct 11, 4:15 pm, Toumal <toumaltheo...@gmail.com> wrote:
>
> Thank you. And sorry for hijacking the android app thread back there.

No problem.

> I'd like to expand on my suggestion for a rewrite in Java.

Slick looks pretty nice. I think if you can minimize LOC, yet not
sacrifice any performance that would be the way to go.
I have some input from Allen Pouratian, he is a former netreker and
professional game developer (worked at Sony and elsewhere).
He says,

"I definitely recommend Java as a high level language to use. It has
decades of thought put into it, on how to be "better than" C++/C, in
terms of programmer productivity.

It also runs just as fast as C++/C, since the HotSpot compiler can
optimize for whatever CPU it is running on, negating the advantages of
pre-compiling C/C++."

Zach Uram

unread,
Oct 12, 2011, 5:53:47 PM10/12/11
to netrek-forever
On Oct 11, 9:59 pm, ahn <a...@netrek.org> wrote:
>
> You say you seek to retain the current game mechanics.  But it's not
> clear if you intend to retain backwards compatibility with the
> existing Netrek server.  You will attract more interest if you intend
> the latter, but that will also constrain what you can do.

Good point.

> Take a look at Theo's Java observer client, Robert's JTrek and Mats'
> Netrek TNG.  They are all pure Java.

Java Netrek - Theodore Tonchev
http://www.shadowhunter.org/javaviewer/source/source.zip
(code is over 16 years old)

JTrek source - Robert Temple
http://ftp.netrek.org/pub/netrek/clients/jtrek/
(code is around 13 years old)

Netrek TNG - Mats Olsson
http://ftp.netrek.org/pub/netrek/mirrors/www.dtek.chalmers.se/~matso/nttng/nttng-dev.zip
(code is over 12 years old)

GLTrek source - Nick Slager
http://ftp.netrek.org/pub/netrek/clients/gltrek/glTrek-src.jar
(code is around 8 years old)

The code for Jay Corrales' OBSTrek has never been released AFAIK.

Zachary Uram

unread,
Oct 12, 2011, 9:10:16 PM10/12/11
to netrek-forever
Another pro-Java message I'm relaying from Allen:

"Java takes care of:
1) memory management
2) bounds checking
3) cross-platform development
4) extensive libraries for networking, database, synchronization,
threading, and more
5) graphics libs

This is a short list. Modern projects should use at least Java,
unless they want to gather expertise, and waste blood and treasure
re-inventing all of the above."

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

Nimret Sandhu

unread,
Oct 12, 2011, 9:26:09 PM10/12/11
to netrek-...@googlegroups.com
why is this even a discussion? though I for one am looking forward to get my netrek groove on this weekend ( sundays are good you said?!) .. need more stats! :)

nimret ( aka chewbacca :)



--
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 12, 2011, 9:29:05 PM10/12/11
to netrek-...@googlegroups.com
On Wed, Oct 12, 2011 at 9:26 PM, Nimret Sandhu <nim...@nimret.com> wrote:
> why is this even a discussion? though I for one am looking forward to get my
> netrek groove on this weekend ( sundays are good you said?!) .. need more
> stats! :)

Heh. Well some like Jared are firmly in the C# camp ;-) Also some
people are nervous what Oracle might do to Java. Cool, I think I'll
play some this weekend too; yeah Karthik said Sunday night is best
time.

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

Zachary Uram

unread,
Oct 12, 2011, 9:32:08 PM10/12/11
to netrek-...@googlegroups.com, Dave Ahn
I just heard from Jay regarding his OBSTrek Java client:

> Hey Zach
>
> I don't have it anymore, but I recall uploading to http://ftp.netrek.org/incoming.
> Maybe it's still there.

Any chance it is still in /incoming? I tried looking there and in
/attic, but it said permission denied.

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

Nimret Sandhu

unread,
Oct 12, 2011, 9:52:23 PM10/12/11
to netrek-...@googlegroups.com
seriously?!?! ya gotta be kidding me .. m$'s record ( or lack thereof) with open source speaks for itself. I wonder how that whole mono effort is going these days .. have they ever even built anything on top of that?

who the hell cares if people are nervous about oracle/java? the jvm is an open standard and VMs are available from multiple vendors:

as a technology java is a clear leader in the open source world and pretty much all the projects ( including the language & vm) have been copied over into the .net world after blazing the path in java land, to varying levels of success.

besides, it sounds like it ain't all rosy in .net land these days anyways:
http://www.google.com/search?aq=0&oq=microsoft+abandoning&gcx=c&sourceid=chrome&ie=UTF-8&q=microsoft+abandoning+.net

why bother with m$ technologies? I haven't since the late 90s and been sane since then ( ya probably don't remember visual c++/mfc and com days - no fun!).

nimret


--
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.



--
Nimret Sandhu
http://www.nimret.org

Zachary Uram

unread,
Oct 12, 2011, 10:10:54 PM10/12/11
to netrek-...@googlegroups.com
On Wed, Oct 12, 2011 at 9:52 PM, Nimret Sandhu <nim...@nimret.com> wrote:
> seriously?!?! ya gotta be kidding me .. m$'s record ( or lack thereof) with
> open source speaks for itself. I wonder how that whole mono effort is going
> these days .. have they ever even built anything on top of that?
> who the hell cares if people are nervous about oracle/java? the jvm is an
> open standard and VMs are available from multiple vendors:
> http://en.wikipedia.org/wiki/Java_Virtual_Machine
> as a technology java is a clear leader in the open source world and pretty
> much all the projects ( including the language & vm) have been copied over
> into the .net world after blazing the path in java land, to varying levels
> of success.
> besides, it sounds like it ain't all rosy in .net land these days anyways:
> http://www.google.com/search?aq=0&oq=microsoft+abandoning&gcx=c&sourceid=chrome&ie=UTF-8&q=microsoft+abandoning+.net
>
> why bother with m$ technologies? I haven't since the late 90s and been sane
> since then ( ya probably don't remember visual c++/mfc and com days - no
> fun!).

Very persuasive. I vote for Java! :)

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

Jared Thirsk

unread,
Oct 12, 2011, 10:49:58 PM10/12/11
to netrek-...@googlegroups.com
Zachary Uram wrote:

> On Wed, Oct 12, 2011 at 9:26 PM, Nimret Sandhu wrote:
> > why is this even a discussion? 
>

> Heh. Well some like Jared are firmly in the C# camp ;-)

Hey I'm all for whatever's best, objectively.  I'm a pragmatist.  Quoting myself:

"Java could very well be a great choice, especially if [a java guy is] the ringleader and [is] comfortable with it."

I could (and would) make netrek's GUI on Windows much nicer right now in a short time if one of the clients was written in C#, thanks to having expertise in perhaps the best GUI framework out there right now.  On python, Win32, X11, or Java, I don't know where to start with GUI programming and get scared from even thinking about it, (although PyGtk may be decent if it works).  The flash programming model apparently sucks, although people prove nice (simpler?) games can be done with it (Galactic Combat is definitely nice enough).  That is the objective situation for me, personally.  I've always thought python is cool and wanted to do stuff with it, and I may need to learn GTK to port my own day job work, so the gytha client at least piques my interest a little, but the best option for me may still be to wait until I have my own .NET game (which I'm making for my day job) and then implement a backend to connect to a netrek server.  C'est la vie.

A more minor issue: language agnosticism is supposed to be a programmer ideal but the reality is that expertise with language/platform-specific tools and libraries has a non-trivial impact.  I am not volunteering as a primary contributor, so I don't really matter.

There are pros and cons for different platforms.  I haven't really been keeping an eye out, but I don't exactly noticed the game industry rushing out to implement all their (non-cell phone) interactive graphical games in Java.

I know Java definitely has various and unique strengths.  However I am ignorant about whether Java is good for games -- I hope others don't make a mistake out of ignorance, because they became a fanboy after doing non-game work with java or whatever.  For all I know, python has better game libraries and could still be cross platform while allowing for faster development.  I think Java is probably good enough to succeed with, and if people are excited about it I think that makes it more appealing, though I dare anyone to try to prove to me how it is superior to and more proven (in making actual games) than Unity, which uses .NET for logic.   (Maybe off list, because nobody here is talking about an open source Unity client.)  (BTW the core languages and infrastructure of .NET are open standards.)

Jared

San Mehat

unread,
Oct 12, 2011, 11:18:52 PM10/12/11
to netrek-...@googlegroups.com

Silly question perhaps, given all the cooks that have already spoken
up, but what about just doing it in the browser? WebGL should suffice
for most of what you want in terms of visualization, unless you're
thinking of making some crazy mmo thing.

Just my 0.000000002 cents.

-san

Andrew Szczeszynski

unread,
Oct 12, 2011, 11:28:54 PM10/12/11
to netrek-...@googlegroups.com
My vote is definately for Java - no questions.
 
Flash has a few pros: wonderful 2D system, trivial to work with media, automatically works on web browsers (cross-platform), can export to Android and iOS
But, the cons: no free development environment (AFAIK) - must purchase Flash from Adobe, which is expensive.  Hard to get 'programmer' generated graphics to look good - there really is no preset look & feel - every button (including button states) need to be drawn, a bit of a learning curve, hard to have many people working on the same project.
 
Java is used extensively for games (all Android apps & games are Java), and Netrek would not even come close to stressing performance limits.
 
Java is very close to C & C++ - it is relatively easy to port C/C++ code to Java (had done this in the best), which makes it easier to find developers, and to port existing code if we need it.
 
I would suggest choosing a good game engine (http://en.wikipedia.org/wiki/List_of_game_engines).
 
Cheers,
Andrew
 

James Cameron

unread,
Oct 13, 2011, 12:07:08 AM10/13/11
to netrek-...@googlegroups.com, Dave Ahn

I've looked. There's nothing there that says "OBSTrek Java client".
Have you got a better file name, or a date?

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

James Cameron

unread,
Oct 13, 2011, 12:10:34 AM10/13/11
to netrek-...@googlegroups.com
I agree with San, that WebGL should suffice.

Toumal Rakesh

unread,
Oct 13, 2011, 4:58:29 AM10/13/11
to netrek-...@googlegroups.com
I've played around with a couple 2d game engines for java recently, here are my personal findings:

x) Slick (http://slick.cokeandcode.com/)
Simple API, doesn't want to be more than it should be, relatively good documentation. Big benefit: Sound is done via OpenAL, which means solid sound support (the built-in audio stuff in Java is hideous and, on 64 bit windows, unstable!)
The whole thing is relatively unobtrusive and well written. Lacks some more advanteed features like per-pixel sprite collision detection, but frankly I don't think a game like netrek needs that.

x) JGame (http://www.13thmonkey.org/~boris/jgame/)
Less features than Slick. One-man project. Designed with support for MIDP and Android in mind. Code quality is a mixed bag, lots of inheritance and tight coupling.

x) Golden T Game Engine (http://goldenstudios.or.id/products/GTGE/)
Has been around for a while, used to be a semi-commercial game engine. Has some advanced features that the other engines lack (per-pixel collisions, etc) - doesn't seem to be in active development anymore though, and there are a couple of showstopper bugs.


I also took a look at various networking libraries, and I found Netty (http://www.jboss.org/netty) to be superior to Mina in both speed and ease of use. Frankly though, I wouldn't mind using plain java DatagramSocket (udp) for a game like this.


Bottom line: Getting stuff done in Slick is pretty easy, and since it's open source and relatively unobtrusive I think the long-term risk is relatively low.

xoneill

unread,
Oct 13, 2011, 2:28:09 AM10/13/11
to netrek-forever
>> I agree with San, that WebGL should suffice.

My thoughts as well. Web technologies are proven, fast, have many
options, widely supported, will continue to push limits and is here to
stay. RIA is the way to go- especially for gaming.

Nimret Sandhu

unread,
Oct 13, 2011, 1:37:46 PM10/13/11
to netrek-...@googlegroups.com
Hey I'm all for whatever's best, objectively.  I'm a pragmatist.  Quoting myself:

amen. and for me that's cross platform portability, which primarily means unix systems since m$ can't quite develop stable software that doesn't crash under load ( you would think with all their resources .. but that's another discussion :)

if you use .net forget about targeting any other platform other than windoze. with java you get mac + various flavas of unix right off the bat.
 
it (Galactic Combat is definitely nice enough).  That is the objective situation for me, personally.  I've always thought python is cool and wanted to do stuff with it, and I may need to learn GTK to port my own day job work, so the gytha client at least piques my interest a little, but the best option for me may still be to wait until I have my own .NET game (which I'm making for my day job) and then implement a backend to connect to a netrek server.  C'est la vie.

you should checkout http://pygame.org/ if you're interested  in python game development. it's been around for quite a while.
 
There are pros and cons for different platforms.  I haven't really been keeping an eye out, but I don't exactly noticed the game industry rushing out to implement all their (non-cell phone) interactive graphical games in Java.

that would be because the game industry traditionally targeted consumer systems which primarily run windows. in fact, games from the 90s & earlier ( esp flight sims) wouldn't even use windows api's and go directly to DOS accessing various graphics modes, etc directly bypassing the layers above since they wanted to extract every ounce of perf out of the hardware. m$ has never been keen on helping a competitor build a very popular programming language on a platform they monopolize ( google the history if you don't know it :)

as a matter of fact, since java games run within constrained platforms like mobile devices all the arguments against it in terms of performance have been proven to be FUD.
 
development.  I think Java is probably good enough to succeed with, and if people are excited about it I think that makes it more appealing, though I dare anyone to try to prove to me how it is superior to and more proven (in making actual games) than Unity, which uses .NET for logic.   (Maybe off list, because nobody here is talking about an open source Unity client.)  (BTW the core languages and infrastructure of .NET are open standards.)

can you build on top of unity and target unix systems? guess what, you can with Java. Out of the box.

ECMA standardization is like the patent office - bogus. would you like to point out any major open source projects which have been built on .net first? something akin to http://jakarta.apache.org/ or http://java-source.net/ ? that's because developing open source software on m$ platforms is like the kiss of death. 

anyways, enough ranting .. I got work to do :)

Nimret Sandhu

unread,
Oct 13, 2011, 1:55:07 PM10/13/11
to netrek-...@googlegroups.com
how about a java netrek client that works:

1. x-platform on unix ( counting all flavors here - bsd, etc), windows and mac

2. on android though that may or may not require some changes since the android libraries & api's are different

3. from within the browser as an RIA using webstart

4. maybe even an applet if you really want it running within the browser, literally

5. if truly ambitious, use http://www.xmlvm.org to x-compile to the iphone/ipad

I can provide some guidance but I am wayyyyy tooooo busy these days :)

nimret


--
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.

San Mehat

unread,
Oct 13, 2011, 3:21:19 PM10/13/11
to netrek-...@googlegroups.com
On Thu, Oct 13, 2011 at 10:55 AM, Nimret Sandhu <nim...@nimret.com> wrote:
> how about a java netrek client that works:
> 1. x-platform on unix ( counting all flavors here - bsd, etc), windows and
> mac
> 2. on android though that may or may not require some changes since the
> android libraries & api's are different
> 3. from within the browser as an RIA using webstart
> 4. maybe even an applet if you really want it running within the browser,
> literally
> 5. if truly ambitious, use http://www.xmlvm.org to x-compile to the
> iphone/ipad

> I can provide some guidance but I am wayyyyy tooooo busy these days :)

Here's a question... *who* has time to work on this? Languages and
technologies discussions aside?

I don't have the time to write a lot of external-work code these days,
but for a serious effort could
probably convince the wife to let me carve out a few hours a week :)

Honesty is the best policy at this point.. if you don't have the time,
thats cool.. life has a tendency of rearing it's ugly head :)


-San

Allen Tipper

unread,
Oct 13, 2011, 4:24:53 PM10/13/11
to netrek-...@googlegroups.com
I can work for 5 to 10 hours a week on this project. No more, though.
I do have a real life.

-Allen Tipper

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

James Cameron

unread,
Oct 13, 2011, 5:54:28 PM10/13/11
to netrek-...@googlegroups.com
On Thu, Oct 13, 2011 at 12:21:19PM -0700, San Mehat wrote:
> Here's a question... *who* has time to work on this? Languages and
> technologies discussions aside?

Me. Which is why you can find a reasonably continuous stream of change
control commits to the existing code base over the past 15 years. ;-)

And I'm listening, and hoping for working code.

James Cameron

unread,
Oct 13, 2011, 5:55:05 PM10/13/11
to netrek-...@googlegroups.com
On Thu, Oct 13, 2011 at 10:37:46AM -0700, Nimret Sandhu wrote:
> you should checkout http://pygame.org/ if you're interested in python
> game development. it's been around for quite a while.

Gytha is based on Pygame, by the way.

Nimret Sandhu

unread,
Oct 13, 2011, 6:20:24 PM10/13/11
to netrek-...@googlegroups.com
cool - it's been a few years since I looked into python game programming .. mostly for personal side projects :)

nimret

--
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.

Andy

unread,
Oct 16, 2011, 7:36:57 AM10/16/11
to netrek-forever
As the author of the Android app that checks the meta-servers, I've
now started on an Android client.

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

I only started today so not much progress yet, I hope to have
something connecting to a server soon. You can contact me directly at
and...@swizel-studios.com

Andy.

Zach Uram

unread,
Oct 16, 2011, 10:34:33 AM10/16/11
to netrek-forever
On Oct 16, 7:36 am, Andy <ap_ke...@hotmail.com> wrote:
> As the author of the Android app that checks the meta-servers, I've
> now started on an Android client.
>
> https://market.android.com/details?id=com.swizel.android.droidtrekbeta

Wow, that's awesome! Thanks for letting us know Andy. Please keep us
updated as the project hits milestones and I'm sure there will be some
netrekers who will want to lend a hand.

Jared Thirsk

unread,
Oct 17, 2011, 2:07:31 AM10/17/11
to netrek-...@googlegroups.com
From: Nimret Sandhu:

> as a matter of fact, since java games run within constrained 
> platforms like mobile devices all the arguments against it in terms of 
> performance have been proven to be FUD.

I don't like FUD against Java. .NET has received similar performance-related FUD too.

> if you use .net forget about targeting any other platform other than
> windoze. with java you get mac + various flavas of unix right 
> off the bat.

Mono:  Windows Linux, Solaris, NetBSD, OpenBSD, FreeBSD, OS X, Wii, PS3, iPhone, Android, on x86, x86-64 (AMD64 & EM64T), s390 s390x 32/64 bit, ARM, IA64, Alpha, MIPS, HPPA.

.NET Micro Framework (source available from the evil empire under the tyrannous Apache 2.0 license) can also be used in constrained environments (256KB flash, 64KB RAM, no OS or MMU required,), like this Tron disc for instance:
http://www.youtube.com/watch?v=I_KGca_g96U (also see Netduino.com)

> > Hey I'm all for whatever's best, objectively.  I'm a pragmatist.
>

> amen. and for me that's cross platform portability, which primarily means
> unix systems since m$ can't quite develop stable software that 
> doesn't crash under load

I suppose the PC gaming industry has survived all these years in spite of demanding games BSOD'ing every 5 minutes? Now who's spreading FUD?

> > I don't exactly noticed the game  industry rushing
> > out to implement all their (non-cell phone) interactive 
> > graphical games in Java.
 >
> that would be because the game industry traditionally targeted 
> consumersystems which primarily run windows.

That would be, why? I think you are onto something here.

If “runs on unix to reach the unix gamer masses” is really a goal, fine, but I hope it doesn't come at a cost of quality or progress. The OS X marketshare for games is significant and growing, so I'm for targeting it (and think it's good Unity targets it).

BTW, the latest incarnation of the #1 (and #2) selling PC game of all time uses Mono (Sims 3) and also happens to work on Linux via Wine.


 
> you should checkout http://pygame.org/ if you're interested  in python game
> development. it's been around for quite a while.

I saw gytha uses it. Honestly, coming from Unity or NeoAxis, it feels like a leap backwards (like it's 1994 again), but it could be fun to try and there may be some useful community libraries for it.

> m$ has never been keen on helping a competitor build a very popular 

> programminglanguage on a platform they monopolize (google the 


> history if you don't know it :)

Interestingly they are now on the HTML5 and javascript bandwagon. I wonder where they're going with that. (“Pinky are you thinking what I'm thinking?”)

I'm glad .NET has been able to provide some competition and innovation – I think it helps the industry, even if it is shunned by many for FUD and/or legitimate or non-legitimate anti-MS reasons. I too was all aboard the M$ hate train until about 2005 when I realized they could improve my quality of life and without spending any more money (beyond a Windows license) or converting to the dark side of the force. You can never trust any company to do anything other than act in its self-interest (and of course they often get that wrong), but with MS learning to support OSS, giving free tools, etc., these days I'm more concerned about Apple, Oracle, Facebook (and maybe Google).

> > though I dare anyone to try to prove to me how it is superior to and 
> > more proven (in making actual games) than Unity, which uses .NET for 
> > logic.

> can you build on top of unity and target unix systems? guess 
> what, you can with Java. Out of the box.

Show me in terms of comparing screenshots and downloads/sales stats and maybe I would take you seriously.

Development tools can be important for game dev teams to consider, but I'm not sure what the goals are for those here that are planning to reimplement netrek. It sounds like a 2D sprite approach, in which case perhaps almost any competent sprite development library will do, although that starts to make me afraid it won't look much different from a netrek client from 10 or 15 years ago. Hopefully whatever UI design and art comes forth will not scare the (desirable portion of the) masses away. There are certainly still successful 2D sprite games these days, and as it will be OSS, someone (maybe even me) could make a 3D one at some point.

(For Unix systems, Unity targets OS X, iOS, Android, and Flash (version 11, which I gather runs in Linux) and someday Linux directly.)


 
> ECMA standardization is like the patent office - bogus.

“the jvm is an open standard“ -- I'm not sure what the point of you saying this was then.

> would you like to
> point out any major open source projects which have been built on .net
> first? something akin to http://jakarta.apache.org/ or
> http://java-source.net/ ? that's because developing open source 
> software on m$ platforms is like the kiss of death.

If you are trying to find something akin to java-source.net, there is, surprise,
http://csharp-source.net. It doesn't look like it's quite as well maintained as the java site though – there are better places:

- Codeplex.com has 6371 stable open source projects.
- www.codeproject.com is a great community with has 17467 .NET articles, many with open source libraries or sample projects.
- CastleProject has at least some overlap with Jakarta: http://www.castleproject.org/castle/projects.html
- Microsoft Enterprise Library is an open source (OSI approved) set of libraries from the Patterns and Practices group (who are pedantic about good and open architecture)
- Umbraco is an open source .NET CMS with 110,000+ deployments. DotNetNuke is another popular one.

Also various useful things from Java have been ported to .NET as open source:
- Ant, JUnit, Hibernate, Lucene, iText, log4j, Quartz, Velocity, Commons, parts of Spring.
- I have used db4o, which is a cool commercial/open source object DB for both Java and .NET.
A LINQ-style API from .NET is being implemented in Java (Quaere, JaQu, iciql, Scala).

I don't see any evidence for your kiss of death claim.

Jared

San Mehat

unread,
Oct 17, 2011, 9:16:41 AM10/17/11
to netrek-...@googlegroups.com
<To bring the discussion back to the matter at hand...>

... who is 'the decider' here? Who makes the call? If the answer is
'nobody' then either

1. Everyone (read: anyone with the time and skills) is going to just
do their own thing.
2. We'll still be 'discussing' this stuff when its 2024


Note - I'm not suggesting anyone in particular make the call, I just
want to understand how
seriously I should take this thread, since my 'make time' is severely
limited these days.

-san

Jared Thirsk

unread,
Oct 17, 2011, 10:30:12 AM10/17/11
to netrek-...@googlegroups.com
----- Original Message -----
From: San Mehat <san....@gmail.com>
> <To bring the discussion back to the matter at hand...>
>
> ... who is 'the decider' here? Who makes the call? If the answer is
> 'nobody' then either
>
> 1. Everyone (read: anyone with the time and skills) is going to just
> do their own thing.

I think this is happening.  For an open source netrek rewrite it appears everyone who matters is happy with Java.

> Note - I'm not suggesting anyone in particular make the call, I just
> want to understand how
> seriously I should take this thread, since my 'make time' is severely
> limited these days.

I don't take it very seriously, except that I think it's important to consider any new effort does not fall into traps that limit netrek's level of success to prior levels.  Doing everything over again but changing one thing (nice architecture and/or different programming language) may be great but miss an opportunity to be greater -- I hope people can think past one great idea to see if there may be many great ideas.  I have seen from experience that it can mean the difference between incremental or limited success and dramatic success.

Jared

Nimret Sandhu

unread,
Oct 17, 2011, 2:30:57 PM10/17/11
to netrek-...@googlegroups.com
man, I wish I had as much time as you apparently do to discuss pros & cons of the best tools for software development.

here's some updates on where .net, mono, et al sit as of a few months ago:

here's another question: what tools are you planning on using to develop the software? last I checked csharpdevelop was not quite there, m$'s freebie 'lightweight' ide's were a joke & visual studio was a couple of hundred bucks.

Mono:  Windows Linux, Solaris, NetBSD, OpenBSD, FreeBSD, OS X, Wii, PS3, iPhone, Android, on x86, x86-64 (AMD64 & EM64T), s390 s390x 32/64 bit, ARM, IA64, Alpha, MIPS, HPPA.

yep - right off the main page. but have you actually run it on any of those platforms? I develop & deploy java code on & to windows ( all flavors win2k onwards), macos, linux & solaris on a daily basis. My bsd box isn't getting too much of my time these days but that's because it keeps humming away in it's corner. have you developed & deployed any mono apps on linux? 
 
> amen. and for me that's cross platform portability, which primarily means
> unix systems since m$ can't quite develop stable software that 
> doesn't crash under load

I suppose the PC gaming industry has survived all these years in spite of demanding games BSOD'ing every 5 minutes?  Now who's spreading FUD?

I fail to see your point.
 
> that would be because the game industry traditionally targeted 
> consumersystems which primarily run windows.

That would be, why? I think you are onto something here.

If “runs on unix to reach the unix gamer masses” is really a goal, fine, but I hope it doesn't come at a cost of quality or progress. The OS X marketshare for games is significant and growing, so I'm for targeting it (and think it's good Unity targets it).

BTW, the latest incarnation of the #1 (and #2) selling PC game of all time uses Mono (Sims 3) and also happens to work on Linux via Wine.

cuz m$ is a monopoly which has locked the consumer market?! I can't buy a computer without windoze even though that's the first thing that gets wiped off it. my point is that whatever technology you use it should accommodate ALL users - not just windoze users. 
 
 > m$ has never been keen on helping a competitor build a very popular 
> programminglanguage on a platform they monopolize (google the 
> history if you don't know it :)

Interestingly they are now on the HTML5 and javascript bandwagon. I wonder where they're going with that. (“Pinky are you thinking what I'm thinking?”)

yeah, we've already seen how wonderful their 'interoperability' has been in this space. I mean, writing code for IE6 was soooo much fun. I can just imagine how much fun they're going to have creating 'standards' in this space again.
 
I'm glad .NET has been able to provide some competition and innovation – I think it helps the industry, even if it is shunned by many for FUD and/or legitimate or non-legitimate anti-MS reasons. I too was all aboard the M$ hate train until about 2005 when I realized they could improve my quality of life and without spending any more money (beyond a Windows license) or converting to the dark side of the force. You can never trust any company to do anything other than act in its self-interest (and of course they often get that wrong), but with MS learning to support OSS, giving free tools, etc., these days I'm more concerned about Apple, Oracle, Facebook (and maybe Google).

the only competition m$ provides is due to their size. their 'innovation' consists of copying popular tools & technologies. once in a while they do a good job but mostly it's sub-par stuff .. imho of course.
 
> ECMA standardization is like the patent office - bogus.

“the jvm is an open standard“ -- I'm not sure what the point of you saying this was then.

you can get complete VMs right now from apache, ibm, oracle and a whole bunch of smaller players. how many CLR implementations are out there besides m$ and mono ( which is incomplete btw)?
 
Also various useful things from Java have been ported to .NET as open source:
 - Ant, JUnit, Hibernate, Lucene, iText, log4j, Quartz, Velocity, Commons, parts of Spring.
 - I have used db4o, which is a cool commercial/open source object DB for both Java and .NET.
A LINQ-style API from .NET is being implemented in Java (Quaere, JaQu, iciql, Scala).

so basically .net has copied all the projects that originated in java land. original.

I find this thread boring and quite meaningless since the people who seem most keen on rewriting netrek are already thinking of using the best tools they know for the job ( which is the way it ought to be). I'd much rather be playing netrek rather than explaining facts to you :P
-- 
Nimret Sandhu
http://www.nimret.org

San Mehat

unread,
Oct 17, 2011, 3:30:46 PM10/17/11
to netrek-...@googlegroups.com
On Mon, Oct 17, 2011 at 7:30 AM, Jared Thirsk <jth...@shaw.ca> wrote:
> ----- Original Message -----
> From: San Mehat <san....@gmail.com>
>> <To bring the discussion back to the matter at hand...>
>>
>> ... who is 'the decider' here? Who makes the call? If the answer is
>> 'nobody' then either
>>
>> 1. Everyone (read: anyone with the time and skills) is going to just
>> do their own thing.
>
> I think this is happening.  For an open source netrek rewrite it appears
> everyone who matters is happy with Java.

Ok, then I'd like to ask these additional questions to 'everyone who matters':

1. Does the desire to use Java also extend to the front-end? ie: Is
this a java app I need to install on my machine?
2. If the answer to 1. is yes, then would you be willing to reconsider
and design a front-end which lived in the browser, and utilized WebGL?
- thus rendering (for the most part) the whole front-end compatibility
issue moot?
3. Are you worried at all about Paramount (or whomever) will unleash a
flury of lawyers on any new efforts to 'gamify' the StarTrek
properties? (I suspect they might be especially sensitive given how
poorly their own game frachises are doing)
4. Are there any *good* artists in the group?
5. If the answer to 4 is no, then is somebody willing to pony up the
costs for 4 whom isn't worried about 3? :)

I'm purposely not asking any questions about actual game
design/mechanics as interestingly enough that doesnt seem to have come
up much yet. I look forward to a constructive discussion on what about
the 'next evolution' of the game will be different (if anything) from
the current one, other than platform deployment and implementation
language.

Respects,

-San


>> Note - I'm not suggesting anyone in particular make the call, I just
>> want to understand how
>> seriously I should take this thread, since my 'make time' is severely
>> limited these days.
>
> I don't take it very seriously, except that I think it's important to
> consider any new effort does not fall into traps that limit netrek's level
> of success to prior levels.  Doing everything over again but changing one
> thing (nice architecture and/or different programming language) may be great
> but miss an opportunity to be greater -- I hope people can think past one
> great idea to see if there may be many great ideas.  I have seen from
> experience that it can mean the difference between incremental or limited
> success and dramatic success.

Agreed.

Jared Thirsk

unread,
Oct 17, 2011, 4:03:47 PM10/17/11
to netrek-...@googlegroups.com

----- Original Message -----
From: Nimret Sandhu <nim...@nimret.com>
> here's another question: what tools are you planning on using to 
> develop the software?

At the moment I'm working with a free Visual Studio (it has limitations but I have found them workable thus far) and planning to sign up for BizSpark which unlocks a wide range of MS software to startups for $100.

> Mono:  Windows Linux, ...



> yep - right off the main page. but have you actually run it on 
> any of those platforms?

I have run mono on linux, but not developed. I'm not sure what my personal experience has to do with it – I wasn't vouching for development ease, just challenging the statement of yours that you can forget targeting platforms other than windoze. (Though Unity makes it dead simple to target its supported platforms – even an artist can do it.)

> > > amen. and for me that's cross platform portability, which 
> primarily means
> > unix systems since m$ can't quite develop stable software that
> > > doesn't crash under load
> >
> > I suppose the PC gaming industry has survived all these years 
> in spite of
> > demanding games BSOD'ing every 5 minutes?  Now who's 
> spreading FUD?

> I fail to see your point.

There is an apparent disconnect between each others' realities, but since you seem to be getting agitated with this thread, at this point I'm prepared to live with that.

> > > that would be because the game industry traditionally targeted
> > > consumersystems which primarily run windows.
> >
> > That would be, why? I think you are onto something here.
> >
> > If “runs on unix to reach the unix gamer masses” is really a 
> goal, fine,
> > but I hope it doesn't come at a cost of quality or progress. 
> The OS X
> > marketshare for games is significant and growing, so I'm for 
> targeting it
> > (and think it's good Unity targets it).
> >
> > BTW, the latest incarnation of the #1 (and #2) selling PC game 
> of all time
> > uses Mono (Sims 3) and also happens to work on Linux via Wine.

> cuz m$ is a monopoly which has locked the consumer market?! I 
> can't buy a
> computer without windoze even though that's the first thing that 
> gets wiped
> off it. my point is that whatever technology you use it should 

> accommodateALL users - not just windoze users.

That's a big should. My on-topic point in all of this is to suggest that what has been a highly ideological netrek community, often to its own detriment, loosen up a little and have some balance with pragmatism and objectivity. I used to run Linux as my primary desktop for years but at some point I realized the world of technology and business and technologists worth exploring was grander than the relatively small area OSS hippies live in.

If you choose crappy development tools and disregard the importance of artwork or UI design (or tools to do those well) and remake a game that looks and feels like it's from 1997, a large percentage of players will not go near it. The fact that it runs on every platform conceivable to mankind is irrelevant if the target audience would not touch it with a 10 foot pole. 99% could run it, 0.01% will run it is not as good as 60% could run it, 30% will run it. Strict adherence to good ideologies can be counterproductive.

I'm not at all saying the current effort is headed in this direction, and retro/indie flavored games can do very very well with simpler art, but I am hoping that whoever goes down this road will think about more than programming language and how awesome it is that their code is portable. It would be nice if the rewrite effort could capture the interest of UI designers and artists, and the development platform and its tools were conducive to their success, and not just the success of the coders.


 
> yeah, we've already seen how wonderful their 'interoperability' 
> has been in
> this space. I mean, writing code for IE6 was soooo much fun.

IE6 is one of their greatest sins in my books and turned me off of web development altogether. (As a software engineer I have been a little too ignorant of web development lately.) I am hopeful and optimistic that they will find a more productive approach next time, competing more on merits than monopoly (since they don't own the web (anymore), they may not have a choice, fortunately.) They have had a good run with .NET, with what I think and hope are good technologists, and are bringing some of those people onto their next gen thing – hopefully they will run with creative energy, rather than oppressive business energy that dominated the 90's.

I would also like to be a billionaire myself so I could make the next Java or .NET or some cross-language solution on my own and make it free open source (or just a millionaire and retire and contribute to some cool OSS project in my free time), but until then....


BTW, any update on the status of the rewrite? I delayed my response to Nimret to not distract from focus of it, but then when things quieted down, I posted it to get all you Java twinks fired up to prove me wrong and make an awesome game :)

> how many CLR implementations are out 
> there besides
> m$ and mono ( which is incomplete btw)?

I'm not sure what technical advantage there would be to more CLR implementations (when working with Java it was an annoyance to me to have to switch between JRE vendors to get a Java program to work), but it would be nice if .NET's future is secured in one way or another (and multiple OSS implemetations would be evidence of that.)
I believe mono's CLR implementation is complete (with some unique mono-specific features), just not all the latest libraries that MS is always creating (which I like).


 
> so basically .net has copied all the projects that originated in java land. original.

There is a lot of original stuff in that 6000+ open source project database that you snipped. (Sourceforge has another 3000.)

I appreciate how the .NET community is not asinine enough to have not built here syndrome and shun Java OSS. I'm glad that these bridges exist to help Java and .NET developers transition both ways (as they are dragged, kicking and screaming.) Java had a 6 year head start – of course there are going to be good things worth copying. (And when there is a choice, I often prefer some things built from the ground up as .NET, because I find .NET developers tend to make APIs and configuration less pedantic – I'm glad each group exists to have their own style and personality.)

> I find this thread boring and quite meaningless since the people 
> who seem
> most keen on rewriting netrek are already thinking of using the 

> best tools they know for the job (which is the way it ought to be).

Hey, I warned about that. ;)
“...Maybe off list, because nobody here is talking about an open source [.NET] client.“

> I'd much rather be playing netrek rather than explaining facts to you :P

And I'd rather be doing game development than trying to correct less than veracious allegations ;)

Back to work...
Jared

Nimret Sandhu

unread,
Oct 17, 2011, 4:16:04 PM10/17/11
to netrek-...@googlegroups.com
1. Does the desire to use Java also extend to the front-end? ie: Is
this a java app I need to install on my machine?
2. If the answer to 1. is yes, then would you be willing to reconsider
and design a front-end which lived in the browser, and utilized WebGL?
- thus rendering (for the most part) the whole front-end compatibility
issue moot?

I am not sure if it's that easy. For instance, how do you plan to talk to the server side to get updates? I am not up to speed on the old code/architecture and I know javascript engines have really improved but will they really be able to do the fast updates that client side code currently does? not saying it can't be done and running it from a browser would be quite awesome .. just wondering about the details a bit.

also, there are some security issues around this technology which may need to be addressed at some point:
 
I'm purposely not asking any questions about actual game
design/mechanics as interestingly enough that doesnt seem to have come
up much yet. I look forward to a constructive discussion on what about
the 'next evolution' of the game will be different (if anything) from
the current one, other than platform deployment and implementation
language.

guess I'm just old fashioned - I like it the way it is! :)

perhaps the strategic & tactical aspects of the gameplay could still be captured giving artistic/ui freedom on the client to do 2d or 3d versions as people see fit. in fact, if the existing network interfaces could be understood, the clients really don't matter. I mean we do currently have different clients on different platforms. unless you're talking about rewriting the servers also which is another discussion.

cheers, 

San Mehat

unread,
Oct 17, 2011, 4:35:27 PM10/17/11
to netrek-...@googlegroups.com
On Mon, Oct 17, 2011 at 1:16 PM, Nimret Sandhu <nim...@nimret.com> wrote:
>> 1. Does the desire to use Java also extend to the front-end? ie: Is
>> this a java app I need to install on my machine?
>> 2. If the answer to 1. is yes, then would you be willing to reconsider
>> and design a front-end which lived in the browser, and utilized WebGL?
>> - thus rendering (for the most part) the whole front-end compatibility
>> issue moot?
>
> I am not sure if it's that easy. For instance, how do you plan to talk to
> the server side to get updates? I am not up to speed on the old
> code/architecture and I know javascript engines have really improved but
> will they really be able to do the fast updates that client side code
> currently does? not saying it can't be done and running it from a browser
> would be quite awesome .. just wondering about the details a bit.

In practice, the code comes *from* the server when the browser hits it. There's
no need for update management required - other than making sure the version
that is pushed to the server is the version you want your browser
clients to use.

Performance-wise, thing's have come along quite quickly.

> also, there are some security issues around this technology which may need
> to be addressed at some point:
> http://en.wikipedia.org/wiki/WebGL

Yes, we need to be aware of these, but AFAIK there is active
development within the respective browser communities to address these
issues.

>
>>
>> I'm purposely not asking any questions about actual game
>> design/mechanics as interestingly enough that doesnt seem to have come
>> up much yet. I look forward to a constructive discussion on what about
>> the 'next evolution' of the game will be different (if anything) from
>> the current one, other than platform deployment and implementation
>> language.
>
> guess I'm just old fashioned - I like it the way it is! :)

Respectfully, -1 :)

> perhaps the strategic & tactical aspects of the gameplay could still be
> captured giving artistic/ui freedom on the client to do 2d or 3d versions as
> people see fit. in fact, if the existing network interfaces could be
> understood, the clients really don't matter. I mean we do currently have
> different clients on different platforms. unless you're talking about
> rewriting the servers also which is another discussion.
> cheers,
> --
> Nimret Sandhu
> http://www.nimret.org
>

Nimret Sandhu

unread,
Oct 17, 2011, 4:38:09 PM10/17/11
to netrek-...@googlegroups.com
I think I am going to get lost between all the replies on this thread soon - makes my head hurt :(

On Mon, Oct 17, 2011 at 1:03 PM, Jared Thirsk <jth...@shaw.ca> wrote:
At the moment I'm working with a free Visual Studio (it has limitations but I have found them workable thus far) and planning to sign up for BizSpark which unlocks a wide range of MS software to startups for $100.

right. I found those limitations too and pretty quickly realized where the '$' in m$ comes from. I fail to see the need to keep paying $ to m$ for the various tools that they keep updating to catch up to what is already freely available .. but that's just me. you can do what you want to with your $ :)
 
I have run mono on linux, but not developed.  I'm not sure what my personal experience has to do with it – I wasn't vouching for development ease, just challenging the statement of yours that you can forget targeting platforms other than windoze.  (Though Unity makes it dead simple to target its supported platforms – even an artist can do it.)

the point is that it is easy to point to a project which supports all those platforms and a whole different matter to actually do it and realize all the things that are missing. 
 
> > I suppose the PC gaming industry has survived all these years 
> in spite of
> > demanding games BSOD'ing every 5 minutes?  Now who's 
> spreading FUD?

> I fail to see your point.

There is an apparent disconnect between each others' realities, but since you seem to be getting agitated with this thread, at this point I'm prepared to live with that.

not agitated - bored and I have a day job which keeps me rather busy .. making lots of $ btw. I guess you didn't have a point above.
 
> cuz m$ is a monopoly which has locked the consumer market?! I 
> can't buy a
> computer without windoze even though that's the first thing that 
> gets wiped
> off it. my point is that whatever technology you use it should 
> accommodateALL users - not just windoze users.

That's a big should.  My on-topic point in all of this is to suggest that what has been a highly ideological netrek community, often to its own detriment, loosen up a little and have some balance with pragmatism and objectivity.  I used to run Linux as my primary desktop for years but at some point I realized the world of technology and business and technologists worth exploring was grander than the relatively small area OSS hippies live in.

for the record, I am definitely not an OSS hippie. I really don't care about what people's ideologies are - I am a programmer who happens to appreciate technologies and a capitalist who likes to get value for my investment, whether it's time or money. I find linux to be more advanced than windows and get more value out of it than macos so I use it. You may not come to the same conclusion and you're more than welcome to your opinions.

If you choose crappy development tools and disregard the importance of artwork or UI design (or tools to do those well) and remake a game that looks and feels like it's from 1997, a large percentage of players will not go near it.  The fact that it runs on every platform conceivable to mankind is irrelevant if the target audience would not touch it with a 10 foot pole.  99% could run it, 0.01% will run it is not as good as 60% could run it, 30% will run it.  Strict adherence to good ideologies can be counterproductive.

crappy development tools?!?! seriously?!?! so on java/linux I can choose from: eclipse, netbeans, idea - all of whom are freely available or open source. on windows you have visual studio whose freebie version is crippled to get people on the drug. the whole java infrastructure is freely available to build, develop & deploy on. 

my points are not ideological, they are on the merits of the technologies involved. do you really want to debate the benefits of using something like visual source safe which is still circa cvs technology against the current best of breed version control systems like git, mercurial, etc?
 
I'm not sure what technical advantage there would be to more CLR implementations (when working with Java it was an annoyance to me to have to switch between JRE vendors to get a Java program to work), but it would be nice if .NET's future is secured in one way or another (and multiple OSS implemetations would be evidence of that.)
I believe mono's CLR implementation is complete (with some unique mono-specific features), just not all the latest libraries that MS is always creating (which I like).

the point was that m$ controls the eco-system so they can do what they wish to with it. I actually used to write VisualC++/MFC code back in the 90s so I know something about the history there. Got tired of their inconsistencies, changing shit around all the time. Sun was better than m$ in that regard.
 
> I'd much rather be playing netrek rather than explaining facts to you :P

And I'd rather be doing game development than trying to correct less than veracious allegations ;)

so let's just leave it at that then .. people can quickly draw their own conclusions on the merits of various tools & technologies ( sounds like they already had when the java dev thread started :) 

ahn

unread,
Oct 17, 2011, 5:03:42 PM10/17/11
to netrek-forever
Conciseness and action trump long discussions. Programming languages,
interfaces and platforms are just tools. You should define the scope
of what exactly you want to accomplish, then the selection of tools
will follow. Despite many posts, I still don't see definitive answers
to:

1. Will this be a reimplementation that will preserve backwards
compatibility with the existing Netrek software and protocol, i.e. new
client can talk to old server, and vice versa?

2. If not, will it preserve the existing Netrek game mechanics, i.e.
new client/server protocol, code base, enhanced UI, perspectives,
features, etc, but still generally feels like Netrek?

3. If not, what, if anything, about Netrek will carry over?

Designing a good game is very hard. Netrek has the advantage of many
years of play and tuning, so the more you deviate from Netrek, less
you benefit from its strong game mechanics and history.

San Mehat

unread,
Oct 17, 2011, 5:10:57 PM10/17/11
to netrek-...@googlegroups.com

... and a counterpoint.. you restrict yourself to those mechanics of
many decades ago.

It's pretty clear to me that technology discussions aside, there are
probably (at least) two camps here:

1. Those that want a new/updated/modernized version of the same Netrek game
2. Those that are interested in doing something with new
mechanics/gameplay/user experience/

In the interests of avoiding flames and counterproductive discussions
where we're probably never going
to be able to agree on which is which, I'd like to suggest we create
two new threads - one for a rewrite of the 'traditional' netrek game,
and one for a rethink of it.

Then let each thread have their own arguments for technologies /
languages - in reality the game you're making is going to drive most
of those requirements anyways..

Zach? James? What do you guys think?

-san

James Cameron

unread,
Oct 17, 2011, 5:32:48 PM10/17/11
to netrek-...@googlegroups.com
On Mon, Oct 17, 2011 at 02:10:57PM -0700, San Mehat wrote:
> ... I'd like to suggest we create two new threads - one for a rewrite

> of the 'traditional' netrek game, and one for a rethink of it.
>
> Then let each thread have their own arguments for technologies /
> languages - in reality the game you're making is going to drive most
> of those requirements anyways..
>
> Zach? James? What do you guys think?

I'm with Dave Ahn. I'd like to know the answers to his questions so
that I can determine whether and how to get involved.

He makes a good point about putting the cart after the horse. Once a
scope and design is decided, tooling becomes easy to decide.

I've been taking action for the past 15 years on Netrek, without any
significant discussion of what tools, languages, interfaces or platforms
should be involved, because I felt they were not as important as getting
the job done.

I don't think two threads will do enough to separate out your two camps.
It is not easy for some to keep to a thread.

Craig Cameron

unread,
Oct 17, 2011, 8:09:30 PM10/17/11
to netrek-...@googlegroups.com
I think even this is putting the cart before the horse. If we are trying to have a coordinated effort the first thing is to set up some kind of board that has a charter. The board would then vote on the whats and hows of how to create a better netrek.

The charter would need the following:
What are the rules for getting on the board.
Do they need to contribute technically to the development?
Does the board have a maximum size?
Do they get voted on by current members?
What are the goals of the Project
To bring netrek to the masses
Is there a commercial element?
Are we preserving the game or totally remaking it?
....
What is the structure of the board?
Is there a secretary or note taker?
Rules for correspondence
The committee will meet once every....
Will we have a wiki or something?
Voting Rules


The software developer in me sees this all as a bit wanky. However we need to make sure everyone is on the same page and the only way to proceed with a project like this is good governance so that everyone sees what the goals are, what to expect and what is expected from them. If we don't do something like this either one person will take it upon themselves to do everything OR we will still be having these conversations years from now.

happy trekkin,

Craig happyfish Cameron

--

James Cameron

unread,
Oct 17, 2011, 8:23:56 PM10/17/11
to netrek-...@googlegroups.com
Again, +1 to Craig.

Zachary Uram

unread,
Oct 17, 2011, 9:00:21 PM10/17/11
to netrek-...@googlegroups.com
On Mon, Oct 17, 2011 at 5:03 PM, ahn <a...@netrek.org> wrote:
> Designing a good game is very hard.  Netrek has the advantage of many
> years of play and tuning, so the more you deviate from Netrek, less
> you benefit from its strong game mechanics and history.

I concur, a very salient point.

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

Zachary Uram

unread,
Oct 17, 2011, 9:17:00 PM10/17/11
to netrek-...@googlegroups.com
On Mon, Oct 17, 2011 at 5:10 PM, San Mehat <san....@gmail.com> wrote:
>
> Zach? James? What do you guys think?

Hey San,

I'm happy with netrek's existing game mechanics and feel the most bang
for the buck, in terms of attracting and keeping new players, will be,
in rank of importance:

1) updating the UI - even the slickest and most polished clients we
have right now are leaps behind where the industry has gone and thus
what expectations gamers now have. i've been wanting this for years;
work on this area can have an immediate positive impact IMHO. there
are so many nice cross-platform toolkits now for graphics/sound so we
really should be using one of those that way we can generate clients
readily for multiple platforms. Also it would benefit us to use an
implementation language that is also cross platform.

2) this dovetails into 1) - having an intuitive config system. there
are a few basic approaches nearly all modern games use, so pick one
and implement it.

3). integrating the help information in a much more elegant way

4) getting hold of a professional graphics designer to provide us with
some new artwork

5) finding someone to improve the audio samples or create new ones

6) rework network code, but maintain backwards compatibility. i know
this will require someone with high level of network programming
expertise and the time and inclination to do it, but i think it would
be worth the effort. this would also greatly benefit a java, C++ or
other OO client. having a consistent, well documented and easy to
implement network interface will be a good thing in itself. there has
been talk in the past about different methods to get better
performance. the code we have now was written in a much higher latency
time. since just about all gamers are on some sort of broadband it
would be nice to see what performance gains can be had.

so for now let's focus on 1 and 2 almost as musts and then everything
else is optional should there be enough interest. someone suggested
getting estimates on how many man hours we can realistically expect
people to contribute. i will address this in a new thread.

having said all this i still want to stress that if someone is
passionate about implementing something totally different and fresh
then all the power to them, their success may trickle down
(Reaganomics lol!) to netrek - or it may not. since there is already
an apparent natural bifurcation taking place i think that will work
itself out. i also would echo dave's caveat about too much discussion
and too little actual effort. we can summarize past failed development
efforts into two main types: 1) ones that were basically single man
projects that never had community support 2) ones that were almost
purely theoretical and lacked a team with a vision so nothing ever
materialized. let's be wary of these pitfalls as we discuss how to
best go forward and achieve something tangible.


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

Jared Thirsk

unread,
Oct 17, 2011, 9:37:20 PM10/17/11
to netrek-...@googlegroups.com
----- Original Message -----
From: Nimret Sandhu <nim...@nimret.com>
> (Though Unity makes it dead simple  to target its
> > supported platforms – even an artist can do it.)
>
> the point is that it is easy to point to a project which
> supports all those
> platforms and a whole different matter to actually do it and
> realize all the things that are missing.

My point is that (within reason) nothing is missing on Unity to make AAA (and simpler) games, and in a way that is accessible to artists.  (Except native linux targeting, which most game creators rightly prioritize lower compared to other concerns.) 

> > > > I suppose the PC gaming industry has survived all these years
> > > in spite of
> > > > demanding games BSOD'ing every 5 minutes?  Now who's
> > > spreading FUD?
> > >
> > > I fail to see your point.
> >
> > There is an apparent disconnect between each others'
> realities, but since
> > you seem to be getting agitated with this thread, at this
> point I'm prepared
> > to live with that.
>
> not agitated - bored and I have a day job which keeps me rather
> busy .. making lots of $ btw. I guess you didn't have a point above.

My point: MS OS'es don't "crash under load" when playing games as you suggested.


> > If you choose crappy development tools and disregard the importance of
> > artwork or UI design
>
> crappy development tools?!?! seriously?!?! 
> so on java/linux I can choose from: eclipse,...

I guess I failed to re-emphasize game development tools.  Contrast: pygame & Unity, or one of the Java libs mentioned recently.  Try applying for a job at EA Games and in the interview insisting "I think you guys should write PC games in Java from now on because Eclipse is awesome."

> my points are not ideological, they are on the merits of the
> technologiesinvolved. do you really want to debate the benefits
> of using something like
> visual source safe which is still circa cvs technology against
> the current
> best of breed version control systems like git, mercurial, etc?

VSS isn't current.  But I agree here and prefer Hg/git to being locked into MS's non-free revision control SW. (To be fair to TFS (I didn't use it much but I thought it was at least a little more usable than SVN), it looks like it may have done a good job of integrating various aspects of software development cycle, beyond revision control (reporting, CI, issue tracking.)  Though I'd still prefer OSS.) 


> the point was that m$ controls the eco-system so they can do
> what they wish to with it. 

That's definitely a valid concern.  I can see that being a concern for long-evolving (5+ year) codebases. 
I have followed .NET since 1.1 and I'm happy with the way they've evolved the ecosystem to 4.5.  It has been quite painless or no work to port apps to new versions, and to my knowledge they haven't broken any existing releases.  Mixing old and new versions of DLLs isn't too bad.  I wrote a couple apps in MFC and didn't like it.

> so let's just leave it at that then .. people can quickly draw their own
> conclusions on the merits of various tools & technologies (
> sounds like they already had when the java dev thread started :)

Fine with me, though I'm still not convinced anyone understands the value of game development tools as opposed to generic development tools.  But if Toumal et al find a game library they're happy with, and the kind of game they want to make is doable in the library (ideally as evidenced by successful examples using the same library), that closes the issue.

James Cameron wrote:
> Once scope and design is decided, tooling becomes easy to decide.

I totally agree with this.   
I was concerned about tooling being decided before scope & design received due consideration and I am glad others see this and are talking about a more wholistic decision making process.

Jared

ahn

unread,
Oct 17, 2011, 10:41:15 PM10/17/11
to netrek-forever
A charter and committee are useful when a project has critical mass
and when many contributors need to be organized to get something
done. Right now, Netrek has few players, few active contributors, and
no real leaders. Even those of us currently maintaining the
infrastructure or software are not leading the community in any
overarching development effort. I don't see how a new committee could
be effective for what is being proposed - the pool of contributors is
just too small. Really, who would be on this committee, and what
qualifications do they have?

Craig Cameron

unread,
Oct 17, 2011, 10:56:34 PM10/17/11
to netrek-...@googlegroups.com
My theory with the committee is that we need some kind of leadership in order to coordinate efforts. We could just appoint some sort of netrek development czar or dictator but my thought is that the committee would encourage more discussion and generate more interest and enthusiasm. Having a committee and a charter with clear and agreed upon goals might get more people involved. As for what qualifications well it going be anyone. That is what would be agreed upon in the charter. It could range from anything like you must be willing to spend on average an hour a week helping make netrek better in some way to you know how to escort, its all on the table. The committee doesn't have to be any particular size.

-----Original Message-----
From: netrek-...@googlegroups.com [mailto:netrek-...@googlegroups.com] On Behalf Of ahn
Sent: Tuesday, October 18, 2011 1:41 PM
To: netrek-forever
Subject: [netrek-forever] Re: Netrek development, the next generation

--

Nimret Sandhu

unread,
Oct 18, 2011, 6:20:44 PM10/18/11
to netrek-...@googlegroups.com
bigtime +1

which is why I said that it really doesn't matter what tools people use - they should use the ones they are most familiar with. netrek is a client-server app anyways. look at the plethora of clients available for it right now.

my suggestion would be to work iteratively. preserve backwards compatibility by just creating a new client. then implement new features by enhancing the protocol and modifying or creating a new server codebase. is the current network protocol documented somewhere?

I am so done with the java vs .net thread.

nimret

James Cameron

unread,
Oct 18, 2011, 6:40:08 PM10/18/11
to netrek-...@googlegroups.com
On Tue, Oct 18, 2011 at 03:20:44PM -0700, Nimret Sandhu wrote:
> is the current network protocol documented somewhere?

Yes. Was done in the past few years as part of the discussions
assisting MacTrek developer, then refined during the writing of Gytha.

So that the documentation does not lag the code ... which is a severe
problem in any community project ... the documentation is placed within
the code as comments.

The examples that come to mind are:

http://james.tooraweenah.com/cgi-bin/darcsweb.cgi?r=netrek-server;a=headblob;f=/Vanilla/include/packets.h

the server side packet layouts, which includes a description of the
protocol and the login sequence.

http://james.tooraweenah.com/cgi-bin/darcsweb.cgi?r=netrek-client-pygame;a=headblob;f=/gytha/client.py

the gytha client side network implementation, dealing with the TCP and
UDP sockets.

Once upon a time the answer to this question was "no," but now I can say
"yes," and that feels much better.

Nimret Sandhu

unread,
Oct 18, 2011, 7:20:11 PM10/18/11
to netrek-...@googlegroups.com
ahhh .. so this is the 'gytha' client that everyone was referring to .. looks awesome and nice that it's written in python. so why can't this be used as a starting point?

nimret


--
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.
Reply all
Reply to author
Forward
0 new messages