Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 [2] 3 4

Author Topic: Intellectual Property & stuff  (Read 5736 times)

Impaler[WrG]

  • Bay Watcher
  • Khazad Project Leader
    • View Profile
Re: Intellectual Property & stuff
« Reply #15 on: December 19, 2009, 10:32:34 pm »

C++
Logged
Khazad the Isometric Fortress Engine
Extract forts from DF, load and save them to file and view them in full 3D

Khazad Home Thread
Khazad v0.0.5 Download

Goran

  • Bay Watcher
    • View Profile
Re: Intellectual Property & stuff
« Reply #16 on: December 20, 2009, 05:13:33 am »

Bleh, Borland Turbo Pascal 7.0 is made of win... or at least it is the only programming language I can make anything useful in. :D
Logged

MMad

  • Bay Watcher
    • View Profile
Re: Intellectual Property & stuff
« Reply #17 on: December 20, 2009, 08:09:23 am »

Its probably legal so long as you don't use any of DF's assets and don't infringe on the DF trademark.

Yep. Game mechanics can be patented, but as a rule they are otherwise not covered by copyright.

I say go for it. :) Might be a somewhat daunting learning project, but probably a fun one.
Logged
"Ask not what your fortress can do for you - ask what you can do for your fortress."
Unapologetic ASCII abolitionist.

dnabios

  • Bay Watcher
    • View Profile
Re: Intellectual Property & stuff
« Reply #18 on: December 20, 2009, 10:05:44 am »

Logged

Nadaka

  • Bay Watcher
    • View Profile
    • http://www.nadaka.us
Re: Intellectual Property & stuff
« Reply #19 on: December 20, 2009, 03:52:37 pm »

You mentioned that you are disappointed with java? Anything in particular you don't like about it? I've found myself somewhat annoyed with some of the quirks of inheritance with static methods and variables.

You can actually stick with java you can work around the issues you have with it. Its pretty fast compared to most other languages (c/c++ is faster, but not by a huge margin), you already have experience with it, and it has a huge set of libraries that you can use rather easily including 2d and 3d hardware accelerated graphics.
Logged
Take me out to the black, tell them I ain't comin' back...
I don't care cause I'm still free, you can't take the sky from me...

I turned myself into a monster, to fight against the monsters of the world.

Dakk

  • Bay Watcher
  • BLARAGLGLGL!
    • View Profile
Re: Intellectual Property & stuff
« Reply #20 on: December 20, 2009, 05:25:13 pm »

Java is pretty versatile and alot easier to use regarding compatibility and stuff. Its still generally slower then C++ though, since it needs to talk to its Virtual Machine so it can tell your OS what to do, when C++ talks directly to your OS.
Logged
Code: [Select]
    ︠     ︡
 ノ          ﺍ
ლ(ಠ益ಠლ)  ┻━┻

Table flipping, singed style.

Impaler[WrG]

  • Bay Watcher
  • Khazad Project Leader
    • View Profile
Re: Intellectual Property & stuff
« Reply #21 on: December 20, 2009, 06:29:11 pm »

Quote
Yep. Game mechanics can be patented, but as a rule they are otherwise not covered by copyright.

I've never heard of them being either patented or copyrighted, only things like artwork and names are copyrighted.
Logged
Khazad the Isometric Fortress Engine
Extract forts from DF, load and save them to file and view them in full 3D

Khazad Home Thread
Khazad v0.0.5 Download

Nadaka

  • Bay Watcher
    • View Profile
    • http://www.nadaka.us
Re: Intellectual Property & stuff
« Reply #22 on: December 20, 2009, 06:39:28 pm »

Quote
Yep. Game mechanics can be patented, but as a rule they are otherwise not covered by copyright.

I've never heard of them being either patented or copyrighted, only things like artwork and names are copyrighted.

Names are not under copyright or patent. You can not copyright a fact. They can be trademarked when applied under specific circumstances. The mechanics themselves are mathematical algorithms and can not be patented, copyrighted or trademarked. The only thing that copyright applies to is creative expression, source code applies in this case as a creative expression, so a direct copy of source code will violate copyright.
Logged
Take me out to the black, tell them I ain't comin' back...
I don't care cause I'm still free, you can't take the sky from me...

I turned myself into a monster, to fight against the monsters of the world.

