From an Observer

Discuss a Transport Tycoon-like game being programmed by forum users.

Moderator: Transport Empire Moderators

Post Reply
User avatar
Train-a-Mania
Tycoon
Tycoon
Posts: 2838
Joined: 02 Mar 2006 22:56
Location: Some town in Pennsylvania
Contact:

From an Observer

Post by Train-a-Mania »

I'm just curious about this project, so I have a couple questions.

1. Why C++ and not Java?

2. Can someone summarize what is going on and what has been accomplished?
Nick - Creator of the virtual railroading review series:

Image
User avatar
Purno
Tycoon
Tycoon
Posts: 16659
Joined: 30 Mar 2004 12:30
Location: Almere, The Netherlands

Re: From an Observer

Post by Purno »

train-a-mania wrote:2. Can someone summarize what is going on and what has been accomplished?
Loads of discussion, Design Document, Engine, Some graphical work, and loads of other discussion.

At least, AFAIK.

EDIT: + Website desing, meeting logs, meeting minutes.
Contributor to the The 2cc Set and Dutch Trainset. Inventor of the Metro concept. Retired Graphics Artist.
Image Image
Download TT | Latest TTDPatch | OpenTTD | OpenTTDCoop | BaNaNaS: OpenTTD content system | 2048² OTTD scenario of the Netherlands
GRF Codec | GRF Crawler | GRF Maker | Usefull graphics & tools sites | NML Documentation Wiki | NFO Documentation Wiki
All my graphics are licensed under GPL. "Always remember you're unique, just like everyone else."
maquinista
Tycoon
Tycoon
Posts: 1828
Joined: 10 Jul 2006 00:43
Location: Spain

Re: From an Observer

Post by maquinista »

train-a-mania wrote:1. Why C++ and not Java?
It is too slow, and needs extra software.
Sorry if my english is too poor, I want learn it, but it isn't too easy.[/list][/size]
User avatar
Train-a-Mania
Tycoon
Tycoon
Posts: 2838
Joined: 02 Mar 2006 22:56
Location: Some town in Pennsylvania
Contact:

Re: From an Observer

Post by Train-a-Mania »

maquinista wrote:
train-a-mania wrote:1. Why C++ and not Java?
It is too slow, and needs extra software.
Isn't it a more well-known program, though?
Nick - Creator of the virtual railroading review series:

Image
DaleStan
TTDPatch Developer
TTDPatch Developer
Posts: 10285
Joined: 18 Feb 2004 03:06
Contact:

Post by DaleStan »

What? Java more well known than C++?
Sure, there may be more "programmers" who know Java, but the real programmers all know at least two of C, C++, and Java, and several others besides.
To get a good answer, ask a Smart Question. Similarly, if you want a bug fixed, write a Useful Bug Report. No TTDPatch crashlog? Then follow directions.
Projects: NFORenum (download) | PlaneSet (Website) | grfcodec (download) | grfdebug.log parser
User avatar
Train-a-Mania
Tycoon
Tycoon
Posts: 2838
Joined: 02 Mar 2006 22:56
Location: Some town in Pennsylvania
Contact:

Post by Train-a-Mania »

Okay, that makes sense.
Nick - Creator of the virtual railroading review series:

Image
User avatar
Hyronymus
Tycoon
Tycoon
Posts: 13233
Joined: 03 Dec 2002 10:36
Location: The Netherlands
Contact:

Post by Hyronymus »

If you choose the programming language for software based on the popularity of the languages you really make a horrible mistake. You need to base the choice on software features.
User avatar
Train-a-Mania
Tycoon
Tycoon
Posts: 2838
Joined: 02 Mar 2006 22:56
Location: Some town in Pennsylvania
Contact:

Post by Train-a-Mania »

Hyronymus wrote:If you choose the programming language for software based on the popularity of the languages you really make a horrible mistake. You need to base the choice on software features.
...and C++ offers more, I take it.
Nick - Creator of the virtual railroading review series:

Image
User avatar
Hyronymus
Tycoon
Tycoon
Posts: 13233
Joined: 03 Dec 2002 10:36
Location: The Netherlands
Contact:

Post by Hyronymus »

