Putting the 'role' back in role-playing games since 2002.
Donate to Codex
Good Old Games
  • Welcome to rpgcodex.net, a site dedicated to discussing computer based role-playing games in a free and open fashion. We're less strict than other forums, but please refer to the rules.

    "This message is awaiting moderator approval": All new users must pass through our moderation queue before they will be able to post normally. Until your account has "passed" your posts will only be visible to yourself (and moderators) until they are approved. Give us a week to get around to approving / deleting / ignoring your mundane opinion on crap before hassling us about it. Once you have passed the moderation period (think of it as a test), you will be able to post normally, just like all the other retards.

Annie Carlson plays the AoD combat demo

obediah

Erudite
Joined
Jan 31, 2005
Messages
5,051
Flashback said:
Obediah, so let's settle on that. Now, when we understand each other and agree about most of things, let's drop the "cyncynat's feelings" subject.
At least, I will, since it's not worth the time spent. I didn't like his "lololol go google 'computer' and 'programming'" post, it's not an adequate response to "let's sync the terminology" suggestions. I didn't like it, and it's my right, agree?

Ok, the technical stuff is settled. As for everyone's feelings - it's the internets and we're big boys, so who cares? I didn't read too far into the ITS thread to see how the argument progressed, but he asked a reasonable and reasonably clear question which you completely misinterpreted and VD ignored and insulting him for. The fact that his next post was still trying to be constructive makes him INTERNET mother Theresa.

Hard coded for all practical purposes is the relative state of data being defined in a manner such that the cost of changing it is too expensive compared to the need to change it.

You're absolutely right. Now, take into consideration that the whole story is about something being hardcoded in AoD. Apply your definition. Everything fits, clicks, and works. Yay! Thanks everyone for your attention, and good bye.

The awsum powar of internetz is that it takes 2 domains, 2 threads, a dozen retards, and 2 dozen retard spectators and a few hundred posts to answer a simple question with a simple answer.
 

Lomer

Liturgist
Joined
Nov 18, 2004
Messages
112
The Vanished One said:
Vault Dweller said:
Aren’t haters like Morgoth. Gromnir and some others enough at this stage? I remember how one of Troika’s developers once insulted one of the members of the old BIS boards (it was Di IIRC) and in retaliation she did her best (quite successfully) to damage Arcanum image in the eyes of the BIS community.
Di was such a stupid bitch. Still is, probably.
Jora said:
IIRC it wasn't even an insult, or a huge one at least. Di blew the whole thing out of proportion. Could be wrong, though.
Drama? Me wants to hear more!
*waits hopefully*

I have already forgotten the details but IIRC Di bitched about the fact that the female characters in Arcanum start with -1 in Strength (and+1 in Constitution) which according to her was sexist. One of Troika developers advised her to stop making fool of herself. As a result, in the followoing years she tirelessly produced gems like this on the (former) BIS and Obsidian forums:

Can't say that I'm sad about it. At least I won't be annoyed by more lying advertisements claiming Troika made Fallout. I'm surprised they haven't been sued over that.

I'm sure there are some really nice people who will have their personal/financial lives completely upended by this, and for them I have sympathy. But my experience with Troika personnel (years ago, granted) is that they were arrogant, incredibly rude, and refused to take responsibility for even the most blatantly stupid of their *cough* "design decisions". Talk about a bunch of blame-mongers.

Anyway, their demise doesn't affect me one way or the other since I haven't bought a Troika game since Arcanum... and regretted buying that.

http://forums.obsidian.net/index.php?s=&showtopic=29120&view=findpost&p=261047

I am using this opportunity to honor the admirers of Gromnir with one of his finest Troika-bashing posts.

Gromnir said:
ps the fact that troika failed is a good thing. all the competent developers from troika who were stuck making crappy games 'cause troika were bad at business, has now found jobs at places likes relic and obsidian and bioware... places where their talents can be utilized to makes games that will actually gets played. congrats... the system works.
http://forums.obsidian.net/index.php?sh ... ntry729708
 

cincinnatus.c

Arcane
Joined
Aug 13, 2009
Messages
1,620
Naked Ninja said:
Which is the exact fucking reason you use scripts in the first place, ffs, because you can include data and logic without hard coding them into the source.

