Topic: Configuration and Scripting  (Read 25388 times)

0 Members and 1 Guest are viewing this topic.

Offline d4v1ks

  • D.Net VIP
  • Lt.
  • *
  • Posts: 788
  • Gender: Male
Re: Configuration and Scripting
« Reply #80 on: June 13, 2013, 01:43:58 pm »
If you are looking for the benefits of C# on his fullest strengths look out for the project "Roslyn" that is being developed by Microsoft.
Like, i told before, you don't need any script engine to work with C#. It has everything you need for that matter right now.

What is the Roslyn Project

http://msdn.microsoft.com/en-us/vstudio/hh500769.aspx

Current release (for Visual Studio 10 SP1)

http://msdn.microsoft.com/en-us/vstudio/roslyn.aspx
"But he isn't wearing anything at all!" (The Emperor's New Clothes)

Offline [UFP]Exeter

  • Moderator
  • Lt. Commander
  • *
  • Posts: 1080
  • SFC4 Lead Developer
Re: Configuration and Scripting
« Reply #81 on: June 13, 2013, 03:30:49 pm »
Yep, I am aware of the Roslyn Project.

The big question is what you and Starfox and anyone else that wants to speak up, think about c# in the aspect of an easy to use scripting language compared to LUA or Angelsript.

The one issue was the DDS texture format but I got that working this am.

Offline Starfox1701

  • Lt. Commander
  • *
  • Posts: 1049
Re: Configuration and Scripting
« Reply #82 on: June 13, 2013, 04:29:08 pm »
Lua is the Game industry standard for scripting right now. All the benefits you keep talking about are from the programers side. We need input from people who either know both sides or at least know these different languages front and back.

Offline [UFP]Exeter

  • Moderator
  • Lt. Commander
  • *
  • Posts: 1080
  • SFC4 Lead Developer
Re: Configuration and Scripting
« Reply #83 on: June 13, 2013, 04:48:17 pm »
I have never scripted before at all.  I have hacked game code, but no scripting.

As for ease of use, LUA may be the industry standard, but I am not the industry standard developer :)

And it is possible to still use LUA of Angelscript in C#, but what I read says why?  That C# does scripting and is easier.

The only reason I say easier is because c# is easier, more user friendly to code in.  I lacks the requirements to knwo pointers and memory allocation, which is complicated.  LUA and Angelscript use them.  That in itself makes LUA and or Angelscript to create from scratch.

Offline d4v1ks

  • D.Net VIP
  • Lt.
  • *
  • Posts: 788
  • Gender: Male