For this project it does but that's not the answer for every software development question. Look at Firefox, Azureus and OpenOffice i.e..
DeletedUser21
Tycoon
Tycoon
Posts: 11501
Joined: 20 Sep 2004 22:45

Post by DeletedUser21 »

I also thought that C++ is more powerfull than Java too AFAIK. :)
DaleStan
TTDPatch Developer
TTDPatch Developer
Posts: 10285
Joined: 18 Feb 2004 03:06
Contact:

Post by DaleStan »

Choice of programming language is a touchy subject, but there's usually a pretty obvious right choice.

For example, TTDPatch has to modify a precompiled binary, so it has to be coded mostly in assembly. OpenTTD aims for portability, high speed, and low memory usage. ASM is good at the second and third, but utterly usless for the first, so C is the language of choice.

But no one would ever write a build script in ASM, C, or C++; those are the relm of Makefiles, Perl scripts, and the like. Similarly, no one would ever write a game in Perl, shell scripts, or (entries to the IOCCC notwithstanding) the C preprocessor.

Personally, my usual language of choice is C++, because it gives me the convience of ignoring memory management when I want too, while still giving me the power to shoot myself in the foot if I so desire. Although I generally don't like shooting myself in the foot, if I can't do it, then there's probably something else I do want to do that I can't.
To get a good answer, ask a Smart Question. Similarly, if you want a bug fixed, write a Useful Bug Report. No TTDPatch crashlog? Then follow directions.
Projects: NFORenum (download) | PlaneSet (Website) | grfcodec (download) | grfdebug.log parser
User avatar
TossIB
Engineer
Engineer
Posts: 67
Joined: 08 Aug 2004 08:21
Location: Germany

Post by TossIB »

I suggest thinking about using a high level language.

Whilst C/C++ are preferable (so I heard) when it comes to getting the maximum speed/efficiency out of the hardware, the hardware itself got really powerfull lately. Still top of the edge 3D grafics (=most games) use C/C++ since they simply need the power. On the other hand most office-style applications are now written in abstract high-level languages or even interpreted languages.

What I'm aiming at: Does this project really need the vantages of C/C++ e.g. does it aim for the best grafics ever seen? Or would it be wiser to accept the fact (if), that the programmers and grafics artists won't have time/enrgy/knowledge/manpower to push such a big sized project?

Because thats were high-level languages introduce themself. They work less efficient with CPU, GPU and memory, no doubt about that, but they may significantly increase development speed and the fun in programming ("revolutionary" as they claim). Something a free-time project is heavily depending on.

I'm talking specifically about Ruby and Python. Both have OpenGL bindings and other interesting native game programming librarys.

Take a look at Panda3D for Python.


Phew. What an s*** article this developed to be...
BTW. I won't go for Java or Pearl also. But Ruby and Python seem to deserve to take a second look at em.
BTW2. Ruby and Python both have the ability to import C/C++ classes IIRC. Python is able to preprocess files or built exe-files also.
\°| Greetz, TossIB |°/
User avatar
XeryusTC
Tycoon
Tycoon
Posts: 15415
Joined: 02 May 2005 11:05
Skype: XeryusTC
Location: localhost

Post by XeryusTC »

I think we stay with C++ as there has been decided to use C++ it is very unlickely that we'll switch to any other language. And since TRoS Engine is also writen in C++ without the support for any other language than C++ it is very unlickely that we (as TRoS devs) will port it so you can use any other language.
And any scripting language (as Ruby, perl, python etc.) are too slow to write an entire big game in IMHO. You are probably forgetting that we need fast pathfinding (YAPF vs. NPF for example) and will probably have quite an extensive economy which can also take quite some time.
Don't panic - My YouTube channel - Follow me on twitter (@XeryusTC) - Play Tribes: Ascend - Tired of Dropbox? Try SpiderOak (use this link and we both get 1GB extra space)
Image
OpenTTD: manual #openttdcoop: blog | wiki | public server | NewGRF pack | DevZone
Image Image Image Image Image Image Image
User avatar
Arathorn
Tycoon
Tycoon
Posts: 6937
Joined: 30 Nov 2002 17:10

Post by Arathorn »

Not everybody has top of the line pc's and I myself am a sucker for graphics. I think the choice for C++ was a good one when it was made back then, and too much of this project has suffered from endless decisionmaking already, so let's keep to our choice.
User avatar
aarona
Traffic Manager
Traffic Manager
Posts: 221
Joined: 26 May 2006 15:54
Location: Perth, Australia
Contact:

Post by aarona »

TossIB wrote:I suggest thinking about using a high level language.
I assume you are talking about more abstract languages, because even C++ is technically a high level language.
TossIB wrote:Whilst C/C++ are preferable (so I heard) when it comes to getting the maximum speed/efficiency out of the hardware, the hardware itself got really powerfull lately. Still top of the edge 3D grafics (=most games) use C/C++ since they simply need the power. On the other hand most office-style applications are now written in abstract high-level languages or even interpreted languages.
99.999% of the time, office-style applications are doing SFA. Its not like they are managing a world or performing pathfinding routines thousands of times a second. No argument about the power of computers will change the fact that it is ALWAYS better to produce efficient code.
TossIB wrote:What I'm aiming at: Does this project really need the vantages of C/C++ e.g. does it aim for the best grafics ever seen? Or would it be wiser to accept the fact (if), that the programmers and grafics artists won't have time/enrgy/knowledge/manpower to push such a big sized project?
Yes to the first part. I refuse to accept the second part.
TossIB wrote:...they may significantly increase development speed...
I'm sure if they did a study they would find that for small projects this is true, but for large projects it would be false. The de facto standard is to use a low level language to do the grunt work, and then have Lua or Python bindings to do the boring stuff (like scripting).

I've had many discussions about this with different people in the past. Just learn C++!!
m4rek
Chairman
Chairman
Posts: 801
Joined: 03 Sep 2006 08:06
Location: Plymouth, England

Post by m4rek »

id like to point out that this is grossly OT, although theres nothing else to talk about on topic so it probably doesnt matter.
aarona wrote: Just learn C++!!
may i ask you to point me in a direction to follow such advice?
Toyland isn't a climate, it's a mistake.
Everyone has a photographic memory - Some just don't have film
No matter how hard life gets, remember there is always light at the end of the tunnel. Let's just hope it's not a train.
DaleStan
TTDPatch Developer
TTDPatch Developer
Posts: 10285
Joined: 18 Feb 2004 03:06
Contact:

Post by DaleStan »

M4rek wrote:may i ask you to point me in a direction to follow such advice?
The first place you need to go is a seminar on the usage of the shift and punctuation keys. I've never met with a good programmer that didn't use those keys properly.

The second place you need to go is to your local bookstore, and you need to leave with a copy of Accelerated C++.
To get a good answer, ask a Smart Question. Similarly, if you want a bug fixed, write a Useful Bug Report. No TTDPatch crashlog? Then follow directions.
Projects: NFORenum (download) | PlaneSet (Website) | grfcodec (download) | grfdebug.log parser
User avatar
XeryusTC
Tycoon
Tycoon
Posts: 15415
Joined: 02 May 2005 11:05
Skype: XeryusTC
Location: localhost

Post by XeryusTC »

DaleStan wrote:The second place you need to go is to your local bookstore, and you need to leave with a copy of Accelerated C++.
Or any other proper C++ book ;).
Don't panic - My YouTube channel - Follow me on twitter (@XeryusTC) - Play Tribes: Ascend - Tired of Dropbox? Try SpiderOak (use this link and we both get 1GB extra space)
Image
OpenTTD: manual #openttdcoop: blog | wiki | public server | NewGRF pack | DevZone
Image Image Image Image Image Image Image
DaleStan
TTDPatch Developer
TTDPatch Developer
Posts: 10285
Joined: 18 Feb 2004 03:06
Contact:

Post by DaleStan »

I suggested that one because it's suggested in #C++ on Quakenet. Feel free to use one suggested in any other #C++ channel.
"Proper", BTW, means basically anything without the words "for Dummies", "in 24 Hours", "in 7 Days", or "in 21 Days" in the title.

(Here's why.)
To get a good answer, ask a Smart Question. Similarly, if you want a bug fixed, write a Useful Bug Report. No TTDPatch crashlog? Then follow directions.
Projects: NFORenum (download) | PlaneSet (Website) | grfcodec (download) | grfdebug.log parser
Post Reply

Return to “General Transport Empire Discussion”

Who is online

Users browsing this forum: No registered users and 1 guest