Savok

  • Bay Watcher
    • View Profile
Re: Intellectual Property & stuff
« Reply #23 on: December 20, 2009, 06:45:44 pm »

You mentioned that you are disappointed with java? Anything in particular you don't like about it? I've found myself somewhat annoyed with some of the quirks of inheritance with static methods and variables.

You can actually stick with java you can work around the issues you have with it. Its pretty fast compared to most other languages (c/c++ is faster, but not by a huge margin), you already have experience with it, and it has a huge set of libraries that you can use rather easily including 2d and 3d hardware accelerated graphics.
I've been spending many hours reading all about the varied programming languages, and I've seen stuff like this. So far, my annoyances during actual programming include things like "arrays. I know making them out of objects makes them safer, but you're wasting a lot of memory. Maybe we have memory to waste, but even with unlimited memory size, more data takes longer to manipulate" and "why can't I switch on a string? Yes, I know, the bytecode for switch works only with ints, but even if it was just automatically translated into an else-if series it would still allow for more clearness of code."

Java is pretty versatile and alot easier to use regarding compatibility and stuff. Its still generally slower then C++ though, since it needs to talk to its Virtual Machine so it can tell your OS what to do, when C++ talks directly to your OS.
Can any project with ambition on the level of DF afford that speed penalty?
Logged
So sayeth the Wiki Loremaster!

Nadaka

  • Bay Watcher
    • View Profile
    • http://www.nadaka.us
Re: Intellectual Property & stuff
« Reply #24 on: December 20, 2009, 07:32:23 pm »

snip...
I've been spending many hours reading all about the varied programming languages, and I've seen stuff like this. So far, my annoyances during actual programming include things like "arrays. I know making them out of objects makes them safer, but you're wasting a lot of memory. Maybe we have memory to waste, but even with unlimited memory size, more data takes longer to manipulate" and "why can't I switch on a string? Yes, I know, the bytecode for switch works only with ints, but even if it was just automatically translated into an else-if series it would still allow for more clearness of code."

Ah. The developers of java had a real preference for "purity" and "doing things the right way" to the point they ignored some things that would have been very convenient features. The amount of memory "wasted" for array objects in java is trivial, a handful of bytes for each array (unless you are doing arrays with high dimensionality). "Real" arrays come with all the memory management issues of pointers, that java also does not use and for perfectly valid reasons.
Quote
snip...
Can any project with ambition on the level of DF afford that speed penalty?
To answer your question, java has come a ridiculously long way in the last decade. With modern java, compiler and a good JIT JVM java can run at an average of about half the speed of c++ for pure computational speed. In some cases, due to run time profiling and optimization, java can run faster than c++ code that can only be optimized at compile time.

The particular article you linked to was written almost 9 years ago, by someone that never even used java as it existed then. All his arguments boil down to assertions that java smelled funny, was doomed to fail and was supported by the wrong people like the DoD. It was wrong then, and proven wrong now and has no relevance. Full disclosure, I currently work for the DoD, developing a java application.

I am not saying that java is perfect, just that it is very capable. And since you are already quite familiar with it, it would make sense to use it for an ambitious project. The only language you could change to and gain any speed advantage is c/c++ and that comes with the headache of dealing with manual memory management, a more difficult threading model and a handful of other gotcha's to navigate around. You should learn c/c++ at some point, as it will get you "closer to metal" in your understanding of how computers work.
Logged
Take me out to the black, tell them I ain't comin' back...
I don't care cause I'm still free, you can't take the sky from me...

I turned myself into a monster, to fight against the monsters of the world.

Dakk

  • Bay Watcher
  • BLARAGLGLGL!
    • View Profile
Re: Intellectual Property & stuff
« Reply #25 on: December 20, 2009, 07:43:56 pm »

I'll put it this way:

Java speeds development by making it easier to code the same program to several different OSs, but slows the actual performance.

C++ slows development because you have to code it in a different way for every OS, but improves performance.

Course C++ is the best choice for DF, between it and Java anyway, I don't actualy know the advantages of python.
Logged
Code: [Select]
    ︠     ︡
 ノ          ﺍ
ლ(ಠ益ಠლ)  ┻━┻

Table flipping, singed style.

Googolplexed

  • Bay Watcher
  • My avatar is of whitespace, Not the firefox logo
    • View Profile