Re: Configuration and Scripting
« Reply #84 on: June 13, 2013, 10:56:59 pm »
I'm starting to think that you have no ideia of what you are doing... Sorry.
"But he isn't wearing anything at all!" (The Emperor's New Clothes)

Offline [UFP]Exeter

  • Moderator
  • Lt. Commander
  • *
  • Posts: 1080
  • SFC4 Lead Developer
Re: Configuration and Scripting
« Reply #85 on: June 14, 2013, 07:33:54 am »
I have never done any scripting. 
As for programming I have done programming for a very long time.  The biggest was a quoting system for a factory, 2 year project, and I did the entire thing myself.

For me to make a decision on scripting without seeking other advice would not be wise.  And the requirements of the game should dictate how we do this.

So far, for moding I have been convinced to extend what I thought.   As there is still discussion, and I have time right now, I have not decided.  However, due to my lack of knowledge I have a c# program that I am testing the scripting capability of C#.


Offline Starfox1701

  • Lt. Commander
  • *
  • Posts: 1049
Re: Configuration and Scripting
« Reply #86 on: June 14, 2013, 09:49:57 am »
Look what ever language we choose for the scripting needs to be dynamic, embeddable, and extendable. C# is not a dynamic language. If you use it you will have to either do all the scripting by yourself or get a scripting tool up and running very early that is a flawless as the game we are trying to make.

Offline [UFP]Exeter

  • Moderator
  • Lt. Commander
  • *
  • Posts: 1080
  • SFC4 Lead Developer
Re: Configuration and Scripting
« Reply #87 on: June 14, 2013, 09:58:15 am »
Good point Starfox.

I actually have a few hours I can work on this today, and need to be focused.

As for LUA or Angelscript, I do not care.  between those posing on this thread tell me what you prefer and we will use it.  I have verified both and built the libraries. 

I have a bug in my camera control I want to get fixed today.
« Last Edit: June 19, 2013, 09:12:08 pm by [UFP]Exeter »

Offline Terra_Inc

  • Ensign
  • *
  • Posts: 3
Re: Configuration and Scripting
« Reply #88 on: June 14, 2013, 10:35:41 am »
The only reason I say easier is because c# is easier, more user friendly to code in.  I lacks the requirements to knwo pointers and memory allocation, which is complicated.  LUA and Angelscript use them.  That in itself makes LUA and or Angelscript to create from scratch.
Sorry, but that is just wrong. Lua has garbage collection, and I can't remember ever juggling pointers when coding. Angelscript I don't remember too well, but last time I checked it was garbage collected at least. C# was never intended to be a scripting language, being much more like Java in its overall architecture. So it will offer you few of the advantages of explicit scripting languages.

I think you are not fully aware of the advantages of true scripting languages.

That is one of my concerns.  From a programming point of view, C is hardest then C++ and C# is easier.  Significantly.  So given LUA is similar to C and Angelscript is similar to C++, the from an ease of use, C# is easier. 
Being based on C has no actual influence on the language. I'm not sure what you actually mean with that - lua is not in any way like C. Its table system is very different from C. If anything, it's a bit more like Modula. And yes, it is implemented in C, but so is Python. I'm sure no one would accuse Python of being too much like C.

And if you know a scripting language, c# would be easy to learn, not so the other way around.
So from an ease of creating a mod, c# would probably be the best overall.
For whom? The people creating mods will, in all likeliness, be the fans of your game. They will not be programmers. For them, understanding the concept of programming is already hard enough. If you know no programming at all, or only very basic concepts, learning a scripting language that is friendly to non-programmers will be easier than learning how to use a more complex language that has very little tools to facilitate scripting and modding.

Offline [UFP]Exeter

  • Moderator
  • Lt. Commander
  • *
  • Posts: 1080
  • SFC4 Lead Developer
Re: Configuration and Scripting
« Reply #89 on: June 14, 2013, 10:42:12 am »
Terra? What scripting language would you suggest?

Offline Terra_Inc

  • Ensign
  • *
  • Posts: 3
Re: Configuration and Scripting
« Reply #90 on: June 14, 2013, 11:18:09 am »
Terra? What scripting language would you suggest?

Hm. I certainly don't claim that it's an easy decision.

I've modded several games through lua scripting, and if it's well done it's definitely newbie-friendlier than classic programming languages. It depends very much on how much of the game you write in or expose to lua, and in which way. For example, if you have your object definition code in lua it becomes very easy for people to modify objects in the game, and add new ones. You see this with many older games (f.ex. STA2) that it's super easy to change some values in a simple Key-Value data file, and the tables of lua are basically Key-Value, with the addition that functions can be values.
Mission scripting is a bit more complicated since it's mostly based on finite state machines, and that requires some knowledge of control structures etc. Still, it might be feasible even for non-programmers to experiment with that. (For an example how this could be done, check Megadroid's Mission Mod - it comes with a basic mission tutorial which shows how you can script missions. It's still a bit weird in some parts, because STA2 is so darn clunky.)

I personally would suggest lua, based on my positive experiences from the user's side. I can't really say how hard it is to implement though, as I've never done it. So take my opinion with a grain of salt.

Offline [UFP]Exeter

  • Moderator
  • Lt. Commander
  • *
  • Posts: 1080
  • SFC4 Lead Developer
Re: Configuration and Scripting
« Reply #91 on: June 14, 2013, 06:21:19 pm »
Implimenting will be my problem unless another comes along :)