Are you joining the army of people who don't even understant what "source code" means? Scripts are source code.
I understand that for some people anything in script file is "not hardcoded", but that's not how I use the word. But its a jargon, so I wouln't even argue if someone told me "for us its not hardcoded". Instead of piles of idiocy and insults.

I use R as my primary scripting language at work - for statistical modeling, protototyping et caetera. Guess what? Embedding data into the R source is called hardcoding where I work. In my prev job I used Mozart-Oz as my primary prototyping language, because it offered a superb constraint optimization capabilities for free. It's a scripting language that can be compiled. Again: embedding data into source Mozart-Oz files is called hardcoding. http://en.wikipedia.org/wiki/Hard_coding also seems to support my understanding of "hardcoded". How do you think: is it possible that my usage of "hardcoded" is acceptable in some parts of industry?

The point is: it was't meant as insulting and it wasn't insulting. In return I recieved a barrel of nonsense. A then a couple of other ones.
 

obediah

Erudite
Joined
Jan 31, 2005
Messages
5,051
Lomer said:
I am using this opportunity to honor the admirers of Gromnir with one of his finest Troika-bashing posts.

Gromnir said:
ps the fact that troika failed is a good thing. all the competent developers from troika who were stuck making crappy games 'cause troika were bad at business, has now found jobs at places likes relic and obsidian and bioware... places where their talents can be utilized to makes games that will actually gets played. congrats... the system works.
http://forums.obsidian.net/index.php?sh ... ntry729708

:scandal: On the surface, I think that it's a very good jab. On deeper thought, I think being bad at business was why the Troika games were sucky, yet promising. The shit relic, obsidian, and bioware are pumping out sure doesn't do much to change my mind.
 

cincinnatus.c

Arcane
Joined
Aug 13, 2009
Messages
1,620
Vault Dweller said:
The universal definition of hardcoded is shit that can't be changed, so let's not go with relativism here.

Which universal definition? The one you gave:

Vault Dweller said:
"Definition: hardcoded: adj. 1. [common] Said of data inserted directly into a program, where it cannot be easily modified.

It's a cs file that's not anywhere near the source code and it can modified by anyone with a notepad or any other text editor. "

This definition? This definition is in perfect sync with my usage. You just have no clue what "source code" means.
 

cincinnatus.c

Arcane
Joined
Aug 13, 2009
Messages
1,620
Flashback said:
I would reply in this way or similar if the person would ask,

My dear programmer wannabe. I was asking.

Now what about your lunacy:

Flashback said:
I start suspecting that you're a web-developer, and do not deal much with compilers.
So, in your practice, you have some scripts that you call "the source code", and other scripts you call "the property files". In game development, system programming, and other fields (let's generalize in some way... where you have a binary executable module and resource files of any kind which this binary is using) all scripts are designed to expose things in a way that they could be easily expanded. And, obviously, modified by anyone without ever seeing a source code.

I gave you an example from java. Java is compiled. So how the fuck did you arrive at that conclusion: "I start suspecting that you're a web-developer, and do not deal much with compilers. "?

And I love, I truly do your "In game development, system programming, and other fields". You're a system admin, without any real programming experience. What made you think you can give anyone lessons in "system programming, and other fields"?

And your following brilliant post:

Flashback said:
Nothing is missing because of the formatting. If you know only one language, one syntax and one way to do things, that doesn't prove you weren't wrong. They way you respond and phrases of "it's missing the array indexing parentheses" kind actually do tell a lot of things,

Me dear dear Nick. In past couple of years I had to use half a dozen of languages in my day job, I'm comfortable with another half a dozen, and I've a (very) shallow understanding of many other languages. Array indexing the way TourqueScript does is very rare, and a very daft one. Do you know of any mainstream language where array indexing is done in similar way? So was my mistake understandable?
 

Naked Ninja

Arbiter
Joined
Oct 31, 2006
Messages
1,664
Location
South Africa
Are you joining the army of people who don't even understant what "source code" means? Scripts are source code.
I understand that for some people anything in script file is "not hardcoded", but that's not how I use the word.

No one cares how you use the word, it's a commonly understood principle of computer science, not an individual opinion on a piece of art.

http://en.wikipedia.org/wiki/Hard_coding also seems to support my understanding of "hardcoded". How do you think: is it possible that my usage of "hardcoded" is acceptable in some parts of industry?

No, it doesn't support your understanding :

Hard coding (also, hard-coding or hardcoding) refers to the software development practice of embedding input or configuration data directly into the source code of a program or other executable object

That's the key principle, the data values are built into the exectuable/binaries, ie they cannot be changed without a full recompile of the source. It's not just "data which is in, like, some type of file". It's when variable values are compiled into the fucking program binaries.

This is not the case in TorqueScript, and most scripting languages, which is why games make extensive use of them, so designers can add and change data and game logic without rebuilding the program executables.

Script files are not program source code. They aren't built into executable binaries, they are data files storing dynamic configuration and logical data. There is nothing "hard" about them.

Now be quiet, you're just embarrassing yourself further.
 

cincinnatus.c

Arcane
Joined
Aug 13, 2009
Messages
1,620
Naked Ninja said:
Are you joining the army of people who don't even understant what "source code" means? Scripts are source code.
I understand that for some people anything in script file is "not hardcoded", but that's not how I use the word.

No one cares how you use the word, it's a commonly understood principle of computer science, not an individual opinion on a piece of art.

"hardcoded" is a jargon, not a "principle of computer science". otoh "source code" is a standard term in computer science. do you remember your compiler design classes? or was it a "sleeping time" for you? do you remember how source code/program was defined in *any* of cs textbooks?


Naked Ninja said:
http://en.wikipedia.org/wiki/Hard_coding also seems to support my understanding of "hardcoded". How do you think: is it possible that my usage of "hardcoded" is acceptable in some parts of industry?

No, it doesn't support your understanding :

Hard coding (also, hard-coding or hardcoding) refers to the software development practice of embedding input or configuration data directly into the source code of a program or other executable object

That's the key principle, the data values are built into the exectuable [........]

Script files are not program source code. They aren't built into executable binaries, they are data files storing dynamic configuration and logical data. There is nothing "hard" about them.


Are you trying to prove, that you can't read? "into the source code of a program or other executable object". Scripts are not compiled, but they are programs, they can be executed. That's what interpreter does.
 

Silellak

Cipher
Joined
Aug 19, 2008
Messages
3,198
Location
Tucson, AZ
The real debate seems to be "do non-compiled scripts count as source code"?

Some people think yes, other people think no, and somehow I doubt you're all going to agree. For fuck's sake, why does every AoD thread somehow devolve into Amateur Programming Hour?
 

Imbecile

Arbiter
Joined
Oct 15, 2005
Messages
1,267
Location
Bristol, England
Yawn. Look, how about everyone pretends that a vitally important question was resolved, and gets back to making productive posts...including me.

Starting tomorrow.
 

wjw

Augur
Joined
Jun 6, 2007
Messages
287
Will there be code in the combat-demo? Thiz is umportant qeustyon.
 

obediah

Erudite
Joined
Jan 31, 2005
Messages
5,051
Naked Ninja said:
Script files are not program source code. They aren't built into executable binaries, they are data files storing dynamic configuration and logical data. There is nothing "hard" about them.

lollercaust. You could have at least went with the ole "writing scripts isn't programming" jab, which at least has a wobbly, ancient leg to stand on.

Even the hard-core, super-elitist programming language theorists accept that programming languages exist as compiled and interpreted variants. In many cases, compiled vs interpreted isn't even the most important attribute when comparing languages.

The line between source code and data files is in specifying operations to be transformed in machine code. Not compilation. Hell, in some cases XML is source code ( e.g. X++ ). If anything, using a scripting language to store soft data is an abuse of the convenience of interpreted languages.

Now shell scripts are interesting area. The specify command line utilities rather than machine ops, and are very lacking in features. I still wouldn't raise a fuss if someone refereed to one as source code - now maybe if they said "Check out this shell script I programmed to rename my files". :twisted:
 

obediah

Erudite
Joined
Jan 31, 2005
Messages
5,051
Silellak said:
The real debate seems to be "do non-compiled scripts count as source code"?

Some people think yes, other people think no.

It's simple, and it doesn't matter what any of us think. If you (en)code machine operations in a defined text syntax, you are programming. Depending on your choice of language the code is either run directly on a machine, or compiled and/or interpreted into a language that can run directly on a machine. Sometimes that machine is physical, and other times it is virtual.

Check this out for examples of source code across 1284 programming languages. Many of them are *gasp* interpreted.

http://www.99-bottles-of-beer.net/
 

Melcar

Arcane
Joined
Oct 20, 2008
Messages
35,205
Location
Merida, again
One would think that by now this thread would have been 5 pages long on how shitty AoD was going to be. What's wrong Codexia?
 

Silellak

Cipher
Joined
Aug 19, 2008
Messages
3,198
Location
Tucson, AZ
obediah said:
Silellak said:
The real debate seems to be "do non-compiled scripts count as source code"?

Some people think yes, other people think no.

It's simple, and it doesn't matter what any of us think. If you (en)code machine operations in a defined text syntax, you are programming. Depending on your choice of language the code is either run directly on a machine, or compiled and/or interpreted into a language that can run directly on a machine. Sometimes that machine is physical, and other times it is virtual.

Check this out for examples of source code across 1284 programming languages. Many of them are *gasp* interpreted.

http://www.99-bottles-of-beer.net/

I can't believe I'm getting involved in this debate, but I'll say this:

I think people are getting too stuck up on technical definitions. What matters isn't how something is written, or what something is written in, but how it is used.

As you said yourself:

The line between source code and data files is in specifying operations to be transformed in machine code. Not compilation. Hell, in some cases XML is source code ( e.g. X++ ). If anything, using a scripting language to store soft data is an abuse of the convenience of interpreted languages.

If they had XML data files storing that same information, no one would claim it was "hard-coded". People are claiming it's "hard-coded" simply because it is written in code, which is true, but in this case it is not being used as source code. It's essentially being used the same way someone else might use an XML file.

Now, if you want to debate whether or not this is a solid programming practice (obviously you don't think it is), that's something else altogether. However, I would side against it being considered "hard-coded", because it can be modified without recomplilation, and is being used for the data/configuration storage, the same as any XML or INI file can be. The only difference is that their choice of data storage also happens to be usable as legitimate source code - just as XML can be, as you mentioned.

Even if, for some reason, I decide to make an application that can parse files written in C++ syntax, and those files are used to store and read configuration information, and that information can be changed without a program re-compilation, I still would not consider that configuration information to be hard-coded.
 
Self-Ejected

Kosmonaut

Lost in Space
Joined
Jul 11, 2008
Messages
4,741
Location
CCCP
Warning: a wyrmlordesque wall of text comes!

Playing devil's advocate, I think that cincinnatus.c is technically right. But this is a matter or convention, not definition or semantics. Yes, it could be argued that using magic numbers and strings in a script can be defined as hardcoded, but the convention in game development is that, if you have a game (say, programmed in C/C++) that has scripting facilities (i.e. Lua), when you talk about something hardcoded, what comes inmediatly to the mind is that you have some data in your C/C++ that would be better to have in an external file (like a config or script file). Even if, like I said, is technically correct to call "harcoded" to something inside the script file, what wins is the convention. I think that this is could be what Nick was thinking when you said this "hardcoded" bit.

Now, I don't know if this is correct, but, wether you like it or not, that's how this shit is. Just go to any game programming forum, and you likely will have the same argument. And yes, it's very irksome that some programmers with a lot of experiencie, see the scripting files just as glorified config files, and not as source code that comes from, complex, Turing-complete, programming languajes. They still are sintactically and semantically checked, there's still the conversion to an intermediate format, etc. They are still programming languajes. Even TorqueScript is.

And returning to what started the debate in the ITS forums. You were talking about including the war barks in a config file right (like a INI or XML file)? If this was what you tried to say, I think that the benefit of this would be negligible, because anything you could do with config files, can be done using the script files. Like V.Dweller said, it's very easy to edit this TorqueScripts files with a notepad, and then let the host program interpret them at a minimal time. Furthermore, you would add another level of indirection (Host program -> script file -> config file).

And yes, I think that it's pretty stupid for the TorqueScript designers to omit parenthesis / brackets in the array definition. It causes flame wars in forums, and it's very confusing (specially if you use a language that uses them), but well, I think that one can be used to it.

Disclaimer: I admit that I'm not a very experienced programmer, so everything I said could be wrong. :?
 

cincinnatus.c

Arcane
Joined
Aug 13, 2009
Messages
1,620
Kosmonaut said:
Warning: a wyrmlordesque wall of text comes!

Playing devil's advocate, I think that cincinnatus.c is technically right. But this is a matter or convention, not definition or semantics. Yes, it could be argued that using magic numbers and strings in a script can be defined as hardcoded, but the convention in game development is that, if you have a game (say, programmed in C/C++) that has scripting facilities (i.e. Lua), when you talk about something hardcoded, what comes inmediatly to the mind is that you have some data in your C/C++ that would be better to have in an external file (like a config or script file). Even if, like I said, is technically correct to call "harcoded" to something inside the script file, what wins is the convention. I think that this is could be what Nick was thinking when you said this "hardcoded" bit.

I can perfectly accept a response "well, embedding text in scripts is fine for our little project, and - by the way - I think calling it 'hardcoded' is a bit unjust". Instead I was offered a mountain of defensive nonsense followed by a stream of insults.

Kosmonaut said:
And returning to what started the debate in the ITS forums. You were talking about including the war barks in a config file right (like a INI or XML file)? If this was what you tried to say, I think that the benefit of this would be negligible.

Perhaps, but not entirely.

1. have a look: http://www.irontowerstudio.com/forum/in ... 1#msg30691

see how suibhne (an intelligent person) is extending the list incorrectly? this would not happen with a simpler and more appropriate format.

2. and if you really need to have it in a source file, use sets, rather than plain arrays. otherwise you would still have to deal with indices, duplicates and so on

3. well. initially I simply misunderstood the torquescript syntax. my bad.
 
Self-Ejected

Kosmonaut

Lost in Space
Joined
Jul 11, 2008
Messages
4,741
Location
CCCP
cincinnatus.c said:
I can perfectly accept a response "well, embedding text in scripts is fine for our little project, and - by the way - I think calling it 'hardcoded' is a bit unjust". Instead I was offered a mountain of defensive nonsense followed by a stream of insults.
I think everyone got a little bit defensive in that thread, even you :wink: . But well, I hope this thing is settled.

cincinnatus.c said:
1. have a look: http://www.irontowerstudio.com/forum/in ... 1#msg30691

see how suibhne (an intelligent person) is extending the list incorrectly? this would not happen with a simpler and more appropriate format.
:lol: Yeah. He's assigning every string to the first array element. Perhaps a consecuence of copy/paste. He probably forgot to change the index, but still not a important issue, as he's just giving ideas for the combat barks.

cincinnatus.c said:
2. and if you really need to have it in a source file, use sets, rather than plain arrays. otherwise you would still have to deal with indices, duplicates and so on
Yes, you probably are right. But given the nature of the game, and the kind of messages in the list of strings, I suppose that they want to randomize / shuffle the selected element, not selecting a specific one, so an array is a good choice.

cincinnatus.c said:
3. well. initially I simply misunderstood the torquescript syntax. my bad.
Don't worry, it happened to me too. Weird syntax, but maybe you get used to it after a while.
 

Nick

Iron Tower Studio
Developer
Joined
Apr 21, 2004
Messages
317
Location
Over the hills and far away
cincinnatus.c said:
"well, embedding text in scripts is fine for our little project...

Even this is amusing. You've spent enough time on our forums to understand that AoD will have lots of text. Really a lot, in dialogues, descriptions, etc, much more than your average mainstream RPG, a "big project". By this time logical thinking should have brought you to a conclusion that the format was chosen for many reason by people who know what they're doing and why. We know, you don't. And that's not an offense, that's just reality. But your thinking is driven and dominated by one idea: "I'm an awesome programmer, everyone else is idiot." Well, good luck with that attitude. Not that it changes something - you are who you are, and I am who I am - but that will just bring you more problems in future.

and - by the way - I think calling it 'hardcoded' is a bit unjust".

Well, I'd never say that, since it's not true. Maybe I'd lie if you were my friend, and I would want to protect your feelings, but, fortunately, it's not so. Calling it hardcoded isn't "a bit unjust", it's a plain mistake. Look even through this thread - by no definition mentioned it is hardcoded, even if you're crazy about definitions. It's easy to modify, it's exposed to users and the designer who has no programming experience handles this easily. In the case you'll keep bending your stubborn line - what, in your opinion, is "less hardcoded" than a plain text file?

Instead I was offered a mountain of defensive nonsense followed by a stream of insults.

You're such a victim, even registered at Codex just to complain, get your share of attention and help to derail another thread. Let's stay cool, though, and analyse.
You started behaving arrogantly after I corrected you on two points:
1) This is an array. See TorqueScript reference for details;
2) You can easily, without changing other bits, add new messages. That's what Vince usually does with that file.
Do you see an offense there? These are absolutely valid points, the only "offensive" part about them, is that they mean that you were mistaken in your judgment. How is that my fault?
So I called you arrogant and impudent, which describes your behavior precisely. That's all, but it's kinda hypocritical of you to play a role of victim, if you're replying with this to a neutral post:
Nick, I'm sorry, but you have no clue what you're talking about.
you check in google, what "compiler", "source code" and "hardcoded" mean. I can explain it to you myself, but it would have to wait, and I'm sure you can handle reading a couple of articles. Or ask Gareth.
This is told to a developer on a forum of his game by a person who just did a couple of mistakes in a row. Damaged vanity? Maybe. Trolling attempt? Quite probable. What else could be a reason to say what you said? Maybe you wanted me to find a definition you love, that would give you at least a semantic victory, if it didn't work out with facts? Sorry, just not interested. At the same time, if you'd have any respect to a person you're talking to, and basic understanding of human psychology, you'd know that your words made you look like megalomaniac, who considers everyone around him an idiot. What is the reason to be overly nice to you after that?
I'm not mentioning that childish stuff you've written about me right in this thread, though noone was talking to you, not saying about offending.

