 |
|  |
 |
|
Rasbelin

|
 |
Tampere (Tammerfors), Finland
Nov 1999 time: 07:24
|
|
Scripting languages are something content developers seem to want as that allows them to fool around with the game and also develop more customised scenarios and modification packs. Scripting languages are something that have been mentioned several times earlier, but I assume as Kurilka mentioned it now again, that we should finally decide about the subject. CtP and CtP2 are the two titles that are most closely related to StP as for the theme, but also the issue with scripting languages. So why to have a scripting language included?
Well, after all the game is open source so the source code is anyway available and it might cause trouble, but it's also an opportunity. The options, if we go for a scripting language, is that we only have a SL for event programming (triggers, etc.) or a full scale SL like in CtP/CtP2. Of course it would require additional work.
I'm in favour for an event scripting language as I can't see the full advantage of a full scale SL.
Here's a nice quote from Immortal Wombat's signature regarding scripting languages (this was regarding SL in Civ III). 
"I don't believe in giving scripting languages because the only additional power they give users is the power to create bugs." - Mike Breitkreutz, Firaxis
|
|
|  |
 |
|
targon
|
|
Dolgoprudny, Moscow region
Nov 2002 time: 08:24
|
|
SL in fact is't suff for users. It's for developers, scenario editors, designers and sometimes even for graphics artists (as _real_ 3D engines need some scripting for animations and so on). It's way of removing of five-time-a-day changing things like AI or unit properties from core engine. It's a way of simplification, as SL may be very specialized and attuned to game aspects. It's way of extension, as SL may be used for easy-to-install plugins, scenario etc. BTW, almost any successful game employs some script, so we are. Game iself may be "simply" some language interpreter exposing its specific aspects (as resolution control, path finding or unit creation) for developer who writes control routines ang game logic at high level. Common way of "sandboxes" may be used to prevent some ugly presons from cheating, while others may use they occational creativity for extending game without need of reading 2Mb of Doxygen docs or hacking code itself. SCripting divides problem into two distinct parts: 1) robust game engine; 2) extensive collection of scripts that glue things together and create gameplay.
|
|
|  |
 |
|
Joeno
|
|
If I recall the old discussions well enough, I believe there weren't going to be any extensive scripting languages. The program is open source, and so you can program in major things, while things like building definitions will be done in a format Blake can tell you more about (mainly because I can't remember everything about it).
But anyway, I remember it being agreed on from early discussions that there won't be any large scripting languages implemented.
|
|
|  |
 |
|
targon
|
|
Dolgoprudny, Moscow region
Nov 2002 time: 08:24
|
|
Your desire, but statistics is against complex enough games w/o scripting support. Read some things from Gamasutra or any other games devoloper site. Hack some successful games out there. You'll find lots of scripts, indeed.
|
|
|  |
 |
|
targon
|
|
Dolgoprudny, Moscow region
Nov 2002 time: 08:24
|
|
OK, but if you hack some graphics-intense engine, say, Q3, you'll find a lot of scripts regarding interface, models, animation, shaders. It's also a good idea to use the same script for both client and servers, so they may easily interoperate and share some code. Game engine must support scripting from its roots, as it may be completely useless if implemented as bag on the side.
|
|
|  |
 |
|
targon
|
|
Dolgoprudny, Moscow region
Nov 2002 time: 08:24
|
|
BTW, advance in game development will force coders rethink their ignorance to scripts, as thousands did, so I think I need to stop advertizing and draw some nice graphics.
|
|
|  |
 |
|  |
 |
|  |
 |
|
vovan
|
|
quote: Originally posted by Rasbelin
Cheating is strongly discourage in any form ... |
I think it's a matter of definition. If we actually want to make a fully modable game, it will be hard to say what is cheating and what is not. After all, if the user can mod the game however he wants, it would really be hard to draw the line between "modding for fun" and cheating.
Besides, this also brings up a very important question. Since this game is going to be distributed under the GNU General Public License, as it is said to be on SourceForge, that means that we will be giving the players the source code together with the executables. Now, in multiplayer games, how are we going to ensure that the player has not modified the code to gain unfair advantage? If we are going to somehow compare the engine files or what not (by engine here I mean the game logic, of course, not the graphical engine), it would take a long time to intialize the game for one thing, and for another that would actually discourage modifying the code.
|
|
|  |
 |