So LUA it is, and it is and the library has been built and is part of the code.

The game is heavily OOO in its desing, I took alot from C# as far as coding desing, s hopefully that will make it easier for LUA. 


Offline FRA.E.Kehakoul_XC

  • Administrator
  • Lt. Commander
  • *
  • Posts: 1100
  • Gender: Male
Re: Configuration and Scripting
« Reply #92 on: June 14, 2013, 09:44:55 pm »
Lookin at operation flashpoint and ARma could be helpfull,especially the mission designer and how scripts are used in it.
The Arma wiki could be a starting point.
For me their approach was always the best compromise between accessability and complexity.

http://community.bistudio.com/wiki/Mission_Editor

http://www.armaholic.com/page.php?id=1455
« Last Edit: June 14, 2013, 09:56:29 pm by FRA.E.Kehakoul_XC »
FRA.E.Kehakoul_XC

Director - Diplomatic Division

Offline [UFP]Exeter

  • Moderator
  • Lt. Commander
  • *
  • Posts: 1080
  • SFC4 Lead Developer
Re: Configuration and Scripting
« Reply #93 on: June 14, 2013, 10:04:00 pm »
Definately will take a look at arma, as I do want a good balance.  However the game will be complex,because of what we are trying to do.  But it would be nice to minimize the complexity for mods and missions.

Offline Starfox1701

  • Lt. Commander
  • *
  • Posts: 1049
Re: Configuration and Scripting
« Reply #94 on: June 15, 2013, 12:14:05 am »
I don't think we can really minimize the complexity simply because it is inherent in the nature of what we are tiring to simulate.  Best we can do is keep it easy for others to navigate and understand.

Offline [UFP]Exeter

  • Moderator
  • Lt. Commander
  • *
  • Posts: 1080
  • SFC4 Lead Developer
Re: Configuration and Scripting
« Reply #95 on: June 15, 2013, 09:25:14 am »
System requirements of Modding the game:

Working knowledge of LUA
Editor
Degree on Computer programming    :laugh: :laugh:

Offline Starfox1701

  • Lt. Commander
  • *
  • Posts: 1049
Re: Configuration and Scripting
« Reply #96 on: June 15, 2013, 09:49:54 am »
As long as we do good commenting in the script files and document all the commands we will be able to release a modders guide with the game or shortly after it's done.

Offline Captain Adam

  • Lt.
  • *
  • Posts: 754
  • Gender: Male
Re: Configuration and Scripting
« Reply #97 on: June 15, 2013, 09:56:58 am »
.
« Last Edit: April 06, 2016, 01:53:59 pm by Captain Adam »
Odo :    
"Being accused of a crime is not a disgrace, Chief. Some of the great figures of history have shared the honour with you."
to O'Brien
DS9 : Tribunal

Offline [UFP]Exeter

  • Moderator
  • Lt. Commander
  • *
  • Posts: 1080
  • SFC4 Lead Developer
Re: Configuration and Scripting
« Reply #98 on: June 16, 2013, 09:37:36 pm »
If you get started now learning to program you may be ready :)

Seriously, I did some reading and altered my code design to friendly for moding with LUA.  The main game core, which basically has the game loop, graphics initialization and load all the other game objects cannot be moded.  But all the objects can be, which opens about 80-90% of the game open for potential moding

Offline Starfox1701

  • Lt. Commander
  • *
  • Posts: 1049
Re: Configuration and Scripting
« Reply #99 on: June 17, 2013, 10:02:39 am »
I got this during the research part for anyone how wants to get a head start on learning the scripting

https://dl.dropboxusercontent.com/u/3697428/Programming%20in%20Lua%2C%20Second%20Edition-2010kaiser.pdf