Kosmonaut said:
And returning to what started the debate in the ITS forums. You were talking about including the war barks in a config file right (like a INI or XML file)? If this was what you tried to say, I think that the benefit of this would be negligible.

Perhaps, but not entirely.

It would be counter-productive. Seriously. Not sure if you'll start arguing about this too, and what your argument will be based on (perhaps you'll start developing another TGE-based RPG, we all win in this case :) ), but I just wanted to let you know: it's a pure waste of time. Accept it or not, it is so.

see how suibhne (an intelligent person) is extending the list incorrectly? this would not happen with a simpler and more appropriate format.
First, suibhne is not a developer. My sister, who is an intelligent person, too, would probably pay no attention at those little numbers and have some duplicates in the end. But everyone who is going to edit it in purpose should have a skill to count to 10. Maybe to 20. Is this so hard? A little kid would handle it.
Second, suibhne obviously didn't care about indexes, his aim was to post his text lines.

2. and if you really need to have it in a source file, use sets, rather than plain arrays. otherwise you would still have to deal with indices, duplicates and so on

Depending on what implementation of set you're referring to, of course, but:
But given the nature of the game, and the kind of messages in the list of strings, I suppose that they want to randomize / shuffle the selected element, not selecting a specific one, so an array is a good choice.
You just have turn your imagination on.