|
vovan
|
|
In general, I think we need to think hard about how we are going to deal with multiplayer and mods.
On the one hand, as I understand our position, we don't want to discourage modding in general. Hence the whole discussion of scripting (well, scripting would also be of great help for scenario designers, but that is beside the point of this post). Now, if we want to allow people to modify their game, we need to decide how to combine that with multiplayer. If the files we distribute are digitally signed, then any change to them would render the game useless for multiplayer. (Is that right? I am not quite sure how the digital signature is supposed to work...) If that is the case, then we are essentially saying that the user has a choice: either to have two installations of the game (one, modded, for sp, the other - unmodded, for mp), or avoid modding the game at all (meaning the source code.) Neither of these sounds particularly attractive. Keeping that in mind, I don't really see the point of keeping the game open source. Since we won't allow the players to mod the game if they want to play mp, why give them tghe code in the first place? (Well, that's not entirely true, actually. They can still choose to play sp only and then would have the ability to play around with the code. Alternatively, if a person finds a bug and is able to fix it, they could send us the code snippet, we would incorporate it into the main core, sign it digitally, and publish. In the true spirit of open source.) Secondly, that would mean that we have to have a scripting language for the people who want to mod the game and still play MP.
On the other hand, I could be wrong in my assumption that the digital signature is destroyed / rendered useless when the code is modified. In that case, I don't really see how it works. Please enlighten me. 
|
|
|  |
 |
|
vovan
|
|
quote: Originally posted by Michiel
And about online modded gaming, I suppose you'll just have to trust the other players use the same mod as you do. |
Yes, the idea to have two types of mp games might be a good one. Something else we could do is label certain mods as "Approved by the StP Development Team", which would basically mean that if someone comes up with a particularly successful and popular mod, we could (if the author wants) inspect it to see if there are any hidden cheat backdoors, and if we don't find any, we could label it with a digital signature as well, and distribute it. Then, on the matchmaking screen, you could see if your opponents have an unmodded version, a version modified by a "third party", or a version that is modified by an approved mod, in which case you can also see which mod it is. I think that could also help in mp.
On the other hand, it seems a little complicated to say the least. Given our ambitions about the rest of the game, I am not quite sure how much of security we want to build in, and how much to leave to the players to weed out the cheaters by themselves...
|
|
|  |
 |
|
Michiel
|
|
quote: Originally posted by vovansim
On the other hand, it seems a little complicated to say the least. Given our ambitions about the rest of the game, I am not quite sure how much of security we want to build in, and how much to leave to the players to weed out the cheaters by themselves... |
Well, in at least one online game I play (diablo 2) cheating causes a lot of frustration amongst players. From PKing to hacking/duping/etc. I think we should make this game as cheat-proof as possible. Off course, we can't stop the motivated hacker from cheating, but I hope it can be prevented a much as possible.
I think your idea about the signature for approved mods is a good idea, worth exploring. But would that ban all 'not approved' mods from the internet?
|
|
|  |
 |
|
vovan
|
|
quote: Originally posted by Michiel
Well, in at least one online game I play (diablo 2) cheating causes a lot of frustration amongst players. |
It seems to me that all Blizzard games are plagued by cheating. I used to play Warcraft III MP a lot...
quote: Originally posted by Michiel
I think your idea about the signature for approved mods is a good idea, worth exploring. But would that ban all 'not approved' mods from the internet? |
No, I was thinking more along the lines of combining this idea with yours: the rule still applies - players with modded games can play with other players with modded games. Only now they can see if their opponents' games are modded with an approved mod or not. In the latter case, they can still play, but they will realise that they are under a greater risk of being cheated against.
|
|
|  |
 |
|
Leland
|
|
Hmm, color me ignorant but I don't see the problem of cheating... the host resolves all the game turns, right? So, if one of the clients tries to cheat with a script allowing him to build 10 units instead of 1 (for example), won't the server notice that this is against the rules and discard the orders? On the other hand, if the host wants to cheat, there's really nothing that can be done: in the extreme case, the host could disable all signature checks and recompile the code, and then forfeit a "yup, I'm legit" message to the clients.
So, to avoid cheating I think the key is to make the rules such that they can be validated on server side. Period.
|
|
|  |
 |
|
Michiel
|
|
I agree. Info on a need to know basis. It might slow down the game a bit, but I think it's needed in a game like this one.
But what about mods? Not blindly following orders from clients, OK. But there should be a mod-system. Maybe like the one Vovansim suggested in his last post.
|
|
|  |
 |
|
Disparat
|
|
East Coast, USA
Nov 2002 time: 05:24
|
|
Well, wouldn't all the clients need the same version of the game? So if one guy had a mod, in order to play with others the mod would have to be downloaded to the other clients. That would negate any "advantage" he might have. And scripting isn't cheating, exploiting bugs is cheating. So if a guy had written a mod that started him with tons of money or something like that, it would have to be downloaded by the other players. Am I missing something?
|
|
|  |
All times are GMT. The time now is 05:24. Apolyton Time is 00:24. |
top of page
|
|
|
Forum Rules:
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
|
HTML code is ON
vB code is ON
Smilies are ON
[IMG] code is ON
|
|
|
|
|
|