Re: Intellectual Property & stuff
« Reply #26 on: December 20, 2009, 07:49:46 pm »

Why are we discussing the speed difference between Java and C. The person is somewhat of a newer programmer and I doubt for the type of project he would do the speed difference would matter much. Of-course the big question is what is the project.
Logged

Nadaka

  • Bay Watcher
    • View Profile
    • http://www.nadaka.us
Re: Intellectual Property & stuff
« Reply #27 on: December 20, 2009, 08:32:52 pm »

Why are we discussing the speed difference between Java and C. The person is somewhat of a newer programmer and I doubt for the type of project he would do the speed difference would matter much. Of-course the big question is what is the project.

we are discussing it because he brought it up as the primary reason to switch to another language, a reason that is not entirely justified. Java is slower, but not significantly so. It is also a lot easier to handle memory and threading in java, making it more likely he can get fairly far into his project.
Logged
Take me out to the black, tell them I ain't comin' back...
I don't care cause I'm still free, you can't take the sky from me...

I turned myself into a monster, to fight against the monsters of the world.

Savok

  • Bay Watcher
    • View Profile
Re: Intellectual Property & stuff
« Reply #28 on: December 20, 2009, 08:45:25 pm »

This thread is getting a bit derailed... the original topic was intellectual property.

I'm still grateful for the advice y'all've been giving me)

snip...
Can any project with ambition on the level of DF afford that speed penalty?
To answer your question, java has come a ridiculously long way in the last decade. With modern java, compiler and a good JIT JVM java can run at an average of about half the speed of c++ for pure computational speed. In some cases, due to run time profiling and optimization, java can run faster than c++ code that can only be optimized at compile time.

[to keep quote volume down, "that article you linked to is bad"]

I am not saying that java is perfect, just that it is very capable. And since you are already quite familiar with it, it would make sense to use it for an ambitious project. The only language you could change to and gain any speed advantage is c/c++ and that comes with the headache of dealing with manual memory management, a more difficult threading model and a handful of other gotcha's to navigate around. You should learn c/c++ at some point, as it will get you "closer to metal" in your understanding of how computers work.
Yeah, it would've probably been better for me to not link to any article than to link to just the first one that came to mind. I've read much more persuasive articles, though.

Quite familiar? I've only been working with it for a few weeks, though that has been at least a hundred hours. AFAIK, which is not very much, it's possible to have core functionality, such as pathfinding, be coded in hyper-efficient C/C++ and integrate that with Python easily, but not Java. Is this true?

I'll put it this way:

Java speeds development by making it easier to code the same program to several different OSs, but slows the actual performance.

C++ slows development because you have to code it in a different way for every OS, but improves performance.

Course C++ is the best choice for DF, between it and Java anyway, I don't actualy know the advantages of python.
Exactly. If I fail, the language choice is for naught. Well, I'll learn it a lot, but the choice is mostly unimportant. If I succeed, I'll need performance every bit as much as Toady does. Thus: Performance wanted.

Why are we discussing the speed difference between Java and C. The person is somewhat of a newer programmer and I doubt for the type of project he would do the speed difference would matter much. Of-course the big question is what is the project.
...didn't you read the OP? In a single sentence, the project is to create a DF-level world simulation game.
Logged
So sayeth the Wiki Loremaster!

Nadaka

  • Bay Watcher
    • View Profile
    • http://www.nadaka.us
Re: Intellectual Property & stuff
« Reply #29 on: December 20, 2009, 09:24:31 pm »

I don't think you are listening to what I am saying about performance. Java is not *significantly* slower than c++. It is usually slower but not significantly so. Writing large applications is very difficult in c++, and much easier in java.

http://www.idiom.com/~zilla/Computer/javaCbenchmark.html
http://kano.net/javabench/
http://www.javaworld.com/javaworld/jw-02-1998/jw-02-jperf.html
http://blogs.azulsystems.com/cliff/2009/09/java-vs-c-performance-again.html
http://en.wikipedia.org/wiki/Comparison_of_Java_and_C%2B%2B#Performance
Logged
Take me out to the black, tell them I ain't comin' back...
I don't care cause I'm still free, you can't take the sky from me...

I turned myself into a monster, to fight against the monsters of the world.
Pages: 1 [2] 3 4