That said, I absolutely agree it's not the most "ideologically correct" way to do it. Both you and obediah have a point here. "Horrible code", you say. However you just refuse / too lazy to think about other factors.
This game is in development for more than 5 years now. I was developing it alone from beginning till now. I always had a shitload of work to do, really important stuff. Someone always wants something RIGHT NOW. "Is that feature ready yet? What about now?". Between working on those important features I sometimes have a time to implement one or two little things. Like a script file which stores combat taunts in TorqueScript arrays. And you know what? It works perfectly. It does what it is supposed to do. It will never have 10000 lines, so some poor guy will never have hard time putting indexes. And that's enough, I won't waste time fixing stuff that is not broken. Because every little thing, from GUI callbacks to precise camera movement interpolation, could use some tweaking, optimizing or polishing. But as long as it works perfectly, I'm done there. I'll do it better way for the next game, if I'll consider it worth doing.
Do what you want with your software, if you're really a developer, don't tell me what to do with mine. Because there is a good chance I know without you. Also, please pay attention that I'm trying to reason with you after 4AM, which means I give you much more respect than I should, judging by your attitude.
If that was in vain... well, I'll learn another lesson. However, I was always overly optimistic about human nature, especially when it comes to ambitions and compromise. However, let's see.
 

As an Amazon Associate, rpgcodex.net earns from qualifying purchases.
Back
Top Bottom